-
Notifications
You must be signed in to change notification settings - Fork 364
Add experimental support for MSC4308: Thread Subscriptions extension to Sliding Sync when MSC4306 and MSC4186 are enabled. #18695
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
Conversation
e40211b
to
7634587
Compare
Signed-off-by: Olivier 'reivilibre <[email protected]>
Works around #18712
7634587
to
ba41526
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
(I have looked things over but haven't given everything a proper review-level scrutiny)
May clamp the `to_token` and return a new, earlier, one to replace it, if some | ||
of the extensions are limited to sending less data down sync. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd rather not do this sort of thing. This is the sort of pattern that made legacy /sync
complex, brittle, and unpredictable.
What's spurring on this change?
Paginating incremental sync is something unsolved in the Sliding Sync MSC and I don't think we should solve it here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The intention of this is we don't want to have to fetch and send an unbounded number of thread subscriptions down to the client.
How else would you suggest doing this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One option is to have the limit
work how timeline_limit
works. We pass back messages up to the timeline_limit
and a prev_batch
token to paginate back from there. Hence my comment about an API endpoint to paginate thread subscriptions -> matrix-org/matrix-spec-proposals#4306 (comment)
Closes: #18436
Implements: matrix-org/matrix-spec-proposals#4308
Follows: #18674
This pull request is intended for commit-by-commit review.
Update simplified sliding sync docstring
spelling
Add models for Thread Subscriptions extension to Sliding Sync
Add overload for
gather_optional_coroutines
/6Add thread subscriptions position to
StreamToken
Add
subscribed
andautomatic
toget_updated_thread_subscriptions_for_user
Implement MSC4308
Put MSC4308 behind the MSC4306 feature flag