synapse-product/changelog.d
David Robertson 313581e4e9
Use importlib.metadata to read requirements (#12088)
* Pull runtime dep checks into their own module
* Reimplement `check_requirements` using `importlib`

I've tried to make this clearer. We start by working out which of
Synapse's requirements we need to be installed here and now. I was
surprised that there wasn't an easier way to see which packages were
installed by a given extra.

I've pulled out the error messages into functions that deal with "is
this for an extra or not". And I've rearranged the loop over two
different sets of requirements into one loop with a "must be instaled"
flag.

I hope you agree that this is clearer.

* Test cases
2022-03-01 17:44:41 +00:00
..
.gitignore Correct attrs package name in requirements (#3492) 2018-07-07 10:46:59 +10:00
10870.misc Track and deduplicate in-flight requests to _get_state_for_groups. (#10870) 2022-02-18 17:23:31 +00:00
11599.doc Add documentation for missing worker types. (#11599) 2022-02-23 22:49:04 +00:00
11608.misc Cap the number of in-flight requests for state from a single group (#11608) 2022-02-22 14:24:31 +00:00
11610.misc Order in-flight state group queries in biggest-first order (#11610) 2022-03-01 13:41:57 +00:00
11617.feature Add support for MSC3202: sending one-time key counts and fallback key usage states to Application Services. (#11617) 2022-02-24 17:55:45 +00:00
11835.feature Prevent duplicate push notifications for room reads (#11835) 2022-02-17 10:23:54 +00:00
11865.removal synctl: print warning if synctl_cache_factor is set in config (#11865) 2022-02-28 11:42:13 +00:00
11900.misc Remove excess condition on knock->leave check (#11900) 2022-02-22 18:35:01 +00:00
11972.misc Add some tests for propagation of device list changes between local users (#11972) 2022-02-15 11:27:56 +00:00
11974.misc Optimise calculating device_list changes in /sync. (#11974) 2022-02-15 15:01:00 +00:00
11984.misc Add type hints to synapse/storage/databases/main (#11984) 2022-02-21 16:03:06 +00:00
11985.feature Fetch images when previewing Twitter URLs. (#11985) 2022-02-22 07:11:39 -05:00
11991.misc Refactor search code to reduce function size. (#11991) 2022-02-15 13:47:05 +00:00
11992.bugfix Fix incorrect thread summaries when the latest event is edited. (#11992) 2022-02-15 08:26:57 -05:00
11994.misc _auth_and_persist_outliers: drop events we have already seen (#11994) 2022-02-15 14:33:28 +00:00
11996.misc Limit concurrent AS joins (#11996) 2022-02-16 11:16:48 +00:00
11997.docker Docker: remove VOLUME directive (#11997) 2022-02-15 13:59:15 +00:00
11999.bugfix Fix incorrect get_rooms_for_user for remote user (#11999) 2022-02-15 14:26:28 +00:00
12000.feature Track cache invalidations (#12000) 2022-02-15 14:31:04 +00:00
12001.feature Implement account status endpoints (MSC3720) (#12001) 2022-02-22 15:10:10 +00:00
12003.doc Explain the meaning of spam checker callbacks' return values (#12003) 2022-02-16 12:25:43 +00:00
12004.doc Document why auth providers aren't validated in the admin API. (#12004) 2022-02-18 17:24:25 +00:00
12005.misc send_join response: get create event from state, not auth_chain (#12005) 2022-02-17 11:59:26 +00:00
12008.removal Remove support for the legacy structured logging configuration. (#12008) 2022-02-17 13:32:18 +00:00
12009.feature Allow modules to set a display name on registration (#12009) 2022-02-17 16:54:16 +00:00
12011.misc Faster joins: parse msc3706 fields in send_join response (#12011) 2022-02-17 16:11:59 +00:00
12012.misc Faster joins: persist to database (#12012) 2022-03-01 12:49:54 +00:00
12013.misc Faster joins: Support for calling /federation/v1/state (#12013) 2022-02-22 12:17:10 +00:00
12015.misc Configure tox to use venv (#12015) 2022-02-17 15:55:14 +00:00
12016.misc Fix bug in StateFilter.return_expanded() and add some tests. (#12016) 2022-02-18 14:54:31 +00:00
12018.removal Remove unstable MSC3283 flags (#12018) 2022-02-17 17:22:55 +00:00
12019.misc Use v3 endpoints for fallback auth (Matrix 1.1) (#12019) 2022-02-22 11:20:45 +00:00
12020.feature Advertise Matrix 1.1 in /_matrix/client/versions (#12020) 2022-02-18 07:49:53 -05:00
12021.feature Use stable MSC3069 is_guest flag on /whoami. (#12021) 2022-02-18 07:48:23 -05:00
12022.feature Advertise Matrix 1.2 in /_matrix/client/versions (#12022) 2022-02-21 08:59:29 -07:00
12024.bugfix Fix 500 error with Postgres when looking backwards with the MSC3030 /timestamp_to_event endpoint (#12024) 2022-02-18 12:11:18 +00:00
12025.misc Update the olddeps CI check to use an old version of markupsafe (#12025) 2022-02-18 11:38:48 +00:00
12030.misc Upgrade mypy to version 0.931 (#12030) 2022-02-18 15:57:26 +00:00
12031.misc Remove HomeServer.get_datastore() (#12031) 2022-02-23 11:04:02 +00:00
12033.misc Add more tests for in-flight state query duplication. (#12033) 2022-02-22 11:44:11 +00:00
12034.misc Minor typing fixes (#12034) 2022-02-21 18:37:04 +00:00
12037.bugfix Fix non-strings in the event_search table (#12037) 2022-02-24 11:52:28 +00:00
12039.misc remote join processing: get create event from state, not auth_chain (#12039) 2022-02-21 19:27:35 +00:00
12041.misc Run _handle_queued_pdus as a background process (#12041) 2022-02-22 13:33:22 +00:00
12051.misc Tidy the building of sdists and wheels (#12051) 2022-02-22 11:33:37 +00:00
12052.misc Prune setup.cfg some more (#12059) 2022-02-22 14:52:56 +00:00
12056.bugfix Fix slow performance of /logout in some cases where refresh tokens are in use. The slowness existed since the initial implementation of refresh tokens. (#12056) 2022-02-22 13:29:04 +00:00
12058.feature Use room version 9 as the default room version (per MSC3589). (#12058) 2022-02-22 14:09:40 +00:00
12059.misc Prune setup.cfg some more (#12059) 2022-02-22 14:52:56 +00:00
12060.misc Better error message when failing to request from another process (#12060) 2022-02-22 15:52:08 +00:00
12062.feature Add module callbacks called for reacting to deactivation status change and profile update (#12062) 2022-03-01 15:00:03 +00:00
12063.misc Rename default branch of complement.sh to main (#12063) 2022-02-23 10:06:18 +00:00
12066.misc Add type hints to tests/rest/client (#12066) 2022-02-23 08:33:19 -05:00
12067.feature Remove more references to get_datastore (#12067) 2022-02-23 12:35:53 +00:00
12068.misc Add logging to /sync for debugging #11916 (#12068) 2022-02-23 14:22:22 +00:00
12069.misc Minor typing fixes for synapse/storage/persist_events.py (#12069) 2022-02-25 10:19:49 +00:00
12070.misc Ensure that get_datastores().main is typed (#12070) 2022-02-25 10:20:40 +00:00
12072.misc Add type hints to tests/rest/client (#12072) 2022-02-24 13:56:38 -05:00
12073.removal Remove the unstable /spaces endpoint. (#12073) 2022-02-28 18:33:00 +00:00
12077.bugfix Properly failover for unknown endpoints from Conduit/Dendrite. (#12077) 2022-02-28 07:52:44 -05:00
12084.misc Add type hints to tests/rest/client (#12084) 2022-02-28 17:47:37 +00:00
12088.misc Use importlib.metadata to read requirements (#12088) 2022-03-01 17:44:41 +00:00
12089.bugfix Fix 'Unhandled error in Deferred' (#12089) 2022-03-01 09:51:38 +00:00
12092.misc Replace assertEquals and friends with non-deprecated versions. (#12092) 2022-02-28 07:12:29 -05:00
12094.misc Add type hints to tests/rest/client (#12094) 2022-02-28 18:59:00 +00:00
12098.bugfix Actually fix bad debug logging rejecting device list & signing key transactions (#12098) 2022-02-28 14:10:36 +00:00
12099.misc Move experimental support for MSC3440 to /versions. (#12099) 2022-02-28 18:29:09 +00:00
12100.bugfix Fix PushRuleEvaluator and Filter to work on frozendicts (#12100) 2022-02-28 17:40:24 +00:00
12105.bugfix Fix rare error in ReadWriteLock when writers complete immediately (#12105) 2022-03-01 15:27:15 +00:00
12106.misc Add stop_cancellation utility function (#12106) 2022-03-01 13:51:03 +00:00
12109.misc Improve exception handling for concurrent execution (#12109) 2022-03-01 09:34:30 +00:00
12111.misc Advertise Python 3.10 support in setup.py (#12111) 2022-03-01 12:35:32 +00:00
12112.docker Use Python 3.9 in Synapse dockerfiles by default (#12112) 2022-03-01 13:55:18 +00:00