You're looking at an unstable version of this specification. Unstable specifications may change at any time without notice.
v1.3 Changelog
| Git commit | https://github.com/matrix-org/matrix-spec/tree/v1.3 | 
|---|---|
| Release date | June 15, 2022 | 
| Checklist | checklist.md | 
Client-Server API
Deprecations
- Deprecate the sender_keyanddevice_idonm.megolm.v1.aes-sha2events, and thesender_keyonm.room_key_requestto-device messages, as per MSC3700. (#1101)
Backwards Compatible Changes
- Make fromoptional onGET /_matrix/client/v3/messagesto allow requesting events from the start or end of the room history, as per MSC3567. (#1002)
- Add refresh tokens, per MSC2918. (#1056, #1113)
- Relax the restrictions on Rich Replies, as per MSC3676. (#1062)
- Describe a structured system for event relationships, as per MSC2674. (#1062)
- Describe how relationships between events can be “aggregated”, as per MSC2675 and MSC3666. (#1062)
- Add support for a new knock_restrictedjoin rule in supported room versions, as per MSC3787. (#1099)
Spec Clarifications
- Clarify that the url field in m.room.avatarevents is not required. (#987)
- Clarify that the typein user-interactive authentication can be omitted. (#989)
- Adjust the OpenAPI specification so that the type Flow informationis explicitly defined when the client-server API is rendered. (#1003)
- Correct the default value for invitewhere it is not specified in anm.room.power_levelsevent. (#1021)
- Update various links which pointed to the old matrix-docgithub repository. (#1032)
- Removed m.room.message.feedbackper MSC3582. (#1035)
- Fix various typos throughout the specification. (#1051, #1054, #1059, #1081, #1097, #1110, #1115, #1126, #1127, #1128, #1129, #3681, #3708)
- Clarify that state keys starting with @are in fact reserved. Regressed from #3658. (#1100)
- Remove unenforced size limit on the namefield ofm.room.nameevents. (#3669)
- Remove erroneous room_idfield from examples ofm.read,m.typingin/syncandm.fully_readin room account data. (#3679)
- Clarify the behaviour of event_matchin push rule conditions. (#3690)
- Fix incorrectly referenced m.login.appservicelogin identifier, instead usingm.login.application_service. (#3711)
- Fix membership state transitions to denote that invite->knockandexternal->leaveare valid transitions. (#3730)
Server-Server API
Backwards Compatible Changes
Spec Clarifications
- Remove largely unused originfield from PDUs. (#998)
- Update various links which pointed to the old matrix-docgithub repository. (#1032)
- Clarify the format for the Authorization header. (#1038, #1067)
- Clarify what a “valid event” means when performing checks on a received PDU. (#1045)
- Clarify that valid_until_tsis in milliseconds, like other timestamps used in Matrix. (#1055)
- Clarify that checks on PDUs should refer to the state before an event. (#1070)
- Clarify the historical handling of non-integer power levels. (#1099)
- Fix various typos throughout the specification. (#1110)
- Correct misleading text for /send_joinresponse. (#3703)
- Clarify that the contentforX-Matrixsignature validation is the parsed JSON body. (#3727)
Application Service API
Backwards Compatible Changes
Identity Service API
No significant changes.
Push Gateway API
No significant changes.
Room Versions
Backwards Compatible Changes
- Add room version 10 as per MSC3604. (#1099)
- Enforce integer power levels in room version 10 as per MSC3667. (#1099)
- Add a knock_restrictedjoin rule supported by room version 10 as per MSC3787. (#1099)
- Update the default room version to 9 as per MSC3589. (#3739)
Spec Clarifications
- Improve readability and understanding of the state resolution algorithms. (#1037, #1042, #1043, #1120)
- Improve readability of the authorization rules. (#1050)
- For room versions 8, 9, and 10: clarify which homeserver is required to sign the join event. (#1093)
- Clarify that room versions 1 through 9 accept stringy power levels, as noted by MSC3667. (#1099)
- For all room versions: Add m.federateto the authorization rules, as originally intended. (#1103)
- For room versions 2 through 10: More explicitly define the mainline of a power event and the mainline ordering of other events. (#1107)
- For room versions 7, 8, 9, and 10: fix join membership authorization rules when join_ruleisknock. (#3737)
Appendices
No significant changes.