We've just released Synapse 0.23 - which contains a bunch of significant performance improvements, bug and stability fixes - as well as a few new features: basic spam checking (the ability to configure your homeserver to reject events which match arbitrary rules, both from users and other servers) - and long-awaited support for privacy-preserving ('event_id_only') push notifications. This means that apps can choose to register themselves to receive push notifications which do not contain any information about the actual push, but instead act as a simple "wake up!" event, which triggers the app to then sync via the client-server API in order to display the actual push notification details. This is particularly useful for push notifications for E2E encrypted rooms, as it means the client has a chance of decrypting the message in order to display the push notification details in the UI (if the user wants that). matrix-ios-sdk and matrix-android-sdk are in the process of being moved over to use the new 'event_id_only' push format.
Long-awaited Communities/Groups will land in Synapse 0.24, which should come quite soon (we're almost ready to merge it to develop, but it's a major update so we wanted to get 0.23 out the door first).
As always, you can get your latest Synapse from https://github.com/matrix-org/synapse or a OS repository of your choice (we've just released the official Debian packages).
Full details of Synapse 0.23:
Features:
- Add a frontend proxy worker (PR #2344)
- Add support for event_id_only push format (PR #2450)
- Add a PoC for filtering spammy events (PR #2456)
- Add a config option to block all room invites (PR #2457)
- Use bcrypt module instead of py-bcrypt (PR #2288) Thanks to @kyrias!
- Improve performance of generating push notifications (PR #2343, #2357, #2365, #2366, #2371)
- Improve DB performance for device list handling in sync (PR #2362)
- Include a sample prometheus config (PR #2416)
- Document known to work postgres version (PR #2433) Thanks to @ptman!
- Fix caching error in the push evaluator (PR #2332)
- Fix bug where pusherpool didn't start and broke some rooms (PR #2342)
- Fix port script for user directory tables (PR #2375)
- Fix device lists notifications when user rejoins a room (PR #2443, #2449)
- Fix sync to always send down current state events in timeline (PR #2451)
- Fix bug where guest users were incorrectly kicked (PR #2453)
- Fix bug talking to IPv6 only servers using SRV records (PR #2462)
- Fix regression in performance of syncs (PR #2470)
The Foundation needs you
The Matrix.org Foundation is a non-profit and only relies on donations to operate. Its core mission is to maintain the Matrix Specification, but it does much more than that.
It maintains the matrix.org homeserver and hosts several bridges for free. It fights for our collective rights to digital privacy and dignity.
Support us