πŸ”—Matrix Live

πŸ”—Dept of Events and Talks πŸ—£οΈ

Michael @matrix / away in πŸ‡―πŸ‡΅ Japan until Jan, 19 says

Hi people, we (@bboett:matrix.org & @michaelmicheal:matrix.org) are doing a Stammtisch like meeting in Tokyo on 17th January 2026 @19:00 JST. We call it "Matrix Pop-up meeting Tokyo". All people around an interested to join please go to room #matrix-popup-tokyo:pwl.social

πŸ”—Dept of Spec πŸ“œ

Andrew Morgan (anoa) {he/him} says

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.

πŸ”—MSC Status

πŸ”—New MSCs

πŸ”—MSCs in Final Comment Period

πŸ”—Accepted MSCs

πŸ”—Closed MSCs

  • No MSCs were closed/rejected this week.

πŸ”—Spec Updates

A flurry of activity around smaller - yet individually impactful - MSCs this week! Lovely to see each moving forwards and enter FCP.

The Spec PR for MSC4356: Recently used emoji landed last week as well. Having one's emoji preferences sync across different clients makes the experience of using multiple clients even smoother.

Not too much exciting news otherwise. As always, take a look at The View to see the Spec Core Team's current priorities. And if you have an MSC that you think is ready for the SCT to take a look at, let us know in #sct-office:matrix.org!

πŸ”—Dept of Trust & Safety βš–οΈ

πŸ”—policyserv

TravisR reports

Our new proactive safety tool, policyserv, has hit v1.1.0! Aside from the traditional bug fixes and improvements, there's also support for a more complex keyword filter (using Go text templates), ability to define support contacts/pages, and some utilities to make deployment a bit easier.

Policyserv works best alongside existing moderation tooling to increase the amount of protection available in a community. The Foundation's instance is available to give it a go without needing to deploy your own.

#policyserv:matrix.org is the best place to get support, ask questions, and chat with folks who use policyserv (including us at The Foundation).

πŸ”—Draupnir (website)

A moderation bot for open Matrix communities.

Gnuxie πŸ’œπŸ reports

Hey everyone, Draupnir's NLnet grant has been extended and we have some new goals. Here's an overview:

You can find us and discuss in #draupnir:matrix.org

πŸ”—Dept of Servers 🏒

πŸ”—Synapse (website)

Synapse is a Matrix homeserver implementation developed by Element.

Devon Dmytro says

This week we released Synapse v1.145.0.

This release notably fixes a few outstanding bugs:

  • Fix sliding sync performance slow down for long lived connections. (#19206)
  • Fix a bug where Mastodon posts (and possibly other embeds) have the wrong description for URL previews. (#19231)
  • Fix bug introduced in 1.143.0 that broke support for versions of zope-interface older than 6.2. (#19274)

Ubuntu 25.04 End of Life

Ubuntu 25.04 will be End of Life on 17 Jan 2026. This will be the last release that Synapse builds debian packages for Ubuntu 25.04. Starting with Synapse 1.146, debian packages will be built for Ubuntu 25.10 instead.

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.

πŸ”—Homeserver Deployment πŸ“₯️

πŸ”—Element Server Suite (website)

Element Server Suite (ESS) is a backend hosting solution for Matrix-based communications that supports self-hosted and fully managed deployments.

Ben BZ reports

Element Server Suite 26.1.0 and LTS releases are now available

A new year and the first new releases of ESS for the year! ESS Community 26.1.0 and ESS Pro 26.1.0 have been released, bringing in the latest Element Web, Synapse and Matrix Authentication Service versions. Both also have gained support for making additional files available in the container for each component, enabling use-cases like customising the email templates used by Matrix Authentication Service.

We'd also like to provide a reminder to anyone running versions of ESS Community or Pro older than 25.12.2 that they should upgrade to a newer version to obtain the fix for the critical security issue that's being tracked as ELEMENTSEC-2025-1670.

ESS Classic 25.04 LTS and 25.10 LTS have also had releases to upgrade Postgres and migrate from ingress-nginx to Traefik due to end of support lifetimes for both.

πŸ”—Dept of Clients πŸ“±

πŸ”—Mactrix

Viktor Strate announces

Mactrix is a new native macOS Matrix client that has been open-sourced this week. It is still in early development but already has a lot of features including:

  • OAuth and password based login
  • Markdown formatting
  • Reactions, reply to and pins
  • Threads
  • Spaces
  • Emoji verification
  • macOS notifications

A screenshot of the Mactrix client. It consists of three panes: the left one is a room list, the central one is the timeline of a room, and the right one has the room details

The client builds on top of the matrix-rust-sdk.

Come join our room if you're interested #mactrix:qpqp.dk

πŸ”—Neochat (website)

A client for Matrix, the decentralized communication protocol.

Tobias Fella says

Here's what we've done in NeoChat in the last week:

  • Added a way of storing private notes about a user, similar to what Discord and Mastodon have
  • Improved the interaction with the messages in the search dialog
  • Added a way of viewing support information for your homeserver
  • Added a clarification to the reporting dialog about where reports are sent
  • Cleaned up the user interface a bit
  • Added a dialog listing all read markers for an event
  • Added a way of viewing a user's global profile in addition to their room-specific one

πŸ”—Element X iOS (website)

A total rewrite of Element iOS using the Matrix Rust SDK underneath and targeting devices running iOS 17+.

Ștefan reports

The team has continued making progress on spaces functionality and quality improvements. Highlights from this week:

Create Space Flow - Users can now create spaces directly from the Space Explorer screen. This includes a redesigned avatar button, proper power level overrides for spaces, and disabled knocking regardless of feature flags. Work is underway on the Add Rooms to Space screen to allow managing space contents.

QR Code Device Linking - Added support for linking new devices via QR code in the authentication flow, with comprehensive test coverage and UI refinements to match platform designs. Tests now cover both mobile and desktop device linking scenarios.

URL Linkification Fixes - Fixed two related issues with URL detection: email addresses no longer get incorrectly treated as URLs, and URLs with trailing brackets now preserve their closing parentheses when clicked.

Polish & Cleanup - Improved snapshot tests for the Create Room flow using UIImage for local thumbnail rendering, tidied space-related naming across the codebase for consistency, and updated both SDK and build dependencies including Fastlane.

πŸ”—Element X Android (website)

Android Matrix messenger application using the Matrix Rust SDK and Jetpack Compose.

Jorge announces

This is the first TWIM of the year for the Element X Android team! Sorry for the hiatus, we just wanted to give you some space πŸ₯ *ba-dum-tss* πŸ₯ :

  • Spaces - as the time for officially releasing the feature is approaching lots of work is still happening in this area, including:
    • Creating spaces.
    • Removing rooms from spaces.
    • Modifying users, permissions and roles in spaces.
  • Room list improvements: the room list is using a new loading and sorting algorithm that should make it faster and more reliable.
  • Voice messages now have a speed modifier when being played, so you can listen to them at 0.5x, 1.5x or 2x the default speed.
  • Replying to a notification won't trigger the notification sound anymore - sorry about this!
  • There were some UX and accessibility improvements in several screens, like the session verification or the QR code login ones.
  • We're also working on improving the migration from Element Classic to Element X when the 2 apps are installed in the same device.
  • And of course, there is a long list of bugfixes.

Last but not least, Element X Android v26.01.0 has been pre-released and is in open testing. Get it while it's hot and please report any issue you find!

πŸ”—Dept of SDKs and Frameworks 🧰

πŸ”—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

Happy New (Gregorian) Year folks! Back at work after a couple of weeks off for the team and most of the contributors. Snow is falling outside, cold is here to last, kids are building igloos, let's see what happens in the Matrix Rust SDK recently.

πŸ”—Latest Event

We are polishing the last bits, but the meta issue can be closed. The API is considered stable and fulfill its promises.

  • #6035 The LatestEventValue is erased when a room has been emptied. This is useful when a user is ignored: the LatestEventValue will automatically be re-computed.
  • #6016 Some errors from the Send Queue are recoverable, and must not mark the LatestEventValue as LocalCannotBeSent, but must keep being a LocalIsSending.

πŸ”—Sliding Sync

We have cleaned up the Sliding Sync API a bit to remove the sticky parameters feature entirely, making request.room_subscriptions non-sticky every time. Also, once a room subscription is sent, it's not necessary to send it again, thus reducing the size of the request payloads.

  • #6002 and #6009 The sliding_sync::sticky_parameters has been entirely removed (an artifact from MSC3575).
  • #6012 New methods on SlidingSync: unsubscribe_to_rooms to unsubscribe to a set of rooms, and clear_and_subscribe_to_rooms to reset the subscriptions and subscription to a fresh set of rooms.
  • #6005 Introduce the PollTimeout type to control the timeout query parameter to /sync with more delicacy.

πŸ”—Space

A lot of work is happening on the Space API, but a single PR has been merged:

  • #6010 Add CreateRoomParameters::is_space in the bindings.

πŸ”—SQLite

Our quest to improve SQLite performance is pursuing:

  • #6004 Add WAL checkpoints when creating DB pools and vacuuming. To quote the author:

    We've noticed the WAL files growing larger and larger, not shrinking as expected. This may be due to connections being busy and not allowing the automatic WAL checkpoints to perform this shrinking operation or some other causes, we're still investigating the issue.

    In the meantime we can manually add WAL checkpoints:

    1. When creating the DB pools, before any read/write operations are done.
    2. Before vacuuming, so the WAL has room to grow to match the DB.
    3. After vacuuming, since the copied data in the WAL file has been stored in the DB.

πŸ”—RTC

  • #6003 Add new call intents for voice only.

πŸ”—Regular dose of bug fixes

And the most notable bug fixes of the weeeeek aaaaaaaaare:

  • #6027 Fix a double msgtype in a m.location event (a bug from ruma).
  • #5996 Use the server name from the user ID as a fallback URL for fetching the well-known info.
  • #5994 Deduplicate aggregation local and remote echo in the Timeline.
  • #5992 Create key dirs if they don't exist in the search engine.
  • #5858 Utilize the Event Cache and include common relations when focusing on an event without context.

πŸ”—matrix-bot-sdk (website)

A TypeScript/JavaScript SDK for Matrix bots.

TravisR says

It's been a little while, but the bot-sdk has a new release! v0.8.0 just landed to fix media downloads in our authenticated media world and to fix a bug in how crypto requests are sent to the server.

Bots which aren't using encryption should be able to upgrade right away. Let me know in #matrix-bot-sdk:t2bot.io if that turns out to be untrue πŸ˜…

Those using encryption however will need to make a couple of changes:

  1. When creating the RustSdkCryptoStorageProvider, a second parameter of StoreType.Sqlite must be supplied.
  2. Because the older StoreType.Sled is no longer supported by the rust-sdk, bots will additionally need to log out, delete any stored data, and log back in with StoreType.Sqlite. Unfortunately, no migration is available at the moment (please PR one if able!)

This should hopefully also improve general reliability of encryption for bots.

The full changelog is available on github, and best effort support can be found in the freshly upgraded #matrix-bot-sdk:t2bot.io room. Hopefully the next release is a bit sooner than 2 years from now πŸ˜…

πŸ”—Matrix Federation Stats

Aine [etke.cc] says

collected by MatrixRooms.info - an MRS instance by etke.cc

As of today, 13622 Matrix federateable servers have been discovered by matrixrooms.info, 3460 (25.4%) of them are publishing their rooms directory over federation. The published directories contain 17150 rooms.

The most popular server software among the online servers is:

  • synapse: 11581 (85.0%)
  • conduit: 521 (3.8%)
  • continuwuity: 396 (2.9%)
  • dendrite: 395 (2.9%)

Stats timeline is available on πŸ“Š MatrixRooms.info/stats

🧩 Integrations with apps and servers | πŸ‘‰ How to add your server | πŸ™… How to remove your server

πŸ”—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.

RankHostnameMedian MS
1codestorm.net194.5
2tuwunel.love210.5
3melthecat.dev282
4envs.net308
5muoi.me416
6shork.ch416
7rory.gay435.5
8vrkknn.net471
9chat.blahaj.zone475.5
10yipping.zone535

πŸ”—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