Synapse 1.153.0rc1 (2026-05-08)
Features
- Make ACLs apply to EDUs per MSC4163. (#18475)
- Stabilize MSC3266: Room summary API, removing the experimental config flag
msc3266_enabled. Contributed by @dasha-uwu. (#19720) - Partial MSC4311 implementation:
m.room.createis now a required part of strippedinvite_state/knock_state. Contributed by @FrenchGithubUser @famedly. (#19722) - Expose
tombstonedandreplacement_roomin room details on admin API endpointGET /_synapse/admin/v1/rooms/<room_id>. Contributed by Noah Markert. (#19737)
Bugfixes
- Allow self-requested user erasure (upon account deactivation) to succeed even if Synapse has disabled profile changes. Contributed by Famedly. (#19398)
- Fix Synapse not backfilling new history when attempting to use a pagination token near a backward extremity. (#19611)
- Have MSC4186: Simplified Sliding Sync return a new response immediately if a room subscription has changed and produced a new response. (#19714)
- Fix a bug where when upgrading a room to room version 12, the power level event in the old room got temporarily mutated to remove the user upgrading the room's power. (#19727)
- Fix packaging for Fedora and EPEL caused by unnecessary bumping
authlibminimum version requirement inpyproject.tomlfile. Contributed by Oleg Girko. (#19742)
Improved Documentation
- Add warning about known problems when configuring
use_frozen_dicts. (#19711)
Internal Changes
- Port
Event.signaturesfield to Rust. (#19706) - Port
Event.unsignedfield to Rust. (#19708) - Add a Rust canonical JSON serializer. (#19739, #19763)
- Configure Dependabot to only update Python dependencies in the lockfile, unless widening upper bounds. (#19743)
- Reduce
WORKER_LOCK_MAX_RETRY_INTERVALto 5 seconds to reduce idle time after lock is released. (#19755) - Force keyword-only arguments for
Durationso time units have to be specified. (#19756)