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

296 lines
18 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

+++
date = "2024-07-05T19:30:00Z"
title = "This Week in Matrix 2024-07-05"
path = "/blog/2024/07/05/this-week-in-matrix-2024-07-05"
[taxonomies]
author = ["Thib"]
category = ["This Week in Matrix"]
+++
## Matrix Live
{{ youtube_player(video_id="SlXwdtVdQUA") }}
## Dept of *Status of Matrix* 🌡️
[Thib (m.org)](https://matrix.to/#/@thibaultmartin:matrix.org) announces
> The enthusiasm around [The Matrix Conference](https://2024.matrix.org) is simply mind-boggling! In less than 2 weeks, the project leads of state-sponsored deployments, key digital rights activists and the Matrix community at large sent us more than 60 high-quality proposals 🤯
>
> We're really excited to help the key players in the ecosystem meet in Berlin, and I can't wait to see the fantastic talks people are working on. While the team works on producing a proper schedule for it, organisations that want to increase their brand awareness in the Matrix Ecosystem can still [sponsor the conference](https://2024.matrix.org/sponsor/). Let your marketing department know, pass them [our sponsorship brochure](https://2024.matrix.org/documents/matrix-conference-sponsors-deck-20240614.pdf)!
<!-- more -->
## Dept of Spec 📜
[Andrew Morgan (anoa) {he/him}](https://matrix.to/#/@andrewm:element.io) reports
> 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:**
>
> * [MSC4162: One-Time Key Reset Endpoint](https://github.com/matrix-org/matrix-spec-proposals/pull/4162)
>
> **MSCs in Final Comment Period:**
>
> * [MSC4159: Remove the deprecated name attribute on HTML anchor elements](https://github.com/matrix-org/matrix-spec-proposals/pull/4159) (merge)
>
> **Accepted MSCs:**
>
> * *No MSCs were accepted this week.*
>
> **Closed MSCs:**
>
> * *No MSCs were closed/rejected this week.*
>
> ### Spec Updates
>
> Below are the MSCs which were on Tuesday's pings, and their current status:
>
> * [MSC4148: Permitting HTTP(S) URLs for SSO IdP icons](https://github.com/matrix-org/matrix-spec-proposals/pull/4148)
> * The MSC currently has some [unresolved concerns](https://github.com/matrix-org/matrix-spec-proposals/pull/4148#issuecomment-2160579725).
> * SCT: Needs 1 checkmark. Started the week with needing 1.
> * [MSC4159: Remove deprecated name from anchors](https://github.com/matrix-org/matrix-spec-proposals/pull/4159)
> * Entered final comment period this week 🎉
> * [MSC1840: Typed rooms](https://github.com/matrix-org/matrix-spec-proposals/pull/1840) (disposition: **close**)
> * Waiting on SCT review, or author closing themselves.
> * SCT: Needs 2 checkmarks. Started the week needing 3.
> * [MSC3572: Relation aggregation cleanup](https://github.com/matrix-org/matrix-spec-proposals/pull/3572) (disposition: **close**)
> * Waiting on SCT review.
> * SCT: Needs 3 checkmarks. Started the week needing 6.
>
> ### Random MSC of the Week
>
> The random MSC of the week is... [MSC1607: Proposal for room alias grammar](https://github.com/matrix-org/matrix-spec-proposals/pull/1607)!
>
> An effort to specify what characters are and aren't allowed in room aliases. Written before the current spec process (and in RST!). If you're interested in having the identifiers in Matrix be more formal, perhaps consider giving this MSC a poke?
## Dept of Servers 🏢
### Synapse ([website](https://github.com/element-hq/synapse/))
Synapse is a Matrix homeserver implementation developed by Element
[Devon Dmytro](https://matrix.to/#/@devonh:one.ems.host) announces
> This week [Synapse v1.110.0](https://github.com/element-hq/synapse/releases/tag/v1.110.0) was released.
> With it came more work towards native sliding sync support ([#17187](https://github.com/element-hq/synapse/issues/17187), [#17301](https://github.com/element-hq/synapse/issues/17301)), experimental support for [account suspension](https://github.com/element-hq/synapse/issues/17255), support for the unstable [MSC4151](https://github.com/matrix-org/matrix-spec-proposals/pull/4151) report room API ([#17270](https://github.com/element-hq/synapse/issues/17270), [#17296](https://github.com/element-hq/synapse/issues/17296)), and a whole lot more!
>
> Thank you to all our contributors and those who test our release candidates! 🙂
### conduwuit ([website](https://conduwuit.puppyirl.gay))
conduwuit is a very cool, featureful, well-maintained fork of Conduit
> *[**Release 0.4.4**](https://github.com/girlbossceo/conduwuit/releases/tag/v0.4.4)*
>
> Hi everyone! It's been a while since a conduwuit TWIM post and some releases since then. Today 0.4.4 was released, but there have been some cool features in some earlier releases.
>
> The most notable one is conduwuit's introduction of both a CLI console, and a publicly usable prefixed/escaped admin command interface. The [v0.4.3 release page](https://github.com/girlbossceo/conduwuit/releases/tag/v0.4.3) has detailed information and screenshots with it all.
>
> Public escaped admin commands allow any server admin to run in any public unencrypted room admin commands and return their outputs. The most common usages currently are server moderation, pinging servers, echoing text, restarting your server, and displaying your uptime, but any admin command can be ran. The amount of admin commands that have potential to use this are being expanded.
>
> The addition of a console interface allows administration of conduwuit from a CLI context, being able to run admin commands and receive their outputs even in colour and highlighting. This stemmed from a developer need of testing net-new admin commands faster without a client, but has plenty of valid uses for normal users too, including potential automation or remote administration without interacting with the Matrix API and your admin room.
>
> conduwuit 0.4.4 has also significantly improved performance, noticeably in the form of ping times, and likely various other user-facing features. Some long-standing user-facing database bugs were also fixed that resolved some client issues.
>
> [**GitHub Releases**](https://github.com/girlbossceo/conduwuit/releases) | [**Docker Hub**](https://hub.docker.com/repository/docker/girlbossceo/conduwuit/general) | [**NixOS**](https://conduwuit.puppyirl.gay/deploying/nixos.html)
>
> [Liberapay](https://liberapay.com/girlbossceo/) | [GitHub Sponsors](https://github.com/sponsors/girlbossceo) | [Ko-fi](https://ko-fi.com/puppygock)
>
> Chat with us in [#conduwuit:puppygock.gay](https://matrix.to/#/#conduwuit:puppygock.gay)
## Dept of Clients 📱
### chooj
[Farooq [MR. Potato]](https://matrix.to/#/@farooqkz:mozilla.org) announces
> After several weeks of no update, there are some good ones in chooj, the Matrix client for KaiOS. The most important new feature is that you can now send Pictures in chooj. Other attachments types such as Videos and Files are in TODO list. There are other smaller changes on the way, too. Like setting display name and avatar, push notifications and some others. More importantly, chooj is finally in the verge of getting published to KaiStore. KaiStore requires integrating KaiAds, so if there are many users, there will be a source of revenue for the project to live on. However, chooj won't show ads if users don't want to see them. If you are interested in helping with the KaiStore publishing and have a device with KaiStore installed, you can send your IMEI to Farooq to add your device to testlist. chooj will still be available for sideloading from BananaHackers store for those who prefer a no ad privacy focused version. At the end, don't forget to join [#chooj:mozilla.org](https://matrix.to/#/#chooj:mozilla.org)
### Kazv ([website](https://kazv.chat/))
kazv is a convergent matrix client and instant messaging app.
[tusooa](https://matrix.to/#/@tusooa:tusooa.xyz) says
> [kazv 0.4.0](https://kazv.chat/en/release-notes/kazv/v0.4.0/) features a lot of updates and bugfixes. The main highlights are supporting mention completions, [user-given nicknames](https://iron.lily-is.land/T77) ([MSC3865](https://github.com/matrix-org/matrix-spec-proposals/pull/3865)), and supporting Qt6 and KF6. This also means that we can again build on Windows. After v0.4.0, support for Qt5 and KF5 will be dropped. See the release notes page for a video showing the autocompletion feature.
### Fractal ([website](https://gitlab.gnome.org/GNOME/fractal))
Matrix messaging app for GNOME written in Rust.
[Kévin Commaille](https://matrix.to/#/@zecakeh:tedomum.net) reports
> Its been all over the news, so you probably already have heard about whats happening in France, but in case you havent yet: a new Fractal beta just dropped!
>
> What have we been up to for Fractal 8.beta?
>
> * Mentions are sent intentionally
> * Authenticated media are supported
> * Draft messages are kept per-room
> * The verification and account recovery processes have been polished
> * HTML rendering should be more robust, as we switched to the same library already used by the Rust SDK to cleanup tags in messages
> * Speaking of HTML rendering, code blocks gained syntax highlighting, lists can be nested, numbered lists can start from an arbitrary number, the details tag is supported, and @room mentions are detected and rendered with a pill
>
> 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](https://gitlab.gnome.org/World/fractal#installation-instructions).
>
> 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!
>
> As always, you can try to fix one of our [issues](https://gitlab.gnome.org/World/fractal/-/issues). Any help is greatly appreciated!
>
> ![](/blog/img/3cddb8d8968e7087f98106b6d764291ea15bf9e81808588065434763264.png)
### 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+.
[Doug](https://matrix.to/#/@douge:matrix.org) announces
> * Version 1.6.13 is available on TestFlight, it adds:
> * Support for editing local echoes.
> * Support for discovering an Element Call widget URL.
> * The composer remembers your current message after choosing to edit a different one.
> * All calls should now be donated to the phones call list.
> * The timeline will potentially be quicker in rooms you open and close a lot.
> * Weve also been working on Authenticated Media support in Element iOS.
### Element X Android ([website](https://github.com/vector-im/element-x-android))
Android Matrix messenger application using the Matrix Rust SDK and Jetpack Compose.
[benoit](https://matrix.to/#/@benoit.marty:matrix.org) says
> * EX Android v0.4.16 is in review by the Play Store! You can take a look at the changes [here](https://github.com/element-hq/element-x-android/releases/tag/v0.4.16):
> * New draft support, no more lost not sent message
> * New Avatar rendering for DM detail page
> * Element Call now following application theme and locale.
> * And many bug fixes
## Dept of SDKs and Frameworks 🧰
### Trixnity ([website](https://gitlab.com/trixnity/trixnity))
Multiplatform Kotlin SDK for developing Clients, Bots, Appservices and Servers
[Benedict](https://matrix.to/#/@benedict:imbitbu.de) says
> I upgrade Trixnity to Kotlin 2.0 this week and added Kotlin Multiplatform support for the Room database.
### Matrix Dart SDK ([website](https://github.com/famedly/matrix-dart-sdk))
Matrix SDK written in pure Dart.
[td](https://matrix.to/#/@td:technodisaster.com) announces
> meep quick update, matrix 0.30.0 released since the last post, here's a summary:
>
> #### v0.30.0
>
>
> ##### General
>
> We made quite a few fixes on how last events are stored (these are the last visible events you can quickly see in your rooms list).
>
> * Room last events now automatically update if a UTD message is successfully decrypted later.
> * They now also correctly show a redacted state if their parent event (`relationship_id`) was redacted.
> * In the earlier versions we tried to consolidate our network exceptions under one`MatrixConnectionException` type. Unfortunately this did not work out and we have removed it now to avoid confusion.
> * Support for JWT authentication. (thanks to: Ray Wang)
> * Not uploaded inbound sessions are stored separately now to optimize loading inbound group sessions on client startup. In practice this improves the SDK performance significantly.
> * We also deperacated a few streams such as `onAccountData`, `onGroupMember`, `room.onUpdate` in favor of the more powerful `client.onSync` stream.
>
> ##### Security
>
> * The `getDownloadLink` did not validate non-mxc links properly which could lead to IP leaks.
> * Some state events could be reapplied when fetching history. This would result in some fun/nasty errors like losing your powerlevels or having an older powerlevels version. This applies to all room state events so if your clients face something related a clearCache should fix it. In the future we will try to implement something in the SDK which handles this clearCache part by itself.
>
> ##### MatrixRTC
>
> * We now expose a `matrixRTCEventStream` stream which you can listen to for events. For now these include events related to participant changes. Expect this to be a breaking API as we add more to it in the near future.
> * You can now pre-share your encryption keys for a group call, f.ex you can do this on your group call onboarding page which improves UX.
> * Fixed our ICE restart mechanism, this massively improves connection results for 1:1 and mesh calls.
>
> That's it for now, until next time! bye byee 👋
### Libkazv ([website](https://iron.lily-is.land/diffusion/L/))
libkazv is a matrix client sdk built upon lager and the value-oriented design it enables.
[tusooa](https://matrix.to/#/@tusooa:tusooa.xyz) announces
> [libkazv 0.6.0](https://kazv.chat/en/release-notes/libkazv/v0.6.0/) features many optimizations and fixes. First of all, the handling of room events not yet decrypted are optimized so that the session ids of undecrypted events in a room are collected in a map, and the session id will be first checked for existence before trying to decrypt. This drastically decreases the time needed for one tick of the main event loop that involves decryption, from about 1s to almost instantaneous, which means you now get notifications for new messages in almost no time. See more details in [this diff](https://iron.lily-is.land/D71). We now also conform to the spec by not validating the sender key and sender device id in MegOlm-encrypted messages (they are still validated in Olm messages). This corrects the behaviour when we see an encrypted message of which the sender's device is removed or just not there at all (for example, this may happen for bridges). Lastly, there are improvements in test coverage, from 71% to 74%.
## Dept of Events and Talks 🗣️
### Matrix Events
[MTRNord (they/them)](https://matrix.to/#/@mtrnord:midnightthoughts.space) announces
> A list of Matrix Events!
>
> For a long time (and still) I struggled to figure out where which matrix related events happen. TWIM has a category for this, but events quickly disappear and can't be added via ical to my calendar. Therefor, I decided to start a list similar to what <https://foss.events> provides for the wider foss world.
>
> You can find it at <https://matrix-protocol.events>
> Additionally, there is an ical endpoint available at <https://matrix-protocol.events/calendar> and a json endpoint at <https://matrix-protocol.events/events.json> - Take a look at the About page for the details around the licenses involved.
>
> Feel free to reach out to report bugs or wishes or add (your) events to the list by contributing at <https://codeberg.org/matrix-events/matrix-protocol.events>
>
> Matrix Room: [#matrix-protocol-events:midnightthoughts.space](https://matrix.to/#/#matrix-protocol-events:midnightthoughts.space)
## 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, `9587` Matrix federateable servers have been discovered by matrixrooms.info, `2936` (`30.6%`) of them are publishing their rooms directory over federation.
> The published directories contain `161187` 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.
|Rank|Hostname|Median MS|
|:---:|:---:|:---:|
|1|doctoruwu.uk|227|
|2|girlboss.ceo|242|
|3|conduwu.it|277|
|4|awawawawawawawawawawawawawawawawawawawawawawawawawawawawawawaw.gay|292|
|5|uwu.sulian.eu|341|
|6|craftingcomrades.net|361|
|7|matrix.org|412|
|8|plocki.org|505|
|9|fs.tum.de|515|
|10|transfem.dev|797.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|conduwu.it|101|
|2|doctoruwu.uk|103|
|3|girlboss.ceo|113.5|
|4|uwu.sulian.eu|123.5|
|5|awawawawawawawawawawawawawawawawawawawawawawawawawawawawawawaw.gay|145.5|
|6|matrix.its-tps.fr|256|
|7|spritsail.io|269.5|
|8|inu.is|309|
|9|transfem.dev|399.5|
|10|puppygock.gay|497.5|
## 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!