πMatrix Live S11E11 β Matrix Rust SDK, Aurora, and more
πDept of Trust & Safety βοΈ
πDraupnir4All (website)
MTRNord (they/them) says
Hi,
small and not so positive update:
Due to things going on which I can't get into, I will not take new applications to Draupnir4All. Additionally, I plan to shut down the system at the end of the year. I suggest looking for alternatives, as I am unlikely to extend this timeframe.
I am at this time not aware of alternatives beyond selfhosting a draupnir. Draupnir4All is selfhostable by anyone via the appservice module of draupnir however.
πPre-announcing asgard.chat
tulir reports
We (Cat, Sky and I) are setting up a new server to help replace MTRNord's Draupnir4All service. Asgard will offer both Meowlnir and Draupnir instances to room admins who need a moderation bot, but can't host one themselves (or who want a secondary bot as backup). Expect more news in the coming weeks.
πDept of Clients π±
πElement X iOS (website)
A total rewrite of Element iOS using the Matrix Rust SDK underneath and targeting devices running iOS 16+.
Mauro Romito announces
- More A11y improvements have been added to the app
- Improved the memory management of the app, we recently fixed a possible memory leak that could happen when clearing the cache
- Added a long press action in the media timeline so that you can bring up a context menu
- Spaces work is going great! We made great progress, and implemented a way to navigate between your chats and spaces through a tab view
- Work on thread is going further we are now improving them alongside the sliding sync from synapse, so that is possible for the sliding sync to keep track of the thread you are participating and receive a notification for them, as a reply one.
πElement X Android (website)
Android Matrix messenger application using the Matrix Rust SDK and Jetpack Compose.
Benoit announces
- Making progress on Spaces
- We change our dependency injection library to Metro. It should fix various issues that we observed during compilation
- Also creating a Pull Request to add a first implementation of multi accounts. The feature is still experimental, do not enable the flag if you're unsure!
- and last but not least, we will have soon an enhanced emoji picker, to be able to search for emoji, have a list of recently used emoji and a emoji completion directly in the composer!
πDept of Encryption π
πElement Crypto Team update
andybalaam says
As well as Invisible Crypto (which we talked about in a recent TWIM), the Element Crypto Team is also working on History Sharing.
πWhat is History Sharing?
When you join an encrypted room, wouldn't it be nice if you could read the old messages that were sent before you joined?
(Of course, only if the room's settings say it's OK. In detail: only if the person sending the message understood this to be allowed at the exact moment they sent it!)
To be able to read these old messages, you will need to have the relevant message keys, which means someone needs to send them to you.
History sharing is about securely getting those old keys to a new member of an existing encrypted room, so they can scroll up and see what people were saying.
πWhat have we been doing?
We have an early prototype up and running!
NOTE: it is not ready for fully secure use yet, so only use it in test environments!
We've added an experimental "labs" flag to Element Web and Element X that allows you to play with the feature.
If you and the other person both have the labs flag turned on, you can invite them to an encrypted room (with "Who can read history" set to "Members only (since the point in time of selecting this option)") and, along with the invite you will automatically send all the keys they need.
If it all works as planned, they will be able to see old messages as soon as they join the room. (If not, bug reports are welcome!)
πWhat is coming next?
As mentioned, this is just an early prototype, and in particular, we have not implemented all the protections we need to be happy about all the security aspects.
So the next step is to fill in all those protections and make sure we have a robust solution.
After that, we will begin working on how to handle situations where people are not explicitly invited to a room (e.g. if they join through a space).
There's lots of work still to do, but we are making good progress on this important feature. You can follow along and contribute at https://github.com/element-hq/element-meta/issues/2829.
If you'd like to talk to us, you can find us hanging out in the Matrix support rooms for the Element clients and servers - see you there!
πDept of SDKs and Frameworks π§°
πRuma (website)
A set of Rust library crates for working with the Matrix protocol. Rumaβs approach to Matrix emphasizes correctness, security, stability and performance.
KΓ©vin Commaille reports
Ruma keeps growing and improving, as can be seen with our new 0.13.0 release! We had several patch releases since 0.12.0, but this one includes a fair amount of breaking changes for your own good π. Some interesting changes are:
- Support for Matrix 1.13, 1.14 and 1.15, including the OAuth 2.0 server metadata endpoint and rich room topics.
- ruma-client was moved to its own repository and is no longer re-exported by ruma, because it is not being actively worked on. It will still be maintained and kept up-to-date with the latest release of ruma.
- We got rid of the
unstable-unspecified
cargo feature, which means that everything that was behind it was clarified in the Matrix spec, yay!- The
RoomVersion
type that lists all tweaks between room versions, like for authorization rules or for redaction, was moved from ruma-state-res to ruma-common asRoomVersionRules
, allowing clients to use it too instead of having to match on the room versions.- We also gained support for new exciting MSCs like room language (MSC4334) and thread subscriptions (MSC4306 & MSC4308).
We want to thank all our contributors! If you want to join them, take a look at one of our "help wanted" issues, or implement an MSC that you care about.
πmatrix-rust-sdk (website)
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, sponsored by Element.
Ivan π¦ reports
5Β weeks. Who said time flies? A non-negligible portion of the team was taking a (too hot) summer break. It doesn't mean nothing happened though. Fasten your jetpack to fly over the biggest changes with me.
πA release!
First off, we have a new 0.14 release \o/. See the changelog.
πSpace
Bip bip, bip bip. What's this echo? Is itβ¦ an alien? It's coming from π Space π! Yes, you heard it. Support for Space has landed in the Matrix Rust SDK. It's an early implementation, there is more to come, but you can already play with it in ElementΒ X nightlies.
πThread
Threads are making great progresses, with a focus on subscriptions to receive notifications.
- #5590 and #5604 Implement MSC4308.
- #5462 Automatically subscribe a user to a thread under the semantics of MSC4306.
- Work happened in designing and implementing these MSC both in Synapse and Ruma.
πLatest Event
The Latest Event API is almost done! The new API is ready, β¦ and working! The merging of the last PR is blocked by another project (direct re-decryption in the Event Cache).
- #5482 and #5556 The Latest Event is also computed based on the Send Queue, which allows to get local event directly in the room list!
- #5561 Revisit the definition of a
LatestEventValue
so that it can be serialised and deserialised.- #5587 The
LatestEventValue
is persisted in the store!And the patches waiting to be merged:
- #5617 A new sorter for the room list which puts the rooms with a local event at the top of the room list.
- #5624 Cleaning and removing the old Latest Event API.
πPerformance
The Event Cache is now pretty central to the SDK. We are working on it every day. Sometimes shortcuts are taken, which results in slow performance. Hopefully, all the Matrix Rust SDK benchmarks now run in the CI!
- #5443 All benchmarks run in the CI!
Here is a couple of remarkable improvements:
- #5620 Read Receipts are processed 2x faster!
- #5579 Throughput of
SqliteEventCacheStore::find_event_relations
has been improved by 300%.- #5411 Throughput of
SqliteEventCacheStore::load_all_chunks_metadata
has been improved by 1140%β¦- #5425 β¦ then by 13'000%.
πEvent Cache on IndexedDB
The Event Cache supports the in-memory backend and the SQLite backend. However, lot of efforts are put to support IndexedDB as a new backend. Progresses are impressive.
- #5506 Add support for the cross-process lock.
- #5540 Add everything necessary to store room's events and thread's events.
- #5574 Add support for the media retention policy.
- #5603 Add support to stre media.
πSearch
A new crate is born:
matrix-sdk-search
! It's designed to implement a search engine inside the Matrix Rust SDK, based on the Event Cache. Soon, we will be able to search for any kind of events!
- The list of patches are a bit long, so here is the full list so far.
πEncrypted state events
The MSC3414 define how we can encrypt state-events. The implementation has started and is making great progress!
- The list of patches are a bit long, so here is the full list.
πDept of Events and Talks π£οΈ
πThe Matrix Conference
HarHarLinks says
Hello from the Events Working Group! It's been a couple weeks since our last update, but we have been busy accepting all your talks, planning the exhibition area, coordinating with the venue and c3voc(!) who we are excited will lead the video streaming effort this year, organising food and drink, handing out ticket vouchers to Foundation members and Conference sponsors, ensuring health and safety, onboarding volunteers, and planning the schedule.... more about that soon!
The big Matrix Conference blog post that goes into detail about everything is still in the oven, right next to the schedule, but in the meantime we couldn't wait any longer to tell you, so here is a tiny teaser!
- Tickets are available! We have upgraded to a bigger venue, but make sure to get yours before we sell out like last year! π ποΈ
- We thank all Conference sponsors making the Conference financially possible! π°
- We also thank everyone who signed up to volunteer which will make the Conference possible to realise! If you are interested in announcing speakers and their talks on stage and stream, welcoming and scanning attendees' tickets, spread happiness by handing out the Conference merch, or want to try operating a c3voc camera, sign up now via https://conference.matrix.org/volunteer/ or #events-wg:matrix.org! πΉ PS: It's not quite ready but we already can't wait to share the look of the exclusive zipped hoodie with which we will equip the Conference crew! π
- The Conference will happen at Kaleidos.coop in Strasbourg! We updated the website so it's now easier to find out where it is and how to get there! πΊοΈ
- Once again we are able to offer the DB Event Ticket special offer! We have just put the link on the website, so if you're coming from or via Germany, check it out! π
- The detailed schedule is not quite finished yet, but you might want to make sure you arrive in time for the Welcome Party! π
Speaking of the schedule, we have started to share some highlights on social media!
- Tech doesn't exist in the void. We create products to serve people. But how do people feel about tech? Tenure-track Assistant Pr Carla Griggio studied how people feel about untraceability, and whether experts make a good job at explaining what it means.
- Ever wondered why Matrix doesn't use MLS (yet)? Nico will explore how MLS and Matrix work internally, and shed some light on it in the talk "Matrix and MLS - Water, Oil and Mayonnaise"!
- bnjbvr is an active member of the Rewrite in Rust task force π¦, and he wants you to know how you can make your Matrix app go voom in the talk "Speedrunning Matrix clients with the Rust SDK"!
Follow The Matrix Foundation on Mastodon, Bluesky, LinkedIn for more, and use the hashtags
#MatrixConf
and#MatrixConf2025
!To shorten the wait and for any announcements, join the #matrix-conference-2025:matrix.org space and #general-mc25:matrix.org rooms!
For any other questions about Matrix Events, you can find the Events Working Group at #events-wg:matrix.org or email [email protected].
Stay tuned!
πMatrix Federation Stats
Aine [etke.cc] reports
collected by MatrixRooms.info - an MRS instance by etke.cc
As of today,
12938
Matrix federateable servers have been discovered by matrixrooms.info,3726
(28.8%
) of them are publishing their rooms directory over federation. The published directories contain16981
rooms.Stats timeline is available on MatrixRooms.info/stats
πDept of Ping
Here we reveal, rank, and applaud the homeservers with the lowest ping, as measured by pingbot, a maubot that you can host on your own server.
π#ping:maunium.net
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 | 154 |
2 | continuwuity.codestorm.net | 165.5 |
3 | codestorm.net | 198 |
4 | nerdhouse.io | 247 |
5 | maunium.net | 248 |
6 | tomfos.tr | 254.5 |
7 | wolfspyre.io | 324 |
8 | chat.mailliw.org | 364 |
9 | nadeko.net | 413 |
10 | littlevortex.net | 549 |
π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.
Support us