Skip to content

Commit 7fc937b

Browse files
authored
Stabilize MSC3266, support stable room_summary endpoint (#19720)
MSC3266 is merged in v1.15, let's stabilize it as part of #18731 1. Add support for the stable `/_matrix/client/v1/room_summary/` endpoint, keeping both unstable endpoints for compat 2. Remove the experimental `msc3266_enabled` flag
1 parent a6b5320 commit 7fc937b

4 files changed

Lines changed: 6 additions & 9 deletions

File tree

changelog.d/19720.feature

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Stabilize MSC3266, removing the experimental config flag `msc3266_enabled`. Add support for stable room summary endpoints. Contributed by @dasha-uwu.

docker/complement/conf/workers-shared-extra.yaml.j2

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -123,8 +123,6 @@ experimental_features:
123123
msc3874_enabled: true
124124
# no UIA for x-signing upload for the first time
125125
msc3967_enabled: true
126-
# Expose a room summary for public rooms
127-
msc3266_enabled: true
128126
# Send to-device messages to application services
129127
msc2409_to_device_messages_enabled: true
130128
# Allow application services to masquerade devices

synapse/config/experimental.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -386,9 +386,6 @@ def read_config(
386386
# MSC3814 (dehydrated devices with SSSS)
387387
self.msc3814_enabled: bool = experimental.get("msc3814_enabled", False)
388388

389-
# MSC3266 (room summary api)
390-
self.msc3266_enabled: bool = experimental.get("msc3266_enabled", False)
391-
392389
# MSC2409 (this setting only relates to optionally sending to-device messages).
393390
# Presence, typing and read receipt EDUs are already sent to application services that
394391
# have opted in to receive them. If enabled, this adds to-device messages to that list.

synapse/rest/client/room.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1718,16 +1718,18 @@ async def on_GET(
17181718

17191719
class RoomSummaryRestServlet(ResolveRoomIdMixin, RestServlet):
17201720
PATTERNS = (
1721-
# deprecated endpoint, to be removed
1721+
# deprecated unstable endpoint, to be removed
17221722
re.compile(
17231723
"^/_matrix/client/unstable/im.nheko.summary"
17241724
"/rooms/(?P<room_identifier>[^/]*)/summary$"
17251725
),
1726-
# recommended endpoint
1726+
# recommended unstable endpoint
17271727
re.compile(
17281728
"^/_matrix/client/unstable/im.nheko.summary"
17291729
"/summary/(?P<room_identifier>[^/]*)$"
17301730
),
1731+
# stable endpoint
1732+
re.compile("^/_matrix/client/v1/room_summary/(?P<room_identifier>[^/]*)$"),
17311733
)
17321734
CATEGORY = "Client API requests"
17331735

@@ -1775,8 +1777,7 @@ def register_servlets(hs: "HomeServer", http_server: HttpServer) -> None:
17751777
RoomTypingRestServlet(hs).register(http_server)
17761778
RoomEventContextServlet(hs).register(http_server)
17771779
RoomHierarchyRestServlet(hs).register(http_server)
1778-
if hs.config.experimental.msc3266_enabled:
1779-
RoomSummaryRestServlet(hs).register(http_server)
1780+
RoomSummaryRestServlet(hs).register(http_server)
17801781
RoomEventServlet(hs).register(http_server)
17811782
JoinedRoomsRestServlet(hs).register(http_server)
17821783
RoomAliasListServlet(hs).register(http_server)

0 commit comments

Comments
 (0)