From 41c41d2c1219365ebcebd93f26e18ae41ccc917a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jul 2026 09:30:01 +0000 Subject: [PATCH 1/4] Bump quinn-proto from 0.11.14 to 0.11.16 (#20010) Signed-off-by: dependabot[bot] --- Cargo.lock | 87 +++++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 76 insertions(+), 11 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 4c68ebcb18..22ddde611a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -103,6 +103,17 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" +[[package]] +name = "chacha20" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d524456ba66e72eb8b115ff89e01e497f8e6d11d78b70b1aa13c0fbd97540a81" +dependencies = [ + "cfg-if", + "cpufeatures 0.3.0", + "rand_core 0.10.1", +] + [[package]] name = "core-foundation" version = "0.10.1" @@ -137,6 +148,15 @@ dependencies = [ "libc", ] +[[package]] +name = "cpufeatures" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b2a41393f66f16b0823bb79094d54ac5fbd34ab292ddafb9a0456ac9f87d201" +dependencies = [ + "libc", +] + [[package]] name = "crypto-common" version = "0.1.6" @@ -312,12 +332,24 @@ name = "getrandom" version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4" +dependencies = [ + "cfg-if", + "libc", + "r-efi 5.3.0", + "wasi 0.14.2+wasi-0.2.4", +] + +[[package]] +name = "getrandom" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "300e883d756b2e4ec94e02791f39b04b522276138852cfc41d9fb7e904106099" dependencies = [ "cfg-if", "js-sys", "libc", - "r-efi", - "wasi 0.14.2+wasi-0.2.4", + "r-efi 6.0.0", + "rand_core 0.10.1", "wasm-bindgen", ] @@ -913,14 +945,15 @@ dependencies = [ [[package]] name = "quinn-proto" -version = "0.11.14" +version = "0.11.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "434b42fec591c96ef50e21e886936e66d3cc3f737104fdb9b737c40ffb94c098" +checksum = "2f4bfc015262b9df63c8845072ce59068853ff5872180c2ce2f13038b970e560" dependencies = [ "bytes", - "getrandom 0.3.3", + "getrandom 0.4.3", "lru-slab", - "rand", + "rand 0.10.2", + "rand_pcg", "ring", "rustc-hash", "rustls", @@ -961,6 +994,12 @@ version = "5.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" +[[package]] +name = "r-efi" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf" + [[package]] name = "rand" version = "0.9.4" @@ -968,7 +1007,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "44c5af06bb1b7d3216d91932aed5265164bf384dc89cd6ba05cf59a35f5f76ea" dependencies = [ "rand_chacha", - "rand_core", + "rand_core 0.9.3", +] + +[[package]] +name = "rand" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7f5fa3a058cd35567ef9bfa5e75732bee0f9e4c55fa90477bef2dfcdbc4be80" +dependencies = [ + "chacha20", + "getrandom 0.4.3", + "rand_core 0.10.1", ] [[package]] @@ -978,7 +1028,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" dependencies = [ "ppv-lite86", - "rand_core", + "rand_core 0.9.3", ] [[package]] @@ -990,6 +1040,21 @@ dependencies = [ "getrandom 0.3.3", ] +[[package]] +name = "rand_core" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "63b8176103e19a2643978565ca18b50549f6101881c443590420e4dc998a3c69" + +[[package]] +name = "rand_pcg" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "caa0f4137e1c0a72f4c651489402276c8e8e1cf081f3b0ba156d2cbeef09e86a" +dependencies = [ + "rand_core 0.10.1", +] + [[package]] name = "regex" version = "1.13.0" @@ -1249,7 +1314,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" dependencies = [ "cfg-if", - "cpufeatures", + "cpufeatures 0.2.17", "digest", ] @@ -1260,7 +1325,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283" dependencies = [ "cfg-if", - "cpufeatures", + "cpufeatures 0.2.17", "digest", ] @@ -1548,7 +1613,7 @@ version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "470dbf6591da1b39d43c14523b2b469c86879a53e8b758c8e090a470fe7b1fbe" dependencies = [ - "rand", + "rand 0.9.4", "web-time", ] From e3715b24fbf2c9399df54cb9e4e5282b91a94597 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 29 Jul 2026 09:30:21 +0000 Subject: [PATCH 2/4] Bump the patches group with 2 updates (#20012) Signed-off-by: dependabot[bot] --- Cargo.lock | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 22ddde611a..de9bdb900b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -78,9 +78,9 @@ checksum = "46c5e41b57b8bba42a04676d81cb89e9ee8e859a1a66f80a5a72e1cb76b34d43" [[package]] name = "bytes" -version = "1.12.0" +version = "1.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ae3f5d315924270530207e2a68396c3cc547f6dca3fbdca317cfb1a51edb593" +checksum = "fc652a48c352aef3ea3aed32080501cf3ef6ed5da78602a020c991775b0aff04" [[package]] name = "cc" @@ -436,9 +436,9 @@ dependencies = [ [[package]] name = "http-body-util" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b021d93e26becf5dc7e1b75b1bed1fd93124b374ceb73f43d4d4eafec896a64a" +checksum = "e9f41fd6a08e4d4ec69df65976da761afd5ad5e58a9d4acb46bd1c953a9e3ff2" dependencies = [ "bytes", "futures-core", From fba14358a7dd47c43166ce3f7139b04a44cf14d5 Mon Sep 17 00:00:00 2001 From: Eric Eastwood Date: Wed, 29 Jul 2026 10:32:41 -0500 Subject: [PATCH 3/4] Fix `RemoteJoinHelper` signing events with the default room version (room version mismatch) (#20015) Fix `RemoteJoinHelper` signing events with mismatched room version compared to the `room_version` arg. The default room version on `develop` is `11` but the `RemoteJoinHelper` `room_version` arg defaults to `10` (room version mismatch). This mismatch wasn't present where this fix was developed (https://github.com/element-hq/synapse-private/pull/136) as the default room version was only recently bumped to `11` via https://github.com/element-hq/synapse/pull/18680 (not even in a release yet). Fixes the CI being broken on `develop` :x:: ``` [ERROR] Traceback (most recent call last): File "/home/runner/work/synapse/synapse/tests/federation/test_federation_join_upgraded_room.py", line 298, in test_no_transfer_when_tombstone_does_not_match join_helper.join(local_user_id, local_user_tok) File "/home/runner/work/synapse/synapse/tests/federation/_remote_join.py", line 350, in join self._test_case.helper.join(remote_room_id, local_user_id, tok=local_user_tok) File "/home/runner/work/synapse/synapse/tests/rest/client/utils.py", line 195, in join return self.change_membership( File "/home/runner/work/synapse/synapse/tests/rest/client/utils.py", line 333, in change_membership assert channel.code == expect_code, ( builtins.AssertionError: Expected: 200, got: 400, PUT /_matrix/client/r0/rooms/!remote-room:other.example.com/state/m.room.member/@user1:test?access_token=syt_dXNlcjE_JSEarRndiAGqtydnrdLn_33qlLD -> resp: b'{"errcode":"M_UNKNOWN","error":"No create event in state"}' tests.federation.test_federation_join_upgraded_room.FederationJoinUpgradedRoomTestCase.test_no_transfer_when_tombstone_does_not_match ``` These tests were originally introduced https://github.com/element-hq/synapse-private/pull/136 (developed private as this was part of the Synapse security release) and introduced into the public codebase via https://github.com/element-hq/synapse/commit/cbc6934821aab314506c5957223c60c74eeda091 --- changelog.d/20015.misc | 1 + tests/federation/_remote_join.py | 19 +++++++++++++------ 2 files changed, 14 insertions(+), 6 deletions(-) create mode 100644 changelog.d/20015.misc diff --git a/changelog.d/20015.misc b/changelog.d/20015.misc new file mode 100644 index 0000000000..2ef49ff017 --- /dev/null +++ b/changelog.d/20015.misc @@ -0,0 +1 @@ +Fix `RemoteJoinHelper` test helper signing events with the default room version (room version mismatch). diff --git a/tests/federation/_remote_join.py b/tests/federation/_remote_join.py index 94fa44e200..feb9c528c9 100644 --- a/tests/federation/_remote_join.py +++ b/tests/federation/_remote_join.py @@ -21,7 +21,8 @@ from unittest.mock import Mock import attr from synapse.api.constants import EventContentFields, EventTypes, Membership -from synapse.api.room_versions import RoomVersion, RoomVersions +from synapse.api.room_versions import KNOWN_ROOM_VERSIONS, RoomVersion +from synapse.config.server import DEFAULT_ROOM_VERSION from synapse.events import EventBase from synapse.events.utils import strip_event from synapse.federation.transport.client import SendJoinResponse @@ -87,7 +88,7 @@ class RemoteJoinHelper: federation_http_client: Mock, *, remote_creator_user_id: str | None = None, - room_version: RoomVersion = RoomVersions.V10, + room_version: RoomVersion = KNOWN_ROOM_VERSIONS[DEFAULT_ROOM_VERSION], create_content: JsonDict | None = None, state_events: list[RemoteStateEvent] | None = None, ) -> None: @@ -127,6 +128,7 @@ class RemoteJoinHelper: room_create_event = make_test_event( test_case.add_hashes_and_signatures_from_other_server( create_event_dict, + room_version=room_version, ), room_version=room_version, ) @@ -146,7 +148,8 @@ class RemoteJoinHelper: "content": {"membership": Membership.JOIN}, "auth_events": [room_create_event.event_id], "prev_events": [room_create_event.event_id], - } + }, + room_version=room_version, ), room_version=room_version, ) @@ -172,7 +175,8 @@ class RemoteJoinHelper: creator_membership_event.event_id, ], "prev_events": [prev_event.event_id], - } + }, + room_version=room_version, ), room_version=room_version, ) @@ -217,7 +221,8 @@ class RemoteJoinHelper: if extra_events else creator_membership_event.event_id ], - } + }, + room_version=room_version, ), room_version=room_version, ) @@ -315,7 +320,9 @@ class RemoteJoinHelper: ): # As the remote server, sign the join event before returning it. join_membership_event_signed = make_test_event( - self._test_case.add_hashes_and_signatures_from_other_server(data), + self._test_case.add_hashes_and_signatures_from_other_server( + data, room_version=room_version + ), room_version=room_version, ) return SendJoinResponse( From 897f68b3c2ca0a4f07943f48f65c5a898e2448e8 Mon Sep 17 00:00:00 2001 From: Eric Eastwood Date: Wed, 29 Jul 2026 13:30:39 -0500 Subject: [PATCH 4/4] Fix `assertIncludes` printing `None` at the end of the message (#20020) --- changelog.d/20020.misc | 1 + tests/unittest.py | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 changelog.d/20020.misc diff --git a/changelog.d/20020.misc b/changelog.d/20020.misc new file mode 100644 index 0000000000..aa77313581 --- /dev/null +++ b/changelog.d/20020.misc @@ -0,0 +1 @@ +Fix `assertIncludes` printing `None` at the end of the message. diff --git a/tests/unittest.py b/tests/unittest.py index 3d130c1d77..152fb341cb 100644 --- a/tests/unittest.py +++ b/tests/unittest.py @@ -317,7 +317,11 @@ class TestCase(unittest.TestCase): ) diff_message = f"{first_message}\n{expected_string}\n{actual_string}" - self.fail(f"{diff_message}\n{message}") + extra_message = "" + if message is not None: + extra_message = "f\n{message}" + + self.fail(f"{diff_message}{extra_message}") def DEBUG(target: TV) -> TV: