matrix.org/content/blog/2024/04/2024-04-05-twim.md

308 lines
16 KiB
Markdown

+++
date = "2024-04-05"
title = "This Week in Matrix 2024-04-05"
path = "/blog/2024/04/05/this-week-in-matrix-2024-04-05"
[taxonomies]
author = ["Thib"]
category = ["This Week in Matrix"]
+++
## Matrix Live
{{ youtube_player(video_id="iLcFzucQxI0") }}
## Dept of *Status of Matrix* 🌡️
[Matthew](https://matrix.to/#/@matthew:matrix.org) 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](https://matrix.to/#/@josh:josh.tel) says
> This week we're thrilled to welcome the [Eclipse Foundation](https://www.eclipse.org/) 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](https://matrix.org/blog/2023/12/electing-our-first-governing-board/) in the coming months.
<!-- more -->
## Dept of Social Good 🙆
[elgatto](https://matrix.to/#/@elgatto:matrix.org) 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](https://matrix.to/#/@travis:t2l.io) 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](https://matrix.to/#/#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...]](https://matrix.to/#/@lda:a.freetards.xyz) 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.)
>
> ![](/blog/img/jPaaABK8lqdd4yOJhvAE7HtGBOjVGV6G.png)
### FluffyChat ([website](https://fluffychat.im))
[Krille-chan](https://matrix.to/#/@krille:janian.de) 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](https://matrix.to/#/@krille:janian.de) 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](https://github.com/vector-im/element-x-ios))
A total rewrite of Element-iOS using the Matrix Rust SDK underneath and targeting devices running iOS 16+.
[Mauro Romito](https://matrix.to/#/@mauro.romito:element.io) 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]](https://matrix.to/#/@emma:rory.gay) 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<T>, though this will print a console warning. If there is interest in silencing this, feel free to let us know in [#libmatrix:rory.gay](https://matrix.to/#/#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](https://cgit.rory.gay/matrix/LibMatrix.git/commit/?id=37b97d65c0a5262539a5de560e911048166b8bba)!
>
> _**And, as always:**_
>
> * The code is available at [cgit.rory.gay](https://cgit.rory.gay/matrix/LibMatrix.git)!
> - 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](https://matrix.to/#/#libmatrix:rory.gay) (Space: [#mru-space:rory.gay](https://matrix.to/#/#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](https://matrix.to/#/@benjib:element.io) 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](https://gitlab.com/trixnity/trixnity))
Multiplatform Kotlin SDK for Matrix
[Benedict](https://matrix.to/#/@benedict:imbitbu.de) 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](https://github.com/JOJ0/synadm))
Command line admin tool for Synapse (Matrix reference homeserver)
[jacksonchen666](https://matrix.to/#/@jacksonchen666:jacksonchen666.com) says
> [synadm 0.46][release] has been released with these changes and stuff:
> * [`synadm room purge-empty` was implemented][purgeemptycommit], which deletes rooms where nobody on your homeserver has joined. ([`synadm room purge-empty` feature request][purgeemptyFR])
> * [Clarified "Homeserver name" in `synadm config`][clarifyhscommit] (it should be the domain part of your MXID. See [an issue where "Homeserver name" was confused][hsconfusionissue]).
> * [`synadm config` hides your token when inputting your token][tokenhidecommit].
> * Other text changes including [capitalizing "admin API" as "Admin API"][admincaps] (["Streamlining of 'Admin API' wording" issue][admincapsissue]), and [pointing Synapse docs to the element-hq version][docslinksupdate] (previously was the matrix-org version, [issue on updating Synapse documentation links][docslinksupdateissue]).
> * Deleting local media by date or size now uses the newer, non-deprecated endpoint. ([endpoint change commit][endpointcommit])
>
> [release]:https://github.com/JOJ0/synadm/releases/tag/v0.46
>
> [purgeemptyFR]:https://github.com/JOJ0/synadm/issues/48
> [purgeemptycommit]:https://github.com/JOJ0/synadm/commit/48fa5defee99533abbf47905c4c3473f250a0b1c
>
> [hsconfusionissue]:https://github.com/JOJ0/synadm/issues/142
> [clarifyhscommit]:https://github.com/JOJ0/synadm/commit/acdcd819a7259561aa5fa7e9471aa04dd8a9a8be
>
> [admincapsissue]:https://github.com/JOJ0/synadm/issues/132
> [admincaps]:https://github.com/JOJ0/synadm/commit/ae26ecf848278b167c8383ea28e8e32a284fb00c
>
> [docslinksupdateissue]:https://github.com/JOJ0/synadm/issues/140
> [docslinksupdate]:https://github.com/JOJ0/synadm/commit/cc239988a25960a4b6947d787f8e74badb4b19f8
>
> [tokenhidecommit]:https://github.com/JOJ0/synadm/commit/2a5ebeb79ae09177bd1d18b88b5afa0494bdd323
>
> [endpointcommit]:https://github.com/JOJ0/synadm/commit/5bd5e3c8c58d2e57f6ffcf924bfb852d3e6e19ba
## Dept of Interesting Projects 🛰️
[LDA [working...]](https://matrix.to/#/@lda:a.freetards.xyz) reports
> Whelp, to *finally* push off the week, I've finally ported my C proxy over to JS with WebUSB for Chrom(ium)
> ![](/blog/img/wzoCxPoYQBw7dMoYphqQXNayQQDMm4uk.png)
[Mo](https://matrix.to/#/@balaa:ether.ai) 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](https://matrix.to/#/@deepbluev7:neko.dev) 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](https://matrix.to/#/@aine:etke.cc) says
> collected by [MatrixRooms.info](https://matrixrooms.info/?utm_source=twim&utm_medium=matrix&utm_campaign=federation-stats) - an [MRS](https://gitlab.com/etke.cc/mrs/api) instance by [etke.cc](https://etke.cc?utm_source=twim&utm_medium=matrix&utm_campaign=federation-stats)
>
> 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](https://matrixrooms.info/stats/?utm_source=twim&utm_medium=matrix&utm_campaign=federation-stats)
>
> [How to add your server](https://matrixrooms.info/indexing/?utm_source=twim&utm_medium=matrix&utm_campaign=federation-stats) | [How to remove your server](https://matrixrooms.info/deindexing/?utm_source=twim&utm_medium=matrix&utm_campaign=federation-stats)
## Dept of Ping
Here we reveal, rank, and applaud the homeservers with the lowest ping, as measured by [pingbot](https://github.com/maubot/echo), a [maubot](https://github.com/maubot/maubot) that you can host on your own server.
### [#ping:maunium.net](https://matrix.to/#/#ping:maunium.net)
Join [#ping:maunium.net](https://matrix.to/#/#ping:maunium.net) to experience the fun live, and to find out how to add YOUR server to the game.
|Rank|Hostname|Median MS|
|:---:|:---:|:---:|
|1|doctoruwu.uk|218|
|2|uwu.sulian.eu|241|
|3|conduwuit.aguiarvieira.pt|277|
|4|aguiarvieira.pt|279|
|5|nerdhouse.io|327|
|6|matrix.org|336.5|
|7|rom4nik.pl|411|
|8|herkinf.de|434|
|9|littlevortex.net|492|
|10|pain.agency|523.5|
### [#ping-no-synapse:maunium.net](https://matrix.to/#/#ping-no-synapse:maunium.net)
Join [#ping-no-synapse:maunium.net](https://matrix.to/#/#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|doctoruwu.uk|102|
|2|conduwuit.aguiarvieira.pt|138.5|
|3|uwu.sulian.eu|154.5|
|4|spritsail.io|169|
|5|aguiarvieira.pt|199|
|6|matrix.its-tps.fr|217|
|7|girlboss.ceo|250|
|8|transfem.dev|252|
|9|inu.is|325.5|
|10|littlevortex.net|453|
## That's all I know
See you next week, and be sure to stop by [#twim:matrix.org](https://matrix.to/#/#twim:matrix.org) with your updates!