github matrix-org/synapse v1.68.0

latest releases: v1.98.0, v1.98.0rc1, v1.97.0...
2 years ago

Synapse 1.68.0 (2022-09-27)

Please note that Synapse will now refuse to start if configured to use a version of SQLite older than 3.27.

In addition, please note that installing Synapse from a source checkout now requires a recent Rust compiler.
Those using packages will not be affected. On most platforms, installing with pip install matrix-synapse will not be affected.
See the upgrade notes.

Bugfixes

  • Fix packaging to include Cargo.lock in sdist. (#13909)

Synapse 1.68.0rc2 (2022-09-23)

Bugfixes

  • Fix building from packaged sdist. Broken in v1.68.0rc1. (#13866)

Internal Changes

  • Fix the release script not publishing binary wheels. (#13850)
  • Lower minimum supported rustc version to 1.58.1. (#13857)
  • Lock Rust dependencies' versions. (#13858)

Synapse 1.68.0rc1 (2022-09-20)

Features

Bugfixes

  • Fix a bug introduced in Synapse 1.41.0 where the /hierarchy API returned non-standard information (a room_id field under each entry in children_state). (#13506)
  • Fix a long-standing bug where previously rejected events could end up in room state because they pass auth checks given the current state of the room. (#13723)
  • Fix a long-standing bug where Synapse fails to start if a signing key file contains an empty line. (#13738)
  • Fix a long-standing bug where Synapse would fail to handle malformed user IDs or room aliases gracefully in certain cases. (#13746)
  • Fix a long-standing bug where device lists would remain cached when remote users left and rejoined the last room shared with the local homeserver. (#13749, #13826)
  • Fix a long-standing bug that could cause stale caches in some rare cases on the first startup of Synapse with replication. (#13766)
  • Fix a long-standing spec compliance bug where Synapse would accept a trailing slash on the end of /get_missing_events federation requests. (#13789)
  • Delete associated data from event_failed_pull_attempts, insertion_events, insertion_event_extremities, insertion_event_extremities, insertion_event_extremities when purging the room. (#13825)

Improved Documentation

  • Note that libpq is required on ARM-based Macs. (#13480)
  • Fix a mistake in the config manual introduced in Synapse 1.22.0: the event_cache_size is scaled by caches.global_factor. (#13726)
  • Fix a typo in the documentation for the login ratelimiting configuration. (#13727)
  • Define Synapse's compatability policy for SQLite versions. (#13728)
  • Add docs for the common fix of deleting the matrix_synapse.egg-info/ directory for fixing Python dependency problems. (#13785)
  • Update request log format documentation to mention the format used when the authenticated user is controlling another user. (#13794)

Deprecations and Removals

  • Synapse will now refuse to start if configured to use SQLite < 3.27. (#13760)
  • Don't include redundant prev_state in new events. Contributed by Denis Kariakin (@dakariakin). (#13791)

Internal Changes

  • Add a stub Rust crate. (#12595, #13734, #13735, #13743, #13763, #13769, #13778)
  • Bump the minimum dependency of matrix_common to 1.3.0 to make use of the MXCUri class. Use MXCUri to simplify media retention test code. (#13162)
  • Add and populate the event_stream_ordering column on the receipts table for future optimisation of push action processing. Contributed by Nick @ Beeper (@Fizzadar). (#13703)
  • Rename the EventFormatVersions enum values so that they line up with room version numbers. (#13706)
  • Update trial old deps CI to use Poetry 1.2.0. (#13707, #13725)
  • Add experimental configuration option to allow disabling legacy Prometheus metric names. (#13714, #13717, #13718)
  • Fix typechecking with latest types-jsonschema. (#13724)
  • Strip number suffix from instance name to consolidate services that traces are spread over. (#13729)
  • Instrument get_metadata_for_events for understandable traces in Jaeger. (#13730)
  • Remove old queries to join room memberships to current state events. Contributed by Nick @ Beeper (@Fizzadar). (#13745)
  • Avoid raising an error due to malformed user IDs in get_current_hosts_in_room. Malformed user IDs cannot currently join a room, so this error would not be hit. (#13748)
  • Update the docstrings for get_users_in_room and get_current_hosts_in_room to explain the impact of partial state. (#13750)
  • Use an additional database query when persisting receipts. (#13752)
  • Preparatory work for storing thread IDs for notifications and receipts. (#13753)
  • Re-type hint some collections as read-only. (#13754)
  • Remove unused Prometheus recording rules from synapse-v2.rules and add comments describing where the rest are used. (#13756)
  • Add a check for editable installs if the Rust library needs rebuilding. (#13759)
  • Tag traces with the instance name to be able to easily jump into the right logs and filter traces by instance. (#13761)
  • Concurrently fetch room push actions when calculating badge counts. Contributed by Nick @ Beeper (@Fizzadar). (#13765)
  • Update the script which makes full schema dumps. (#13770)
  • Deduplicate is_server_notices_room. (#13780)
  • Simplify the dependency DAG in the tests workflow. (#13784)
  • Remove an old, incorrect migration file. (#13788)
  • Remove unused method in synapse.api.auth.Auth. (#13795)
  • Fix a memory leak when running the unit tests. (#13798)
  • Use partial indices on SQLite. (#13802)
  • Check that portdb generates the same postgres schema as that in the source tree. (#13808)
  • Fix Docker build when Rust .so has been built locally first. (#13811)
  • Complement: Initialise the Postgres database directly inside the target image instead of the base Postgres image to fix building using Buildah. (#13819)
  • Support providing an index predicate clause when doing upserts. (#13822)
  • Minor speedups to linting in CI. (#13827)

Don't miss a new synapse release

NewReleases is sending notifications on new releases.