diff --git a/_service b/_service
index 19c3a22..b89a4a8 100644
--- a/_service
+++ b/_service
@@ -4,11 +4,11 @@
@PARENT_TAG@
https://github.com/matrix-org/synapse.git
git
- v1.37.1
+ v1.40.0
v(.*)
\1
diff --git a/matrix-synapse-1.37.1.obscpio b/matrix-synapse-1.37.1.obscpio
deleted file mode 100644
index 7442ba5..0000000
--- a/matrix-synapse-1.37.1.obscpio
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:93a5fd63a080482cf1492a9386994ee688503fd075646b17b4dc4ffd858beaa0
-size 30480397
diff --git a/matrix-synapse-1.40.0.obscpio b/matrix-synapse-1.40.0.obscpio
new file mode 100644
index 0000000..80f8241
--- /dev/null
+++ b/matrix-synapse-1.40.0.obscpio
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:41eb619a3dfcd0ec09d0e8c56f276857335c897d8bdb15e7a4033932437fe8f4
+size 30763533
diff --git a/matrix-synapse-test.spec b/matrix-synapse-test.spec
index 655d117..a411b1d 100644
--- a/matrix-synapse-test.spec
+++ b/matrix-synapse-test.spec
@@ -27,7 +27,7 @@
%define pkgname matrix-synapse
Name: %{pkgname}-test
-Version: 1.37.1
+Version: 1.40.0
Release: 0
Summary: Test package for %{pkgname}
License: Apache-2.0
diff --git a/matrix-synapse.changes b/matrix-synapse.changes
index 54e20ce..0c2887e 100644
--- a/matrix-synapse.changes
+++ b/matrix-synapse.changes
@@ -1,3 +1,295 @@
+-------------------------------------------------------------------
+Tue Aug 10 13:38:13 UTC 2021 - Marcus Rueckert
+
+- Update to 1.40.0
+ - Features
+ - Support MSC3289: room version 8. (#10449)
+ - Add support for MSC2033: device_id on /account/whoami.
+ (#9918)
+ - Update support for MSC2716 - Incrementally importing history
+ into existing rooms. (#10245, #10432, #10463)
+ - Update support for MSC3083 to consider changes in the MSC
+ around which servers can issue join events. (#10254, #10447,
+ #10489)
+ - Initial support for MSC3244, Room version capabilities over
+ the /capabilities API. (#10283)
+ - Add a buffered logging handler which periodically flushes
+ itself. (#10407, #10515)
+ - Add support for https connections to a proxy server.
+ Contributed by @Bubu and @dklimpel. (#10411)
+ - Support for MSC2285 (hidden read receipts). Contributed by
+ @SimonBrandner. (#10413)
+ - Email notifications now state whether an invitation is to a
+ room or a space. (#10426)
+ - Allow setting transaction limit for database connections.
+ (#10440, #10511)
+ - Add creation_ts to "list users" admin API. (#10448)
+ - Bugfixes
+ - Mark the experimental room version from MSC2716 as unstable.
+ (#10449)
+ - Fix the PeriodicallyFlushingMemoryHandler inhibiting
+ application shutdown because of its background thread.
+ (#10517)
+ - Fix a bug introduced in Synapse v1.40.0rc1 that could cause
+ Synapse to respond with an error when clients would update
+ read receipts. (#10531)
+ - Improve character set detection in URL previews by supporting
+ underscores (in addition to hyphens). Contributed by
+ @srividyut. (#10410)
+ - Fix events being incorrectly rejected over federation if they
+ reference auth events that the server needed to fetch.
+ (#10439)
+ - Fix synapse_federation_server_oldest_inbound_pdu_in_staging
+ Prometheus metric to not report a max age of 51 years when
+ the queue is empty. (#10455)
+ - Fix a bug which caused an explicit assignment of power-level
+ 0 to a user to be misinterpreted in rare circumstances.
+ (#10499)
+ - Improved Documentation
+ - Fix broken links in upgrade.md. Contributed by @dklimpel.
+ (#10543)
+ - Fix hierarchy of providers on the OpenID page. (#10445)
+ - Consolidate development documentation to docs/development/.
+ (#10453)
+ - Add some developer docs to explain room DAG concepts like
+ outliers, state_groups, depth, etc. (#10464)
+ - Document how to use Complement while developing a new Synapse
+ feature. (#10483)
+ - Internal Changes
+ - Fix release script to open the correct URL for the release.
+ (#10516)
+ - Prune inbound federation queues for a room if they get too
+ large. (#10390)
+ - Add type hints to synapse.federation.transport.client module.
+ (#10408)
+ - Remove shebang line from module files. (#10415)
+ - Drop backwards-compatibility code that was required to
+ support Ubuntu Xenial. (#10429)
+ - Use a docker image cache for the prerequisites for the debian
+ package build. (#10431)
+ - Improve servlet type hints. (#10437, #10438)
+ - Replace usage of or_ignore in simple_insert with
+ simple_upsert usage, to stop spamming postgres logs with
+ spurious ERROR messages. (#10442)
+ - Update the tests-done Github Actions status. (#10444, #10512)
+ - Update type annotations to work with forthcoming Twisted
+ 21.7.0 release. (#10446, #10450)
+ - Cancel redundant GHA workflows when a new commit is pushed.
+ (#10451)
+ - Mitigate media repo XSS attacks on IE11 via the non-standard
+ X-Content-Security-Policy header. (#10468)
+ - Additional type hints in the state handler. (#10482)
+ - Update syntax used to run complement tests. (#10488)
+ - Fix up type annotations to work with Twisted 21.7. (#10490)
+ - Improve type annotations for ObservableDeferred. (#10491)
+ - Extend release script to also tag and create GitHub releases.
+ (#10496)
+ - Fix a bug which caused production debian packages to be
+ incorrectly marked as 'prerelease'. (#10500)
+
+-------------------------------------------------------------------
+Thu Jul 29 11:49:07 UTC 2021 - Marcus Rueckert
+
+- Update to 1.39.0
+ The Third-Party Event Rules module interface has been deprecated
+ in favour of the generic module interface introduced in Synapse
+ v1.37.0. Support for the old interface is planned to be removed
+ in September 2021. See the upgrade notes for more information.
+
+ - Features
+ - Add the ability to override the account validity feature with
+ a module. (#9884)
+ - The spaces summary API now returns any joinable rooms, not
+ only rooms which are world-readable. (#10298, #10305)
+ - Add a new version of the R30 phone-home metric, which removes
+ a false impression of retention given by the old R30 metric.
+ (#10332, #10427)
+ - Allow providing credentials to http_proxy. (#10360)
+ - Bugfixes
+ - Fix a bug introduced in Synapse 1.38 which caused an
+ exception at startup when SAML authentication was enabled.
+ (#10477)
+ - Fix a long-standing bug where Synapse would not inform
+ clients that a device had exhausted its one-time-key pool,
+ potentially causing problems decrypting events. (#10485)
+ - Fix reporting old R30 stats as R30v2 stats.
+ Introduced in v1.39.0rc1. (#10486)
+ - Always include device_one_time_keys_count key in /sync
+ response to work around a bug in Element Android that broke
+ encryption for new devices. (#10457)
+ - Fix error while dropping locks on shutdown. Introduced in
+ v1.38.0. (#10433)
+ - Add base starting insertion event when no chunk ID is
+ specified in the historical batch send API. (#10250)
+ - Fix historical batch send endpoint (MSC2716) rejecting
+ batches with messages from multiple senders. (#10276)
+ - Fix purging rooms that other homeservers are still sending
+ events for. Contributed by @ilmari. (#10317)
+ - Fix errors during backfill caused by previously purged
+ redaction events. Contributed by Andreas Rammhold (@andir).
+ (#10343)
+ - Fix the user directory becoming broken (and noisy errors
+ being logged) when knocking and room statistics are in use.
+ (#10344)
+ - Fix newly added
+ synapse_federation_server_oldest_inbound_pdu_in_staging
+ prometheus metric to measure age rather than timestamp.
+ (#10355)
+ - Fix PostgreSQL sometimes using table scans for queries
+ against state_groups_state table, taking a long time and a
+ large amount of IO. (#10359)
+ - Fix make_room_admin failing for users that have left a
+ private room. (#10367)
+ - Fix a number of logged errors caused by remote servers being
+ down. (#10400, #10414)
+ - Responses from /make_{join,leave,knock} no longer include
+ signatures, which will turn out to be invalid after events
+ are returned to /send_{join,leave,knock}. (#10404)
+ - Improved Documentation
+ - Updated installation dependencies for newer macOS versions
+ and ARM Macs. Contributed by Luke Walsh. (#9971)
+ - Simplify structure of room admin API. (#10313)
+ - Refresh the logcontext dev documentation. (#10353), (#10337)
+ - Add delegation example for caddy in the reverse proxy
+ documentation. Contributed by @moritzdietz. (#10368)
+ - Fix and clarify some links in docs and contrib. (#10370),
+ (#10322), (#10399)
+ - Make deprecation notice of the spam checker doc more obvious.
+ (#10395)
+ - Add instructions on installing Debian packages for release
+ candidates. (#10396)
+ - Deprecations and Removals
+ - Remove functionality associated with the unused
+ room_stats_historical and user_stats_historical tables.
+ Contributed by @xmunoz. (#9721)
+ - The third-party event rules module interface is deprecated in
+ favour of the generic module interface introduced in Synapse
+ v1.37.0. See the upgrade notes for more information. (#10386)
+ - Internal Changes
+ - Fix an error which prevented the Github Actions workflow to
+ build the docker images from running. (#10461)
+ - Fix release script to correctly version debian changelog when
+ doing RCs. (#10465)
+ - Move docker image build to Github Actions. (#10416)
+ - Convert room_depth.min_depth column to a BIGINT. (#10289)
+ - Add tests to characterise the current behaviour of R30
+ phone-home metrics. (#10315)
+ - Rebuild event context and auth when processing specific
+ results from ThirdPartyEventRules modules. (#10316)
+ - Minor change to the code that populates user_daily_visits.
+ (#10324)
+ - Re-enable Sytests that were disabled for the 1.37.1 release.
+ (#10345, #10357)
+ - Run pyupgrade on the codebase. (#10347, #10348)
+ - Switch application_services_txns.txn_id database column to
+ BIGINT. (#10349)
+ - Convert internal type variable syntax to reflect wider
+ ecosystem use. (#10350, #10380, #10381, #10382, #10418)
+ - Make the Github Actions workflow configuration more
+ efficient. (#10383)
+ - Add type hints to get_{domain,localpart}_from_id. (#10385)
+ - When building Debian packages for prerelease versions, set
+ the Section accordingly. (#10391)
+ - Add type hints and comments to event auth code. (#10393)
+ - Stagger sending of presence update to remote servers,
+ reducing CPU spikes caused by starting many connections to
+ remote servers at once. (#10398)
+ - Remove unused events_by_room code (tech debt). (#10421)
+ - Add a github actions job which records success of other jobs.
+ (#10430)
+
+-------------------------------------------------------------------
+Thu Jul 22 16:20:00 UTC 2021 - Marcus Rueckert
+
+- Update to 1.38.1
+ Always include device_one_time_keys_count key in /sync response
+ to work around a bug in Element Android that broke encryption for
+ new devices. (#10457)
+
+-------------------------------------------------------------------
+Fri Jul 16 15:32:21 UTC 2021 - Marcus Rueckert
+
+- oidc can be enabled on TW as the Authlib package is in the distro
+
+-------------------------------------------------------------------
+Fri Jul 16 14:48:15 UTC 2021 - Marcus Rueckert
+
+- drop all conditionals that were enabled anyway
+- rename remaining conditionals to have a synapse_ prefix
+
+-------------------------------------------------------------------
+Wed Jul 14 15:03:02 UTC 2021 - Marcus Rueckert
+
+- Update to 1.38.0
+ This release includes a database schema update which could result
+ in elevated disk usage. See the upgrade notes for more
+ information.
+
+ - Features
+ - Implement refresh tokens as specified by MSC2918. (#9450)
+ - Add support for evicting cache entries based on last access
+ time. (#10205)
+ - Omit empty fields from the /sync response. Contributed by
+ @deepbluev7. (#10214)
+ - Improve validation on federation send_{join,leave,knock}
+ endpoints. (#10225, #10243)
+ - Add SSO external_ids to the Query User Account admin API.
+ (#10261)
+ - Mark events received over federation which fail a spam check
+ as "soft-failed". (#10263)
+ - Add metrics for new inbound federation staging area. (#10284)
+ - Add script to print information about recently registered
+ users. (#10290)
+ - Bugfixes
+ - Fix bug where inbound federation in a room could be delayed
+ due to not correctly dropping a lock. Introduced in v1.37.1.
+ (#10336)
+ - Fix a long-standing bug which meant that invite rejections
+ and knocks were not sent out over federation in a timely
+ manner. (#10223)
+ - Fix a bug introduced in v1.26.0 where only users who have set
+ profile information could be deactivated with erasure
+ enabled. (#10252)
+ - Fix a long-standing bug where Synapse would return errors
+ after 231 events were handled by the server. (#10264, #10267,
+ #10282, #10286, #10291, #10314, #10326)
+ - Fix the prometheus synapse_federation_server_pdu_process_time
+ metric. Broke in v1.37.1. (#10279)
+ - Ensure that inbound events from federation that were being
+ processed when Synapse was restarted get promptly processed
+ on start up. (#10303)
+ - Improved Documentation
+ - Update links to documentation in the sample config.
+ Contributed by @dklimpel. (#10287)
+ - Fix broken links in INSTALL.md. Contributed by @dklimpel.
+ (#10331)
+ - Move the upgrade notes to docs/upgrade.md and convert them to
+ markdown. (#10166)
+ - Choose Welcome & Overview as the default page for synapse
+ documentation website. (#10242)
+ - Adjust the URL in the README.rst file to point to
+ irc.libera.chat. (#10258)
+ - Fix homeserver config option name in presence router
+ documentation. (#10288)
+ - Fix link pointing at the wrong section in the modules
+ documentation page. (#10302)
+ - Internal Changes
+ - Drop Origin and Accept from the value of the
+ Access-Control-Allow-Headers response header. (#10114)
+ - Add type hints to the federation servlets. (#10213)
+ - Improve the reliability of auto-joining remote rooms.
+ (#10237)
+ - Update the release script to use the semver terminology and
+ determine the release branch based on the next version.
+ (#10239)
+ - Fix type hints for computing auth events. (#10253)
+ - Improve the performance of the spaces summary endpoint by
+ only recursing into spaces (and not rooms in general).
+ (#10256)
+ - Move event authentication methods from Auth to
+ EventAuthHandler. (#10268)
+ - Re-enable a SyTest after it has been fixed. (#10292)
+
-------------------------------------------------------------------
Wed Jun 30 14:03:06 UTC 2021 - Marcus Rueckert
diff --git a/matrix-synapse.obsinfo b/matrix-synapse.obsinfo
index 1390b3b..3092106 100644
--- a/matrix-synapse.obsinfo
+++ b/matrix-synapse.obsinfo
@@ -1,5 +1,5 @@
name: matrix-synapse
-version: 1.37.1
-mtime: 1625060826
-commit: c45246153f65bf7e028d876727117b1ddf178979
+version: 1.40.0
+mtime: 1628599858
+commit: 9f7c038272318bab09535e85e6bb4345ed2f1368
diff --git a/matrix-synapse.spec b/matrix-synapse.spec
index fc8f049..02b55a9 100644
--- a/matrix-synapse.spec
+++ b/matrix-synapse.spec
@@ -17,20 +17,17 @@
# These come from matrix-synapse's CONDITIONAL_REQUIREMENTS.
-%bcond_without email_notifs
-%bcond_without postgres
-%bcond_with oidc
-%bcond_without saml
-%bcond_without url_preview
-%bcond_without jwt
-%bcond_without cache_memory
-%bcond_with redis
# missing deps
-%bcond_with opentracing
+%if 0%{?suse_version} >= 1550
+%bcond_without synapse_oidc
+%else
+%bcond_with synapse_oidc
+%endif
+%bcond_with synapse_redis
+%bcond_with synapse_opentracing
+%bcond_with synapse_sentry
# matrix-synapse-ldap isn't packaged on openSUSE.
-%bcond_with ldap
-# sentry-sdk isn't packaged on openSUSE.
-%bcond_with sentry
+%bcond_with synapse_ldap
## Package updates
#
@@ -50,7 +47,7 @@
%define pkgname matrix-synapse
%define eggname matrix_synapse
Name: %{pkgname}
-Version: 1.37.1
+Version: 1.40.0
Release: 0
Summary: Matrix protocol reference homeserver
License: Apache-2.0
@@ -144,50 +141,40 @@ BuildRequires: %{use_python}-unpaddedbase64 >= 1.1.0
%requires_eq %{use_python}-unpaddedbase64
# Specify all CONDITIONAL_REQUIREMENTS (we Require them to avoid no-recommends
# breaking very commonly-used bits of matrix-synapse such as postgresql).
-%if %{with ldap}
+%if %{with synapse_ldap}
BuildRequires: %{use_python}-matrix-synapse-ldap3 >= 0.1
%requires_eq %{use_python}-matrix-synapse-ldap3
%endif
-%if %{with postgres}
BuildRequires: %{use_python}-psycopg2 >= 2.8
%requires_eq %{use_python}-psycopg2
-%endif
-%if %{with saml}
BuildRequires: %{use_python}-pysaml2 >= 4.5.0
%requires_eq %{use_python}-pysaml2
+%if %{with synapse_oidc}
+BuildRequires: %{use_python}-Authlib >= 0.15.1
+%requires_eq %{use_python}-Authlib
%endif
-%if %{with oidc}
-BuildRequires: %{use_python}-authlib >= 0.15.1
-%requires_eq %{use_python}-authlib
-%endif
-%if %{with url_preview}
BuildRequires: %{use_python}-lxml >= 3.5.0
%requires_eq %{use_python}-lxml
-%endif
-%if %{with sentry}
+%if %{with synapse_sentry}
BuildRequires: %{use_python}-sentry-sdk >= 0.7.2
%requires_eq %{use_python}-sentry-sdk
%endif
-%if %{with jwt}
BuildRequires: %{use_python}-PyJWT >= 1.6.4
%requires_eq %{use_python}-PyJWT
-%endif
-%if %{with opentracing}
+%if %{with synapse_opentracing}
BuildRequires: %{use_python}-jaeger-client >= 4.0.0
%requires_eq %{use_python}-jaeger-client
BuildRequires: %{use_python}-opentracing >= 2.2.0
%requires_eq %{use_python}-opentracing
%endif
-%if %{with redis}
-BuildRequires: %{use_python}-txredisapi >= 1.4.7
-%requires_eq %{use_python}-txredisapi
+%if %{with synapse_redis}
BuildRequires: %{use_python}-hiredis
-%requires_eq %{use_python}-hiredis
+BuildRequires: %{use_python}-txredisapi >= 1.4.7
+Requires: %{use_python}-hiredis
+Requires: %{use_python}-txredisapi
%endif
-%if %{with cache_memory}
BuildRequires: %{use_python}-Pympler
%requires_eq %{use_python}-Pympler
-%endif
BuildArch: noarch
# We only provide/obsolete python2 to ensure that users upgrade.
Obsoletes: python2-matrix-synapse < %{version}-%{release}