From fc8695d62102a12baf1de59b505adb18ded9ed95 Mon Sep 17 00:00:00 2001 From: Jonathan de Jong Date: Fri, 2 Apr 2021 12:22:21 +0200 Subject: [PATCH 1/3] Fix version for bugbear (#9734) --- changelog.d/9734.misc | 1 + setup.py | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 changelog.d/9734.misc diff --git a/changelog.d/9734.misc b/changelog.d/9734.misc new file mode 100644 index 000000000..20ed9a06a --- /dev/null +++ b/changelog.d/9734.misc @@ -0,0 +1 @@ +Pin flake8-bugbear's version. \ No newline at end of file diff --git a/setup.py b/setup.py index 1939a7b86..29e9971dc 100755 --- a/setup.py +++ b/setup.py @@ -99,7 +99,7 @@ CONDITIONAL_REQUIREMENTS["lint"] = [ "isort==5.7.0", "black==20.8b1", "flake8-comprehensions", - "flake8-bugbear", + "flake8-bugbear==21.3.2", "flake8", ] From a888cbdd314a84cbb477e5b04bd27b7053f08495 Mon Sep 17 00:00:00 2001 From: Erik Johnston Date: Tue, 6 Apr 2021 13:07:36 +0100 Subject: [PATCH 2/3] Add deprecation policy doc (#9723) Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com> Co-authored-by: Patrick Cloke --- INSTALL.md | 3 ++- README.rst | 11 ++++++++++- changelog.d/9723.doc | 1 + docs/deprecation_policy.md | 33 +++++++++++++++++++++++++++++++++ 4 files changed, 46 insertions(+), 2 deletions(-) create mode 100644 changelog.d/9723.doc create mode 100644 docs/deprecation_policy.md diff --git a/INSTALL.md b/INSTALL.md index 808243719..7b4068923 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -38,6 +38,7 @@ There are 3 steps to follow under **Installation Instructions**. - [URL previews](#url-previews) - [Troubleshooting Installation](#troubleshooting-installation) + ## Choosing your server name It is important to choose the name for your server before you install Synapse, @@ -542,7 +543,7 @@ Alternatively, you can do so from the command line. This can be done as follows: register_new_matrix_user -c homeserver.yaml http://localhost:8008 ``` -This will prompt you to add details for the new user, and will then connect to +This will prompt you to add details for the new user, and will then connect to the running Synapse to create the new user. For example: ``` New user localpart: erikj diff --git a/README.rst b/README.rst index 6a1e71359..655a2bf3b 100644 --- a/README.rst +++ b/README.rst @@ -314,6 +314,15 @@ Testing with SyTest is recommended for verifying that changes related to the Client-Server API are functioning correctly. See the `installation instructions `_ for details. + +Platform dependencies +===================== + +Synapse uses a number of platform dependencies such as Python and PostgreSQL, +and aims to follow supported upstream versions. See the +``_ document for more details. + + Troubleshooting =============== @@ -389,7 +398,7 @@ likely cause. The misbehavior can be worked around by setting People can't accept room invitations from me -------------------------------------------- -The typical failure mode here is that you send an invitation to someone +The typical failure mode here is that you send an invitation to someone to join a room or direct chat, but when they go to accept it, they get an error (typically along the lines of "Invalid signature"). They might see something like the following in their logs:: diff --git a/changelog.d/9723.doc b/changelog.d/9723.doc new file mode 100644 index 000000000..2bfc9a4ca --- /dev/null +++ b/changelog.d/9723.doc @@ -0,0 +1 @@ +Add a document describing the deprecation policy for platform dependencies. diff --git a/docs/deprecation_policy.md b/docs/deprecation_policy.md new file mode 100644 index 000000000..06ea34055 --- /dev/null +++ b/docs/deprecation_policy.md @@ -0,0 +1,33 @@ +Deprecation Policy for Platform Dependencies +============================================ + +Synapse has a number of platform dependencies, including Python and PostgreSQL. +This document outlines the policy towards which versions we support, and when we +drop support for versions in the future. + + +Policy +------ + +Synapse follows the upstream support life cycles for Python and PostgreSQL, +i.e. when a version reaches End of Life Synapse will withdraw support for that +version in future releases. + +Details on the upstream support life cycles for Python and PostgreSQL are +documented at https://endoflife.date/python and +https://endoflife.date/postgresql. + + +Context +------- + +It is important for system admins to have a clear understanding of the platform +requirements of Synapse and its deprecation policies so that they can +effectively plan upgrading their infrastructure ahead of time. This is +especially important in contexts where upgrading the infrastructure requires +auditing and approval from a security team, or where otherwise upgrading is a +long process. + +By following the upstream support life cycles Synapse can ensure that its +dependencies continue to get security patches, while not requiring system admins +to constantly update their platform dependencies to the latest versions. From 1d8863c67d3956c5d50baa0991595af8fc2525a2 Mon Sep 17 00:00:00 2001 From: Erik Johnston Date: Tue, 6 Apr 2021 13:09:56 +0100 Subject: [PATCH 3/3] 1.31.0 --- CHANGES.md | 23 ++++++++++++++++++++--- changelog.d/9720.misc | 1 - changelog.d/9723.doc | 1 - changelog.d/9734.misc | 1 - debian/changelog | 6 ++++++ synapse/__init__.py | 2 +- 6 files changed, 27 insertions(+), 7 deletions(-) delete mode 100644 changelog.d/9720.misc delete mode 100644 changelog.d/9723.doc delete mode 100644 changelog.d/9734.misc diff --git a/CHANGES.md b/CHANGES.md index ff84a556a..27483532d 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,10 +1,27 @@ -Synapse 1.31.0rc1 (2021-03-30) -============================== +Synapse 1.31.0 (2021-04-06) +=========================== -**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+. +**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+, as per our [deprecation policy](docs/deprecation_policy.md). This is also the last release that the Synapse team will be publishing packages for Debian Stretch and Ubuntu Xenial. + +Improved Documentation +---------------------- + +- Add a document describing the deprecation policy for platform dependencies. ([\#9723](https://github.com/matrix-org/synapse/issues/9723)) + + +Internal Changes +---------------- + +- Revert using `dmypy run` in lint script. ([\#9720](https://github.com/matrix-org/synapse/issues/9720)) +- Pin flake8-bugbear's version. ([\#9734](https://github.com/matrix-org/synapse/issues/9734)) + + +Synapse 1.31.0rc1 (2021-03-30) +============================== + Features -------- diff --git a/changelog.d/9720.misc b/changelog.d/9720.misc deleted file mode 100644 index 9dd0bc9cf..000000000 --- a/changelog.d/9720.misc +++ /dev/null @@ -1 +0,0 @@ -Revert using `dmypy run` in lint script. diff --git a/changelog.d/9723.doc b/changelog.d/9723.doc deleted file mode 100644 index 2bfc9a4ca..000000000 --- a/changelog.d/9723.doc +++ /dev/null @@ -1 +0,0 @@ -Add a document describing the deprecation policy for platform dependencies. diff --git a/changelog.d/9734.misc b/changelog.d/9734.misc deleted file mode 100644 index 20ed9a06a..000000000 --- a/changelog.d/9734.misc +++ /dev/null @@ -1 +0,0 @@ -Pin flake8-bugbear's version. \ No newline at end of file diff --git a/debian/changelog b/debian/changelog index 18dc04cd8..09602ff54 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +matrix-synapse-py3 (1.31.0) stable; urgency=medium + + * New synapse release 1.31.0. + + -- Synapse Packaging team Tue, 06 Apr 2021 13:08:29 +0100 + matrix-synapse-py3 (1.30.1) stable; urgency=medium * New synapse release 1.30.1. diff --git a/synapse/__init__.py b/synapse/__init__.py index 419299bf0..1d2883acf 100644 --- a/synapse/__init__.py +++ b/synapse/__init__.py @@ -48,7 +48,7 @@ try: except ImportError: pass -__version__ = "1.31.0rc1" +__version__ = "1.31.0" 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