FrOSCon is the two-day Free and Open Source Software Conference, taking place every year in August at the University of Applied Sciences Bonn-Rhein-Sieg by Bonn, Germany. The Matrix community has long been a part of it, showing off and advertising Matrix as one of the many FLOSS projects. Drop by to say hi at our and the many other exhibitor booths, watch talks across 7 or more rooms in parallel, join one of the many workshops, chat with us, and much more. See you there this weekend!
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 (SCT) continues to focus on Matrix 2.0 MSCs with an aim of cutting the release soon. There's not much to report on weekly, but you can follow the SCT's progress in the SCT Office room or on our tracking board.
Other MSCs are still being accepted, though may experience process delays due to priority being given to Matrix 2.0. Let the team know if there's an MSC which could do with review through the SCT Office.
This week we have a new release candidate, Synapse v1.159.0rc1. To highlight:
On the user status front, we landed support for MSC4429: Profile Updates for Legacy Sync (defaults to disabled). To try this out, enable it via include_profile_updates_in_sync in your homeserver config and then use a client which also supports it. You can use the nightly version of Element Web (like https://develop.element.io) with the "User Status" labs flag enabled (visible after you enable "Developer mode" from /devtools). Pro-tip: /status <emoji> <text> β¨. More work to be done on this front like Sliding Sync support and federating all of this goodness.
We shipped some worker replication fixes and robustness tweaks this week (#20085, #20071). This also spawned a fewmore follow-ups to add some metrics so we can better notice when things are going wrong (will land in the coming weeks).
If you run Synapse against PostgreSQL, we now set idle_in_transaction_session_timeout (30 minutes) on new connections, so a leaked connection can no longer sit there holding locks or blocking vacuum indefinitely (#20077).
On the Matrix v1.16 spec-compliance front, Jason Little from Famedly has been landing fixes (#20021) as we march towards being able to update the default room version to 12.
To make it easier to give us useful info when reporting issues, we have new documentation on how to share a JSON snapshot of your Grafana dashboard (#20048). This is especially helpful when reporting performance problems as we can import the snapshot to dive straight into the Grafana dashboard ourselves to look for clues (way better than static screenshots).
Also for those that use our Debian/Ubuntu packages from packages.matrix.org, we've updated the signing key expiry date. This should be transparent to those that update before the previous version of the key expires (2027-03-15), but please check the relevant section in the upgrade notes.
Thank you to all our contributors for helping to make Synapse the best it can be. As always, feel free to stop by #synapse:matrix.org to join in on the discussion and if you encounter a bug make sure to report it here.
Continuwuity released v26.7.3 earlier this week. It contains two important vulnerability fixes, one of which is of a very high priority for users that have configured SMTP. There are no new features in this update, just the two bug fixes - we urge everyone to update as soon as possible.
However, worry not! I come bearing great news too! We have features in the works! And as a treat for TWIM readers (not really but pretend it is), we've gone ahead and done the unthinkable: published a pre-release! That's right, I'm not telling you to track our main branch for this one (although you have to promise to update your server when the full release is made). If you're eager to get your hands on significantly reduced resource load, faster federation, sticky events, and significant fixes to both legacy and sliding sync, you can deploy the v26.8.0-alpha.1 release! Make sure to report any issues to the issue tracker, and/or seek out support in #continuwuity:continuwuity.org!
Venator v0.1.0a3 was just released, containing a healthy balance of bugfixes and new features. There's nothing too exciting in this release (oauth and federation soon I promise), but deployments of older versions may wish to update to take advantage of new security improvements like password peppering, and sweeping reductions in storage usage (with even more to come!).
Using Venator? Let me know in #venator:starstruck.systems, I am continually surprised to find people actually have long-lived deployments of this alpha project.
Hi, federation! A lot has happened since our last TWIM post. We've rolled out a wave of updates since version 26.2.0 and we'll cover major things in this post.
Group calls: Added support for LiveKit group calls, should be compatible with Element Call. You can enable this under Calls -> Element Call to join group conversations.
Tailored message layouts: Choose from three different layouts, including a new Discord-inspired "Modern" design, updated bubbles, and the legacy bubbles layout from FluffyChat.
Custom fonts (experimental!): Make the app yours by setting custom fonts for the UI, messages, and code blocks individually. You need to have these fonts in your OS.
Interactive reactions & state events: React, redact, or reply to reactions and state events just like standard Matrix events.
Media spoilers: Media now can be hidden until clicked with content warnings feature (MSC3725).
Quick actions: Double-tap any message to instantly react or reply.
Timezones: Share your local time right in your profile.
User notes: Add notes about users for yourself.
Room server ACLs: Administrators can now manage room server access control lists directly.
Also, we updated the extera.xyz landing website and moved our development from GitHub to a self-hosted Forgejo instance at source.extera.xyz. We made sure that signing up process won't take much time, so you can authenticate using your Matrix account - pick "Matrix" auth method and join a special room or DM our bot.
SchildiChat is a fork of Element for Android and Desktop, that used to focus on UI changes such as message bubbles and a unified chat list, but now also provides some additional tweaks and community-driven features that may not be on the roadmap for the upstream clients.
You may remember SchildiChat Revenge, my latest desktop client written in Kotlin & Jetpack Compose.
Since the latest release, this 3rd generation SchildiChat now also supports Android!
Initially, porting Revenge to Android was just meant as an experiment for fun, but it worked out way to well to not follow this route further.
It's still missing some important features (such as notifications, integrating with Android share targets, etc.), but I've already switched to using it as my main client on Android.
In case you're curious about what this means for SchildiChat Next, the current Android client based on Element X: it will keep receiving upstream merges and updates for the foreseeable future, but new SchildiChat features are much more likely to happen on Revenge, now that we actually have a shared codebase for both desktop and Android.
If you want to try it out, currently it's only released in my own F-Droid repo (I'll likely also put it into the Play Store at some point).
This week we pushed the RC for version 26.08.2 to TestFlight, which will land on the App Store on Monday assuming testing goes smoothly. This release has a focus on quality-of-life improvements including a simplified login flow including auto-completion for your previously used homeservers. In addition read receipts should be sent more reliably when resuming the app, weβve fixed a simulcast issue in Element Call and improved call behaviour during device rotation on Plus/Max sized phones.
In terms of upcoming changes weβve made a noticeable improvement to launch performance by loading MapLibre only when a map is actually needed, improved the performance of the room list by removing some needless filter operations and fixed the iPadβs tab rail background colour not always being correct.
And the work on user status is nearing completion, with more testing against Synapseβs global profiles sliding sync extension currently underway.
Element X Android v26.08.1 is rolling out on the Play Store π
Highlights of the release:
Push notifications for live location share starts, implementing MSC4505.
Active call participants are now shown in the room's people list.
The emoji picker expands to full height when the keyboard is shown.
A batch of UI and accessibility fixes, including checked/unchecked state announcements for user rows in the invite screen, and the "add reactions" menu in the threads screen.
Since then, develop has been very busy β a huge round of community bugfixes landed, many of them long-standing issues:
Voice messages keep playing when the screen turns off, and messages without a waveform can be seeked.
Enter sends a message when using a physical keyboard (Shift+Enter for a new line).
matrix: URIs in messages are turned into pills, IPv6 URLs are linkified properly, and the server part of a fediverse handle is no longer mistaken for an email address.
Notification fixes: no more duplicated messages in a room notification, no notifications for events sent by another account on the same device, and no notifications for redactions of unknown events.
Videos are never re-encoded at a higher bitrate than the source.
Bug reports no longer fail to send after the app has crashed.
...and much more. Massive thanks to @hayaksi1 for this impressive series of contributions!
Also landed: push notifications for knocks, the global account data API exposed on MatrixClient, and KDoc documentation added across all of the api modules to make the codebase friendlier to newcomers.
Still cooking behind feature flags: user status, and the QR code login / link new device flow (now with proper timeout handling).
As of today, 20123 Matrix federateable servers have been discovered by matrixrooms.info, 4160 (20.7%) of them are publishing their rooms directory over federation.
The published directories contain 20397 rooms.
The most popular server software among the online servers is:
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.