307 lines
18 KiB
Markdown
307 lines
18 KiB
Markdown
+++
|
||
title = "This Week in Matrix 2021-09-10"
|
||
path = "/blog/2021/09/10/this-week-in-matrix-2021-09-10"
|
||
|
||
[taxonomies]
|
||
author = ["Ben Parsons"]
|
||
category = ["This Week in Matrix"]
|
||
|
||
[extra]
|
||
image = "https://matrix.org/blog/img/2021-09-10-Vd4Jl-example.png"
|
||
+++
|
||
|
||
## Matrix Live 🎙
|
||
|
||
{{ youtube_player(video_id="RO9zHeKwDXE") }}
|
||
|
||
Chatting with Manu about iOS, Mobile, team growth and more. See video description for agenda!
|
||
|
||
## Dept of *Status of Matrix* 🌡️
|
||
|
||
### Incoming security fix
|
||
|
||
[As just blogged](https://matrix.org/blog/2021/09/10/pre-disclosure-upcoming-critical-fix-for-several-popular-matrix-clients) there is an important security fix coming for several Matrix clients. More news, and patched versions will be announced on Monday. Though there is no evidence this vulnerability has been exploited, please be ready to upgrade on Monday.
|
||
|
||
## Dept of Spec 📜
|
||
|
||
### Spec
|
||
|
||
[anoa](https://matrix.to/#/@andrewm:amorgan.xyz) announced:
|
||
|
||
> 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:**
|
||
>
|
||
> * [MSC3391: Removing account data](https://github.com/matrix-org/matrix-doc/pull/3391)
|
||
> * [MSC3389: Relation redactions](https://github.com/matrix-org/matrix-doc/pull/3389)
|
||
>
|
||
> * [[WIP] MSC3386: Unified Join Rules](https://github.com/matrix-org/matrix-doc/pull/3386)
|
||
> * [[WIP] MSC3385: Bulk small improvements to room upgrades](https://github.com/matrix-org/matrix-doc/pull/3385)
|
||
>
|
||
> * [MSC3383: Include destination in X-Matrix Auth Header](https://github.com/matrix-org/matrix-doc/pull/3383)
|
||
> * [MSC3382: Inline message Attachments](https://github.com/matrix-org/matrix-doc/pull/3382)
|
||
>
|
||
> * [[WIP] MSC3381: Polls (mk II)](https://github.com/matrix-org/matrix-doc/pull/3381)
|
||
>
|
||
> **MSCs with proposed Final Comment Period:**
|
||
>
|
||
> * [MSC2946: Spaces Summary](https://github.com/matrix-org/matrix-doc/pull/2946)
|
||
> * [MSC3231: Token authenticated registration](https://github.com/matrix-org/matrix-doc/pull/3231)
|
||
>
|
||
> **MSCs in Final Comment Period:**
|
||
>
|
||
> * *No MSCs are in FCP.*
|
||
>
|
||
> **Merged MSCs:**
|
||
>
|
||
> * *No MSCs were merged this week.*
|
||
>
|
||
> #### Spec Updates
|
||
>
|
||
> **Lots** of new MSCs this week. Thanks to everyone contributing!
|
||
>
|
||
> #### Random Spec of the Week
|
||
>
|
||
> The random spec of the week is... [MSC2832: HS -> AS authorization header](https://github.com/matrix-org/matrix-doc/pull/2832)!
|
||
>
|
||
> I'm actually surprised myself that this wasn't part of the spec already! Looks like it would be a nice to-do to get this implemented and then checked off by approvers. Anyone want to submit some PRs to HS and AS implementations? 🙂
|
||
|
||
|
||
|
||
![2021-09-10-3GWdT-stacked_area_chart.png](/blog/img/2021-09-10-3GWdT-stacked_area_chart.png)
|
||
|
||
## Dept of Servers 🏢
|
||
|
||
### Dimension
|
||
|
||
[TravisR](https://github.com/turt2live) said:
|
||
|
||
> [Dimension](https://github.com/turt2live/matrix-dimension), an integration manager alternative for Element, got a refresh from @TimeWalker to bring the project up to modern day standards. Please give it a go if you've been running Dimension, and report bugs if there's problems! While I haven't personally had time to maintain it as much as I'd like, it's great to see people taking on 3 year old bad code and fixing it 😄
|
||
>
|
||
> For TWIM readers, Dimension is an "integration manager" that replaces the default one shipped with Element. It's not entirely mobile-ready yet, but does give a user interface for managing various bots, bridges, and widgets. In practice, an integration manager isn't needed as most bots and bridges (and even widgets) can be set up without an integrations manager, like all of https://t2bot.io/ (ironically, given Dimension was originally targeted at t2bot.io). People do still use it though to configure self-hosted platforms with their very own Element, Synapse, bridges, and bots.
|
||
>
|
||
> While I still probably won't have much time personally to maintain it, PRs are certainly accepted. Dimension is a bit complex to work within and test, but people in #dimension:t2bot.io should be able to help out.
|
||
|
||
### Synapse 1.42.0
|
||
|
||
[callahad](https://matrix.to/#/@callahad:matrix.org) told us:
|
||
|
||
> [Synapse 1.42.0](https://matrix.org/blog/2021/09/07/synapse-1-42-0-released) is out now! This release includes support for Room Version 9, which fixes an issue with Version 8's support for restricted rooms. We also implement a bunch of new MSCs (including [MSC3231: Token authenticated registration](https://github.com/matrix-org/matrix-doc/pull/3231) by Callum Brown as part of his Google Summer of Code project), improve efficiency, and sidestep a longstanding issue with users getting stuck in unsupported room versions. Read the announcement for details!
|
||
>
|
||
> #### Sydent
|
||
>
|
||
> This week saw the [release of Sydent 2.4](https://github.com/matrix-org/sydent/blob/v2.4.1/CHANGELOG.md) which finally implements [MSC2265: mandating case folding when processing e-mail address local parts](https://github.com/matrix-org/matrix-doc/pull/2265). After upgrading, Sydent administrators [must manually run a script](https://github.com/matrix-org/sydent/blob/v2.4.1/docs/casefold_migration.md) to retroactively case-fold existing email addresses in the Sydent database.
|
||
>
|
||
> This Sydent release also includes support for Jinja2 templating, a complete overhaul of our CI/CD pipeline, and a comprehensive update to the codebase to follow modern Python practices including the addition of mypy type hints throughout.
|
||
>
|
||
> Lastly, we'd like to welcome Shay to the Backend Team at Element. Her work as an [Outreachy](https://www.outreachy.org/) intern paved the way for the recent improvements to Sygnal and Sydent. Thanks, Shay, and welcome aboard!
|
||
|
||
## Homeserver Deployment 📥️
|
||
|
||
### Kubernetes
|
||
|
||
[Ananace](https://matrix.to/#/@ace:kittenface.studio) offered:
|
||
|
||
> And another week, another Kubernetes [Helm Chart](https://gitlab.com/ananace/charts) update, this time seeing matrix-synapse updated to 1.42.0 - as well as a whole lot of fixes to support the new ingress object version introduced in Kubernetes 1.19
|
||
|
||
## Dept of Bridges 🌉
|
||
|
||
### matrix-appservice-bridge reaches 3.0.0!
|
||
|
||
[Half-Shot](https://matrix.to/#/@Half-Shot:half-shot.uk) told us:
|
||
|
||
> Hi folks, we're massively pleased to announce the third major release of the TS/JS bridging library [matrix-appservice-bridge](https://github.com/matrix-org/matrix-appservice-bridge/releases/tag/3.0.0). This release contains several large breaking changes to the previous way of life, most notably we have stopped using the matrix-js-sdk for most of our code, instead using the matrix-bot-sdk (Hi TravisR , we see you up there!).
|
||
>
|
||
> There are several reasons why we went this way:
|
||
>
|
||
> * Notably, this library focuses work on simply implementing APIs and bridge/bot logic. There is no additional cruft to support client use-cases or browsers.
|
||
>
|
||
> * It's historically had a brilliant coverage of the CS and AS APIs, and has been extremely flexible to add new stable and unstable APIs to it.
|
||
> * At the start of this project, it was the only library with a complete Typescript coverage. Typescript types continue to be extremely useful to us.
|
||
>
|
||
> * We're hoping to make use of the upcoming encrypted appservices support, to replace the slightly janky pantalaimon support the bridge library currently uses.
|
||
>
|
||
> Thanks to Travis and the matrix.org bridge team for working through these changes!
|
||
>
|
||
> There are a bunch of common sense improvements that break API compatibility in this release also, so please be sure to check them out and update. We don't anticipate supporting 2.X except for extreme circumstances.
|
||
>
|
||
> Finally, we'll be updating the matrix-org suite of bridges over the coming weeks so please watch for bugs and let us know how we're doing!
|
||
|
||
## Dept of Clients 📱
|
||
|
||
### SchildiChat for Android
|
||
|
||
[SpiritCroc](https://matrix.to/#/@spiritcroc:spiritcroc.de) announced:
|
||
|
||
> [SchildiChat](https://schildi.chat/) is a fork of Element that focuses on UI changes such as message bubbles and a unified chat list for both direct messages and groups, which is a more familiar approach to users of other popular instant messengers.
|
||
>
|
||
> After a couple of weeks/months of internal testing and public beta testing, the latest stable version (1.2.0.sc42) now supports [UnifiedPush](https://unifiedpush.org/)!
|
||
>
|
||
> This means that you can now choose your own push provider, if you do not want to use Google's FCM push notifications.
|
||
> Huge thanks to [@sim_g:matrix.org](https://matrix.to/#/@sim_g:matrix.org) for working on this!
|
||
|
||
### Nheko
|
||
|
||
[Nheko](https://github.com/Nheko-Reborn/nheko) is a desktop client using Qt and C++17. It supports E2EE and intends to be full featured and nice to look at
|
||
|
||
[Nico (@deepbluev7:neko.dev)](https://matrix.to/#/@deepbluev7:neko.dev) said:
|
||
|
||
> You might remember my short story from last TWIM about the race between different translators? Seems like that one was good enough to motivate a few people to contribute translations. While those don't seem to be 100% complete yet, we saw a significant jump in translation percentages (especially Portuguese), so thank you to everyone who contributed to that!
|
||
>
|
||
> Thulinma also made the whole userprofile scrollable, which improves the experience on small screens a lot. He also implemented message deduplication by event id, which is required by the spec to be done on the client side. This fixes a lot of duplicates when using conduit and your join event appearing 2~3 times on synapse.
|
||
>
|
||
> We also fixed an issue with how different homeservers update one time key counts and added some additional code to remove old one time keys, if we ever uploaded to many (which might have happened in the past in a few edge cases). We also now escape img tags in usernames correctly in more places, redundant date separators when paginating back in a room should not appear anymore and tastytea decreased the margins on blockquotes, so that they look less jarring and take up less space.
|
||
|
||
### Fractal
|
||
|
||
[Alexandre Franke](https://matrix.to/#/@afranke:matrix.org) announced:
|
||
|
||
> So many merged requests have been merged since [our previous update two weeks ago](https://matrix.org/blog/2021/08/27/this-week-in-matrix-2021-08-27#fractal) that I can’t even 😲.
|
||
>
|
||
> The biggest news is that **[multi-account support landed in fractal-next](https://gitlab.gnome.org/GNOME/fractal/-/merge_requests/774)** (don’t be fooled by the title of the MR, it’s more than just a widget!). I feel like this is one of the most requested features across all clients, yet not many have it yet, and I’m ecstatic that we’re joining them 🎉. This work was done as part of GSoC by Alejandro under the mentorship of Julian 👏.
|
||
|
||
![2021-09-10-oMAP5-image.png](/blog/img/2021-09-10-oMAP5-image.png)
|
||
|
||
> Kai made it so that [rooms are sorted by activity](https://gitlab.gnome.org/GNOME/fractal/-/merge_requests/810) in fractal-next, like they already are in stable ✔️. He also [fixed module inception](https://gitlab.gnome.org/GNOME/fractal/-/merge_requests/823), for better code quality 🐛.
|
||
>
|
||
> Julian landed a whole bunch of changes ❗️ He added [scrolling and a scroll to bottom button](https://gitlab.gnome.org/GNOME/fractal/-/merge_requests/825), [fixed keyboard shortcuts](https://gitlab.gnome.org/GNOME/fractal/-/merge_requests/831) and [a wrapping issue with long “words” that caused the timeline to jump to a wider size](https://gitlab.gnome.org/GNOME/fractal/-/merge_requests/829). But all this pales in comparison to [loading previous events](https://gitlab.gnome.org/GNOME/fractal/-/merge_requests/826) 🤯
|
||
|
||
### Element Clients
|
||
|
||
Updates from the teams.
|
||
|
||
**Delight team**
|
||
|
||
|
||
|
||
* Testing and polishing of Spaces.
|
||
* Room version 9 will be marked as the preferred version for [MSC3083 restricted rooms](https://github.com/matrix-org/matrix-doc/pull/3083) on matrix.org and released in Synapse 1.43.
|
||
|
||
**Web**
|
||
|
||
|
||
|
||
* Released Element Web 1.8.3 RC2.
|
||
* Pushing forward with threads, improving on our Labs prototype. We’re exploring what backend and spec changes we will need to support threads robustly.
|
||
* Cross-signing bug fixes.
|
||
|
||
**iOS**
|
||
|
||
|
||
|
||
* 1.5.3 is available on TestFlight. It will be released on Monday with:
|
||
* Startup optimisation. The duration is divided by 3 or 4
|
||
* Media size selection on sending: the option must be enabled from settings
|
||
* URL preview under a LABS setting
|
||
* We made good progress on SwiftUI screen templates. We will be able to use them soon for real views or screens
|
||
* Better app navigation is still in progress
|
||
|
||
![2021-09-10-P1Hi4-ima_cfb17e8.png](/blog/img/2021-09-10-P1Hi4-ima_cfb17e8.png)
|
||
|
||
**Android**
|
||
|
||
|
||
|
||
* **The Matrix Android SDK2 is now available on MavenCentral!**
|
||
* Please upgrade your dependency to this library from ‘com.github.matrix-org:matrix-android-sdk2:v1.1.5’ to 'org.matrix.android:matrix-android-sdk2:1.2.1'. New badges has been added in the Readme of [https://github.com/matrix-org/matrix-android-sdk2](https://github.com/matrix-org/matrix-android-sdk2) and the sample ([https://github.com/matrix-org/matrix-android-sdk2-sample](https://github.com/matrix-org/matrix-android-sdk2-sample)) has been updated to use this new dependency.
|
||
* Element Android 1.2.1 has been release to the beta channel of the PlayStore and should be push on production on next Monday. It includes improvement for the Spaces (still in beta) and improvement for the VoIP. Full changelog can be found here: [https://github.com/vector-im/element-android/releases/tag/v1.2.1](https://github.com/vector-im/element-android/releases/tag/v1.2.1)
|
||
|
||
## Dept of SDKs and Frameworks 🧰
|
||
|
||
### matrix-bot-sdk
|
||
|
||
[TravisR](https://github.com/turt2live) offered:
|
||
|
||
> v0.6.0-beta.2 has been published of [matrix-bot-sdk](https://github.com/turt2live/matrix-bot-sdk) as an early version to support encryption on bots and improvements to appservices. It's a bit self-directed to figure out how it works, but [#matrix-bot-sdk:t2bot.io](https://matrix.to/#/#matrix-bot-sdk:t2bot.io) is available to try and help out.
|
||
>
|
||
> Please give it a go and report bugs. The final v0.6.0 release is expected to contain not only encryption support for bots, but also appservices and real documentation. For now though, it's just the bots.
|
||
|
||
### MRSBFH - Matrix-Rust-SDK-Bot-Framework-Helper
|
||
|
||
[MTRNord](https://matrix.to/#/@mtrnord:nordgedanken.dev) announced:
|
||
|
||
> After 6 Months I finally got a use for this again so I finally did update this.
|
||
>
|
||
> Basically everything as before but now including recent tokio, recent (stable) matrix-rust-sdk and rust edition 2021.
|
||
>
|
||
> Source as before over at https://github.com/MTRNord/mrsbfh
|
||
|
||
## Dept of Bots 🤖
|
||
|
||
### Mother Miounne v1.0.0 is here
|
||
|
||
[Aine](https://matrix.to/#/@aine:etke.cc) said:
|
||
|
||
> Miounne? What is it?
|
||
>
|
||
> It's an "automation backend" bot of [etke.cc](https://etke.cc) and has following features:
|
||
>
|
||
> * send html forms from your website directly to matrix
|
||
>
|
||
> * manage matrix-registration invite tokens in matrix chat
|
||
>
|
||
> Miounne hits first stable release. I already shared some info about it here some time ago... but now it's stable! [Source code](https://gitlab.com/etke.cc/miounne) has 83+% of unit tests coverage and some bizarre bug have been fixed.
|
||
>
|
||
> Besides, now you can use pinned version of the bot ([docker registry](https://gitlab.com/etke.cc/miounne/container_registry/2044748))
|
||
>
|
||
> PS: we have [#miounne:etke.cc](https://matrix.to/#/#miounne:etke.cc) room to discuss (whine) and post updates about it
|
||
|
||
## Dept of Interesting Projects 🛰️
|
||
|
||
### Patience
|
||
|
||
[Ryan](https://matrix.to/#/@jryans:matrix.org) announced:
|
||
|
||
> [Patience](https://github.com/matrix-org/patience), a full stack integration testing approach for Matrix clients and servers, has added initial support for Hydrogen this week. As it already supported Element Web, we now have a (basic) system for testing multiple clients together which is taking shape! 🥳 From here, we plan to add configuration options to express the permutations of clients you want to test together.
|
||
>
|
||
> This project is still in its early stages, but we hope to eventually have support for many different clients and then use it to test common flows like user verification, which can differ quite a lot across clients. If you're interested in this topic, feel free to join the new [#matrix-patience:matrix.org](https://matrix.to/#/#matrix-patience:matrix.org) room.
|
||
|
||
![2021-09-10-Vd4Jl-example.png](/blog/img/2021-09-10-Vd4Jl-example.png)
|
||
|
||
## Final Thoughts 💭
|
||
|
||
Someone has been making Matrix fanfic! I'm not sure how federation ties in, and for some reason they feature [rubber duck debugging](https://en.wikipedia.org/wiki/Rubber_duck_debugging) at one point but otherwise it looks fun :) https://www.youtube.com/watch?v=9ix7TUGVYIo
|
||
|
||
## 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|envs.net|470.5|
|
||
|2|trolla.us|597|
|
||
|3|boba.best|612.5|
|
||
|4|helderferreira.io|878|
|
||
|5|stewart.zone|1001|
|
||
|6|xerbo.net|1344|
|
||
|7|dolphincastle.com|1575|
|
||
|8|matrix.org|1899|
|
||
|9|spooks.cyou|1987.5|
|
||
|10|nheko.im|2050|
|
||
|
||
### [#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|tomsmeding.com|208|
|
||
|2|weasy-is-my.name|278.5|
|
||
|3|dendrite.nordgedanken.dev|294|
|
||
|4|sspaeth.de|296|
|
||
|5|vtilburg.net|559|
|
||
|6|jae.su|569|
|
||
|7|mtr.ceph3.us|957.5|
|
||
|8|caughtquick.tech|1120|
|
||
|
||
## That's all I know 🏁
|
||
|
||
See you next week, and be sure to stop by [#twim:matrix.org] with your updates!
|
||
|
||
[#TWIM:matrix.org]: https://matrix.to/#/#TWIM:matrix.org
|