This Week in Matrix 2020-02-14

2020-02-14 — This Week in Matrix — Ben Parsons

Matrix Live 🎙

Matrix Live now available as an audio podcast

You will know Matrix Live as a weekly video produced by the Matrix team and shared on YouTube. We are now offering the same content as an audio-only podcast, as a way of reaching more people. You can find the podcast:

Dept of Events and Talks 🗣

Are you interested in a real-life, real-time Matrix-related meetup? Can you make it to London? Join us on the 26th February at Second Home in Spitalfields! More details to follow, for now please register your interest at https://www.eventbrite.com/e/matrix-london-meetup-26th-february-2020-tickets-93320354693.

Dept of Spec 📜

Here's your weekly spec update from anoa!

MSC Status

Merged MSCs:

  • No MSCs have been merged this week.

MSCs in Final Comment Period:

No FCPs have entered Final Comment Period this week.

New MSCs:

Random happenings

I (anoa) am still working on the re-write of mscbot. Only needs a few more touches (concern parsing [in comment threads!] and review commands) before it's ready for use.

Spec Core Team

Next week the Spec Core Team is focusing on MSC implementation.

Dept of Servers 🏢

Dendrite

Neil Alexander told us:

  • A big chunk of early SQLite work has been merged into master this week, providing support in the client API, room server, sync API, account/device/key databases, federation APIs, appservice API, public room APIs and media API. Much of this is experimental at this stage.
  • Some missing device management features have been merged (#835)
  • Configuration is now passed by reference rather than by copy (#819)
  • A number of defer-closes have been added to SQL queries (#844)
  • Some gomatrixserverlib types have been updated (#808)
  • Some initial work on retrying failed federation requests has been done, although not merged yet
  • Made it through quite a few PR reviews finally, and will be continuing to do so!

Synapse

Neil told us:

In Synapse land this week we shipped 1.10.0. Which contains a temporary hack to mitigate room alias abuse and an important bug fix for anyone trialling cross signing.

Aside from that we’re working on fixing alias abuse properly. Improving User Interactive Auth for SSO customers and rolled out our new py3 compatible sydent version.

Coming up, more e2ee UX bug fixing, and we’ll start hacking on sharding out event persistence on Synapse’s master process, which basically accounts for 40% of the CPU. The idea is to scale this function horizontally such that Matrix.org is no longer CPU bound after which point much rejoicing can occur.

Synapse Deployment

Ananace announced:

Just pushed the 1.10.0 K8s-optimized images for Synapse, this release contains the necessary scripts to also run signing key generation and upload as a step towards one-click install support for Synapse without any requirements on storage classes.

Mathijs told us:

The docker image for synapse v1.10.0 is now on mvgorcum/docker-matrix:v1.10.0 the avhost/docker-matrix:v1.10.0 will follow shortly.

Dept of Bridges 🌉

matrix-appservce-irc

Half-Shot told us:

Hey! This week we have a minor release for the IRC bridge, 0.15.2. It contains a few fixes that have been plaguing the matrix.org instances, and will hopefully smooth out some of the reconnection troubles.

Notes from the changelog:

  • The bridge will now notify you if a DM recipient is offline. (#978)
  • Fix "User did not rejoin" error when bridge debounces QUITs (#977)
  • Fix an issue where users were not rejoined to channels on netsplit/password change. (#979)

🌈 matrix-bifrost

Half-Shot told us:

Fresh off the heels of FOSDEM, we've been working on making Bifrost a smoother experience for our XMPP friends.

This week we released 0.1.5-0.1.8 which

contains quite the bundle of features and fixes. The bridge is now running on matrix.org, if you didn't hear the

news so give it a spin by following the instructions on the wiki

Matrix EmailBridge

Jojii reported:

Iam happy to announce some of the new features the Matrix-EmailBridge got recently. It's been some time since the last update came out because I had some other projects to do first.

  • A Docker image is available for the bridge which gets updated instantly.
  • Blocklist of email addresses (prevent displaying emails from certain email addresses)
  • Bugfixes

Dept of Clients 📱

RiotX news

benoit said:

A new Android developer joined the RiotX team! Onuray has started working on Monday on issues and features to get used to the codebase and the process in place.
We are currently preparing a release (v0.16.0) which contains a first implementation of poll (here is a demo), and some bugfixes.
We are still working on stabilizing the cross-signing feature, and optimizing the overall performance and stability of the application.

2020-02-14-image.png

Read more: https://github.com/matrix-org/matrix-doc/blob/travis/msc/inline-widgets/proposals/2192-inline-widgets.md

seshat+riot-powered WebExtension

If you're looking forward to using seshat to index and search your encrypted message history, you may be interested in this work from stoic. The working title is "Riot Booster Pack" - but we're looking out for a better name!

stoic said:

Searching in encrypted rooms in the browser would be nice? I agree, so that's something I'm working on (powered by seshat). If you want to give it an early experimental spin, beware of the dragons and follow these secret steps (Riot Firefox Add-on + Linux & MacOS only, for now):

  1. Install the latest Riot Add-on Prerelease for Firefox (and don't mind the huge red warning page from Riot, skipping that is fine, it'll be gone in the next release)
  2. Adjust the Riot config.json in the Add-on preferences to include the feature_event_indexing labs feature
  3. Follow the instructions to install the Riot Booster Pack
  4. Report bugs 🐛

Riot iOS

Manu offered:

We have been spending most of our time on cross-signing to manage the m.verification.ready event and the verification by QR code. In parallel, we have fixed some issues and merged some PRs from the community.

Riot Web

Ryan said:

  • v1.5.9-rc.1 is now available at https://riot.im/staging. This includes some security improvements (adding a CSP) for self-hosted installs, options to hide typing notifications, a redesigned invite experience, as well as various bug fixes.
  • The team's main focus continues to be getting cross-signing ready for release, including polishing the verification experience, building Riot with Seshat for desktop platforms, and improving QR codes

new docker container for riot-desktop

Mathijs told us:

Cadair and me (the Matrix Doctors) have been working to make it easy to build the development version of riot-desktop. This resulted in a docker container and an azure pipeline. The latter also builds riot-desktop versions with seshat included for both linux and macOS though currently this requires manually installing sqlcipher (use brew on macOS).

Nheko

Nico announced:

  • sorairolake contributed a complete japanese translation! (#116)
  • adasauce fixed an issue, where the image overlay opened always on your primary screen instead of your current screen (#114)
  • Multiple people have been trying out nheko on their PinePhone or Librem 5. There were some successes, but part of the UI was never intended for that size and there is a nasty crash in the recent nightly, probably related to the networking code/library. We've been working on fixing those issues.
  • There are now nightly flatpak bundles. Stable releases will still be on Flathub, but if you want to try out the development builds, you can download and install those bundles manually.

2020-02-14-librem-portrait.png

2020-02-14-librem-landscape.png

Dept of SDKs and Frameworks 🧰

Famedly Dart SDK E2E Preview

Krille reported:

I'm going to finish the implementation of end to end encryption in our new Famedly Dart SDK. Here is a little preview:

Check it out: https://gitlab.com/famedly/famedlysdk/

matrix-bot-sdk v0.5.0 released!

TravisR announced:

matrix-bot-sdk has just released v0.5.0 which includes some new helper functions, async storage providers, and a new SynchronousMatrixClient for when you really need things to happen in a specific order. Check out the diff here: https://github.com/turt2live/matrix-bot-sdk/compare/v0.4.1...v0.5.0

ruma

jplatte offered:

  • We released ruma-client-api 0.6.0, with lots of updated API revisions (and also lots of breaking changes). The changelog can be found here
  • ruma-client 0.3.0 is out of beta! This release contains
    • access to the raw http response for non-success responses
    • async/await support 🎉

Ruby SDK

Ananace told us:

Just pushed version 2.0(.0) of the Ruby SDK, coming with a few backwards-incompatible changes as well as a whole bunch more endpoints exposed as methods on the low-level API client. Docs have been improved tremendously, some internal methods have been properly exposed to make it easier to use in a bot context, and another example's now provided which shows a different way to use the higher-level Client abstraction.

Dept of Ops 🛠

matrix ansible modules

JCG said:

After entirely too much time, I finally present my 5 new and improved matrix ansible modules.

  • matrix-notification: This is a port of my upstream matrix module over to matrix-nio and async/await syntax
  • matrix-login: New module to log in and create an access token
  • matrix-logout: New module to log out and invalidate an access token
  • matrix-room: New module to idempotently join or create a room based on an alias
  • matrix-state: New module to idempotently set state in a room

The work on this also included sending a few patches upstream to matrix-nio, so if you want to use the last two modules, you will need to install nio from source from my PR there.

Get the modules now from https://gitlab.com/famedly/ansible/modules/matrix!

Dept of Bots 🤖

twim-o-matic ranks by score

This one is a little meta: I've made some improvements to twim-o-matic, the tooling I use to generate TWIM. One of the improvements is that the bot will now sort the output per-section, in decending order of how many reactions the entry recieved when posted in #twim:matrix.org. So, if you see something you think should be at the top, made sure to react to it!

Even as I'm typing right now I can't think this will lead to any unforeseen consequences at all.

httpdog

Aaron said:

I coded up this real complicated bot... very different from the cat one. HTTP dogs!

(actually just changed two lines in a config file 🐶)

@httpdog:raim.ist replied:

2020-02-14-200.jpg

Matrix in the News 📰

German Blog comparing Matrix to WhatsApp

Oleg offered:

German Blog basicthinking.de posted the article, which compares Riot to WhatsApp completely missing the point of the [matrix] network.

Spoiler: it was.

Dept of Ping 🏓

Here we reveal, rank, and applaud the homeservers with the lowest ping, as measured by pingbot, a maubot that you can host on your own server. Join #ping:maunium.net to experience the fun live, and to find out how to add YOUR server to the game.

RankHostnameMedian MS
1imninja.net394
2gottliebtfreitag.de408.5
3shortestpath.dev470
4maunium.net491
5matrix.vgorcum.com557
6finallycoffee.eu561
7queersin.space585
8envs.net624
9andresco.de633.5
10kittenface.studio687

That's all I know 🏁

See you next week, and be sure to stop by #twim:matrix.org with your updates!