Skip to content

Releases: element-hq/synapse

v1.119.0

13 Nov 15:43
v1.119.0
Compare
Choose a tag to compare

Synapse 1.119.0 (2024-11-13)

No significant changes since 1.119.0rc2.

Python 3.8 support dropped

Python 3.8 is end-of-life and is no longer supported by Synapse. The minimum supported Python version is now 3.9.

If you are running Synapse with Python 3.8, please upgrade to Python 3.9 (or greater) before upgrading Synapse.

Synapse 1.119.0rc2 (2024-11-11)

Note that due to packaging issues there was no v1.119.0rc1.

Features

  • Support MSC4151's stable report room API. (#17374)
  • Add experimental support for MSC4222 (Adding state_after to sync v2). (#17888)

Bugfixes

  • Fix bug with sliding sync where $LAZY-loading room members would not return required_state membership in incremental syncs. (#17809)
  • Check if user has membership in a room before tagging it. Contributed by Lama Alosaimi. (#17839)
  • Fix a bug in the admin redact endpoint where the background task would not run if a worker was specified in
    the config option run_background_tasks_on. (#17847)
  • Fix bug where some presence and typing timeouts can expire early. (#17850)
  • Fix detection when the built Rust library was outdated when using source installations. (#17861)
  • Fix a long-standing bug in Synapse which could cause one-time keys to be issued in the incorrect order, causing message decryption failures. (#17903)
  • Fix experimental support for MSC4222 (Adding state_after to sync v2) where we would return the full state on incremental syncs when using lazy loaded members and there were no new events in the timeline. (#17915)

Internal Changes

  • Remove support for python 3.8. (#17908)
  • Add a test for downloading and thumbnailing a CMYK JPEG. (#17786)
  • Refactor database calls to remove Generator usage. (#17813, #17814, #17815, #17816, #17817, #17818, #17890)
  • Include the destination in the error of 'Destination mismatch' on federation requests. (#17830)
  • The nix flake inside the repository no longer tracks nixpkgs/master to not catch the latest bugs from a PR merged 5 minutes ago. (#17852)
  • Minor speed-up of sliding sync by computing extensions results in parallel. (#17884)
  • Bump the default Python version in the Synapse Dockerfile from 3.11 -> 3.12. (#17887)
  • Remove usage of internal header encoding API. (#17894)
  • Use unique name for each os.arch variant when uploading Wheel artifacts. (#17905)
  • Fix tests to run with latest Twisted. (#17906, #17907, #17911)
  • Update version constraint to allow the latest poetry-core 1.9.1. (#17902)
  • Update the portdb CI to use Python 3.13 and Postgres 17 as latest dependencies. (#17909)
  • Add an index to current_state_delta_stream table. (#17912)
  • Fix building and attaching release artifacts during the release process. (#17921)

Updates to locked dependencies

  • Bump actions/download-artifact & actions/upload-artifact from 3 to 4 in /.github/workflows. (#17657)
  • Bump anyhow from 1.0.89 to 1.0.92. (#17858, #17876, #17901)
  • Bump bytes from 1.7.2 to 1.8.0. (#17877)
  • Bump cryptography from 43.0.1 to 43.0.3. (#17853)
  • Bump mypy-zope from 1.0.7 to 1.0.8. (#17898)
  • Bump phonenumbers from 8.13.47 to 8.13.49. (#17880, #17899)
  • Bump python-multipart from 0.0.12 to 0.0.16. (#17879)
  • Bump regex from 1.11.0 to 1.11.1. (#17874)
  • Bump ruff from 0.6.9 to 0.7.2. (#17868, #17897)
  • Bump serde from 1.0.210 to 1.0.214. (#17875, #17900)
  • Bump serde_json from 1.0.128 to 1.0.132. (#17857)
  • Bump types-psycopg2 from 2.9.21.20240819 to 2.9.21.20241019. (#17855)
  • Bump types-setuptools from 75.1.0.20241014 to 75.2.0.20241019. (#17856)

v1.119.0rc2

11 Nov 15:05
v1.119.0rc2
Compare
Choose a tag to compare
v1.119.0rc2 Pre-release
Pre-release

Synapse 1.119.0rc2 (2024-11-11)

Note that due to packaging issues there was no v1.119.0rc1.

Python 3.8 support dropped

Python 3.8 is end-of-life and is no longer supported by Synapse. The minimum supported Python version is now 3.9.

If you are running Synapse with Python 3.8, please upgrade to Python 3.9 (or greater) before upgrading Synapse.

Features

  • Support MSC4151's stable report room API. (#17374)
  • Add experimental support for MSC4222 (Adding state_after to sync v2). (#17888)

Bugfixes

  • Fix bug with sliding sync where $LAZY-loading room members would not return required_state membership in incremental syncs. (#17809)
  • Check if user has membership in a room before tagging it. Contributed by Lama Alosaimi. (#17839)
  • Fix a bug in the admin redact endpoint where the background task would not run if a worker was specified in
    the config option run_background_tasks_on. (#17847)
  • Fix bug where some presence and typing timeouts can expire early. (#17850)
  • Fix detection when the built Rust library was outdated when using source installations. (#17861)
  • Fix a long-standing bug in Synapse which could cause one-time keys to be issued in the incorrect order, causing message decryption failures. (#17903)
  • Fix experimental support for MSC4222 (Adding state_after to sync v2) where we would return the full state on incremental syncs when using lazy loaded members and there were no new events in the timeline. (#17915)

Internal Changes

  • Remove support for python 3.8. (#17908)
  • Add a test for downloading and thumbnailing a CMYK JPEG. (#17786)
  • Refactor database calls to remove Generator usage. (#17813, #17814, #17815, #17816, #17817, #17818, #17890)
  • Include the destination in the error of 'Destination mismatch' on federation requests. (#17830)
  • The nix flake inside the repository no longer tracks nixpkgs/master to not catch the latest bugs from a PR merged 5 minutes ago. (#17852)
  • Minor speed-up of sliding sync by computing extensions results in parallel. (#17884)
  • Bump the default Python version in the Synapse Dockerfile from 3.11 -> 3.12. (#17887)
  • Remove usage of internal header encoding API. (#17894)
  • Use unique name for each os.arch variant when uploading Wheel artifacts. (#17905)
  • Fix tests to run with latest Twisted. (#17906, #17907, #17911)
  • Update version constraint to allow the latest poetry-core 1.9.1. (#17902)
  • Update the portdb CI to use Python 3.13 and Postgres 17 as latest dependencies. (#17909)
  • Add an index to current_state_delta_stream table. (#17912)
  • Fix building and attaching release artifacts during the release process. (#17921)

Updates to locked dependencies

  • Bump actions/download-artifact & actions/upload-artifact from 3 to 4 in /.github/workflows. (#17657)
  • Bump anyhow from 1.0.89 to 1.0.92. (#17858, #17876, #17901)
  • Bump bytes from 1.7.2 to 1.8.0. (#17877)
  • Bump cryptography from 43.0.1 to 43.0.3. (#17853)
  • Bump mypy-zope from 1.0.7 to 1.0.8. (#17898)
  • Bump phonenumbers from 8.13.47 to 8.13.49. (#17880, #17899)
  • Bump python-multipart from 0.0.12 to 0.0.16. (#17879)
  • Bump regex from 1.11.0 to 1.11.1. (#17874)
  • Bump ruff from 0.6.9 to 0.7.2. (#17868, #17897)
  • Bump serde from 1.0.210 to 1.0.214. (#17875, #17900)
  • Bump serde_json from 1.0.128 to 1.0.132. (#17857)
  • Bump types-psycopg2 from 2.9.21.20240819 to 2.9.21.20241019. (#17855)
  • Bump types-setuptools from 75.1.0.20241014 to 75.2.0.20241019. (#17856)

v1.118.0

29 Oct 16:43
v1.118.0
4be3bd4
Compare
Choose a tag to compare

Synapse 1.118.0 (2024-10-29)

No significant changes since 1.118.0rc1.

Python 3.8 support will be dropped in the next release

Python 3.8 is now end-of-life. As per our Deprecation Policy for Platform Dependencies, Synapse will be dropping support for Python 3.8 in the next release; Synapse 1.119.0.

Synapse 1.118.x will be the final release to support Python 3.8. If you are running Synapse with Python 3.8, please upgrade before the 1.119.0 release, due in less than one month.

Python 3.13 and PostgreSQL 17 support

On the other end of the spectrum, Synapse 1.118.0 is the first release to support Python 3.13! PostgreSQL 17 is also supported as of this release.

Synapse 1.118.0rc1 (2024-10-22)

Features

  • Added the display_name_claim option to the JWT configuration. This option allows specifying the claim key that contains the user's display name in the JWT payload. (#17708)
  • Implement MSC4210: Remove legacy mentions. Contributed by @tulir @ Beeper. (#17783)

Bugfixes

  • Fix saving of PNG thumbnails, when the original image is in the CMYK color space. (#17736)
  • Fix bug with sliding sync where the server would not return state that was added to the required_state config. (#17785, #17805)
  • Fix a bug in MSC4186 Sliding Sync that would cause rooms to stay forgotten and hidden even after rejoining. (#17835)

Improved Documentation

  • Clarify when the user_may_invite and user_may_send_3pid_invite module callbacks are called. (#17627)
  • Correct documentation to refer to the --config-path argument instead of --config-file. (#17802)
  • Fix typo in target_cache_memory_usage docs. (#17825)

Internal Changes

  • Slight optimization when fetching state/events for Sliding Sync. (#17718)
  • Add Python 3.13 and Postgres 17 to the test matrix. (#17752)
  • Test github token before running release script steps. (#17803)
  • Build debian packages for new Ubuntu versions, and stop building for no longer supported versions. (#17824)
  • Enable the .org.matrix.msc4028.encrypted_event push rule by default in accordance with MSC4028. Note that the corresponding experimental feature must still be switched on for this push rule to have any effect. (#17826)
  • Fix some typing issues uncovered by upgrading mypy to 1.11.x. (#17842)

Updates to locked dependencies

  • Bump mypy from 1.10.1 to 1.11.2. (#17842)
  • Bump mypy-zope from 1.0.5 to 1.0.7. (#17827)
  • Bump phonenumbers from 8.13.46 to 8.13.47. (#17797)
  • Bump psycopg2 from 2.9.9 to 2.9.10. (#17843)
  • Bump ruff from 0.6.8 to 0.6.9. (#17794)
  • Bump sentry-sdk from 2.14.0 to 2.15.0. (#17795)
  • Bump sentry-sdk from 2.15.0 to 2.16.0. (#17829)
  • Bump sentry-sdk from 2.16.0 to 2.17.0. (#17844)
  • Bump sigstore/cosign-installer from 3.6.0 to 3.7.0. (#17798)
  • Bump tomli from 2.0.1 to 2.0.2. (#17796)
  • Bump types-requests from 2.32.0.20240914 to 2.32.0.20241016. (#17841)
  • Bump types-setuptools from 75.1.0.20240917 to 75.1.0.20241014. (#17828)

v1.118.0rc1

22 Oct 13:12
v1.118.0rc1
Compare
Choose a tag to compare
v1.118.0rc1 Pre-release
Pre-release

Synapse 1.118.0rc1 (2024-10-22)

Python 3.8 support will be dropped in the next release

Python 3.8 is now end-of-life. As per our Deprecation Policy for Platform Dependencies, Synapse will be dropping support for Python 3.8 in the next release; Synapse 1.119.0.

Synapse 1.118.x will be the final release to support Python 3.8. If you are running Synapse with Python 3.8, please upgrade before the 1.119.0 release, due in less than one month.

Python 3.13 and PostgreSQL 17 support

On the other end of the spectrum, Synapse 1.118.0 is the first release to support Python 3.13! PostgreSQL 17 is also supported as of this release.

Features

  • Added the display_name_claim option to the JWT configuration. This option allows specifying the claim key that contains the user's display name in the JWT payload. (#17708)
  • Implement MSC4210: Remove legacy mentions. Contributed by @tulir @ Beeper. (#17783)

Bugfixes

  • Fix saving of PNG thumbnails, when the original image is in the CMYK color space. (#17736)
  • Fix bug with sliding sync where the server would not return state that was added to the required_state config. (#17785, #17805)
  • Fix a bug in MSC4186 Sliding Sync that would cause rooms to stay forgotten and hidden even after rejoining. (#17835)

Improved Documentation

  • Clarify when the user_may_invite and user_may_send_3pid_invite module callbacks are called. (#17627)
  • Correct documentation to refer to the --config-path argument instead of --config-file. (#17802)
  • Fix typo in target_cache_memory_usage docs. (#17825)

Internal Changes

  • Slight optimization when fetching state/events for Sliding Sync. (#17718)
  • Add Python 3.13 and Postgres 17 to the test matrix. (#17752)
  • Test github token before running release script steps. (#17803)
  • Build debian packages for new Ubuntu versions, and stop building for no longer supported versions. (#17824)
  • Enable the .org.matrix.msc4028.encrypted_event push rule by default in accordance with MSC4028. Note that the corresponding experimental feature must still be switched on for this push rule to have any effect. (#17826)
  • Fix some typing issues uncovered by upgrading mypy to 1.11.x. (#17842)

Updates to locked dependencies

  • Bump mypy from 1.10.1 to 1.11.2. (#17842)
  • Bump mypy-zope from 1.0.5 to 1.0.7. (#17827)
  • Bump phonenumbers from 8.13.46 to 8.13.47. (#17797)
  • Bump psycopg2 from 2.9.9 to 2.9.10. (#17843)
  • Bump ruff from 0.6.8 to 0.6.9. (#17794)
  • Bump sentry-sdk from 2.14.0 to 2.15.0. (#17795)
  • Bump sentry-sdk from 2.15.0 to 2.16.0. (#17829)
  • Bump sentry-sdk from 2.16.0 to 2.17.0. (#17844)
  • Bump sigstore/cosign-installer from 3.6.0 to 3.7.0. (#17798)
  • Bump tomli from 2.0.1 to 2.0.2. (#17796)
  • Bump types-requests from 2.32.0.20240914 to 2.32.0.20241016. (#17841)
  • Bump types-setuptools from 75.1.0.20240917 to 75.1.0.20241014. (#17828)

v1.117.0

15 Oct 13:38
v1.117.0
Compare
Choose a tag to compare

Synapse 1.117.0 (2024-10-15)

No significant changes since 1.117.0rc1.

Synapse 1.117.0rc1 (2024-10-08)

Features

  • Add config option redis.password_path. (#17717)

Bugfixes

  • Fix a rare bug introduced in v1.29.0 where invalidating a user's access token from a worker could raise an error. (#17779)
  • In the response to GET /_matrix/client/versions, set the unstable_features flag for MSC4140 to false when server configuration disables support for delayed events. (#17780)
  • Improve input validation and room membership checks in admin redaction API. (#17792)

Improved Documentation

  • Clarify the docstring of test_forget_when_not_left. (#17628)
  • Add documentation note about PYTHONMALLOC for accurate jemalloc memory tracking. Contributed by @hensg. (#17709)
  • Remove spurious "TODO UPDATE ALL THIS" note in the Debian installation docs. (#17749)
  • Explain how load balancing works for federation_sender_instances. (#17776)

Internal Changes

  • Minor performance increase for large accounts using sliding sync. (#17751)
  • Increase performance of the notifier when there are many syncing users. (#17765, #17766)
  • Fix performance of streams that don't change often. (#17767)
  • Improve performance of sliding sync connections that do not ask for any rooms. (#17768)
  • Reduce overhead of sliding sync E2EE loops. (#17771)
  • Sliding sync minor performance speed up using new table. (#17787)
  • Sliding sync minor performance improvement by omitting unchanged data from incremental responses. (#17788)
  • Speed up sliding sync when there are many active subscriptions. (#17789)
  • Add missing license headers on new source files. (#17799)

Updates to locked dependencies

  • Bump phonenumbers from 8.13.45 to 8.13.46. (#17773)
  • Bump python-multipart from 0.0.10 to 0.0.12. (#17772)
  • Bump regex from 1.10.6 to 1.11.0. (#17770)
  • Bump ruff from 0.6.7 to 0.6.8. (#17774)

v1.117.0rc1

08 Oct 14:45
v1.117.0rc1
Compare
Choose a tag to compare
v1.117.0rc1 Pre-release
Pre-release

Synapse 1.117.0rc1 (2024-10-08)

Features

  • Add config option redis.password_path. (#17717)

Bugfixes

  • Fix a rare bug introduced in v1.29.0 where invalidating a user's access token from a worker could raise an error. (#17779)
  • In the response to GET /_matrix/client/versions, set the unstable_features flag for MSC4140 to false when server configuration disables support for delayed events. (#17780)
  • Improve input validation and room membership checks in admin redaction API. (#17792)

Improved Documentation

  • Clarify the docstring of test_forget_when_not_left. (#17628)
  • Add documentation note about PYTHONMALLOC for accurate jemalloc memory tracking. Contributed by @hensg. (#17709)
  • Remove spurious "TODO UPDATE ALL THIS" note in the Debian installation docs. (#17749)
  • Explain how load balancing works for federation_sender_instances. (#17776)

Internal Changes

  • Minor performance increase for large accounts using sliding sync. (#17751)
  • Increase performance of the notifier when there are many syncing users. (#17765, #17766)
  • Fix performance of streams that don't change often. (#17767)
  • Improve performance of sliding sync connections that do not ask for any rooms. (#17768)
  • Reduce overhead of sliding sync E2EE loops. (#17771)
  • Sliding sync minor performance speed up using new table. (#17787)
  • Sliding sync minor performance improvement by omitting unchanged data from incremental responses. (#17788)
  • Speed up sliding sync when there are many active subscriptions. (#17789)
  • Add missing license headers on new source files. (#17799)

Updates to locked dependencies

  • Bump phonenumbers from 8.13.45 to 8.13.46. (#17773)
  • Bump python-multipart from 0.0.10 to 0.0.12. (#17772)
  • Bump regex from 1.10.6 to 1.11.0. (#17770)
  • Bump ruff from 0.6.7 to 0.6.8. (#17774)

v1.116.0

01 Oct 11:08
v1.116.0
Compare
Choose a tag to compare

Synapse 1.116.0 (2024-10-01)

No significant changes since 1.116.0rc2.

Synapse 1.116.0rc2 (2024-09-26)

Features

  • Add implementation of restricting who can overwrite a state event as proposed by MSC3757. (#17513)

Synapse 1.116.0rc1 (2024-09-25)

Features

Bugfixes

  • Make sure we get up-to-date state information when using the new MSC4186 Sliding Sync tables to derive room membership. (#17692)
  • Fix bug where room account data would not correctly be sent down MSC4186 Sliding Sync for old rooms. (#17695)
  • Fix a bug in MSC4186 Sliding Sync which could prevent /sync from working for certain user accounts. (#17727, #17733)
  • Ignore invites from ignored users in Sliding Sync. (#17729)
  • Fix bug in MSC4186 Sliding Sync where the server would incorrectly return a negative bump stamp, which caused Element X apps to stop syncing. (#17748)

Internal Changes

  • Import pydantic objects from the _pydantic_compat module.
    This allows check_pydantic_models.py to mock those pydantic objects
    only in the synapse module, and not interfere with pydantic objects in
    external dependencies. (#17667)
  • Use MSC4186 Sliding Sync tables as a bulk shortcut for getting the max event_stream_ordering of rooms. (#17693)
  • Speed up MSC4186 sliding sync requests a bit where there are many room changes. (#17696)
  • Refactor MSC4186 sliding sync filter unit tests so the sliding sync API has better test coverage. (#17703)
  • Fetch bump_stamps more efficiently in MSC4186 Sliding Sync. (#17723)
  • Shortcut for checking if certain background updates have completed (utilized in MSC4186 Sliding Sync). (#17724)
  • More efficiently fetch rooms for MSC4186 Sliding Sync. (#17725)
  • Fix _bulk_get_max_event_pos being inefficient. (#17728)
  • Add cache to get_tags_for_room(...). (#17730)
  • Small performance improvement in speeding up MSC4186 Sliding Sync. (#17731)
  • Minor speed up of initial MSC4186 sliding sync requests. (#17734)
  • Remove usage of the deprecated cgi module, deprecated in Python 3.11 and removed in Python 3.13. (#17741)
  • Fix typing of a variable that is not Unknown anymore after updating treq. (#17744)

Updates to locked dependencies

  • Bump anyhow from 1.0.86 to 1.0.89. (#17685, #17716)
  • Bump bytes from 1.7.1 to 1.7.2. (#17743)
  • Bump cryptography from 43.0.0 to 43.0.1. (#17689)
  • Bump idna from 3.8 to 3.10. (#17758)
  • Bump msgpack from 1.0.8 to 1.1.0. (#17759)
  • Bump phonenumbers from 8.13.44 to 8.13.45. (#17762)
  • Bump prometheus-client from 0.20.0 to 0.21.0. (#17746)
  • Bump pyasn1 from 0.6.0 to 0.6.1. (#17714)
  • Bump pyasn1-modules from 0.4.0 to 0.4.1. (#17747)
  • Bump pydantic from 2.8.2 to 2.9.2. (#17756)
  • Bump python-multipart from 0.0.9 to 0.0.10. (#17745)
  • Bump ruff from 0.6.4 to 0.6.7. (#17715, #17760)
  • Bump sentry-sdk from 2.13.0 to 2.14.0. (#17712)
  • Bump serde from 1.0.209 to 1.0.210. (#17686)
  • Bump serde_json from 1.0.127 to 1.0.128. (#17687)
  • Bump treq from 23.11.0 to 24.9.1. (#17744)
  • Bump types-pyyaml from 6.0.12.20240808 to 6.0.12.20240917. (#17755)
  • Bump types-requests from 2.32.0.20240712 to 2.32.0.20240914. (#17713)
  • Bump types-setuptools from 74.1.0.20240907 to 75.1.0.20240917. (#17757)

v1.116.0rc2

26 Sep 14:17
v1.116.0rc2
cfbddc2
Compare
Choose a tag to compare
v1.116.0rc2 Pre-release
Pre-release

Synapse 1.116.0rc2 (2024-09-26)

Features

  • Add implementation of restricting who can overwrite a state event as proposed by MSC3757. (#17513)

v1.116.0rc1

25 Sep 10:54
v1.116.0rc1
13dea69
Compare
Choose a tag to compare
v1.116.0rc1 Pre-release
Pre-release

Synapse 1.116.0rc1 (2024-09-25)

Features

Bugfixes

  • Make sure we get up-to-date state information when using the new MSC4186 Sliding Sync tables to derive room membership. (#17692)
  • Fix bug where room account data would not correctly be sent down MSC4186 Sliding Sync for old rooms. (#17695)
  • Fix a bug in MSC4186 Sliding Sync which could prevent /sync from working for certain user accounts. (#17727, #17733)
  • Ignore invites from ignored users in Sliding Sync. (#17729)
  • Fix bug in MSC4186 Sliding Sync where the server would incorrectly return a negative bump stamp, which caused Element X apps to stop syncing. (#17748)

Internal Changes

  • Import pydantic objects from the _pydantic_compat module.
    This allows check_pydantic_models.py to mock those pydantic objects
    only in the synapse module, and not interfere with pydantic objects in
    external dependencies. (#17667)
  • Use MSC4186 Sliding Sync tables as a bulk shortcut for getting the max event_stream_ordering of rooms. (#17693)
  • Speed up MSC4186 sliding sync requests a bit where there are many room changes. (#17696)
  • Refactor MSC4186 sliding sync filter unit tests so the sliding sync API has better test coverage. (#17703)
  • Fetch bump_stamps more efficiently in MSC4186 Sliding Sync. (#17723)
  • Shortcut for checking if certain background updates have completed (utilized in MSC4186 Sliding Sync). (#17724)
  • More efficiently fetch rooms for MSC4186 Sliding Sync. (#17725)
  • Fix _bulk_get_max_event_pos being inefficient. (#17728)
  • Add cache to get_tags_for_room(...). (#17730)
  • Small performance improvement in speeding up MSC4186 Sliding Sync. (#17731)
  • Minor speed up of initial MSC4186 sliding sync requests. (#17734)
  • Remove usage of the deprecated cgi module, deprecated in Python 3.11 and removed in Python 3.13. (#17741)
  • Fix typing of a variable that is not Unknown anymore after updating treq. (#17744)

Updates to locked dependencies

  • Bump anyhow from 1.0.86 to 1.0.89. (#17685, #17716)
  • Bump bytes from 1.7.1 to 1.7.2. (#17743)
  • Bump cryptography from 43.0.0 to 43.0.1. (#17689)
  • Bump idna from 3.8 to 3.10. (#17758)
  • Bump msgpack from 1.0.8 to 1.1.0. (#17759)
  • Bump phonenumbers from 8.13.44 to 8.13.45. (#17762)
  • Bump prometheus-client from 0.20.0 to 0.21.0. (#17746)
  • Bump pyasn1 from 0.6.0 to 0.6.1. (#17714)
  • Bump pyasn1-modules from 0.4.0 to 0.4.1. (#17747)
  • Bump pydantic from 2.8.2 to 2.9.2. (#17756)
  • Bump python-multipart from 0.0.9 to 0.0.10. (#17745)
  • Bump ruff from 0.6.4 to 0.6.7. (#17715, #17760)
  • Bump sentry-sdk from 2.13.0 to 2.14.0. (#17712)
  • Bump serde from 1.0.209 to 1.0.210. (#17686)
  • Bump serde_json from 1.0.127 to 1.0.128. (#17687)
  • Bump treq from 23.11.0 to 24.9.1. (#17744)
  • Bump types-pyyaml from 6.0.12.20240808 to 6.0.12.20240917. (#17755)
  • Bump types-requests from 2.32.0.20240712 to 2.32.0.20240914. (#17713)
  • Bump types-setuptools from 74.1.0.20240907 to 75.1.0.20240917. (#17757)

v1.115.0

17 Sep 14:17
Compare
Choose a tag to compare

Synapse 1.115.0 (2024-09-17)

No significant changes since 1.115.0rc2.

Synapse 1.115.0rc2 (2024-09-12)

Internal Changes

  • Pre-populate room data used in experimental MSC3575 Sliding Sync /sync endpoint for quick filtering/sorting. (#17652)
  • Speed up sliding sync by reducing amount of data pulled out of the database for large rooms. (#17683)

Synapse 1.115.0rc1 (2024-09-10)

Features

  • Improve cross-signing upload when using MSC3861 to use a custom UIA flow stage, with web fallback support. (#17509)

Bugfixes

  • Return 400 M_BAD_JSON upon attempting to complete various room actions with a non-local user ID and unknown room ID, rather than an internal server error. (#17607)
  • Fix authenticated media responses using a wrong limit when following redirects over federation. (#17626)
  • Fix bug where we returned the wrong bump_stamp for invites in sliding sync response, causing incorrect ordering of invites in the room list. (#17674)

Improved Documentation

  • Clarify that the admin api resource is only loaded on the main process and not workers. (#17590)
  • Fixed typo in saml2_config config example. (#17594)

Deprecations and Removals

  • Stabilise MSC4156 by removing the msc4156_enabled config setting and defaulting it to true. (#17650)

Internal Changes

  • Update MSC3861 implementation: load the issuer and account management URLs from OIDC discovery. (#17407)
  • Pre-populate room data used in experimental MSC3575 Sliding Sync /sync endpoint for quick filtering/sorting. (#17512, #17632, #17633, #17634, #17635, #17636, #17641, #17654, #17673)
  • Store sliding sync per-connection state in the database. (#17599, #17631)
  • Make the sliding sync PerConnectionState class immutable. (#17600)
  • Replace isort and black with ruff. (#17620, #17643)
  • Sliding Sync: Split up get_room_membership_for_user_at_to_token. (#17629)
  • Use new database tables for sliding sync. (#17630, #17649)
  • Prevent duplicate tags being added to Sliding Sync traces. (#17655)
  • Get bump_stamp from new sliding sync tables which should be faster. (#17658)
  • Speed up incremental Sliding Sync requests by avoiding extra work. (#17665)
  • Small performance improvement in speeding up sliding sync. (#17666, #17670, #17672)
  • Speed up sliding sync by reducing number of database calls. (#17684)
  • Speed up sync by pulling out fewer events from the database. (#17688)

Updates to locked dependencies

  • Bump authlib from 1.3.1 to 1.3.2. (#17679)
  • Bump idna from 3.7 to 3.8. (#17682)
  • Bump ruff from 0.6.2 to 0.6.4. (#17680)
  • Bump towncrier from 24.7.1 to 24.8.0. (#17645)
  • Bump twisted from 24.7.0rc1 to 24.7.0. (#17647)
  • Bump types-pillow from 10.2.0.20240520 to 10.2.0.20240822. (#17644)
  • Bump types-psycopg2 from 2.9.21.20240417 to 2.9.21.20240819. (#17646)
  • Bump types-setuptools from 71.1.0.20240818 to 74.1.0.20240907. (#17681)