πŸ”—Matrix Live

πŸ”—Dept of Status of Matrix 🌑️

πŸ”—Matrix Community Year In Review 2023

Nico announces

(Please ignore, that I never know, what year number to attach to such a "Year In")

You may remember I organized a small blog post last year to collect stories from the different community projects and what they did in the year and maybe some sneak peaks at the next year. If not, you can find it here or on the Matrix.org blog.

Anyway, enough about 2022, I now encourage you to talk about 2023 and beyond! If you have interesting stuff to report about your projects or projects you have been involved in in 2023, feel free to join #year-in-2023:neko.dev and talk about it! The usual TWIM rules apply there, just that we talk about a whole year and it may involve lots of manual editing on my side, so don't try to break it. Also please be positive in your news and lets try to end 2023 with a bang!

And please share this with projects you want to hear about. :)

πŸ”—Dept of Spec πŸ“œ

TravisR announces

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:

  • No MSCs are in FCP.

Accepted MSCs:

  • No MSCs were accepted this week.

Closed MSCs:

πŸ”—Spec Updates

There hasn't been a whole lot of spec progress this month due to holidays and other time constraints, but we have been hard at work preparing for the new year's first release: Matrix 1.10. Expected sometime late February to March 2024, Matrix 1.10 will hopefully bring a lot of forward movement on major projects like Extensible Events, Custom Stickers & Emoji, and Authenticated Media.

Our plan is published here, and is open for comment until about January 10th, 2024 - let us know if we missed anything, or if there's something unexpected there!

As always, if you have an MSC which is ready for FCP and not on the plan, let us know in #sct-office:matrix.org - we'll aim to get it included.

Thanks, and see you all in January :)

(P.S.: no random MSC of the week because I can't get the script to run - sorry)

πŸ”—Dept of Clients πŸ“±

πŸ”—Nheko (website)

Desktop client for Matrix using Qt and C++17.

Nico announces

Hey there! I was basically blown away the last few days (because of the weather though), but maybe these small changes will have the same effect for you!

Emma (not that Emma, the other one!) enabled deletion of sticker and emoji packs in Nheko. I never thought about it, but some people might genuinely want to remove an old pack from a room! I guess that is the kind of polish, that a feature needs, once people have used it for a while and that is easy to miss at the start. Thanks a lot!

On the other hand q234rty modified our workaround to palette switching to have less of a performance impact on KDE6. If you were using the development versions of KDE6 (like plasma 6 or just its themes), it might have taken up to 7 seconds to open a new window. Now it should be less than one. Sadly the workaround itself is still needed, but we might figure out how to fix it properly some day.

Apart from that we finally figured out how to make our appinstaller work properly. Turns out you really need range requests in your file store! And Microsoft documentation is as good as ever! If you want to install the latest Nheko Nightly on windows, you can now just click here. Note that the icon still has a blue background there. Microsoft requires us to add 2 more app icons to allow us to make the background transparent and I really am not motivated to do that at this point in time... But installing Nheko that way will automatically check for updates one a week. Of course that means you will ping our servers once a week, so if you want to avoid that, please install the msix directly instead of going through the appinstaller.

That's everything for this year, see you in the next one! πŸŽ‰

πŸ”—Fractal (website)

Matrix messaging app for GNOME written in Rust.

KΓ©vin Commaille says

Let's celebrate the winter (or summer) solstice with a new Fractal beta release! Even though Fractal 5 was released only 1 month ago, development has been going at a steady pace with a few new contributors, so we want our users to benefit from our progress.

The staff's picks:

As usual, this release includes other improvements, fixes and new translations thanks to all our contributors, and our upstream projects.

It is available to install via Flathub Beta, see the instructions in our README.

As the version implies, there might be a slight risk of regressions, but it should be mostly stable. If all goes well the next step is the release candidate!

If you find yourself with time to spare during these end-of-year holidays, you can always try to fix one of our issues. Any help is greatly appreciated!

πŸ”—Dept of Non Chat Clients πŸŽ›οΈ

πŸ”—Circles (website)

E2E encrypted social networking built on Matrix. Safe, private sharing for your friends, family, and community.

cvwright says

Circles is an encrypted social networking app for families and friends. It is currently in open beta testing and will be launching early in 2024.

This week we released our biggest beta update yet on iOS. Circles iOS v0.9.0 (27) is available now on TestFlight and includes a long list of new features and UI improvements, including:

  • Better navigation with less wasted space on iPhone
  • New "pull down to refresh" on most screens
  • More responsive UI for invitations
  • Show search suggestions when inviting friends to a new circle or group
  • Better UI for finding friends of your friends and inviting them to follow you

Source code and more information are available from the FUTO Gitlab

πŸ”—Dept of SDKs and Frameworks 🧰

πŸ”—elm-matrix-sdk

Bram says

This week, beta version 2.0.0 of the Elm SDK has been published!

That might sound a bit quick since beta version 1.0.0 was released last week - but in Elm, the compiler decides the version bump, not the marketing team. If you're curious what exactly happened that forced this major version bump, feel free to join the conversation at #elm-sdk:matrix.org!

This week, I would love to get your feedback on customizability. 🎚️ We released a Matrix.Settings module which allows you to configure the Vault with certain variables. Take a look at the current two settings and please let me know what else you'd like to configure in an SDK before it starts talking to your homeserver.

πŸ”—Trixnity (website)

Multiplatform Kotlin SDK for Matrix

Benedict announces

I introduced a bot mode in Trixnity v4.1.1. It disables many features of the MatrixClient and speeds it up significantly. It can be used for E2EE-enabled event processing. First integration tests showed a processing time of less than 1 ms per encrypted event in a sync (on my notebook).

features/improvements:

  • introduce bot mode
  • add Kotlin/JS ByteArrayFlow helpers for Streams

bugfixes:

  • fix decrypt olm bug: device_one_time_keys_count has been processed before decryption -> one time keys were removed and could not be used for decryption

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

Next-gen crypto-included SDK for developing Clients, Bots and Appservices; written in Rust with bindings for Node, Swift and WASM

Jonas Platte reports

πŸ”—Matrix Dart SDK (website)

Matrix SDK written in pure Dart.

td reports

πŸ”—Matrix Dart SDK website

Nothing exciting this week as everyone glides into vacation mode, but we had a (very small) breaking change so here I am :D

πŸ”—v0.25.0

If you used any of the Timeouts values from the sdk in your client, they are now renamed to something a bit more sensible (CallTimeouts).

otoh we had some sweet internal changes like finally having tests for calls in the sdk! Here's the whole changelog

πŸ”—Dept of Ops πŸ› 

πŸ”—Dendrite-Admin-Interface

jjj333_p [envs variant] reports

A project has been begun to make interfacing with Dendrite's admin endpoints easier has been begun. Currently administration of a Dendrite server requires interfacing with http endpoints (using curl or similar), and it is still essential to read directly from PostgreSQL in order to fetch some of the information necessary to properly maintain a public homeserver. The goal of Dendrite Admin Interface is to simplify this and add functionality by allowing admins to interface with these endpoints and read only operations of the database using simple bot commands in a dedicated administration room.

This project is still in the baby stages, and only the evacuateRoom endpoint has been implemented, however most of the base code has been begun and development is picking up speed. If you are interested in contributing or learning more please visit our GitHub: https://github.com/jjj333-p/dendrite-admin-interface

πŸ”—Dept of Bots πŸ€–

πŸ”—OpenAI Translate Maubot Plugin

Tom Foster reports

πŸ”—v0.3.0

This is a simple GPT-based alternative to Maubot's Google Translate plugin to help people understand each other. 🀝

As we connect across different cultures and languages, understanding each other is crucial, and this bot is designed to help cross those barriers, making it possible to understand even very technical or nuanced messages in other languages.

I've configured over 200 language codes so far, including extended IETF codes like en-gb, fr-ca, pt-br, even nds for Low German (PlattdΓΌtsch), and so far the results are noticeably more natural and fluent than the Google equivalent, so I'm excited to see what the community does with it. πŸš€

Considering the API has a cost, I've optimised the default prompt to minimise token usage, and added rate-limiting options so you can limit the requests each user can make over a given period of time to minimise abuse.

Through actual usage across several public rooms this week, I've observed an average of only about 45 input tokens and 15 output tokens per request. In real terms, that's just over 133 translations for $0.01 using the gpt-3.5-turbo model, making it a very cost-effective solution for communities of almost any size! πŸ’ΈπŸ‘

You can add your own custom language codes (it comes with en-cockney and lotr-sindarin as examples) and even use an alternative API if you have an OpenAI-compatible endpoint to use.

Visit the releases page to give it a whirl, contribute, or drop some feedback - I'm eager to make this as easy and flexible as possible, so would love to hear your suggestions! πŸ”§

πŸ”—Matrix Federation Stats

Aine says

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

As of today, 8423 Matrix federateable servers have been discovered by matrixrooms.info, 2241 (26.6%) of them are publishing their rooms directory over federation. The published directories contain 168349 rooms (such difference with previous week is due to the enabled automatic retention policy in MRS for unpublished/removed rooms)

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
1maunium.net294
2nerdhouse.io334
3plocki.org343
4fostered.uk364
5grmml.de407.5
6matrix.its-tps.fr693
7intelfx.name996
8matrix.sp-codes.de1261
9mailstation.de1277
10norrland.xyz1583

πŸ”—#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
1nerdhouse.io163
2spqr2gang.com171.5
3dendrite.matrix.org198
4dendrite.s3cr3t.me226
5matrix.its-tps.fr240.5
6fostered.uk287
7kanp.ai631
8conduit.grich.sk776.5
9darkness.services1251
10l1qu1d.net2138.5

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