-
-
Notifications
You must be signed in to change notification settings - Fork 450
Matrix 1.19 spec release blog post (scheduled: July 8th, 2026 UK afternoon) #3513
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
3 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
141 changes: 141 additions & 0 deletions
141
content/blog/2026/07/2026-07-08-matrix-v1.19-release.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,141 @@ | ||
| +++ | ||
| title = "Matrix v1.19 release" | ||
| date = "2026-07-08T16:00:43Z" | ||
| path = "/blog/2026/07/08/matrix-v1.19-release" | ||
|
|
||
| [taxonomies] | ||
| author = ["Travis Ralston"] | ||
| category = ["Releases", "Spec"] | ||
| +++ | ||
|
|
||
| Hey all, | ||
|
|
||
| [Matrix 1.19](https://spec.matrix.org/v1.19) is here! This release brings 6 more MSCs to the spec since the [Matrix 1.18 release](@/blog/2026/03/2026-03-26-matrix-v1.18-release.md) just over 3 months ago. Aside from [clarifying that server ACLs are case insensitive](https://spec.matrix.org/v1.19/client-server-api/#server-access-control-lists-acls-for-rooms), adding [mutual rooms lookup](https://spec.matrix.org/v1.19/client-server-api/#mutual-rooms), and making the [room directory order implementation-defined](https://spec.matrix.org/v1.19/client-server-api/#get_matrixclientv3publicrooms), this release brings a couple of commonly requested features to the protocol: encrypted room history sharing and custom emoji. | ||
|
|
||
| <!-- more --> | ||
|
|
||
| ## Encrypted room history sharing | ||
|
|
||
| When a user joins or is invited to an unencrypted room, they might see events from before their join/invite due to [history visibility](https://spec.matrix.org/v1.19/client-server-api/#room-history-visibility). When that invite or join happens in an encrypted room though, the same history visibility doesn't always apply. Room history sharing, introduced by [MSC4268](https://github.com/matrix-org/matrix-spec-proposals/blob/main/proposals/4268-encrypted-history-sharing.md), fixed that. | ||
|
|
||
| Readers who have been following the spec and project a long time may recall that room history sharing used to exist approximately 5 years ago in the form of [MSC3061](https://github.com/matrix-org/matrix-spec-proposals/pull/3061). After the proposal passed Final Comment Period (FCP), some [shortcomings](@/blog/2024/10/2024-10-15-security-disclosure-matrix-js-sdk-and-matrix-react-sdk.md) were discovered with the proposal. The cryptography team at Element addressed those shortcomings in MSC4268 by more carefully specifying what devices it is safe to share keys with, and by specifying a format for bulk-sharing keys rather than sending a to-device message per key. | ||
|
|
||
| More information about how history sharing has been implemented in Element's clients can be found on [their blog](https://element.io/blog/seamless-encrypted-history-sharing-arrives-in-element/). | ||
|
|
||
| ## Custom emoji (image packs) | ||
|
|
||
| Regular emoji simply isn't expressive enough for users - they need the ability to send custom emoticons, and share those image packs with other users so they can use them too. [MSC2545](https://github.com/matrix-org/matrix-spec-proposals/blob/main/proposals/2545-emotes.md), the most commented-on proposal as of writing at 603 comments, introduces this capability while also improving sticker pack support more generally. | ||
|
|
||
| Similar to other proposals in this spec release, it's been worked on for over 6 years and has been through several iterations. Clients like [FluffyChat](https://fluffychat.im/), [Cinny](https://cinny.in/), and [Nheko](https://nheko-reborn.github.io/) have supported the proposal through those iterations and enable users to share their image packs with other users. With the proposal being [added to the spec](https://spec.matrix.org/v1.19/client-server-api/#image-packs), all clients can now interoperate with stable identifiers and images in a more expressive Matrix! | ||
|
|
||
| ## The full changelog | ||
|
|
||
| The full changelog for Matrix 1.19 is: | ||
|
|
||
| ### 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)) | ||
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.