summary refs log tree commit diff
diff options
context:
space:
mode:
authorJohannes Marbach <n0-0ne+github@mailbox.org>2024-09-05 18:07:39 +0200
committerGitHub <noreply@github.com>2024-09-05 17:07:39 +0100
commitde3363ef58a6088641b9fce51d75b1377f2841f2 (patch)
tree942989ad393dfa7a943122754fe1885b47c21c52
parentRevert "Fix bump stamp for non-joined rooms" (diff)
downloadsynapse-de3363ef58a6088641b9fce51d75b1377f2841f2.tar.xz
Stabilise MSC4156: `server_name` -> `via` (#17650)
-rw-r--r--changelog.d/17650.removal1
-rw-r--r--synapse/config/experimental.py3
-rw-r--r--synapse/rest/client/knock.py13
-rw-r--r--synapse/rest/client/room.py11
4 files changed, 9 insertions, 19 deletions
diff --git a/changelog.d/17650.removal b/changelog.d/17650.removal
new file mode 100644

index 0000000000..1238815c08 --- /dev/null +++ b/changelog.d/17650.removal
@@ -0,0 +1 @@ +Stabilise [MSC4156](https://github.com/matrix-org/matrix-spec-proposals/pull/4156) by removing the `msc4156_enabled` config setting and defaulting it to `true`. \ No newline at end of file diff --git a/synapse/config/experimental.py b/synapse/config/experimental.py
index 5d99c201a7..99185db93d 100644 --- a/synapse/config/experimental.py +++ b/synapse/config/experimental.py
@@ -447,6 +447,3 @@ class ExperimentalConfig(Config): # MSC4151: Report room API (Client-Server API) self.msc4151_enabled: bool = experimental.get("msc4151_enabled", False) - - # MSC4156: Migrate server_name to via - self.msc4156_enabled: bool = experimental.get("msc4156_enabled", False) diff --git a/synapse/rest/client/knock.py b/synapse/rest/client/knock.py
index e31687fc13..d7a17e1b35 100644 --- a/synapse/rest/client/knock.py +++ b/synapse/rest/client/knock.py
@@ -53,7 +53,6 @@ class KnockRoomAliasServlet(RestServlet): super().__init__() self.room_member_handler = hs.get_room_member_handler() self.auth = hs.get_auth() - self._support_via = hs.config.experimental.msc4156_enabled async def on_POST( self, @@ -72,15 +71,11 @@ class KnockRoomAliasServlet(RestServlet): # twisted.web.server.Request.args is incorrectly defined as Optional[Any] args: Dict[bytes, List[bytes]] = request.args # type: ignore - remote_room_hosts = parse_strings_from_args( - args, "server_name", required=False - ) - if self._support_via: + # Prefer via over server_name (deprecated with MSC4156) + remote_room_hosts = parse_strings_from_args(args, "via", required=False) + if remote_room_hosts is None: remote_room_hosts = parse_strings_from_args( - args, - "org.matrix.msc4156.via", - default=remote_room_hosts, - required=False, + args, "server_name", required=False ) elif RoomAlias.is_valid(room_identifier): handler = self.room_member_handler diff --git a/synapse/rest/client/room.py b/synapse/rest/client/room.py
index 83f84e4998..23c909ab14 100644 --- a/synapse/rest/client/room.py +++ b/synapse/rest/client/room.py
@@ -419,7 +419,6 @@ class JoinRoomAliasServlet(ResolveRoomIdMixin, TransactionRestServlet): super().__init__(hs) super(ResolveRoomIdMixin, self).__init__(hs) # ensure the Mixin is set up self.auth = hs.get_auth() - self._support_via = hs.config.experimental.msc4156_enabled def register(self, http_server: HttpServer) -> None: # /join/$room_identifier[/$txn_id] @@ -437,13 +436,11 @@ class JoinRoomAliasServlet(ResolveRoomIdMixin, TransactionRestServlet): # twisted.web.server.Request.args is incorrectly defined as Optional[Any] args: Dict[bytes, List[bytes]] = request.args # type: ignore - remote_room_hosts = parse_strings_from_args(args, "server_name", required=False) - if self._support_via: + # Prefer via over server_name (deprecated with MSC4156) + remote_room_hosts = parse_strings_from_args(args, "via", required=False) + if remote_room_hosts is None: remote_room_hosts = parse_strings_from_args( - args, - "org.matrix.msc4156.via", - default=remote_room_hosts, - required=False, + args, "server_name", required=False ) room_id, remote_room_hosts = await self.resolve_room_id( room_identifier,