Compare commits

...

5 commits

Author SHA1 Message Date
Patrick Cloke 04e8e67d08
Merge d96a10b92a into 1edf62c3f1 2026-07-14 18:29:23 -04:00
Hagen 1edf62c3f1
Spec for MSC4402: Consistent redirects for .well-known-files (#2404)
* Spec for MSC4402: Consistent redirects for .well-known-files

Signed-off-by: Hagen Echzell <hagene@uio.no>

* Add changelog file

Signed-off-by: Hagen Echzell <hagene@uio.no>

* Indicate spec version for changes

Signed-off-by: Hagen Echzell <hagene@uio.no>

* Capitalize some `should`s

Signed-off-by: Hagen Echzell <hagene@uio.no>

* Increment added-in spec version after release of 1.19

Signed-off-by: Hagen Echzell <hagene@uio.no>

---------

Signed-off-by: Hagen Echzell <hagene@uio.no>
2026-07-14 18:28:49 -04:00
Kim Brose 97fcfd93d9
Clarifications and spelling (#2417)
* remove confusing redundant clause

Signed-off-by: HarHarLinks <2803622+HarHarLinks@users.noreply.github.com>

* clarify the class of relation disallowed in threads

Signed-off-by: HarHarLinks <2803622+HarHarLinks@users.noreply.github.com>

* spelling

Signed-off-by: HarHarLinks <2803622+HarHarLinks@users.noreply.github.com>

* add newsfragment

Signed-off-by: HarHarLinks <2803622+HarHarLinks@users.noreply.github.com>

---------

Signed-off-by: HarHarLinks <2803622+HarHarLinks@users.noreply.github.com>
2026-07-14 18:05:35 -04:00
Travis Ralston 68994d7fcd Become unstable
Some checks failed
Spec / 🔎 Validate OpenAPI specifications (push) Has been cancelled
Spec / 🔎 Check Event schema examples (push) Has been cancelled
Spec / 🔎 Check OpenAPI definitions examples (push) Has been cancelled
Spec / 🔎 Check JSON Schemas inline examples (push) Has been cancelled
Spec / ⚙️ Calculate baseURL for later jobs (push) Has been cancelled
Spec / 📢 Run towncrier for changelog (push) Has been cancelled
Spell Check / Spell Check with Typos (push) Has been cancelled
Spec / 🐍 Build OpenAPI definitions (push) Has been cancelled
Spec / 📖 Build the spec (push) Has been cancelled
Spec / 🔎 Validate generated HTML (push) Has been cancelled
Spec / 📖 Build the historical backup spec (push) Has been cancelled
Spec / Create release (push) Has been cancelled
2026-07-08 08:28:42 -06:00
Travis Ralston b9c3d5ed3b Matrix 1.19 2026-07-08 08:27:35 -06:00
63 changed files with 133 additions and 62 deletions

View file

@ -1 +0,0 @@
Update the canonical JSON grammar with case sensitive strings and ABNF builtins to be easier to understand.

View file

@ -1 +0,0 @@
Fix various typos throughout the specification.

View file

@ -1 +0,0 @@
Clarify matrix.to RFC 3986 percent encoding requirements. Contributed by @HarHarLinks.

View file

@ -1 +0,0 @@
Add specification of URL-safe unpadded Base64.

View file

@ -1 +0,0 @@
Fix various typos throughout the specification.

View file

@ -1 +0,0 @@
Clarify SAS commitment calculation for `m.key.verification.accept` messages.

View file

@ -1 +0,0 @@
Specify `unsigned.replaces_state` in client-formatted events. Contributed by @nexy7574.

View file

@ -1 +0,0 @@
Clarify formats of string types.

View file

@ -1 +0,0 @@
Restore alphabetical order of common error codes.

View file

@ -1 +0,0 @@
Clarify formats of string types.

View file

@ -1 +0,0 @@
Fix various typos throughout the specification.

View file

@ -1 +0,0 @@
Clarify how to find `via` parameter when following room upgrades.

View file

@ -1 +0,0 @@
Specify `m.key_backup` account data, as per [MSC4287](https://github.com/matrix-org/matrix-spec-proposals/pull/4287).

View file

@ -1 +0,0 @@
Clarify formats of string types.

View file

@ -1 +0,0 @@
Clarify formats of string types.

View file

@ -1 +0,0 @@
Add `GET /_matrix/client/v1/mutual_rooms`, as per [MSC2666](https://github.com/matrix-org/matrix-spec-proposals/pull/2666).

View file

@ -1 +0,0 @@
Clarify formats of string types.

View file

@ -1 +0,0 @@
Clarify that room messages can be encrypted.

View file

@ -1 +0,0 @@
Clarify how to paginate messages using the pagination tokens returned by `GET /rooms/{roomId}/context/{eventId}`.

View file

@ -1 +0,0 @@
Clarify formats of string types.

View file

@ -1 +0,0 @@
Clarify formats of string types.

View file

@ -1 +0,0 @@
Clarify formats of string types.

View file

@ -1 +0,0 @@
Clarify allowed characters in `mxc://` URIs.

View file

@ -1 +0,0 @@
Add link to RFC 9700 OAuth 2.0 Best Current Practices.

View file

@ -1 +0,0 @@
Add links from the Client-Server spec to the Olm message definitions.

View file

@ -1 +0,0 @@
Disambiguate placeholder descriptions in OlmPayload example.

View file

@ -1 +0,0 @@
Replace "Olm message" with "event encrypted using Olm" where not referring to the Olm message format.

View file

@ -1 +0,0 @@
Removed unused components in OpenAPI definitions.

View file

@ -1 +0,0 @@
Fix various typos throughout the specification.

View file

@ -1 +0,0 @@
The room directory now returns rooms in a server-defined order rather than largest first, as per [MSC4423](https://github.com/matrix-org/matrix-spec-proposals/pull/4423).

View file

@ -1 +0,0 @@
Add support for image packs (`m.room.image_pack` and `m.image_pack.rooms`), allowing custom emoticons and stickers to be organised into packs and shared between users, as per [MSC2545](https://github.com/matrix-org/matrix-spec-proposals/pull/2545).

View file

@ -1 +0,0 @@
Clarify definitions of `EncryptedFile` structure.

View file

@ -1 +0,0 @@
Specify encrypted history sharing, as per [MSC4268](https://github.com/matrix-org/matrix-spec-proposals/pull/4268).

View file

@ -1 +0,0 @@
Specify `unsigned.replaces_state` in client-formatted events. Contributed by @nexy7574.

View file

@ -0,0 +1 @@
Clients are now supposed to follow 30x redirects from `/.well-known/matrix/client` as per [MSC4402](https://github.com/matrix-org/matrix-spec-proposals/pull/4402).

View file

@ -0,0 +1 @@
Wording improvements and spelling fixes. Contributed by @HarHarLinks.

View file

@ -1 +0,0 @@
Fix various typos throughout the specification.

View file

@ -1 +0,0 @@
Add page search widget.

View file

@ -1 +0,0 @@
Update and fix GitHub Actions.

View file

@ -1 +0,0 @@
Upgrade Docsy theme to v0.14.3.

View file

@ -1 +0,0 @@
Configure a new changelog section for the Olm & Megolm specs.

View file

@ -1,2 +0,0 @@
Clarify use of UK vs US English in documentation style doc.

View file

@ -1 +0,0 @@
Update and fix GitHub Actions.

View file

@ -1 +0,0 @@
Ignore typos in copyright statements.

View file

@ -1 +0,0 @@
Update CODEOWNERS file.

View file

@ -1 +0,0 @@
Minor fixes to `check-newsfragments` CI script.

View file

@ -1 +0,0 @@
Update links to Olm in the Megolm section to point to the Matrix spec.

View file

@ -1 +0,0 @@
Fix various typos throughout the specification.

View file

@ -1 +0,0 @@
Update link from whispersystems.org to signal.org in the olm documentation.

View file

@ -1 +0,0 @@
Fix various typos throughout the specification.

View file

@ -1 +0,0 @@
Fix various typos throughout the specification.

View file

@ -1 +0,0 @@
Clarify the behaviour and response format of `GET /_matrix/federation/v1/query/profile`.

View file

@ -1 +0,0 @@
Clarify that server ACLs are case-insensitive, as per [MSC4436](https://github.com/matrix-org/matrix-spec-proposals/pull/4436).

View file

@ -1 +0,0 @@
Clarify how multiple signatures should be handled during signature verification. Contributed by @nexy7574.

View file

@ -1 +0,0 @@
Fix various typos throughout the specification.

View file

@ -1 +0,0 @@
Clarify that policy servers might share a name with event origins, and that servers should avoid overwriting/discarding signatures for the event origin when getting a policy server signature.

View file

@ -1 +0,0 @@
The room directory now returns rooms in a server-defined order rather than largest first, as per [MSC4423](https://github.com/matrix-org/matrix-spec-proposals/pull/4423).

View file

@ -76,8 +76,8 @@ status = "unstable"
current_version_url = "https://spec.matrix.org/latest"
# The following is used when status = "stable", and is displayed in various UI elements on a released version
# of the spec.
#major = "1"
#minor = "18"
# major = "1"
# minor = "19"
[[params.versions]]
# We must include this parameter to enable docsy's version picker in the navbar. The picker

118
content/changelog/v1.19.md Normal file
View file

@ -0,0 +1,118 @@
---
title: v1.19 Changelog
linkTitle: v1.19
type: docs
layout: changelog
outputs:
- html
- checklist
date: 2026-07-08
---
## Client-Server API
**New Endpoints**
- Add `GET /_matrix/client/v1/mutual_rooms`, as per [MSC2666](https://github.com/matrix-org/matrix-spec-proposals/pull/2666). ([#2367](https://github.com/matrix-org/matrix-spec/issues/2367))
**Backwards Compatible Changes**
- Specify `unsigned.replaces_state` in client-formatted events. Contributed by @nexy7574. ([#2345](https://github.com/matrix-org/matrix-spec/issues/2345), [#2403](https://github.com/matrix-org/matrix-spec/issues/2403))
- Specify `m.key_backup` account data, as per [MSC4287](https://github.com/matrix-org/matrix-spec-proposals/pull/4287). ([#2354](https://github.com/matrix-org/matrix-spec/issues/2354))
- The room directory now returns rooms in a server-defined order rather than largest first, as per [MSC4423](https://github.com/matrix-org/matrix-spec-proposals/pull/4423). ([#2392](https://github.com/matrix-org/matrix-spec/issues/2392))
- Add support for image packs (`m.room.image_pack` and `m.image_pack.rooms`), allowing custom emoticons and stickers to be organised into packs and shared between users, as per [MSC2545](https://github.com/matrix-org/matrix-spec-proposals/pull/2545). ([#2397](https://github.com/matrix-org/matrix-spec/issues/2397))
- Specify encrypted history sharing, as per [MSC4268](https://github.com/matrix-org/matrix-spec-proposals/pull/4268). ([#2399](https://github.com/matrix-org/matrix-spec/issues/2399))
**Spec Clarifications**
- Clarify SAS commitment calculation for `m.key.verification.accept` messages. ([#2344](https://github.com/matrix-org/matrix-spec/issues/2344))
- Clarify formats of string types. ([#2347](https://github.com/matrix-org/matrix-spec/issues/2347), [#2349](https://github.com/matrix-org/matrix-spec/issues/2349), [#2358](https://github.com/matrix-org/matrix-spec/issues/2358), [#2359](https://github.com/matrix-org/matrix-spec/issues/2359), [#2370](https://github.com/matrix-org/matrix-spec/issues/2370), [#2374](https://github.com/matrix-org/matrix-spec/issues/2374), [#2375](https://github.com/matrix-org/matrix-spec/issues/2375), [#2376](https://github.com/matrix-org/matrix-spec/issues/2376))
- Restore alphabetical order of common error codes. ([#2348](https://github.com/matrix-org/matrix-spec/issues/2348))
- Fix various typos throughout the specification. ([#2351](https://github.com/matrix-org/matrix-spec/issues/2351), [#2389](https://github.com/matrix-org/matrix-spec/issues/2389))
- Clarify how to find `via` parameter when following room upgrades. ([#2352](https://github.com/matrix-org/matrix-spec/issues/2352))
- Clarify that room messages can be encrypted. ([#2371](https://github.com/matrix-org/matrix-spec/issues/2371))
- Clarify how to paginate messages using the pagination tokens returned by `GET /rooms/{roomId}/context/{eventId}`. ([#2372](https://github.com/matrix-org/matrix-spec/issues/2372))
- Clarify allowed characters in `mxc://` URIs. ([#2377](https://github.com/matrix-org/matrix-spec/issues/2377))
- Add link to RFC 9700 OAuth 2.0 Best Current Practices. ([#2379](https://github.com/matrix-org/matrix-spec/issues/2379))
- Add links from the Client-Server spec to the Olm message definitions. ([#2381](https://github.com/matrix-org/matrix-spec/issues/2381))
- Disambiguate placeholder descriptions in OlmPayload example. ([#2382](https://github.com/matrix-org/matrix-spec/issues/2382))
- Replace "Olm message" with "event encrypted using Olm" where not referring to the Olm message format. ([#2383](https://github.com/matrix-org/matrix-spec/issues/2383))
- Removed unused components in OpenAPI definitions. ([#2386](https://github.com/matrix-org/matrix-spec/issues/2386))
- Clarify definitions of `EncryptedFile` structure. ([#2398](https://github.com/matrix-org/matrix-spec/issues/2398))
## Server-Server API
**Backwards Compatible Changes**
- The room directory now returns rooms in a server-defined order rather than largest first, as per [MSC4423](https://github.com/matrix-org/matrix-spec-proposals/pull/4423). ([#2392](https://github.com/matrix-org/matrix-spec/issues/2392))
**Spec Clarifications**
- Clarify the behaviour and response format of `GET /_matrix/federation/v1/query/profile`. ([#2326](https://github.com/matrix-org/matrix-spec/issues/2326))
- Clarify that server ACLs are case-insensitive, as per [MSC4436](https://github.com/matrix-org/matrix-spec-proposals/pull/4436). ([#2334](https://github.com/matrix-org/matrix-spec/issues/2334))
- Clarify how multiple signatures should be handled during signature verification. Contributed by @nexy7574. ([#2341](https://github.com/matrix-org/matrix-spec/issues/2341))
- Fix various typos throughout the specification. ([#2351](https://github.com/matrix-org/matrix-spec/issues/2351))
- Clarify that policy servers might share a name with event origins, and that servers should avoid overwriting/discarding signatures for the event origin when getting a policy server signature. ([#2385](https://github.com/matrix-org/matrix-spec/issues/2385))
## Application Service API
**Spec Clarifications**
- Fix various typos throughout the specification. ([#2351](https://github.com/matrix-org/matrix-spec/issues/2351))
## Identity Service API
**Spec Clarifications**
- Fix various typos throughout the specification. ([#2401](https://github.com/matrix-org/matrix-spec/issues/2401))
## Push Gateway API
No significant changes.
## Room Versions
**Spec Clarifications**
- Fix various typos throughout the specification. ([#2351](https://github.com/matrix-org/matrix-spec/issues/2351), [#2401](https://github.com/matrix-org/matrix-spec/issues/2401))
## Olm & Megolm
**Spec Clarifications**
- Update links to Olm in the Megolm section to point to the Matrix spec. ([#2361](https://github.com/matrix-org/matrix-spec/issues/2361))
- Fix various typos throughout the specification. ([#2369](https://github.com/matrix-org/matrix-spec/issues/2369))
- Update link from whispersystems.org to signal.org in the olm documentation. ([#2387](https://github.com/matrix-org/matrix-spec/issues/2387))
## Appendices
**Spec Clarifications**
- Update the canonical JSON grammar with case sensitive strings and ABNF builtins to be easier to understand. ([#2368](https://github.com/matrix-org/matrix-spec/issues/2368))
- Fix various typos throughout the specification. ([#2369](https://github.com/matrix-org/matrix-spec/issues/2369))
- Clarify matrix.to RFC 3986 percent encoding requirements. Contributed by @HarHarLinks. ([#2395](https://github.com/matrix-org/matrix-spec/issues/2395))
- Add specification of URL-safe unpadded Base64. ([#2398](https://github.com/matrix-org/matrix-spec/issues/2398))
## Internal Changes/Tooling
**Backwards Compatible Changes**
- Add page search widget. ([#2331](https://github.com/matrix-org/matrix-spec/issues/2331))
**Spec Clarifications**
- Update and fix GitHub Actions. ([#2343](https://github.com/matrix-org/matrix-spec/issues/2343), [#2369](https://github.com/matrix-org/matrix-spec/issues/2369))
- Upgrade Docsy theme to v0.14.3. ([#2346](https://github.com/matrix-org/matrix-spec/issues/2346))
- Configure a new changelog section for the Olm & Megolm specs. ([#2364](https://github.com/matrix-org/matrix-spec/issues/2364))
- Clarify use of UK vs US English in documentation style doc. ([#2366](https://github.com/matrix-org/matrix-spec/issues/2366))
- Ignore typos in copyright statements. ([#2373](https://github.com/matrix-org/matrix-spec/issues/2373))
- Update CODEOWNERS file. ([#2400](https://github.com/matrix-org/matrix-spec/issues/2400))
- Minor fixes to `check-newsfragments` CI script. ([#2402](https://github.com/matrix-org/matrix-spec/issues/2402))

View file

@ -429,6 +429,7 @@ Instead, they can be reached via HTTPS on the [server name](/appendices/#server-
Servers hosting the `.well-known` JSON file SHOULD offer CORS headers,
as per the [CORS](#web-browser-clients) section in this specification.
{{% added-in v="1.20" %}} Servers SHOULD also ensure that each 30x redirect, if any, offers such CORS headers.
{{% /boxes/note %}}
The flow for auto-discovery is as follows:
@ -437,6 +438,7 @@ The flow for auto-discovery is as follows:
Matrix ID at the first colon.
2. Extract the hostname from the server name as described by the [grammar](/appendices/#server-name).
3. Make a GET request to `https://hostname/.well-known/matrix/client`.
{{% added-in v="1.20" %}} 30x redirects SHOULD be followed, however redirection loops should be avoided.
1. If the returned status code is 404, then `IGNORE`.
2. If the returned status code is not 200, or the response body is
empty, then `FAIL_PROMPT`.
@ -3654,7 +3656,7 @@ The actual aggregation format depends on the `rel_type`.
When an event is served to the client through the APIs listed below, a
`m.relations` property is included under `unsigned` if the event has child
events which can be aggregated and point at it. The `m.relations` property is
events which can be aggregated. The `m.relations` property is
an object keyed by `rel_type` and value being the type-specific aggregated
format for that `rel_type`. This `m.relations` property is known as a "bundled
aggregation".

View file

@ -1940,7 +1940,7 @@ As of `v1.3`, the `sender_key` and `device_id` keys are **deprecated**. They
SHOULD continue to be sent, however they MUST NOT be used to verify the
message's source.
Clients MUST NOT store or lookup sessions using the `sender_key` or `device_id`.
Clients MUST NOT store or look up sessions using the `sender_key` or `device_id`.
In a future version of the specification the keys can be removed completely,
including for sending new messages.

View file

@ -191,7 +191,7 @@ Note that, as in the example above, child events of the `latest_event` should
themselves be aggregated and included under `m.relations` for that event. The
server should be careful to avoid loops, though loops are not currently
possible due to `m.thread` not being permitted to target an event with an
`m.relates_to` property.
`m.relates_to` property with a `rel_type`.
`count` is simply the number of events using `m.thread` as a `rel_type` pointing to the target event.
It does not include events sent by [ignored users](#ignoring-users).

View file

@ -1,4 +1,5 @@
# Copyright 2018 New Vector Ltd
# Copyright 2026 Hagen Echzell
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@ -20,7 +21,11 @@ paths:
get:
summary: Gets Matrix server discovery information about the domain.
description: |-
Gets discovery information about the domain. The file may include
Gets discovery information about the domain.
{{% added-in v="1.20" %}} Clients SHOULD follow 30x redirects, carefully
avoiding redirect loops, and use normal X.509 certificate validation.
The file may include
additional keys, which MUST follow the Java package naming convention,
e.g. `com.example.myapp.property`. This ensures property names are
suitably namespaced for each application and reduces the risk of