Folks, Synapse 0.33.5.1 is here.
0.33.5.1 is an interesting release. On the one hand it contains the usual bug fixes and performance improvements of a point release, but it also our first versioned release where monolith installs can be run under Python 3.5 and 3.6! Python 3 support is very much in beta, so please be cautious but if you would like to try running under a py3 environment we'd love to get your feedback.
We've been running it ourselves for the past few weeks, and feel pretty good about it, not least the 2-3x improvement in RAM usage.
Currently the only way to run under python 3 is to download via github, there is no deb support as yet, though this will come as soon as we are confident to recommend python 3 as the default version.
We'll be blogging about our porting project in more detail in the future, so watch this space - exciting times!
As ever, you can get the new update here or any of the sources mentioned at https://github.com/matrix-org/synapse. Note, for the first time, Synapse is now available from PyPI, pick it up here.
Synapse 0.33.5.1
Internal Changes
- Fix incompatibility with older Twisted version in tests. Thanks @OlegGirko! (#3940)
Synapse 0.33.5
Features
- Python 3.5 and 3.6 support is now in beta. (#3576)
- Implement
event_format
filter param in/sync
(#3790) - Add synapse_admin_mau:registered_reserved_users metric to expose number of real reaserved users (#3846)
Bugfixes
- Remove connection ID for replication prometheus metrics, as it creates a large number of new series. (#3788)
- guest users should not be part of mau total (#3800)
- Bump dependency on pyopenssl 16.x, to avoid incompatibility with recent Twisted. (#3804)
- Fix existing room tags not coming down sync when joining a room (#3810)
- Fix jwt import check (#3824)
- fix VOIP crashes under Python 3 (#3821) (#3835)
- Fix manhole so that it works with latest openssh clients (#3841)
- Fix outbound requests occasionally wedging, which can result in federation breaking between servers. (#3845)
- Show heroes if room name/canonical alias has been deleted (#3851)
- Fix handling of redacted events from federation (#3859)
- (#3874)
- Mitigate outbound federation randomly becoming wedged (#3875)
Internal Changes
- CircleCI tests now run on the potential merge of a PR. (#3704)
- http/ is now ported to Python 3. (#3771)
- Improve human readable error messages for threepid registration/account update (#3789)
- Make /sync slightly faster by avoiding needless copies (#3795)
- handlers/ is now ported to Python 3. (#3803)
- Limit the number of PDUs/EDUs per federation transaction (#3805)
- Only start postgres instance for postgres tests on Travis CI (#3806)
- tests/ is now ported to Python 3. (#3808)
- crypto/ is now ported to Python 3. (#3822)
- rest/ is now ported to Python 3. (#3823)
- add some logging for the keyring queue (#3826)
- speed up lazy loading by 2-3x (#3827)
- Improved Dockerfile to remove build requirements after building reducing the image size. (#3834)
- Disable lazy loading for incremental syncs for now (#3840)
- federation/ is now ported to Python 3. (#3847)
- Log when we retry outbound requests (#3853)
- Removed some excess logging messages. (#3855)
- Speed up purge history for rooms that have been previously purged (#3856)
- Refactor some HTTP timeout code. (#3857)
- Fix running merged builds on CircleCI (#3858)
- Fix typo in replication stream exception. (#3860)
- Add in flight real time metrics for Measure blocks (#3871)
- Disable buffering and automatic retrying in treq requests to prevent timeouts. (#3872)
- mention jemalloc in the README (#3877)
- Remove unmaintained "nuke-room-from-db.sh" script (#3888)
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