Skip to content

Releases: matrix-org/sydent

v2.6.1

20 Nov 20:42
Compare
Choose a tag to compare

No significant changes since 2.6.0; the only changes are to CI config, which should fix
an error in building the Docker image.

As mentioned in the 2.6.0 release notes, Sydent will soon be forked by Element
under an AGPLv3.0 licence (with CLA, for proprietary dual licensing). We expect
this to be the last release of Sydent under the current Apache 2 licence.

You can read more about this here:

The Matrix.org Foundation copy of the project will be archived. Any changes needed
by server administrators will be communicated in Sydent's changelog, but we are
striving to make this as seamless as possible.

Internal Changes

  • Pin CI to Python 3.11. (#583)
  • Inline docker job definition in this repo, and update docker-related action versions. (#584)#

v2.6.0

20 Nov 16:25
Compare
Choose a tag to compare

Sydent will soon be forked by Element under an AGPLv3.0 licence (with CLA, for
proprietary dual licensing). We expect this to be the last release of Sydent
under the current Apache 2 licence.

You can read more about this here:

The Matrix.org Foundation copy of the project will be archived. Any changes needed
by server administrators will be communicated in Sydent's changelog, but we are
striving to make this as seamless as possible.

Features

  • Support resolving homeservers using matrix-fed DNS SRV records from MSC4040. (#576)

Improved Documentation

  • Fix installation documentation for Debian based systems. (#549)

v2.5.6

31 Jul 10:59
Compare
Choose a tag to compare

Sydent 2.5.6 (2023-07-31)

Bugfixes

v2.5.5

22 Jun 14:11
Compare
Choose a tag to compare

This version is fixing Docker builds.

v2.5.4

22 Jun 13:24
Compare
Choose a tag to compare

Sydent 2.5.4 (2023-06-22)

Features

  • Add a config option homeserver_allow_list to specify which homeservers can access Sydent. (#566)

Internal Changes

  • Warn would-be users that they probably don't want to use Sydent. (#557)

v2.5.3

02 Mar 18:45
v2.5.3
Compare
Choose a tag to compare

Sydent 2.5.3 (2023-03-02)

Features

  • Add ratelimiting to MSISDN request token endpoint. (#521, #522)
  • Add email.third_party_invite_homeserver_blocklist and email.third_party_invite_room_blocklist config options to block invites from a list of homeservers or for a list of rooms. (#530)
  • Support Matrix v1.1. (#542)

Bugfixes

  • Respond with a 429 instead of 500 when exceeding invite rate limit. (#529)
  • Fix a bug where Sydent would not retry attempts to inform homeservers of a successful bind after an initial failure. (#552)

Updates to the Docker image

  • Add prometheus-client and sentry-sdk into the Docker image. (#519)

Improved Documentation

  • Document a way to serve identity service APIs over HTTPS. (#518)

Internal Changes

  • Update README to describe how to install from source with poetry. (#505)
  • Fix a typechecking error introduced in #501. (#506)
  • Ensure CI runs tests on main branch. (#507)
  • Bump twisted from 22.1.0 to 22.2.0. (#508)
  • Add a 'tests-done' Github Actions job. (#509)
  • Allow the newsfile job to be skipped. (#514)
  • Remove support for the unstable identifier from MSC3288. (#515)
  • Avoid spurious warnings in tests. (#516)
  • (Dependabot) Bump Twisted to 22.4.0. (#517)
  • Add ratelimiting to email sending. (#526)
  • Add some prometheus metrics and make prometheus_client dependency mandatory. (#527)
  • Limit length of room names in third party invites. (#528)
  • Limit length of sender display name in third party invites. (#531)
  • Add a config option to drop emails if user-supplied content contains a given keyword. (#535, #536)
  • (Dependabot) Bump certifi to 2022.12.7. (#537)
  • Fix a typo to properly allow the newsfile job to be skipped. (#538)
  • Refactor creation of servlets. (#541)
  • Use ruff instead of flake8. (#543, #544)
  • Don't block invites containing web_client_location when using "http" in the keyword block list. (#545)
  • Build using Poetry 1.2.2, for better dependabot compatability. (#548)

v2.5.2: Sydent 2.5.2 (2022-04-04)

04 Apr 14:44
Compare
Choose a tag to compare

This release of Sydent is the first to use poetry to maintain a locked set of dependency versions. The use of poetry is optional: administrators can continue to install from a wheel or using their own virtualenv.

Bugfixes

  • Fix a bug where federation requests would fail early if a .well-known/matrix/server response contains an invalid type for m.server. Instead, try finding an SRV record, as mandated by the spec. (#473)
  • Fix a bug in the casefolding script that would cause some deletions to be skipped if e-mail sending was enabled. (#489)
  • Fix a bug introduced in Sydent 2.4.6 where errors communicating with OpenMarket's SMS API would be logged as successes, and all successes would be logged twice. (#490)

Improved Documentation

Internal Changes

  • Add a test to ensure that a bad response from the OpenMarket SMS API raises an exception. (#471)
  • Add missing dependencies to setup.py. (#474)
  • Cache the lookup pepper in the HashingMetadataStore. (#475, #477)
  • Update type annotations to ensure Sydent typechecks with recent mypy versions. (#481)
  • Fix type errors caused by an update to PyNaCl. (#484)
  • Add aggressive logging to casefoldb.py for debugging purposes. (#486)
  • Use poetry to manage dependencies. (#488)
  • Build and publish a docker image on the main branch and tagged releases. (#492)
  • Update Dockerfile to use a fixed poetry environment, rather than pip installing the latest dependencies. (#493)
  • Bump twisted from 21.7.0 to 22.1.0. (#495)
  • Use matrix-common util to get a git-aware version number. (#497)
  • Publish releases to PyPI using GitHub Actions. (#499)
  • Mark sentry-sdk and prometheus-client as optional dependencies. (#501)
  • Add poetry entrypoint for running sydent. (#502)

v2.5.1

17 Nov 11:43
cf27fce
Compare
Choose a tag to compare

Sydent 2.5.1 (2021-11-17)

This release fixes a bug in handling verification for third party IDs if requested via the deprecated /api/v1/ endpoint. The other changes are all designed to improve error handling, and make Sydent's logging have a higher signal-to-noise ratio.

Features

  • Return HTTP 400 Bad Request rather than HTTP 500 Internal Server Error if /store-invite is given an invalid email address. (#464)

Bugfixes

  • Fix a bug introduced in Sydent 2.5.0 where requests to validate an email or phone number would fail with an HTTP 500 Internal Server Error if arguments were given as a query string or as a www-form-urlencoded body. (#461, #462)

Internal Changes

  • Improve exception logging in asyncjsonwrap for better Sentry reports. (#455)
  • Handle federation request failures in /request explicitly, to reduce Sentry noise. (#456)
  • Log a warning (not an error) when we refuse to send an SMS to an unsupported country. (#459)
  • Demote a failure to parse JSON from homeservers in /register from an error to a warning. (#463)
  • Handle errors to contact homeservers in /unbind. This returns a better error message and reduces Sentry spam. (#466)
  • Log failures to send SMS as exceptions, not errors (to better debug in Sentry). (#467)

v2.5.0

03 Nov 12:45
7425b73
Compare
Choose a tag to compare

Sydent 2.5.0 (2021-11-03)

This release deprecates .eml templates in favour of Jinja 2 .eml.j2 templates. See the documentation for more details.

Features

  • Support the stable room_type field for MSC3288. (#437)

Bugfixes

  • Fix a bug which could cause SMS sending to fail silently. (#412)
  • Fix a bug introduced in v2.4.0 that caused association unbindings to fail with an internal server error. (#397)
  • Fix an issue which could cause new local associations to be replicated multiple times to peers. (#400)
  • Fix an issue where obey_x_forwarded_for was not being honoured. (#403)
  • Fix misleading logging and potential TypeErrors related to replication ports in Sydent's database. (#420)
  • Fix a bug introduced in v2.0.0 where requesting GET from /identity/api/v1/validate/msisdn/submitToken or /identity/v2/validate/msisdn/submitToken would fail with an internal server error. (#445)
  • Fix /v2/account/logout to return HTTP 400 BAD REQUEST instead of 200 OK if a token was not provided. (#447)
  • Fix a long-standing spec compliance bug where the response to POST /identity/{api/v1,v2}/3pid/unbind was null, not {}. (#449)

Improved Documentation

  • Fix the documentation around the command line arguments for the email address migration script. (#392)
  • Add documentation on writing templates. Deprecate .eml templates. (#395)

Internal Changes

  • Improve type annotations throughout Sydent. Sydent now passes mypy --strict. (#414 and others).
  • Extend the changelog check so that it checks for the correct pull request number being used. (#382)
  • Move the configuration file handling code into a separate module. (#385, #405)
  • Add a primitive contributing guide and tweak the pull request template. (#393)
  • Run mypy on the sydent package as part of CI. (#416)
  • Configure @matrix-org/synapse-core to be the code owner for the repository. (#436)
  • Run linters over stub files. (#441, #450)
  • Include Sydent's version number (and git commit hash if available) when reporting to Sentry. (#453, #454)

v2.4.6

08 Oct 16:23
v2.4.6
Compare
Choose a tag to compare

Sydent 2.4.6 (2021-10-08)

Bugfixes

  • Fix a long-standing bug with error handling around missing headers when dealing with the OpenMarket API, which could cause the wrong assumption that sending a SMS failed when it didn't. (#415)