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

Commit 0b561a0

Browse files
committed
Merge branch 'release-v1.52'
2 parents 4e09d72 + 1aa2231 commit 0b561a0

File tree

102 files changed

+2743
-814
lines changed

Some content is hidden

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

102 files changed

+2743
-814
lines changed

.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: 22 additions & 14 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
@@ -213,15 +213,15 @@ jobs:
213213
fail-fast: false
214214
matrix:
215215
include:
216-
- sytest-tag: bionic
216+
- sytest-tag: focal
217217

218-
- sytest-tag: bionic
218+
- sytest-tag: focal
219219
postgres: postgres
220220

221221
- sytest-tag: testing
222222
postgres: postgres
223223

224-
- sytest-tag: bionic
224+
- sytest-tag: focal
225225
postgres: multi-postgres
226226
workers: workers
227227

@@ -323,17 +323,22 @@ jobs:
323323
if: ${{ !failure() && !cancelled() }}
324324
needs: linting-done
325325
runs-on: ubuntu-latest
326-
container:
327-
# https://github.com/matrix-org/complement/blob/master/dockerfiles/ComplementCIBuildkite.Dockerfile
328-
image: matrixdotorg/complement:latest
329-
env:
330-
CI: true
331-
ports:
332-
- 8448:8448
333-
volumes:
334-
- /var/run/docker.sock:/var/run/docker.sock
335326

336327
steps:
328+
# 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.
329+
# See https://docs.github.com/en/actions/using-workflows/workflow-commands-for-github-actions#adding-a-system-path
330+
- name: "Set Go Version"
331+
run: |
332+
# Add Go 1.17 to the PATH: see https://github.com/actions/virtual-environments/blob/main/images/linux/Ubuntu2004-Readme.md#environment-variables-2
333+
echo "$GOROOT_1_17_X64/bin" >> $GITHUB_PATH
334+
# Add the Go path to the PATH: We need this so we can call gotestfmt
335+
echo "~/go/bin" >> $GITHUB_PATH
336+
337+
- name: "Install Complement Dependencies"
338+
run: |
339+
sudo apt-get update && sudo apt-get install -y libolm3 libolm-dev
340+
go get -v github.com/haveyoudebuggedit/gotestfmt/v2/cmd/gotestfmt@latest
341+
337342
- name: Run actions/checkout@v2 for synapse
338343
uses: actions/checkout@v2
339344
with:
@@ -376,8 +381,11 @@ jobs:
376381
working-directory: complement/dockerfiles
377382

378383
# Run Complement
379-
- run: set -o pipefail && go test -v -json -tags synapse_blacklist,msc2403 ./tests/... 2>&1 | gotestfmt
384+
- run: |
385+
set -o pipefail
386+
go test -v -json -tags synapse_blacklist,msc2403 ./tests/... 2>&1 | gotestfmt
380387
shell: bash
388+
name: Run Complement Tests
381389
env:
382390
COMPLEMENT_BASE_IMAGE: complement-synapse:latest
383391
working-directory: complement

.github/workflows/twisted_trunk.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ jobs:
2525
- run: sudo apt-get -qq install xmlsec1
2626
- uses: actions/setup-python@v2
2727
with:
28-
python-version: 3.6
28+
python-version: 3.7
2929
- run: .ci/patch_for_twisted_trunk.sh
3030
- run: pip install tox
3131
- run: tox -e py

CHANGES.md

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,77 @@
1+
Synapse 1.52.0 (2022-02-08)
2+
===========================
3+
4+
No significant changes since 1.52.0rc1.
5+
6+
Note that [Twisted 22.1.0](https://github.com/twisted/twisted/releases/tag/twisted-22.1.0)
7+
has recently been released, which fixes a [security issue](https://github.com/twisted/twisted/security/advisories/GHSA-92x2-jw7w-xvvx)
8+
within the Twisted library. We do not believe Synapse is affected by this vulnerability,
9+
though we advise server administrators who installed Synapse via pip to upgrade Twisted
10+
with `pip install --upgrade Twisted` as a matter of good practice. The Docker image
11+
`matrixdotorg/synapse` and the Debian packages from `packages.matrix.org` are using the
12+
updated library.
13+
14+
15+
Synapse 1.52.0rc1 (2022-02-01)
16+
==============================
17+
18+
Features
19+
--------
20+
21+
- 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))
22+
- Add an admin API to reset connection timeouts for remote server. ([\#11639](https://github.com/matrix-org/synapse/issues/11639))
23+
- 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))
24+
- Add a config flag to inhibit `M_USER_IN_USE` during registration. ([\#11743](https://github.com/matrix-org/synapse/issues/11743))
25+
- Add a module callback to set username at registration. ([\#11790](https://github.com/matrix-org/synapse/issues/11790))
26+
- 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))
27+
28+
29+
Bugfixes
30+
--------
31+
32+
- 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))
33+
- Fix a long-standing bug when previewing Reddit URLs which do not contain an image. ([\#11767](https://github.com/matrix-org/synapse/issues/11767))
34+
- 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))
35+
- Include a `prev_content` field in state events sent to Application Services. Contributed by @totallynotvaishnav. ([\#11798](https://github.com/matrix-org/synapse/issues/11798))
36+
- 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))
37+
38+
39+
Improved Documentation
40+
----------------------
41+
42+
- Update pypi installation docs to indicate that we now support Python 3.10. ([\#11820](https://github.com/matrix-org/synapse/issues/11820))
43+
- Add missing steps to the contribution submission process in the documentation. Contributed by @sequentialread. ([\#11821](https://github.com/matrix-org/synapse/issues/11821))
44+
- Remove not needed old table of contents in documentation. ([\#11860](https://github.com/matrix-org/synapse/issues/11860))
45+
- 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))
46+
47+
48+
Deprecations and Removals
49+
-------------------------
50+
51+
- Drop support for Python 3.6, which is EOL. ([\#11683](https://github.com/matrix-org/synapse/issues/11683))
52+
- Remove the `experimental_msc1849_support_enabled` flag as the features are now stable. ([\#11843](https://github.com/matrix-org/synapse/issues/11843))
53+
54+
55+
Internal Changes
56+
----------------
57+
58+
- Preparation for database schema simplifications: add `state_key` and `rejection_reason` columns to `events` table. ([\#11792](https://github.com/matrix-org/synapse/issues/11792))
59+
- Add `FrozenEvent.get_state_key` and use it in a couple of places. ([\#11793](https://github.com/matrix-org/synapse/issues/11793))
60+
- Preparation for database schema simplifications: stop reading from `event_reference_hashes`. ([\#11794](https://github.com/matrix-org/synapse/issues/11794))
61+
- Drop unused table `public_room_list_stream`. ([\#11795](https://github.com/matrix-org/synapse/issues/11795))
62+
- 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))
63+
- Docker: skip the initial amd64-only build and go straight to multiarch. ([\#11810](https://github.com/matrix-org/synapse/issues/11810))
64+
- Run Complement on the Github Actions VM and not inside a Docker container. ([\#11811](https://github.com/matrix-org/synapse/issues/11811))
65+
- Log module names at startup. ([\#11813](https://github.com/matrix-org/synapse/issues/11813))
66+
- Improve type safety of bundled aggregations code. ([\#11815](https://github.com/matrix-org/synapse/issues/11815))
67+
- 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))
68+
- Minor updates and documentation for database schema delta files. ([\#11823](https://github.com/matrix-org/synapse/issues/11823))
69+
- Workaround a type annotation problem in `prometheus_client` 0.13.0. ([\#11834](https://github.com/matrix-org/synapse/issues/11834))
70+
- Minor performance improvement in room state lookup. ([\#11836](https://github.com/matrix-org/synapse/issues/11836))
71+
- Fix some indentation inconsistencies in the sample config. ([\#11838](https://github.com/matrix-org/synapse/issues/11838))
72+
- Add type hints to `tests/rest/admin`. ([\#11851](https://github.com/matrix-org/synapse/issues/11851))
73+
74+
175
Synapse 1.51.0 (2022-01-25)
276
===========================
377

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) stable; urgency=medium
2+
3+
* New synapse release 1.52.0.
4+
5+
-- Synapse Packaging team <[email protected]> Tue, 08 Feb 2022 11:34:54 +0000
6+
7+
matrix-synapse-py3 (1.52.0~rc1) stable; urgency=medium
8+
9+
* New synapse release 1.52.0~rc1.
10+
11+
-- Synapse Packaging team <[email protected]> Tue, 01 Feb 2022 11:04:09 +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)