Omit state field from /messages
response if empty (#2940)
The field type is `[ClientEvent]` in the [spec](https://spec.matrix.org/v1.5/client-server-api/#get_matrixclientv3roomsroomidmessages), but right now `null` can also be returned. Omit the field completely if it's empty. Some clients (rightfully) assume it's either not present at all or it's of the right type (see https://github.com/matrix-org/matrix-react-sdk/pull/9913). ### Pull Request Checklist <!-- Please read https://matrix-org.github.io/dendrite/development/contributing before submitting your pull request --> * [x] I have added Go unit tests or [Complement integration tests](https://github.com/matrix-org/complement) for this PR _or_ I have justified why this PR doesn't need tests * The PR is a simple struct tag fix * [x] Pull request includes a [sign off below using a legally identifiable name](https://matrix-org.github.io/dendrite/development/contributing#sign-off) _or_ I have already signed off privately Signed-off-by: `Umar Getagazov <umar@handlerug.me>` Signed-off-by: Umar Getagazov <umar@handlerug.me>
This commit is contained in:
parent
eeeb3017d6
commit
8582c7520a
|
@ -57,7 +57,7 @@ type messagesResp struct {
|
|||
StartStream string `json:"start_stream,omitempty"` // NOTSPEC: used by Cerulean, so clients can hit /messages then immediately /sync with a latest sync token
|
||||
End string `json:"end,omitempty"`
|
||||
Chunk []gomatrixserverlib.ClientEvent `json:"chunk"`
|
||||
State []gomatrixserverlib.ClientEvent `json:"state"`
|
||||
State []gomatrixserverlib.ClientEvent `json:"state,omitempty"`
|
||||
}
|
||||
|
||||
// OnIncomingMessagesRequest implements the /messages endpoint from the
|
||||
|
|
Loading…
Reference in a new issue