github matrix-org/synapse v1.78.0

latest releases: v1.98.0, v1.98.0rc1, v1.97.0...
16 months ago

Synapse 1.78.0 (2023-02-28)

Bugfixes

  • Fix a bug introduced in Synapse 1.76 where 5s delays would occasionally occur in deployments using workers. (#15150)

Synapse 1.78.0rc1 (2023-02-21)

Features

  • Implement the experimental exact_event_match push rule condition from MSC3758. (#14964)
  • Add account data to the command line user data export tool. (#14969)
  • Implement MSC3873 to disambiguate push rule keys with dots in them. (#15004)
  • Allow Synapse to use a specific Redis logical database in worker-mode deployments. (#15034)
  • Tag opentracing spans for federation requests with the name of the worker serving the request. (#15042)
  • Implement the experimental exact_event_property_contains push rule condition from MSC3966. (#15045)
  • Remove spurious dont_notify action from the defaults for the .m.rule.reaction pushrule. (#15073)
  • Update the error code returned when user sends a duplicate annotation. (#15075)

Bugfixes

  • Prevent clients from reporting nonexistent events. (#13779)
  • Return spec-compliant JSON errors when unknown endpoints are requested. (#14605)
  • Fix a long-standing bug where the room aliases returned could be corrupted. (#15038)
  • Fix a bug introduced in Synapse 1.76.0 where partially-joined rooms could not be deleted using the purge room API. (#15068)
  • Fix a long-standing bug where federated joins would fail if the first server in the list of servers to try is not in the room. (#15074)
  • Fix a bug introduced in Synapse v1.74.0 where searching with colons when using ICU for search term tokenisation would fail with an error. (#15079)
  • Reduce the likelihood of a rare race condition where rejoining a restricted room over federation would fail. (#15080)
  • Fix a bug introduced in Synapse 1.76 where workers would fail to start if the health listener was configured. (#15096)
  • Fix a bug introduced in Synapse 1.75 where the portdb script would fail to run after a room had been faster-joined. (#15108)

Improved Documentation

Internal Changes

  • Re-type hint some collections as read-only. (#13755)
  • Faster joins: don't stall when another user joins during a partial-state room resync. (#14606)
  • Add a class UnpersistedEventContext to allow for the batching up of storing state groups. (#14675)
  • Add a check to ensure that locked dependencies have source distributions available. (#14742)
  • Tweak comment on _is_local_room_accessible as part of room visibility in /hierarchy to clarify the condition for a room being visible. (#14834)
  • Prevent WARNING: there is already a transaction in progress lines appearing in PostgreSQL's logs on some occasions. (#14840)
  • Use StrCollection to avoid potential bugs with Collection[str]. (#14929)
  • Improve performance of /sync in a few situations. (#14973)
  • Limit concurrent event creation for a room to avoid state resolution when sending bursts of events to a local room. (#14977)
  • Skip calculating unread push actions in /sync when enable_push is false. (#14980)
  • Add a schema dump symlinks inside contrib, to make it easier for IDEs to interrogate Synapse's database schema. (#14982)
  • Improve type hints. (#15008, #15026, #15027, #15028, #15031, #15035, #15052, #15072, #15084)
  • Update MSC3952 support based on changes to the MSC. (#15037)
  • Avoid mutating a cached value in get_user_devices_from_cache. (#15040)
  • Fix a rare exception in logs on start up. (#15041)
  • Update pyo3-log to v0.8.1. (#15043)
  • Avoid mutating cached values in _generate_sync_entry_for_account_data. (#15047)
  • Refactor arguments of try_unbind_threepid and _try_unbind_threepid_with_id_server to not use dictionaries. (#15053)
  • Merge debug logging from the hotfixes branch. (#15054)
  • Faster joins: omit device list updates originating from partial state rooms in /sync responses without lazy loading of members enabled. (#15069)
  • Fix clashing database transaction name. (#15070)
  • Upper-bound frozendict dependency. This works around us being unable to test installing our wheels against Python 3.11 in CI. (#15114)
  • Tweak logging for when a worker waits for its view of a replication stream to catch up. (#15120)
Locked dependency updates
  • Bump bleach from 5.0.1 to 6.0.0. (#15059)
  • Bump cryptography from 38.0.4 to 39.0.1. (#15020)
  • Bump ruff version from 0.0.230 to 0.0.237. (#15033)
  • Bump dtolnay/rust-toolchain from 9cd00a88a73addc8617065438eff914dd08d0955 to 25dc93b901a87e864900a8aec6c12e9aa794c0c3. (#15060)
  • Bump systemd-python from 234 to 235. (#15061)
  • Bump serde_json from 1.0.92 to 1.0.93. (#15062)
  • Bump types-requests from 2.28.11.8 to 2.28.11.12. (#15063)
  • Bump types-pillow from 9.4.0.5 to 9.4.0.10. (#15064)
  • Bump sentry-sdk from 1.13.0 to 1.15.0. (#15065)
  • Bump types-jsonschema from 4.17.0.3 to 4.17.0.5. (#15099)
  • Bump types-bleach from 5.0.3.1 to 6.0.0.0. (#15100)
  • Bump dtolnay/rust-toolchain from 25dc93b901a87e864900a8aec6c12e9aa794c0c3 to e12eda571dc9a5ee5d58eecf4738ec291c66f295. (#15101)
  • Bump dawidd6/action-download-artifact from 2.24.3 to 2.25.0. (#15102)
  • Bump types-pillow from 9.4.0.10 to 9.4.0.13. (#15104)
  • Bump types-setuptools from 67.1.0.0 to 67.3.0.1. (#15105)

Don't miss a new synapse release

NewReleases is sending notifications on new releases.