From d48e69ad4caaa30c19cddbe5b3fcf8f8c7de31ea Mon Sep 17 00:00:00 2001 From: David Baker Date: Tue, 9 Sep 2025 09:53:08 +0100 Subject: [PATCH] Fix prefixed support for MSC4133 (#18875) This fixes two bugs that affect the availability of MSC4133 until the next spec release. 1. The servlet didn't recognise the unstable endpoint even when the homeserver advertised it 2. The HS didn't advertise support for the stable prefixed version Would only have been a problem until the next spec release but it's nice to have it work before then. --- changelog.d/18875.bugfix | 1 + synapse/rest/client/profile.py | 6 ++++++ synapse/rest/client/versions.py | 1 + 3 files changed, 8 insertions(+) create mode 100644 changelog.d/18875.bugfix diff --git a/changelog.d/18875.bugfix b/changelog.d/18875.bugfix new file mode 100644 index 000000000..3bda7a1d1 --- /dev/null +++ b/changelog.d/18875.bugfix @@ -0,0 +1 @@ +Fix prefixed support for MSC4133. diff --git a/synapse/rest/client/profile.py b/synapse/rest/client/profile.py index 243245f73..8bc532c81 100644 --- a/synapse/rest/client/profile.py +++ b/synapse/rest/client/profile.py @@ -109,6 +109,12 @@ class ProfileFieldRestServlet(RestServlet): self.hs = hs self.profile_handler = hs.get_profile_handler() self.auth = hs.get_auth() + if hs.config.experimental.msc4133_enabled: + self.PATTERNS.append( + re.compile( + r"^/_matrix/client/unstable/uk\.tcpip\.msc4133/profile/(?P[^/]*)/(?P[^/]*)" + ) + ) async def on_GET( self, request: SynapseRequest, user_id: str, field_name: str diff --git a/synapse/rest/client/versions.py b/synapse/rest/client/versions.py index 7f7837953..1b8efd98c 100644 --- a/synapse/rest/client/versions.py +++ b/synapse/rest/client/versions.py @@ -175,6 +175,7 @@ class VersionsRestServlet(RestServlet): "org.matrix.simplified_msc3575": msc3575_enabled, # Arbitrary key-value profile fields. "uk.tcpip.msc4133": self.config.experimental.msc4133_enabled, + "uk.tcpip.msc4133.stable": True, # MSC4155: Invite filtering "org.matrix.msc4155": self.config.experimental.msc4155_enabled, # MSC4306: Support for thread subscriptions