Skip to content
This repository has been archived by the owner on Apr 26, 2024. It is now read-only.

v1.46.0rc1

Pre-release
Pre-release
Compare
Choose a tag to compare
@erikjohnston erikjohnston released this 27 Oct 13:45
· 3843 commits to develop since this release
v1.46.0rc1

Synapse 1.46.0rc1 (2021-10-27)

The cause of the performance regression affecting Synapse 1.44 has been identified and fixed. (#11177)

Features

  • Add support for Ubuntu 21.10 "Impish Indri". (#11024)
  • Port the Password Auth Providers module interface to the new generic interface. (#10548, #11180)
  • Experimental support for the thread relation defined in MSC3440. (#11088, #11181, #11192)
  • Users admin API can now also modify user type in addition to allowing it to be set on user creation. (#11174)

Bugfixes

  • Newly-created public rooms are now only assigned an alias if the room's creation has not been blocked by permission settings. Contributed by @AndrewFerr. (#10930)
  • Fix a long-standing bug which meant that events received over federation were sometimes incorrectly accepted into the room state. (#11001, #11009, #11012)
  • Fix 500 error on /messages when the server accumulates more than 5 backwards extremities at a given depth for a room. (#11027)
  • Fix a bug where setting a user's external_id via the admin API returns 500 and deletes user's existing external mappings if that external ID is already mapped. (#11051)
  • Fix a long-standing bug where users excluded from the user directory were added into the directory if they belonged to a room which became public or private. (#11075)
  • Fix a long-standing bug when attempting to preview URLs which are in the windows-1252 character encoding. (#11077, #11089)
  • Fix broken export-data admin command and add test script checking the command to CI. (#11078)
  • Show an error when timestamp in seconds is provided to the /purge_media_cache Admin API. (#11101)
  • Fix local users who left all their rooms being removed from the user directory, even if the search_all_users config option was enabled. (#11103)
  • Fix a bug which caused the module API's get_user_ip_and_agents function to always fail on workers. get_user_ip_and_agents was introduced in 1.44.0 and did not function correctly on worker processes at the time. (#11112)
  • Identity server connection is no longer ignoring ip_range_whitelist. (#11120)
  • Fix a bug introduced in Synapse 1.45.0 breaking the configuration file parsing script. (#11145)
  • Fix a performance regression introduced in 1.44.0 which could cause client requests to time out when making large numbers of outbound requests. (#11177, #11190)
  • Resolve and share state_groups for all MSC2716 historical events in batch. (#10975)

Improved Documentation

  • Fix broken links relating to module API deprecation in the upgrade notes. (#11069)
  • Add more information about what happens when a user is deactivated. (#11083)
  • Clarify the the sample log config can be copied from the documentation without issue. (#11092)
  • Update the admin API documentation with an updated list of the characters allowed in registration tokens. (#11093)
  • Document Synapse's behaviour when dealing with multiple modules registering the same callbacks and/or handlers for the same HTTP endpoints. (#11096)
  • Fix instances of [example]{.title-ref} in the upgrade documentation as a result of prior RST to Markdown conversion. (#11118)
  • Document the version of Synapse each module callback was introduced in. (#11132)
  • Document the version of Synapse that introduced each module API method. (#11183)

Internal Changes

  • Fix spurious warnings about losing the logging context on the ReplicationCommandHandler when losing the replication connection. (#10984)
  • Include rejected status when we log events. (#11008)
  • Add some extra logging to the event persistence code. (#11014)
  • Rearrange the internal workings of the incremental user directory updates. (#11035)
  • Fix a long-standing bug where users excluded from the directory could still be added to the users_who_share_private_rooms table after a regular user joins a private room. (#11143)
  • Add and improve type hints. (#10972, #11055, #11066, #11076, #11095, #11109, #11121, #11146)
  • Mark the Synapse package as containing type annotations and fix export declarations so that Synapse pluggable modules may be type checked against Synapse. (#11054)
  • Remove dead code from MediaFilePaths. (#11056)
  • Be more lenient when parsing oEmbed response versions. (#11065)
  • Create a separate module for the retention configuration. (#11070)
  • Clean up some of the federation event authentication code for clarity. (#11115, #11116, #11122)
  • Add docstrings and comments to the application service ephemeral event sending code. (#11138)
  • Update the sign_json script to support inline configuration of the signing key. (#11139)
  • Fix broken link in the docker image README. (#11144)
  • Always dump logs from unit tests during CI runs. (#11068)
  • Add tests for MediaFilePaths class. (#11057)
  • Simplify the user admin API tests. (#11048)
  • Add a test for the workaround introduced in #11042 concerning the behaviour of third-party rule modules and SynapseErrors. (#11071)