1.49.0rc1

This commit is contained in:
Sean Quah 2021-12-07 13:56:09 +00:00
parent 088d748f2c
commit 966b5d0fa0
65 changed files with 87 additions and 63 deletions

View file

@ -1,3 +1,83 @@
Synapse 1.49.0rc1 (2021-12-07)
==============================
Features
--------
- Add [MSC3030](https://github.com/matrix-org/matrix-doc/pull/3030) experimental client and federation API endpoints to get the closest event to a given timestamp. ([\#9445](https://github.com/matrix-org/synapse/issues/9445))
- When returning relation events from the `/relations` API, bundle any relations of those relations into the result, per updates to [MSC2675](https://github.com/matrix-org/matrix-doc/pull/2675). ([\#11284](https://github.com/matrix-org/synapse/issues/11284))
- Add plugin support for controlling database background updates. ([\#11306](https://github.com/matrix-org/synapse/issues/11306), [\#11475](https://github.com/matrix-org/synapse/issues/11475), [\#11479](https://github.com/matrix-org/synapse/issues/11479))
- Support the stable API endpoints for [MSC2946](https://github.com/matrix-org/matrix-doc/pull/2946): the room `/hierarchy` endpoint. ([\#11329](https://github.com/matrix-org/synapse/issues/11329))
- Add admin API to get some information about federation status with remote servers. ([\#11407](https://github.com/matrix-org/synapse/issues/11407))
- Support expiry of refresh tokens and expiry of the overall session when refresh tokens are in use. ([\#11425](https://github.com/matrix-org/synapse/issues/11425))
- Stabilise support for [MSC2918](https://github.com/matrix-org/matrix-doc/blob/main/proposals/2918-refreshtokens.md#msc2918-refresh-tokens) refresh tokens as they have now been merged into the Matrix specification. ([\#11435](https://github.com/matrix-org/synapse/issues/11435), [\#11522](https://github.com/matrix-org/synapse/issues/11522))
- Support configuring the lifetime of non-refreshable access tokens separately to refreshable access tokens. ([\#11445](https://github.com/matrix-org/synapse/issues/11445))
- Expose synapse_homeserver and synapse_worker commands as entry points to run Synapse's main process and worker processes, respectively. Contributed by @Ma27. ([\#11449](https://github.com/matrix-org/synapse/issues/11449))
- `synctl stop` will now wait for Synapse to exit before returning. ([\#11459](https://github.com/matrix-org/synapse/issues/11459), [\#11490](https://github.com/matrix-org/synapse/issues/11490))
- Extend the "delete room" admin api to work correctly on rooms which have previously been partially deleted. ([\#11523](https://github.com/matrix-org/synapse/issues/11523))
Bugfixes
--------
- Fix using MSC2716 batch sending in combination with event persistence workers. Contributed by @tulir at Beeper. ([\#11220](https://github.com/matrix-org/synapse/issues/11220))
- Fix a long-standing bug where all requests that read events from the database could get stuck as a result of losing the database connection, for real this time. Also fix a race condition introduced in the previous insufficient fix in 1.47.0. ([\#11376](https://github.com/matrix-org/synapse/issues/11376))
- The `/send_join` response now includes the stable `event` field instead of the unstable field from [MSC3083](https://github.com/matrix-org/matrix-doc/pull/3083). ([\#11413](https://github.com/matrix-org/synapse/issues/11413))
- Fix a bug introduced in 1.47.0 where `send_join` could fail due to an outdated `ijson` version. ([\#11439](https://github.com/matrix-org/synapse/issues/11439), [\#11441](https://github.com/matrix-org/synapse/issues/11441))
- Fix a bug introduced in Synapse 1.36 which could cause problems fetching event-signing keys from trusted key servers. ([\#11440](https://github.com/matrix-org/synapse/issues/11440))
- Fix a bug introduced in 1.47.1 where the media repository would fail to work if the media store path contained any symbolic links. ([\#11446](https://github.com/matrix-org/synapse/issues/11446))
- Add support for the `/_matrix/client/v3/login/sso/redirect/{idpId}` API from Matrix v1.1. This endpoint was overlooked when support for v3 endpoints was added in v1.48.0rc1. ([\#11451](https://github.com/matrix-org/synapse/issues/11451))
- Fix an `LruCache` corruption bug, introduced in 1.38.0, that would cause certain requests to fail until the next Synapse restart. ([\#11454](https://github.com/matrix-org/synapse/issues/11454))
- Include bundled relation aggregations during a limited `/sync` request, per [MSC2675](https://github.com/matrix-org/matrix-doc/pull/2675). ([\#11478](https://github.com/matrix-org/synapse/issues/11478))
- Fix a long-standing bug where invites from ignored users were included in incremental syncs. ([\#11511](https://github.com/matrix-org/synapse/issues/11511))
- Fix a regression in Synapse 1.48.0 where presence workers would not clear their presence updates over replication on shutdown. ([\#11518](https://github.com/matrix-org/synapse/issues/11518))
- Fix a regression in Synapse 1.48.0 where the module API's `looping_background_call` method would spam errors to the logs when given a non-async function. ([\#11524](https://github.com/matrix-org/synapse/issues/11524))
Updates to the Docker image
---------------------------
- Update `Dockerfile-workers` to healthcheck all workers in container. ([\#11429](https://github.com/matrix-org/synapse/issues/11429))
Improved Documentation
----------------------
- Update the media repository documentation. ([\#11415](https://github.com/matrix-org/synapse/issues/11415))
- Update section about backward extremities in the room DAG concepts doc to correct the misconception about backward extremities indicating whether we have fetched an events' `prev_events`. ([\#11469](https://github.com/matrix-org/synapse/issues/11469))
Internal Changes
----------------
- Improve type annotations in `synapse.module_api`. ([\#11029](https://github.com/matrix-org/synapse/issues/11029))
- Add `Final` annotation to string constants in `synapse.api.constants` so that they get typed as `Literal`s. ([\#11356](https://github.com/matrix-org/synapse/issues/11356))
- Add wiki pages to documentation website. ([\#11402](https://github.com/matrix-org/synapse/issues/11402))
- Improve internal types in push code. ([\#11409](https://github.com/matrix-org/synapse/issues/11409))
- Add type hints to storage classes. ([\#11411](https://github.com/matrix-org/synapse/issues/11411))
- Add a check to ensure that users cannot start the Synapse master process when `worker_app` is set. ([\#11416](https://github.com/matrix-org/synapse/issues/11416))
- Refactor `backfilled` into specific behavior function arguments (`_persist_events_and_state_updates` and downstream calls). ([\#11417](https://github.com/matrix-org/synapse/issues/11417))
- Add type annotations to some of the configuration surrounding refresh tokens. ([\#11428](https://github.com/matrix-org/synapse/issues/11428))
- Update [MSC2918 refresh token](https://github.com/matrix-org/matrix-doc/blob/main/proposals/2918-refreshtokens.md#msc2918-refresh-tokens) support to confirm with the latest revision: accept the `refresh_tokens` parameter in the request body rather than in the URL parameters. ([\#11430](https://github.com/matrix-org/synapse/issues/11430))
- Convert status codes to `HTTPStatus` in `synapse.rest.admin`. ([\#11452](https://github.com/matrix-org/synapse/issues/11452), [\#11455](https://github.com/matrix-org/synapse/issues/11455))
- Improve type hints for `LruCache`. ([\#11453](https://github.com/matrix-org/synapse/issues/11453))
- Fix a bug introduced in 1.47.0 where `send_join` could fail due to an outdated `ijson` version. ([\#11460](https://github.com/matrix-org/synapse/issues/11460))
- Remove unnecessary `json.dumps` from `tests.rest.admin`. ([\#11461](https://github.com/matrix-org/synapse/issues/11461))
- Add missing type hints to `synapse.config` module. ([\#11465](https://github.com/matrix-org/synapse/issues/11465))
- Update and clean up recently ported documentation pages. ([\#11466](https://github.com/matrix-org/synapse/issues/11466))
- Add a note about postgres memory management and hugepages to postgres doc. ([\#11467](https://github.com/matrix-org/synapse/issues/11467))
- Refactor `get_version_string` to fix-up types and duplicated code. ([\#11468](https://github.com/matrix-org/synapse/issues/11468))
- Save the OpenID Connect session ID on login. ([\#11482](https://github.com/matrix-org/synapse/issues/11482))
- Add missing type hints to `synapse.federation`. ([\#11483](https://github.com/matrix-org/synapse/issues/11483))
- Extend the `scripts-dev/sign_json` script to support signing events. ([\#11486](https://github.com/matrix-org/synapse/issues/11486))
- Add type annotations to `tests.storage.test_appservice`. ([\#11488](https://github.com/matrix-org/synapse/issues/11488), [\#11492](https://github.com/matrix-org/synapse/issues/11492))
- Clean up `tests.storage.test_main` to remove use of legacy code. ([\#11493](https://github.com/matrix-org/synapse/issues/11493))
- Refactor various parts of the `/sync` handler. ([\#11494](https://github.com/matrix-org/synapse/issues/11494), [\#11515](https://github.com/matrix-org/synapse/issues/11515))
- Clean up `tests.test_visibility` to remove legacy code. ([\#11495](https://github.com/matrix-org/synapse/issues/11495))
- Preparation for database schema simplifications: disambiguate queries on `state_key`. ([\#11497](https://github.com/matrix-org/synapse/issues/11497))
- Add type hints to `synapse/tests/rest/admin`. ([\#11501](https://github.com/matrix-org/synapse/issues/11501))
UNRELEASED
==========

View file

@ -1 +0,0 @@
Improve type annotations in `synapse.module_api`.

View file

@ -1 +0,0 @@
Fix using MSC2716 batch sending in combination with event persistence workers. Contributed by @tulir at Beeper.

View file

@ -1 +0,0 @@
When returning relation events from the `/relations` API, bundle any relations of those relations into the result, per updates to [MSC2675](https://github.com/matrix-org/matrix-doc/pull/2675).

View file

@ -1 +0,0 @@
Add plugin support for controlling database background updates.

View file

@ -1 +0,0 @@
Support the stable API endpoints for [MSC2946](https://github.com/matrix-org/matrix-doc/pull/2946): the room `/hierarchy` endpoint.

View file

@ -1 +0,0 @@
Add `Final` annotation to string constants in `synapse.api.constants` so that they get typed as `Literal`s.

View file

@ -1 +0,0 @@
Fix a long-standing bug where all requests that read events from the database could get stuck as a result of losing the database connection, for real this time. Also fix a race condition introduced in the previous insufficient fix in 1.47.0.

View file

@ -1 +0,0 @@
Add wiki pages to documentation website.

View file

@ -1 +0,0 @@
Add admin API to get some information about federation status with remote servers.

View file

@ -1 +0,0 @@
Improve internal types in push code.

View file

@ -1 +0,0 @@
Add type hints to storage classes.

View file

@ -1 +0,0 @@
The `/send_join` response now includes the stable `event` field instead of the unstable field from [MSC3083](https://github.com/matrix-org/matrix-doc/pull/3083).

View file

@ -1 +0,0 @@
Update the media repository documentation.

View file

@ -1 +0,0 @@
Add a check to ensure that users cannot start the Synapse master process when `worker_app` is set.

View file

@ -1 +0,0 @@
Refactor `backfilled` into specific behavior function arguments (`_persist_events_and_state_updates` and downstream calls).

View file

@ -1 +0,0 @@
Support expiry of refresh tokens and expiry of the overall session when refresh tokens are in use.

View file

@ -1 +0,0 @@
Add type annotations to some of the configuration surrounding refresh tokens.

View file

@ -1 +0,0 @@
Update `Dockerfile-workers` to healthcheck all workers in container.

View file

@ -1 +0,0 @@
Update [MSC2918 refresh token](https://github.com/matrix-org/matrix-doc/blob/main/proposals/2918-refreshtokens.md#msc2918-refresh-tokens) support to confirm with the latest revision: accept the `refresh_tokens` parameter in the request body rather than in the URL parameters.

View file

@ -1 +0,0 @@
Stabilise support for [MSC2918](https://github.com/matrix-org/matrix-doc/blob/main/proposals/2918-refreshtokens.md#msc2918-refresh-tokens) refresh tokens as they have now been merged into the Matrix specification.

View file

@ -1 +0,0 @@
Fix a bug introduced in 1.47.0 where `send_join` could fail due to an outdated `ijson` version.

View file

@ -1 +0,0 @@
Fix a bug introduced in Synapse 1.36 which could cause problems fetching event-signing keys from trusted key servers.

View file

@ -1 +0,0 @@
Fix a bug introduced in 1.47.0 where `send_join` could fail due to an outdated `ijson` version.

View file

@ -1 +0,0 @@
Support configuring the lifetime of non-refreshable access tokens separately to refreshable access tokens.

View file

@ -1 +0,0 @@
Fix a bug introduced in 1.47.1 where the media repository would fail to work if the media store path contained any symbolic links.

View file

@ -1 +0,0 @@
Expose synapse_homeserver and synapse_worker commands as entry points to run Synapse's main process and worker processes, respectively. Contributed by @Ma27.

View file

@ -1 +0,0 @@
Add support for the `/_matrix/client/v3/login/sso/redirect/{idpId}` API from Matrix v1.1. This endpoint was overlooked when support for v3 endpoints was added in v1.48.0rc1.

View file

@ -1 +0,0 @@
Convert status codes to `HTTPStatus` in `synapse.rest.admin`.

View file

@ -1 +0,0 @@
Improve type hints for `LruCache`.

View file

@ -1 +0,0 @@
Fix an `LruCache` corruption bug, introduced in 1.38.0, that would cause certain requests to fail until the next Synapse restart.

View file

@ -1 +0,0 @@
Convert status codes to `HTTPStatus` in `synapse.rest.admin`.

View file

@ -1 +0,0 @@
`synctl stop` will now wait for Synapse to exit before returning.

View file

@ -1 +0,0 @@
Fix a bug introduced in 1.47.0 where `send_join` could fail due to an outdated `ijson` version.

View file

@ -1 +0,0 @@
Remove unnecessary `json.dumps` from `tests.rest.admin`.

View file

@ -1 +0,0 @@
Add missing type hints to `synapse.config` module.

View file

@ -1 +0,0 @@
Update and clean up recently ported documentation pages.

View file

@ -1 +0,0 @@
Add a note about postgres memory management and hugepages to postgres doc.

View file

@ -1 +0,0 @@
Refactor `get_version_string` to fix-up types and duplicated code.

View file

@ -1 +0,0 @@
Update section about backward extremities in the room DAG concepts doc to correct the misconception about backward extremities indicating whether we have fetched an events' `prev_events`.

View file

@ -1 +0,0 @@
Add plugin support for controlling database background updates.

View file

@ -1 +0,0 @@
Include bundled relation aggregations during a limited `/sync` request, per [MSC2675](https://github.com/matrix-org/matrix-doc/pull/2675).

View file

@ -1 +0,0 @@
Add plugin support for controlling database background updates.

View file

@ -1 +0,0 @@
Save the OpenID Connect session ID on login.

View file

@ -1 +0,0 @@
Add missing type hints to `synapse.federation`.

View file

@ -1 +0,0 @@
Extend the `scripts-dev/sign_json` script to support signing events.

View file

@ -1 +0,0 @@
Add type annotations to `tests.storage.test_appservice`.

View file

@ -1 +0,0 @@
`synctl stop` will now wait for Synapse to exit before returning.

View file

@ -1 +0,0 @@
Add type annotations to `tests.storage.test_appservice`.

View file

@ -1 +0,0 @@
Clean up `tests.storage.test_main` to remove use of legacy code.

View file

@ -1 +0,0 @@
Refactor various parts of the `/sync` handler.

View file

@ -1 +0,0 @@
Clean up `tests.test_visibility` to remove legacy code.

View file

@ -1 +0,0 @@
Preparation for database schema simplifications: disambiguate queries on `state_key`.

View file

@ -1 +0,0 @@
Add type hints to `synapse/tests/rest/admin`.

View file

@ -1 +0,0 @@
Move `glob_to_regex` and `re_word_boundary` to `matrix-python-common`.

View file

@ -1 +0,0 @@
Fix a long-standing bug where invites from ignored users were included in incremental syncs.

View file

@ -1 +0,0 @@
Refactor various parts of the `/sync` handler.

View file

@ -1 +0,0 @@
Fix a regression in Synapse 1.48.0 where presence workers would not clear their presence updates over replication on shutdown.

View file

@ -1 +0,0 @@
Stabilise support for [MSC2918](https://github.com/matrix-org/matrix-doc/blob/main/proposals/2918-refreshtokens.md#msc2918-refresh-tokens) refresh tokens as they have now been merged into the Matrix specification.

View file

@ -1 +0,0 @@
Extend the "delete room" admin api to work correctly on rooms which have previously been partially deleted.

View file

@ -1 +0,0 @@
Fix a regression in Synapse 1.48.0 where the module API's `looping_background_call` method would spam errors to the logs when given a non-async function.

View file

@ -1 +0,0 @@
Temporarily revert usage of `matrix-python-common`.

View file

@ -1 +0,0 @@
Add [MSC3030](https://github.com/matrix-org/matrix-doc/pull/3030) experimental client and federation API endpoints to get the closest event to a given timestamp.

6
debian/changelog vendored
View file

@ -1,3 +1,9 @@
matrix-synapse-py3 (1.49.0~rc1) stable; urgency=medium
* New synapse release 1.49.0~rc1.
-- Synapse Packaging team <packages@matrix.org> Tue, 07 Dec 2021 13:52:21 +0000
matrix-synapse-py3 (1.48.0) stable; urgency=medium
* New synapse release 1.48.0.

View file

@ -47,7 +47,7 @@ try:
except ImportError:
pass
__version__ = "1.48.0"
__version__ = "1.49.0rc1"
if bool(os.environ.get("SYNAPSE_TEST_PATCH_LOG_CONTEXTS", False)):
# We import here so that we don't have to install a bunch of deps when