@@ -568,7 +568,6 @@ async def create_event(
568568 requester : Requester ,
569569 event_dict : dict ,
570570 txn_id : Optional [str ] = None ,
571- allow_no_prev_events : bool = False ,
572571 prev_event_ids : Optional [List [str ]] = None ,
573572 auth_event_ids : Optional [List [str ]] = None ,
574573 state_event_ids : Optional [List [str ]] = None ,
@@ -594,10 +593,6 @@ async def create_event(
594593 requester
595594 event_dict: An entire event
596595 txn_id
597- allow_no_prev_events: Whether to allow this event to be created an empty
598- list of prev_events. Normally this is prohibited just because most
599- events should have a prev_event and we should only use this in special
600- cases (previously useful for MSC2716).
601596 prev_event_ids:
602597 the forward extremities to use as the prev_events for the
603598 new event.
@@ -717,7 +712,6 @@ async def create_event(
717712 event , unpersisted_context = await self .create_new_client_event (
718713 builder = builder ,
719714 requester = requester ,
720- allow_no_prev_events = allow_no_prev_events ,
721715 prev_event_ids = prev_event_ids ,
722716 auth_event_ids = auth_event_ids ,
723717 state_event_ids = state_event_ids ,
@@ -945,7 +939,6 @@ async def create_and_send_nonmember_event(
945939 self ,
946940 requester : Requester ,
947941 event_dict : dict ,
948- allow_no_prev_events : bool = False ,
949942 prev_event_ids : Optional [List [str ]] = None ,
950943 state_event_ids : Optional [List [str ]] = None ,
951944 ratelimit : bool = True ,
@@ -962,10 +955,6 @@ async def create_and_send_nonmember_event(
962955 Args:
963956 requester: The requester sending the event.
964957 event_dict: An entire event.
965- allow_no_prev_events: Whether to allow this event to be created an empty
966- list of prev_events. Normally this is prohibited just because most
967- events should have a prev_event and we should only use this in special
968- cases (previously useful for MSC2716).
969958 prev_event_ids:
970959 The event IDs to use as the prev events.
971960 Should normally be left as None to automatically request them
@@ -1051,7 +1040,6 @@ async def create_and_send_nonmember_event(
10511040 return await self ._create_and_send_nonmember_event_locked (
10521041 requester = requester ,
10531042 event_dict = event_dict ,
1054- allow_no_prev_events = allow_no_prev_events ,
10551043 prev_event_ids = prev_event_ids ,
10561044 state_event_ids = state_event_ids ,
10571045 ratelimit = ratelimit ,
@@ -1065,7 +1053,6 @@ async def _create_and_send_nonmember_event_locked(
10651053 self ,
10661054 requester : Requester ,
10671055 event_dict : dict ,
1068- allow_no_prev_events : bool = False ,
10691056 prev_event_ids : Optional [List [str ]] = None ,
10701057 state_event_ids : Optional [List [str ]] = None ,
10711058 ratelimit : bool = True ,
@@ -1097,7 +1084,6 @@ async def _create_and_send_nonmember_event_locked(
10971084 requester ,
10981085 event_dict ,
10991086 txn_id = txn_id ,
1100- allow_no_prev_events = allow_no_prev_events ,
11011087 prev_event_ids = prev_event_ids ,
11021088 state_event_ids = state_event_ids ,
11031089 outlier = outlier ,
@@ -1180,7 +1166,6 @@ async def create_new_client_event(
11801166 self ,
11811167 builder : EventBuilder ,
11821168 requester : Optional [Requester ] = None ,
1183- allow_no_prev_events : bool = False ,
11841169 prev_event_ids : Optional [List [str ]] = None ,
11851170 auth_event_ids : Optional [List [str ]] = None ,
11861171 state_event_ids : Optional [List [str ]] = None ,
@@ -1200,10 +1185,6 @@ async def create_new_client_event(
12001185 Args:
12011186 builder:
12021187 requester:
1203- allow_no_prev_events: Whether to allow this event to be created an empty
1204- list of prev_events. Normally this is prohibited just because most
1205- events should have a prev_event and we should only use this in special
1206- cases (previously useful for MSC2716).
12071188 prev_event_ids:
12081189 the forward extremities to use as the prev_events for the
12091190 new event.
@@ -1241,7 +1222,6 @@ async def create_new_client_event(
12411222 if state_event_ids is not None :
12421223 # Do a quick check to make sure that prev_event_ids is present to
12431224 # make the type-checking around `builder.build` happy.
1244- # prev_event_ids could be an empty array though.
12451225 assert prev_event_ids is not None
12461226
12471227 temp_event = await builder .build (
@@ -1269,24 +1249,14 @@ async def create_new_client_event(
12691249 else :
12701250 prev_event_ids = await self .store .get_prev_events_for_room (builder .room_id )
12711251
1252+ # We now ought to have some `prev_events` (unless it's a create event).
1253+ #
12721254 # Do a quick sanity check here, rather than waiting until we've created the
12731255 # event and then try to auth it (which fails with a somewhat confusing "No
12741256 # create event in auth events")
1275- if allow_no_prev_events :
1276- # We allow events with no `prev_events` but it better have some `auth_events`
1277- assert (
1278- builder .type == EventTypes .Create
1279- # Allow an event to have empty list of prev_event_ids
1280- # only if it has auth_event_ids.
1281- or auth_event_ids
1282- ), (
1283- "Attempting to create a non-m.room.create event with no prev_events or auth_event_ids"
1284- )
1285- else :
1286- # we now ought to have some prev_events (unless it's a create event).
1287- assert builder .type == EventTypes .Create or prev_event_ids , (
1288- "Attempting to create a non-m.room.create event with no prev_events"
1289- )
1257+ assert builder .type == EventTypes .Create or len (prev_event_ids ) > 0 , (
1258+ "Attempting to create an event with no prev_events"
1259+ )
12901260
12911261 if for_batch :
12921262 assert prev_event_ids is not None
0 commit comments