Skip to content
This repository has been archived by the owner on Apr 26, 2024. It is now read-only.

Elide redundant member events in /messages response #11960

Closed
ShadowJonathan opened this issue Feb 10, 2022 · 5 comments
Closed

Elide redundant member events in /messages response #11960

ShadowJonathan opened this issue Feb 10, 2022 · 5 comments
Labels
A-Messages-Endpoint /messages client API endpoint (`RoomMessageListRestServlet`) (which also triggers /backfill) T-Task Refactoring, removal, replacement, enabling or disabling functionality, other engineering tasks.

Comments

@ShadowJonathan
Copy link
Contributor

# TODO: remove redundant members

This is not mandated explicitly by the spec;

Rather than responses in the sequence sending duplicate membership events for these senders to the client, the server MAY assume that clients will remember membership events they have already been sent, and choose to skip sending membership events for members whose membership has not changed.

...however, this caused problems when conduit did not implement this similarly to synapse;

JS-SDK (Cinny and Element Web), Element Android, and Hydrogen all assume this behaviour is a must.

I believe it'd help with more correct spec adoption greatly if redundant membership was indeed removed, so that current clients are more aware of this optional spec behaviour.

@babolivier babolivier added the T-Task Refactoring, removal, replacement, enabling or disabling functionality, other engineering tasks. label Feb 11, 2022
@erikjohnston
Copy link
Member

We should do this on Synapse to help with spec compliance. However, before we can land the change in Synapse we'll need the clients to be fixed first.

We should talk to the client teams to make sure fixing those bugs is on their radar before we spend time on this.

@erikjohnston
Copy link
Member

First step is to figure out what is required to actually fix these TODOs, note that there are likely other TODOs around lazy loading of members in the pagination and sync code.

@richvdh richvdh changed the title Remove redundant member events Elide redundant member events in /messages response May 5, 2022
@DMRobertson
Copy link
Contributor

Possibly related: matrix-org/matrix-spec#942

@ShadowJonathan
Copy link
Contributor Author

#5393 appears to be related, and/or the original issue for this.

@richvdh
Copy link
Member

richvdh commented Jun 8, 2022

Duplicate of #5393

@richvdh richvdh closed this as not planned Won't fix, can't repro, duplicate, stale Jun 8, 2022
@richvdh richvdh marked this as a duplicate of #5393 Jun 8, 2022
@MadLittleMods MadLittleMods added the A-Messages-Endpoint /messages client API endpoint (`RoomMessageListRestServlet`) (which also triggers /backfill) label Jul 19, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
A-Messages-Endpoint /messages client API endpoint (`RoomMessageListRestServlet`) (which also triggers /backfill) T-Task Refactoring, removal, replacement, enabling or disabling functionality, other engineering tasks.
Projects
None yet
Development

No branches or pull requests

6 participants