You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
See matrix-org/synapse#11079 for what the server-side changes look like, and for a definition of how the versioning works.
For Element, and other clients, the important detail is that servers will start advertising v1.1 in the /versions response. Clients should check for this and use any per-endpoint versioned endpoints when talking to the homeserver. For Matrix 1.1, all endpoints for the client-server API will be available under /v3 instead of /r0. r0 should still be available for backwards compatibility reasons.
For future versions of Matrix, the endpoint versions might change. The implementation suggestion here is to hardcode use of /v3 in all endpoint calls for now, and when an endpoint changes shape (ie: gets a version bump) then add the if statement to switch between /v3 and /v4 as needed/supported by the server.
To clarify: All endpoints will be /v3 for Matrix 1.1, but Matrix 1.2 may very well introduce a breaking change to an endpoint. When that happens, /v4 will become the new current version for that endpoint with /v3 on its way out through deprecation. If the server advertises support for v1.2, then the client should use the /v4 endpoint. Otherwise, the /v3 endpoint.
In addition to the versioning changes, the following features become stable and should be expected as such on Matrix 1.1 compatible servers.
Identity Servers
Identity servers now have an /_matrix/identity/versions endpoint to version check against. They should be advertising v1.1 as well. See Matrix 1.1 checklist matrix-org/sydent#424 for Sydent's checklist.
Social Login (multiple SSO providers) has been added
Key verification can now happen with in-room messages instead of to-device
<details> and <summary> are suggested to be legal HTML in events
QR code verification has been added
Spoilers have been added, as has a color attribute
Guests can now view the members of a room
reason and score are now optional on /report
Push rule endpoints can now return 404 M_NOT_FOUND
A reason is now possible on all membership events
A device_id is now present/possible on login fallback
Withholding decryption keys can now (optionally) be an explicit message to other devices. Ie: "I am not sending you this key"
[BREAKING]m.key.verification.ready and m.key.verification.done are now required in the key verification framework.
[BREAKING]curve25519-hkdf-sha256 is the new key agreement method for SAS verification, with other methods being deprecated.
Of note is Spaces: it will not be present in Matrix 1.1 at the moment. Clients can still use the m.space room type as stable, however other aspects such as the summary/hierarchy APIs are not currently eligible for stable usage as of writing. Room versions 8 and 9 will be added if time permits, though this shouldn't affect clients too much beyond knowing that "restricted" rooms exist.
The text was updated successfully, but these errors were encountered:
With a couple minor changes ([1][2]), we appear to already have the basis for v1.1 support.
We do need to call the /v3 endpoints instead of /r0, however that requires a dialog/warning to say that someone's homeserver is too old to run Element Web. That is being worked on.
See matrix-org/synapse#11079 for what the server-side changes look like, and for a definition of how the versioning works.
For Element, and other clients, the important detail is that servers will start advertising
v1.1
in the/versions
response. Clients should check for this and use any per-endpoint versioned endpoints when talking to the homeserver. For Matrix 1.1, all endpoints for the client-server API will be available under/v3
instead of/r0
. r0 should still be available for backwards compatibility reasons.For future versions of Matrix, the endpoint versions might change. The implementation suggestion here is to hardcode use of
/v3
in all endpoint calls for now, and when an endpoint changes shape (ie: gets a version bump) then add theif
statement to switch between/v3
and/v4
as needed/supported by the server.To clarify: All endpoints will be
/v3
for Matrix 1.1, but Matrix 1.2 may very well introduce a breaking change to an endpoint. When that happens,/v4
will become the new current version for that endpoint with/v3
on its way out through deprecation. If the server advertises support forv1.2
, then the client should use the/v4
endpoint. Otherwise, the/v3
endpoint.In addition to the versioning changes, the following features become stable and should be expected as such on Matrix 1.1 compatible servers.
Identity Servers
/_matrix/identity/versions
endpoint to version check against. They should be advertisingv1.1
as well. See Matrix 1.1 checklist matrix-org/sydent#424 for Sydent's checklist.Homeservers
v1.1
to/versions
endpoint.well-known
has been downgraded toFAIL_PROMPT
device_id
is now present on/account/whoami
device_id
to/account/whoami
types matrix-org/matrix-js-sdk#3005<details>
and<summary>
are suggested to be legal HTML in eventscolor
attributereason
andscore
are now optional on/report
M_NOT_FOUND
reason
is now possible on all membership eventsdevice_id
is now present/possible on login fallbackm.key.verification.ready
andm.key.verification.done
are now required in the key verification framework.curve25519-hkdf-sha256
is the new key agreement method for SAS verification, with other methods being deprecated.Of note is Spaces: it will not be present in Matrix 1.1 at the moment. Clients can still use the
m.space
room type as stable, however other aspects such as the summary/hierarchy APIs are not currently eligible for stable usage as of writing. Room versions 8 and 9 will be added if time permits, though this shouldn't affect clients too much beyond knowing that "restricted" rooms exist.The text was updated successfully, but these errors were encountered: