summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--changelog.d/12563.removal1
-rw-r--r--synapse/federation/transport/client.py483
2 files changed, 1 insertions, 483 deletions
diff --git a/changelog.d/12563.removal b/changelog.d/12563.removal
new file mode 100644
index 0000000000..41f6fae5da
--- /dev/null
+++ b/changelog.d/12563.removal
@@ -0,0 +1 @@
+Remove support for the non-standard groups/communities feature from Synapse.
diff --git a/synapse/federation/transport/client.py b/synapse/federation/transport/client.py
index 9da80176a5..9e84bd677e 100644
--- a/synapse/federation/transport/client.py
+++ b/synapse/federation/transport/client.py
@@ -17,7 +17,6 @@ import logging
 import urllib
 from typing import (
     Any,
-    Awaitable,
     Callable,
     Collection,
     Dict,
@@ -681,488 +680,6 @@ class TransportLayerClient:
             timeout=timeout,
         )
 
-    async def get_group_profile(
-        self, destination: str, group_id: str, requester_user_id: str
-    ) -> JsonDict:
-        """Get a group profile"""
-        path = _create_v1_path("/groups/%s/profile", group_id)
-
-        return await self.client.get_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": requester_user_id},
-            ignore_backoff=True,
-        )
-
-    async def update_group_profile(
-        self, destination: str, group_id: str, requester_user_id: str, content: JsonDict
-    ) -> JsonDict:
-        """Update a remote group profile
-
-        Args:
-            destination
-            group_id
-            requester_user_id
-            content: The new profile of the group
-        """
-        path = _create_v1_path("/groups/%s/profile", group_id)
-
-        return self.client.post_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": requester_user_id},
-            data=content,
-            ignore_backoff=True,
-        )
-
-    async def get_group_summary(
-        self, destination: str, group_id: str, requester_user_id: str
-    ) -> JsonDict:
-        """Get a group summary"""
-        path = _create_v1_path("/groups/%s/summary", group_id)
-
-        return await self.client.get_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": requester_user_id},
-            ignore_backoff=True,
-        )
-
-    async def get_rooms_in_group(
-        self, destination: str, group_id: str, requester_user_id: str
-    ) -> JsonDict:
-        """Get all rooms in a group"""
-        path = _create_v1_path("/groups/%s/rooms", group_id)
-
-        return await self.client.get_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": requester_user_id},
-            ignore_backoff=True,
-        )
-
-    async def add_room_to_group(
-        self,
-        destination: str,
-        group_id: str,
-        requester_user_id: str,
-        room_id: str,
-        content: JsonDict,
-    ) -> JsonDict:
-        """Add a room to a group"""
-        path = _create_v1_path("/groups/%s/room/%s", group_id, room_id)
-
-        return await self.client.post_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": requester_user_id},
-            data=content,
-            ignore_backoff=True,
-        )
-
-    async def update_room_in_group(
-        self,
-        destination: str,
-        group_id: str,
-        requester_user_id: str,
-        room_id: str,
-        config_key: str,
-        content: JsonDict,
-    ) -> JsonDict:
-        """Update room in group"""
-        path = _create_v1_path(
-            "/groups/%s/room/%s/config/%s", group_id, room_id, config_key
-        )
-
-        return await self.client.post_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": requester_user_id},
-            data=content,
-            ignore_backoff=True,
-        )
-
-    async def remove_room_from_group(
-        self, destination: str, group_id: str, requester_user_id: str, room_id: str
-    ) -> JsonDict:
-        """Remove a room from a group"""
-        path = _create_v1_path("/groups/%s/room/%s", group_id, room_id)
-
-        return await self.client.delete_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": requester_user_id},
-            ignore_backoff=True,
-        )
-
-    async def get_users_in_group(
-        self, destination: str, group_id: str, requester_user_id: str
-    ) -> JsonDict:
-        """Get users in a group"""
-        path = _create_v1_path("/groups/%s/users", group_id)
-
-        return await self.client.get_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": requester_user_id},
-            ignore_backoff=True,
-        )
-
-    async def get_invited_users_in_group(
-        self, destination: str, group_id: str, requester_user_id: str
-    ) -> JsonDict:
-        """Get users that have been invited to a group"""
-        path = _create_v1_path("/groups/%s/invited_users", group_id)
-
-        return await self.client.get_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": requester_user_id},
-            ignore_backoff=True,
-        )
-
-    async def accept_group_invite(
-        self, destination: str, group_id: str, user_id: str, content: JsonDict
-    ) -> JsonDict:
-        """Accept a group invite"""
-        path = _create_v1_path("/groups/%s/users/%s/accept_invite", group_id, user_id)
-
-        return await self.client.post_json(
-            destination=destination, path=path, data=content, ignore_backoff=True
-        )
-
-    def join_group(
-        self, destination: str, group_id: str, user_id: str, content: JsonDict
-    ) -> Awaitable[JsonDict]:
-        """Attempts to join a group"""
-        path = _create_v1_path("/groups/%s/users/%s/join", group_id, user_id)
-
-        return self.client.post_json(
-            destination=destination, path=path, data=content, ignore_backoff=True
-        )
-
-    async def invite_to_group(
-        self,
-        destination: str,
-        group_id: str,
-        user_id: str,
-        requester_user_id: str,
-        content: JsonDict,
-    ) -> JsonDict:
-        """Invite a user to a group"""
-        path = _create_v1_path("/groups/%s/users/%s/invite", group_id, user_id)
-
-        return await self.client.post_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": requester_user_id},
-            data=content,
-            ignore_backoff=True,
-        )
-
-    async def invite_to_group_notification(
-        self, destination: str, group_id: str, user_id: str, content: JsonDict
-    ) -> JsonDict:
-        """Sent by group server to inform a user's server that they have been
-        invited.
-        """
-
-        path = _create_v1_path("/groups/local/%s/users/%s/invite", group_id, user_id)
-
-        return await self.client.post_json(
-            destination=destination, path=path, data=content, ignore_backoff=True
-        )
-
-    async def remove_user_from_group(
-        self,
-        destination: str,
-        group_id: str,
-        requester_user_id: str,
-        user_id: str,
-        content: JsonDict,
-    ) -> JsonDict:
-        """Remove a user from a group"""
-        path = _create_v1_path("/groups/%s/users/%s/remove", group_id, user_id)
-
-        return await self.client.post_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": requester_user_id},
-            data=content,
-            ignore_backoff=True,
-        )
-
-    async def remove_user_from_group_notification(
-        self, destination: str, group_id: str, user_id: str, content: JsonDict
-    ) -> JsonDict:
-        """Sent by group server to inform a user's server that they have been
-        kicked from the group.
-        """
-
-        path = _create_v1_path("/groups/local/%s/users/%s/remove", group_id, user_id)
-
-        return await self.client.post_json(
-            destination=destination, path=path, data=content, ignore_backoff=True
-        )
-
-    async def renew_group_attestation(
-        self, destination: str, group_id: str, user_id: str, content: JsonDict
-    ) -> JsonDict:
-        """Sent by either a group server or a user's server to periodically update
-        the attestations
-        """
-
-        path = _create_v1_path("/groups/%s/renew_attestation/%s", group_id, user_id)
-
-        return await self.client.post_json(
-            destination=destination, path=path, data=content, ignore_backoff=True
-        )
-
-    async def update_group_summary_room(
-        self,
-        destination: str,
-        group_id: str,
-        user_id: str,
-        room_id: str,
-        category_id: str,
-        content: JsonDict,
-    ) -> JsonDict:
-        """Update a room entry in a group summary"""
-        if category_id:
-            path = _create_v1_path(
-                "/groups/%s/summary/categories/%s/rooms/%s",
-                group_id,
-                category_id,
-                room_id,
-            )
-        else:
-            path = _create_v1_path("/groups/%s/summary/rooms/%s", group_id, room_id)
-
-        return await self.client.post_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": user_id},
-            data=content,
-            ignore_backoff=True,
-        )
-
-    async def delete_group_summary_room(
-        self,
-        destination: str,
-        group_id: str,
-        user_id: str,
-        room_id: str,
-        category_id: str,
-    ) -> JsonDict:
-        """Delete a room entry in a group summary"""
-        if category_id:
-            path = _create_v1_path(
-                "/groups/%s/summary/categories/%s/rooms/%s",
-                group_id,
-                category_id,
-                room_id,
-            )
-        else:
-            path = _create_v1_path("/groups/%s/summary/rooms/%s", group_id, room_id)
-
-        return await self.client.delete_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": user_id},
-            ignore_backoff=True,
-        )
-
-    async def get_group_categories(
-        self, destination: str, group_id: str, requester_user_id: str
-    ) -> JsonDict:
-        """Get all categories in a group"""
-        path = _create_v1_path("/groups/%s/categories", group_id)
-
-        return await self.client.get_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": requester_user_id},
-            ignore_backoff=True,
-        )
-
-    async def get_group_category(
-        self, destination: str, group_id: str, requester_user_id: str, category_id: str
-    ) -> JsonDict:
-        """Get category info in a group"""
-        path = _create_v1_path("/groups/%s/categories/%s", group_id, category_id)
-
-        return await self.client.get_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": requester_user_id},
-            ignore_backoff=True,
-        )
-
-    async def update_group_category(
-        self,
-        destination: str,
-        group_id: str,
-        requester_user_id: str,
-        category_id: str,
-        content: JsonDict,
-    ) -> JsonDict:
-        """Update a category in a group"""
-        path = _create_v1_path("/groups/%s/categories/%s", group_id, category_id)
-
-        return await self.client.post_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": requester_user_id},
-            data=content,
-            ignore_backoff=True,
-        )
-
-    async def delete_group_category(
-        self, destination: str, group_id: str, requester_user_id: str, category_id: str
-    ) -> JsonDict:
-        """Delete a category in a group"""
-        path = _create_v1_path("/groups/%s/categories/%s", group_id, category_id)
-
-        return await self.client.delete_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": requester_user_id},
-            ignore_backoff=True,
-        )
-
-    async def get_group_roles(
-        self, destination: str, group_id: str, requester_user_id: str
-    ) -> JsonDict:
-        """Get all roles in a group"""
-        path = _create_v1_path("/groups/%s/roles", group_id)
-
-        return await self.client.get_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": requester_user_id},
-            ignore_backoff=True,
-        )
-
-    async def get_group_role(
-        self, destination: str, group_id: str, requester_user_id: str, role_id: str
-    ) -> JsonDict:
-        """Get a roles info"""
-        path = _create_v1_path("/groups/%s/roles/%s", group_id, role_id)
-
-        return await self.client.get_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": requester_user_id},
-            ignore_backoff=True,
-        )
-
-    async def update_group_role(
-        self,
-        destination: str,
-        group_id: str,
-        requester_user_id: str,
-        role_id: str,
-        content: JsonDict,
-    ) -> JsonDict:
-        """Update a role in a group"""
-        path = _create_v1_path("/groups/%s/roles/%s", group_id, role_id)
-
-        return await self.client.post_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": requester_user_id},
-            data=content,
-            ignore_backoff=True,
-        )
-
-    async def delete_group_role(
-        self, destination: str, group_id: str, requester_user_id: str, role_id: str
-    ) -> JsonDict:
-        """Delete a role in a group"""
-        path = _create_v1_path("/groups/%s/roles/%s", group_id, role_id)
-
-        return await self.client.delete_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": requester_user_id},
-            ignore_backoff=True,
-        )
-
-    async def update_group_summary_user(
-        self,
-        destination: str,
-        group_id: str,
-        requester_user_id: str,
-        user_id: str,
-        role_id: str,
-        content: JsonDict,
-    ) -> JsonDict:
-        """Update a users entry in a group"""
-        if role_id:
-            path = _create_v1_path(
-                "/groups/%s/summary/roles/%s/users/%s", group_id, role_id, user_id
-            )
-        else:
-            path = _create_v1_path("/groups/%s/summary/users/%s", group_id, user_id)
-
-        return await self.client.post_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": requester_user_id},
-            data=content,
-            ignore_backoff=True,
-        )
-
-    async def set_group_join_policy(
-        self, destination: str, group_id: str, requester_user_id: str, content: JsonDict
-    ) -> JsonDict:
-        """Sets the join policy for a group"""
-        path = _create_v1_path("/groups/%s/settings/m.join_policy", group_id)
-
-        return await self.client.put_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": requester_user_id},
-            data=content,
-            ignore_backoff=True,
-        )
-
-    async def delete_group_summary_user(
-        self,
-        destination: str,
-        group_id: str,
-        requester_user_id: str,
-        user_id: str,
-        role_id: str,
-    ) -> JsonDict:
-        """Delete a users entry in a group"""
-        if role_id:
-            path = _create_v1_path(
-                "/groups/%s/summary/roles/%s/users/%s", group_id, role_id, user_id
-            )
-        else:
-            path = _create_v1_path("/groups/%s/summary/users/%s", group_id, user_id)
-
-        return await self.client.delete_json(
-            destination=destination,
-            path=path,
-            args={"requester_user_id": requester_user_id},
-            ignore_backoff=True,
-        )
-
-    async def bulk_get_publicised_groups(
-        self, destination: str, user_ids: Iterable[str]
-    ) -> JsonDict:
-        """Get the groups a list of users are publicising"""
-
-        path = _create_v1_path("/get_groups_publicised")
-
-        content = {"user_ids": user_ids}
-
-        return await self.client.post_json(
-            destination=destination, path=path, data=content, ignore_backoff=True
-        )
-
     async def get_room_complexity(self, destination: str, room_id: str) -> JsonDict:
         """
         Args: