element-synapse/synapse/util
Devon Hudson df24e0f302
Some checks failed
Build docker images / Build and push image for linux/amd64 (push) Waiting to run
Build docker images / Build and push image for linux/arm64 (push) Waiting to run
Build docker images / Push merged images to docker.io/matrixdotorg/synapse (push) Blocked by required conditions
Build docker images / Push merged images to ghcr.io/element-hq/synapse (push) Blocked by required conditions
Deploy the documentation / Calculate variables for GitHub Pages deployment (push) Waiting to run
Deploy the documentation / GitHub Pages (push) Blocked by required conditions
Build release artifacts / Calculate list of debian distros (push) Waiting to run
Build release artifacts / Build .deb packages (push) Blocked by required conditions
Build release artifacts / Build wheels on ubuntu-24.04 (push) Waiting to run
Build release artifacts / Build wheels on ubuntu-24.04-arm (push) Waiting to run
Build release artifacts / Build sdist (push) Waiting to run
Build release artifacts / Attach assets to release (push) Blocked by required conditions
Schema / Ensure Synapse config schema is valid (push) Waiting to run
Schema / Ensure generated documentation is up-to-date (push) Waiting to run
Tests / lint-crlf (push) Waiting to run
Tests / changes (push) Waiting to run
Tests / check-sampleconfig (push) Blocked by required conditions
Tests / check-schema-delta (push) Blocked by required conditions
Tests / check-lockfile (push) Waiting to run
Tests / lint (push) Blocked by required conditions
Tests / Typechecking (push) Blocked by required conditions
Tests / lint-newsfile (push) Waiting to run
Tests / lint-clippy (push) Blocked by required conditions
Tests / lint-clippy-nightly (push) Blocked by required conditions
Tests / lint-rust (push) Blocked by required conditions
Tests / lint-rustfmt (push) Blocked by required conditions
Tests / lint-readme (push) Blocked by required conditions
Tests / linting-done (push) Blocked by required conditions
Tests / calculate-test-jobs (push) Blocked by required conditions
Tests / trial (push) Blocked by required conditions
Tests / trial-olddeps (push) Blocked by required conditions
Tests / trial-pypy (all, pypy-3.10) (push) Blocked by required conditions
Tests / sytest (push) Blocked by required conditions
Tests / export-data (push) Blocked by required conditions
Tests / portdb (14, 3.10) (push) Blocked by required conditions
Tests / portdb (17, 3.14) (push) Blocked by required conditions
Tests / complement (monolith, Postgres) (push) Blocked by required conditions
Tests / complement (monolith, SQLite) (push) Blocked by required conditions
Tests / complement (workers, Postgres) (push) Blocked by required conditions
Tests / cargo-test (push) Blocked by required conditions
Tests / cargo-bench (push) Blocked by required conditions
Tests / tests-done (push) Blocked by required conditions
/ Check locked dependencies have sdists (push) Has been cancelled
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
..
caches Port Clock functions to use Duration class (#19229) 2025-12-01 13:55:06 +00:00
__init__.py Move towards a dedicated Duration class (#19223) 2025-11-26 10:56:59 +00:00
async_helpers.py Port Clock functions to use Duration class (#19229) 2025-12-01 13:55:06 +00:00
background_queue.py Move towards a dedicated Duration class (#19223) 2025-11-26 10:56:59 +00:00
batching_queue.py Port Clock functions to use Duration class (#19229) 2025-12-01 13:55:06 +00:00
cancellation.py Correctly mention previous copyright (#16820) 2024-01-23 11:26:48 +00:00
check_dependencies.py Write union types as X | Y where possible (#19111) 2025-11-06 14:02:33 -06:00
clock.py Don't include debug logs in Clock unless explicitly enabled (#19278) 2025-12-04 23:49:24 +00:00
daemonize.py Write union types as X | Y where possible (#19111) 2025-11-06 14:02:33 -06:00
distributor.py Write union types as X | Y where possible (#19111) 2025-11-06 14:02:33 -06:00
duration.py Port Clock functions to use Duration class (#19229) 2025-12-01 13:55:06 +00:00
events.py Write union types as X | Y where possible (#19111) 2025-11-06 14:02:33 -06:00
file_consumer.py Fix support for older versions of zope-interface (#19274) 2025-12-12 15:34:13 +00:00
frozenutils.py Correctly mention previous copyright (#16820) 2024-01-23 11:26:48 +00:00
gai_resolver.py Write union types as X | Y where possible (#19111) 2025-11-06 14:02:33 -06:00
hash.py Correctly mention previous copyright (#16820) 2024-01-23 11:26:48 +00:00
httpresourcetree.py Use type hinting generics in standard collections (#19046) 2025-10-22 16:48:19 -05:00
iterutils.py Bump the minor-and-patches group with 3 updates (#19280) 2025-12-05 22:11:58 +00:00
json.py Use type hinting generics in standard collections (#19046) 2025-10-22 16:48:19 -05:00
linked_list.py Write union types as X | Y where possible (#19111) 2025-11-06 14:02:33 -06:00
logcontext.py Correctly mention previous copyright (#16820) 2024-01-23 11:26:48 +00:00
logformatter.py Correctly mention previous copyright (#16820) 2024-01-23 11:26:48 +00:00
macaroons.py Write union types as X | Y where possible (#19111) 2025-11-06 14:02:33 -06:00
manhole.py Write union types as X | Y where possible (#19111) 2025-11-06 14:02:33 -06:00
metrics.py Write union types as X | Y where possible (#19111) 2025-11-06 14:02:33 -06:00
module_loader.py Use type hinting generics in standard collections (#19046) 2025-10-22 16:48:19 -05:00
msisdn.py Return specific error code when email / phone not supported (#17578) 2025-05-05 11:08:50 +02:00
patch_inline_callbacks.py Use type hinting generics in standard collections (#19046) 2025-10-22 16:48:19 -05:00
pydantic_models.py Merge branch 'release-v1.142' into develop 2025-11-07 12:09:02 +00:00
ratelimitutils.py Port Clock functions to use Duration class (#19229) 2025-12-01 13:55:06 +00:00
retryutils.py Write union types as X | Y where possible (#19111) 2025-11-06 14:02:33 -06:00
rlimit.py Correctly mention previous copyright (#16820) 2024-01-23 11:26:48 +00:00
rust.py Fix rust source check when using .egg-info (#19251) 2025-12-01 13:34:21 +00:00
sentinel.py Fix performance regression related to delayed events processing (#18926) 2025-09-23 09:47:30 +01:00
stringutils.py Write union types as X | Y where possible (#19111) 2025-11-06 14:02:33 -06:00
task_scheduler.py Port Clock functions to use Duration class (#19229) 2025-12-01 13:55:06 +00:00
templates.py Write union types as X | Y where possible (#19111) 2025-11-06 14:02:33 -06:00
threepids.py Update license headers 2023-11-21 15:29:58 -05:00
wheel_timer.py Use type hinting generics in standard collections (#19046) 2025-10-22 16:48:19 -05:00