matrix.org/content/blog/2017/10/2017-10-02-synapse-0-23-is-...

45 lines
8.8 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

+++
title = "Synapse 0.23 is out!"
path = "/blog/2017/10/02/synapse-0-23-is-out"
[taxonomies]
author = ["Matthew Hodgson"]
category = ["General"]
+++
We've just released <a href="https://github.com/matrix-org/synapse/releases/tag/v0.23.0">Synapse 0.23</a> - 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 <a href="https://github.com/matrix-org/synapse">https://github.com/matrix-org/synapse</a> or a OS repository of your choice (we've just released the official Debian packages).
### Full details of Synapse 0.23:
Features:
<ul>
<li>Add a frontend proxy worker (PR <a class="issue-link js-issue-link" href="https://github.com/matrix-org/synapse/pull/2344" data-error-text="Failed to load issue title" data-id="241327229" data-permission-text="Issue title is private" data-url="https://github.com/matrix-org/synapse/issues/2344">#2344</a>)</li>
<li>Add support for event_id_only push format (PR <a class="issue-link js-issue-link" href="https://github.com/matrix-org/synapse/pull/2450" data-error-text="Failed to load issue title" data-id="258504959" data-permission-text="Issue title is private" data-url="https://github.com/matrix-org/synapse/issues/2450">#2450</a>)</li>
<li>Add a PoC for filtering spammy events (PR <a class="issue-link js-issue-link" href="https://github.com/matrix-org/synapse/pull/2456" data-error-text="Failed to load issue title" data-id="258768438" data-permission-text="Issue title is private" data-url="https://github.com/matrix-org/synapse/issues/2456">#2456</a>)</li>
<li>Add a config option to block all room invites (PR <a class="issue-link js-issue-link" href="https://github.com/matrix-org/synapse/pull/2457" data-error-text="Failed to load issue title" data-id="258801420" data-permission-text="Issue title is private" data-url="https://github.com/matrix-org/synapse/issues/2457">#2457</a>)</li>
</ul>
Changes:
<ul>
<li>Use bcrypt module instead of py-bcrypt (PR <a class="issue-link js-issue-link" href="https://github.com/matrix-org/synapse/pull/2288" data-error-text="Failed to load issue title" data-id="236667408" data-permission-text="Issue title is private" data-url="https://github.com/matrix-org/synapse/issues/2288">#2288</a>) Thanks to <a class="user-mention" href="https://github.com/kyrias">@kyrias</a>!</li>
<li>Improve performance of generating push notifications (PR <a class="issue-link js-issue-link" href="https://github.com/matrix-org/synapse/pull/2343" data-error-text="Failed to load issue title" data-id="241258390" data-permission-text="Issue title is private" data-url="https://github.com/matrix-org/synapse/issues/2343">#2343</a>, <a class="issue-link js-issue-link" href="https://github.com/matrix-org/synapse/pull/2357" data-error-text="Failed to load issue title" data-id="241976794" data-permission-text="Issue title is private" data-url="https://github.com/matrix-org/synapse/issues/2357">#2357</a>, <a class="issue-link js-issue-link" href="https://github.com/matrix-org/synapse/pull/2365" data-error-text="Failed to load issue title" data-id="242655038" data-permission-text="Issue title is private" data-url="https://github.com/matrix-org/synapse/issues/2365">#2365</a>,
<a class="issue-link js-issue-link" href="https://github.com/matrix-org/synapse/pull/2366" data-error-text="Failed to load issue title" data-id="242658178" data-permission-text="Issue title is private" data-url="https://github.com/matrix-org/synapse/issues/2366">#2366</a>, <a class="issue-link js-issue-link" href="https://github.com/matrix-org/synapse/pull/2371" data-error-text="Failed to load issue title" data-id="243026516" data-permission-text="Issue title is private" data-url="https://github.com/matrix-org/synapse/issues/2371">#2371</a>)</li>
<li>Improve DB performance for device list handling in sync (PR <a class="issue-link js-issue-link" href="https://github.com/matrix-org/synapse/pull/2362" data-error-text="Failed to load issue title" data-id="242317186" data-permission-text="Issue title is private" data-url="https://github.com/matrix-org/synapse/issues/2362">#2362</a>)</li>
<li>Include a sample prometheus config (PR <a class="issue-link js-issue-link" href="https://github.com/matrix-org/synapse/pull/2416" data-error-text="Failed to load issue title" data-id="250649035" data-permission-text="Issue title is private" data-url="https://github.com/matrix-org/synapse/issues/2416">#2416</a>)</li>
<li>Document known to work postgres version (PR <a class="issue-link js-issue-link" href="https://github.com/matrix-org/synapse/pull/2433" data-error-text="Failed to load issue title" data-id="254647605" data-permission-text="Issue title is private" data-url="https://github.com/matrix-org/synapse/issues/2433">#2433</a>) Thanks to <a class="user-mention" href="https://github.com/ptman">@ptman</a>!</li>
</ul>
Bug fixes:
<ul>
<li>Fix caching error in the push evaluator (PR <a class="issue-link js-issue-link" href="https://github.com/matrix-org/synapse/pull/2332" data-error-text="Failed to load issue title" data-id="240510018" data-permission-text="Issue title is private" data-url="https://github.com/matrix-org/synapse/issues/2332">#2332</a>)</li>
<li>Fix bug where pusherpool didn't start and broke some rooms (PR <a class="issue-link js-issue-link" href="https://github.com/matrix-org/synapse/pull/2342" data-error-text="Failed to load issue title" data-id="241022132" data-permission-text="Issue title is private" data-url="https://github.com/matrix-org/synapse/issues/2342">#2342</a>)</li>
<li>Fix port script for user directory tables (PR <a class="issue-link js-issue-link" href="https://github.com/matrix-org/synapse/pull/2375" data-error-text="Failed to load issue title" data-id="244304452" data-permission-text="Issue title is private" data-url="https://github.com/matrix-org/synapse/issues/2375">#2375</a>)</li>
<li>Fix device lists notifications when user rejoins a room (PR <a class="issue-link js-issue-link" title="Send down device list change notif when member leaves/rejoins room" href="https://github.com/matrix-org/synapse/pull/2443" data-error-text="Failed to load issue title" data-id="255950357" data-permission-text="Issue title is private">#2443</a>, <a class="issue-link js-issue-link" href="https://github.com/matrix-org/synapse/pull/2449" data-error-text="Failed to load issue title" data-id="258504140" data-permission-text="Issue title is private" data-url="https://github.com/matrix-org/synapse/issues/2449">#2449</a>)</li>
<li>Fix sync to always send down current state events in timeline (PR <a class="issue-link js-issue-link" title="Don't filter out current state events from timeline" href="https://github.com/matrix-org/synapse/pull/2451" data-error-text="Failed to load issue title" data-id="258537401" data-permission-text="Issue title is private">#2451</a>)</li>
<li>Fix bug where guest users were incorrectly kicked (PR <a class="issue-link js-issue-link" title="Fix overzealous kicking of guest users" href="https://github.com/matrix-org/synapse/pull/2453" data-error-text="Failed to load issue title" data-id="258560872" data-permission-text="Issue title is private">#2453</a>)</li>
<li>Fix bug talking to IPv6 only servers using SRV records (PR <a class="issue-link js-issue-link" href="https://github.com/matrix-org/synapse/pull/2462" data-error-text="Failed to load issue title" data-id="259840408" data-permission-text="Issue title is private" data-url="https://github.com/matrix-org/synapse/issues/2462">#2462</a>)</li>
<li>Fix regression in performance of syncs (PR <a class="issue-link js-issue-link" title="Refactor to speed up incremental syncs" href="https://github.com/matrix-org/synapse/pull/2470" data-error-text="Failed to load issue title" data-id="260340514" data-permission-text="Issue title is private">#2470</a>)</li>
</ul>