This repository has been archived by the owner on Apr 26, 2024. It is now read-only.
v1.41.0
erikjohnston
released this
24 Aug 16:04
·
4226 commits
to develop
since this release
Synapse 1.41.0 (2021-08-24)
This release adds support for Debian 12 (Bookworm), but removes support for Ubuntu 20.10 (Groovy Gorilla), which reached End of Life last month.
Note that when using workers the /_synapse/admin/v1/users/{userId}/media
must now be handled by media workers. See the upgrade notes for more information.
Features
- Enable room capabilities (MSC3244) by default and set room version 8 as the preferred room version when creating restricted rooms. (#10571)
Synapse 1.41.0rc1 (2021-08-18)
Features
- Add
get_userinfo_by_id
method to ModuleApi. (#9581) - Initial local support for MSC3266, Room Summary over the unstable
/rooms/{roomIdOrAlias}/summary
API. (#10394) - Experimental support for MSC3288, sending
room_type
to the identity server for 3pid invites over the/store-invite
API. (#10435) - Add support for sending federation requests through a proxy. Contributed by @Bubu and @dklimpel. See the upgrade notes for more information. (#10596). (#10475)
- Add support for "marker" events which makes historical events discoverable for servers that already have all of the scrollback history (part of MSC2716). (#10498)
- Add a configuration setting for the time a
/sync
response is cached for. (#10513) - The default logging handler for new installations is now
PeriodicallyFlushingMemoryHandler
, a buffered logging handler which periodically flushes itself. (#10518) - Add support for new redaction rules for historical events specified in MSC2716. (#10538)
- Add a setting to disable TLS when sending email. (#10546)
- Add pagination to the spaces summary based on updates to MSC2946. (#10549, #10560, #10569, #10574, #10575, #10579, #10583)
- Admin API to delete several media for a specific user. Contributed by @dklimpel. (#10558, #10628)
- Add support for routing
/createRoom
to workers. (#10564) - Update the Synapse Grafana dashboard. (#10570)
- Add an admin API (
GET /_synapse/admin/username_available
) to check if a username is available (regardless of registration settings). (#10578) - Allow editing a user's
external_ids
via the "Edit User" admin API. Contributed by @dklimpel. (#10598) - The Synapse manhole no longer needs coroutines to be wrapped in
defer.ensureDeferred
. (#10602) - Add option to allow modules to run periodic tasks on all instances, rather than just the one configured to run background tasks. (#10638)
Bugfixes
- Add some clarification to the sample config file. Contributed by @Kentokamoto. (#10129)
- Fix a long-standing bug where protocols which are not implemented by any appservices were incorrectly returned via
GET /_matrix/client/r0/thirdparty/protocols
. (#10532) - Fix exceptions in logs when failing to get remote room list. (#10541)
- Fix longstanding bug which caused the user's presence "status message" to be reset when the user went offline. Contributed by @dklimpel. (#10550)
- Allow public rooms to be previewed in the spaces summary APIs from MSC2946. (#10580)
- Fix a bug introduced in v1.37.1 where an error could occur in the asynchronous processing of PDUs when the queue was empty. (#10592)
- Fix errors on /sync when read receipt data is a string. Only affects homeservers with the experimental flag for MSC2285 enabled. Contributed by @SimonBrandner. (#10606)
- Additional validation for the spaces summary API to avoid errors like
ValueError: Stop argument for islice() must be None or an integer
. The missing validation has existed since v1.31.0. (#10611) - Revert behaviour introduced in v1.38.0 that strips
org.matrix.msc2732.device_unused_fallback_key_types
from/sync
when its value is empty. This field should instead always be present according to MSC2732. (#10623)
Improved Documentation
- Add documentation for configuring a forward proxy. (#10443)
- Updated the reverse proxy documentation to highlight the homserver configuration that is needed to make Synapse aware that is is intentionally reverse proxied. (#10551)
- Update CONTRIBUTING.md to fix index links and the instructions for SyTest in docker. (#10599)
Deprecations and Removals
- No longer build
.deb
packages for Ubuntu 20.10 Groovy Gorilla, which has now EOLed. (#10588) - The
template_dir
configuration settings in thesso
,account_validity
andemail
sections of the configuration file are now deprecated in favour of the globaltemplates.custom_template_directory
setting. See the upgrade notes for more information. (#10596)
Internal Changes
- Improve event caching mechanism to avoid having multiple copies of an event in memory at a time. (#10119)
- Reduce errors in PostgreSQL logs due to concurrent serialization errors. (#10504)
- Include room ID in ignored EDU log messages. Contributed by @ilmari. (#10507)
- Add pagination to the spaces summary based on updates to MSC2946. (#10527, #10530)
- Fix CI to not break when run against branches rather than pull requests. (#10529)
- Mark all events stemming from the MSC2716
/batch_send
endpoint as historical. (#10537) - Clean up some of the federation event authentication code for clarity. (#10539, #10591)
- Convert
Transaction
andEdu
objects to attrs. (#10542) - Update
/batch_send
endpoint to only returnstate_events
created by thestate_events_from_before
passed in. (#10552) - Update contributing.md to warn against rebasing an open PR. (#10563)
- Remove the unused public rooms replication stream. (#10565)
- Clarify error message when failing to join a restricted room. (#10572)
- Remove references to BuildKite in favour of GitHub Actions. (#10573)
- Move
/batch_send
endpoint defined by MSC2716 to the/v2_alpha
directory. (#10576) - Allow multiple custom directories in
read_templates
. (#10587) - Re-organize the
synapse.federation.transport.server
module to create smaller files. (#10590) - Flatten the
synapse.rest.client
package by moving the contents ofv1
andv2_alpha
into the parent. (#10600) - Build Debian packages for Debian 12 (Bookworm). (#10612)
- Fix up a couple of links to the database schema documentation. (#10620)
- Fix a broken link to the upgrade notes. (#10631)