Skip to content

Commit 23b0e11

Browse files
authored
MSC3589: Room version 9 as the default room version (#3589)
* Room version 9 as a default room version * Update statistics and notes about maturity * Adjust wording for Conduit * Update to stable link
1 parent e9fed10 commit 23b0e11

File tree

1 file changed

+67
-0
lines changed

1 file changed

+67
-0
lines changed
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
# MSC3589: Room version 9 as a default
2+
3+
Enough time has passed to allow the public federation to upgrade their servers to support room
4+
version 9, though with some caveats (see "potential issues"). This proposal aims to make v9 the
5+
default room version.
6+
7+
## Proposal
8+
9+
The specification adopts v9 as the suggested default room version, making no changes to the stability
10+
of any room versions. As of writing, v6 is currently the suggested room version.
11+
12+
Room version 9 is currently published here: https://spec.matrix.org/v1.2/rooms/v9/
13+
14+
## Potential issues
15+
16+
Servers will be encouraged to update their config/internal defaults to use v9 instead of v6. This
17+
is considered a good problem to have.
18+
19+
Note that servers are not required to honour the default room version due to it being a suggestion
20+
in the specification, however they might fall behind as other servers set their defaults accordingly.
21+
22+
Some server implementations, like Synapse, support configurable default room versions: servers which
23+
have set this flag will not necessarily be affected by this change.
24+
25+
As of writing (Jan 26, 2022), some prominent server implementations are only just getting support for
26+
the room version. Namely, Dendrite released a version with support about 2 months ago and Conduit is
27+
working on including Ruma's changes which landed also about 2 months ago.
28+
29+
Though both Dendrite and Conduit (meaning Ruma) have not had the same amount of time as Synapse to
30+
reach maturity on v9-capable versions, both the Dendrite and Conduit communities appear to update to
31+
newer versions much more quickly. This implies, without statistics to back it up, that nearly all
32+
Dendrite servers out there will have upgraded and that a similar percentage of Conduit servers will
33+
upgrade once available.
34+
35+
No major issues appear to be reported to Synapse or Dendrite with respect to v9, however Conduit
36+
has [reported](https://gitlab.com/famedly/conduit/-/merge_requests/257#note_814327701) that the auth
37+
rules for v9 might not be perfect. All of this indicates to the author that the implementation is at
38+
least sane and accomplishable, even if a bit difficult to incorporate.
39+
40+
For completeness, some links:
41+
42+
**Dendrite**:
43+
44+
* Tracking issue: https://github.com/matrix-org/dendrite/issues/2010
45+
* Library support: https://github.com/matrix-org/gomatrixserverlib/pull/279
46+
* Release: https://github.com/matrix-org/dendrite/commit/b4a007ecceafd2b93fee2e775b0a61283d4a3844
47+
* Testing: https://github.com/matrix-org/complement/pull/220
48+
49+
**Conduit**:
50+
51+
* Tracking issue: https://gitlab.com/famedly/conduit/-/issues/161
52+
* Library support: https://github.com/ruma/ruma/pull/771
53+
* Release: N/A
54+
* Testing: N/A
55+
56+
## Alternatives
57+
58+
None relevant.
59+
60+
## Security considerations
61+
62+
None relevant.
63+
64+
## Unstable prefix
65+
66+
None relevant - servers can already choose a different default room version legally. This MSC
67+
just formalizes v9 as the default.

0 commit comments

Comments
 (0)