Skip to content

synapse

v1.156.0 Feature

This release adds 5 notable features for engineering teams evaluating rollout.

Published 19d Communication & Email
✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Affected surfaces

auth breaking_upgrade

Summary

AI summary

Broad release touches Internal Changes, Synapse 1.156.0rc1, Bugfixes, and Improved Documentation.

Full changelog

Synapse 1.156.0 (2026-07-07)

No significant changes since 1.156.0rc1.

Synapse 1.156.0rc1 (2026-06-30)

Features

  • Expose MSC4354 Sticky Events over MSC4186 (Simplified) Sliding Sync. (#19591)
  • Stabilize support for sending ephemeral events to application services, as per MSC2409. Contributed by @jason-famedly @ Famedly. (#19758)
  • Include allowed_room_ids in the /summary client-server API response for rooms with restricted join rules, as required by Matrix 1.15.
    Contributed by @FrenchGithubUser @Famedly. (#19762)
  • MSC4140: Cancellable delayed events: Allow authentication on delayed event management endpoints (such as /restart) to bypass ratelimits for unauthenticated requests based on the client IP address. (#19794)
  • Add new metric synapse_non_deactivated_user_count which tracks the number of non-deactivated users in the database, split by app_service. (#19848)
  • The GET /_matrix/client/unstable/org.matrix.msc1763/retention/configuration endpoint is now provided when retention
    is enabled and experimental_features.msc1763_enabled is enabled, based on
    MSC1763. (#19853)
  • Add experimental support for MSC4491: Invite reasons in room creation. (#19874)

Bugfixes

  • Provide remote servers a way to find out about an event created during the remote join handshake. Contributed by @FrenchGithubUser and @jason-famedly @ Famedly. (#19390, #19855, #19856)
  • Advertise org.matrix.msc4143 in unstable_features when msc4143_enabled is set. (#19646)
  • Fix a long-standing bug where the badge notification count for a room could become permanently inflated if a read receipt was sent before the room's notification counts were first summarised. (#19785)
  • Fix startup listener logging to report the actual bound TCP port, so listeners configured with port 0 no longer log Synapse now listening on TCP port 0. (#19810)
  • Fix notification counts being inflated after a /purge_history when notifications had already been rotated into the summary table. (#19834)
  • Fix /sync caching transient errors for the sync_response_cache_duration. (#19845)
  • Fix local events being deleted by the Purge History admin API despite delete_local_events being set to false, in room versions other than 1 and 2. (#19850)
  • Fix a bug where a user's dehydrated device (MSC3814) was deleted when their device list was synced from Matrix Authentication Service (e.g. upon logging out their last device), breaking offline key delivery. (#19892)

Improved Documentation

  • Update auto_join_rooms config documentation to cover requirements for auto-joining invite-only rooms. (#19660)
  • Add stable endpoint for MSC3266: Room summary API into worker docs. Contributed by @olmari. (#19788)
  • Tweak wording of Rust crate dependency update policy. (#19829)
  • Fixed the Admin API user endpoint documentation examples to use JSON booleans (true/false) instead of numeric (0/1) values. (#19847)

Internal Changes

  • Make simple_select_one_onecol_txn() more helpful by naming the table of the select - as all other query wrapper functions already did. (#19869)
  • Refactor get_user_which_could_invite logic to reuse get_users_which_can_issue_invite. Contributed by Noah Markert. (#19732)
  • Fix a flaky test (twisted.protocols.amp.TooLong error under trial -jN) caused by an oversized debug log line. (#19832)
  • Upload Complement test logs as CI artifacts instead of printing the raw output to the build log. (#19840)
  • Fix release script considering any workflow completion as successful. (#19843)
  • Force keyword-args for clear default_config(server_name="test") usage in test utilities. (#19849)
  • Add .ruff_cache/ directory to .gitignore. (#19854)
  • Bump poetry in CI from 2.2.1 to 2.4.1. (#19866, #19877)
  • Split out deferred and tokio_runtime to their own Rust modules. (#19868)
  • Prevent the cargo-test and cargo-bench CI jobs from being skipped, even on PRs that have Rust changes. (#19883)

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track synapse

Get notified when new releases ship.

Sign up free

About synapse

Synapse: Matrix homeserver written in Python/Twisted + Rust

All releases →

Related context

Related tools

Beta — feedback welcome: [email protected]