Matrix Live 🎙
Dept of Status of Matrix 🌡️
[Matrix will] be rolled out by the German education system to provide collaboration tools for half a million seats in the states of Schleswig-Holstein and Hamburg
Casual 500,000 user deployment, very nice!
Dept of Spec 📜
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://matrix.org/docs/spec/proposals.
MSCs in Final Comment Period:
- No MSCs are in FCP.
Spec Core Team
Dept of GSoC 🎓️
Merged update for total move to async / await into development branch, (hopefully) soon to be merged to master
Made single-threaded project thread-safe for easily scaling up to potentially many threads
Added additional logging for tls and non-tls connections for more clear debugging
Dept of Servers 🏢
Dendrite is a next-generation homeserver written in Go
E2E Dendrite work is progressing, and we're making a lot of breaking changes ahead of our first stable release which you can expect in the coming weeks.
As for the changes this week:
Add a bare bones user directory. This is mainly to benefit the iOS Yggdrasil demo.
dendrite-config.yamlconfiguration format has been overhauled. It's still in review but expect big changes here!
Fixed a bug with SQLite when handling large rooms (thanks @HenrikSolver!)
Device lists now work locally, with federation support to come.
Spec compliance is up from last week:
- Client-Server APIs: 51%, up from 49%.
- Federation APIs: remains at 53%.
Conduit is a Matrix homeserver written in Rust https://conduit.rs
Welcome back! This week was very productive:
Ignore users (thanks @devinr528)
Long polling (faster and more efficient /sync)
Fix and improve presence
Room tagging (thanks @gnieto)
Refactor endpoints into modules
Export endpoints as a library (useful for p2p!)
Config options to set the maximum upload size or disable encryption
Thanks to everyone who supports me on Liberapay or Bitcoin!
This week we shipped 1.18.0 which contained support for our worker sharding performance projects that you’ve been hearing about recently.
We also shipped a security and feature release of Sygnal (actually two each…). The main new feature being the ability to run behind an HTTP proxy which is useful in environments that mandate that all traffic go through a proxy.
Aside from that week we continued our async/await-athon and Patrick provided a visual update
We’ve been documenting worker support and diving into sharding the event persisters. This is not a small job since it means every other part of the code base that assumes an integer stream id will need to be updated to be aware of multiple stream ids from multiple persisters.
Over in feature land we’ve been working on the notifications project and most of the backend support is done. The project will mean more intuitive defaults as well as a much better client UX in configuring notification settings.
Synapse Deployment 📥️
Just pushed the 1.18.0 K8s-optimized Synapse images, now only doing the debian-based version as like upstream - though still including jemalloc. So
*-debianwill be the same in this version and going forwards. Additionally, the
*-debiantags will only remain for a release or two more before disappearing, as they're now superfluous.
Dept of Bridges 🌉
I finally added automatic backfilling options to mautrix-telegram. Like my other bridges, it can backfill old messages when creating portals and missed messages when restarting, and it can disable notifications in the room while backfilling.
I also added bridging for your own read receipts, so if you read a message with another Telegram client, the bridge will mark it as read on your Matrix account with double puppeting.
Dept of Clients 📱
NovaChat is a new Matrix-based desktop client that aggregates all your chat networks into one app
July 31 Updates:
New room list design, featuring collapsible 'clusters' (see gif)
Enabled encrypted room search (thanks #seshat:matrix.org!)
Added [mautrix-twitter]( https://github.com/tulir/mautrix-twitter)
Worked around FB Messenger bridge 'forced-logout issue' by routing traffic through proxy on Raspberry Pi at each users home
In the works...
Create new clusters of chats in room list, using tags
iMessage bridge, using jailbroken iDevice
Android Messages bridge
Adding new users weekly. Sign up for the NovaChat beta. Or send me a DM @eric:nova.chat
Tulir told us:
gomuks can now do interactive verification for e2ee. Most of it is thanks to nikofil's SAS verification PR to mautrix-go, I just made a UI for using it. Currently gomuks can only send verification requests, but I'll add some interface for accepting incoming requests soon.
Related to verification, there are some new commands for verifying/unverifying/blacklisting devices and viewing device lists. There's also a toggle to disable sending messages to unverified devices.
This is super exciting, raises gomuks to the level of a daily driver IMO.
Alexandre Franke announced:
We will release version 4.4 next Friday. Now is a good time to test the nightly version and check if it doesn’t break anything with your homeserver compared to 4.2.
The changelog has been sparsely given in previous TWIMs, but you could have a look at https://gitlab.gnome.org/GNOME/fractal/-/commit/463e6bc9988e2d8fffbfc38058f8d0b12cd074d7
Element-iOS, previously Riot-iOS
We released 1.0.2 this week to the AppStore and on TestFlight. It's mainly a bug fix release after the Element rebranding.
Dept of SDKs and Frameworks 🧰
SAS verification support has been merged! Support for it should also be landing in go-neb soon, both for verifying with the bot's device and for testing with go-neb's client testing service. Next up, looking at SSSS and eventually cross-verification support.
Dept of Ops 🛠
Pierre told us:
YunoHost is an operating system aiming for the simplest administration of a server, and therefore democratize self-hosting.
Synapse integration had been updated to 1.15.2 (1.17.0 available in branch
Riot Web integration had been updated to 1.6.8 (Element 1.7.1 available in branch
Final Thoughts 💭
We, some German Synapse admins, have created a survey about the usage of Matrix-Synapse for private statistic purpose (results will be published alike). As suggested in #synapse:matrix.org, this could also be a topic for "TWIM".
Find the survey at http://go.kabi.tk/MatrixQuestionnaire2020.
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. Join #ping:maunium.net to experience the fun live, and to find out how to add YOUR server to the game.
That's all I know 🏁
See you next week, and be sure to stop by #twim:matrix.org with your updates!
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