This Week in Matrix 2019-01-25

2019-01-25 — This Week in Matrix — Ben Parsons

Matrix Live S03E12 - Modular.im

This week I chatted to Rick about the release of Modular, Hosted Homeservers and more. We're pleased to be able to announce the availablity of a HipChat migration tool to get people into Matrix.

Latest MSC updates (from anoa's MSC bot)

Approved MSCs

Final Comment Period

In Progress MSCs

Synapse

  • Working furiously towards an r0 spec release. Event ids as hashes (MSC 1659) and S2S API certificates (MSC 1659 ) are very close now - see https://github.com/orgs/matrix-org/projects/8 to track our progress.
  • Since MSC1711 is a breaking change, we will initially ship our next release (v0.35.0) with ACME support to make it easy to provision and renew certificates. The give everyone a month to upgrade and install a cert before we ship Synapse v1.0 which will require that servers have certificates in order to federate. Don't worry, there will be plenty of details on the steps necessary for admins when v0.35.0 lands - watch this space.
  • Finally a raft of db performance improvements, room version upgrade bug fixes, as well taking a look at room directory and user directory efficiency.

matrix-puppet-slack

tom reports that:
matrix-puppet-slack version 1.10.1 has been released, thanks again to @twouters
  • The bridge could not create new Matrix rooms on versions of Synapse after a certain change, because it did not reserve the room alias prefix it used. That's been fixed, but anyone currently running matrix-puppet-slack will need to edit their slack_registration.yaml and restart Synapse. See the Release for instructions on doing so.
  • The bridge will no longer send "Edit: " events when Slack sends it a "message_changed" message, if the message text has not actually changed (Slack sends these events for URL previews, for example, but this just causes duplicate bridged messages). This fix has been a long time coming.

matrix-corporal

Slavi reports that:
matrix-corporal 1.3.0 was released.
It uses a new Matrix API for fetching account data (Synapse >0.34.1 is required), so it performs reconciliation quicker than before.

From the notes:
Reconciliation is now much faster, due to the way we retrieve account data from the Matrix server (no longer doing /sync).
From now on, the minimum requirement for running matrix-corporal is Synapse v0.34.1, as it's the first Synapse release which contains the new API we require (GET /user/{user_id}/account_data/{account_dataType}).

journal


lukebarnard disappeared from our screens some time ago, but he's back with this news on journal:
I have an update on journal (finally). I've pushed the redesign branch that I've been working on. It contains the web view component of the new architecture and can be used as a generic blog-hosting site (I'll be doing this personally). Feel free to check it out here: https://journal.lukebarnard.co.uk/journal/1-jan-2019

Riot-web

  • Redesign
  • Typing notifications don't make timeline jump anymore
  • Jump to bottom button is overlay now, so we can finally hide the room status bar again most of the time
  • Working on room sublist resizing
  • Work on authentication flow
  • Work on settings

Riot Android and iOS

  • Reskin of Riot is nearly finished. Last known issues have been fixed.
  • Keys backup screen development well underway! We're working to fit everything nicely on mobile platforms - there are some UX/UI specificities to consider.
  • Riotx (new version of riot for Android, built using the upcoming kotlin SDK): more and more event types supported in timeline.

Quaternion

kitsune reports that:
the macOS build for Quaternion 0.0.9.3 turned out to be not complete and fails if the user doesn't have Qt installed. Thanks to Aaron Raimist the build has been now includes a snapshot of Qt 5.11 - if you tried and failed to run the .dmg from https://github.com/QMatrixClient/Quaternion/releases, you can try to use it again.

Thanks also to Aaron for helping populate homebrew with Matrix goodness. Mac users may be interested to know that Seaglass and Spectral are both available in homebrew now.

Neo client


f0x reports that:
Neo is still in the GUI component design stage (the best stage to get involved with feedback!). I have implemented the jdenticon library for avatars, autoscrolling when there are new events, and I've added the Rust code of conduct. https://git.lain.haus/f0x/iris
General vision for this project is to first get as much gui done as possible, before diving in the backend. This will be split into a separate module, with the gui component being as protocol-agnostic as possible, to allow different backend modules for XMPP or IRC as well.

Fractal client

Backend refactoring by Julian Sparber and Alejandro Domínguez. They also got progressed with tag handling, spell checking and lazy loading.

matrix-js-bot-sdk

TravisR reports that:
the matrix-js-bot-sdk has received a bunch of updates currently residing on the develop branch. Changes include unit tests covering most of the library, appservice support improvements, handling of room version upgrades, and a bunch of bug fixes.
matrix-js-bot-sdk was recently updated to have support for Application Services, and is a lighter alternative to the matrix-js-sdk.

cl-matrix

Gnuxie reports that:
I've been working on cl-matrix and I think now it might be in a good condition to talk about it.cl-matrix is a WIP client library written in common lisp, most of the API endpoints have been covered using macros that allow you to copy straight from the spec, here is an example using the send event endpoint:
(define-matrix-endpoint room-send-event (:put) ("rooms" room-id "send" event-type txn-id))
this will expand into a function with the signature:
(PUT-ROOM-SEND-EVENT AUTHENTICATION ROOM-ID EVENT-TYPE TXN-ID CONTENT &KEY PARAMETERS)
it also has some basic events defined using deeds that can be issued using the sync endpoint.

Informo

The unknown individual from Informo, vabd told us:
Not much news this week in Informo land, though we have a few specs proposals that are still open for public review, including SCS #19 (rendered version here) which rewrites the specs website's introduction to make it more newcomer-friendly and feature a brief introduction on what Informo is about.
People who either never had a look at the project, or got fed up trying to because of the difficulty to easily understand what we're building, we'd love to read your opinion on this! ?

This is much, much appreciated. For those interested but confused, please take a look.

matrix-autoinvite


CromFr (Thibaut CHARLES) reports that:
matrix-autoinvite is a very basic service that synchronizes joined rooms between users from different servers, by inviting missing users to the room.
I'm using it to invite @CromFr:matrix.org to each Facebook Messenger rooms on my personal homeserver (that has very limited resources) hosting the matrix-puppet-facebook bridge. This way I can chat with people on facebook from a matrix.org account :)
Some relevant news from today: Zuckerberg Plans to Integrate WhatsApp, Instagram and Facebook Messenger

matrix-register-bot

krombel reports that:
A long time ago I started writing matrix-register-bot. Now as there is a new requestor of it I finally implemented the planned features and released 0.1-rc1
Feel free to test it and ask questions or provide feedback in #matrix-register-bot:msg-net.de

Other thoughts

Did you know about status.matrix.org? This handy site lets you know about the status of the matrix.org homeserver. That URL again: status.matrix.org.

linux.conf.au is happening right now in Christchurch, New Zealand (editor's note: is this right? .au or .nz?), and they've been partly using Matrix for their comms.

FOSDEM is in a week! Come chat in #matrix-fosdem:matrix.org. Be there and be square. I'll be there with Matrix swag so ping me if you'll be attending.

When will I see you… again?

I might adjust the schedule a little next week since it's FOSDEM (see above), but as always, stay tuned into #twim:matrix.org for all the biggest news!