Skip to content

Tags: ardevd/synapse

Tags

v1.7.0

Toggle v1.7.0's commit message

Verified

This tag was signed with the committer’s verified signature.
erikjohnston Erik Johnston
Synapse 1.7.0 (2019-12-13)

==========================

This release changes the default settings so that only local authenticated users can query the server's room directory. See the [upgrade notes](UPGRADE.rst#upgrading-to-v170) for details.

Support for SQLite versions before 3.11 is now deprecated. A future release will refuse to start if used with an SQLite version before 3.11.

Administrators are reminded that SQLite should not be used for production instances. Instructions for migrating to Postgres are available [here](docs/postgres.md). A future release of synapse will, by default, disable federation for servers using SQLite.

No significant changes since 1.7.0rc2.

Synapse 1.7.0rc2 (2019-12-11)
=============================

Bugfixes
--------

- Fix incorrect error message for invalid requests when setting user's avatar URL. ([\matrix-org#6497](matrix-org#6497))
- Fix support for SQLite 3.7. ([\matrix-org#6499](matrix-org#6499))
- Fix regression where sending email push would not work when using a pusher worker. ([\matrix-org#6507](matrix-org#6507), [\matrix-org#6509](matrix-org#6509))

Synapse 1.7.0rc1 (2019-12-09)
=============================

Features
--------

- Implement per-room message retention policies. ([\matrix-org#5815](matrix-org#5815), [\matrix-org#6436](matrix-org#6436))
- Add etag and count fields to key backup endpoints to help clients guess if there are new keys. ([\matrix-org#5858](matrix-org#5858))
- Add `/admin/v2/users` endpoint with pagination. Contributed by Awesome Technologies Innovationslabor GmbH. ([\matrix-org#5925](matrix-org#5925))
- Require User-Interactive Authentication for `/account/3pid/add`, meaning the user's password will be required to add a third-party ID to their account. ([\matrix-org#6119](matrix-org#6119))
- Implement the `/_matrix/federation/unstable/net.atleastfornow/state/<context>` API as drafted in MSC2314. ([\matrix-org#6176](matrix-org#6176))
- Configure privacy-preserving settings by default for the room directory. ([\matrix-org#6355](matrix-org#6355))
- Add ephemeral messages support by partially implementing [MSC2228](matrix-org/matrix-spec-proposals#2228). ([\matrix-org#6409](matrix-org#6409))
- Add support for [MSC 2367](matrix-org/matrix-spec-proposals#2367), which allows specifying a reason on all membership events. ([\matrix-org#6434](matrix-org#6434))

Bugfixes
--------

- Transfer non-standard power levels on room upgrade. ([\matrix-org#6237](matrix-org#6237))
- Fix error from the Pillow library when uploading RGBA images. ([\matrix-org#6241](matrix-org#6241))
- Correctly apply the event filter to the `state`, `events_before` and `events_after` fields in the response to `/context` requests. ([\matrix-org#6329](matrix-org#6329))
- Fix caching devices for remote users when using workers, so that we don't attempt to refetch (and potentially fail) each time a user requests devices. ([\matrix-org#6332](matrix-org#6332))
- Prevent account data syncs getting lost across TCP replication. ([\matrix-org#6333](matrix-org#6333))
- Fix bug: TypeError in `register_user()` while using LDAP auth module. ([\matrix-org#6406](matrix-org#6406))
- Fix an intermittent exception when handling read-receipts. ([\matrix-org#6408](matrix-org#6408))
- Fix broken guest registration when there are existing blocks of numeric user IDs. ([\matrix-org#6420](matrix-org#6420))
- Fix startup error when http proxy is defined. ([\matrix-org#6421](matrix-org#6421))
- Fix error when using synapse_port_db on a vanilla synapse db. ([\matrix-org#6449](matrix-org#6449))
- Fix uploading multiple cross signing signatures for the same user. ([\matrix-org#6451](matrix-org#6451))
- Fix bug which lead to exceptions being thrown in a loop when a cross-signed device is deleted. ([\matrix-org#6462](matrix-org#6462))
- Fix `synapse_port_db` not exiting with a 0 code if something went wrong during the port process. ([\matrix-org#6470](matrix-org#6470))
- Improve sanity-checking when receiving events over federation. ([\matrix-org#6472](matrix-org#6472))
- Fix inaccurate per-block Prometheus metrics. ([\matrix-org#6491](matrix-org#6491))
- Fix small performance regression for sending invites. ([\matrix-org#6493](matrix-org#6493))
- Back out cross-signing code added in Synapse 1.5.0, which caused a performance regression. ([\matrix-org#6494](matrix-org#6494))

Improved Documentation
----------------------

- Update documentation and variables in user contributed systemd reference file. ([\matrix-org#6369](matrix-org#6369), [\matrix-org#6490](matrix-org#6490))
- Fix link in the user directory documentation. ([\matrix-org#6388](matrix-org#6388))
- Add build instructions to the docker readme. ([\matrix-org#6390](matrix-org#6390))
- Switch Ubuntu package install recommendation to use python3 packages in INSTALL.md. ([\matrix-org#6443](matrix-org#6443))
- Write some docs for the quarantine_media api. ([\matrix-org#6458](matrix-org#6458))
- Convert CONTRIBUTING.rst to markdown (among other small fixes). ([\matrix-org#6461](matrix-org#6461))

Deprecations and Removals
-------------------------

- Remove admin/v1/users_paginate endpoint. Contributed by Awesome Technologies Innovationslabor GmbH. ([\matrix-org#5925](matrix-org#5925))
- Remove fallback for federation with old servers which lack the /federation/v1/state_ids API. ([\matrix-org#6488](matrix-org#6488))

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

- Add benchmarks for structured logging and improve output performance. ([\matrix-org#6266](matrix-org#6266))
- Improve the performance of outputting structured logging. ([\matrix-org#6322](matrix-org#6322))
- Refactor some code in the event authentication path for clarity. ([\matrix-org#6343](matrix-org#6343), [\matrix-org#6468](matrix-org#6468), [\matrix-org#6480](matrix-org#6480))
- Clean up some unnecessary quotation marks around the codebase. ([\matrix-org#6362](matrix-org#6362))
- Complain on startup instead of 500'ing during runtime when `public_baseurl` isn't set when necessary. ([\matrix-org#6379](matrix-org#6379))
- Add a test scenario to make sure room history purges don't break `/messages` in the future. ([\matrix-org#6392](matrix-org#6392))
- Clarifications for the email configuration settings. ([\matrix-org#6423](matrix-org#6423))
- Add more tests to the blacklist when running in worker mode. ([\matrix-org#6429](matrix-org#6429))
- Refactor data store layer to support multiple databases in the future. ([\matrix-org#6454](matrix-org#6454), [\matrix-org#6464](matrix-org#6464), [\matrix-org#6469](matrix-org#6469), [\matrix-org#6487](matrix-org#6487))
- Port synapse.rest.client.v1 to async/await. ([\matrix-org#6482](matrix-org#6482))
- Port synapse.rest.client.v2_alpha to async/await. ([\matrix-org#6483](matrix-org#6483))
- Port SyncHandler to async/await. ([\matrix-org#6484](matrix-org#6484))

v1.7.0rc2

Toggle v1.7.0rc2's commit message

Verified

This tag was signed with the committer’s verified signature.
erikjohnston Erik Johnston
Synapse 1.7.0rc2 (2019-12-11)

=============================

Bugfixes
--------

- Fix incorrect error message for invalid requests when setting user's avatar URL. ([\matrix-org#6497](matrix-org#6497))
- Fix support for SQLite 3.7. ([\matrix-org#6499](matrix-org#6499))
- Fix regression where sending email push would not work when using a pusher worker. ([\matrix-org#6507](matrix-org#6507), [\matrix-org#6509](matrix-org#6509))

v1.7.0rc1

Toggle v1.7.0rc1's commit message

Verified

This tag was signed with the committer’s verified signature.
neilisfragile Neil Johnson
Synapse 1.7.0rc1 (2019-12-09)

=============================

Features
--------

- Implement per-room message retention policies. ([\matrix-org#5815](matrix-org#5815), [\matrix-org#6436](matrix-org#6436))
- Add etag and count fields to key backup endpoints to help clients guess if there are new keys. ([\matrix-org#5858](matrix-org#5858))
- Add `/admin/v2/users` endpoint with pagination. Contributed by Awesome Technologies Innovationslabor GmbH. ([\matrix-org#5925](matrix-org#5925))
- Require User-Interactive Authentication for `/account/3pid/add`, meaning the user's password will be required to add a third-party ID to their account. ([\matrix-org#6119](matrix-org#6119))
- Implement the `/_matrix/federation/unstable/net.atleastfornow/state/<context>` API as drafted in MSC2314. ([\matrix-org#6176](matrix-org#6176))
- Configure privacy-preserving settings by default for the room directory. ([\matrix-org#6354](matrix-org#6354))
- Add ephemeral messages support by partially implementing [MSC2228](matrix-org/matrix-spec-proposals#2228). ([\matrix-org#6409](matrix-org#6409))
- Add support for [MSC 2367](matrix-org/matrix-spec-proposals#2367), which allows specifying a reason on all membership events. ([\matrix-org#6434](matrix-org#6434))

Bugfixes
--------

- Transfer non-standard power levels on room upgrade. ([\matrix-org#6237](matrix-org#6237))
- Fix error from the Pillow library when uploading RGBA images. ([\matrix-org#6241](matrix-org#6241))
- Correctly apply the event filter to the `state`, `events_before` and `events_after` fields in the response to `/context` requests. ([\matrix-org#6329](matrix-org#6329))
- Fix caching devices for remote users when using workers, so that we don't attempt to refetch (and potentially fail) each time a user requests devices. ([\matrix-org#6332](matrix-org#6332))
- Prevent account data syncs getting lost across TCP replication. ([\matrix-org#6333](matrix-org#6333))
- Fix bug: TypeError in `register_user()` while using LDAP auth module. ([\matrix-org#6406](matrix-org#6406))
- Fix an intermittent exception when handling read-receipts. ([\matrix-org#6408](matrix-org#6408))
- Fix broken guest registration when there are existing blocks of numeric user IDs. ([\matrix-org#6420](matrix-org#6420))
- Fix startup error when http proxy is defined. ([\matrix-org#6421](matrix-org#6421))
- Fix error when using synapse_port_db on a vanilla synapse db. ([\matrix-org#6449](matrix-org#6449))
- Fix uploading multiple cross signing signatures for the same user. ([\matrix-org#6451](matrix-org#6451))
- Fix bug which lead to exceptions being thrown in a loop when a cross-signed device is deleted. ([\matrix-org#6462](matrix-org#6462))
- Fix `synapse_port_db` not exiting with a 0 code if something went wrong during the port process. ([\matrix-org#6470](matrix-org#6470))
- Improve sanity-checking when receiving events over federation. ([\matrix-org#6472](matrix-org#6472))
- Fix inaccurate per-block Prometheus metrics. ([\matrix-org#6491](matrix-org#6491))
- Fix small performance regression for sending invites. ([\matrix-org#6493](matrix-org#6493))
- Back out cross-signing code added in Synapse 1.5.0, which caused a performance regression. ([\matrix-org#6494](matrix-org#6494))

Improved Documentation
----------------------

- Update documentation and variables in user contributed systemd reference file. ([\matrix-org#6369](matrix-org#6369), [\matrix-org#6490](matrix-org#6490))
- Fix link in the user directory documentation. ([\matrix-org#6388](matrix-org#6388))
- Add build instructions to the docker readme. ([\matrix-org#6390](matrix-org#6390))
- Switch Ubuntu package install recommendation to use python3 packages in INSTALL.md. ([\matrix-org#6443](matrix-org#6443))
- Write some docs for the quarantine_media api. ([\matrix-org#6458](matrix-org#6458))
- Convert CONTRIBUTING.rst to markdown (among other small fixes). ([\matrix-org#6461](matrix-org#6461))

Deprecations and Removals
-------------------------

- Remove admin/v1/users_paginate endpoint. Contributed by Awesome Technologies Innovationslabor GmbH. ([\matrix-org#5925](matrix-org#5925))
- Remove fallback for federation with old servers which lack the /federation/v1/state_ids API. ([\matrix-org#6488](matrix-org#6488))

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

- Add benchmarks for structured logging and improve output performance. ([\matrix-org#6266](matrix-org#6266))
- Improve the performance of outputting structured logging. ([\matrix-org#6322](matrix-org#6322))
- Refactor some code in the event authentication path for clarity. ([\matrix-org#6343](matrix-org#6343), [\matrix-org#6468](matrix-org#6468), [\matrix-org#6480](matrix-org#6480))
- Clean up some unnecessary quotation marks around the codebase. ([\matrix-org#6362](matrix-org#6362))
- Complain on startup instead of 500'ing during runtime when `public_baseurl` isn't set when necessary. ([\matrix-org#6379](matrix-org#6379))
- Add a test scenario to make sure room history purges don't break `/messages` in the future. ([\matrix-org#6392](matrix-org#6392))
- Clarifications for the email configuration settings. ([\matrix-org#6423](matrix-org#6423))
- Add more tests to the blacklist when running in worker mode. ([\matrix-org#6429](matrix-org#6429))
- Refactor data store layer to support multiple databases in the future. ([\matrix-org#6454](matrix-org#6454), [\matrix-org#6464](matrix-org#6464), [\matrix-org#6469](matrix-org#6469), [\matrix-org#6487](matrix-org#6487))
- Port synapse.rest.client.v1 to async/await. ([\matrix-org#6482](matrix-org#6482))
- Port synapse.rest.client.v2_alpha to async/await. ([\matrix-org#6483](matrix-org#6483))
- Port SyncHandler to async/await. ([\matrix-org#6484](matrix-org#6484))

v1.6.1

Toggle v1.6.1's commit message

Verified

This tag was signed with the committer’s verified signature. The key has expired.
anoadragon453 Andrew Morgan
Synapse 1.6.1 (2019-11-28)

==========================

Security updates
----------------

This release includes a security fix ([\matrix-org#6426](matrix-org#6426), below). Administrators are encouraged to upgrade as soon as possible.

Bugfixes
--------

- Clean up local threepids from user on account deactivation. ([\matrix-org#6426](matrix-org#6426))
- Fix startup error when http proxy is defined. ([\matrix-org#6421](matrix-org#6421))

v1.6.0

Toggle v1.6.0's commit message

Verified

This tag was signed with the committer’s verified signature. The key has expired.
anoadragon453 Andrew Morgan
Synapse 1.6.0 (2019-11-26)

==========================

Bugfixes
--------

- Fix phone home stats reporting. ([\matrix-org#6418](matrix-org#6418))

Synapse 1.6.0rc2 (2019-11-25)
=============================

Bugfixes
--------

- Fix a bug which could cause the background database update hander for event labels to get stuck in a loop raising exceptions. ([\matrix-org#6407](matrix-org#6407))

Synapse 1.6.0rc1 (2019-11-20)
=============================

Features
--------

- Add federation support for cross-signing. ([\matrix-org#5727](matrix-org#5727))
- Increase default room version from 4 to 5, thereby enforcing server key validity period checks. ([\matrix-org#6220](matrix-org#6220))
- Add support for outbound http proxying via http_proxy/HTTPS_PROXY env vars. ([\matrix-org#6238](matrix-org#6238))
- Implement label-based filtering on `/sync` and `/messages` ([MSC2326](matrix-org/matrix-spec-proposals#2326)). ([\matrix-org#6301](matrix-org#6301), [\matrix-org#6310](matrix-org#6310), [\matrix-org#6340](matrix-org#6340))

Bugfixes
--------

- Fix LruCache callback deduplication for Python 3.8. Contributed by @V02460. ([\matrix-org#6213](matrix-org#6213))
- Remove a room from a server's public rooms list on room upgrade. ([\matrix-org#6232](matrix-org#6232), [\matrix-org#6235](matrix-org#6235))
- Delete keys from key backup when deleting backup versions. ([\matrix-org#6253](matrix-org#6253))
- Make notification of cross-signing signatures work with workers. ([\matrix-org#6254](matrix-org#6254))
- Fix exception when remote servers attempt to join a room that they're not allowed to join. ([\matrix-org#6278](matrix-org#6278))
- Prevent errors from appearing on Synapse startup if `git` is not installed. ([\matrix-org#6284](matrix-org#6284))
- Appservice requests will no longer contain a double slash prefix when the appservice url provided ends in a slash. ([\matrix-org#6306](matrix-org#6306))
- Fix `/purge_room` admin API. ([\matrix-org#6307](matrix-org#6307))
- Fix the `hidden` field in the `devices` table for SQLite versions prior to 3.23.0. ([\matrix-org#6313](matrix-org#6313))
- Fix bug which casued rejected events to be persisted with the wrong room state. ([\matrix-org#6320](matrix-org#6320))
- Fix bug where `rc_login` ratelimiting would prematurely kick in. ([\matrix-org#6335](matrix-org#6335))
- Prevent the server taking a long time to start up when guest registration is enabled. ([\matrix-org#6338](matrix-org#6338))
- Fix bug where upgrading a guest account to a full user would fail when account validity is enabled. ([\matrix-org#6359](matrix-org#6359))
- Fix `to_device` stream ID getting reset every time Synapse restarts, which had the potential to cause unable to decrypt errors. ([\matrix-org#6363](matrix-org#6363))
- Fix permission denied error when trying to generate a config file with the docker image. ([\matrix-org#6389](matrix-org#6389))

Improved Documentation
----------------------

- Contributor documentation now mentions script to run linters. ([\matrix-org#6164](matrix-org#6164))
- Modify CAPTCHA_SETUP.md to update the terms `private key` and `public key` to `secret key` and `site key` respectively. Contributed by Yash Jipkate. ([\matrix-org#6257](matrix-org#6257))
- Update `INSTALL.md` Email section to talk about `account_threepid_delegates`. ([\matrix-org#6272](matrix-org#6272))
- Fix a small typo in `account_threepid_delegates` configuration option. ([\matrix-org#6273](matrix-org#6273))

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

- Add a CI job to test the `synapse_port_db` script. ([\matrix-org#6140](matrix-org#6140), [\matrix-org#6276](matrix-org#6276))
- Convert EventContext to an attrs. ([\matrix-org#6218](matrix-org#6218))
- Move `persist_events` out from main data store. ([\matrix-org#6240](matrix-org#6240), [\matrix-org#6300](matrix-org#6300))
- Reduce verbosity of user/room stats. ([\matrix-org#6250](matrix-org#6250))
- Reduce impact of debug logging. ([\matrix-org#6251](matrix-org#6251))
- Expose some homeserver functionality to spam checkers. ([\matrix-org#6259](matrix-org#6259))
- Change cache descriptors to always return deferreds. ([\matrix-org#6263](matrix-org#6263), [\matrix-org#6291](matrix-org#6291))
- Fix incorrect comment regarding the functionality of an `if` statement. ([\matrix-org#6269](matrix-org#6269))
- Update CI to run `isort` over the `scripts` and `scripts-dev` directories. ([\matrix-org#6270](matrix-org#6270))
- Replace every instance of `logger.warn` method with `logger.warning` as the former is deprecated. ([\matrix-org#6271](matrix-org#6271), [\matrix-org#6314](matrix-org#6314))
- Port replication http server endpoints to async/await. ([\matrix-org#6274](matrix-org#6274))
- Port room rest handlers to async/await. ([\matrix-org#6275](matrix-org#6275))
- Remove redundant CLI parameters on CI's `flake8` step. ([\matrix-org#6277](matrix-org#6277))
- Port `federation_server.py` to async/await. ([\matrix-org#6279](matrix-org#6279))
- Port receipt and read markers to async/wait. ([\matrix-org#6280](matrix-org#6280))
- Split out state storage into separate data store. ([\matrix-org#6294](matrix-org#6294), [\matrix-org#6295](matrix-org#6295))
- Refactor EventContext for clarity. ([\matrix-org#6298](matrix-org#6298))
- Update the version of black used to 19.10b0. ([\matrix-org#6304](matrix-org#6304))
- Add some documentation about worker replication. ([\matrix-org#6305](matrix-org#6305))
- Move admin endpoints into separate files. Contributed by Awesome Technologies Innovationslabor GmbH. ([\matrix-org#6308](matrix-org#6308))
- Document the use of `lint.sh` for code style enforcement & extend it to run on specified paths only. ([\matrix-org#6312](matrix-org#6312))
- Add optional python dependencies and dependant binary libraries to snapcraft packaging. ([\matrix-org#6317](matrix-org#6317))
- Remove the dependency on psutil and replace functionality with the stdlib `resource` module. ([\matrix-org#6318](matrix-org#6318), [\matrix-org#6336](matrix-org#6336))
- Improve documentation for EventContext fields. ([\matrix-org#6319](matrix-org#6319))
- Add some checks that we aren't using state from rejected events. ([\matrix-org#6330](matrix-org#6330))
- Add continuous integration for python 3.8. ([\matrix-org#6341](matrix-org#6341))
- Correct spacing/case of various instances of the word "homeserver". ([\matrix-org#6357](matrix-org#6357))
- Temporarily blacklist the failing unit test PurgeRoomTestCase.test_purge_room. ([\matrix-org#6361](matrix-org#6361))

v1.6.0rc2

Toggle v1.6.0rc2's commit message

Verified

This tag was signed with the committer’s verified signature. The key has expired.
richvdh Richard van der Hoff
Synapse 1.6.0rc2 (2019-11-25)

=============================

Bugfixes
--------

- Fix a bug which could cause the background database update hander for event labels to get stuck in a loop raising exceptions. ([\matrix-org#6407](matrix-org#6407))

v1.6.0rc1

Toggle v1.6.0rc1's commit message

Verified

This tag was signed with the committer’s verified signature. The key has expired.
anoadragon453 Andrew Morgan
Synapse 1.6.0rc1 (2019-11-20)

=============================

Features
--------

- Add federation support for cross-signing. ([\matrix-org#5727](matrix-org#5727))
- Increase default room version from 4 to 5, thereby enforcing server key validity period checks. ([\matrix-org#6220](matrix-org#6220))
- Add support for outbound http proxying via http_proxy/HTTPS_PROXY env vars. ([\matrix-org#6238](matrix-org#6238))
- Implement label-based filtering on `/sync` and `/messages` ([MSC2326](matrix-org/matrix-spec-proposals#2326)). ([\matrix-org#6301](matrix-org#6301), [\matrix-org#6310](matrix-org#6310), [\matrix-org#6340](matrix-org#6340))

Bugfixes
--------

- Fix LruCache callback deduplication for Python 3.8. Contributed by @V02460. ([\matrix-org#6213](matrix-org#6213))
- Remove a room from a server's public rooms list on room upgrade. ([\matrix-org#6232](matrix-org#6232), [\matrix-org#6235](matrix-org#6235))
- Delete keys from key backup when deleting backup versions. ([\matrix-org#6253](matrix-org#6253))
- Make notification of cross-signing signatures work with workers. ([\matrix-org#6254](matrix-org#6254))
- Fix exception when remote servers attempt to join a room that they're not allowed to join. ([\matrix-org#6278](matrix-org#6278))
- Prevent errors from appearing on Synapse startup if `git` is not installed. ([\matrix-org#6284](matrix-org#6284))
- Appservice requests will no longer contain a double slash prefix when the appservice url provided ends in a slash. ([\matrix-org#6306](matrix-org#6306))
- Fix `/purge_room` admin API. ([\matrix-org#6307](matrix-org#6307))
- Fix the `hidden` field in the `devices` table for SQLite versions prior to 3.23.0. ([\matrix-org#6313](matrix-org#6313))
- Fix bug which casued rejected events to be persisted with the wrong room state. ([\matrix-org#6320](matrix-org#6320))
- Fix bug where `rc_login` ratelimiting would prematurely kick in. ([\matrix-org#6335](matrix-org#6335))
- Prevent the server taking a long time to start up when guest registration is enabled. ([\matrix-org#6338](matrix-org#6338))
- Fix bug where upgrading a guest account to a full user would fail when account validity is enabled. ([\matrix-org#6359](matrix-org#6359))
- Fix `to_device` stream ID getting reset every time Synapse restarts, which had the potential to cause unable to decrypt errors. ([\matrix-org#6363](matrix-org#6363))
- Fix permission denied error when trying to generate a config file with the docker image. ([\matrix-org#6389](matrix-org#6389))

Improved Documentation
----------------------

- Contributor documentation now mentions script to run linters. ([\matrix-org#6164](matrix-org#6164))
- Modify CAPTCHA_SETUP.md to update the terms `private key` and `public key` to `secret key` and `site key` respectively. Contributed by Yash Jipkate. ([\matrix-org#6257](matrix-org#6257))
- Update `INSTALL.md` Email section to talk about `account_threepid_delegates`. ([\matrix-org#6272](matrix-org#6272))
- Fix a small typo in `account_threepid_delegates` configuration option. ([\matrix-org#6273](matrix-org#6273))

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

- Add a CI job to test the `synapse_port_db` script. ([\matrix-org#6140](matrix-org#6140), [\matrix-org#6276](matrix-org#6276))
- Convert EventContext to an attrs. ([\matrix-org#6218](matrix-org#6218))
- Move `persist_events` out from main data store. ([\matrix-org#6240](matrix-org#6240), [\matrix-org#6300](matrix-org#6300))
- Reduce verbosity of user/room stats. ([\matrix-org#6250](matrix-org#6250))
- Reduce impact of debug logging. ([\matrix-org#6251](matrix-org#6251))
- Expose some homeserver functionality to spam checkers. ([\matrix-org#6259](matrix-org#6259))
- Change cache descriptors to always return deferreds. ([\matrix-org#6263](matrix-org#6263), [\matrix-org#6291](matrix-org#6291))
- Fix incorrect comment regarding the functionality of an `if` statement. ([\matrix-org#6269](matrix-org#6269))
- Update CI to run `isort` over the `scripts` and `scripts-dev` directories. ([\matrix-org#6270](matrix-org#6270))
- Replace every instance of `logger.warn` method with `logger.warning` as the former is deprecated. ([\matrix-org#6271](matrix-org#6271), [\matrix-org#6314](matrix-org#6314))
- Port replication http server endpoints to async/await. ([\matrix-org#6274](matrix-org#6274))
- Port room rest handlers to async/await. ([\matrix-org#6275](matrix-org#6275))
- Remove redundant CLI parameters on CI's `flake8` step. ([\matrix-org#6277](matrix-org#6277))
- Port `federation_server.py` to async/await. ([\matrix-org#6279](matrix-org#6279))
- Port receipt and read markers to async/wait. ([\matrix-org#6280](matrix-org#6280))
- Split out state storage into separate data store. ([\matrix-org#6294](matrix-org#6294), [\matrix-org#6295](matrix-org#6295))
- Refactor EventContext for clarity. ([\matrix-org#6298](matrix-org#6298))
- Update the version of black used to 19.10b0. ([\matrix-org#6304](matrix-org#6304))
- Add some documentation about worker replication. ([\matrix-org#6305](matrix-org#6305))
- Move admin endpoints into separate files. Contributed by Awesome Technologies Innovationslabor GmbH. ([\matrix-org#6308](matrix-org#6308))
- Document the use of `lint.sh` for code style enforcement & extend it to run on specified paths only. ([\matrix-org#6312](matrix-org#6312))
- Add optional python dependencies and dependant binary libraries to snapcraft packaging. ([\matrix-org#6317](matrix-org#6317))
- Remove the dependency on psutil and replace functionality with the stdlib `resource` module. ([\matrix-org#6318](matrix-org#6318), [\matrix-org#6336](matrix-org#6336))
- Improve documentation for EventContext fields. ([\matrix-org#6319](matrix-org#6319))
- Add some checks that we aren't using state from rejected events. ([\matrix-org#6330](matrix-org#6330))
- Add continuous integration for python 3.8. ([\matrix-org#6341](matrix-org#6341))
- Correct spacing/case of various instances of the word "homeserver". ([\matrix-org#6357](matrix-org#6357))
- Temporarily blacklist the failing unit test PurgeRoomTestCase.test_purge_room. ([\matrix-org#6361](matrix-org#6361))

v1.5.1_modular_device_hotfix

Toggle v1.5.1_modular_device_hotfix's commit message

Verified

This tag was signed with the committer’s verified signature. The key has expired.
anoadragon453 Andrew Morgan
Release v1.5.1 with synapse#6363 merged in.

v1.5.1

Toggle v1.5.1's commit message

Verified

This tag was signed with the committer’s verified signature. The key has expired.
richvdh Richard van der Hoff
Synapse 1.5.1 (2019-11-06)

==========================

Features
--------

- Limit the length of data returned by url previews, to prevent DoS attacks. ([\matrix-org#6331](matrix-org#6331), [\matrix-org#6334](matrix-org#6334))

v1.5.0

Toggle v1.5.0's commit message

Verified

This tag was signed with the committer’s verified signature. The key has expired.
richvdh Richard van der Hoff
Synapse 1.5.0 (2019-10-29)

==========================

Security updates
----------------

This release includes a security fix ([\matrix-org#6262](matrix-org#6262), below). Administrators are encouraged to upgrade as soon as possible.

Bugfixes
--------

- Fix bug where room directory search was case sensitive. ([\matrix-org#6268](matrix-org#6268))

Synapse 1.5.0rc2 (2019-10-28)
=============================

Bugfixes
--------

- Update list of boolean columns in `synapse_port_db`. ([\matrix-org#6247](matrix-org#6247))
- Fix /keys/query API on workers. ([\matrix-org#6256](matrix-org#6256))
- Improve signature checking on some federation APIs. ([\matrix-org#6262](matrix-org#6262))

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

- Move schema delta files to the correct data store. ([\matrix-org#6248](matrix-org#6248))
- Small performance improvement by removing repeated config lookups in room stats calculation. ([\matrix-org#6255](matrix-org#6255))

Synapse 1.5.0rc1 (2019-10-24)
==========================

Features
--------

- Improve quality of thumbnails for 1-bit/8-bit color palette images. ([\matrix-org#2142](matrix-org#2142))
- Add ability to upload cross-signing signatures. ([\matrix-org#5726](matrix-org#5726))
- Allow uploading of cross-signing keys. ([\matrix-org#5769](matrix-org#5769))
- CAS login now provides a default display name for users if a `displayname_attribute` is set in the configuration file. ([\matrix-org#6114](matrix-org#6114))
- Reject all pending invites for a user during deactivation. ([\matrix-org#6125](matrix-org#6125))
- Add config option to suppress client side resource limit alerting. ([\matrix-org#6173](matrix-org#6173))

Bugfixes
--------

- Return an HTTP 404 instead of 400 when requesting a filter by ID that is unknown to the server. Thanks to @krombel for contributing this! ([\matrix-org#2380](matrix-org#2380))
- Fix a bug where users could be invited twice to the same group. ([\matrix-org#3436](matrix-org#3436))
- Fix `/createRoom` failing with badly-formatted MXIDs in the invitee list. Thanks to @wener291! ([\matrix-org#4088](matrix-org#4088))
- Make the `synapse_port_db` script create the right indexes on a new PostgreSQL database. ([\matrix-org#6102](matrix-org#6102), [\matrix-org#6178](matrix-org#6178), [\matrix-org#6243](matrix-org#6243))
- Fix bug when uploading a large file: Synapse responds with `M_UNKNOWN` while it should be `M_TOO_LARGE` according to spec. Contributed by Anshul Angaria. ([\matrix-org#6109](matrix-org#6109))
- Fix user push rules being deleted from a room when it is upgraded. ([\matrix-org#6144](matrix-org#6144))
- Don't 500 when trying to exchange a revoked 3PID invite. ([\matrix-org#6147](matrix-org#6147))
- Fix transferring notifications and tags when joining an upgraded room that is new to your server. ([\matrix-org#6155](matrix-org#6155))
- Fix bug where guest account registration can wedge after restart. ([\matrix-org#6161](matrix-org#6161))
- Fix monthly active user reaping when reserved users are specified. ([\matrix-org#6168](matrix-org#6168))
- Fix `/federation/v1/state` endpoint not supporting newer room versions. ([\matrix-org#6170](matrix-org#6170))
- Fix bug where we were updating censored events as bytes rather than text, occaisonally causing invalid JSON being inserted breaking APIs that attempted to fetch such events. ([\matrix-org#6186](matrix-org#6186))
- Fix occasional missed updates in the room and user directories. ([\matrix-org#6187](matrix-org#6187))
- Fix tracing of non-JSON APIs, `/media`, `/key` etc. ([\matrix-org#6195](matrix-org#6195))
- Fix bug where presence would not get timed out correctly if a synchrotron worker is used and restarted. ([\matrix-org#6212](matrix-org#6212))
- synapse_port_db: Add 2 additional BOOLEAN_COLUMNS to be able to convert from database schema v56. ([\matrix-org#6216](matrix-org#6216))
- Fix a bug where the Synapse demo script blacklisted `::1` (ipv6 localhost) from receiving federation traffic. ([\matrix-org#6229](matrix-org#6229))

Updates to the Docker image
---------------------------

- Fix logging getting lost for the docker image. ([\matrix-org#6197](matrix-org#6197))

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

- Update `user_filters` table to have a unique index, and non-null columns. Thanks to @pik for contributing this. ([\matrix-org#1172](matrix-org#1172), [\matrix-org#6175](matrix-org#6175), [\matrix-org#6184](matrix-org#6184))
- Allow devices to be marked as hidden, for use by features such as cross-signing.
  This adds a new field with a default value to the devices field in the database,
  and so the database upgrade may take a long time depending on how many devices
  are in the database. ([\matrix-org#5759](matrix-org#5759))
- Move lookup-related functions from RoomMemberHandler to IdentityHandler. ([\matrix-org#5978](matrix-org#5978))
- Improve performance of the public room list directory. ([\matrix-org#6019](matrix-org#6019), [\matrix-org#6152](matrix-org#6152), [\matrix-org#6153](matrix-org#6153), [\matrix-org#6154](matrix-org#6154))
- Edit header dicts docstrings in `SimpleHttpClient` to note that `str` or `bytes` can be passed as header keys. ([\matrix-org#6077](matrix-org#6077))
- Add snapcraft packaging information. Contributed by @devec0. ([\matrix-org#6084](matrix-org#6084), [\matrix-org#6191](matrix-org#6191))
- Kill off half-implemented password-reset via sms. ([\matrix-org#6101](matrix-org#6101))
- Remove `get_user_by_req` opentracing span and add some tags. ([\matrix-org#6108](matrix-org#6108))
- Drop some unused database tables. ([\matrix-org#6115](matrix-org#6115))
- Add env var to turn on tracking of log context changes. ([\matrix-org#6127](matrix-org#6127))
- Refactor configuration loading to allow better typechecking. ([\matrix-org#6137](matrix-org#6137))
- Log responder when responding to media request. ([\matrix-org#6139](matrix-org#6139))
- Improve performance of `find_next_generated_user_id` DB query. ([\matrix-org#6148](matrix-org#6148))
- Expand type-checking on modules imported by `synapse.config`. ([\matrix-org#6150](matrix-org#6150))
- Use Postgres ANY for selecting many values. ([\matrix-org#6156](matrix-org#6156))
- Add more caching to `_get_joined_users_from_context` DB query. ([\matrix-org#6159](matrix-org#6159))
- Add some metrics on the federation sender. ([\matrix-org#6160](matrix-org#6160))
- Add some logging to the rooms stats updates, to try to track down a flaky test. ([\matrix-org#6167](matrix-org#6167))
- Remove unused `timeout` parameter from `_get_public_room_list`. ([\matrix-org#6179](matrix-org#6179))
- Reject (accidental) attempts to insert bytes into postgres tables. ([\matrix-org#6186](matrix-org#6186))
- Make `version` optional in body of `PUT /room_keys/version/{version}`, since it's redundant. ([\matrix-org#6189](matrix-org#6189))
- Make storage layer responsible for adding device names to key, rather than the handler. ([\matrix-org#6193](matrix-org#6193))
- Port `synapse.rest.admin` module to use async/await. ([\matrix-org#6196](matrix-org#6196))
- Enforce that all boolean configuration values are lowercase in CI. ([\matrix-org#6203](matrix-org#6203))
- Remove some unused event-auth code. ([\matrix-org#6214](matrix-org#6214))
- Remove `Auth.check` method. ([\matrix-org#6217](matrix-org#6217))
- Remove `format_tap.py` script in favour of a perl reimplementation in Sytest's repo. ([\matrix-org#6219](matrix-org#6219))
- Refactor storage layer in preparation to support having multiple databases. ([\matrix-org#6231](matrix-org#6231))
- Remove some extra quotation marks across the codebase. ([\matrix-org#6236](matrix-org#6236))