Skip to content

synapse

v1.154.0 Feature

This release adds 1 notable feature for engineering teams evaluating rollout.

Published 1mo 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

Summary

AI summary

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

Changes in this release

Feature Low

Adds MSC4452 Preview URL capabilities API support.

Adds MSC4452 Preview URL capabilities API support.

Source: llm_adapter@2026-06-04

Confidence: high

Bugfix Medium

Fixes missing user avatars in MSC4186 Sliding Sync with empty room names.

Fixes missing user avatars in MSC4186 Sliding Sync with empty room names.

Source: llm_adapter@2026-06-04

Confidence: high

Bugfix Medium

Fixes access token cache not invalidating for sessions using refresh tokens.

Fixes access token cache not invalidating for sessions using refresh tokens.

Source: llm_adapter@2026-06-04

Confidence: high

Bugfix Medium

Fixes Synapse returning 400 (M_BAD_JSON) when sending messages with mentions and a registered check_event_allowed callback.

Fixes Synapse returning 400 (M_BAD_JSON) when sending messages with mentions and a registered check_event_allowed callback.

Source: llm_adapter@2026-06-04

Confidence: high

Bugfix Medium

Fixes /sync attempting to fetch data with flawed future tokens.

Fixes /sync attempting to fetch data with flawed future tokens.

Source: llm_adapter@2026-06-04

Confidence: high

Bugfix Medium

Fixes /sync failures when MSC4354 Sticky Events are enabled and Ephemeral Data Units are filtered.

Fixes /sync failures when MSC4354 Sticky Events are enabled and Ephemeral Data Units are filtered.

Source: llm_adapter@2026-06-04

Confidence: high

Bugfix Medium

Fixes signature merging bug when policy server shares Synapse's server name.

Fixes signature merging bug when policy server shares Synapse's server name.

Source: llm_adapter@2026-06-04

Confidence: high

Bugfix Low

Fixes packaging issues for Fedora and EPEL caused by unnecessary attrs version bump.

Fixes packaging issues for Fedora and EPEL caused by unnecessary attrs version bump.

Source: llm_adapter@2026-06-04

Confidence: high

Full changelog

Synapse 1.154.0 (2026-06-04)

No significant changes since 1.154.0rc1.

Synapse 1.154.0rc1 (2026-05-27)

Features

  • Add support for MSC4452: Preview URL capabilities API which exposes a io.element.msc4452.preview_url capability.
    If experimental_features.msc4452_enabled is true, the /_matrix/(client/v1/media|media/v3)/preview_url endpoint
    now responds with a 403 status code when the capability is disabled. (#19715)

Bugfixes

  • Fix a bug in MSC4186: Simplified Sliding Sync that could prevent user avatars from showing if the room had an empty name. (#19468, #19791)
  • Fix access token cache not being invalidated for sessions using refresh tokens. Contributed by @FrenchGithubUser @ Famedly. (#19483)
  • Fix bug where Synapse would return 400 (M_BAD_JSON) when sending a message with a mentions field and Synapse module check_event_allowed callback registered (frozen event). Contributed by @gaetan-sbt. (#19634)
  • Fix long-standing but niche bug with /sync where it could attempt to fetch data with flawed invalid future tokens. (#19644)
  • Fix /sync failing when MSC4354 Sticky Events are enabled and the sync request filters out Ephemeral Data Units (EDUs). (#19787)
  • Fix packaging for Fedora and EPEL caused by unnecessary bumping attrs minimum version requirement in pyproject.toml file. Contributed by Oleg Girko. (#19789)
  • Fix merging signatures when a policy server is running under the same server name as Synapse. The bug was re-introduced in v1.153.0rc1 after being fixed earlier in v1.151.0rc1. Contributed by @tulir @ Beeper. (#19797)

Improved Documentation

  • Added details about how Synapse syncs the picture claim when update_profile_information setting is true. (#19508)

Internal Changes

  • Port Event.content field to Rust. (#19725)
  • Prefer close backfill points (absolute distance). (#19748)
  • Replace unique quarantined_media waiting patterns with standard wait_for_stream_token(...). (#19764)
  • Improve Synapse logging around when someone encounters We can't get valid state history. so you can correlate everything by event_id. (#19765)
  • Tidy up Rust RoomVersion structs. (#19766)
  • Update WorkerLock tests to better stress the WORKER_LOCK_MAX_RETRY_INTERVAL. (#19772)
  • Refactor MSC4242: State DAG checks behind a single TypeIs helper to avoid scattered isinstance casts. (#19774)
  • Use StrCollection for prev_state_events. (#19777)
  • Fix up the construction of events in tests, ahead of the Rust event port. (#19781)

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]