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

Commit d126743

Browse files
committed
Merge tag 'v1.52.0rc1' into dinsic
Synapse 1.52.0rc1 (2022-02-01) ============================== Features -------- - Remove account data (including client config, push rules and ignored users) upon user deactivation. ([\#11621](matrix-org/synapse#11621), [\#11788](matrix-org/synapse#11788), [\#11789](matrix-org/synapse#11789)) - Add an admin API to reset connection timeouts for remote server. ([\#11639](matrix-org/synapse#11639)) - Add an admin API to get a list of rooms that federate with a given remote homeserver. ([\#11658](matrix-org/synapse#11658)) - Add a config flag to inhibit M_USER_IN_USE during registration. ([\#11743](matrix-org/synapse#11743)) - Add a module callback to set username at registration. ([\#11790](matrix-org/synapse#11790)) - Allow configuring a maximum file size as well as a list of allowed content types for avatars. ([\#11846](matrix-org/synapse#11846)) Bugfixes -------- - Include the bundled aggregations in the `/sync` response, per [MSC2675](matrix-org/matrix-spec-proposals#2675). ([\#11612](matrix-org/synapse#11612)) - Fix a long-standing bug when previewing Reddit URLs which do not contain an image. ([\#11767](matrix-org/synapse#11767)) - Fix a long-standing bug that media streams could cause long-lived connections when generating URL previews. ([\#11784](matrix-org/synapse#11784)) - Include a `prev_content` field in state events sent to Application Services. Contributed by @totallynotvaishnav. ([\#11798](matrix-org/synapse#11798)) - Fix a bug introduced in Synapse 0.33.3 causing requests to sometimes log strings such as `HTTPStatus.OK` instead of integer status codes. ([\#11827](matrix-org/synapse#11827)) Improved Documentation ---------------------- - Update pypi installation docs to indicate that we now support Python 3.10. ([\#11820](matrix-org/synapse#11820)) - Add missing steps to the contribution submission process in the documentation. Contributed by @sequentialread. ([\#11821](matrix-org/synapse#11821)) - Remove not needed old table of contents in documentation. ([\#11860](matrix-org/synapse#11860)) - Consolidate the `access_token` information at the top of each relevant page in the Admin API documentation. ([\#11861](matrix-org/synapse#11861)) Deprecations and Removals ------------------------- - Drop support for Python 3.6, which is EOL. ([\#11683](matrix-org/synapse#11683)) - Remove the `experimental_msc1849_support_enabled` flag as the features are now stable. ([\#11843](matrix-org/synapse#11843)) Internal Changes ---------------- - Preparation for database schema simplifications: add `state_key` and `rejection_reason` columns to `events` table. ([\#11792](matrix-org/synapse#11792)) - Add `FrozenEvent.get_state_key` and use it in a couple of places. ([\#11793](matrix-org/synapse#11793)) - Preparation for database schema simplifications: stop reading from `event_reference_hashes`. ([\#11794](matrix-org/synapse#11794)) - Drop unused table `public_room_list_stream`. ([\#11795](matrix-org/synapse#11795)) - Preparation for reducing Postgres serialization errors: allow setting transaction isolation level. Contributed by Nick @ Beeper. ([\#11799](matrix-org/synapse#11799), [\#11847](matrix-org/synapse#11847)) - Docker: skip the initial amd64-only build and go straight to multiarch. ([\#11810](matrix-org/synapse#11810)) - Run Complement on the Github Actions VM and not inside a Docker container. ([\#11811](matrix-org/synapse#11811)) - Log module names at startup. ([\#11813](matrix-org/synapse#11813)) - Improve type safety of bundled aggregations code. ([\#11815](matrix-org/synapse#11815)) - Correct a type annotation in the event validation logic. ([\#11817](matrix-org/synapse#11817), [\#11830](matrix-org/synapse#11830)) - Minor updates and documentation for database schema delta files. ([\#11823](matrix-org/synapse#11823)) - Workaround a type annotation problem in `prometheus_client` 0.13.0. ([\#11834](matrix-org/synapse#11834)) - Minor performance improvement in room state lookup. ([\#11836](matrix-org/synapse#11836)) - Fix some indentation inconsistencies in the sample config. ([\#11838](matrix-org/synapse#11838)) - Add type hints to `tests/rest/admin`. ([\#11851](matrix-org/synapse#11851))
2 parents 27929dc + b7282fe commit d126743

87 files changed

Lines changed: 2041 additions & 800 deletions

File tree

Some content is hidden

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

.ci/scripts/test_old_deps.sh

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
#!/usr/bin/env bash
2-
3-
# this script is run by GitHub Actions in a plain `bionic` container; it installs the
2+
# this script is run by GitHub Actions in a plain `focal` container; it installs the
43
# minimal requirements for tox and hands over to the py3-old tox environment.
54

5+
# Prevent tzdata from asking for user input
6+
export DEBIAN_FRONTEND=noninteractive
7+
68
set -ex
79

810
apt-get update
9-
apt-get install -y python3 python3-dev python3-pip libxml2-dev libxslt-dev xmlsec1 zlib1g-dev tox
11+
apt-get install -y python3 python3-dev python3-pip libxml2-dev libxslt-dev xmlsec1 zlib1g-dev tox libjpeg-dev libwebp-dev
1012

1113
export LANG="C.UTF-8"
1214

.github/workflows/docker.yml

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@ jobs:
3434
username: ${{ secrets.DOCKERHUB_USERNAME }}
3535
password: ${{ secrets.DOCKERHUB_TOKEN }}
3636

37+
# TODO: consider using https://github.com/docker/metadata-action instead of this
38+
# custom magic
3739
- name: Calculate docker image tag
3840
id: set-tag
3941
run: |
@@ -53,18 +55,6 @@ jobs:
5355
esac
5456
echo "::set-output name=tag::$tag"
5557
56-
# for release builds, we want to get the amd64 image out asap, so first
57-
# we do an amd64-only build, before following up with a multiarch build.
58-
- name: Build and push amd64
59-
uses: docker/build-push-action@v2
60-
if: "${{ startsWith(github.ref, 'refs/tags/v') }}"
61-
with:
62-
push: true
63-
labels: "gitsha1=${{ github.sha }}"
64-
tags: "matrixdotorg/synapse:${{ steps.set-tag.outputs.tag }}"
65-
file: "docker/Dockerfile"
66-
platforms: linux/amd64
67-
6858
- name: Build and push all platforms
6959
uses: docker/build-push-action@v2
7060
with:

.github/workflows/tests.yml

Lines changed: 19 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ jobs:
141141
steps:
142142
- uses: actions/checkout@v2
143143
- name: Test with old deps
144-
uses: docker://ubuntu:bionic # For old python and sqlite
144+
uses: docker://ubuntu:focal # For old python and sqlite
145145
with:
146146
workdir: /github/workspace
147147
entrypoint: .ci/scripts/test_old_deps.sh
@@ -316,17 +316,22 @@ jobs:
316316
if: ${{ !failure() && !cancelled() }}
317317
needs: linting-done
318318
runs-on: ubuntu-latest
319-
container:
320-
# https://github.com/matrix-org/complement/blob/master/dockerfiles/ComplementCIBuildkite.Dockerfile
321-
image: matrixdotorg/complement:latest
322-
env:
323-
CI: true
324-
ports:
325-
- 8448:8448
326-
volumes:
327-
- /var/run/docker.sock:/var/run/docker.sock
328319

329320
steps:
321+
# The path is set via a file given by $GITHUB_PATH. We need both Go 1.17 and GOPATH on the path to run Complement.
322+
# See https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#adding-a-system-path
323+
- name: "Set Go Version"
324+
run: |
325+
# Add Go 1.17 to the PATH: see https://github.com/actions/virtual-environments/blob/main/images/linux/Ubuntu2004-Readme.md#environment-variables-2
326+
echo "$GOROOT_1_17_X64/bin" >> $GITHUB_PATH
327+
# Add the Go path to the PATH: We need this so we can call gotestfmt
328+
echo "~/go/bin" >> $GITHUB_PATH
329+
330+
- name: "Install Complement Dependencies"
331+
run: |
332+
sudo apt-get update && sudo apt-get install -y libolm3 libolm-dev
333+
go get -v github.com/haveyoudebuggedit/gotestfmt/v2/cmd/gotestfmt@latest
334+
330335
- name: Run actions/checkout@v2 for synapse
331336
uses: actions/checkout@v2
332337
with:
@@ -369,8 +374,11 @@ jobs:
369374
working-directory: complement/dockerfiles
370375

371376
# Run Complement
372-
- run: set -o pipefail && go test -v -json -tags synapse_blacklist,msc2403 ./tests/... 2>&1 | gotestfmt
377+
- run: |
378+
set -o pipefail
379+
go test -v -json -tags synapse_blacklist,msc2403 ./tests/... 2>&1 | gotestfmt
373380
shell: bash
381+
name: Run Complement Tests
374382
env:
375383
COMPLEMENT_BASE_IMAGE: complement-synapse:latest
376384
working-directory: complement

.github/workflows/twisted_trunk.yml

Whitespace-only changes.

CHANGES.md

Lines changed: 72 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,69 @@
1+
Synapse 1.52.0rc1 (2022-02-01)
2+
==============================
3+
4+
Features
5+
--------
6+
7+
- Remove account data (including client config, push rules and ignored users) upon user deactivation. ([\#11621](https://github.com/matrix-org/synapse/issues/11621), [\#11788](https://github.com/matrix-org/synapse/issues/11788), [\#11789](https://github.com/matrix-org/synapse/issues/11789))
8+
- Add an admin API to reset connection timeouts for remote server. ([\#11639](https://github.com/matrix-org/synapse/issues/11639))
9+
- Add an admin API to get a list of rooms that federate with a given remote homeserver. ([\#11658](https://github.com/matrix-org/synapse/issues/11658))
10+
- Add a config flag to inhibit M_USER_IN_USE during registration. ([\#11743](https://github.com/matrix-org/synapse/issues/11743))
11+
- Add a module callback to set username at registration. ([\#11790](https://github.com/matrix-org/synapse/issues/11790))
12+
- Allow configuring a maximum file size as well as a list of allowed content types for avatars. ([\#11846](https://github.com/matrix-org/synapse/issues/11846))
13+
14+
15+
Bugfixes
16+
--------
17+
18+
- Include the bundled aggregations in the `/sync` response, per [MSC2675](https://github.com/matrix-org/matrix-doc/pull/2675). ([\#11612](https://github.com/matrix-org/synapse/issues/11612))
19+
- Fix a long-standing bug when previewing Reddit URLs which do not contain an image. ([\#11767](https://github.com/matrix-org/synapse/issues/11767))
20+
- Fix a long-standing bug that media streams could cause long-lived connections when generating URL previews. ([\#11784](https://github.com/matrix-org/synapse/issues/11784))
21+
- Include a `prev_content` field in state events sent to Application Services. Contributed by @totallynotvaishnav. ([\#11798](https://github.com/matrix-org/synapse/issues/11798))
22+
- Fix a bug introduced in Synapse 0.33.3 causing requests to sometimes log strings such as `HTTPStatus.OK` instead of integer status codes. ([\#11827](https://github.com/matrix-org/synapse/issues/11827))
23+
24+
25+
Improved Documentation
26+
----------------------
27+
28+
- Update pypi installation docs to indicate that we now support Python 3.10. ([\#11820](https://github.com/matrix-org/synapse/issues/11820))
29+
- Add missing steps to the contribution submission process in the documentation. Contributed by @sequentialread. ([\#11821](https://github.com/matrix-org/synapse/issues/11821))
30+
- Remove not needed old table of contents in documentation. ([\#11860](https://github.com/matrix-org/synapse/issues/11860))
31+
- Consolidate the `access_token` information at the top of each relevant page in the Admin API documentation. ([\#11861](https://github.com/matrix-org/synapse/issues/11861))
32+
33+
34+
Deprecations and Removals
35+
-------------------------
36+
37+
- Drop support for Python 3.6, which is EOL. ([\#11683](https://github.com/matrix-org/synapse/issues/11683))
38+
- Remove the `experimental_msc1849_support_enabled` flag as the features are now stable. ([\#11843](https://github.com/matrix-org/synapse/issues/11843))
39+
40+
41+
Internal Changes
42+
----------------
43+
44+
- Preparation for database schema simplifications: add `state_key` and `rejection_reason` columns to `events` table. ([\#11792](https://github.com/matrix-org/synapse/issues/11792))
45+
- Add `FrozenEvent.get_state_key` and use it in a couple of places. ([\#11793](https://github.com/matrix-org/synapse/issues/11793))
46+
- Preparation for database schema simplifications: stop reading from `event_reference_hashes`. ([\#11794](https://github.com/matrix-org/synapse/issues/11794))
47+
- Drop unused table `public_room_list_stream`. ([\#11795](https://github.com/matrix-org/synapse/issues/11795))
48+
- Preparation for reducing Postgres serialization errors: allow setting transaction isolation level. Contributed by Nick @ Beeper. ([\#11799](https://github.com/matrix-org/synapse/issues/11799), [\#11847](https://github.com/matrix-org/synapse/issues/11847))
49+
- Docker: skip the initial amd64-only build and go straight to multiarch. ([\#11810](https://github.com/matrix-org/synapse/issues/11810))
50+
- Run Complement on the Github Actions VM and not inside a Docker container. ([\#11811](https://github.com/matrix-org/synapse/issues/11811))
51+
- Log module names at startup. ([\#11813](https://github.com/matrix-org/synapse/issues/11813))
52+
- Improve type safety of bundled aggregations code. ([\#11815](https://github.com/matrix-org/synapse/issues/11815))
53+
- Correct a type annotation in the event validation logic. ([\#11817](https://github.com/matrix-org/synapse/issues/11817), [\#11830](https://github.com/matrix-org/synapse/issues/11830))
54+
- Minor updates and documentation for database schema delta files. ([\#11823](https://github.com/matrix-org/synapse/issues/11823))
55+
- Workaround a type annotation problem in `prometheus_client` 0.13.0. ([\#11834](https://github.com/matrix-org/synapse/issues/11834))
56+
- Minor performance improvement in room state lookup. ([\#11836](https://github.com/matrix-org/synapse/issues/11836))
57+
- Fix some indentation inconsistencies in the sample config. ([\#11838](https://github.com/matrix-org/synapse/issues/11838))
58+
- Add type hints to `tests/rest/admin`. ([\#11851](https://github.com/matrix-org/synapse/issues/11851))
59+
60+
161
Synapse 1.51.0 (2022-01-25)
262
===========================
363

464
No significant changes since 1.51.0rc2.
565

6-
Synapse 1.51.0 deprecates `webclient` listeners and non-HTTP(S) `web_client_location`s. Support for these will be removed in Synapse 1.53.0, at which point Synapse will not be capable of directly serving a web client for Matrix.
66+
Synapse 1.51.0 deprecates `webclient` listeners and non-HTTP(S) `web_client_location`s. Support for these will be removed in Synapse 1.53.0, at which point Synapse will not be capable of directly serving a web client for Matrix. See the [upgrade notes](https://matrix-org.github.io/synapse/develop/upgrade#upgrading-to-v1510).
767

868
Synapse 1.51.0rc2 (2022-01-24)
969
==============================
@@ -14,6 +74,17 @@ Bugfixes
1474
- Fix a bug introduced in Synapse 1.40.0 that caused Synapse to fail to process incoming federation traffic after handling a large amount of events in a v1 room. ([\#11806](https://github.com/matrix-org/synapse/issues/11806))
1575

1676

77+
Synapse 1.50.2 (2022-01-24)
78+
===========================
79+
80+
This release includes the same bugfix as Synapse 1.51.0rc2.
81+
82+
Bugfixes
83+
--------
84+
85+
- Fix a bug introduced in Synapse 1.40.0 that caused Synapse to fail to process incoming federation traffic after handling a large amount of events in a v1 room. ([\#11806](https://github.com/matrix-org/synapse/issues/11806))
86+
87+
1788
Synapse 1.51.0rc1 (2022-01-21)
1889
==============================
1990

@@ -89,15 +160,6 @@ Internal Changes
89160
- Add some comments and type annotations for `_update_outliers_txn`. ([\#11776](https://github.com/matrix-org/synapse/issues/11776))
90161

91162

92-
Synapse 1.50.2 (2022-01-24)
93-
===========================
94-
95-
Bugfixes
96-
--------
97-
98-
- Fix a bug introduced in Synapse 1.40.0 that caused Synapse to fail to process incoming federation traffic after handling a large amount of events in a v1 room. ([\#11806](https://github.com/matrix-org/synapse/issues/11806))
99-
100-
101163
Synapse 1.50.1 (2022-01-18)
102164
===========================
103165

debian/changelog

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,15 @@
1+
matrix-synapse-py3 (1.52.0~rc1) stable; urgency=medium
2+
3+
* New synapse release 1.52.0~rc1.
4+
5+
-- Synapse Packaging team <packages@matrix.org> Tue, 01 Feb 2022 11:04:09 +0000
6+
7+
matrix-synapse-py3 (1.50.2) stable; urgency=medium
8+
9+
* New synapse release 1.50.2.
10+
11+
-- Synapse Packaging team <packages@matrix.org> Mon, 24 Jan 2022 13:37:11 +0000
12+
113
matrix-synapse-py3 (1.51.0) stable; urgency=medium
214

315
* New synapse release 1.51.0.

docker/Dockerfile-pgtests

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Use the Sytest image that comes with a lot of the build dependencies
22
# pre-installed
3-
FROM matrixdotorg/sytest:bionic
3+
FROM matrixdotorg/sytest:focal
44

55
# The Sytest image doesn't come with python, so install that
66
RUN apt-get update && apt-get -qq install -y python3 python3-dev python3-pip

docker/run_pg_tests.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,4 +16,4 @@ sudo -u postgres /usr/lib/postgresql/10/bin/pg_ctl -w -D /var/lib/postgresql/dat
1616
# Run the tests
1717
cd /src
1818
export TRIAL_FLAGS="-j 4"
19-
tox --workdir=./.tox-pg-container -e py36-postgres "$@"
19+
tox --workdir=./.tox-pg-container -e py37-postgres "$@"

docs/MSC1711_certificates_FAQ.md

Lines changed: 0 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -44,27 +44,6 @@ For more details and context on the release of the r0.1 Server/Server API and
4444
imminent Matrix 1.0 release, you can also see our
4545
[main talk from FOSDEM 2019](https://matrix.org/blog/2019/02/04/matrix-at-fosdem-2019/).
4646

47-
## Contents
48-
* Timeline
49-
* Configuring certificates for compatibility with Synapse 1.0
50-
* FAQ
51-
* Synapse 0.99.0 has just been released, what do I need to do right now?
52-
* How do I upgrade?
53-
* What will happen if I do not set up a valid federation certificate
54-
immediately?
55-
* What will happen if I do nothing at all?
56-
* When do I need a SRV record or .well-known URI?
57-
* Can I still use an SRV record?
58-
* I have created a .well-known URI. Do I still need an SRV record?
59-
* It used to work just fine, why are you breaking everything?
60-
* Can I manage my own certificates rather than having Synapse renew
61-
certificates itself?
62-
* Do you still recommend against using a reverse proxy on the federation port?
63-
* Do I still need to give my TLS certificates to Synapse if I am using a
64-
reverse proxy?
65-
* Do I need the same certificate for the client and federation port?
66-
* How do I tell Synapse to reload my keys/certificates after I replace them?
67-
6847
## Timeline
6948

7049
**5th Feb 2019 - Synapse 0.99.0 is released.**

docs/admin_api/account_validity.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@ This API allows a server administrator to manage the validity of an account. To
44
use it, you must enable the account validity feature (under
55
`account_validity`) in Synapse's configuration.
66

7+
To use it, you will need to authenticate by providing an `access_token`
8+
for a server admin: see [Admin API](../usage/administration/admin_api).
9+
710
## Renew account
811

912
This API extends the validity of an account by as much time as configured in the

0 commit comments

Comments
 (0)