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_key
anddevice_id
onm.megolm.v1.aes-sha2
events, and thesender_key
onm.room_key_request
to-device messages, as per MSC3700. (#1101)
Backwards Compatible Changes
- Make
from
optional onGET /_matrix/client/v3/messages
to 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_restricted
join rule in supported room versions, as per MSC3787. (#1099)
Spec Clarifications
- Clarify that the url field in
m.room.avatar
events is not required. (#987) - Clarify that the
type
in user-interactive authentication can be omitted. (#989) - Adjust the OpenAPI specification so that the type
Flow information
is explicitly defined when the client-server API is rendered. (#1003) - Correct the default value for
invite
where it is not specified in anm.room.power_levels
event. (#1021) - Update various links which pointed to the old
matrix-doc
github repository. (#1032) - Removed
m.room.message.feedback
per 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
name
field ofm.room.name
events. (#3669) - Remove erroneous
room_id
field from examples ofm.read
,m.typing
in/sync
andm.fully_read
in room account data. (#3679) - Clarify the behaviour of
event_match
in push rule conditions. (#3690) - Fix incorrectly referenced
m.login.appservice
login identifier, instead usingm.login.application_service
. (#3711) - Fix membership state transitions to denote that
invite->knock
andexternal->leave
are valid transitions. (#3730)
Server-Server API
Backwards Compatible Changes
Spec Clarifications
- Remove largely unused
origin
field from PDUs. (#998) - Update various links which pointed to the old
matrix-doc
github 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_ts
is 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_join
response. (#3703) - Clarify that the
content
forX-Matrix
signature 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_restricted
join 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.federate
to 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_rule
isknock
. (#3737)
Appendices
No significant changes.