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(sdk): Mark tracked users as dirty when the SS connection is reset. #3965

Merged

Commits on Sep 10, 2024

  1. feat(crypto): Implement OldMachine::mark_all_tracked_users_as_dirty.

    This patch adds the `OldMachine::mark_all_tracked_users_as_dirty`.
    
    This patch rewrites a bit `OlmMachine::new_helper` by extracting some
    piece of it inside `OlmMachine::new_helper_prelude`. With that, we
    can rewrite `OlmMachine::migration_post_verified_latch_support` to use
    `IdentityManager::mark_all_tracked_users_as_dirty`.
    This latter is the shared implementation with
    `OlmMachine::mark_all_tracked_users_as_dirty`.
    
    This patch adds a test for `OlmMachine:mark_all_tracked_users_as_dirty`.
    Hywan committed Sep 10, 2024
    Configuration menu
    Copy the full SHA
    d8b2014 View commit details
    Browse the repository at this point in the history
  2. fix(sdk): Mark tracked users as dirty when the SS connection is reset.

    There is a non-negligible difference MSC3575 and MSC4186 in how the
    `e2ee` extension works. When the client sends a request with no `pos`:
    
    * MSC3575 returns all device lists updates since the last request
      from the device that asked for device lists (this works similarly to
      to-device message handling),
    
    * MSC4186 returns no device lists updates, as it only returns changes
      since the provided `pos` (which is `null` in this case); this is in
      line with sync v2.
    
    Therefore, with MSC4186, the device list cache must be marked as to be
    re-downloaded if the `since` token is `None`, otherwise it's easy to
    miss device lists updates that happened between the previous request and
    the new “initial” request.
    Hywan committed Sep 10, 2024
    Configuration menu
    Copy the full SHA
    781d3d0 View commit details
    Browse the repository at this point in the history

Commits on Sep 11, 2024

  1. Configuration menu
    Copy the full SHA
    ef18c13 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    df8d8ac View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    943c46f View commit details
    Browse the repository at this point in the history