diff --git a/CHANGES.md b/CHANGES.md index 3f0c5685ea20dd83c33e904cf4a522f448c6c325..238eb8a4edbc8cca0b3461289a059ff337d604fd 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,3 +1,73 @@ +Synapse 1.30.0rc1 (2021-03-16) +============================== + +Features +-------- + +- Add prometheus metrics for number of users successfully registering and logging in. ([\#9510](https://github.com/matrix-org/synapse/issues/9510), [\#9511](https://github.com/matrix-org/synapse/issues/9511), [\#9573](https://github.com/matrix-org/synapse/issues/9573)) +- Add `synapse_federation_last_sent_pdu_time` and `synapse_federation_last_received_pdu_time` prometheus metrics, which monitor federation delays by reporting the timestamps of messages sent and received to a set of remote servers. ([\#9540](https://github.com/matrix-org/synapse/issues/9540)) +- Add support for generating JSON Web Tokens dynamically for use as OIDC client secrets. ([\#9549](https://github.com/matrix-org/synapse/issues/9549)) +- Optimise handling of incomplete room history for incoming federation. ([\#9601](https://github.com/matrix-org/synapse/issues/9601)) +- Finalise support for allowing clients to pick an SSO Identity Provider ([MSC2858](https://github.com/matrix-org/matrix-doc/pull/2858)). ([\#9617](https://github.com/matrix-org/synapse/issues/9617)) +- Tell spam checker modules about the SSO IdP a user registered through if one was used. ([\#9626](https://github.com/matrix-org/synapse/issues/9626)) + + +Bugfixes +-------- + +- Fix long-standing bug when generating thumbnails for some images with transparency: `TypeError: cannot unpack non-iterable int object`. ([\#9473](https://github.com/matrix-org/synapse/issues/9473)) +- Purge chain cover indexes for events that were purged prior to Synapse v1.29.0. ([\#9542](https://github.com/matrix-org/synapse/issues/9542), [\#9583](https://github.com/matrix-org/synapse/issues/9583)) +- Fix bug where federation requests were not correctly retried on 5xx responses. ([\#9567](https://github.com/matrix-org/synapse/issues/9567)) +- Re-Activating account with admin API when local passwords are disabled. ([\#9587](https://github.com/matrix-org/synapse/issues/9587)) +- Fix a bug introduced in Synapse 1.20 which caused incoming federation transactions to stack up, causing slow recovery from outages. ([\#9597](https://github.com/matrix-org/synapse/issues/9597)) +- Fix a bug introduced in v1.28.0 where the OpenID Connect callback endpoint could error with a `MacaroonInitException`. ([\#9620](https://github.com/matrix-org/synapse/issues/9620)) +- Fix Internal Server Error on `GET /_synapse/client/saml2/authn_response` request. ([\#9623](https://github.com/matrix-org/synapse/issues/9623)) + + +Updates to the Docker image +--------------------------- + +- Use jemalloc if available in docker. ([\#8553](https://github.com/matrix-org/synapse/issues/8553)) + + +Improved Documentation +---------------------- + +- Add relayd entry to reverse proxy example configurations. ([\#9508](https://github.com/matrix-org/synapse/issues/9508)) +- Improve the SAML2 upgrade notes for 1.27.0. ([\#9550](https://github.com/matrix-org/synapse/issues/9550)) +- Link to the "List user's media" admin API from the media admin API docs. ([\#9571](https://github.com/matrix-org/synapse/issues/9571)) +- Clarify the spam checker modules documentation example to mention that `parse_config` is a required method. ([\#9580](https://github.com/matrix-org/synapse/issues/9580)) +- Clarify the sample configuration for `stats` settings. ([\#9604](https://github.com/matrix-org/synapse/issues/9604)) + + +Deprecations and Removals +------------------------- + +- The `synapse_federation_last_sent_pdu_age` and `synapse_federation_last_received_pdu_age` prometheus metrics have been removed. They are replaced by `synapse_federation_last_sent_pdu_time` and `synapse_federation_last_received_pdu_time`. ([\#9540](https://github.com/matrix-org/synapse/issues/9540)) +- Registering an Application Service user without using the `m.login.application_service` login type will be unsupported in an upcoming Synapse release. ([\#9559](https://github.com/matrix-org/synapse/issues/9559)) + + +Internal Changes +---------------- + +- Add tests to ResponseCache. ([\#9458](https://github.com/matrix-org/synapse/issues/9458)) +- Add type hints to purge room and server notice admin API. ([\#9520](https://github.com/matrix-org/synapse/issues/9520)) +- Add extra logging to ObservableDeferred when callbacks throw exceptions. ([\#9523](https://github.com/matrix-org/synapse/issues/9523)) +- Fix incorrect type hints. ([\#9528](https://github.com/matrix-org/synapse/issues/9528), [\#9543](https://github.com/matrix-org/synapse/issues/9543), [\#9591](https://github.com/matrix-org/synapse/issues/9591), [\#9608](https://github.com/matrix-org/synapse/issues/9608), [\#9618](https://github.com/matrix-org/synapse/issues/9618)) +- Add an additional test for purging a room. ([\#9541](https://github.com/matrix-org/synapse/issues/9541)) +- Add a `.git-blame-ignore-revs` file with the hashes of auto-formatting. ([\#9560](https://github.com/matrix-org/synapse/issues/9560)) +- Increase the threshold before which outbound federation to a server goes into "catch up" mode, which is expensive for the remote server to handle. ([\#9561](https://github.com/matrix-org/synapse/issues/9561)) +- Fix spurious errors reported by the `config-lint.sh` script. ([\#9562](https://github.com/matrix-org/synapse/issues/9562)) +- Fix type hints and tests for BlacklistingAgentWrapper and BlacklistingReactorWrapper. ([\#9563](https://github.com/matrix-org/synapse/issues/9563)) +- Do not have mypy ignore type hints from unpaddedbase64. ([\#9568](https://github.com/matrix-org/synapse/issues/9568)) +- Improve efficiency of calculating the auth chain in large rooms. ([\#9576](https://github.com/matrix-org/synapse/issues/9576)) +- Convert `synapse.types.Requester` to an `attrs` class. ([\#9586](https://github.com/matrix-org/synapse/issues/9586)) +- Add logging for redis connection setup. ([\#9590](https://github.com/matrix-org/synapse/issues/9590)) +- Improve logging when processing incoming transactions. ([\#9596](https://github.com/matrix-org/synapse/issues/9596)) +- Remove unused `stats.retention` setting, and emit a warning if stats are disabled. ([\#9604](https://github.com/matrix-org/synapse/issues/9604)) +- Prevent attempting to bundle aggregations for state events in /context APIs. ([\#9619](https://github.com/matrix-org/synapse/issues/9619)) + + Removal warning --------------- diff --git a/changelog.d/8553.docker b/changelog.d/8553.docker deleted file mode 100644 index f99c4207b806e990fcf2f4190e26cf56be1dae82..0000000000000000000000000000000000000000 --- a/changelog.d/8553.docker +++ /dev/null @@ -1 +0,0 @@ -Use jemalloc if available in docker. diff --git a/changelog.d/9458.misc b/changelog.d/9458.misc deleted file mode 100644 index 8ceeed1352e5a02b2c25d30e457358efb2e19db6..0000000000000000000000000000000000000000 --- a/changelog.d/9458.misc +++ /dev/null @@ -1 +0,0 @@ -Add tests to ResponseCache. \ No newline at end of file diff --git a/changelog.d/9473.bugfix b/changelog.d/9473.bugfix deleted file mode 100644 index 71fb487cf2c0d7110140dfc18bbcd3045b6b7813..0000000000000000000000000000000000000000 --- a/changelog.d/9473.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fix long-standing bug when generating thumbnails for some images with transparency: `TypeError: cannot unpack non-iterable int object`. diff --git a/changelog.d/9508.doc b/changelog.d/9508.doc deleted file mode 100644 index a17a8faecf73c4075ce96f4024c6e7f4c13ade55..0000000000000000000000000000000000000000 --- a/changelog.d/9508.doc +++ /dev/null @@ -1 +0,0 @@ -Add relayd entry to reverse proxy example configurations. diff --git a/changelog.d/9510.feature b/changelog.d/9510.feature deleted file mode 100644 index 5214b50d414c38ee45f1e65f669a6d693a5a19bc..0000000000000000000000000000000000000000 --- a/changelog.d/9510.feature +++ /dev/null @@ -1 +0,0 @@ -Add prometheus metrics for number of users successfully registering and logging in. diff --git a/changelog.d/9511.feature b/changelog.d/9511.feature deleted file mode 100644 index 5214b50d414c38ee45f1e65f669a6d693a5a19bc..0000000000000000000000000000000000000000 --- a/changelog.d/9511.feature +++ /dev/null @@ -1 +0,0 @@ -Add prometheus metrics for number of users successfully registering and logging in. diff --git a/changelog.d/9520.misc b/changelog.d/9520.misc deleted file mode 100644 index 825ba5bbc1d996c122a878572a6a0c156ac50df5..0000000000000000000000000000000000000000 --- a/changelog.d/9520.misc +++ /dev/null @@ -1 +0,0 @@ -Add type hints to purge room and server notice admin API. \ No newline at end of file diff --git a/changelog.d/9523.misc b/changelog.d/9523.misc deleted file mode 100644 index f03e939efb2ead728188fb6edb62671b5ff5d6c1..0000000000000000000000000000000000000000 --- a/changelog.d/9523.misc +++ /dev/null @@ -1 +0,0 @@ -Add extra logging to ObservableDeferred when callbacks throw exceptions. \ No newline at end of file diff --git a/changelog.d/9528.misc b/changelog.d/9528.misc deleted file mode 100644 index 14c7b78dd97e08e06093384ad5d609e6cc0c3947..0000000000000000000000000000000000000000 --- a/changelog.d/9528.misc +++ /dev/null @@ -1 +0,0 @@ -Fix incorrect type hints. diff --git a/changelog.d/9540.feature b/changelog.d/9540.feature deleted file mode 100644 index 5417e51b93eb77036e7522f8ce3b3cc9b4b0dc90..0000000000000000000000000000000000000000 --- a/changelog.d/9540.feature +++ /dev/null @@ -1 +0,0 @@ -Add `synapse_federation_last_sent_pdu_time` and `synapse_federation_last_received_pdu_time` prometheus metrics, which monitor federation delays by reporting the timestamps of messages sent and received to a set of remote servers. diff --git a/changelog.d/9540.removal b/changelog.d/9540.removal deleted file mode 100644 index d54f553cb9b92bbb13b68336fc8c140ca9b1266f..0000000000000000000000000000000000000000 --- a/changelog.d/9540.removal +++ /dev/null @@ -1 +0,0 @@ -The `synapse_federation_last_sent_pdu_age` and `synapse_federation_last_received_pdu_age` prometheus metrics have been removed. They are replaced by `synapse_federation_last_sent_pdu_time` and `synapse_federation_last_received_pdu_time`. diff --git a/changelog.d/9541.misc b/changelog.d/9541.misc deleted file mode 100644 index a82bef3431681aee895d8eb95271b16b88ce7e83..0000000000000000000000000000000000000000 --- a/changelog.d/9541.misc +++ /dev/null @@ -1 +0,0 @@ -Add an additional test for purging a room. diff --git a/changelog.d/9542.bugfix b/changelog.d/9542.bugfix deleted file mode 100644 index 51b1876f3b61ccc6d38fa4c37e9ca2dd67024723..0000000000000000000000000000000000000000 --- a/changelog.d/9542.bugfix +++ /dev/null @@ -1 +0,0 @@ -Purge chain cover indexes for events that were purged prior to Synapse v1.29.0. diff --git a/changelog.d/9543.misc b/changelog.d/9543.misc deleted file mode 100644 index 14c7b78dd97e08e06093384ad5d609e6cc0c3947..0000000000000000000000000000000000000000 --- a/changelog.d/9543.misc +++ /dev/null @@ -1 +0,0 @@ -Fix incorrect type hints. diff --git a/changelog.d/9549.feature b/changelog.d/9549.feature deleted file mode 100644 index 709e61eced8e9c4c14049ff782f436409b475423..0000000000000000000000000000000000000000 --- a/changelog.d/9549.feature +++ /dev/null @@ -1 +0,0 @@ -Add support for generating JSON Web Tokens dynamically for use as OIDC client secrets. diff --git a/changelog.d/9550.doc b/changelog.d/9550.doc deleted file mode 100644 index adbbeb0ae4373a57b7c8a2adfdfd30e9c036a4c0..0000000000000000000000000000000000000000 --- a/changelog.d/9550.doc +++ /dev/null @@ -1 +0,0 @@ -Improve the SAML2 upgrade notes for 1.27.0. diff --git a/changelog.d/9559.removal b/changelog.d/9559.removal deleted file mode 100644 index f97bf56dc03f55f73f294dca318ebef89d7f706c..0000000000000000000000000000000000000000 --- a/changelog.d/9559.removal +++ /dev/null @@ -1 +0,0 @@ -Registering an Application Service user without using the `m.login.application_service` login type will be unsupported in an upcoming Synapse release. diff --git a/changelog.d/9560.misc b/changelog.d/9560.misc deleted file mode 100644 index 57a698f846e851ed99dfdc88dd566922ae4cf47c..0000000000000000000000000000000000000000 --- a/changelog.d/9560.misc +++ /dev/null @@ -1 +0,0 @@ -Add a `.git-blame-ignore-revs` file with the hashes of auto-formatting. diff --git a/changelog.d/9561.misc b/changelog.d/9561.misc deleted file mode 100644 index 6c529a82eeb066bdc57ffeded12d2c0b29543818..0000000000000000000000000000000000000000 --- a/changelog.d/9561.misc +++ /dev/null @@ -1 +0,0 @@ -Increase the threshold before which outbound federation to a server goes into "catch up" mode, which is expensive for the remote server to handle. diff --git a/changelog.d/9562.misc b/changelog.d/9562.misc deleted file mode 100644 index 2f0133bff0b28fc7cf331f24d925cf981ca9f10e..0000000000000000000000000000000000000000 --- a/changelog.d/9562.misc +++ /dev/null @@ -1 +0,0 @@ -Fix spurious errors reported by the `config-lint.sh` script. \ No newline at end of file diff --git a/changelog.d/9563.misc b/changelog.d/9563.misc deleted file mode 100644 index 7a3493e4a166dd5871924d541c67342b837ec21c..0000000000000000000000000000000000000000 --- a/changelog.d/9563.misc +++ /dev/null @@ -1 +0,0 @@ -Fix type hints and tests for BlacklistingAgentWrapper and BlacklistingReactorWrapper. diff --git a/changelog.d/9567.bugfix b/changelog.d/9567.bugfix deleted file mode 100644 index e7322c2b5e631a3e2f54a43ff9790f6d06d971f5..0000000000000000000000000000000000000000 --- a/changelog.d/9567.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fix bug where federation requests were not correctly retried on 5xx responses. diff --git a/changelog.d/9568.misc b/changelog.d/9568.misc deleted file mode 100644 index 561963de9349abd3d32f8dd39683c83743bd81f0..0000000000000000000000000000000000000000 --- a/changelog.d/9568.misc +++ /dev/null @@ -1 +0,0 @@ -Do not have mypy ignore type hints from unpaddedbase64. diff --git a/changelog.d/9571.doc b/changelog.d/9571.doc deleted file mode 100644 index 1bba72e7d05f32a0cb585df67cd66a4548b10201..0000000000000000000000000000000000000000 --- a/changelog.d/9571.doc +++ /dev/null @@ -1 +0,0 @@ -Link to the "List user's media" admin API from the media admin API docs. diff --git a/changelog.d/9573.feature b/changelog.d/9573.feature deleted file mode 100644 index 5214b50d414c38ee45f1e65f669a6d693a5a19bc..0000000000000000000000000000000000000000 --- a/changelog.d/9573.feature +++ /dev/null @@ -1 +0,0 @@ -Add prometheus metrics for number of users successfully registering and logging in. diff --git a/changelog.d/9576.misc b/changelog.d/9576.misc deleted file mode 100644 index bc257d05b7443e05e458be9861a9ddae96ee4867..0000000000000000000000000000000000000000 --- a/changelog.d/9576.misc +++ /dev/null @@ -1 +0,0 @@ -Improve efficiency of calculating the auth chain in large rooms. diff --git a/changelog.d/9580.doc b/changelog.d/9580.doc deleted file mode 100644 index f9c8b328b32d2f922c0286c7f833017780c6e595..0000000000000000000000000000000000000000 --- a/changelog.d/9580.doc +++ /dev/null @@ -1 +0,0 @@ -Clarify the spam checker modules documentation example to mention that `parse_config` is a required method. diff --git a/changelog.d/9583.bugfix b/changelog.d/9583.bugfix deleted file mode 100644 index 51b1876f3b61ccc6d38fa4c37e9ca2dd67024723..0000000000000000000000000000000000000000 --- a/changelog.d/9583.bugfix +++ /dev/null @@ -1 +0,0 @@ -Purge chain cover indexes for events that were purged prior to Synapse v1.29.0. diff --git a/changelog.d/9586.misc b/changelog.d/9586.misc deleted file mode 100644 index 2def9d5f555cd13ba5ba13e4cc8e9d9391dcf319..0000000000000000000000000000000000000000 --- a/changelog.d/9586.misc +++ /dev/null @@ -1 +0,0 @@ -Convert `synapse.types.Requester` to an `attrs` class. diff --git a/changelog.d/9587.bugfix b/changelog.d/9587.bugfix deleted file mode 100644 index d8f04c4f21142742df089f49bed3838cc3dab632..0000000000000000000000000000000000000000 --- a/changelog.d/9587.bugfix +++ /dev/null @@ -1 +0,0 @@ -Re-Activating account with admin API when local passwords are disabled. \ No newline at end of file diff --git a/changelog.d/9590.misc b/changelog.d/9590.misc deleted file mode 100644 index 186396c45bfe5d8348d68570807c82f20206745e..0000000000000000000000000000000000000000 --- a/changelog.d/9590.misc +++ /dev/null @@ -1 +0,0 @@ -Add logging for redis connection setup. diff --git a/changelog.d/9591.misc b/changelog.d/9591.misc deleted file mode 100644 index 14c7b78dd97e08e06093384ad5d609e6cc0c3947..0000000000000000000000000000000000000000 --- a/changelog.d/9591.misc +++ /dev/null @@ -1 +0,0 @@ -Fix incorrect type hints. diff --git a/changelog.d/9596.misc b/changelog.d/9596.misc deleted file mode 100644 index fc19a95f75323a696fc53454477b2c481ceae1f2..0000000000000000000000000000000000000000 --- a/changelog.d/9596.misc +++ /dev/null @@ -1 +0,0 @@ -Improve logging when processing incoming transactions. diff --git a/changelog.d/9597.bugfix b/changelog.d/9597.bugfix deleted file mode 100644 index 349dc9d664480e6ade10d1a983fb7781304c9d34..0000000000000000000000000000000000000000 --- a/changelog.d/9597.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fix a bug introduced in Synapse 1.20 which caused incoming federation transactions to stack up, causing slow recovery from outages. diff --git a/changelog.d/9601.feature b/changelog.d/9601.feature deleted file mode 100644 index 5078d63ffaa93be42205d172a302ab8e15ff45e1..0000000000000000000000000000000000000000 --- a/changelog.d/9601.feature +++ /dev/null @@ -1 +0,0 @@ -Optimise handling of incomplete room history for incoming federation. diff --git a/changelog.d/9604.doc b/changelog.d/9604.doc deleted file mode 100644 index d413e38b72778a1a6c9743372463682d5f2dad6a..0000000000000000000000000000000000000000 --- a/changelog.d/9604.doc +++ /dev/null @@ -1 +0,0 @@ -Clarify the sample configuration for `stats` settings. diff --git a/changelog.d/9604.misc b/changelog.d/9604.misc deleted file mode 100644 index 05839885883a2ebaffa449091bb46896ec63ee3e..0000000000000000000000000000000000000000 --- a/changelog.d/9604.misc +++ /dev/null @@ -1 +0,0 @@ -Remove unused `stats.retention` setting, and emit a warning if stats are disabled. diff --git a/changelog.d/9608.misc b/changelog.d/9608.misc deleted file mode 100644 index 14c7b78dd97e08e06093384ad5d609e6cc0c3947..0000000000000000000000000000000000000000 --- a/changelog.d/9608.misc +++ /dev/null @@ -1 +0,0 @@ -Fix incorrect type hints. diff --git a/changelog.d/9617.feature b/changelog.d/9617.feature deleted file mode 100644 index b462a32b924987357edc3b2c8556ad3ab4d1cc10..0000000000000000000000000000000000000000 --- a/changelog.d/9617.feature +++ /dev/null @@ -1 +0,0 @@ -Finalise support for allowing clients to pick an SSO Identity Provider ([MSC2858](https://github.com/matrix-org/matrix-doc/pull/2858)). diff --git a/changelog.d/9618.misc b/changelog.d/9618.misc deleted file mode 100644 index 14c7b78dd97e08e06093384ad5d609e6cc0c3947..0000000000000000000000000000000000000000 --- a/changelog.d/9618.misc +++ /dev/null @@ -1 +0,0 @@ -Fix incorrect type hints. diff --git a/changelog.d/9619.misc b/changelog.d/9619.misc deleted file mode 100644 index 50267bfbc472e1bbfb038c2d9bd717ea78a5faff..0000000000000000000000000000000000000000 --- a/changelog.d/9619.misc +++ /dev/null @@ -1 +0,0 @@ -Prevent attempting to bundle aggregations for state events in /context APIs. \ No newline at end of file diff --git a/changelog.d/9620.bugfix b/changelog.d/9620.bugfix deleted file mode 100644 index 427580f4adef7f513d21c647f4260e68cc8996f7..0000000000000000000000000000000000000000 --- a/changelog.d/9620.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fix a bug introduced in v1.28.0 where the OpenID Connect callback endpoint could error with a `MacaroonInitException`. diff --git a/changelog.d/9623.bugfix b/changelog.d/9623.bugfix deleted file mode 100644 index ecccb46105103ccaa901b0bfe66f9a0dae05ed51..0000000000000000000000000000000000000000 --- a/changelog.d/9623.bugfix +++ /dev/null @@ -1 +0,0 @@ -Fix Internal Server Error on `GET /_synapse/client/saml2/authn_response` request. diff --git a/changelog.d/9626.feature b/changelog.d/9626.feature deleted file mode 100644 index eacba6201b9c3b7a56d2b0ff40ffaedfc6824c0a..0000000000000000000000000000000000000000 --- a/changelog.d/9626.feature +++ /dev/null @@ -1 +0,0 @@ -Tell spam checker modules about the SSO IdP a user registered through if one was used. diff --git a/synapse/__init__.py b/synapse/__init__.py index 56ca888862b27383afccb91702d37ab0724ef1e8..88be7db1966d764d947b06af6724a9f850573234 100644 --- a/synapse/__init__.py +++ b/synapse/__init__.py @@ -48,7 +48,7 @@ try: except ImportError: pass -__version__ = "1.29.0" +__version__ = "1.30.0rc1" if bool(os.environ.get("SYNAPSE_TEST_PATCH_LOG_CONTEXTS", False)): # We import here so that we don't have to install a bunch of deps when