@@ -70,6 +70,9 @@ class RoomVersion:
70
70
msc2176_redaction_rules = attr .ib (type = bool )
71
71
# MSC3083: Support the 'restricted' join_rule.
72
72
msc3083_join_rules = attr .ib (type = bool )
73
+ # MSC3375: Support for the proper redaction rules for MSC3083. This mustn't
74
+ # be enabled if MSC3083 is not.
75
+ msc3375_redaction_rules = attr .ib (type = bool )
73
76
# MSC2403: Allows join_rules to be set to 'knock', changes auth rules to allow sending
74
77
# m.room.membership event with membership 'knock'.
75
78
msc2403_knocking = attr .ib (type = bool )
@@ -92,6 +95,7 @@ class RoomVersions:
92
95
limit_notifications_power_levels = False ,
93
96
msc2176_redaction_rules = False ,
94
97
msc3083_join_rules = False ,
98
+ msc3375_redaction_rules = False ,
95
99
msc2403_knocking = False ,
96
100
msc2716_historical = False ,
97
101
msc2716_redactions = False ,
@@ -107,6 +111,7 @@ class RoomVersions:
107
111
limit_notifications_power_levels = False ,
108
112
msc2176_redaction_rules = False ,
109
113
msc3083_join_rules = False ,
114
+ msc3375_redaction_rules = False ,
110
115
msc2403_knocking = False ,
111
116
msc2716_historical = False ,
112
117
msc2716_redactions = False ,
@@ -122,6 +127,7 @@ class RoomVersions:
122
127
limit_notifications_power_levels = False ,
123
128
msc2176_redaction_rules = False ,
124
129
msc3083_join_rules = False ,
130
+ msc3375_redaction_rules = False ,
125
131
msc2403_knocking = False ,
126
132
msc2716_historical = False ,
127
133
msc2716_redactions = False ,
@@ -137,6 +143,7 @@ class RoomVersions:
137
143
limit_notifications_power_levels = False ,
138
144
msc2176_redaction_rules = False ,
139
145
msc3083_join_rules = False ,
146
+ msc3375_redaction_rules = False ,
140
147
msc2403_knocking = False ,
141
148
msc2716_historical = False ,
142
149
msc2716_redactions = False ,
@@ -152,6 +159,7 @@ class RoomVersions:
152
159
limit_notifications_power_levels = False ,
153
160
msc2176_redaction_rules = False ,
154
161
msc3083_join_rules = False ,
162
+ msc3375_redaction_rules = False ,
155
163
msc2403_knocking = False ,
156
164
msc2716_historical = False ,
157
165
msc2716_redactions = False ,
@@ -167,6 +175,7 @@ class RoomVersions:
167
175
limit_notifications_power_levels = True ,
168
176
msc2176_redaction_rules = False ,
169
177
msc3083_join_rules = False ,
178
+ msc3375_redaction_rules = False ,
170
179
msc2403_knocking = False ,
171
180
msc2716_historical = False ,
172
181
msc2716_redactions = False ,
@@ -182,6 +191,7 @@ class RoomVersions:
182
191
limit_notifications_power_levels = True ,
183
192
msc2176_redaction_rules = True ,
184
193
msc3083_join_rules = False ,
194
+ msc3375_redaction_rules = False ,
185
195
msc2403_knocking = False ,
186
196
msc2716_historical = False ,
187
197
msc2716_redactions = False ,
@@ -197,12 +207,29 @@ class RoomVersions:
197
207
limit_notifications_power_levels = True ,
198
208
msc2176_redaction_rules = False ,
199
209
msc3083_join_rules = False ,
210
+ msc3375_redaction_rules = False ,
200
211
msc2403_knocking = True ,
201
212
msc2716_historical = False ,
202
213
msc2716_redactions = False ,
203
214
)
204
215
V8 = RoomVersion (
205
216
"8" ,
217
+ RoomDisposition .UNSTABLE ,
218
+ EventFormatVersions .V3 ,
219
+ StateResolutionVersions .V2 ,
220
+ enforce_key_validity = True ,
221
+ special_case_aliases_auth = False ,
222
+ strict_canonicaljson = True ,
223
+ limit_notifications_power_levels = True ,
224
+ msc2176_redaction_rules = False ,
225
+ msc3083_join_rules = True ,
226
+ msc3375_redaction_rules = False ,
227
+ msc2403_knocking = True ,
228
+ msc2716_historical = False ,
229
+ msc2716_redactions = False ,
230
+ )
231
+ V9 = RoomVersion (
232
+ "9" ,
206
233
RoomDisposition .STABLE ,
207
234
EventFormatVersions .V3 ,
208
235
StateResolutionVersions .V2 ,
@@ -212,6 +239,7 @@ class RoomVersions:
212
239
limit_notifications_power_levels = True ,
213
240
msc2176_redaction_rules = False ,
214
241
msc3083_join_rules = True ,
242
+ msc3375_redaction_rules = True ,
215
243
msc2403_knocking = True ,
216
244
msc2716_historical = False ,
217
245
msc2716_redactions = False ,
@@ -227,6 +255,7 @@ class RoomVersions:
227
255
limit_notifications_power_levels = True ,
228
256
msc2176_redaction_rules = False ,
229
257
msc3083_join_rules = False ,
258
+ msc3375_redaction_rules = False ,
230
259
msc2403_knocking = True ,
231
260
msc2716_historical = True ,
232
261
msc2716_redactions = False ,
@@ -242,6 +271,7 @@ class RoomVersions:
242
271
limit_notifications_power_levels = True ,
243
272
msc2176_redaction_rules = False ,
244
273
msc3083_join_rules = False ,
274
+ msc3375_redaction_rules = False ,
245
275
msc2403_knocking = True ,
246
276
msc2716_historical = True ,
247
277
msc2716_redactions = True ,
@@ -261,6 +291,7 @@ class RoomVersions:
261
291
RoomVersions .V7 ,
262
292
RoomVersions .MSC2716 ,
263
293
RoomVersions .V8 ,
294
+ RoomVersions .V9 ,
264
295
)
265
296
}
266
297
@@ -293,7 +324,7 @@ class RoomVersionCapability:
293
324
),
294
325
RoomVersionCapability (
295
326
"restricted" ,
296
- RoomVersions .V8 ,
327
+ RoomVersions .V9 ,
297
328
lambda room_version : room_version .msc3083_join_rules ,
298
329
),
299
330
)
0 commit comments