github matrix-org/synapse v1.53.0rc1

latest releases: v1.98.0, v1.98.0rc1, v1.97.0...
pre-release2 years ago

Synapse 1.53.0rc1 (2022-02-15)

Features

  • Add experimental support for sending to-device messages to application services, as specified by MSC2409. (#11215, #11966)
  • Remove account data (including client config, push rules and ignored users) upon user deactivation. (#11655)
  • Experimental support for MSC3666: including bundled aggregations in server side search results. (#11837)
  • Enable cache time-based expiry by default. The expiry_time config flag has been superseded by expire_caches and cache_entry_ttl. (#11849)
  • Add a callback to allow modules to allow or forbid a 3PID (email address, phone number) from being associated to a local account. (#11854)
  • Stabilize support and remove unstable endpoints for MSC3231. Clients must switch to the stable identifier and endpoint. See the upgrade notes for more information. (#11867)
  • Allow modules to retrieve the current instance's server name and worker name. (#11868)
  • Use a dedicated configurable rate limiter for 3PID invites. (#11892)
  • Support the stable API endpoint for MSC3283: new settings in /capabilities endpoint. (#11933, #11989)
  • Support the dir parameter on the /relations endpoint, per MSC3715. (#11941)
  • Experimental implementation of MSC3706: extensions to /send_join to support reduced response size. (#11967)

Bugfixes

  • Fix MSC2716 historical messages backfilling in random order on remote homeservers. (#11114)
  • Fix a bug introduced in Synapse 1.51.0 where incoming federation transactions containing at least one EDU would be dropped if debug logging was enabled for synapse.8631_debug. (#11890)
  • Fix a long-standing bug where some unknown endpoints would return HTML error pages instead of JSON M_UNRECOGNIZED errors. (#11930)
  • Implement an allow list of content types for which we will attempt to preview a URL. This prevents Synapse from making useless longer-lived connections to streaming media servers. (#11936)
  • Fix a long-standing bug where pagination tokens from /sync and /messages could not be provided to the /relations API. (#11952)
  • Require that modules register their callbacks using keyword arguments. (#11975)
  • Fix a long-standing bug where M_WRONG_ROOM_KEYS_VERSION errors would not include the specced current_version field. (#11988)

Improved Documentation

  • Fix typo in User Admin API: unpind -> unbind. (#11859)
  • Document images returned by the User List Media Admin API can include those generated by URL previews. (#11862)
  • Remove outdated MSC1711 FAQ document. (#11907)
  • Correct the structured logging configuration example. Contributed by Brad Jones. (#11946)
  • Add information on the Synapse release cycle. (#11954)
  • Fix broken link in the README to the admin API for password reset. (#11955)

Deprecations and Removals

  • Drop support for webclient listeners and configuring web_client_location to a non-HTTP(S) URL. Deprecated configurations are a configuration error. (#11895)
  • Remove deprecated user_may_create_room_with_invites spam checker callback. See the upgrade notes for more information. (#11950)
  • No longer build .deb packages for Ubuntu 21.04 Hirsute Hippo, which has now EOLed. (#11961)

Internal Changes

  • Enhance user registration test helpers to make them more useful for tests involving application services and devices. (#11615, #11616)
  • Improve performance when fetching bundled aggregations for multiple events. (#11660, #11752)
  • Fix type errors introduced by new annotations in the Prometheus Client library. (#11832)
  • Add missing type hints to replication code. (#11856, #11938)
  • Ensure that opentracing scopes are activated and closed at the right time. (#11869)
  • Improve opentracing for incoming federation requests. (#11870)
  • Improve internal docstrings in synapse.util.caches. (#11876)
  • Do not needlessly clear the get_users_in_room and get_users_in_room_with_profiles caches when any room state changes. (#11878)
  • Convert ApplicationServiceTestCase to use simple_async_mock. (#11880)
  • Remove experimental changes to the default push rules which were introduced in Synapse 1.19.0 but never enabled. (#11884)
  • Disable coverage calculation for olddeps build. (#11888)
  • Preparation to support sending device list updates to application services. (#11905)
  • Add a test that checks users receive their own device list updates down /sync. (#11909)
  • Run Complement tests sequentially. (#11910)
  • Various refactors to the application service notifier code. (#11911, #11912)
  • Tests: replace mocked Authenticator with the real thing. (#11913)
  • Various refactors to the typing notifications code. (#11914)
  • Use the proper type for the Content-Length header in the UploadResource. (#11927)
  • Remove an unnecessary ignoring of type hints due to fixes in upstream packages. (#11939)
  • Add missing type hints. (#11953)
  • Fix an import cycle in synapse.event_auth. (#11965)
  • Unpin frozendict but exclude the known bad version 2.1.2. (#11969)
  • Prepare for rename of default Complement branch. (#11971)
  • Fetch Synapse's version using a helper from matrix-common. (#11979)

Don't miss a new synapse release

NewReleases is sending notifications on new releases.