Skip to content
This repository was archived by the owner on Apr 12, 2024. It is now read-only.

Commit 066e2e0

Browse files
committed
Merge tag 'v1.58.0rc1' into babolivier/dinsic_1.58
Synapse 1.58.0rc1 (2022-04-26) ============================== As of this release, the groups/communities feature in Synapse is now disabled by default. See [\#11584](matrix-org/synapse#11584) for details. As mentioned in [the upgrade notes](https://github.com/matrix-org/synapse/blob/develop/docs/upgrade.md#upgrading-to-v1580), this feature will be removed in Synapse 1.61. Features -------- - Implement [MSC3383](matrix-org/matrix-spec-proposals#3383) for including the destination in server-to-server authentication headers. Contributed by @Bubu and @jcgruenhage for Famedly. ([\#11398](matrix-org/synapse#11398)) - Docker images and Debian packages from matrix.org now contain a locked set of Python dependencies, greatly improving build reproducibility. ([Board](https://github.com/orgs/matrix-org/projects/54), [\#11537](matrix-org/synapse#11537)) - Enable processing of device list updates asynchronously. ([\#12365](matrix-org/synapse#12365), [\#12465](matrix-org/synapse#12465)) - Implement [MSC2815](matrix-org/matrix-spec-proposals#2815) to allow room moderators to view redacted event content. Contributed by @tulir. ([\#12427](matrix-org/synapse#12427)) - Build Debian packages for Ubuntu 22.04 "Jammy Jellyfish". ([\#12543](matrix-org/synapse#12543)) Bugfixes -------- - Prevent a sync request from removing a user's busy presence status. ([\#12213](matrix-org/synapse#12213)) - Fix bug with incremental sync missing events when rejoining/backfilling. Contributed by Nick @ Beeper. ([\#12319](matrix-org/synapse#12319)) - Fix a long-standing bug which incorrectly caused `GET /_matrix/client/v3/rooms/{roomId}/event/{eventId}` to return edited events rather than the original. ([\#12476](matrix-org/synapse#12476)) - Fix a bug introduced in Synapse 1.27.0 where the admin API for [deleting forward extremities](https://github.com/matrix-org/synapse/blob/erikj/fix_delete_event_response_count/docs/admin_api/rooms.md#deleting-forward-extremities) would always return a count of 1, no matter how many extremities were deleted. ([\#12496](matrix-org/synapse#12496)) - Fix a long-standing bug where the image thumbnails embedded into email notifications were broken. ([\#12510](matrix-org/synapse#12510)) - Fix a bug in the implementation of [MSC3202](matrix-org/matrix-spec-proposals#3202) where Synapse would use the field name `device_unused_fallback_keys`, rather than `device_unused_fallback_key_types`. ([\#12520](matrix-org/synapse#12520)) - Fix a bug introduced in Synapse 0.99.3 which could cause Synapse to consume large amounts of RAM when back-paginating in a large room. ([\#12522](matrix-org/synapse#12522)) Improved Documentation ---------------------- - Fix rendering of the documentation site when using the 'print' feature. ([\#12340](matrix-org/synapse#12340)) - Add a manual documenting config file options. ([\#12368](matrix-org/synapse#12368), [\#12527](matrix-org/synapse#12527)) - Update documentation to reflect that both the `run_background_tasks_on` option and the options for moving stream writers off of the main process are no longer experimental. ([\#12451](matrix-org/synapse#12451)) - Update worker documentation and replace old `federation_reader` with `generic_worker`. ([\#12457](matrix-org/synapse#12457)) - Strongly recommend [Poetry](https://python-poetry.org/) for development. ([\#12475](matrix-org/synapse#12475)) - Add some example configurations for workers and update architectural diagram. ([\#12492](matrix-org/synapse#12492)) - Fix a broken link in `README.rst`. ([\#12495](matrix-org/synapse#12495)) - Add HAProxy delegation example with CORS headers to docs. ([\#12501](matrix-org/synapse#12501)) - Remove extraneous comma in User Admin API's device deletion section so that the example JSON is actually valid and works. Contributed by @olmari. ([\#12533](matrix-org/synapse#12533)) Deprecations and Removals ------------------------- - The groups/communities feature in Synapse is now disabled by default. ([\#12344](matrix-org/synapse#12344)) - Remove unstable identifiers from [MSC3440](matrix-org/matrix-spec-proposals#3440). ([\#12382](matrix-org/synapse#12382)) Internal Changes ---------------- - Preparation for faster-room-join work: start a background process to resynchronise the room state after a room join. ([\#12394](matrix-org/synapse#12394)) - Preparation for faster-room-join work: Implement a tracking mechanism to allow functions to wait for full room state to arrive. ([\#12399](matrix-org/synapse#12399)) - Remove an unstable identifier from [MSC3083](matrix-org/matrix-spec-proposals#3083). ([\#12395](matrix-org/synapse#12395)) - Run CI in the locked [Poetry](https://python-poetry.org/) environment, and remove corresponding `tox` jobs. ([\#12425](matrix-org/synapse#12425), [\#12434](matrix-org/synapse#12434), [\#12438](matrix-org/synapse#12438), [\#12441](matrix-org/synapse#12441), [\#12449](matrix-org/synapse#12449), [\#12478](matrix-org/synapse#12478), [\#12514](matrix-org/synapse#12514), [\#12472](matrix-org/synapse#12472)) - Change Mutual Rooms' `unstable_features` flag to `uk.half-shot.msc2666.mutual_rooms` which matches the current iteration of [MSC2666](matrix-org/matrix-spec-proposals#2666). ([\#12445](matrix-org/synapse#12445)) - Fix typo in the release script help string. ([\#12450](matrix-org/synapse#12450)) - Fix a minor typo in the Debian changelogs generated by the release script. ([\#12497](matrix-org/synapse#12497)) - Reintroduce the list of targets to the linter script, to avoid linting unwanted local-only directories during development. ([\#12455](matrix-org/synapse#12455)) - Limit length of `device_id` to less than 512 characters. ([\#12454](matrix-org/synapse#12454)) - Dockerfile-workers: reduce the amount we install in the image. ([\#12464](matrix-org/synapse#12464)) - Dockerfile-workers: give the master its own log config. ([\#12466](matrix-org/synapse#12466)) - complement-synapse-workers: factor out separate entry point script. ([\#12467](matrix-org/synapse#12467)) - Back out experimental implementation of [MSC2314](matrix-org/matrix-spec-proposals#2314). ([\#12474](matrix-org/synapse#12474)) - Fix grammatical error in federation error response when the room version of a room is unknown. ([\#12483](matrix-org/synapse#12483)) - Remove unnecessary configuration overrides in tests. ([\#12511](matrix-org/synapse#12511)) - Refactor the relations code for clarity. ([\#12519](matrix-org/synapse#12519)) - Add type hints so `docker` and `stubs` directories pass `mypy --disallow-untyped-defs`. ([\#12528](matrix-org/synapse#12528)) - Update `delay_cancellation` to accept any awaitable, rather than just `Deferred`s. ([\#12468](matrix-org/synapse#12468)) - Handle cancellation in `EventsWorkerStore._get_events_from_cache_or_db`. ([\#12529](matrix-org/synapse#12529))
2 parents e4d8ff2 + ee1601e commit 066e2e0

File tree

111 files changed

+6132
-1514
lines changed

Some content is hidden

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

111 files changed

+6132
-1514
lines changed
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
---
2+
title: CI run against latest deps is failing
3+
---
4+
See https://github.com/{{env.GITHUB_REPOSITORY}}/actions/runs/{{env.GITHUB_RUN_ID}}

.ci/patch_for_twisted_trunk.sh

Lines changed: 0 additions & 8 deletions
This file was deleted.

.dockerignore

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,4 @@
88
!pyproject.toml
99
!poetry.lock
1010

11-
# TODO: remove these once we have moved over to using poetry-core in pyproject.toml
12-
!MANIFEST.in
13-
!setup.py
14-
1511
**/__pycache__

.github/workflows/latest_deps.yml

Lines changed: 156 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,156 @@
1+
# People who are freshly `pip install`ing from PyPI will pull in the latest versions of
2+
# dependencies which match the broad requirements. Since most CI runs are against
3+
# the locked poetry environment, run specifically against the latest dependencies to
4+
# know if there's an upcoming breaking change.
5+
#
6+
# As an overview this workflow:
7+
# - checks out develop,
8+
# - installs from source, pulling in the dependencies like a fresh `pip install` would, and
9+
# - runs mypy and test suites in that checkout.
10+
#
11+
# Based on the twisted trunk CI job.
12+
13+
name: Latest dependencies
14+
15+
on:
16+
schedule:
17+
- cron: 0 7 * * *
18+
workflow_dispatch:
19+
20+
concurrency:
21+
group: ${{ github.workflow }}-${{ github.ref }}
22+
cancel-in-progress: true
23+
24+
jobs:
25+
mypy:
26+
runs-on: ubuntu-latest
27+
steps:
28+
- uses: actions/checkout@v2
29+
# The dev dependencies aren't exposed in the wheel metadata (at least with current
30+
# poetry-core versions), so we install with poetry.
31+
- uses: matrix-org/setup-python-poetry@v1
32+
with:
33+
python-version: "3.x"
34+
poetry-version: "1.2.0b1"
35+
# Dump installed versions for debugging.
36+
- run: poetry run pip list > before.txt
37+
# Upgrade all runtime dependencies only. This is intended to mimic a fresh
38+
# `pip install matrix-synapse[all]` as closely as possible.
39+
- run: poetry update --no-dev
40+
- run: poetry run pip list > after.txt && (diff -u before.txt after.txt || true)
41+
- run: poetry run mypy
42+
trial:
43+
runs-on: ubuntu-latest
44+
strategy:
45+
matrix:
46+
include:
47+
- database: "sqlite"
48+
- database: "postgres"
49+
postgres-version: "14"
50+
51+
steps:
52+
- uses: actions/checkout@v2
53+
- run: sudo apt-get -qq install xmlsec1
54+
- name: Set up PostgreSQL ${{ matrix.postgres-version }}
55+
if: ${{ matrix.postgres-version }}
56+
run: |
57+
docker run -d -p 5432:5432 \
58+
-e POSTGRES_PASSWORD=postgres \
59+
-e POSTGRES_INITDB_ARGS="--lc-collate C --lc-ctype C --encoding UTF8" \
60+
postgres:${{ matrix.postgres-version }}
61+
- uses: actions/setup-python@v2
62+
with:
63+
python-version: "3.x"
64+
- run: pip install .[all,test]
65+
- name: Await PostgreSQL
66+
if: ${{ matrix.postgres-version }}
67+
timeout-minutes: 2
68+
run: until pg_isready -h localhost; do sleep 1; done
69+
- run: python -m twisted.trial --jobs=2 tests
70+
env:
71+
SYNAPSE_POSTGRES: ${{ matrix.database == 'postgres' || '' }}
72+
SYNAPSE_POSTGRES_HOST: localhost
73+
SYNAPSE_POSTGRES_USER: postgres
74+
SYNAPSE_POSTGRES_PASSWORD: postgres
75+
- name: Dump logs
76+
# Logs are most useful when the command fails, always include them.
77+
if: ${{ always() }}
78+
# Note: Dumps to workflow logs instead of using actions/upload-artifact
79+
# This keeps logs colocated with failing jobs
80+
# It also ignores find's exit code; this is a best effort affair
81+
run: >-
82+
find _trial_temp -name '*.log'
83+
-exec echo "::group::{}" \;
84+
-exec cat {} \;
85+
-exec echo "::endgroup::" \;
86+
|| true
87+
88+
89+
sytest:
90+
runs-on: ubuntu-latest
91+
container:
92+
image: matrixdotorg/sytest-synapse:testing
93+
volumes:
94+
- ${{ github.workspace }}:/src
95+
strategy:
96+
fail-fast: false
97+
matrix:
98+
include:
99+
- sytest-tag: focal
100+
101+
- sytest-tag: focal
102+
postgres: postgres
103+
workers: workers
104+
redis: redis
105+
env:
106+
POSTGRES: ${{ matrix.postgres && 1}}
107+
WORKERS: ${{ matrix.workers && 1 }}
108+
REDIS: ${{ matrix.redis && 1 }}
109+
BLACKLIST: ${{ matrix.workers && 'synapse-blacklist-with-workers' }}
110+
111+
steps:
112+
- uses: actions/checkout@v2
113+
- name: Ensure sytest runs `pip install`
114+
# Delete the lockfile so sytest will `pip install` rather than `poetry install`
115+
run: rm /src/poetry.lock
116+
working-directory: /src
117+
- name: Prepare test blacklist
118+
run: cat sytest-blacklist .ci/worker-blacklist > synapse-blacklist-with-workers
119+
- name: Run SyTest
120+
run: /bootstrap.sh synapse
121+
working-directory: /src
122+
- name: Summarise results.tap
123+
if: ${{ always() }}
124+
run: /sytest/scripts/tap_to_gha.pl /logs/results.tap
125+
- name: Upload SyTest logs
126+
uses: actions/upload-artifact@v2
127+
if: ${{ always() }}
128+
with:
129+
name: Sytest Logs - ${{ job.status }} - (${{ join(matrix.*, ', ') }})
130+
path: |
131+
/logs/results.tap
132+
/logs/**/*.log*
133+
134+
135+
# TODO: run complement (as with twisted trunk, see #12473).
136+
137+
# open an issue if the build fails, so we know about it.
138+
open-issue:
139+
if: failure()
140+
needs:
141+
# TODO: should mypy be included here? It feels more brittle than the other two.
142+
- mypy
143+
- trial
144+
- sytest
145+
146+
runs-on: ubuntu-latest
147+
148+
steps:
149+
- uses: actions/checkout@v2
150+
- uses: JasonEtco/create-an-issue@5d9504915f79f9cc6d791934b8ef34f2353dd74d # v2.5.0, 2020-12-06
151+
env:
152+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
153+
with:
154+
update_existing: true
155+
filename: .ci/latest_deps_build_failed_issue_template.md
156+

.github/workflows/tests.yml

Lines changed: 21 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -15,24 +15,18 @@ jobs:
1515
steps:
1616
- uses: actions/checkout@v2
1717
- uses: actions/setup-python@v2
18-
- run: pip install -e .
18+
- run: pip install .
1919
- run: scripts-dev/generate_sample_config.sh --check
2020
- run: scripts-dev/config-lint.sh
2121

2222
lint:
23-
runs-on: ubuntu-latest
24-
strategy:
25-
matrix:
26-
toxenv:
27-
- "check_codestyle"
28-
- "check_isort"
29-
- "mypy"
30-
31-
steps:
32-
- uses: actions/checkout@v2
33-
- uses: actions/setup-python@v2
34-
- run: pip install tox
35-
- run: tox -e ${{ matrix.toxenv }}
23+
# This does a vanilla `poetry install` - no extras. I'm slightly anxious
24+
# that we might skip some typechecks on code that uses extras. However,
25+
# I think the right way to fix this is to mark any extras needed for
26+
# typechecking as development dependencies. To detect this, we ought to
27+
# turn up mypy's strictness: disallow unknown imports and be accept fewer
28+
# uses of `Any`.
29+
uses: "matrix-org/backend-meta/.github/workflows/python-poetry-ci.yml@v1"
3630

3731
lint-crlf:
3832
runs-on: ubuntu-latest
@@ -71,23 +65,23 @@ jobs:
7165
matrix:
7266
python-version: ["3.7", "3.8", "3.9", "3.10"]
7367
database: ["sqlite"]
74-
toxenv: ["py"]
68+
extras: ["all"]
7569
include:
7670
# Newest Python without optional deps
7771
- python-version: "3.10"
78-
toxenv: "py-noextras"
72+
extras: ""
7973

8074
# Oldest Python with PostgreSQL
8175
- python-version: "3.7"
8276
database: "postgres"
8377
postgres-version: "10"
84-
toxenv: "py"
78+
extras: "all"
8579

8680
# Newest Python with newest PostgreSQL
8781
- python-version: "3.10"
8882
database: "postgres"
8983
postgres-version: "14"
90-
toxenv: "py"
84+
extras: "all"
9185

9286
steps:
9387
- uses: actions/checkout@v2
@@ -99,17 +93,16 @@ jobs:
9993
-e POSTGRES_PASSWORD=postgres \
10094
-e POSTGRES_INITDB_ARGS="--lc-collate C --lc-ctype C --encoding UTF8" \
10195
postgres:${{ matrix.postgres-version }}
102-
- uses: actions/setup-python@v2
96+
- uses: matrix-org/setup-python-poetry@v1
10397
with:
10498
python-version: ${{ matrix.python-version }}
105-
- run: pip install tox
99+
extras: ${{ matrix.extras }}
106100
- name: Await PostgreSQL
107101
if: ${{ matrix.postgres-version }}
108102
timeout-minutes: 2
109103
run: until pg_isready -h localhost; do sleep 1; done
110-
- run: tox -e ${{ matrix.toxenv }}
104+
- run: poetry run trial --jobs=2 tests
111105
env:
112-
TRIAL_FLAGS: "--jobs=2"
113106
SYNAPSE_POSTGRES: ${{ matrix.database == 'postgres' || '' }}
114107
SYNAPSE_POSTGRES_HOST: localhost
115108
SYNAPSE_POSTGRES_USER: postgres
@@ -156,23 +149,24 @@ jobs:
156149
157150
trial-pypy:
158151
# Very slow; only run if the branch name includes 'pypy'
152+
# Note: sqlite only; no postgres. Completely untested since poetry move.
159153
if: ${{ contains(github.ref, 'pypy') && !failure() && !cancelled() }}
160154
needs: linting-done
161155
runs-on: ubuntu-latest
162156
strategy:
163157
matrix:
164158
python-version: ["pypy-3.7"]
159+
extras: ["all"]
165160

166161
steps:
167162
- uses: actions/checkout@v2
163+
# Install libs necessary for PyPy to build binary wheels for dependencies
168164
- run: sudo apt-get -qq install xmlsec1 libxml2-dev libxslt-dev
169-
- uses: actions/setup-python@v2
165+
- uses: matrix-org/setup-python-poetry@v1
170166
with:
171167
python-version: ${{ matrix.python-version }}
172-
- run: pip install tox
173-
- run: tox -e py
174-
env:
175-
TRIAL_FLAGS: "--jobs=2"
168+
extras: ${{ matrix.extras }}
169+
- run: poetry run trial --jobs=2 tests
176170
- name: Dump logs
177171
# Logs are most useful when the command fails, always include them.
178172
if: ${{ always() }}

.gitignore

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,7 @@ _trial_temp*/
1515
.DS_Store
1616
__pycache__/
1717

18-
# We do want the poetry lockfile. TODO: is there a good reason for ignoring
19-
# '*.lock' above? If not, let's nuke it.
18+
# We do want the poetry lockfile.
2019
!poetry.lock
2120

2221
# stuff that is likely to exist when you run a server locally

CHANGES.md

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,75 @@
1+
Synapse 1.58.0rc1 (2022-04-26)
2+
==============================
3+
4+
As of this release, the groups/communities feature in Synapse is now disabled by default. See [\#11584](https://github.com/matrix-org/synapse/issues/11584) for details. As mentioned in [the upgrade notes](https://github.com/matrix-org/synapse/blob/develop/docs/upgrade.md#upgrading-to-v1580), this feature will be removed in Synapse 1.61.
5+
6+
Features
7+
--------
8+
9+
- Implement [MSC3383](https://github.com/matrix-org/matrix-spec-proposals/pull/3383) for including the destination in server-to-server authentication headers. Contributed by @Bubu and @jcgruenhage for Famedly. ([\#11398](https://github.com/matrix-org/synapse/issues/11398))
10+
- Docker images and Debian packages from matrix.org now contain a locked set of Python dependencies, greatly improving build reproducibility. ([Board](https://github.com/orgs/matrix-org/projects/54), [\#11537](https://github.com/matrix-org/synapse/issues/11537))
11+
- Enable processing of device list updates asynchronously. ([\#12365](https://github.com/matrix-org/synapse/issues/12365), [\#12465](https://github.com/matrix-org/synapse/issues/12465))
12+
- Implement [MSC2815](https://github.com/matrix-org/matrix-spec-proposals/pull/2815) to allow room moderators to view redacted event content. Contributed by @tulir. ([\#12427](https://github.com/matrix-org/synapse/issues/12427))
13+
- Build Debian packages for Ubuntu 22.04 "Jammy Jellyfish". ([\#12543](https://github.com/matrix-org/synapse/issues/12543))
14+
15+
16+
Bugfixes
17+
--------
18+
19+
- Prevent a sync request from removing a user's busy presence status. ([\#12213](https://github.com/matrix-org/synapse/issues/12213))
20+
- Fix bug with incremental sync missing events when rejoining/backfilling. Contributed by Nick @ Beeper. ([\#12319](https://github.com/matrix-org/synapse/issues/12319))
21+
- Fix a long-standing bug which incorrectly caused `GET /_matrix/client/v3/rooms/{roomId}/event/{eventId}` to return edited events rather than the original. ([\#12476](https://github.com/matrix-org/synapse/issues/12476))
22+
- Fix a bug introduced in Synapse 1.27.0 where the admin API for [deleting forward extremities](https://github.com/matrix-org/synapse/blob/erikj/fix_delete_event_response_count/docs/admin_api/rooms.md#deleting-forward-extremities) would always return a count of 1, no matter how many extremities were deleted. ([\#12496](https://github.com/matrix-org/synapse/issues/12496))
23+
- Fix a long-standing bug where the image thumbnails embedded into email notifications were broken. ([\#12510](https://github.com/matrix-org/synapse/issues/12510))
24+
- Fix a bug in the implementation of [MSC3202](https://github.com/matrix-org/matrix-spec-proposals/pull/3202) where Synapse would use the field name `device_unused_fallback_keys`, rather than `device_unused_fallback_key_types`. ([\#12520](https://github.com/matrix-org/synapse/issues/12520))
25+
- Fix a bug introduced in Synapse 0.99.3 which could cause Synapse to consume large amounts of RAM when back-paginating in a large room. ([\#12522](https://github.com/matrix-org/synapse/issues/12522))
26+
27+
28+
Improved Documentation
29+
----------------------
30+
31+
- Fix rendering of the documentation site when using the 'print' feature. ([\#12340](https://github.com/matrix-org/synapse/issues/12340))
32+
- Add a manual documenting config file options. ([\#12368](https://github.com/matrix-org/synapse/issues/12368), [\#12527](https://github.com/matrix-org/synapse/issues/12527))
33+
- Update documentation to reflect that both the `run_background_tasks_on` option and the options for moving stream writers off of the main process are no longer experimental. ([\#12451](https://github.com/matrix-org/synapse/issues/12451))
34+
- Update worker documentation and replace old `federation_reader` with `generic_worker`. ([\#12457](https://github.com/matrix-org/synapse/issues/12457))
35+
- Strongly recommend [Poetry](https://python-poetry.org/) for development. ([\#12475](https://github.com/matrix-org/synapse/issues/12475))
36+
- Add some example configurations for workers and update architectural diagram. ([\#12492](https://github.com/matrix-org/synapse/issues/12492))
37+
- Fix a broken link in `README.rst`. ([\#12495](https://github.com/matrix-org/synapse/issues/12495))
38+
- Add HAProxy delegation example with CORS headers to docs. ([\#12501](https://github.com/matrix-org/synapse/issues/12501))
39+
- Remove extraneous comma in User Admin API's device deletion section so that the example JSON is actually valid and works. Contributed by @olmari. ([\#12533](https://github.com/matrix-org/synapse/issues/12533))
40+
41+
42+
Deprecations and Removals
43+
-------------------------
44+
45+
- The groups/communities feature in Synapse is now disabled by default. ([\#12344](https://github.com/matrix-org/synapse/issues/12344))
46+
- Remove unstable identifiers from [MSC3440](https://github.com/matrix-org/matrix-doc/pull/3440). ([\#12382](https://github.com/matrix-org/synapse/issues/12382))
47+
48+
49+
Internal Changes
50+
----------------
51+
52+
- Preparation for faster-room-join work: start a background process to resynchronise the room state after a room join. ([\#12394](https://github.com/matrix-org/synapse/issues/12394))
53+
- Preparation for faster-room-join work: Implement a tracking mechanism to allow functions to wait for full room state to arrive. ([\#12399](https://github.com/matrix-org/synapse/issues/12399))
54+
- Remove an unstable identifier from [MSC3083](https://github.com/matrix-org/matrix-doc/pull/3083). ([\#12395](https://github.com/matrix-org/synapse/issues/12395))
55+
- Run CI in the locked [Poetry](https://python-poetry.org/) environment, and remove corresponding `tox` jobs. ([\#12425](https://github.com/matrix-org/synapse/issues/12425), [\#12434](https://github.com/matrix-org/synapse/issues/12434), [\#12438](https://github.com/matrix-org/synapse/issues/12438), [\#12441](https://github.com/matrix-org/synapse/issues/12441), [\#12449](https://github.com/matrix-org/synapse/issues/12449), [\#12478](https://github.com/matrix-org/synapse/issues/12478), [\#12514](https://github.com/matrix-org/synapse/issues/12514), [\#12472](https://github.com/matrix-org/synapse/issues/12472))
56+
- Change Mutual Rooms' `unstable_features` flag to `uk.half-shot.msc2666.mutual_rooms` which matches the current iteration of [MSC2666](https://github.com/matrix-org/matrix-spec-proposals/pull/2666). ([\#12445](https://github.com/matrix-org/synapse/issues/12445))
57+
- Fix typo in the release script help string. ([\#12450](https://github.com/matrix-org/synapse/issues/12450))
58+
- Fix a minor typo in the Debian changelogs generated by the release script. ([\#12497](https://github.com/matrix-org/synapse/issues/12497))
59+
- Reintroduce the list of targets to the linter script, to avoid linting unwanted local-only directories during development. ([\#12455](https://github.com/matrix-org/synapse/issues/12455))
60+
- Limit length of `device_id` to less than 512 characters. ([\#12454](https://github.com/matrix-org/synapse/issues/12454))
61+
- Dockerfile-workers: reduce the amount we install in the image. ([\#12464](https://github.com/matrix-org/synapse/issues/12464))
62+
- Dockerfile-workers: give the master its own log config. ([\#12466](https://github.com/matrix-org/synapse/issues/12466))
63+
- complement-synapse-workers: factor out separate entry point script. ([\#12467](https://github.com/matrix-org/synapse/issues/12467))
64+
- Back out experimental implementation of [MSC2314](https://github.com/matrix-org/matrix-spec-proposals/pull/2314). ([\#12474](https://github.com/matrix-org/synapse/issues/12474))
65+
- Fix grammatical error in federation error response when the room version of a room is unknown. ([\#12483](https://github.com/matrix-org/synapse/issues/12483))
66+
- Remove unnecessary configuration overrides in tests. ([\#12511](https://github.com/matrix-org/synapse/issues/12511))
67+
- Refactor the relations code for clarity. ([\#12519](https://github.com/matrix-org/synapse/issues/12519))
68+
- Add type hints so `docker` and `stubs` directories pass `mypy --disallow-untyped-defs`. ([\#12528](https://github.com/matrix-org/synapse/issues/12528))
69+
- Update `delay_cancellation` to accept any awaitable, rather than just `Deferred`s. ([\#12468](https://github.com/matrix-org/synapse/issues/12468))
70+
- Handle cancellation in `EventsWorkerStore._get_events_from_cache_or_db`. ([\#12529](https://github.com/matrix-org/synapse/issues/12529))
71+
72+
173
Synapse 1.57.1 (2022-04-20)
274
===========================
375

0 commit comments

Comments
 (0)