Earlier Today, the Matrix.org Foundation announced its plans to introduce Premium Accounts to fund the matrix.org homeserver. This requires little to no change for client developers.
Here’s your weekly spec update! The heart of Matrix is the specification - and this is modified by Matrix Spec Change (MSC) proposals. Learn more about how the process works at https://spec.matrix.org/proposals.
See the list of MSCs with proposed final comment period here!
Spec Updates
Implementations of several Trust & Safety MSCs, such as MSC4155: Invite Filtering and MSC4293: Redact on Kick/Ban have been landing over the past week, which is encouraging to see. MSCs cannot be accepted without at least one implementation, so writing code is an essential step is moving those spam-combating features into the spec.
In the same vein, new MSCs around Trust & Safety are continuing to be introduced. If combating spam and abuse on the network interests you, now is an excellent time to get involved in the spec!
Hi folks. Typically I like to do an announcement on release, but we’ve been doing quite a few things behind the scenes and I wanted to keep the momentum up so a smaller update from me this week. The headlines are:
Better developer experience! (Finally)
We’re happy to announce we’ve shipped a new guide on how to be a developer on Hookshot. This covers how to get started with an environment to hack on the project, including a batteries-included docker compose for the absolute Matrix novice :). I expect this area will eventually be filled out with more architectural information on how it works under the hood, but for now this is a start :).
If you’ve got feedback on this, or want any help along the way then we are happy to help out in #hookshot:half-shot.uk :)
We now ping the homeserver on startup
which is great as it now means issues with your configuration will be flagged much sooner. Hookshot will do a full round trip ping to discover if your homeserver can reach the bridge too. Synapse v1.132.0 will also support immediate recovery on pings so no longer will you need to wait for backoff when restarting a bridge.
Encryption stability is making baby steps
I know this has been a very hot topic for a lot of folks for a while, and we’re doing our best to make encrypted hookshot better! A small improvement this week is that Hookshot now emits it’s device identity on startup, so manual verification of the bridge is now possible. With https://github.com/element-hq/element-web/pull/30094, this should make the process a bit smoother.
On a final note, we’re still hard at work building out the new interactive commands / element timeline rendering features for Hookshot, which is taking a bit more time due to the number of PRs that need to land (at the last count, 5 are involved in the full feature set). This is happening now though, and I hope that next week we will be bringing you a release that covers it all. Until next time!
Quick note: Extera stumbled upon censorship in Russia. If you live there, use VPN/proxy to access it. I am planning on adding Singbox client into Extera Next.
we released a new version with an important security update, for more information check here
Threads are now available as an experimental developer option! They are still WIP and may lead to unexpected behaviour, but if you want you can try them out.
some accessibility improvements were made across the app and many more are to come!
Fixed a bug that was crashing the app on the new iOS 26 beta versions
Your all-in-one toolkit for creating Matrix clients with Rust, from simple bots to full-featured apps, with bindings to Swift, Kotlin, WebAssembly, Go and more
Hi there. Shorter TWIM this week, but big progresses!
Release
The Matrix Rust SDK 0.12 has been released! Please see the release notes. This release contains a security fix, consider to update your project as quick as possible!
Thread
First threads support has landed in two clients: Multiverse (our development-, debug-oriented CLI Matrix client), and Element X nightly (note that the UI is not the final design, it’s a test-oriented feature for the moment). Amongst many things, the followings are notable:
#5227 When a user is writing a message, it is a “draft”, which can be saved by the SDK, allowing the user to do something else and getting back to it later. Well, this also works within a thread now!
#5198 When a client doesn’t support threads, threads are rendered as replies: each message is marked as a reply of the previous message in the same thread. What if your client supports threads and one thread contains a real reply to a message? Well, it wasn’t working well. Now it works well.
#5185 The Timeline gains superpowers to filtering out messages that are part of a thread, so they can be rendered separately.
Threads are making great progresses, but events are not persisted in a storage so far. Happily, progress on that front has been made too!
#5172 and #5182 prepares the event cache for storing a linked chunk per thread.
WebAssembly
Work on WebAssembly pursues. This time, the first set of patches to make the EventCacheStore compatible with IndexedDB has been merged.
#5138 The initial types and the database migrations for EventCacheStore on IndexedDb has landed. It’s the foundation for the next patches to make the whole EventCacheStore compatible with IndexedDB when compiled to wasm32-unknown-unknown.
Crypto
#5219 If the SDK believes that the sender of a room event has been spoofed, the SDK will use a dedicated verification level, possibly allowing us to treat such events more carefully. This new verification level is MismatchedSender.
General
#5205 We are reverting our experiment around busy_timeout with SQLite to compare the data and see if it’s helping fixing some lock issues.
#5099 When using Client::add_event_handler, it is now possible to define a callback with an argument of kind Option<EncryptionInfo>, which is particularly useful and requested by the community frequently!
As of today, 13109 Matrix federateable servers have been discovered by matrixrooms.info, 3760 (28.7%) of them are publishing their rooms directory over federation.
The published directories contain 18850 rooms.
Join #ping:maunium.net to experience the fun live, and to find out how to add YOUR server to the game.
Rank
Hostname
Median MS
1
tuwunel.love
139
2
continuwuity.codestorm.net
179
3
bi-vibes.com
182.5
4
neko.dev
183.5
5
usbpc.xyz
196.5
6
codestorm.net
197.5
7
wacky.tabby.rodeo
217
8
nheko.im
222
9
continuwuity.org
224.5
10
envs.net
230
That’s all I know
See you next week, and be sure to stop by #twim:matrix.org with your updates!
To learn more about how to prepare an entry for TWIM check out the TWIM guide.
The Foundation needs you
The Matrix.org Foundation is a non-profit and only relies on donations to operate. Its core mission is to maintain the Matrix Specification, but it does much more than that.
It maintains the matrix.org homeserver and hosts several bridges for free. It fights for our collective rights to digital privacy and dignity.