matrix.org/content/blog/2021/11/2021-11-05-this-week-in-mat...

386 lines
24 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.

+++
title = "This Week in Matrix 2021-11-05"
date = "2021-11-05T20:02:04Z"
updated = "2021-11-05T18:48:45Z"
path = "/blog/2021/11/05/this-week-in-matrix-2021-11-05"
[taxonomies]
author = ["Thib"]
category = ["This Week in Matrix"]
[extra]
image = "https://matrix.org/blog/img/WwlZQkSdSaijgQgwmUJGaEsA.png"
+++
## Matrix Live 🎙
{{ youtube_player(video_id="8_L7jQmlIH4") }}
This week we have demos from andybalaam, showcasing high contrast in Element Web/Desktop, Bruno walking us through device dehydration in Hydrogen and Kegan giving us a glimpse of Sync v3! A lot of exciting work going on here!
## Dept of Spec 📜
[anoa](https://matrix.to/#/@andrewm:amorgan.xyz) 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/unstable/proposals.
>
>
> ## MSC Status
>
> **New MSCs:**
> * [MSC3469: HTTP Range on Content Repository](https://github.com/matrix-org/matrix-doc/pull/3469)
> * [MSC3468: MXC to Hashes](https://github.com/matrix-org/matrix-doc/pull/3468)
> * [MSC3464: Allow Users to Post on Behalf of Other Users](https://github.com/matrix-org/matrix-doc/pull/3464)
>
> **MSCs with proposed Final Comment Period:**
> * *No MSCs entered proposed FCP state this week.*
>
> **MSCs in Final Comment Period:**
> * *No MSCs are in FCP.*
>
> **Merged MSCs:**
> * [MSC2946: Spaces Summary](https://github.com/matrix-org/matrix-doc/pull/2946)
>
> ## Spec Updates
>
> The spec release mentioned last week is happening on Tuesday - look out for a long blog post explaining all the changes, and check out the [new platform](https://spec.matrix.org) (as it stands in its current, unstable state) before it goes live. Exciting stuff!
>
> ## Random Spec of the Week
>
> The random spec of the week is... [MSC3217: Soft kicks](https://github.com/matrix-org/matrix-doc/pull/3217)!
>
> Other than this sounding like something out of a workout routine, soft kicks are proposed as a hint to clients that the user has been kicked from the room, but that it was not out of moderation, but for a technical reason (the example given disconnection from an IRC network). The client can then present a different UX as opposed to a normal, "hard" kick.
>
> Give it a read and provide feedback if the topic interests you!
> ![](/blog/img/03141c819b0277ecf2fa3289702dca6a51c3cba6.png)
## Dept of Servers 🏢
### Synapse [↗](https://github.com/matrix-org/synapse/)
Synapse is the reference homeserver for Matrix
[callahad](https://matrix.to/#/@callahad:matrix.org) announces
> This week we released [Synapse 1.46](https://github.com/matrix-org/synapse/releases/tag/v1.46.0)! This release includes a fix for the [performance regression](https://github.com/matrix-org/synapse/issues/11049) from 1.44 which could cause smaller hosts to lock up when clients reconnected after some time offline.
>
> Synapse 1.46 also includes experimental support for [MSC3440: Threading via `m.thread` relation](https://github.com/matrix-org/matrix-doc/pull/3440), a big step toward threaded messaging in Matrix. It's otherwise mainly a bugfix release, as we've spent much of our time reviewing infrastructure and making plans to improve our resilience should we experience hardware failures similar to what took out matrix.org two weeks ago.
>
> We continue working toward a prototype implementation of [MSC2775: Lazy loading over federation](https://github.com/matrix-org/matrix-doc/pull/2775), starting with setting up automated infrastructure to repeatedly measure the join speeds of assorted large, public rooms. Our goal is to have a rough proof of concept for lazy room joins by the end of the year.
>
> We also released [Sydent 2.5.0](https://github.com/matrix-org/sydent/releases/tag/v2.5.0)! In addition to fixing bugs, this release passes `mypy --strict`, uses Jinja2 for templates, and supports the `room_type` field from [MSC3288](https://github.com/matrix-org/matrix-doc/pull/3288) to better differentiate between invitations to rooms and invitations to Spaces.
Threads! Awesome! And lazy loading over the federation looks really promising, I can't wait for it.
## Homeserver Deployment 📥️
### Helm Chart [↗](https://gitlab.com/ananace/charts)
Matrix Kubernetes applications packaged into helm charts
[Ananace](https://matrix.to/#/@ace:kittenface.studio) announces
> As is routine at this point; My [Helm Charts](https://gitlab.com/ananace/charts) have seen updates, with matrix-synapse bumping to 1.46.0
Keep your infra up to date, folks!
## Dept of Bridges 🌉
### mx-puppet-*
[Sorunome [m]](https://matrix.to/#/@Sorunome:matrix.org) announces
> Soru has not found any time to work on the mx-puppet-* project in _very_ long. At this point, it makes sense to look for someone / multiple people to inherit the project to. So, if you are willing to pick it up, or part of it (like a single bridge, only the library, etc.), then _please_ look by [#mx-puppet-bridge:sorunome.de](https://matrix.to/#/#mx-puppet-bridge:sorunome.de). Thanks!
It's always sad when maintainers don't have time for former projects, but you can take over!
### mautrix-whatsapp [↗](https://github.com/mautrix/whatsapp)
A Matrix-WhatsApp puppeting bridge
[tulir](https://matrix.to/#/@tulir:maunium.net) says
> mautrix-whatsapp [v0.2.0](https://github.com/mautrix/whatsapp/releases/tag/v0.2.0) was released. The main change is switching to the new WhatsApp multidevice API, which means the phone doesn't need to be connected 24/7 anymore. The release also includes a new backfilling system using [MSC2716](https://github.com/matrix-org/matrix-doc/pull/2716), and making the relaybot mode less special-cased and more like what mautrix-signal does.
### Heisenbridge [↗](https://github.com/hifi/heisenbridge/)
Heisenbridge is a bouncer-style Matrix IRC bridge.
[hifi](https://matrix.to/#/@hifi:vi.fi) reports
> Release v1.5.0 🥳
> * Allow opening multiple simultaneous connections to the same network
> * New STOP/STAHP ROOM command to end a long paste flood
> * Clear channel send queue if the user gets kicked to prevent continuing flood on rejoin
> * New KB ROOM command to do a proper kick & ban (contributed by GitHub user @blastrock, thanks!)
>
> The most useful feature this week is having the ability to open multiple connections to the same network. This can be used to plumb channels with a secondary connection while using the bridge as yourself with the main one. You can also STAHP long pastes from being actually sent out completely to a channel if you weren't careful enough on Matrix side.
>
> Upgrading from previous version to v1.5.0 will cause a small migration for every channel/pm that is open so it might take a little longer for the first startup to complete. If no multiple network connections are opened it is safe to downgrade but if someone uses the feature it will cause shenanigans for the duplicate networks in the older version.
>
> Inject your fix from [GitHub](https://github.com/hifi/heisenbridge/releases), [PyPI](https://pypi.org/project/heisenbridge/) or [matrix-docker-ansible-deploy](https://github.com/spantaleev/matrix-docker-ansible-deploy)!
>
> Thanks!
> ![](/blog/img/FQWFrNPNFXhLgThxihWmlAyQ.png)
As always, Heisenbridge being thoughtful towards our IRC peers.
## Dept of Clients 📱
### Nheko [↗](https://nheko-reborn.github.io)
Desktop client for Matrix using Qt and C++17.
[Nico](https://matrix.to/#/@deepbluev7:neko.dev) reports
> We are preparing for a release! That means, if you are translator, we could use your help to get our translations [updated](https://weblate.nheko.im/projects/nheko/nheko-master/) and if you want to have a bug fixed before release, now is the time to report it or complain about it! Please come and see us in [#nheko:nheko.im](https://matrix.to/#/#nheko:nheko.im) for complaints and questions!
>
> We saw a lot of translation updates by Linerly, Priit and Thulinma already. The click ghosting issue in the room list should be fixed as well as the crash when accepting an invite from your browser. You can now register on matrix.org again, after fighting with some... [reality deforming wording in the spec](https://github.com/matrix-org/matrix-doc/pull/3471). Notifications on macOS now use the "modern" API for notifications, including grouping notifications by room. (Expect more fancy improvements there in the future!) The warning about mentioning the whole room now vanishes properly, hiding space children from the roomlist now doesn't hide them from the space itself anymore, the loading spinner shouldn't show in a fully loaded room again, the room directory search bar is now focused by default and a few smaller fixes.
>
> We also completed the bootstrapping UI now. This means you get prompted for unverified devices, when your device isn't verified or when cross-signing isn't configured for your account yet and you are given ways to remedy that.
>
> We have a few more bug fixes we want to land before the release, so don't expect it tomorrow, but we have the featureset down now. And if you thought the changes listed in this snippet are long, wait for the full release changelog. It will probably take a few days for me to tidy that up and I think this will be our biggest release yet! Happy testing, everyone!
### Hydrogen [↗](https://github.com/vector-im/hydrogen-web)
Hydrogen is a lightweight matrix client with legacy and mobile browser support
[Bruno](https://matrix.to/#/@bwindels:matrix.org) reports
> [Device dehydration](https://github.com/uhoreg/matrix-doc/blob/dehydration/proposals/2697-device-dehydration.md) support got released this week in [0.2.20](https://github.com/vector-im/hydrogen-web/releases/tag/v0.2.20) (see matrix live demo!), allowing you to decrypt messages sent to you while not logged in on any device. Expect another release this evening (0.2.21) with support for multiple lines in the composer and some other bug fixes.
### Fractal [↗](https://gitlab.gnome.org/GNOME/fractal)
Matrix messaging app for GNOME written in Rust.
[Alexandre Franke](https://matrix.to/#/@afranke:matrix.org) says
> To adapt to changes in libadwaita, Marco Melorio [removed a deprecated class](https://gitlab.gnome.org/GNOME/fractal/-/merge_requests/864). In the meantime, enterprisey [fixed the build by updating the Matrix Rust SDK dependency](https://gitlab.gnome.org/GNOME/fractal/-/merge_requests/866) and [improved Secret Service error handling](https://gitlab.gnome.org/GNOME/fractal/-/merge_requests/844).
>
> After being away for a few month, Kévin Commaille came back with a blast. No less than three MR already, and I have a feeling hes only getting started:
>
> * [pretty printing for event source](https://gitlab.gnome.org/GNOME/fractal/-/merge_requests/869)
> * [crash prevention on login failures](https://gitlab.gnome.org/GNOME/fractal/-/merge_requests/868)
> * [several fixes for text messages](https://gitlab.gnome.org/GNOME/fractal/-/merge_requests/870)
>
> As usual, Julian reviewed and merged all the above work, and did some of his own:
>
> * [fixed a crash on room history loading](https://gitlab.gnome.org/GNOME/fractal/-/merge_requests/865)
> * [use crossigning to verify new sessions](https://gitlab.gnome.org/GNOME/fractal/-/merge_requests/854)
We'll refrain from asking when Fractal-Next is due! It's starting to take shape!
### Element [↗](https://element.io)
Everything related to Element but not strictly bound to a client
[Thib](https://matrix.to/#/@thib:ergaster.org) reports
> * Were continuing to flesh out space creation screens on iOS, improving the invite flows post creation for private and public spaces.
> * Were continuing to iterate on the overall app layout on Web, to fix fundamental usability issues.
> * Expect to see some changes on develop soon, rearranging the top left corner of the app (user avatar, space names, context menu).
> * Expect to see larger experiments landing on develop soon too. Well share more info on these when theyre live, and everything will be opt out to not break existing workflows while were testing and experimenting.
### Element Web/Desktop [↗](https://github.com/vector-im/element-web)
Secure and independent communication, connected via Matrix. Come talk with us in [#element-web:matrix.org](https://matrix.to/#/#element-web:matrix.org)!
[kittykat](https://matrix.to/#/@kittykat:matrix.org) says
> * Released Element Web 1.9.4RC
> * Community testing session ran successfully on RC with a focus on voice messages and VoIP calls. We found significantly fewer issues and regressions than in the previous sessions. It was great to see 9 newcomers - thank you to all of our testers who helped out!
> * Improved our sentry analytics data to provide more useful detail.
> * Redesigned the device management section in the user settings. The new view makes it clearer how to rename devices and lets you verify them.
> * This week in labs (features in labs can be accessed at develop.element.io and nightly desktop builds):
> * Threads now has a more polished UI and users can now link to events in a thread. Notifications for threads messages are being worked on and should land very soon.
> ![](/blog/img/WwlZQkSdSaijgQgwmUJGaEsA.png)
### Element iOS [↗](https://github.com/vector-im/element-ios)
Secure and independent communication for iOS, connected via Matrix. Come talk with us in [#element-ios:matrix.org](https://matrix.to/#/#element-ios:matrix.org)!
[Thib](https://matrix.to/#/@thib:ergaster.org) reports
> * We worked on stabilization in order to fix a couple of bugs and crashes found in last releases.
> * We started to work on poll feature.
> * We started to work on threading feature.
### Element Android [↗](https://github.com/vector-im/element-android)
Secure and independent communication for Android, connected via Matrix. Come talk with us in [#element-android:matrix.org](https://matrix.to/#/#element-android:matrix.org)!
[Thib](https://matrix.to/#/@thib:ergaster.org) says
> * Release 1.3.6 is finally live on the PlayStore! Release 1.3.7 is expected for the beginning of next week.
> * We have started to implement threading of messages.
> * Draft for voice message has been delayed, we want to ensure that its working well before releasing it.
> * We are doing lots of internal migrations: Dagger to Hild, MvRx to Mavericks2, Rx to coroutines Flow.
> * And as always, we are trying to keep the app as stable as possible, and as reliable as possible
> * Its also worth noting that the SDK 1.3.6 has some improvements in the login API, not needed for Element Android, but requested by other users of the SDK.
## Dept of SDKs and Frameworks 🧰
### Godot-Matrix
[houkime](https://matrix.to/#/@houkime:m.wfr.moe) reports
> Godot-Matrix is a C++ module for connecting to Matrix from the [Godot Game Engine](https://godotengine.org/).
> I refurbished it and the changes made it upstream now ^_^, thx vurpo! :
> https://www.matrix.org/docs/projects/sdk/godot-matrix/
>
> Changes:
> * Fixed compilation for 3.x Godot branch
> * Support plain http too for local tests with Conduit
> * Respect port numbers (as per Matrix spec)
> * Substantial rewrite of the example so it works
>
> Refurbishment made with love for the participants of [FediJam 4](https://itch.io/jam/fedijam-4), a weeklong gamedev competition with the focus on fediverse and federated multiplayer (via Matrix or any other means ^_^).
> It starts this Sunday at 18:00 UTC. [Chat](https://matrix.to/#/#fedijam:m.wfr.moe)
>
> ![](/blog/img/vfPUnqJMwGguvBRDvHJWyNVj.png)
### Matrix-Rust-SDK-Bot-Framework-Helper [↗](https://github.com/MTRNord/mrsbfh)
A toolkit for writing commandbots more efficient in rust for matrix.
[MTRNord](https://matrix.to/#/@mtrnord:nordgedanken.dev) announces
> MRSBFH is now available on crates.io.
>
> Unlike other "overlay" style crates it does not follow the sdk versions using its own version number or using features. So please make sure you use the right version of the SDK with it.
>
> Also it now has support for rusttls, the ! at the start of a command now gets correctly checked and is updated to the latest sdk.
>
> You can check it out at https://crates.io/crates/mrsbfh and https://github.com/MTRNord/mrsbfh
### Halcyon [↗](https://github.com/WesR/Halcyon)
Halcyon is an easy to use matrix library inspired by discord.py
[gen3](https://matrix.to/#/@gen3:blackline.xyz) announces
> This release brings some new non-breaking features and a small fix:
> * Added
> - on_ready, called once the bot has logged in and online
> - send_typing, allowing the bot to signal it has received your message with the client typing event
> - improved documentation (including how to set the poll interval)
> * Fixed
> - A sync failure when Homeservers sometimes reject or return a non json response
>
> More info at on the project at https://github.com/WesR/Halcyon . Come by and chat with us over in https://matrix.to/#/#halcyon:blackline.xyz
## Dept of Ops 🛠
### Mother Miounne [↗](https://gitlab.com/etke.cc/miounne)
The backoffice of etke.cc service
[Aine](https://matrix.to/#/@aine:etke.cc) announces
> Mother Miounne v2.1.0
>
> New release of the Commander of [etke.cc](https://etke.cc) backoffice is ~~coming~~ here!
> New version brings new neat features and extends arsenal of the antispam tricks:
>
> * [buymeacoffee](https://buymeacoffee.com) listings integration - pretty basic, but that's just a first step! So now you can list subscribers, supporters and extras purchases directly in matrix room (spolier: next releases will bring notifications about new subscribers, supporters and purchases)
> * rate limiter for http forms - no one can bother you if you don't want that! So now you can configure specific rate limits per form
> * enhanced email validation (mostly used in the forms module) - you had spam hosts and emails list before, but now you have MX records checks, regular expressions check and some other useful tricks to ~~hold the door~~ stop spammers
> * ... and some small changes, like doc updates and auto-shrink of long messages to fit into matrix payload limits
>
> Check out the [source code](https://gitlab.com/etke.cc/miounne), [releases](https://gitlab.com/etke.cc/miounne/-/releases), [docker images](https://gitlab.com/etke.cc/miounne/container_registry/2044748 ) and say hello in [#miounne:etke.cc](https://matrix.to/#/#miounne:etke.cc)
## Dept of Bots 🤖
### matrix-vacation-responder
[Sumner Evans](https://matrix.to/#/@sumner:nevarro.space) says
> I created a [Vacation Responder for Matrix](https://sr.ht/~sumner/matrix-vacation-responder/). While running, it responds to any DMs that come in to your account with a preset message. It can be configured to only respond once in a given period of time (defaults to 24 hours) so that the person contacting you can queue up questions for you when you return. Other ways to use the bot include responding to DMs to previously active accounts (for example if you move homeservers). Join the discussion about this bot at [#matrix-vacation-responder:nevarro.space](https://matrix.to/#/#matrix-vacation-responder:nevarro.space).
## Dept of Events and Talks 🗣️
### SeaGL (the Seattle GNU/Linux Conference)
[Salt](https://matrix.to/#/@salt:sal.td) announces
> [SeaGL (the Seattle GNU/Linux Conference)](https://seagl.org) is being held on Matrix Friday and Saturday, November 5th and 6th, from 9am-5pm Pacific Time. The conference is running on a customized version of element-web and a regional Matrix homeserver, found at https://attend.seagl.org
>
> Founded in 2013, this is the conference's ninth year overall and second virtual event. Last year, the all-volunteer team built their portal on-top of KiwiIRC and Jitsi for attendees, and BigBlueButton for speakers. This year they have been relying heavily on Spaces, Subspaces, and the built-in features that have been rapidly developing within the Matrix protocol.
>
> From their website:
> > SeaGL (the Seattle GNU/Linux Conference) is a free—as in freedom and tea—grassroots technical summit dedicated to spreading awareness and knowledge about free / libre / open source software, hardware, and culture.
> >
> > SeaGL strives to be welcoming, enjoyable, and informative for professional technologists, newcomers, enthusiasts, and all other users of free software, regardless of their background knowledge; providing a space to bridge these experiences and strengthen the free software movement through mentorship, collaboration, and community.
### FrOSCon
[Oleg](https://matrix.to/#/@oleg:fiksel.info) announces
> The recording of the talk at the FrOSCon this year (in 🇩🇪) about Opsdroid with AI/ML (Rasa NLU) 😉
> * [Video (youtube)](https://www.youtube.com/watch?v=5sGfKUURBFs)
> * [Video CCC](https://media.ccc.de/v/froscon2021-2658-matrix_-_bots)
> * [Code](https://gitlab.com/olegfiksel/matrix-bots_froscon2021)
## Dept of Guides 🧭
[Cadair](https://matrix.to/#/@cadair:cadair.com) reports
> Following a question from someone about getting started with Matrix bots, I wrote a super quick getting started guide to writing a simple bot with opsdroid. I will probably integrate this into the opsdroid docs, or somewhere more accessible in the future, but for now here it is: https://gist.github.com/Cadair/2c64cb46fdce7499ff1c0bbb116ce29e
Being an innocent child, I asked:
> are you aware of projects relying on opsdroid to make a Matrix bot? Other than half of the very famous TWIM bot 😇
[Cadair](https://matrix.to/#/@cadair:cadair.com) answered
> I have written a few (https://github.com/Cadair/skill-motw, https://github.com/Cadair/skill-intersphinx, https://github.com/Cadair/skill-jitsi) I know that Oleg has also written a number, including many which interact with homeassistant.
>
> I can also go and ask for examples in [#opsdroid-general:matrix.org](https://matrix.to/#/#opsdroid-general:matrix.org) if you like?
I didn't know what I had started! We almost became This Week in Opsdroid! Fortunately the Matrix community is very active and helped us keeping sovereignty over the blog. Phew!
There are too many to list here, but I strongly encourage you to blend in with the opsdroid community. Not only are these kind people, they are also very active and develop fancy and useful bots!
## Matrix in the News 📰
[Pascal](https://matrix.to/#/@lascapiriot:matrix.org) brought to our attention [a nice guide from the Fedora Magazine](https://fedoramagazine.org/multiple-matrix-sessions-with-element-on-fedora-linux/) on how to have multiple matrix sessions with Element on Fedora.
## 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|boba.best|529|
|2|heitkoetter.net|765|
|3|maescool.be|873|
|4|envs.net|886|
|5|aria-net.org|926|
|6|matrix.markshorten.co.uk|1201|
|7|mailstation.de|3555.5|
|8|trygve.me|3853.5|
|9|jauriarts.org|4394.5|
|10|matrix.liamgooch.com|4445|
### [#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|ma.0x.no|424|
|2|jae.su|448|
|3|weasy-is-my.name|453|
|4|dendrite.neilalexander.dev|1179|
|5|matrix.awesomesheep48.me|1318|
|6|0x1a8510f2.space|1818.5|
|7|dendrite01.fiksel.info|2218|
|8|dendrite.matrix.org|9999|
## 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!