This repository was archived by the owner on Apr 26, 2024. It is now read-only.
File tree Expand file tree Collapse file tree 3 files changed +10
-2
lines changed Expand file tree Collapse file tree 3 files changed +10
-2
lines changed Original file line number Diff line number Diff line change
1
+ Don't pull out the full state when creating an event.
Original file line number Diff line number Diff line change 24
24
RoomVersion ,
25
25
)
26
26
from synapse .crypto .event_signing import add_hashes_and_signatures
27
+ from synapse .event_auth import auth_types_for_event
27
28
from synapse .events import EventBase , _EventInternalMetadata , make_event_from_dict
28
29
from synapse .state import StateHandler
29
30
from synapse .storage .databases .main import DataStore
31
+ from synapse .storage .state import StateFilter
30
32
from synapse .types import EventID , JsonDict
31
33
from synapse .util import Clock
32
34
from synapse .util .stringutils import random_string
@@ -121,7 +123,11 @@ async def build(
121
123
"""
122
124
if auth_event_ids is None :
123
125
state_ids = await self ._state .compute_state_after_events (
124
- self .room_id , prev_event_ids
126
+ self .room_id ,
127
+ prev_event_ids ,
128
+ state_filter = StateFilter .from_types (
129
+ auth_types_for_event (self .room_version , self )
130
+ ),
125
131
)
126
132
auth_event_ids = self ._event_auth_handler .compute_auth_events (
127
133
self , state_ids
Original file line number Diff line number Diff line change @@ -157,6 +157,7 @@ async def compute_state_after_events(
157
157
self ,
158
158
room_id : str ,
159
159
event_ids : Collection [str ],
160
+ state_filter : Optional [StateFilter ] = None ,
160
161
) -> StateMap [str ]:
161
162
"""Fetch the state after each of the given event IDs. Resolve them and return.
162
163
@@ -174,7 +175,7 @@ async def compute_state_after_events(
174
175
"""
175
176
logger .debug ("calling resolve_state_groups from compute_state_after_events" )
176
177
ret = await self .resolve_state_groups_for_events (room_id , event_ids )
177
- return await ret .get_state (self ._state_storage_controller , StateFilter . all () )
178
+ return await ret .get_state (self ._state_storage_controller , state_filter )
178
179
179
180
async def get_current_users_in_room (
180
181
self , room_id : str , latest_event_ids : List [str ]
You can’t perform that action at this time.
0 commit comments