Skip to content

synapse

Communication & Email

An open‑source Matrix homeserver implementation for secure, interoperable real‑time communications

Python Latest v1.153.0 · 15d ago Security brief →

Features

  • Runs a full Matrix homeserver (Synapse) supporting chat and messaging
  • Provides detailed configuration options for deployment and federation
  • Offers guides for reverse‑proxy setup, upgrades, and troubleshooting

Recent releases

View all 12 releases →
Review required
v1.153.0 Bug fix
RBAC

Bugfixes, Rust internals, ACLs, MSC3266, admin API

v1.152.1 Security relevant
Security fixes
  • ELEMENTSEC-2026-1706 — Prevent CPU starvation (Denial of Service) under worker lock contention; cap WorkerLock timeout to 60 seconds (GHSA-8q93-326v-3m7g, CVE pending)
  • ELEMENTSEC-2025-1636 — Prevent pagination from ending when a page is full of rejected events (GHSA-6qf2-7x63-mm6v, CVE pending)
Full changelog

Synapse 1.152.1 (2026-05-07)

Security Fixes

  • Prevent CPU starvation (Denial of Service) under worker lock contention, additionally capping the WorkerLock time out interval to a maximum of 60 seconds. Contributed by Famedly. (#19394, ELEMENTSEC-2026-1706, GHSA-8q93-326v-3m7g, CVE pending)
  • Prevent pagination ending when a page is full of rejected events. (ELEMENTSEC-2025-1636, GHSA-6qf2-7x63-mm6v, CVE pending)
v1.152.0 Breaking risk
Breaking changes
  • Worker deployments must configure `quarantined_media_changes` stream writer; without it only main process handles `/media/quarantine` endpoints
Security fixes
  • Non-admin bypass of admin checks for remote quarantined media downloads if media cached locally (v1.145 regression)
Notable features
  • Listing quarantined media changes Admin API for paginated records of media quarantine state changes
  • Support for MSC4450: Identity Provider selection for User-Interactive Authentication with Legacy Single Sign-On
  • Admin API endpoints to list, fetch and delete user reports
Full changelog

Synapse 1.152.0 (2026-04-28)

No significant changes since 1.152.0rc1.

Configuration changes needed for deployments using workers

For deployments using workers, please note that this version introduces a new quarantined_media_changes stream writer, which may require configuration changes.
Please see the the relevant section in the upgrade notes for details.

Without configuring this new stream writer, only the main process will be able to handle the /media/quarantine admin API endpoints for quarantining media.

Synapse 1.152.0rc1 (2026-04-22)

Features

Bugfixes

  • Reject device_keys: null in the request to POST /_matrix/client/v3/keys/upload, as per the spec. This was temporarily allowed as a workaround for misbehaving clients. (#19637)
  • Fix database migrations failing on platforms where SQLite is configured with SQLITE_DBCONFIG_DEFENSIVE by default, such as macOS. (#19690)
  • Fix a bug introduced in v1.145 where a non-admin could bypass admin checks for downloading remote quarantined media. This relied on the media already being previously present on the homeserver. (#19639)

Improved Documentation

  • Include a workaround for running the unit tests with SQLite under recent versions of MacOS. (#19615)
  • Fix Docker image link typo in worker docs. (#19645)
  • Update the developer stream docs for creating a new stream to point out _setup_sequence(...) in portdb. (#19675)
  • Update the developer stream docs for creating a new stream to highlight places that require documentation updates. (#19696)

Internal Changes

  • Update CI to use re-usable Complement GitHub CI workflow. (#19533)
  • Fix docstring for limit argument in _maybe_backfill_inner(...). (#19630)
  • Document context for why increase timeout for policy server requests. (#19633)
  • Run lint script to format Complement tests introduced in #19509. (#19636)
  • Small simplifications to the events class. (#19680, #19712)
  • Introduce spam_checker_spammy internal event metadata. (#19453)
  • Add a FilteredEvent class that saves us copying events. (#19640)
  • Convert EventInternalMetadata to use Arc<RwLock<_>>. (#19669)
v1.151.0 Mixed
⚠ Upgrade required
  • Postgres database statement_timeout has been reduced to 10m from 1h; ensure long-running queries are compatible.
Breaking changes
  • Removed support for MSC3852 (Expose user agent information on Device)
  • Lowered Postgres database statement_timeout from 1h to 10m
Notable features
  • Added stable support for MSC4284 Policy Servers
  • Stabilized support for MSC2666 (Get rooms in common) and MSC3266 (/hierarchy API fields)
  • Added configuration option for HTTP/2 over plaintext when connecting to Matrix Authentication Service
v1.150.0 New feature
Notable features
  • Federation extremities endpoint (MSC4370)
  • Delayed event metadata tracking
  • Sticky events on v3 sync

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.

About

Stars
4,251
Forks
545
Languages
Python Rust HTML

Community & Support

Open source alternatives

Beta — feedback welcome: [email protected]