Matrix Live

Dept of Status of Matrix 🌑️

Matthew reports

I wrote some thoughts on why governments should explicitly route taxpayer money into funding maintenance of open source infrastructure such as Matrix (rather than only funding feature dev, or not funding at all): https://matrix.org/blog/2024/04/open-source-publicly-funded-service/

Josh Simmons says

This week we're thrilled to welcome the Eclipse Foundation as our first Associate Member! We couldn't be happier with the response to our expanded membership program and are delighted that we will have greater community representation when we elect our first ever Governing Board in the coming months.

Dept of Social Good πŸ™†

elgatto says

I'm working on my cyber security bachelor's thesis and am reaching out to gather insights from users who use decentralized messaging applications.

I would be incredibly thankful if you could find the 2 to 4 minutes to fill out the form. Your experience in the matter is incredibly valuable.

You'll find the survey at https://questionnaire.ink/412758

Your responses are confidential and will be used solely for supporting my thesis. No personally identifiable information is collected.

Thanks! :)

Dept of Spec πŸ“œ

TravisR 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:

  • There were no new MSCs this week.

MSCs in Final Comment Period:

  • No MSCs are in FCP.

Accepted MSCs:

  • No MSCs were accepted this week.

Closed MSCs:

  • No MSCs were closed/rejected this week.

Spec Updates

While not much has happened to make the stats go up this week, the Spec Core Team (SCT) has been reviewing MSCs to bring them closer to Final Comment Period (FCP) and ensure their implementations are heading in a healthy direction. More review from beyond the SCT is always appreciated - feel free to join in on the SCT's weekly focus from the #sct-office:matrix.org room on Matrix.

Next week's focus is expected to be almost entirely Trust & Safety (T&S) related proposals, such as account suspension and media authentication. Stay tuned for updates!

Dept of Clients πŸ“±

Ma's Trix

LDA [working...] says

Just started making a (simple) client in C recently for fun, Ma's Trix. It's really bare-bones and crashes sometimes, but overall been quite fun to write everything out myself!

You can try it out (and look at the terrible code) on your fx-CG50 graphing calculator at https://www.mastrix.org/ if you want(though you'll have to fiddle with random SDKs and may have to compile some things yourself, and some utilities used really only work on Linux).

(Funnily enough, I think it is the only actual C Matrix client around.)

FluffyChat (website)

Krille-chan reports

FluffyChat v1.19.0 has been released πŸ₯³

FluffyChat v1.19.0 features an improved design for message bubbles and a lot of fixes under the hood.

  • build: Update matrix dart sdk (Krille)
  • build: Update to flutter 3.19.5 (krille-chan)
  • chore: Add missing command hints (krille-chan)
  • chore: Add pagekey to custom page builder (Krille)
  • chore: Adjust design of typing indicator (Krille)
  • chore: Adjust ticker of notifications for Android (Krille)
  • chore: Calc blurhash in other thread (Krille)
  • chore: Mark muted unread rooms with bold text (krille-chan)
  • chore: More minimal matrix pill (Krille)
  • chore: Try out CupertinoPage instead of custom transition in router (krille-chan)
  • ci: add a license compliance check (lauren n. liberda)
  • design: Connect bubbles from same sender (krille-chan)
  • design: Display images in correct ratio in timeline (krille-chan)
  • design: Make appbar in material you design for mobile mode (krille-chan)
  • design: New sticker picker next to emoji picker (krille-chan)
  • design: Nicer QR Code design (krille-chan)
  • design: Nicer reactions design with size animations (Krille)
  • feat: Add insert content via gboard (krille-chan)
  • feat: Reply with one button in desktop (krille-chan)
  • fix: Do not sync in background mode (krille-chan)
  • fix: FluffyChat should assume m.change_password capability is supported if not present per spec (krille-chan)
  • fix: never use root navigator for bottom sheets (The one with the braid)
  • fix: Remove pantalaimon message with normal error message (krille-chan)
  • fix: Search in spaces view (krille-chan)
  • fix: Set read marker on web (Krille)
  • fix: Point to correct path for auth.html so completing sso login flow no longer 404s (Gavin Mogan)
  • refactor: Better logic for removing outdated notifications (Krille)
  • refactor: Enhance logic when to mark room as read (krille-chan)
  • refactor: Remove old aliases workaround (Krille)
  • refactor: Sticker widget code (Krille)
  • refactor: Use dart blurhash (Krille)
  • Translated using Weblate (Basque) (xabirequejo)
  • Translated using Weblate (Interlingua) (Software In Interlingua)

Krille-chan reports

I found out that the flutter package sqflite_sqlcipher silently never encrypted the app database on iOS. This has now been fixed by using a new way to encrypt the sqlite file in an Flutter app, thanks to The One With The Braid. Also this version now supports database encryption on Linux and the desktop platform in general.

Element X iOS (website)

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

Mauro Romito reports

  • El-X-iOS version 1.6.1 has been released to the app store
  • Room Permalinks work has started both on the SDK and the iOS side
  • QR Code login work has started too, this will allow to login through your web Element client on El-X without the need of entering your password or using the OIDC flow directly.
  • Some bug fixes and improvements were made on the RTE

Dept of SDKs and Frameworks 🧰

Rory&::LibMatrix (.NET 8 matrix bot/client library/SDK)

Emma [it/its] announces

Finally pushed last week's changes, also took the opportunity to rewrite how homeservers are initialised.

Changes

  • Homeserver initialisation now makes less HTTP calls for well knowns, as this info is fetched once now, and passed down
    • Future plan: implement DNS server delegation resolution using DNS-over-HTTPS (DoH).
  • Homeserver implementation details (eg. synapse admin api client) have been moved to a separate directory rather than nested classes (also housing their request/response models)
  • Homeserver resolver service now takes a logger as a required parameter (simplifies code)
    • If you manually instantiate this class, pass a NullLogger, though this will print a console warning. If there is interest in silencing this, feel free to let us know in #libmatrix:rory.gay!
  • Some internal semaphored caches were abstracted to a new class in ArcaneLibs (SemaphoreCache<T>), this simplifies code greatly.
    • Still need to locate if we have any more of those.

Not sure if there's any more notable changes this week, they got drowned out by last week's changes

  • You can view the diff of the last 2 weeks of changes over at cgit.rory.gay!

And, as always:

  • The code is available at cgit.rory.gay!
    • All contributions are more than welcome, be it documentation, code, anything! Perhaps, example usecases, bots, ...?
  • Discussion, suggestions and ideas are welcome in #libmatrix:rory.gay (Space: #mru-space:rory.gay)
  • Got a cool project that you're working on and want to share, using LibMatrix? Be sure to let me know, I'd love to hear all about it!

Matrix Rust SDK

bnjbvr announces

  • There's a new API to manipulate room breadcrumbs, aka a list of recently visited rooms. Rooms may be added manually to the breadcrumbs, and reloaded later. The information is stored in local storage (in the state store), so it can be reloaded across restarts.
  • Work on QR code login is still making progress in the shadows, with first runs fully working in example CLI programs πŸ₯³
  • The FFI layer has been improved: more methods are async now, and methods to create permalinks with matrix.to have been exposed.
  • All the local echoes are now pinning at the bottom (end) of the timeline, including echoes for messages that failed to be sent.
  • And your usual load of smaller bugfixes and refactorings.

Trixnity (website)

Multiplatform Kotlin SDK for Matrix

Benedict announces

After a more feature-rich release with Matrix 1.10 support last week, this week just a small bugfix release 4.3.1 for Trixnity:

features/improvements:

  • add more Mention-Regex types

bugfixes:

  • fix username collision calculation
  • fix NotificationService typo
  • fix retry on any HTTP-request exception

Dept of Ops πŸ› 

synadm (website)

Command line admin tool for Synapse (Matrix reference homeserver)

jacksonchen666 says

synadm 0.46 has been released with these changes and stuff:

Dept of Interesting Projects πŸ›°οΈ

LDA [working...] reports

Whelp, to finally push off the week, I've finally ported my C proxy over to JS with WebUSB for Chrom(ium)

Mo says

Fractal Networks has developed a Matrix powered database replication extension for the Python based Django web framework called Fractal Database. Fractal Database leverages several interesting Matrix based β€œprimitives” such as a distributed mutex (locking) mechanism in addition to a distributed task queue (think celery) based on the async Taskiq framework. Check out our hot off the press video overview of FractalDatabase at https://www.loom.com/share/7f4578d8ddef41a4838152f752b1b052?sid=47ff04be-1400-4dd7-a218-a2e6f80564af. Check out the code: https://github.com/fractalnetworksco/fractal-database

Matrix in the News πŸ“°

First certified TI-Messenger

Nico reports

Famedly recently was certified by the Gematik as one of the first providers for the TI-Messenger service in Germany. TI-Messenger is a Matrix based messaging solution for the German healthcare service. Other providers are also expected to be certified soon.

With that certification first deployments can happen now, before a wider roll-out can happen later. This will ensure a secure and encrypted communication between doctors and other healthcare providers. Later on the messenger is expected to be extended to insurances, but also eventually to patients and other recipients of healthcare services.

Sadly the official announcement doesn't seem to mention Matrix directly, but Heise does: https://www.heise.de/news/TIM-Erster-Messenger-fuers-Gesundheitswesen-erhaelt-Zulassung-9676340.html (German article)

Official announcement from Gematik (in German as well): https://www.gematik.de/newsroom/news-detail/pressemitteilung-erster-ti-messenger-anbieter-zugelassen

Matrix Federation Stats

Aine says

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

As of today, 9494 Matrix federateable servers have been discovered by matrixrooms.info, 2861 (30.1%) of them are publishing their rooms directory over federation. The published directories contain 159968 rooms.

Stats timeline is available on MatrixRooms.info/stats

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
1doctoruwu.uk218
2uwu.sulian.eu241
3conduwuit.aguiarvieira.pt277
4aguiarvieira.pt279
5nerdhouse.io327
6matrix.org336.5
7rom4nik.pl411
8herkinf.de434
9littlevortex.net492
10pain.agency523.5

#ping-no-synapse:maunium.net

Join #ping-no-synapse:maunium.net to experience the fun live, and to find out how to add YOUR server to the game.

RankHostnameMedian MS
1doctoruwu.uk102
2conduwuit.aguiarvieira.pt138.5
3uwu.sulian.eu154.5
4spritsail.io169
5aguiarvieira.pt199
6matrix.its-tps.fr217
7girlboss.ceo250
8transfem.dev252
9inu.is325.5
10littlevortex.net453

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