This repository has been archived by the owner on Apr 26, 2024. It is now read-only.
v1.27.0rc1
Pre-release
Pre-release
erikjohnston
released this
02 Feb 14:06
·
5136 commits
to develop
since this release
Synapse 1.27.0rc1 (2021-02-02)
Note that this release includes a change in Synapse to use Redis as a cache ─ as well as a pub/sub mechanism ─ if Redis support is enabled. No action is needed by server administrators, and we do not expect resource usage of the Redis instance to change dramatically.
This release also changes the callback URI for OpenID Connect (OIDC) identity providers. If your server is configured to use single sign-on via an OIDC/OAuth2 IdP, you may need to make configuration changes. Please review UPGRADE.rst for more details on these changes.
This release also changes escaping of variables in the HTML templates for SSO or email notifications. If you have customised these templates, please review UPGRADE.rst for more details on these changes.
Features
- Add an admin API for getting and deleting forward extremities for a room. (#9062)
- Add an admin API for retrieving the current room state of a room. (#9168)
- Add experimental support for allowing clients to pick an SSO Identity Provider (MSC2858). (#9183, #9242)
- Add an admin API endpoint for shadow-banning users. (#9209)
- Add ratelimits to the 3PID
/requestToken
APIs. (#9238) - Add support to the OpenID Connect integration for adding the user's email address. (#9245)
- Add ratelimits to invites in rooms and to specific users. (#9258)
- Improve the user experience of setting up an account via single-sign on. (#9262, #9272, #9275, #9276, #9277, #9286, #9287)
- Add phone home stats for encrypted messages. (#9283)
- Update the redirect URI for OIDC authentication. (#9288)
Bugfixes
- Fix spurious errors in logs when deleting a non-existant pusher. (#9121)
- Fix a long-standing bug where Synapse would return a 500 error when a thumbnail did not exist (and auto-generation of thumbnails was not enabled). (#9163)
- Fix a long-standing bug where an internal server error was raised when attempting to preview an HTML document in an unknown character encoding. (#9164)
- Fix a long-standing bug where invalid data could cause errors when calculating the presentable room name for push. (#9165)
- Fix bug where we sometimes didn't detect that Redis connections had died, causing workers to not see new data. (#9218)
- Fix a bug where
None
was passed to Synapse modules instead of an empty dictionary if an empty moduleconfig
block was provided in the homeserver config. (#9229) - Fix a bug in the
make_room_admin
admin API where it failed if the admin with the greatest power level was not in the room. Contributed by Pankaj Yadav. (#9235) - Prevent password hashes from getting dropped if a client failed threepid validation during a User Interactive Auth stage. Removes a workaround for an ancient bug in Riot Web <v0.7.4. (#9265)
- Fix single-sign-on when the endpoints are routed to synapse workers. (#9271)
Improved Documentation
- Add docs for using Gitea as OpenID provider. (#9134)
- Add link to Matrix VoIP tester for turn-howto. (#9135)
- Add notes on integrating with Facebook for SSO login. (#9244)
Deprecations and Removals
- The
service_url
parameter incas_config
is deprecated in favor ofpublic_baseurl
. (#9199) - Add new endpoint
/_synapse/client/saml2
for SAML2 authentication callbacks, and deprecate the old endpoint/_matrix/saml2
. (#9289)
Internal Changes
- Add tests to
test_user.UsersListTestCase
for List Users Admin API. (#9045) - Various improvements to the federation client. (#9129)
- Speed up chain cover calculation when persisting a batch of state events at once. (#9176)
- Add a
long_description_type
to the package metadata. (#9180) - Speed up batch insertion when using PostgreSQL. (#9181, #9188)
- Emit an error at startup if different Identity Providers are configured with the same
idp_id
. (#9184) - Improve performance of concurrent use of
StreamIDGenerators
. (#9190) - Add some missing source directories to the automatic linting script. (#9191)
- Precompute joined hosts and store in Redis. (#9198, #9227)
- Clean-up template loading code. (#9200)
- Fix the Python 3.5 old dependencies build. (#9217)
- Update
isort
to v5.7.0 to bypass a bug where it would disagree withblack
about formatting. (#9222) - Add type hints to handlers code. (#9223, #9232)
- Fix Debian package building on Ubuntu 16.04 LTS (Xenial). (#9254)
- Minor performance improvement during TLS handshake. (#9255)
- Refactor the generation of summary text for email notifications. (#9260)
- Restore PyPy compatibility by not calling CPython-specific GC methods when under PyPy. (#9270)