Synapse v1.70.0.rc1 Release Notes

Release Date: 2022-10-19 // over 1 year ago
  • ๐Ÿ”‹ Features

    ๐Ÿ›  Bugfixes

    • Prevent device names from appearing in device list updates in some situations when allow_device_name_lookup_over_federation is false. (This is not comprehensive: see #13114.) (#10015)
    • ๐Ÿ›  Fix a long-standing bug where redactions were not being sent over federation if we did not have the original event. (#13813)
    • ๐Ÿ›  Fix a long-standing bug where edits of non-m.room.message events would not be correctly bundled or have their new content applied. (#14034)
    • Fix a bug introduced in Synapse 1.53.0 when querying /publicRooms with both a room_type filter and a third_party_instance_id. (#14053)
    • ๐Ÿ›  Fix a bug introduced in Synapse 1.35.0 where errors parsing a /send_join or /state response would produce excessive, low-quality Sentry events. (#14065)
    • Fix a long-standing bug where Synapse would error on the optional 'invite_room_state' field not being provided to PUT /_matrix/federation/v2/invite/{roomId}/{eventId}. (#14083)
    • ๐Ÿ›  Fix a bug where invalid oEmbed fields would cause the entire response to be discarded. Introduced in Synapse 1.18.0. (#14089)
    • ๐Ÿ›  Fix a bug introduced in Synapse 1.37.0 in which an incorrect key name was used for sending and receiving room metadata when knocking on a room. (#14102)
    • ๐Ÿ›  Fix a bug introduced in v1.69.0rc1 where the joined hosts for a given event were not being properly cached. (#14125)
    • ๐Ÿ›  Fix a bug introduced in Synapse 1.30.0 where purging and rejoining a room without restarting in-between would result in a broken room. (#14161, #14164)
    • Fix MSC3030 /timestamp_to_event endpoint returning potentially inaccurate closest events with outliers present. (#14215)

    โšก๏ธ Updates to the Docker image

    • โšก๏ธ Update the version of frozendict in Docker images and Debian packages from 2.3.3 to 2.3.4, which may fix memory leak problems. (#13955)
    • ๐Ÿ— Use the minimal Rust profile when building Synapse. (#14141)
    • ๐Ÿณ Prevent a class of database sharding errors when using Dockerfile-workers to spawn multiple instances of the same worker. Contributed by Jason Little. (#14165)
    • ๐Ÿณ Set LD_PRELOAD to use jemalloc memory allocator in Dockerfile-workers. (#14182)
    • ๐Ÿ›  Fix pre-startup logging being lost when using the Dockerfile-workers image. (#14195)

    ๐Ÿ‘Œ Improved Documentation

    • โž• Add sample worker files for pusher and federation_sender. (#14077)
    • ๐Ÿ‘Œ Improve the listener example on the metrics documentation. (#14078)
    • Expand Google OpenID Connect example config to map email attribute. Contributed by @ptman. (#14081)
    • The changelog entry ending in a full stop or exclamation mark is not optional. (#14087)
    • ๐Ÿ›  Fix links to jemalloc documentation, which were broken in #13491. (#14093)
    • โœ‚ Remove not needed replication listener in docker compose example. (#14107)
    • Fix name of alias_creation_rules option in the config manual documentation. (#14124)
    • Clarify comment on event contexts. (#14145)
    • Fix dead link to the Admin Registration API. (#14189)

    ๐Ÿ—„ Deprecations and Removals

    Internal Changes

    • ๐Ÿ”€ Optimise queries used to get a users rooms during sync. Contributed by Nick @ Beeper (@fizzadar). (#13991)
    • โšก๏ธ Update authlib from 0.15.5 to 1.1.0. (#14006)
    • Make parse_server_name consistent in handling invalid server names. (#14007)
    • Don't repeatedly wake up the same users for batched events. (#14033)
    • โœ… Complement test image: capture logs from nginx. (#14063)
    • Don't create noisy Sentry events when a requester drops connection to the metrics server mid-request. (#14072)
    • โœ… Run the integration test suites with the asyncio reactor enabled in CI. (#14092)
    • โž• Add debug logs to figure out why an event was filtered out of the client response. (#14095)
    • ๐Ÿ“œ Indicate what endpoint came back with a JSON response we were unable to parse. (#14097)
    • Break up calls to fetch rooms for many users. Contributed by Nick @ Beeper (@fizzadar). (#14109)
    • Faster joins: prioritise the server we joined by when restarting a partial join resync. (#14126)
    • ๐Ÿ— Cache Rust build cache when building docker images. (#14130)
    • Enable dependabot for Rust dependencies. (#14132)
    • โฌ†๏ธ Bump typing-extensions from 4.1.1 to 4.4.0. (#14134)
    • ๐Ÿ— Use the minimal Rust profile when building Synapse. (#14141)
    • โœ‚ Remove unused configuration code. (#14142)
    • ๐Ÿšš Prepare for the gotestfmt repository move. (#14144)
    • ๐Ÿ”€ Invalidate rooms for user caches on replicated event, fix sync cache race in synapse workers. Contributed by Nick @ Beeper (@fizzadar). (#14155)
    • โœ… Enable url previews when testing with complement. (#14198)
    • When authenticating batched events, check for auth events in batch as well as DB. (#14214)
    • โšก๏ธ Update CI config to avoid GitHub Actions deprecation warnings. (#14216, #14224)
    • โšก๏ธ Update dependency requirements to allow building with poetry-core 1.3.2. (#14217)
    • ๐Ÿ“‡ Rename the cache_memory extra to cache-memory, for compatability with poetry-core 1.3.0 and PEP 685. From-source installations using this extra will need to install using the new name. (#14221)
    • ๐Ÿ”€ Specify dev-dependencies using lower bounds, to reduce the likelihood of a dependabot merge conflict. The lockfile continues to pin to specific versions. (#14227)

    Synapse 1.69.0 (2022-10-17)

    ๐Ÿšš Please note that legacy Prometheus metric names are now deprecated and will be removed in Synapse 1.73.0. โšก๏ธ Server administrators should update their dashboards and alerting rules to avoid using the deprecated metric names. โฌ†๏ธ See the upgrade notes for more details.

    No significant changes since 1.69.0rc4.