Skip to content

Commit c7d5eda

Browse files
committed
Merge tag 'v1.54.0' into beeper-master
Synapse 1.54.0 (2022-03-08) =========================== Please note that this will be the last release of Synapse that is compatible with Mjolnir 1.3.1 and earlier. Administrators of servers which have the Mjolnir module installed are advised to upgrade Mjolnir to version 1.3.2 or later. Bugfixes -------- - Fix a bug introduced in Synapse 1.54.0rc1 preventing the new module callbacks introduced in this release from being registered by modules. ([\matrix-org#12141](matrix-org#12141)) - Fix a bug introduced in Synapse 1.54.0rc1 where runtime dependency version checks would mistakenly check development dependencies if they were present and would not accept pre-release versions of dependencies. ([\matrix-org#12129](matrix-org#12129), [\matrix-org#12177](matrix-org#12177)) Internal Changes ---------------- - Update release script to insert the previous version when writing "No significant changes" line in the changelog. ([\matrix-org#12127](matrix-org#12127)) - Relax the version guard for "packaging" added in [\matrix-org#12088](matrix-org#12088). ([\matrix-org#12166](matrix-org#12166)) Synapse 1.54.0rc1 (2022-03-02) ============================== Features -------- - Add support for [MSC3202](matrix-org/matrix-spec-proposals#3202): sending one-time key counts and fallback key usage states to Application Services. ([\matrix-org#11617](matrix-org#11617)) - Improve the generated URL previews for some web pages. Contributed by @AndrewRyanChama. ([\matrix-org#11985](matrix-org#11985)) - Track cache invalidations in Prometheus metrics, as already happens for cache eviction based on size or time. ([\matrix-org#12000](matrix-org#12000)) - Implement experimental support for [MSC3720](matrix-org/matrix-spec-proposals#3720) (account status endpoints). ([\matrix-org#12001](matrix-org#12001), [\matrix-org#12067](matrix-org#12067)) - Enable modules to set a custom display name when registering a user. ([\matrix-org#12009](matrix-org#12009)) - Advertise Matrix 1.1 and 1.2 support on `/_matrix/client/versions`. ([\matrix-org#12020](matrix-org#12020), ([\matrix-org#12022](matrix-org#12022)) - Support only the stable identifier for [MSC3069](matrix-org/matrix-spec-proposals#3069 `is_guest` on `/_matrix/client/v3/account/whoami`. ([\matrix-org#12021](matrix-org#12021)) - Use room version 9 as the default room version (per [MSC3589](matrix-org/matrix-spec-proposals#3589)). ([\matrix-org#12058](matrix-org#12058)) - Add module callbacks to react to user deactivation status changes (i.e. deactivations and reactivations) and profile updates. ([\matrix-org#12062](matrix-org#12062)) Bugfixes -------- - Fix a bug introduced in Synapse 1.48.0 where an edit of the latest event in a thread would not be properly applied to the thread summary. ([\matrix-org#11992](matrix-org#11992)) - Fix long-standing bug where the `get_rooms_for_user` cache was not correctly invalidated for remote users when the server left a room. ([\matrix-org#11999](matrix-org#11999)) - Fix a 500 error with Postgres when looking backwards with the [MSC3030](matrix-org/matrix-spec-proposals#3030) `/timestamp_to_event?dir=b` endpoint. ([\matrix-org#12024](matrix-org#12024)) - Properly fix a long-standing bug where wrong data could be inserted into the `event_search` table when using SQLite. This could block running `synapse_port_db` with an `argument of type 'int' is not iterable` error. This bug was partially fixed by a change in Synapse 1.44.0. ([\matrix-org#12037](matrix-org#12037)) - Fix slow performance of `/logout` in some cases where refresh tokens are in use. The slowness existed since the initial implementation of refresh tokens in version 1.38.0. ([\matrix-org#12056](matrix-org#12056)) - Fix a long-standing bug where Synapse would make additional failing requests over federation for missing data. ([\matrix-org#12077](matrix-org#12077)) - Fix occasional `Unhandled error in Deferred` error message. ([\matrix-org#12089](matrix-org#12089)) - Fix a bug introduced in Synapse 1.51.0 where incoming federation transactions containing at least one EDU would be dropped if debug logging was enabled for `synapse.8631_debug`. ([\matrix-org#12098](matrix-org#12098)) - Fix a long-standing bug which could cause push notifications to malfunction if `use_frozen_dicts` was set in the configuration. ([\matrix-org#12100](matrix-org#12100)) - Fix an extremely rare, long-standing bug in `ReadWriteLock` that would cause an error when a newly unblocked writer completes instantly. ([\matrix-org#12105](matrix-org#12105)) - Make a `POST` to `/rooms/<room_id>/receipt/m.read/<event_id>` only trigger a push notification if the count of unread messages is different to the one in the last successfully sent push. This reduces server load and load on the receiving device. ([\matrix-org#11835](matrix-org#11835)) Updates to the Docker image --------------------------- - The Docker image no longer automatically creates a temporary volume at `/data`. This is not expected to affect normal usage. ([\matrix-org#11997](matrix-org#11997)) - Use Python 3.9 in Docker images by default. ([\matrix-org#12112](matrix-org#12112)) Improved Documentation ---------------------- - Document support for the `to_device`, `account_data`, `receipts`, and `presence` stream writers for workers. ([\matrix-org#11599](matrix-org#11599)) - Explain the meaning of spam checker callbacks' return values. ([\matrix-org#12003](matrix-org#12003)) - Clarify information about external Identity Provider IDs. ([\matrix-org#12004](matrix-org#12004)) Deprecations and Removals ------------------------- - Deprecate using `synctl` with the config option `synctl_cache_factor` and print a warning if a user still uses this option. ([\matrix-org#11865](matrix-org#11865)) - Remove support for the legacy structured logging configuration (please see the the [upgrade notes](https://matrix-org.github.io/synapse/develop/upgrade#legacy-structured-logging-configuration-removal) if you are using `structured: true` in the Synapse configuration). ([\matrix-org#12008](matrix-org#12008)) - Drop support for [MSC3283](matrix-org/matrix-spec-proposals#3283) unstable flags now that the stable flags are supported. ([\matrix-org#12018](matrix-org#12018)) - Remove the unstable `/spaces` endpoint from [MSC2946](matrix-org/matrix-spec-proposals#2946). ([\matrix-org#12073](matrix-org#12073)) Internal Changes ---------------- - Make the `get_room_version` method use `get_room_version_id` to benefit from caching. ([\matrix-org#11808](matrix-org#11808)) - Remove unnecessary condition on knock -> leave auth rule check. ([\matrix-org#11900](matrix-org#11900)) - Add tests for device list changes between local users. ([\matrix-org#11972](matrix-org#11972)) - Optimise calculating `device_list` changes in `/sync`. ([\matrix-org#11974](matrix-org#11974)) - Add missing type hints to storage classes. ([\matrix-org#11984](matrix-org#11984)) - Refactor the search code for improved readability. ([\matrix-org#11991](matrix-org#11991)) - Move common deduplication code down into `_auth_and_persist_outliers`. ([\matrix-org#11994](matrix-org#11994)) - Limit concurrent joins from applications services. ([\matrix-org#11996](matrix-org#11996)) - Preparation for faster-room-join work: when parsing the `send_join` response, get the `m.room.create` event from `state`, not `auth_chain`. ([\matrix-org#12005](matrix-org#12005), [\matrix-org#12039](matrix-org#12039)) - Preparation for faster-room-join work: parse MSC3706 fields in send_join response. ([\matrix-org#12011](matrix-org#12011)) - Preparation for faster-room-join work: persist information on which events and rooms have partial state to the database. ([\matrix-org#12012](matrix-org#12012)) - Preparation for faster-room-join work: Support for calling `/federation/v1/state` on a remote server. ([\matrix-org#12013](matrix-org#12013)) - Configure `tox` to use `venv` rather than `virtualenv`. ([\matrix-org#12015](matrix-org#12015)) - Fix bug in `StateFilter.return_expanded()` and add some tests. ([\matrix-org#12016](matrix-org#12016)) - Use Matrix v1.1 endpoints (`/_matrix/client/v3/auth/...`) in fallback auth HTML forms. ([\matrix-org#12019](matrix-org#12019)) - Update the `olddeps` CI job to use an old version of `markupsafe`. ([\matrix-org#12025](matrix-org#12025)) - Upgrade Mypy to version 0.931. ([\matrix-org#12030](matrix-org#12030)) - Remove legacy `HomeServer.get_datastore()`. ([\matrix-org#12031](matrix-org#12031), [\matrix-org#12070](matrix-org#12070)) - Minor typing fixes. ([\matrix-org#12034](matrix-org#12034), [\matrix-org#12069](matrix-org#12069)) - After joining a room, create a dedicated logcontext to process the queued events. ([\matrix-org#12041](matrix-org#12041)) - Tidy up GitHub Actions config which builds distributions for PyPI. ([\matrix-org#12051](matrix-org#12051)) - Move configuration out of `setup.cfg`. ([\matrix-org#12052](matrix-org#12052), [\matrix-org#12059](matrix-org#12059)) - Fix error message when a worker process fails to talk to another worker process. ([\matrix-org#12060](matrix-org#12060)) - Fix using the `complement.sh` script without specifying a directory or a branch. Contributed by Nico on behalf of Famedly. ([\matrix-org#12063](matrix-org#12063)) - Add type hints to `tests/rest/client`. ([\matrix-org#12066](matrix-org#12066), [\matrix-org#12072](matrix-org#12072), [\matrix-org#12084](matrix-org#12084), [\matrix-org#12094](matrix-org#12094)) - Add some logging to `/sync` to try and track down matrix-org#11916. ([\matrix-org#12068](matrix-org#12068)) - Inspect application dependencies using `importlib.metadata` or its backport. ([\matrix-org#12088](matrix-org#12088)) - Use `assertEqual` instead of the deprecated `assertEquals` in test code. ([\matrix-org#12092](matrix-org#12092)) - Move experimental support for [MSC3440](matrix-org/matrix-spec-proposals#3440) to `/versions`. ([\matrix-org#12099](matrix-org#12099)) - Add `stop_cancellation` utility function to stop `Deferred`s from being cancelled. ([\matrix-org#12106](matrix-org#12106)) - Improve exception handling for concurrent execution. ([\matrix-org#12109](matrix-org#12109)) - Advertise support for Python 3.10 in packaging files. ([\matrix-org#12111](matrix-org#12111)) - Move CI checks out of tox, to facilitate a move to using poetry. ([\matrix-org#12119](matrix-org#12119))
2 parents 323c4ca + b1989ce commit c7d5eda

File tree

362 files changed

+7189
-3822
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

362 files changed

+7189
-3822
lines changed

.ci/scripts/test_old_deps.sh

+3-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,9 @@ export DEBIAN_FRONTEND=noninteractive
88
set -ex
99

1010
apt-get update
11-
apt-get install -y python3 python3-dev python3-pip libxml2-dev libxslt-dev xmlsec1 zlib1g-dev tox libjpeg-dev libwebp-dev
11+
apt-get install -y \
12+
python3 python3-dev python3-pip python3-venv \
13+
libxml2-dev libxslt-dev xmlsec1 zlib1g-dev tox libjpeg-dev libwebp-dev
1214

1315
export LANG="C.UTF-8"
1416

.flake8

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# TODO: incorporate this into pyproject.toml if flake8 supports it in the future.
2+
# See https://github.com/PyCQA/flake8/issues/234
3+
[flake8]
4+
# see https://pycodestyle.readthedocs.io/en/latest/intro.html#error-codes
5+
# for error codes. The ones we ignore are:
6+
# W503: line break before binary operator
7+
# W504: line break after binary operator
8+
# E203: whitespace before ':' (which is contrary to pep8?)
9+
# E731: do not assign a lambda expression, use a def
10+
# E501: Line too long (black enforces this for us)
11+
ignore=W503,W504,E203,E731,E501

.github/workflows/release-artifacts.yml

+2-12
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ on:
77
# of things breaking (but only build one set of debs)
88
pull_request:
99
push:
10-
branches: ["develop"]
10+
branches: ["develop", "release-*"]
1111

1212
# we do the full build on tags.
1313
tags: ["v*"]
@@ -91,17 +91,7 @@ jobs:
9191

9292
build-sdist:
9393
name: "Build pypi distribution files"
94-
runs-on: ubuntu-latest
95-
steps:
96-
- uses: actions/checkout@v2
97-
- uses: actions/setup-python@v2
98-
- run: pip install wheel
99-
- run: |
100-
python setup.py sdist bdist_wheel
101-
- uses: actions/upload-artifact@v2
102-
with:
103-
name: python-dist
104-
path: dist/*
94+
uses: "matrix-org/backend-meta/.github/workflows/packaging.yml@v1"
10595

10696
# if it's a tag, create a release and attach the artifacts to it
10797
attach-assets:

.github/workflows/tests.yml

+10-18
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,19 @@ concurrency:
1010
cancel-in-progress: true
1111

1212
jobs:
13+
check-sampleconfig:
14+
runs-on: ubuntu-latest
15+
steps:
16+
- uses: actions/checkout@v2
17+
- uses: actions/setup-python@v2
18+
- run: pip install -e .
19+
- run: scripts-dev/generate_sample_config --check
20+
1321
lint:
1422
runs-on: ubuntu-latest
1523
strategy:
1624
matrix:
1725
toxenv:
18-
- "check-sampleconfig"
1926
- "check_codestyle"
2027
- "check_isort"
2128
- "mypy"
@@ -43,29 +50,15 @@ jobs:
4350
ref: ${{ github.event.pull_request.head.sha }}
4451
fetch-depth: 0
4552
- uses: actions/setup-python@v2
46-
- run: pip install tox
53+
- run: "pip install 'towncrier>=18.6.0rc1'"
4754
- run: scripts-dev/check-newsfragment
4855
env:
4956
PULL_REQUEST_NUMBER: ${{ github.event.number }}
5057

51-
lint-sdist:
52-
runs-on: ubuntu-latest
53-
steps:
54-
- uses: actions/checkout@v2
55-
- uses: actions/setup-python@v2
56-
with:
57-
python-version: "3.x"
58-
- run: pip install wheel
59-
- run: python setup.py sdist bdist_wheel
60-
- uses: actions/upload-artifact@v2
61-
with:
62-
name: Python Distributions
63-
path: dist/*
64-
6558
# Dummy step to gate other tests on without repeating the whole list
6659
linting-done:
6760
if: ${{ !cancelled() }} # Run this even if prior jobs were skipped
68-
needs: [lint, lint-crlf, lint-newsfile, lint-sdist]
61+
needs: [lint, lint-crlf, lint-newsfile, check-sampleconfig]
6962
runs-on: ubuntu-latest
7063
steps:
7164
- run: "true"
@@ -397,7 +390,6 @@ jobs:
397390
- lint
398391
- lint-crlf
399392
- lint-newsfile
400-
- lint-sdist
401393
- trial
402394
- trial-olddeps
403395
- sytest

CHANGES.md

+121-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,124 @@
1+
Synapse 1.54.0 (2022-03-08)
2+
===========================
3+
4+
Please note that this will be the last release of Synapse that is compatible with Mjolnir 1.3.1 and earlier.
5+
Administrators of servers which have the Mjolnir module installed are advised to upgrade Mjolnir to version 1.3.2 or later.
6+
7+
8+
Bugfixes
9+
--------
10+
11+
- Fix a bug introduced in Synapse 1.54.0rc1 preventing the new module callbacks introduced in this release from being registered by modules. ([\#12141](https://github.com/matrix-org/synapse/issues/12141))
12+
- Fix a bug introduced in Synapse 1.54.0rc1 where runtime dependency version checks would mistakenly check development dependencies if they were present and would not accept pre-release versions of dependencies. ([\#12129](https://github.com/matrix-org/synapse/issues/12129), [\#12177](https://github.com/matrix-org/synapse/issues/12177))
13+
14+
15+
Internal Changes
16+
----------------
17+
18+
- Update release script to insert the previous version when writing "No significant changes" line in the changelog. ([\#12127](https://github.com/matrix-org/synapse/issues/12127))
19+
- Relax the version guard for "packaging" added in [\#12088](https://github.com/matrix-org/synapse/issues/12088). ([\#12166](https://github.com/matrix-org/synapse/issues/12166))
20+
21+
22+
Synapse 1.54.0rc1 (2022-03-02)
23+
==============================
24+
25+
26+
Features
27+
--------
28+
29+
- Add support for [MSC3202](https://github.com/matrix-org/matrix-doc/pull/3202): sending one-time key counts and fallback key usage states to Application Services. ([\#11617](https://github.com/matrix-org/synapse/issues/11617))
30+
- Improve the generated URL previews for some web pages. Contributed by @AndrewRyanChama. ([\#11985](https://github.com/matrix-org/synapse/issues/11985))
31+
- Track cache invalidations in Prometheus metrics, as already happens for cache eviction based on size or time. ([\#12000](https://github.com/matrix-org/synapse/issues/12000))
32+
- Implement experimental support for [MSC3720](https://github.com/matrix-org/matrix-doc/pull/3720) (account status endpoints). ([\#12001](https://github.com/matrix-org/synapse/issues/12001), [\#12067](https://github.com/matrix-org/synapse/issues/12067))
33+
- Enable modules to set a custom display name when registering a user. ([\#12009](https://github.com/matrix-org/synapse/issues/12009))
34+
- Advertise Matrix 1.1 and 1.2 support on `/_matrix/client/versions`. ([\#12020](https://github.com/matrix-org/synapse/issues/12020), ([\#12022](https://github.com/matrix-org/synapse/issues/12022))
35+
- Support only the stable identifier for [MSC3069](https://github.com/matrix-org/matrix-doc/pull/3069)'s `is_guest` on `/_matrix/client/v3/account/whoami`. ([\#12021](https://github.com/matrix-org/synapse/issues/12021))
36+
- Use room version 9 as the default room version (per [MSC3589](https://github.com/matrix-org/matrix-doc/pull/3589)). ([\#12058](https://github.com/matrix-org/synapse/issues/12058))
37+
- Add module callbacks to react to user deactivation status changes (i.e. deactivations and reactivations) and profile updates. ([\#12062](https://github.com/matrix-org/synapse/issues/12062))
38+
39+
40+
Bugfixes
41+
--------
42+
43+
- Fix a bug introduced in Synapse 1.48.0 where an edit of the latest event in a thread would not be properly applied to the thread summary. ([\#11992](https://github.com/matrix-org/synapse/issues/11992))
44+
- Fix long-standing bug where the `get_rooms_for_user` cache was not correctly invalidated for remote users when the server left a room. ([\#11999](https://github.com/matrix-org/synapse/issues/11999))
45+
- Fix a 500 error with Postgres when looking backwards with the [MSC3030](https://github.com/matrix-org/matrix-doc/pull/3030) `/timestamp_to_event?dir=b` endpoint. ([\#12024](https://github.com/matrix-org/synapse/issues/12024))
46+
- Properly fix a long-standing bug where wrong data could be inserted into the `event_search` table when using SQLite. This could block running `synapse_port_db` with an `argument of type 'int' is not iterable` error. This bug was partially fixed by a change in Synapse 1.44.0. ([\#12037](https://github.com/matrix-org/synapse/issues/12037))
47+
- Fix slow performance of `/logout` in some cases where refresh tokens are in use. The slowness existed since the initial implementation of refresh tokens in version 1.38.0. ([\#12056](https://github.com/matrix-org/synapse/issues/12056))
48+
- Fix a long-standing bug where Synapse would make additional failing requests over federation for missing data. ([\#12077](https://github.com/matrix-org/synapse/issues/12077))
49+
- Fix occasional `Unhandled error in Deferred` error message. ([\#12089](https://github.com/matrix-org/synapse/issues/12089))
50+
- Fix a bug introduced in Synapse 1.51.0 where incoming federation transactions containing at least one EDU would be dropped if debug logging was enabled for `synapse.8631_debug`. ([\#12098](https://github.com/matrix-org/synapse/issues/12098))
51+
- Fix a long-standing bug which could cause push notifications to malfunction if `use_frozen_dicts` was set in the configuration. ([\#12100](https://github.com/matrix-org/synapse/issues/12100))
52+
- Fix an extremely rare, long-standing bug in `ReadWriteLock` that would cause an error when a newly unblocked writer completes instantly. ([\#12105](https://github.com/matrix-org/synapse/issues/12105))
53+
- Make a `POST` to `/rooms/<room_id>/receipt/m.read/<event_id>` only trigger a push notification if the count of unread messages is different to the one in the last successfully sent push. This reduces server load and load on the receiving device. ([\#11835](https://github.com/matrix-org/synapse/issues/11835))
54+
55+
56+
Updates to the Docker image
57+
---------------------------
58+
59+
- The Docker image no longer automatically creates a temporary volume at `/data`. This is not expected to affect normal usage. ([\#11997](https://github.com/matrix-org/synapse/issues/11997))
60+
- Use Python 3.9 in Docker images by default. ([\#12112](https://github.com/matrix-org/synapse/issues/12112))
61+
62+
63+
Improved Documentation
64+
----------------------
65+
66+
- Document support for the `to_device`, `account_data`, `receipts`, and `presence` stream writers for workers. ([\#11599](https://github.com/matrix-org/synapse/issues/11599))
67+
- Explain the meaning of spam checker callbacks' return values. ([\#12003](https://github.com/matrix-org/synapse/issues/12003))
68+
- Clarify information about external Identity Provider IDs. ([\#12004](https://github.com/matrix-org/synapse/issues/12004))
69+
70+
71+
Deprecations and Removals
72+
-------------------------
73+
74+
- Deprecate using `synctl` with the config option `synctl_cache_factor` and print a warning if a user still uses this option. ([\#11865](https://github.com/matrix-org/synapse/issues/11865))
75+
- Remove support for the legacy structured logging configuration (please see the the [upgrade notes](https://matrix-org.github.io/synapse/develop/upgrade#legacy-structured-logging-configuration-removal) if you are using `structured: true` in the Synapse configuration). ([\#12008](https://github.com/matrix-org/synapse/issues/12008))
76+
- Drop support for [MSC3283](https://github.com/matrix-org/matrix-doc/pull/3283) unstable flags now that the stable flags are supported. ([\#12018](https://github.com/matrix-org/synapse/issues/12018))
77+
- Remove the unstable `/spaces` endpoint from [MSC2946](https://github.com/matrix-org/matrix-doc/pull/2946). ([\#12073](https://github.com/matrix-org/synapse/issues/12073))
78+
79+
80+
Internal Changes
81+
----------------
82+
83+
- Make the `get_room_version` method use `get_room_version_id` to benefit from caching. ([\#11808](https://github.com/matrix-org/synapse/issues/11808))
84+
- Remove unnecessary condition on knock -> leave auth rule check. ([\#11900](https://github.com/matrix-org/synapse/issues/11900))
85+
- Add tests for device list changes between local users. ([\#11972](https://github.com/matrix-org/synapse/issues/11972))
86+
- Optimise calculating `device_list` changes in `/sync`. ([\#11974](https://github.com/matrix-org/synapse/issues/11974))
87+
- Add missing type hints to storage classes. ([\#11984](https://github.com/matrix-org/synapse/issues/11984))
88+
- Refactor the search code for improved readability. ([\#11991](https://github.com/matrix-org/synapse/issues/11991))
89+
- Move common deduplication code down into `_auth_and_persist_outliers`. ([\#11994](https://github.com/matrix-org/synapse/issues/11994))
90+
- Limit concurrent joins from applications services. ([\#11996](https://github.com/matrix-org/synapse/issues/11996))
91+
- Preparation for faster-room-join work: when parsing the `send_join` response, get the `m.room.create` event from `state`, not `auth_chain`. ([\#12005](https://github.com/matrix-org/synapse/issues/12005), [\#12039](https://github.com/matrix-org/synapse/issues/12039))
92+
- Preparation for faster-room-join work: parse MSC3706 fields in send_join response. ([\#12011](https://github.com/matrix-org/synapse/issues/12011))
93+
- Preparation for faster-room-join work: persist information on which events and rooms have partial state to the database. ([\#12012](https://github.com/matrix-org/synapse/issues/12012))
94+
- Preparation for faster-room-join work: Support for calling `/federation/v1/state` on a remote server. ([\#12013](https://github.com/matrix-org/synapse/issues/12013))
95+
- Configure `tox` to use `venv` rather than `virtualenv`. ([\#12015](https://github.com/matrix-org/synapse/issues/12015))
96+
- Fix bug in `StateFilter.return_expanded()` and add some tests. ([\#12016](https://github.com/matrix-org/synapse/issues/12016))
97+
- Use Matrix v1.1 endpoints (`/_matrix/client/v3/auth/...`) in fallback auth HTML forms. ([\#12019](https://github.com/matrix-org/synapse/issues/12019))
98+
- Update the `olddeps` CI job to use an old version of `markupsafe`. ([\#12025](https://github.com/matrix-org/synapse/issues/12025))
99+
- Upgrade Mypy to version 0.931. ([\#12030](https://github.com/matrix-org/synapse/issues/12030))
100+
- Remove legacy `HomeServer.get_datastore()`. ([\#12031](https://github.com/matrix-org/synapse/issues/12031), [\#12070](https://github.com/matrix-org/synapse/issues/12070))
101+
- Minor typing fixes. ([\#12034](https://github.com/matrix-org/synapse/issues/12034), [\#12069](https://github.com/matrix-org/synapse/issues/12069))
102+
- After joining a room, create a dedicated logcontext to process the queued events. ([\#12041](https://github.com/matrix-org/synapse/issues/12041))
103+
- Tidy up GitHub Actions config which builds distributions for PyPI. ([\#12051](https://github.com/matrix-org/synapse/issues/12051))
104+
- Move configuration out of `setup.cfg`. ([\#12052](https://github.com/matrix-org/synapse/issues/12052), [\#12059](https://github.com/matrix-org/synapse/issues/12059))
105+
- Fix error message when a worker process fails to talk to another worker process. ([\#12060](https://github.com/matrix-org/synapse/issues/12060))
106+
- Fix using the `complement.sh` script without specifying a directory or a branch. Contributed by Nico on behalf of Famedly. ([\#12063](https://github.com/matrix-org/synapse/issues/12063))
107+
- Add type hints to `tests/rest/client`. ([\#12066](https://github.com/matrix-org/synapse/issues/12066), [\#12072](https://github.com/matrix-org/synapse/issues/12072), [\#12084](https://github.com/matrix-org/synapse/issues/12084), [\#12094](https://github.com/matrix-org/synapse/issues/12094))
108+
- Add some logging to `/sync` to try and track down #11916. ([\#12068](https://github.com/matrix-org/synapse/issues/12068))
109+
- Inspect application dependencies using `importlib.metadata` or its backport. ([\#12088](https://github.com/matrix-org/synapse/issues/12088))
110+
- Use `assertEqual` instead of the deprecated `assertEquals` in test code. ([\#12092](https://github.com/matrix-org/synapse/issues/12092))
111+
- Move experimental support for [MSC3440](https://github.com/matrix-org/matrix-doc/pull/3440) to `/versions`. ([\#12099](https://github.com/matrix-org/synapse/issues/12099))
112+
- Add `stop_cancellation` utility function to stop `Deferred`s from being cancelled. ([\#12106](https://github.com/matrix-org/synapse/issues/12106))
113+
- Improve exception handling for concurrent execution. ([\#12109](https://github.com/matrix-org/synapse/issues/12109))
114+
- Advertise support for Python 3.10 in packaging files. ([\#12111](https://github.com/matrix-org/synapse/issues/12111))
115+
- Move CI checks out of tox, to facilitate a move to using poetry. ([\#12119](https://github.com/matrix-org/synapse/issues/12119))
116+
117+
1118
Synapse 1.53.0 (2022-02-22)
2119
===========================
3120

4-
No significant changes.
121+
No significant changes since 1.53.0rc1.
5122

6123

7124
Synapse 1.53.0rc1 (2022-02-15)
@@ -11,7 +128,7 @@ Features
11128
--------
12129

13130
- Add experimental support for sending to-device messages to application services, as specified by [MSC2409](https://github.com/matrix-org/matrix-doc/pull/2409). ([\#11215](https://github.com/matrix-org/synapse/issues/11215), [\#11966](https://github.com/matrix-org/synapse/issues/11966))
14-
- Remove account data (including client config, push rules and ignored users) upon user deactivation. ([\#11655](https://github.com/matrix-org/synapse/issues/11655))
131+
- Add a background database update to purge account data for deactivated users. ([\#11655](https://github.com/matrix-org/synapse/issues/11655))
15132
- Experimental support for [MSC3666](https://github.com/matrix-org/matrix-doc/pull/3666): including bundled aggregations in server side search results. ([\#11837](https://github.com/matrix-org/synapse/issues/11837))
16133
- Enable cache time-based expiry by default. The `expiry_time` config flag has been superseded by `expire_caches` and `cache_entry_ttl`. ([\#11849](https://github.com/matrix-org/synapse/issues/11849))
17134
- Add a callback to allow modules to allow or forbid a 3PID (email address, phone number) from being associated to a local account. ([\#11854](https://github.com/matrix-org/synapse/issues/11854))
@@ -92,7 +209,7 @@ Note that [Twisted 22.1.0](https://github.com/twisted/twisted/releases/tag/twist
92209
has recently been released, which fixes a [security issue](https://github.com/twisted/twisted/security/advisories/GHSA-92x2-jw7w-xvvx)
93210
within the Twisted library. We do not believe Synapse is affected by this vulnerability,
94211
though we advise server administrators who installed Synapse via pip to upgrade Twisted
95-
with `pip install --upgrade Twisted` as a matter of good practice. The Docker image
212+
with `pip install --upgrade Twisted treq` as a matter of good practice. The Docker image
96213
`matrixdotorg/synapse` and the Debian packages from `packages.matrix.org` are using the
97214
updated library.
98215

@@ -273,7 +390,7 @@ Bugfixes
273390
Synapse 1.50.0 (2022-01-18)
274391
===========================
275392

276-
**This release contains a critical bug that may prevent clients from being able to connect.
393+
**This release contains a critical bug that may prevent clients from being able to connect.
277394
As such, it is not recommended to upgrade to 1.50.0. Instead, please upgrade straight to
278395
to 1.50.1. Further details are available in [this issue](https://github.com/matrix-org/synapse/issues/11763).**
279396

MANIFEST.in

+1
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ include book.toml
4545
include pyproject.toml
4646
recursive-include changelog.d *
4747

48+
include .flake8
4849
prune .circleci
4950
prune .github
5051
prune .ci

debian/changelog

+12
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,15 @@
1+
matrix-synapse-py3 (1.54.0) stable; urgency=medium
2+
3+
* New synapse release 1.54.0.
4+
5+
-- Synapse Packaging team <[email protected]> Tue, 08 Mar 2022 10:54:52 +0000
6+
7+
matrix-synapse-py3 (1.54.0~rc1) stable; urgency=medium
8+
9+
* New synapse release 1.54.0~rc1.
10+
11+
-- Synapse Packaging team <[email protected]> Wed, 02 Mar 2022 10:43:22 +0000
12+
113
matrix-synapse-py3 (1.53.0) stable; urgency=medium
214

315
* New synapse release 1.53.0.

docker/Dockerfile

+2-4
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@
1111
# There is an optional PYTHON_VERSION build argument which sets the
1212
# version of python to build against: for example:
1313
#
14-
# DOCKER_BUILDKIT=1 docker build -f docker/Dockerfile --build-arg PYTHON_VERSION=3.9 .
14+
# DOCKER_BUILDKIT=1 docker build -f docker/Dockerfile --build-arg PYTHON_VERSION=3.10 .
1515
#
1616

17-
ARG PYTHON_VERSION=3.8
17+
ARG PYTHON_VERSION=3.9
1818

1919
###
2020
### Stage 0: builder
@@ -89,8 +89,6 @@ COPY --from=builder /install /usr/local
8989
COPY ./docker/start.py /start.py
9090
COPY ./docker/conf /conf
9191

92-
VOLUME ["/data"]
93-
9492
EXPOSE 8008/tcp 8009/tcp 8448/tcp
9593

9694
ENTRYPOINT ["/start.py"]

docs/admin_api/user_admin_api.md

+2-1
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,8 @@ Body parameters:
126126
[Sample Configuration File](../usage/configuration/homeserver_sample_config.html)
127127
section `sso` and `oidc_providers`.
128128
- `auth_provider` - string. ID of the external identity provider. Value of `idp_id`
129-
in homeserver configuration.
129+
in the homeserver configuration. Note that no error is raised if the provided
130+
value is not in the homeserver configuration.
130131
- `external_id` - string, user ID in the external identity provider.
131132
- `avatar_url` - string, optional, must be a
132133
[MXC URI](https://matrix.org/docs/spec/client_server/r0.6.0#matrix-content-mxc-uris).

0 commit comments

Comments
 (0)