mirror of
https://github.com/element-hq/synapse.git
synced 2024-12-19 17:56:19 +03:00
Merge remote-tracking branch 'origin/develop' into matrix-org-hotfixes
This commit is contained in:
commit
d1c180a7c9
11 changed files with 48 additions and 11 deletions
32
CHANGES.md
32
CHANGES.md
|
@ -1,3 +1,35 @@
|
||||||
|
# Synapse 1.101.0rc1 (2024-02-06)
|
||||||
|
|
||||||
|
### Improved Documentation
|
||||||
|
|
||||||
|
- Fix broken links in the documentation. ([\#16853](https://github.com/element-hq/synapse/issues/16853))
|
||||||
|
- Update MacOS installation instructions to mention that libicu is optional. ([\#16854](https://github.com/element-hq/synapse/issues/16854))
|
||||||
|
- The version picker now correctly lists versions after `v1.98.0`. ([\#16880](https://github.com/element-hq/synapse/issues/16880))
|
||||||
|
|
||||||
|
### Internal Changes
|
||||||
|
|
||||||
|
- Add support for stabilised [MSC3981](https://github.com/matrix-org/matrix-spec-proposals/pull/3981) that adds a `recurse` parameter on the `/relations` API. ([\#16842](https://github.com/element-hq/synapse/issues/16842))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### Updates to locked dependencies
|
||||||
|
|
||||||
|
* Bump dorny/paths-filter from 2 to 3. ([\#16869](https://github.com/element-hq/synapse/issues/16869))
|
||||||
|
* Bump gitpython from 3.1.40 to 3.1.41. ([\#16850](https://github.com/element-hq/synapse/issues/16850))
|
||||||
|
* Bump hiredis from 2.2.3 to 2.3.2. ([\#16862](https://github.com/element-hq/synapse/issues/16862))
|
||||||
|
* Bump jsonschema from 4.20.0 to 4.21.1. ([\#16887](https://github.com/element-hq/synapse/issues/16887))
|
||||||
|
* Bump lxml-stubs from 0.4.0 to 0.5.1. ([\#16885](https://github.com/element-hq/synapse/issues/16885))
|
||||||
|
* Bump mypy-zope from 1.0.1 to 1.0.3. ([\#16865](https://github.com/element-hq/synapse/issues/16865))
|
||||||
|
* Bump phonenumbers from 8.13.26 to 8.13.29. ([\#16868](https://github.com/element-hq/synapse/issues/16868))
|
||||||
|
* Bump pydantic from 2.5.3 to 2.6.0. ([\#16888](https://github.com/element-hq/synapse/issues/16888))
|
||||||
|
* Bump sentry-sdk from 1.39.1 to 1.40.0. ([\#16889](https://github.com/element-hq/synapse/issues/16889))
|
||||||
|
* Bump serde from 1.0.195 to 1.0.196. ([\#16867](https://github.com/element-hq/synapse/issues/16867))
|
||||||
|
* Bump serde_json from 1.0.111 to 1.0.113. ([\#16866](https://github.com/element-hq/synapse/issues/16866))
|
||||||
|
* Bump sigstore/cosign-installer from 3.3.0 to 3.4.0. ([\#16890](https://github.com/element-hq/synapse/issues/16890))
|
||||||
|
* Bump types-pillow from 10.1.0.2 to 10.2.0.20240125. ([\#16864](https://github.com/element-hq/synapse/issues/16864))
|
||||||
|
* Bump types-requests from 2.31.0.10 to 2.31.0.20240125. ([\#16886](https://github.com/element-hq/synapse/issues/16886))
|
||||||
|
* Bump types-setuptools from 69.0.0.0 to 69.0.0.20240125. ([\#16863](https://github.com/element-hq/synapse/issues/16863))
|
||||||
|
|
||||||
# Synapse 1.100.0 (2024-01-30)
|
# Synapse 1.100.0 (2024-01-30)
|
||||||
|
|
||||||
No significant changes since 1.100.0rc3.
|
No significant changes since 1.100.0rc3.
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
Add support for stabilised [MSC3981](https://github.com/matrix-org/matrix-spec-proposals/pull/3981) that adds a `recurse` parameter on the `/relations` API.
|
|
|
@ -1 +0,0 @@
|
||||||
Fix broken links in the documentation.
|
|
|
@ -1 +0,0 @@
|
||||||
Update MacOS installation instructions to mention that libicu is optional.
|
|
|
@ -1 +0,0 @@
|
||||||
The version picker now correctly lists versions after `v1.98.0`.
|
|
1
changelog.d/16893.bugfix
Normal file
1
changelog.d/16893.bugfix
Normal file
|
@ -0,0 +1 @@
|
||||||
|
Fix performance regression when fetching auth chains from the DB. Introduced in v1.100.0.
|
1
changelog.d/16894.bugfix
Normal file
1
changelog.d/16894.bugfix
Normal file
|
@ -0,0 +1 @@
|
||||||
|
Do not send multiple concurrent requests for keys for the same server.
|
6
debian/changelog
vendored
6
debian/changelog
vendored
|
@ -1,3 +1,9 @@
|
||||||
|
matrix-synapse-py3 (1.101.0~rc1) stable; urgency=medium
|
||||||
|
|
||||||
|
* New Synapse release 1.101.0rc1.
|
||||||
|
|
||||||
|
-- Synapse Packaging team <packages@matrix.org> Tue, 06 Feb 2024 16:02:02 +0000
|
||||||
|
|
||||||
matrix-synapse-py3 (1.100.0) stable; urgency=medium
|
matrix-synapse-py3 (1.100.0) stable; urgency=medium
|
||||||
|
|
||||||
* New Synapse release 1.100.0.
|
* New Synapse release 1.100.0.
|
||||||
|
|
|
@ -96,7 +96,7 @@ module-name = "synapse.synapse_rust"
|
||||||
|
|
||||||
[tool.poetry]
|
[tool.poetry]
|
||||||
name = "matrix-synapse"
|
name = "matrix-synapse"
|
||||||
version = "1.100.0"
|
version = "1.101.0rc1"
|
||||||
description = "Homeserver for the Matrix decentralised comms protocol"
|
description = "Homeserver for the Matrix decentralised comms protocol"
|
||||||
authors = ["Matrix.org Team and Contributors <packages@matrix.org>"]
|
authors = ["Matrix.org Team and Contributors <packages@matrix.org>"]
|
||||||
license = "AGPL-3.0-or-later"
|
license = "AGPL-3.0-or-later"
|
||||||
|
|
|
@ -839,11 +839,12 @@ class ServerKeyFetcher(BaseV2KeyFetcher):
|
||||||
Map from server_name -> key_id -> FetchKeyResult
|
Map from server_name -> key_id -> FetchKeyResult
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
# We only need to do one request per server.
|
||||||
|
servers_to_fetch = {k.server_name for k in keys_to_fetch}
|
||||||
|
|
||||||
results = {}
|
results = {}
|
||||||
|
|
||||||
async def get_keys(key_to_fetch_item: _FetchKeyRequest) -> None:
|
async def get_keys(server_name: str) -> None:
|
||||||
server_name = key_to_fetch_item.server_name
|
|
||||||
|
|
||||||
try:
|
try:
|
||||||
keys = await self.get_server_verify_keys_v2_direct(server_name)
|
keys = await self.get_server_verify_keys_v2_direct(server_name)
|
||||||
results[server_name] = keys
|
results[server_name] = keys
|
||||||
|
@ -852,7 +853,7 @@ class ServerKeyFetcher(BaseV2KeyFetcher):
|
||||||
except Exception:
|
except Exception:
|
||||||
logger.exception("Error getting keys from %s", server_name)
|
logger.exception("Error getting keys from %s", server_name)
|
||||||
|
|
||||||
await yieldable_gather_results(get_keys, keys_to_fetch)
|
await yieldable_gather_results(get_keys, servers_to_fetch)
|
||||||
return results
|
return results
|
||||||
|
|
||||||
async def get_server_verify_keys_v2_direct(
|
async def get_server_verify_keys_v2_direct(
|
||||||
|
|
|
@ -310,7 +310,7 @@ class EventFederationWorkerStore(SignatureWorkerStore, EventsWorkerStore, SQLBas
|
||||||
# Add all linked chains reachable from initial set of chains.
|
# Add all linked chains reachable from initial set of chains.
|
||||||
chains_to_fetch = set(event_chains.keys())
|
chains_to_fetch = set(event_chains.keys())
|
||||||
while chains_to_fetch:
|
while chains_to_fetch:
|
||||||
batch2 = tuple(itertools.islice(chains_to_fetch, 100))
|
batch2 = tuple(itertools.islice(chains_to_fetch, 1000))
|
||||||
chains_to_fetch.difference_update(batch2)
|
chains_to_fetch.difference_update(batch2)
|
||||||
clause, args = make_in_list_sql_clause(
|
clause, args = make_in_list_sql_clause(
|
||||||
txn.database_engine, "origin_chain_id", batch2
|
txn.database_engine, "origin_chain_id", batch2
|
||||||
|
@ -593,7 +593,7 @@ class EventFederationWorkerStore(SignatureWorkerStore, EventsWorkerStore, SQLBas
|
||||||
# the loop)
|
# the loop)
|
||||||
chains_to_fetch = set(seen_chains)
|
chains_to_fetch = set(seen_chains)
|
||||||
while chains_to_fetch:
|
while chains_to_fetch:
|
||||||
batch2 = tuple(itertools.islice(chains_to_fetch, 100))
|
batch2 = tuple(itertools.islice(chains_to_fetch, 1000))
|
||||||
clause, args = make_in_list_sql_clause(
|
clause, args = make_in_list_sql_clause(
|
||||||
txn.database_engine, "origin_chain_id", batch2
|
txn.database_engine, "origin_chain_id", batch2
|
||||||
)
|
)
|
||||||
|
|
Loading…
Reference in a new issue