Fix space hierarchy endpoint to match MSC2946 (#11667)
Fixes minor discrepancies between the /hierarchy endpoint described in MSC2946 and the implementation. Note that the changes impact the stable and unstable /hierarchy and unstable /spaces endpoints for both client and federation APIs.
This commit is contained in:
parent
3b51c763ba
commit
feb3e006d7
|
@ -0,0 +1 @@
|
||||||
|
Fix `/_matrix/client/v1/room/{roomId}/hierarchy` endpoint returning incorrect fields which have been present since Synapse 1.49.0.
|
|
@ -209,7 +209,7 @@ class RoomSummaryHandler:
|
||||||
# Before returning to the client, remove the allowed_room_ids
|
# Before returning to the client, remove the allowed_room_ids
|
||||||
# and allowed_spaces keys.
|
# and allowed_spaces keys.
|
||||||
room.pop("allowed_room_ids", None)
|
room.pop("allowed_room_ids", None)
|
||||||
room.pop("allowed_spaces", None)
|
room.pop("allowed_spaces", None) # historical
|
||||||
|
|
||||||
rooms_result.append(room)
|
rooms_result.append(room)
|
||||||
events.extend(room_entry.children_state_events)
|
events.extend(room_entry.children_state_events)
|
||||||
|
@ -988,12 +988,14 @@ class RoomSummaryHandler:
|
||||||
"canonical_alias": stats["canonical_alias"],
|
"canonical_alias": stats["canonical_alias"],
|
||||||
"num_joined_members": stats["joined_members"],
|
"num_joined_members": stats["joined_members"],
|
||||||
"avatar_url": stats["avatar"],
|
"avatar_url": stats["avatar"],
|
||||||
|
# plural join_rules is a documentation error but kept for historical
|
||||||
|
# purposes. Should match /publicRooms.
|
||||||
"join_rules": stats["join_rules"],
|
"join_rules": stats["join_rules"],
|
||||||
|
"join_rule": stats["join_rules"],
|
||||||
"world_readable": (
|
"world_readable": (
|
||||||
stats["history_visibility"] == HistoryVisibility.WORLD_READABLE
|
stats["history_visibility"] == HistoryVisibility.WORLD_READABLE
|
||||||
),
|
),
|
||||||
"guest_can_join": stats["guest_access"] == "can_join",
|
"guest_can_join": stats["guest_access"] == "can_join",
|
||||||
"creation_ts": create_event.origin_server_ts,
|
|
||||||
"room_type": create_event.content.get(EventContentFields.ROOM_TYPE),
|
"room_type": create_event.content.get(EventContentFields.ROOM_TYPE),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue