matrix.org/content/blog/2020/10/2020-10-30-this-week-in-mat...

413 lines
21 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 2020-10-30"
path = "/blog/2020/10/30/this-week-in-matrix-2020-10-30"
[taxonomies]
author = ["Ben Parsons"]
category = ["This Week in Matrix"]
[extra]
image = "https://matrix.org/blog/img/2020-10-30-ml.png"
+++
## Matrix Live 🎙
{{ youtube_player(video_id="42Q-zUfvv04") }}
> sometimes you'll come across us at FOSDEM and we'll say "oh it's the future", and we're trying to make this an actual thing
\- Half-Shot on getting from sci-fi to reality
## Dept of Spec 📜
### Spec
[anoa](https://matrix.to/#/@andrewm:amorgan.xyz) told us:
> 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
>
> **Closed MSCs:**
>
> * [\[WIPish\] MSC1777: peeking over federation (via server pseudousers)](https://github.com/matrix-org/matrix-doc/pull/1777)
> * Obsoleted in favour of [MSC2444](https://github.com/matrix-org/matrix-doc/pull/2444)
>
> **Merged MSCs:**
>
> * [MSC2758: Proposal for a common identifier grammar](https://github.com/matrix-org/matrix-doc/pull/2758)
>
> **MSCs in Final Comment Period:**
>
> * _No MSCs are in FCP._
>
> **New MSCs:**
>
> * [MSC2839: Dynamic User-Interactive Authentication](https://github.com/matrix-org/matrix-doc/pull/2839)
> * [MSC2836: Threading](https://github.com/matrix-org/matrix-doc/pull/2836)
>
> * [MSC2835: Add UIA to the /login endpoint](https://github.com/matrix-org/matrix-doc/pull/2835)
> * [MSC2834: Media IDs as hashes](https://github.com/matrix-org/matrix-doc/pull/2834)
>
> * [MSC2832: HS -> AS authorization header](https://github.com/matrix-org/matrix-doc/pull/2832)
>
> Also heads up, the nomenclature for Communities v2 (groups-as-rooms) is now Matrix Spaces! Check out [MSC1772](https://github.com/matrix-org/matrix-doc/pull/1772) for the details!
>
> #### Spec Core Team
>
> In terms of Spec Core Team MSC focus for this week, we're continuing with the widget theme: [MSC2774](https://github.com/matrix-org/matrix-doc/pull/2774) (widget URL template param), [MSC2765](https://github.com/matrix-org/matrix-doc/pull/2765) (widget avatars), and [MSC2790](https://github.com/matrix-org/matrix-doc/pull/2790) (modal widgets).
![2020-10-30-3sOdI-stacked_area_chart.png](/blog/img/2020-10-30-3sOdI-stacked_area_chart.png)
#### New spec platform
[wbamberg](https://matrix.to/#/@wbamberg:matrix.org) told us:
> Updates on the new spec platform: we can render HTTP APIs (https://adoring-einstein-5ea514.netlify.app/spec/client-server/#login) and events (https://adoring-einstein-5ea514.netlify.app/spec/client-server/#room-events).
## Dept of *Built on Matrix* 🏗️
### Chupacabra Social
[patrick](https://matrix.to/#/@patrick:tincan.community) told us:
> From the creators of Noteworthy, introducing **Chupacabra**, a Matrix powered content sharing and discussion layer.
>
> Video demo: <https://youtu.be/hAouGTL7XAQ>
>
> Github: <https://github.com/decentralabs/chupacabra>
>
> Join us in [#chupacabra:chupa.social](https://matrix.to/#/#chupacabra:chupa.social) to learn more.
## Dept of Servers 🏢
### Conduit
Conduit is a Matrix homeserver written in Rust <https://conduit.rs>
[Timo](https://matrix.to/#/@timo:conduit.rs) announced:
> Hello everyone, I have some amazing news to share with you! While Conduit is getting better at federating, Famedly (https://famedly.com) has agreed to support me working on Conduit financially. With this news come some organizational changes:
>
> Conduit development now happens at <https://gitlab.com/famedly/conduit>, please submit new issues and pull requests over there. I will update all links in the coming days.
>
> Note: Famedly does not own the project and Conduit will stay free and open source forever!
### matrix-media-repo
[matrix-media-repo](https://github.com/turt2live/matrix-media-repo) is a highly customizable multi-domain media repository for Matrix
[TravisR](https://github.com/turt2live) announced:
> [v1.2.1](https://github.com/turt2live/matrix-media-repo/releases/tag/v1.2.1) of matrix-media-repo, a third-party media repo for large homeservers, is out now. It's primarily a maintenance update though also has support for audio files if for some reason you need that.
![2020-10-30-e_ntN-image.png](/blog/img/2020-10-30-e_ntN-image.png)
### Synapse
[callahad](https://matrix.to/#/@callahad:matrix.org) said:
> [Synapse 1.22.0](https://github.com/matrix-org/synapse/releases/tag/v1.22.0) is out! We announced its first release candidate [last week](https://matrix.org/blog/2020/10/23/this-week-in-matrix-2020-10-23#synapse), and after a [small rc2](https://github.com/matrix-org/synapse/releases/tag/v1.22.0rc2) the [final release](https://github.com/matrix-org/synapse/releases/tag/v1.22.0) was published last Tuesday. We anticipate a small 1.22.1 release later today with fixes for messages not always being sent to app services ([#8673](https://github.com/matrix-org/synapse/issues/8673)) and serialization errors with third-party event rules ([#8678](https://github.com/matrix-org/synapse/pull/8678)).
>
> We continue to see improved client join [Apdex](https://en.wikipedia.org/wiki/Apdex) scores for matrix.org, indicating that our work in 1.22.0 to split background tasks into separate workers and allow for sharded event persisters successfully improved the user-visible performance of large homeservers.
>
> In other news, we pushed [a temporary hotfix](https://github.com/matrix-org/synapse/pull/8675) to the matrix.org homeserver earlier this week, instructing it to drop all cross-user `m.key_share_request` messages. This was necessary to mitigate [a bug](https://github.com/famedly/matrix-dart-sdk/-/issues/126) in a third-party library which caused some clients to flood the server with requests. We'll re-enable these messages once we resolve [issue #8677](https://github.com/matrix-org/synapse/issues/8677). In the meantime, we strongly encourage [FluffyChat](https://fluffychat.im/) users to upgrade to version 0.21.1.
>
> We're hard at work on the next release of Synapse, and the development branch [already includes](https://github.com/matrix-org/synapse/compare/v1.22.0...develop) many bugfixes, several new admin APIs, and support for structured logging—stay tuned!
### Dendrite
Dendrite is a next-generation homeserver written in Go
[kegan](https://matrix.to/#/@kegan:matrix.org) said:
> There is no release this week, be sure to have [v0.2.1](https://github.com/matrix-org/dendrite/releases/tag/v0.2.1) installed for a more stable experience! A few documentation changes have been made this week:
>
> * Docker sample configs are now correct.
>
> * The `MaxMessageBytes` for Kafka messages is now configurable - thanks [@S7evinK](https://github.com/S7evinK)!
> * A reverse-proxy sample now exists for Hiawatha - thanks [@ErgoPoe](https://github.com/ErgoPoe)!
>
> Spec compliance remains unchanged:
>
> * Client-server APIs: 57%
>
> * Server-server APIs: 81%
>
> Things have been quiet this week because Neil has been working on new P2P routing schemes and I have been working
>
> on a [Threading proposal](https://github.com/matrix-org/matrix-doc/blob/kegan/msc/threading/proposals/2836-threading.md) which will be tried out in Dendrite in the coming days.
## Synapse Deployment 📥️
### Kubernetes
[Ananace](https://matrix.to/#/@ace:kittenface.studio) announced:
> Just pushed the Synapse 1.22.0 versions for my [K8s-optimized image](https://github.com/ananace/matrix-synapse) and [Helm chart](https://gitlab.com/ananace/charts).
... 🕛 time 🕗 went 🕟 by 🕥 ...
> Updated my Synapse chart and K8s-optimized image to 1.22.1 as well, and got the element-web chart updated to 1.7.12
### YunoHost
[Pierre](https://matrix.to/#/@pierre:mamieserv.fr) reported:
> [YunoHost](https://yunohost.org) is an operating system aiming for the simplest administration of a server, and therefore democratize self-hosting.
>
> [Synapse](https://github.com/YunoHost-Apps/synapse_ynh/tree/master) integration had been updated to 1.20.1 (1.21.2 available in branch `testing`)
>
> [Element Web](https://github.com/YunoHost-Apps/element_ynh/tree/master) integration had been updated to 1.7.9 (1.7.10 available in branch `testing`)
## Dept of Bridges 🌉
### 🌈🌉 Bifrost reaches 0.2.0
[Half-Shot](https://matrix.to/#/@Half-Shot:half-shot.uk) reported:
> Hey folks, today I bring you a gift wrapped rainbow coated present, which could only mean **Bifrost 0.2.0 is out!**.
>
> We've been making major progress trying to align bifrost with the many XMPP clients out there like [Gajim](https://gajim.org/) and [Swift](https://swift.im/), by improving it's compatibility with the various XEPs. I've also noticed a few users have started using it to bridge their Matrix and XMPP communities together which is super cool :)
>
> Please read the latest changelogs over at <https://github.com/matrix-org/matrix-bifrost/releases/tag/0.2.0> and upgrade away!
### Gitter
[Eric](https://matrix.to/#/@madlittlemods:matrix.org) reported:
> The [merge request for the native Gitter bridge](https://gitlab.com/gitlab-org/gitter/webapp/-/merge_requests/2040) has just got underway and we're making progress towards sharing all Gitter messages in public rooms across to Matrix.
>
> We'll continue to iterate on the [Gitter `virtualUser` support](https://gitlab.com/groups/gitlab-org/gitter/-/epics/10) as we go along.
### mautrix-telegram
[Tulir](https://matrix.to/#/@tulir:maunium.net) said:
> [v0.9.0-rc1](https://github.com/tulir/mautrix-telegram/releases/tag/v0.9.0-rc1) was released last weekend. Changes since v0.8.x include:
>
> * Prometheus metric names are now prefixed with `bridge_`
>
> * Support for Telegram QR code login
> * Support for double puppeting for users on other servers
>
> * Options for automatic backfilling of missed messages and old messages when creating portals
> * Switched end-to-bridge encryption to use mautrix-python instead of the previous hacky matrix-nio solution
>
> This week I fixed some bugs, so I'll probably make a rc2 in the near future.
## Dept of Clients 📱
### Fluffychat 0.21.1 is released!
[FluffyChat](https://fluffychat.im) is a cute cross-platform matrix client. It is available for Android, iOS, Web and Desktop.
[sorunome](https://matrix.to/#/@sorunome:sorunome.de) announced:
> It is already in fdroid, google play and ios should follow shortly. We *highly* encourage people to update, as it contains an important bugfix of sending out way too many key requests, which can cause bad server performance
>
> #### Features
>
> * New user viewer
>
> * Add code syntax highlighting in messages
> * Updated translations: Thanks to all helpers
>
> #### Changes
>
> * Stories feature removed
>
> #### Fixes
>
> * Fixes sentry
>
> * Fixes Android download
> * Minor fixes
![2020-10-30-8rQ9F-img_20201029_152401.jpg](/blog/img/2020-10-30-8rQ9F-img_20201029_152401.jpg)
![2020-10-30-DESJ--screenshot_20201029-152256_fluffychat.png](/blog/img/2020-10-30-DESJ--screenshot_20201029-152256_fluffychat.png)
### quotient
[kitsune](https://matrix.to/#/@kitsune:matrix.org) reported:
> Hot on the heels of 0.0.9.5 beta, [Quaternion 0.0.9.5 beta2](https://github.com/quotient-im/Quaternion/releases/tag/0.0.9.5-beta2)
> is released, fixing a couple of blunders, notably inability to build with external libQuotient. Keep testing, keep translating!
### Hydrogen
[Bruno](https://matrix.to/#/@bwindels:matrix.org) announced:
> Hydrogen can now show images in encrypted rooms! I hope to also release a lightbox feature this afternoon to show a zoomed version of an image.
### Element-iOS
[Manu](https://matrix.to/#/@Manu:matrix.org) announced:
> This week, we have almost finished the authentication for widgets and jisti in particular. The project is now fully compatible with Xcode 12.
### Element Android
[benoit](https://matrix.to/#/@benoit.marty:matrix.org) offered:
> We are making progress on the performance side. Now sending an event is much faster than before. We also are optimizing the crypto code. All those improvements will be available in the next release (v1.0.10), maybe next week?
>
> Besides that, we are implementing the remaining features, we are trying to have the same level of functionality (= parity) than Element Web. We know that we have a great number of bugs to fix on the existing feature, we are also trying to fight them.
>
> As a reminder, the new Android Matrix SDK is available at <https://github.com/matrix-org/matrix-android-sdk2> and a nice sample application has been developed and is available at <https://github.com/matrix-org/matrix-android-sdk2-sample>.
You had me at "progress on the performance side"! I am looking forward to the new Element Android :D
### Element Web
[Neil](https://matrix.to/#/@neilj:matrix.org) reported:
> This week we shipped Element 1.7.12 which contains some high priority fixes, specifically:
>
> * Fixes secret storage / cross-signing reset to avoid asking for the previous key you no longer have
> * Fixes widget pinning and Jitsi calls when custom themes are used
>
> Aside from that we continue to work on the voice and video calling experience as well as improving the initial onboarding experience of the app.
### Nheko
[Nheko](https://github.com/Nheko-Reborn/nheko) is a desktop client using Qt, Boost.Asio and C++17. It supports E2EE (with the notable exception being device verification for now) and intends to be full featured and nice to look at
[Nico (@deepbluev7:neko.dev)](https://matrix.to/#/@deepbluev7:neko.dev) offered:
{{ youtube_player(video_id="XPAgKgpQFJY") }}
> This was an exciting week again. Trilene did the usual and just opened a PR, that implements the video part of call support. In my testing so far this seems to work amazingly well (ignore, that my webcam is crappy in the video, I only have so many devices...)! It's hard to overstate my satisfaction, if I am allowed to quote songs without getting a DMCA! If you want to try it out, you will need the qmlgl plugin at runtime (I had to patch some ebuilds on Gentoo to do so) and build Nheko from source. Support in our AppImage and Flatpak and for our Windows and MacOS builds will come at a later date. A big shoutout to trilene, who just works on VOIP in Nheko, without saying a word, and then drops a ready PR.
>
> Another exciting new feature by lorendb, you can now specify `--profile <profilename>`, when you start Nheko, to create a separate profile. This allows you to open multiple instances and use multiple accounts at the same time (but it still uses separate instances of Nheko). This is pretty useful, if you have multiple accounts on different homeservers or are testing stuff for example. He also added a shortcut to delete the current content of the message area (Ctrl-U).
>
> We also fixed a long standing bug, that crashed Nheko when pasting an image on mac OS, prevented copying text in some cases and build times should be about halfed again.
>
> That's all I got today. I guess we should do a new release at some point?
I asked about trilene, who is a reliable Nheko contributor, Nico replied:
> trilene seems to be a bit camera shy and prefer to work on code than take credit and talk about upcoming features. I'm surprised everytime, when a new PR is opened or trilene asks a weird question, that can only end up in an amazing contribution :3
\o/
## Dept of SDKs and Frameworks 🧰
### matrix-bot-sdk 0.5.8 out now
[TravisR](https://github.com/turt2live) told us:
> [matrix-bot-sdk](https://www.npmjs.com/package/matrix-bot-sdk) v0.5.8 is out now with experimental support for EDUs being sent to appservices (per [MSC2409](https://github.com/matrix-org/matrix-doc/pull/2409)).
>
> To enable it you'll need Synapse 1.22.0 (released this week) and v0.5.8 of the bot-sdk. Then, add `"de.sorunome.msc2409.ephemeral": true` to your appservice registration file (at the root level) and turn on the `de.sorunome.msc2409.ephemeral` flag in your `IAppserviceRegistration` supplied to the bot-sdk. If all goes according to plan, you'll be able to use `appservice.on("ephemeral.event", (ev) => {})` to start processing EDUs.
## Dept of Ops 🛠
### Icinga End-to-End Check
[Nik](https://matrix.to/#/@nik:matrix.teckids.org) said:
> I hacked together a maubot-based roundtrip test that leverages the echo bot's ping command reply and reports rtt to Icinga as a passive check result. Its practical use is scientifically questionnable, but it gives a hint on end-user experience. Find it here: <https://edugit.org/nik/maubot-pingcheck>
## Dept of Services 🚀
### Enabling encryption for bots on t2bot.io
[TravisR](https://github.com/turt2live) offered:
> Starting November 28th and 29th of this year, many bots on t2bot.io will be supporting end-to-end encryption. Though not all bots will be supporting it, this is an important milestone towards getting end-to-bridge encryption enabled on t2bot.io as a proof of being able to scale to the higher demand of encrypted rooms.
>
> The eventual goal is to support encryption on all of t2bot.ios bots and bridges, however we need to take small steps to get there 🙂. Note that in order to function, bots will decrypt *all* messages they see, but only respond to the ones they care about - this can still be uncomfortable for some rooms though, so feel free to kick them out.
>
> For more detail on which bots are getting support and what all this entails/means, please see the [dedicated blog post](https://t2bot.io/blog/2020/10/30/enabling-encryption-for-bots/).
We teased this a little on Matrix Live last week (I think?), but so awesome to see this publicly announced.
### Keymaker (Serverlist Project)
[MTRNord](https://matrix.to/#/@mtrnord:nordgedanken.dev) reported:
> Keymaker is a new WIP Project of some people (over at [#serverlist:nordgedanken.dev](https://matrix.to/#/#serverlist:nordgedanken.dev) ) that aim to provide a [mastodon](https://joinmastodon.org/communities/) alike Server List and we would love to get some more input from the Community for this project on whats wanted, whats needed and whats maybe not that good to base on the mastodon counterpart.
>
>
> This means we are building:
>
> * A list of Servers where Owners can add their servers
>
> * We try to do Quality controls (No fully self add. Servers get reviewed.) using a Code of Conduct Ruleset
> * Verified Listings using well-known files on serverside (Also allowing Admins to modify server data themself)
>
> * Server Details like:
> * Ping and Availability Stats (thanks to tulir for providing a API)
>
> * Public Room Lists fetched from the Server
> * NSFW Ratings (A NSFW tag was too generic for us)
>
> * A Section to list Rules
> * Admin addresses for easy ways of reaching the Server admins
>
> * Allowing to select registration state ("Open", "Invite Only", "Closed")
>
>
> The Code is fully written in Rust and using Postgres as a backend. Have a look at: <https://github.com/daydream-mx/keymaker>
>
> Join us at: [#serverlist:nordgedanken.dev](https://matrix.to/#/#serverlist:nordgedanken.dev)
>
> In a further post we plan to announce the launch of this Project as a Website. Server owners might get a ping before that to allow for setting up servers for this. This Project is not yet deployed to be used.
This is really cool. I suggested it might start to kickstart people hosting their own small, publicly open servers.
[MTRNord](https://matrix.to/#/@mtrnord:nordgedanken.dev) replied:
> As we also allow non public servers (registration -> closed) it may also be a nice way to find communities that federate and have a look if they have a interesting room to join in the public rooms list. :)
## Dept of Bots 🤖
### Bubo
[kapina-jaywink](https://matrix.to/#/@jaywink:elokapina.fi) reported:
> **Bubo**, the community helping bot-in-progress, gets releases and a new command: `breakout`. The command can be used to create a breakout room from the current room. Bubo will create the room, invite and make the requester an admin, and confirm in the original room. Anyone who reacts with an emoji to the confirmation will get an invite to the breakout room. Currently breakout rooms are non-public and non-encrypted by default.
>
> Find Bubo [v0.2.0 here](https://github.com/elokapina/bubo).
## Dept of Events and Talks 🗣️
### Neil on being an eng manager
[Neil](https://matrix.to/#/@neilj:matrix.org) announced:
> Hey all, I do engineering managery stuff at Element, if you ever wondered what on earth that actually means, here is a video of me going on and on about it. <https://www.youtube.com/watch?v=2NflccKdGqU>
Sell it Neil! This is an insightful chat - if you're interested in the dilemmas and thoughts of an eng manager, be sure to check this out!
## 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. 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|maescool.be|653|
|2|aragon.space|707|
|3|envs.net|800|
|4|matrix.vgorcum.com|828|
|5|elcyb.org|1044|
|6|neko.dev|1104|
|7|fab.network|1112|
|8|mailstation.de|1128|
|9|aragon.sh|1364|
|10|dodsorf.as|1605|
## 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>