Skip to content
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

Fix synthetic read receipt handling #2174

Merged
merged 4 commits into from
Feb 15, 2022
Merged

Fix synthetic read receipt handling #2174

merged 4 commits into from
Feb 15, 2022

Conversation

t3chguy
Copy link
Member

@t3chguy t3chguy commented Feb 14, 2022

Fixes element-hq/element-web#21016

The complexity in this area of code is worth the performance gains, with more testing and comments now it should be more maintainable too.


Here's what your changelog entry will look like:

🐛 Bug Fixes

The edge of a real receipt coming in later than a synthetic but referring to an earlier event caused read receipts to wrongly go upwards in the timeline
@t3chguy t3chguy requested a review from a team as a code owner February 14, 2022 16:44
@t3chguy t3chguy changed the title Add more tests around synthetic read receipts Fix synthetic read receipt handling Feb 14, 2022
Copy link
Member

@turt2live turt2live left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

overall seems fine - just concerned about the dual naming of "fake" and "synthetic" read receipts - we should use a single term to describe them.

My preference is towards "synthetic" largely for historical purposes, but ultimately I don't mind if we pick "fake" instead (especially considering "synthetic" is a bit unfriendly to not-English languages)

src/models/room.ts Outdated Show resolved Hide resolved
@t3chguy t3chguy enabled auto-merge (squash) February 14, 2022 23:47
@t3chguy t3chguy merged commit 2910e62 into develop Feb 15, 2022
@t3chguy t3chguy deleted the t3chguy/fix/21016 branch February 15, 2022 01:45
dbkr pushed a commit that referenced this pull request Feb 17, 2022
dbkr added a commit that referenced this pull request Feb 17, 2022
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
su-ex pushed a commit to SchildiChat/matrix-js-sdk that referenced this pull request Feb 27, 2022
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
su-ex added a commit to SchildiChat/matrix-js-sdk that referenced this pull request Mar 5, 2022
* Return send event response from MSC3089Branch.createNewVersion() ([\matrix-org#2186](matrix-org#2186)).
* Add functions to support refresh tokens ([\matrix-org#2178](matrix-org#2178)).
* [Release] Fix bug with the /hierarchy API sending invalid requests ([\matrix-org#2202](matrix-org#2202)).
* Fix bug where calls could break if rejected from somewhere else ([\matrix-org#2189](matrix-org#2189)).
* Fix camera stuck on after call transfer ([\matrix-org#2188](matrix-org#2188)).
* Fix synthetic read receipt handling ([\matrix-org#2174](matrix-org#2174)). Fixes element-hq/element-web#21016.
* Revert "Sign backup with cross-signing key when we reset it." ([\matrix-org#2175](matrix-org#2175)).
* Sign backup with cross-signing key when we reset it. ([\matrix-org#2170](matrix-org#2170)).
* Fix error in uploadContent() when file is empty under Node.js ([\matrix-org#2155](matrix-org#2155)).
* Check the backup info against the stored private key when determining trust. ([\matrix-org#2167](matrix-org#2167)).
* Back up keys before logging out ([\matrix-org#2158](matrix-org#2158)). Fixes element-hq/element-web#13151.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Read-receipts shifting backwards in the timeline
2 participants