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

Commit

Permalink
Merge branch 'develop' of github.com:matrix-org/synapse into erikj/mo…
Browse files Browse the repository at this point in the history
…ve_events
  • Loading branch information
erikjohnston committed May 22, 2020
2 parents 9468caa + 1531b21 commit 76bf9cf
Show file tree
Hide file tree
Showing 80 changed files with 1,020 additions and 470 deletions.
66 changes: 49 additions & 17 deletions CHANGES.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,5 @@
Synapse 1.13.0rc2 (2020-05-14)
==============================

Bugfixes
--------

- Fix a long-standing bug which could cause messages not to be sent over federation, when state events with state keys matching user IDs (such as custom user statuses) were received. ([\#7376](https://github.com/matrix-org/synapse/issues/7376))
- Restore compatibility with non-compliant clients during the user interactive authentication process, fixing a problem introduced in v1.13.0rc1. ([\#7483](https://github.com/matrix-org/synapse/issues/7483))

Internal Changes
----------------

- Fix linting errors in new version of Flake8. ([\#7470](https://github.com/matrix-org/synapse/issues/7470))


Synapse 1.13.0rc1 (2020-05-11)
==============================
Synapse 1.13.0 (2020-05-19)
===========================

This release brings some potential changes necessary for certain
configurations of Synapse:
Expand All @@ -34,6 +19,53 @@ configurations of Synapse:
Please review [UPGRADE.rst](UPGRADE.rst) for more details on these changes
and for general upgrade guidance.


Notice of change to the default `git` branch for Synapse
--------------------------------------------------------

With the release of Synapse 1.13.0, the default `git` branch for Synapse has
changed to `develop`, which is the development tip. This is more consistent with
common practice and modern `git` usage.

The `master` branch, which tracks the latest release, is still available. It is
recommended that developers and distributors who have scripts which run builds
using the default branch of Synapse should therefore consider pinning their
scripts to `master`.


Internal Changes
----------------

- Update the version of dh-virtualenv we use to build debs, and add focal to the list of target distributions. ([\#7526](https://github.com/matrix-org/synapse/issues/7526))


Synapse 1.13.0rc3 (2020-05-18)
==============================

Bugfixes
--------

- Hash passwords as early as possible during registration. ([\#7523](https://github.com/matrix-org/synapse/issues/7523))


Synapse 1.13.0rc2 (2020-05-14)
==============================

Bugfixes
--------

- Fix a long-standing bug which could cause messages not to be sent over federation, when state events with state keys matching user IDs (such as custom user statuses) were received. ([\#7376](https://github.com/matrix-org/synapse/issues/7376))
- Restore compatibility with non-compliant clients during the user interactive authentication process, fixing a problem introduced in v1.13.0rc1. ([\#7483](https://github.com/matrix-org/synapse/issues/7483))

Internal Changes
----------------

- Fix linting errors in new version of Flake8. ([\#7470](https://github.com/matrix-org/synapse/issues/7470))


Synapse 1.13.0rc1 (2020-05-11)
==============================

Features
--------

Expand Down
19 changes: 4 additions & 15 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,21 +16,10 @@ project on github, and then [create a pull request](
https://help.github.com/articles/using-pull-requests/) to ask us to pull your
changes into our repo.

**The single biggest thing you need to know is: please base your changes on
the develop branch - *not* master.**

We use the master branch to track the most recent release, so that folks who
blindly clone the repo and automatically check out master get something that
works. Develop is the unstable branch where all the development actually
happens: the workflow is that contributors should fork the develop branch to
make a 'feature' branch for a particular contribution, and then make a pull
request to merge this back into the matrix.org 'official' develop branch. We
use github's pull request workflow to review the contribution, and either ask
you to make any refinements needed or merge it and make them ourselves. The
changes will then land on master when we next do a release.

Some other things you will need to know when contributing to Synapse:

Some other points to follow:

* Please base your changes on the `develop` branch.

* Please follow the [code style requirements](#code-style).

* Please include a [changelog entry](#changelog) with each PR.
Expand Down
1 change: 1 addition & 0 deletions changelog.d/6590.misc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
`synctl` now warns if it was unable to stop Synapse and will not attempt to start Synapse if nothing was stopped. Contributed by Romain Bouyé.
1 change: 1 addition & 0 deletions changelog.d/7453.bugfix
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Fix a bug that would cause Synapse not to resync out-of-sync device lists.
1 change: 1 addition & 0 deletions changelog.d/7497.bugfix
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
When sending `m.room.member` events, omit `displayname` and `avatar_url` if they aren't set instead of setting them to `null`. Contributed by Aaron Raimist.
1 change: 1 addition & 0 deletions changelog.d/7528.doc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Change the systemd worker service to check that the worker config file exists instead of silently failing. Contributed by David Vo.
1 change: 1 addition & 0 deletions changelog.d/7533.doc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Minor clarifications to the TURN docs.
1 change: 1 addition & 0 deletions changelog.d/7536.misc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Synapse now exports [detailed allocator statistics](https://doc.pypy.org/en/latest/gc_info.html#gc-get-stats) and basic GC timings as Prometheus metrics (`pypy_gc_time_seconds_total` and `pypy_memory_bytes`) when run under PyPy. Contributed by Ivan Shapovalov.
1 change: 1 addition & 0 deletions changelog.d/7538.bugfix
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Hash passwords as early as possible during password reset.
1 change: 1 addition & 0 deletions changelog.d/7539.misc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Remove Ubuntu Cosmic and Disco from the list of distributions which we provide `.deb`s for, due to end-of-life.
1 change: 1 addition & 0 deletions changelog.d/7542.misc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Add ability to wait for replication streams.
1 change: 1 addition & 0 deletions changelog.d/7545.misc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Make worker processes return a stubbed-out response to `GET /presence` requests.
1 change: 1 addition & 0 deletions changelog.d/7547.misc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
On upgrade room only send canonical alias once.
1 change: 1 addition & 0 deletions changelog.d/7548.bugfix
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Fix bug where a local user leaving a room could fail under rare circumstances.
1 change: 1 addition & 0 deletions changelog.d/7550.misc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Fix some indentation inconsistencies in the sample config.
1 change: 1 addition & 0 deletions changelog.d/7552.bugfix
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Fix "Missing RelayState parameter" error when using user interactive authentication with SAML for some SAML providers.
1 change: 1 addition & 0 deletions changelog.d/7553.misc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Include `synapse.http.site` in type checking.
1 change: 1 addition & 0 deletions changelog.d/7554.misc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Fix some test code to not mangle stacktraces, to make it easier to debug errors.
1 change: 1 addition & 0 deletions changelog.d/7555.misc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Refresh apt cache when building dh_virtualenv docker image.
1 change: 1 addition & 0 deletions changelog.d/7556.misc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Stop logging some expected HTTP request errors as exceptions.
1 change: 1 addition & 0 deletions changelog.d/7557.misc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Convert sending mail to async/await.
1 change: 0 additions & 1 deletion debian/build_virtualenv
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,6 @@ esac
dh_virtualenv \
--install-suffix "matrix-synapse" \
--builtin-venv \
--setuptools \
--python "$SNAKE" \
--upgrade-pip \
--preinstall="lxml" \
Expand Down
12 changes: 7 additions & 5 deletions debian/changelog
Original file line number Diff line number Diff line change
@@ -1,16 +1,18 @@
<<<<<<< HEAD
matrix-synapse-py3 (1.12.3ubuntu1) UNRELEASED; urgency=medium
matrix-synapse-py3 (1.13.0) stable; urgency=medium

[ Patrick Cloke ]
* Add information about .well-known files to Debian installation scripts.

-- Patrick Cloke <patrickc@matrix.org> Mon, 06 Apr 2020 10:10:38 -0400
=======
[ Synapse Packaging team ]
* New synapse release 1.13.0.

-- Synapse Packaging team <packages@matrix.org> Tue, 19 May 2020 09:16:56 -0400

matrix-synapse-py3 (1.12.4) stable; urgency=medium

* New synapse release 1.12.4.

-- Synapse Packaging team <packages@matrix.org> Thu, 23 Apr 2020 10:58:14 -0400
>>>>>>> master

matrix-synapse-py3 (1.12.3) stable; urgency=medium

Expand Down
19 changes: 11 additions & 8 deletions docker/Dockerfile-dhvirtualenv
Original file line number Diff line number Diff line change
Expand Up @@ -27,15 +27,18 @@ RUN env DEBIAN_FRONTEND=noninteractive apt-get install \
wget

# fetch and unpack the package
RUN wget -q -O /dh-virtuenv-1.1.tar.gz https://github.com/spotify/dh-virtualenv/archive/1.1.tar.gz
RUN tar xvf /dh-virtuenv-1.1.tar.gz
RUN mkdir /dh-virtualenv
RUN wget -q -O /dh-virtualenv.tar.gz https://github.com/matrix-org/dh-virtualenv/archive/matrixorg-20200519.tar.gz
RUN tar -xv --strip-components=1 -C /dh-virtualenv -f /dh-virtualenv.tar.gz

# install its build deps
RUN cd dh-virtualenv-1.1/ \
&& env DEBIAN_FRONTEND=noninteractive mk-build-deps -ri -t "apt-get -yqq --no-install-recommends"
# install its build deps. We do another apt-cache-update here, because we might
# be using a stale cache from docker build.
RUN apt-get update -qq -o Acquire::Languages=none \
&& cd /dh-virtualenv \
&& env DEBIAN_FRONTEND=noninteractive mk-build-deps -ri -t "apt-get -y --no-install-recommends"

# build it
RUN cd dh-virtualenv-1.1 && dpkg-buildpackage -us -uc -b
RUN cd /dh-virtualenv && dpkg-buildpackage -us -uc -b

###
### Stage 1
Expand Down Expand Up @@ -68,12 +71,12 @@ RUN apt-get update -qq -o Acquire::Languages=none \
sqlite3 \
libpq-dev

COPY --from=builder /dh-virtualenv_1.1-1_all.deb /
COPY --from=builder /dh-virtualenv_1.2~dev-1_all.deb /

# install dhvirtualenv. Update the apt cache again first, in case we got a
# cached cache from docker the first time.
RUN apt-get update -qq -o Acquire::Languages=none \
&& apt-get install -yq /dh-virtualenv_1.1-1_all.deb
&& apt-get install -yq /dh-virtualenv_1.2~dev-1_all.deb

WORKDIR /synapse/source
ENTRYPOINT ["bash","/synapse/source/docker/build_debian.sh"]
21 changes: 11 additions & 10 deletions docs/admin_api/user_admin_api.rst
Original file line number Diff line number Diff line change
Expand Up @@ -33,21 +33,22 @@ with a body of:
including an ``access_token`` of a server admin.

The parameter ``displayname`` is optional and defaults to the value of
``user_id``.
Parameters:

The parameter ``threepids`` is optional and allows setting the third-party IDs
(email, msisdn) belonging to a user.
- ``password``, optional. If provided, the user's password is updated and all
devices are logged out.

- ``displayname``, optional, defaults to the value of ``user_id``.

The parameter ``avatar_url`` is optional. Must be a [MXC
URI](https://matrix.org/docs/spec/client_server/r0.6.0#matrix-content-mxc-uris).
- ``threepids``, optional, allows setting the third-party IDs (email, msisdn)
belonging to a user.

The parameter ``admin`` is optional and defaults to ``false``.
- ``avatar_url``, optional, must be a
`MXC URI <https://matrix.org/docs/spec/client_server/r0.6.0#matrix-content-mxc-uris>`_.

The parameter ``deactivated`` is optional and defaults to ``false``.
- ``admin``, optional, defaults to ``false``.

The parameter ``password`` is optional. If provided, the user's password is
updated and all devices are logged out.
- ``deactivated``, optional, defaults to ``false``.

If the user already exists then optional parameters default to the current value.

Expand Down
61 changes: 35 additions & 26 deletions docs/sample_config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -322,22 +322,27 @@ listeners:
# Used by phonehome stats to group together related servers.
#server_context: context

# Resource-constrained homeserver Settings
# Resource-constrained homeserver settings
#
# If limit_remote_rooms.enabled is True, the room complexity will be
# checked before a user joins a new remote room. If it is above
# limit_remote_rooms.complexity, it will disallow joining or
# instantly leave.
# When this is enabled, the room "complexity" will be checked before a user
# joins a new remote room. If it is above the complexity limit, the server will
# disallow joining, or will instantly leave.
#
# limit_remote_rooms.complexity_error can be set to customise the text
# displayed to the user when a room above the complexity threshold has
# its join cancelled.
# Room complexity is an arbitrary measure based on factors such as the number of
# users in the room.
#
# Uncomment the below lines to enable:
#limit_remote_rooms:
# enabled: true
# complexity: 1.0
# complexity_error: "This room is too complex."
limit_remote_rooms:
# Uncomment to enable room complexity checking.
#
#enabled: true

# the limit above which rooms cannot be joined. The default is 1.0.
#
#complexity: 0.5

# override the error which is returned when the room is too complex.
#
#complexity_error: "This room is too complex."

# Whether to require a user to be in the room to add an alias to it.
# Defaults to 'true'.
Expand Down Expand Up @@ -942,25 +947,28 @@ url_preview_accept_language:


## Captcha ##
# See docs/CAPTCHA_SETUP for full details of configuring this.
# See docs/CAPTCHA_SETUP.md for full details of configuring this.

# This homeserver's ReCAPTCHA public key.
# This homeserver's ReCAPTCHA public key. Must be specified if
# enable_registration_captcha is enabled.
#
#recaptcha_public_key: "YOUR_PUBLIC_KEY"

# This homeserver's ReCAPTCHA private key.
# This homeserver's ReCAPTCHA private key. Must be specified if
# enable_registration_captcha is enabled.
#
#recaptcha_private_key: "YOUR_PRIVATE_KEY"

# Enables ReCaptcha checks when registering, preventing signup
# Uncomment to enable ReCaptcha checks when registering, preventing signup
# unless a captcha is answered. Requires a valid ReCaptcha
# public/private key.
# public/private key. Defaults to 'false'.
#
#enable_registration_captcha: false
#enable_registration_captcha: true

# The API endpoint to use for verifying m.login.recaptcha responses.
# Defaults to "https://www.recaptcha.net/recaptcha/api/siteverify".
#
#recaptcha_siteverify_api: "https://www.recaptcha.net/recaptcha/api/siteverify"
#recaptcha_siteverify_api: "https://my.recaptcha.site"


## TURN ##
Expand Down Expand Up @@ -1104,7 +1112,7 @@ account_validity:
# If set, allows registration of standard or admin accounts by anyone who
# has the shared secret, even if registration is otherwise disabled.
#
# registration_shared_secret: <PRIVATE STRING>
#registration_shared_secret: <PRIVATE STRING>

# Set the number of bcrypt rounds used to generate password hash.
# Larger numbers increase the work factor needed to generate the hash.
Expand Down Expand Up @@ -1237,7 +1245,8 @@ metrics_flags:
#known_servers: true

# Whether or not to report anonymized homeserver usage statistics.
# report_stats: true|false
#
#report_stats: true|false

# The endpoint to report the anonymized homeserver usage statistics to.
# Defaults to https://matrix.org/report-usage-stats/push
Expand Down Expand Up @@ -1273,13 +1282,13 @@ metrics_flags:
# the registration_shared_secret is used, if one is given; otherwise,
# a secret key is derived from the signing key.
#
# macaroon_secret_key: <PRIVATE STRING>
#macaroon_secret_key: <PRIVATE STRING>

# a secret which is used to calculate HMACs for form values, to stop
# falsification of values. Must be specified for the User Consent
# forms to work.
#
# form_secret: <PRIVATE STRING>
#form_secret: <PRIVATE STRING>

## Signing Keys ##

Expand Down Expand Up @@ -1764,8 +1773,8 @@ email:
# Username/password for authentication to the SMTP server. By default, no
# authentication is attempted.
#
# smtp_user: "exampleusername"
# smtp_pass: "examplepassword"
#smtp_user: "exampleusername"
#smtp_pass: "examplepassword"

# Uncomment the following to require TLS transport security for SMTP.
# By default, Synapse will connect over plain text, and will then switch to
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[Unit]
Description=Synapse %i

AssertPathExists=/etc/matrix-synapse/workers/%i.yaml
# This service should be restarted when the synapse target is restarted.
PartOf=matrix-synapse.target

Expand Down
Loading

0 comments on commit 76bf9cf

Please sign in to comment.