synapse/synapse
Devon Hudson df24e0f302
Fix support for older versions of zope-interface (#19274)
Fixes #19269 

Versions of zope-interface from RHEL, Ubuntu LTS 22 & 24 and OpenSuse
don't support the new python union `X | Y` syntax for interfaces. This
PR partially reverts the change over to fully use the new syntax, adds a
minimum supported version of zope-interface to Synapse's dependency
list, and removes the linter auto-upgrades which prefer the newer
syntax.

### Pull Request Checklist

<!-- Please read
https://element-hq.github.io/synapse/latest/development/contributing_guide.html
before submitting your pull request -->

* [X] Pull request is based on the develop branch
* [X] Pull request includes a [changelog
file](https://element-hq.github.io/synapse/latest/development/contributing_guide.html#changelog).
The entry should:
- Be a short description of your change which makes sense to users.
"Fixed a bug that prevented receiving messages from other servers."
instead of "Moved X method from `EventStore` to `EventWorkerStore`.".
  - Use markdown where necessary, mostly for `code blocks`.
  - End with either a period (.) or an exclamation mark (!).
  - Start with a capital letter.
- Feel free to credit yourself, by adding a sentence "Contributed by
@github_username." or "Contributed by [Your Name]." to the end of the
entry.
* [X] [Code
style](https://element-hq.github.io/synapse/latest/code_style.html) is
correct (run the
[linters](https://element-hq.github.io/synapse/latest/development/contributing_guide.html#run-the-linters))

---------

Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
2025-12-12 15:34:13 +00:00
..
_scripts MSC4140: Remove auth from delayed event management endpoints (#19152) 2025-11-13 18:56:17 +00:00
api Respond with useful error codes when Content-Length header/s are invalid (#19212) 2025-12-08 21:39:18 +00:00
app Fix support for older versions of zope-interface (#19274) 2025-12-12 15:34:13 +00:00
appservice Fix bug where Duration was logged incorrectly (#19267) 2025-12-02 20:08:32 +00:00
config Document how merging config files works - see #11203 (#19243) 2025-12-01 16:05:07 +00:00
crypto Be able to shutdown homeserver that hasn't setup (#19187) 2025-12-02 10:58:06 -06:00
events Fix v12 rooms when using frozen dicts (#19235) 2025-12-01 18:26:43 +00:00
federation Port Clock functions to use Duration class (#19229) 2025-12-01 13:55:06 +00:00
handlers Fix support for older versions of zope-interface (#19274) 2025-12-12 15:34:13 +00:00
http Fix support for older versions of zope-interface (#19274) 2025-12-12 15:34:13 +00:00
logging Fix support for older versions of zope-interface (#19274) 2025-12-12 15:34:13 +00:00
media Fix support for older versions of zope-interface (#19274) 2025-12-12 15:34:13 +00:00
metrics Port Clock functions to use Duration class (#19229) 2025-12-01 13:55:06 +00:00
module_api Port Clock functions to use Duration class (#19229) 2025-12-01 13:55:06 +00:00
push Fix support for older versions of zope-interface (#19274) 2025-12-12 15:34:13 +00:00
replication Port Clock functions to use Duration class (#19229) 2025-12-01 13:55:06 +00:00
res Updated providers.json to use X instead of Twitter following rebrand and schema change (#18767) 2025-09-26 11:06:50 +01:00
rest Add memberships admin API (#19260) 2025-12-12 13:35:46 +00:00
server_notices Write union types as X | Y where possible (#19111) 2025-11-06 14:02:33 -06:00
spam_checker_api Correctly mention previous copyright (#16820) 2024-01-23 11:26:48 +00:00
state Port Clock functions to use Duration class (#19229) 2025-12-01 13:55:06 +00:00
static Update link to the clients webpage, fix #15825 (#15874) 2023-07-06 17:28:09 +02:00
storage Add memberships admin API (#19260) 2025-12-12 13:35:46 +00:00
streams Write union types as X | Y where possible (#19111) 2025-11-06 14:02:33 -06:00
synapse_rust Write union types as X | Y where possible (#19111) 2025-11-06 14:02:33 -06:00
types Fix sliding sync performance slow down for long lived connections. (#19206) 2025-12-12 10:02:57 +00:00
util Fix support for older versions of zope-interface (#19274) 2025-12-12 15:34:13 +00:00
__init__.py Drop Python 3.9, bump tests/builds to Python 3.10 (#19099) 2025-10-29 12:15:00 -05:00
event_auth.py Write union types as X | Y where possible (#19111) 2025-11-06 14:02:33 -06:00
notifier.py Port Clock functions to use Duration class (#19229) 2025-12-01 13:55:06 +00:00
py.typed
server.py Fix support for older versions of zope-interface (#19274) 2025-12-12 15:34:13 +00:00
visibility.py Move call invite filtering logic to filter_events_for_client (#17782) 2025-11-28 17:41:56 +00:00