github matrix-org/synapse v1.31.0rc1

latest releases: v1.98.0, v1.98.0rc1, v1.97.0...
pre-release3 years ago

Synapse 1.31.0rc1 (2021-03-30)

Note: As announced in v1.25.0, and in line with the deprecation policy for platform dependencies, this is the last release to support Python 3.5 and PostgreSQL 9.5. Future versions of Synapse will require Python 3.6+ and PostgreSQL 9.6+.

This is also the last release that the Synapse team will be publishing packages for Debian Stretch and Ubuntu Xenial.

Features

  • Add support to OpenID Connect login for requiring attributes on the userinfo response. Contributed by Hubbte King. (#9609)
  • Add initial experimental support for a "space summary" API. (#9643, #9652, #9653)
  • Add support for the busy presence state as described in MSC3026. (#9644)
  • Add support for credentials for proxy authentication in the HTTPS_PROXY environment variable. (#9657)

Bugfixes

  • Fix a longstanding bug that could cause issues when editing a reply to a message. (#9585)
  • Fix the /capabilities endpoint to return m.change_password as disabled if the local password database is not used for authentication. Contributed by @dklimpel. (#9588)
  • Check if local passwords are enabled before setting them for the user. (#9636)
  • Fix a bug where federation sending can stall due to concurrent access database exceptions when it falls behind. (#9639)
  • Fix a bug introduced in Synapse 1.30.1 which meant the suggested pip incantation to install an updated cryptography was incorrect. (#9699)

Updates to the Docker image

  • Speed up Docker builds and make it nicer to test against Complement while developing (install all dependencies before copying the project). (#9610)
  • Include opencontainers labels in the Docker image. (#9612)

Improved Documentation

  • Clarify that register_new_matrix_user is present also when installed via non-pip package. (#9074)
  • Update source install documentation to mention platform prerequisites before the source install steps. (#9667)
  • Improve worker documentation for fallback/web auth endpoints. (#9679)
  • Update the sample configuration for OIDC authentication. (#9695)

Internal Changes

  • Preparatory steps for removing redundant outlier data from event_json.internal_metadata column. (#9411)
  • Add type hints to the caching module. (#9442)
  • Introduce flake8-bugbear to the test suite and fix some of its lint violations. (#9499, #9659)
  • Add additional type hints to the Homeserver object. (#9631, #9638, #9675, #9681)
  • Only save remote cross-signing and device keys if they're different from the current ones. (#9634)
  • Rename storage function to fix spelling and not conflict with another function's name. (#9637)
  • Improve performance of federation catch up by sending the latest events in the room to the remote, rather than just the last event sent by the local server. (#9640, #9664)
  • In the federation_client commandline client, stop automatically adding the URL prefix, so that servlets on other prefixes can be tested. (#9645)
  • In the federation_client commandline client, handle inline signing_keys in homeserver.yaml. (#9647)
  • Fixed some antipattern issues to improve code quality. (#9649)
  • Add a storage method for pulling all current user presence state from the database. (#9650)
  • Import HomeServer from the proper module. (#9665)
  • Increase default join ratelimiting burst rate. (#9674)
  • Add type hints to third party event rules and visibility modules. (#9676)
  • Bump mypy-zope to 0.2.13 to fix "Cannot determine consistent method resolution order (MRO)" errors when running mypy a second time. (#9678)
  • Use interpreter from $PATH via /usr/bin/env instead of absolute paths in various scripts. (#9689)
  • Make it possible to use dmypy. (#9692)
  • Suppress "CryptographyDeprecationWarning: int_from_bytes is deprecated". (#9698)
  • Use dmypy run in lint script for improved performance in type-checking while developing. (#9701)
  • Fix undetected mypy error when using Python 3.6. (#9703)
  • Fix type-checking CI on develop. (#9709)

Don't miss a new synapse release

NewReleases is sending notifications on new releases.