matrix.org/content/blog/2023/01/2023-01-20-this-week-in-mat...

280 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.

+++
title = "This Week in Matrix 2023-01-20"
date = "2023-01-20T20:42:48Z"
path = "/blog/2023/01/20/this-week-in-matrix-2023-01-20"
[taxonomies]
author = ["Thib"]
category = ["This Week in Matrix"]
+++
## Matrix Live
Unfortunately no Matrix Live this week!
## Dept of Spec 📜
[Andrew Morgan (anoa)](https://matrix.to/#/@andrewm:element.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://matrix.org/docs/spec/proposals.
>
>
> ## MSC Status
>
> **New MSCs:**
> * *There were no new MSCs this week.*
>
> **MSCs in Final Comment Period:**
> * [MSC3943: Partial joins to nameless rooms should include heroes' memberships](https://github.com/matrix-org/matrix-spec-proposals/pull/3943) (merge)
>
> **Merged MSCs:**
> * *No MSCs were merged this week.*
>
> ## Spec Updates
>
> This week and the week afterwards, the Spec Core Team are mostly focused on improvements to Matrix that we'd like to show off at FOSDEM 2023 this year! That consists of MSCs related to Faster Room Joins ([MSC3943](https://github.com/matrix-org/matrix-spec-proposals/pull/3943) among others) and Extensible Events ([MSC1767](https://github.com/matrix-org/matrix-spec-proposals/pull/1767)).
>
> ## Random MSC of the Week
>
> The random MSC of the week is... [MSC3230: Spaces top level order](https://github.com/matrix-org/matrix-spec-proposals/pull/3230)!
>
> This defines an algorithm and a data structure that can be used to order one's top-level list of Spaces and have that order sync across all of their clients. Rooms and spaces within a Space continue to have their order [defined](https://spec.matrix.org/v1.5/client-server-api/#ordering-of-children-within-a-space) by an `order` key (and failing that, the `origin_server_ts` field) in the corresponding `m.space.child` event of their parent's Space's state.
>
> I won't get into the details of the algorithm here (or its criticisms), but feel free to jump into the MSC and take a look!
<!-- more -->
## Dept of Servers 🏢
### Synapse ([website](https://github.com/matrix-org/synapse/))
Synapse is a Matrix homeserver implementation developed by the matrix.org core team
[dmr](https://matrix.to/#/@dmrobertson:matrix.org) says
> This week the Synapse team has been finishing a sprint on the [faster joins](https://github.com/matrix-org/matrix-spec-proposals/pull/3902) project.
> As a reminder, this is a year-long project to make Synapse quickly join a new room by lazily loading some of its state history in the background.
> It is particularly needed when joining large rooms with lots of members: joining such rooms is bottlenecked on fetching, serialising, deserialising and validating a _huge_ list of [room member events](https://spec.matrix.org/v1.5/client-server-api/#mroommember).
> While the core logic and machinery has been in place for some time now, this sprint has concentrated on two pain points:
>
> * making faster joins to work on Synapse installations [using workers](https://matrix-org.github.io/synapse/latest/workers.html), and
> * remaining edge cases needed for a good client UX.
>
> ## Call for testers
>
> We hope to ship the first iteration of faster joins support in Synapse 1.76.0.
> The release candidate `1.76.0rc1` will be released on Tuesday 24th Jan.
> **We'd like to encourage homeserver administrators to try it out** before the release proper.
> Once you've upgraded, try joining rooms which no-one else on your server is joined to.
> We graciously welcome any bug reports---please file [GitHub issues](https://github.com/matrix-org/synapse/issues/new?assignees=&labels=&template=BUG_REPORT.yml) if you find anything out of the ordinary after joining a room.
>
> ## Synapse 1.75
>
> We released [Synapse 1.75](https://github.com/matrix-org/synapse/releases/tag/v1.75.0) (see [blog](https://matrix.org/blog/2023/01/19/synapse-1-75-released)) this week. Its highlights include:
>
> * performance fixes for [/sync](https://github.com/matrix-org/synapse/pull/14786) and [/hierarchy](https://github.com/matrix-org/synapse/pull/14263);
> * [support](https://github.com/matrix-org/synapse/pull/14750) for [RFC7636](https://datatracker.ietf.org/doc/html/rfc7636) when using OAuth 2.0 (which enables [SSO via Twitter](https://github.com/matrix-org/synapse/issues/9389)); and
> * experimental [support](https://github.com/matrix-org/synapse/issues/14714) for [MSC3391, Removing account data](https://github.com/matrix-org/matrix-spec-proposals/pull/3391);
>
> plus the usual selection of bugfixes, internal improvements and work on the faster joins project.
>
> Our continued thanks to our community of admins, testers, contributors and end-users.
### Dendrite ([website](https://github.com/matrix-org/dendrite))
Second generation Matrix homeserver
[Till](https://matrix.to/#/@s7evink:matrix.org) says
> This week we've released two versions of Dendrite, [0.11.0](https://github.com/matrix-org/dendrite/releases/tag/v0.11.0) being the most recent one, and probably most exciting one, given we now reached **100%** server-server parity to Synapse, with client-server parity at **93%**!
>
> ## [Version 0.11.0](https://github.com/matrix-org/dendrite/releases/tag/v0.11.0) today:
>
> ### Features
>
> * Added `/_dendrite/admin/purgeRoom/{roomID}` to clean up the database
> * The default room version was updated to 10 (contributed by [FSG-Cat](https://github.com/FSG-Cat))
>
> ### Fixes
>
> * The last three missing server-server Sytests - bringing us to **100%** server-server Synapse parity (**93%** for client-server) 🎉
> * An oversight in the `create-config` binary, which now correctly sets the media path if specified (contributed by [BieHDC](https://github.com/BieHDC))
> * The Helm chart now uses the `$.Chart.AppVersion` as the default image version to pull, with the possibility to override it (contributed by [genofire](https://github.com/genofire))
>
> ## [Version 0.10.9](https://github.com/matrix-org/dendrite/releases/tag/v0.10.9) on Tuesday:
>
> ### Features
>
> * Stale device lists are now cleaned up on startup, removing entries for users the server doesn't share a room with anymore
> * Dendrite now has its own Helm chart
> * Guest access is now handled correctly (disallow joins, kick guests on revocation of guest access, as well as over federation)
>
> ### Fixes
>
> * Push rules have seen several tweaks and fixes, which should, for example, fix notifications for `m.receipt`
> * Outgoing presence will now correctly be sent to newly joined hosts
> * Fixes the `/_dendrite/admin/resetPassword/{userID}` admin endpoint to use the correct variable
> * Federated backfilling for medium/large rooms has been fixed
> * `/login` causing wrong device list updates has been resolved
> * `/sync` should now return the correct room summary heroes
> * The default config options for `recaptcha_sitekey_class` and `recaptcha_form_field` are now set correctly
> * `/messages` now omits empty `state` to be more spec compliant (contributed by [handlerug](https://github.com/handlerug))
> * `/sync` has been optimised to only query state events for history visibility if they are really needed
>
>
> If you have a Dendrite homeserver, staying up-to-date is highly recommended so please upgrade when you can. Otherwise, if you want to play with Dendrite without having to set up your own infrastructure, the dendrite.matrix.org homeserver is open for registration (upon completion of a CAPTCHA, so you may need to register using Element Web).
>
> As always, please feel free to join us in [#dendrite:matrix.org](https://matrix.to/#/#dendrite:matrix.org) for related discussion.
## Dept of Bridges 🌉
### matrix-hookshot ([website](https://github.com/Half-Shot/matrix-hookshot))
A multi purpose multi platform bridge, formerly known as matrix-github
[Half-Shot](https://matrix.to/#/@Half-Shot:half-shot.uk) reports
> ### Hookshot 2.7.0
>
> Howdy! This release features one change, but an important change: We've finally fixed the poor UX around adding new connections in rooms via widgets. Up until today, the project selector input was quite poor and flaked out a lot. Missing search results, clipping dropdowns or duplicated entries were a common occurrence.
>
> The new input field features a much improved look, so now you see the project name, description and avatar when searching across GitHub, GitLab and JIRA. The search time and accuracy should be much improved too.
>
> If you've updated to the [previous releases, 2.6.0,1](https://github.com/matrix-org/matrix-hookshot/releases/tag/2.6.1), then now is a good time to do so because those releases contained a whole range of cool new stuff!
>
> Check out [2.7.0](https://github.com/matrix-org/matrix-hookshot/releases/tag/2.7.0)!
## Dept of Clients 📱
### Nheko ([website](https://nheko-reborn.github.io))
Desktop client for Matrix using Qt and C++17.
[red_sky (nheko.im)](https://matrix.to/#/@red_sky:nheko.im) announces
> Nheko has another release already. Shortly after releasing v0.11.0, we discovered a CPU utilization issue that causes nheko to use excessive CPU, even when idle. We have released v0.11.1 to address this issue and also add a failure state for pending sent messages (to help avoid them getting stuck in the queue). Packages are available at https://github.com/Nheko-Reborn/nheko/releases/tag/v0.11.1 and on flathub for the flatpak users.
### FluffyChat ([website](https://fluffychat.im))
[Krille](https://matrix.to/#/@krille:janian.de) says
> I wrote a blog article about updomcing UX changes with DM rooms in FluffyChat here: https://ko-fi.com/post/UX-in-the-matrix--How-to-handle-direct-messa-M4M6HVHU6?justpublished=true&alias=UX-in-the-matrix--How-to-handle-direct-messa-M4M6HVHU6
### Element Android ([website](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)!
[benoit](https://matrix.to/#/@benoit.marty:matrix.org) says
> We are making big progress to set up ElementX. The new architecture of the project has land to develop, and we are making the final cleanup. Next steps will be to integrate the Rust Sdk in a more professional way. For now its an AAR built manually and copied to the project. We are also writing documentation to help onboarding developers on this project!
## Dept of SDKs and Frameworks 🧰
### matrix-rust-sdk ([website](https://github.com/matrix-org/matrix-rust-sdk))
Next-gen crypto-included SDK for developing Clients, Bots and Appservices; written in Rust with bindings for Node, Swift and WASM
[ben](https://matrix.to/#/@gnunicorn:matrix.org) says
> First and foremost: [UniFFI async is all done and submitted for review](https://github.com/mozilla/uniffi-rs/pull/1409) 🎉 and first responses are pretty positive. Discussion has revealed some unlikely but possible undefined behavior that needs to be addressed and more review is needed. But overall, we are pretty confident that this will land soon. 🚀
>
> Where there is light, there is shadow: When trying to integrate the community sqlite db backend we ran into a terrible bug in the underlying library that led to eventually having to abandon that port and go with a fresh implementation based on a different library - we are confident to show something, at least for crypto-db, fairly soon. Talking about crypto, aside from a few [smaller](https://github.com/matrix-org/matrix-rust-sdk/pull/1348) [improvements](https://github.com/matrix-org/matrix-rust-sdk/pull/1365) the JS bindings on top have [gotten some typing improvements](https://github.com/matrix-org/matrix-rust-sdk/pull/1303) this week, too.
>
> [Timeline has support for state events now](https://github.com/matrix-org/matrix-rust-sdk/pull/1347), too.
>
> On Sliding sync we are looking at [stabilization (tracking issue)](https://github.com/matrix-org/matrix-rust-sdk/issues/1359) and optimizing for time-to-first-usage ahead of FOSDEM and getting a first iteration into the hands of people out there as part of Element-X. Its a painstaking process with [plenty of small fixes](https://github.com/matrix-org/matrix-rust-sdk/pull/1372) and improvements on all parts. Through that and debugging on the interaction with the higher layers we were already able to shave off 900ms at cold-start-display-time, with more to come and other fixes, like [logging improvements](https://github.com/matrix-org/matrix-rust-sdk/pull/1358), done along the way.
>
> ️👉 Wanna hack on matrix rust? Go check out our [`help wanted` tagged issues](https://github.com/matrix-org/matrix-rust-sdk/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22) and join our matrix channel at Matrix Rust SDK.
## Dept of Ops 🛠
[jaywink](https://matrix.to/#/@jaywink:federator.dev) reports
> Matrix-Alertmanager, a bot to relay Alertmanager webhooks to Matrix rooms, got some new releases recently (latest v0.7.0). Basic auth is now supported for authentication and the Docker image size has been reduced by a large factor.
>
> https://github.com/jaywink/matrix-alertmanager
## Dept of Bots 🤖
### matrixfy ([website](https://github.com/VaiTon/matrixfy))
[VaiTon](https://matrix.to/#/@vaiton:matrix.org) says
> Greetings, fellow music lovers (and matrix enjoyers)! I had a brilliant idea whilst lounging on my couch, stuffing my face with pizza, and realized that I was too darn lazy to keep opening Spotify every time I want to skip a song. And lo and behold, I discovered that there was no way to command my Spotify account from the comfort of my Matrix room. So, I decided to create a bot to do the job for me (how convenient, right?).
>
> It's currently in its alpha state, but any contributions are welcome, especially if you're a coding wizard.
>
> To use it, all you need is a bot account on your favorite homeserver and a bit of setup magic. Check out the GitHub link for more information: https://github.com/VaiTon/matrixfy
## Dept of Events and Talks 🗣️
### FOSDEM 2023 Matrix Community Meetup ([matrix room](https://matrix.to/#/#fosdem23-community-meetup:matrix.org))
[HarHarLinks](https://matrix.to/#/@kim:sosnowkadub.de) announces
> Are you as excited for FOSDEM 2023 as we are?
> Do you want even more Matrix programming? (hehe)
>
> Join us for our Matrix meetup and [BarCamp](https://en.wikipedia.org/wiki/BarCamp) at HSBXL ([how to get there](https://hsbxl.be/contact/), [how to get in](https://hsbxl.be/enter/)) on Friday (3. February) before FOSDEM starting 13:00 (1 pm) local time (CET) until the beer tasting starts in the evening.
> Thanks to our sponsors, we will have Pizza 🍕 and drinks 🍻!
>
> Find all the info [here](https://matrix.to/#/!eeSPmUJitRLAkJPaam:matrix.org/$HrWSAozbTwv_OyGdtsuGSV9gRIOkeRW9iTgQdTlvjo4?via=matrix.org&via=datanauten.de&via=sosnowkadub.de) and join [#fosdem23-community-meetup:matrix.org](https://matrix.to/#/#fosdem23-community-meetup:matrix.org) to stay updated and related discussion.
>
> See you there!
## Dept of Interesting Projects 🛰️
[bcorn](https://matrix.to/#/@bcorn:matrix.org) says
> Hello everyone! Im a CS Ph.D. student at the University of Washington. My team is studying users privacy concerns when reporting unwanted messages on encrypted messaging platforms (e.g., WhatsApp, Signal, Matrix). We have already talked with 14 E2EE users but near the end of our project, we would to understand how community moderators actually moderate their communities. You can learn more about the study here (https://homes.cs.washington.edu/~leijiew/projects/privacy-of-reporting.html). If anyone who has moderation experience is interested to participate in our one-hour online interview study, please feel free to DM me on Matrix. We can use any preferred medium you like (such as audio calls or texting).
## Dept of Guides 🧭
### A guide on double-bridging a Matrix room with Signal and Whatsapp ([website](https://liarra.github.io/signal-wa-double-bridging))
[Ninananana](https://matrix.to/#/@nina:ninasstuff.xyz) announces
> Hi everyone!
>
> Some time ago, @james:ninasstuff.xyz and I became curious about using Matrix to bring together a split group of friends, of which half was on Signal and another half on Whatsapp. We knew that double bridging a Matrix room was possible, but we couldn't find a hands-on guide to do so. Therefore, we decided to write our own :)
>
> Presenting it to you: [How to unite Signal and WhatsApp groups using Matrix](https://liarra.github.io/signal-wa-double-bridging). Hopefully some of you will find it useful!
## 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|nognu.de|342|
|2|willy.club|352|
|3|skladka.net|437.5|
|4|trygve.me|495|
|5|rimfaxe.net|545|
|6|wcore.org|578|
|7|mindlesstux.com|694|
|8|samlord.me|915|
|9|rom4nik.pl|1056|
|10|bgme.me|1172.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|dendrite.matrix.org|181|
|2|dendrite.kootstra.frl|304|
|3|dendrite.s3cr3t.me|395.5|
|4|cringe.chat|535|
|5|rustybever.be|572.5|
|6|frai.se|1353|
|7|dendrite.beckmeyer.us|1865|
|8|evilcyberhacker.net|4257|
## 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! And as always, the Matrix.org Foundation can only work with everyone playing fair game. If you can afford it, please consider [donating via donorbox](https://donorbox.org/keep-matrix-exciting) (individuals) or [becoming a member organisation of the Matrix.org Foundation](https://docs.google.com/forms/d/1PtmZp5Kqu91topgWVNDRmbstiDOZ2vYoR_zOWvidHTs) to support the core team behind Matrix.