Always calculate state diff IDs in syncv3 #840

Open
nex wants to merge 1 commit from nex/fix-join-sync-state into main
Owner

this seemingly at least partially fixes #779 by always calculating the state diff between the sync tokens, rather than checking only if they have changed.
It appears that joins still don't come down sync immediately, but they at least now include all of the relevant state for clients. Fixes the "unnamed room" bug on many clients, and consequently fixes the bug where unsuspecting clients don't know a room is encrypted.

Would like if this could be battle tested to ensure that it does not induce additional load

this seemingly at least partially fixes #779 by always calculating the state diff between the sync tokens, rather than checking only if they have changed. It appears that joins still don't come down sync immediately, but they at least now include all of the relevant state for clients. Fixes the "unnamed room" bug on many clients, and consequently fixes the bug where unsuspecting clients don't know a room is encrypted. Would like if this could be battle tested to ensure that it does not induce additional load
nex added this to the 0.5.0 milestone 2025-05-26 00:24:42 +00:00
nex added the
Bug
Matrix/Client
labels 2025-05-26 00:24:42 +00:00
nex added 1 commit 2025-05-26 00:24:43 +00:00
Always calculate state diff IDs in syncv3
Some checks failed
Release Docker Image / define-variables (push) Successful in 1s
Documentation / Build and Deploy Documentation (pull_request) Successful in 40s
Release Docker Image / build-image (linux/arm64, linux-arm64) (push) Failing after 15m33s
Rust Checks / Format (push) Successful in 34s
Rust Checks / Clippy (push) Successful in 4m18s
Rust Checks / Cargo Test (push) Successful in 5m15s
Release Docker Image / build-image (linux/amd64, linux-amd64) (push) Successful in 20m54s
Release Docker Image / merge (push) Has been skipped
fe853c9ac8
seemingly fixes #779
Some checks failed
Release Docker Image / define-variables (push) Successful in 1s
Documentation / Build and Deploy Documentation (pull_request) Successful in 40s
Release Docker Image / build-image (linux/arm64, linux-arm64) (push) Failing after 15m33s
Rust Checks / Format (push) Successful in 34s
Rust Checks / Clippy (push) Successful in 4m18s
Rust Checks / Cargo Test (push) Successful in 5m15s
Release Docker Image / build-image (linux/amd64, linux-amd64) (push) Successful in 20m54s
Release Docker Image / merge (push) Has been skipped
This pull request can be merged automatically.
This branch is out-of-date with the base branch
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin nex/fix-join-sync-state:nex/fix-join-sync-state
git checkout nex/fix-join-sync-state

Merge

Merge the changes and update on Forgejo.
git checkout main
git merge --no-ff nex/fix-join-sync-state
git checkout nex/fix-join-sync-state
git rebase main
git checkout main
git merge --ff-only nex/fix-join-sync-state
git checkout nex/fix-join-sync-state
git rebase main
git checkout main
git merge --no-ff nex/fix-join-sync-state
git checkout main
git merge --squash nex/fix-join-sync-state
git checkout main
git merge --ff-only nex/fix-join-sync-state
git checkout main
git merge nex/fix-join-sync-state
git push origin main
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: continuwuation/continuwuity#840
No description provided.