A couple months in, it’s a joy and a privilege to introduce myself as the first Managing Director of The Matrix.org Foundation! Read my intro post to learn more about me, the work ahead, what you can do to help, and how the leaders of other open source foundations are reacting to my appointment.
I’m thrilled to take this opportunity to also announce the Office of the Matrix.org Foundation, a new room that offers a direct line to me and the rest of the small but mighty team behind the Foundation. Come say hi! 👋🏻
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.
The Spec Core Team has mostly been working behind the scenes on things for the last few weeks, but expects visible progress to pick back up soon. Last week the custom emoji/sticker MSCs started getting reviewed, and this coming week those reviews are expected to continue (and get submitted).
As we welcome Josh to the Foundation, the SCT has also been thinking about the MSC process and how to best interface it with the upcoming Governing Board. The Governing Board doesn’t have an ability to decide which MSCs get accepted/rejected, but can provide guidance on which MSCs might need more attention sooner than others. Watch this space for updates as we have them.
this week we released Synapse 1.95.0. It turned out to be a relatively small release. Admins may be interested in a change which improves the performance of purging rooms and a fix to the way media is served which should benefit bridged users. Behind these scenes, Patrick has been working to remove unnecessary memory allocations at the DB level. Many of those changes land in this release, which should help to reduce some of the spikiness of Synapse’s memory consumption. We expect the impact to be small but consistent; if you have any particularly interesting graphs to share which demonstrate improvements, we’d love to see them.
This week was quite exciting, since we finally merged NepNep’s ignore feature. This has been standard in quite a few other clients before and we did have a commented out button for this for ages already, but now you can finally ignore other users from within Nheko! Which reminds me, I should patch it so that nobody can ignore me, mwhahahaha!
LorenDB also landed his work on reporting messages. Hopefully the dialog makes it clear enough, that this only reports to your server admin, not the other server admin and not the room admin.
Apart from that we cleaned out some historical baggage about how we stored olm messages and you shouldn’t run out of subdatabases randomly now, just because you were signed in for a long time (although I think only one person has hit that in the last 2 years). You can also now recompact the database with a single command, which helps speed up Nheko if the database has been in use for a long time. <hr/> tags now also render a line instead of the tag as text, the scroll position should not be upsetmoved up by a small margin when switching rooms anymore.
Finally you can also now change your presence state explicitly in Nheko. We disabled that feature for a while, because it would cause excessive CPU usage on Synapse, but that bug has since been fixed. However Synapse currently does not allow you to mark yourself as offline, however you can patch your Synapse to allow that:
And lastly I wrote a small tool, that breaks down memory usage on linux in more details, so that I can see more easily, if Nheko is actually using a lot of memory or people just get confused by file caching on Linux again.
Element X Android 0.2.4 is live on the store, and the crash rate level is dropping.
We have made huge progress on lots of different features:
Key backup and secure storage management is nearly there
PIN and biometric unlock as well
The voice message feature is enabled by default. We’ve added support for waveforms, for a more pleasant user experience when rendering the event in the timeline, and when seeking within the voice message.
Element Call support has landed on develop
Also progressing on mention in timeline and composer suggestions when typing @
We also achieved Kotlin code coverage for the project of 63%!
We, sadly, didn’t make progress on Stuck Notifications this week due to absences in the team. We have, however, done some explorations around improving the unread experience between thread-capable and -incapable clients.
We’ve landed the initial PR to update the visual language on the right panel on develop and have progressed on making further touch-ups to the room summary tab.
We’ve decided to descope guest logins and cross-signing from the initial implementation of native OIDC and have started to plan final testing.
We’ve begun a mini project to automate more of our release process to free up some of our time for other work. If somebody is curious about just how complex our CI setup is, check out https://github.com/vector-im/element-web/pull/26432.
Hello everyone, We are thrilled to announce v3 of Cinny with exciting features like Rich Input Editor (aka WYSIWYG editor), even faster timeline with new features and improved People drawer.
Rich Input Editor
Message input has been completely rewritten to support rich text. It has now all the rich text buttons and key shortcuts for them as well.
The new input also supports inline markdown. Also, it no longer supports LATEX rendering or sending.
Input also support multiple file upload at one time now. Also, Emojiboard got refreshed look and combines both Emojis and Stickers and also include Sticker search.
Refreshed Timeline
Timeline is rewritten as part of our effort in moving the codebase to TypeScript and implementing the design system. As a result timeline scroll is 5x faster than before. It render almost all kinds of events now and has options to open various type of files right into the app itself, notably the pdf viewer.
People drawer
The side drawer listing people also has new features like sorting the members by Join/Left/Banned/Kicked etc as well as sorting the same alphabetically or date wise.
This reverts the change introduced in Synapse v1.7.0 (in 2019) which made public rooms non-discoverable via federation, in an effort to work around a problem described in the Avoiding unwelcome visitors on private Matrix servers blog post.
I’m hoping that with this change, Matrix federation will become more useful as a larger list of public rooms will be made discoverable. You can read the full changelog entry for more details and rationale for the change.
Matrix Rooms Search project got The Biggest Update so far 😉
That was a busy week at etke.cc - we’ve developed a matrix server inside MRS from scratch 🎉
MRS is a matrix server now. What does that mean? MRS got Matrix Federation APIs implementation (demo instance @ federation tester), and thus you can interact with it as with any other matrix server!
Of course, for the goals of the project, only the mandatory subset of APIs was implemented, so you can search all published rooms over matrix federation directly from your matrix client apps!
Documentation: MRS integrations, you can try the demo instance if you don’t run your own - matrixrooms.info.
Specifically for etke.cc customers, we’ve prepared a customized Element Web (app.etke.cc, source code) to include the MRS demo instance as one of the room directory options by default.
A long time in the making, we’ve finally been able to merg v0.1 of Push Notifications earlier this week. It is available in the latest nightly as well as on the App Store Version released yesterday under a labs flag for the Android and iOS version. Please go, check it out and leave any feedback you have in our #feedback:acter.global chat room.
Release cadence and focus
With the automation of the release process in place, we are intending to release a new version to the AppStores for Android, iOS and Windows (and every other target we are able to add over the coming weeks) every Thursday. For whom that isn’t frequent enough, we continue to offer nightlies as well - but then it is your responsibility to upgrade them ;) .
In general we have been focusing on cleaning things up and getting things into shape for regular usage. We had quite a success giving this preview to activism groups and get their feedback, with more coming up.
Join #ping-no-synapse:maunium.net to experience the fun live, and to find out how to add YOUR server to the game.
Rank
Hostname
Median MS
1
dendrite.s3cr3t.me
121
2
spqr2gang.com
176
3
inu.is
212
4
herkinf.de
236.5
5
matrix.its-tps.fr
406.5
6
rustybever.be
459
7
shiftsystems.net
602
8
littlevortex.net
688
9
evilcyberhacker.net
224469
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.