diff --git a/synapse/rest/client/room.py b/synapse/rest/client/room.py
index f48e2e6ca2..955d4e8641 100644
--- a/synapse/rest/client/room.py
+++ b/synapse/rest/client/room.py
@@ -716,7 +716,10 @@ class RoomEventContextServlet(RestServlet):
results["events_after"], time_now
)
results["state"] = await self._event_serializer.serialize_events(
- results["state"], time_now
+ results["state"],
+ time_now,
+ # No need to bundle aggregations for state events
+ bundle_relations=False,
)
return 200, results
@@ -1067,62 +1070,6 @@ def register_txn_path(
)
-class TimestampLookupRestServlet(RestServlet):
- """
- API endpoint to fetch the `event_id` of the closest event to the given
- timestamp (`ts` query parameter) in the given direction (`dir` query
- parameter).
-
- Useful for cases like jump to date so you can start paginating messages from
- a given date in the archive.
-
- `ts` is a timestamp in milliseconds where we will find the closest event in
- the given direction.
-
- `dir` can be `f` or `b` to indicate forwards and backwards in time from the
- given timestamp.
-
- GET /_matrix/client/unstable/org.matrix.msc3030/rooms/<roomID>/timestamp_to_event?ts=<timestamp>&dir=<direction>
- {
- "event_id": ...
- }
- """
-
- PATTERNS = (
- re.compile(
- "^/_matrix/client/unstable/org.matrix.msc3030"
- "/rooms/(?P<room_id>[^/]*)/timestamp_to_event$"
- ),
- )
-
- def __init__(self, hs: "HomeServer"):
- super().__init__()
- self._auth = hs.get_auth()
- self._store = hs.get_datastore()
- self.timestamp_lookup_handler = hs.get_timestamp_lookup_handler()
-
- async def on_GET(
- self, request: SynapseRequest, room_id: str
- ) -> Tuple[int, JsonDict]:
- requester = await self._auth.get_user_by_req(request)
- await self._auth.check_user_in_room(room_id, requester.user.to_string())
-
- timestamp = parse_integer(request, "ts", required=True)
- direction = parse_string(request, "dir", default="f", allowed_values=["f", "b"])
-
- (
- event_id,
- origin_server_ts,
- ) = await self.timestamp_lookup_handler.get_event_for_timestamp(
- requester, room_id, timestamp, direction
- )
-
- return 200, {
- "event_id": event_id,
- "origin_server_ts": origin_server_ts,
- }
-
-
class RoomSpaceSummaryRestServlet(RestServlet):
PATTERNS = (
re.compile(
@@ -1193,7 +1140,7 @@ class RoomSpaceSummaryRestServlet(RestServlet):
class RoomHierarchyRestServlet(RestServlet):
PATTERNS = (
re.compile(
- "^/_matrix/client/(v1|unstable/org.matrix.msc2946)"
+ "^/_matrix/client/unstable/org.matrix.msc2946"
"/rooms/(?P<room_id>[^/]*)/hierarchy$"
),
)
@@ -1221,7 +1168,7 @@ class RoomHierarchyRestServlet(RestServlet):
)
return 200, await self._room_summary_handler.get_room_hierarchy(
- requester,
+ requester.user.to_string(),
room_id,
suggested_only=parse_boolean(request, "suggested_only", default=False),
max_depth=max_depth,
@@ -1292,8 +1239,6 @@ def register_servlets(
RoomAliasListServlet(hs).register(http_server)
SearchRestServlet(hs).register(http_server)
RoomCreateRestServlet(hs).register(http_server)
- if hs.config.experimental.msc3030_enabled:
- TimestampLookupRestServlet(hs).register(http_server)
# Some servlets only get registered for the main process.
if not is_worker:
|