Please note that this version of Synapse drops support for PostgreSQL 11 and 12. The minimum version of PostgreSQL supported is now version 13.
Deprecations and Removals
Features
- Added the
email.tlsname
config option. This allows specifying the domain name used to validate the SMTP server's TLS certificate separately from theemail.smtp_host
to connect to. (#17849) - Module developers will have access to the user ID of the requester when adding
check_username_for_spam
callbacks tospam_checker_module_callbacks
. Contributed by Wilson@Pangea.chat. (#17916) - Add endpoints to the Admin API to fetch the number of invites the provided user has sent after a given timestamp,
fetch the number of rooms the provided user has joined after a given timestamp, and get report IDs of event
reports against a provided user (i.e. where the user was the sender of the reported event). (#17948) - Support stable account suspension from MSC3823. (#17964)
- Add
macaroon_secret_key_path
config option. (#17983)
Bugfixes
- Fix bug when rejecting withdrew invite with a
third_party_rules
module, where the invite would be stuck for the client. (#17930) - Properly purge state groups tables when purging a room with the Admin API. (#18024)
- Fix a bug preventing the admin redaction endpoint from working on messages from remote users. (#18029, #18043)
Improved Documentation
- Update
synapse.app.generic_worker
documentation to only recommendGET
requests for stream writer routes by default, unless the worker is also configured as a stream writer. Contributed by @evoL. (#17954) - Add documentation for the previously-undocumented
last_seen_ts
query parameter to the query user Admin API. (#17976) - Improve documentation for the
TaskScheduler
class. (#17992) - Fix example in reverse proxy docs to include server port. (#17994)
- Update Alpine Linux Synapse Package Maintainer within the installation instructions. (#17846)
Internal Changes
- Add
RoomID
&EventID
rust types. (#17996) - Fix various type errors across the codebase. (#17998)
- Disable DB statement timeout when doing a room purge since it can be quite long. (#18017)
- Remove some remaining uses of
twisted.internet.defer.returnValue
. Contributed by Colin Watson. (#18020) - Refactor
get_profile
to no longer include fields with a value ofNone
. (#18063)
Updates to locked dependencies
- Bump anyhow from 1.0.93 to 1.0.95. (#18012, #18045)
- Bump authlib from 1.3.2 to 1.4.0. (#18048)
- Bump dawidd6/action-download-artifact from 6 to 7. (#17981)
- Bump http from 1.1.0 to 1.2.0. (#18013)
- Bump mypy from 1.11.2 to 1.12.1. (#17999)
- Bump mypy-zope from 1.0.8 to 1.0.9. (#18047)
- Bump pillow from 10.4.0 to 11.0.0. (#18015)
- Bump pydantic from 2.9.2 to 2.10.3. (#18014)
- Bump pyicu from 2.13.1 to 2.14. (#18060)
- Bump pyo3 from 0.23.2 to 0.23.3. (#18001)
- Bump python-multipart from 0.0.16 to 0.0.18. (#17985)
- Bump sentry-sdk from 2.17.0 to 2.19.2. (#18061)
- Bump serde from 1.0.215 to 1.0.217. (#18031, #18059)
- Bump serde_json from 1.0.133 to 1.0.134. (#18044)
- Bump twine from 5.1.1 to 6.0.1. (#18049)