summary refs log tree commit diff
diff options
context:
space:
mode:
authorPatrick Cloke <clokep@users.noreply.github.com>2022-06-10 07:15:51 -0400
committerGitHub <noreply@github.com>2022-06-10 07:15:51 -0400
commit81608490e364d5a332b06606aba0703f2fb5d0a9 (patch)
tree6775d0d9d68f3f97c3a227ea819217ba253468a9
parentEnable testing against PostgreSQL databases in Complement CI. (#12965) (diff)
downloadsynapse-81608490e364d5a332b06606aba0703f2fb5d0a9.tar.xz
Stop depending on `room_id` to be returned for children state in the hierarchy response. (#12991)
The `room_id` field was removed from MSC2946 before
it was accepted. It was initially kept for backwards compatibility
and should be removed now that the stable form of the API
is used.

This change only stops Synapse from validating that it is returned,
a future PR will remove returning it as part of the response.
Diffstat (limited to '')
-rw-r--r--changelog.d/12991.bugfix2
-rw-r--r--synapse/federation/federation_client.py4
-rw-r--r--tests/handlers/test_room_summary.py2
3 files changed, 3 insertions, 5 deletions
diff --git a/changelog.d/12991.bugfix b/changelog.d/12991.bugfix
new file mode 100644
index 0000000000..c6e388d5b9
--- /dev/null
+++ b/changelog.d/12991.bugfix
@@ -0,0 +1,2 @@
+Fix a bug where non-standard information was required when requesting the `/hierarchy` API over federation. Introduced 
+in Synapse v1.41.0.
diff --git a/synapse/federation/federation_client.py b/synapse/federation/federation_client.py
index ad475a913b..66e6305562 100644
--- a/synapse/federation/federation_client.py
+++ b/synapse/federation/federation_client.py
@@ -1642,10 +1642,6 @@ def _validate_hierarchy_event(d: JsonDict) -> None:
     if not isinstance(event_type, str):
         raise ValueError("Invalid event: 'event_type' must be a str")
 
-    room_id = d.get("room_id")
-    if not isinstance(room_id, str):
-        raise ValueError("Invalid event: 'room_id' must be a str")
-
     state_key = d.get("state_key")
     if not isinstance(state_key, str):
         raise ValueError("Invalid event: 'state_key' must be a str")
diff --git a/tests/handlers/test_room_summary.py b/tests/handlers/test_room_summary.py
index 0546655690..aa650756e4 100644
--- a/tests/handlers/test_room_summary.py
+++ b/tests/handlers/test_room_summary.py
@@ -178,7 +178,7 @@ class SpaceSummaryTestCase(unittest.HomeserverTestCase):
             result_room_ids.append(result_room["room_id"])
             result_children_ids.append(
                 [
-                    (cs["room_id"], cs["state_key"])
+                    (result_room["room_id"], cs["state_key"])
                     for cs in result_room["children_state"]
                 ]
             )