In which Nad & Matthew go through the new consolidated Element roadmap at https://github.com/vector-im/roadmap/projects/1
Taking place NEXT WEDNESDAY, the ninth edition of my favourite monthly Open Tech-themed live video broadcast! Subscribe to the calendar on https://matrix.org/open-tech-will-save-us/ and check out the lineup:
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.
- No MSCs were merged this week.
MSCs in Final Comment Period:
- No MSCs are in FCP.
In terms of Spec Core Team MSC focus for this week, we've mostly been focusing on implementation. Thus the same 3 MSCs are in focus: MSC2844 (global versioning), MSC2366 (ready and done in key verification), and MSC2790 (modal widgets).
Anoa also provided a revised, more festive version of the chart, but it's too jolly to render inline, so needed to be linked instead.
Dean has started work on design updates for the spec
We've written replacements for all the templates and updated all template calls
We've implemented a mechanism for representing different spec versions and changelogs
Seriously progressing! Much more readable than what we have.
Dendrite is a next-generation homeserver written in Go
Neil Alexander's Dendrite mxid announced:
This week we released version 0.3.2, which contains some bug fixes. Changes this week include:
Checking if a server is allowed to see an event has been optimised somewhat
The ability to disable federation has been added
Application services are now sent correctly formatted client events
create-accounthas been simplified so that you can just point it to your Dendrite config
/unpeeksupport has been added (for MSC2753)
Event IDs are now calculated far less often in the roomserver, since this is an expensive operation
The federation sender now caches events in memory to reduce load on the database
The "since" parameter is now checked more thoroughly in the sync API, which led to a bug that could cause forgotten rooms to reappear (thanks to kaniini)
The polylith now proxies signing key requests through the federation sender correctly
Spec compliance is unchanged:
Client-server APIs: 58%, same as last week
Server-server APIs: 83%, same as last week
Synapse is a popular homeserver written in Python.
⚠️ The OpenSSL project has pre-announced a high severity issue that will be disclosed on Tuesday. We will be regenerating Docker images and releasing Synapse 1.24.0 and 1.23.1 on Tuesday following that announcement. Note that these releases contain security fixes of their own, and you are encouraged to upgrade.
In other news, Synapse 1.24.0rc2 is out and includes numerous bug fixes and internal improvements, especially around our OpenID Connect (OIDC) and SAML providers. Of note, the OIDC provider can now re-try generating MXIDs when there's a collision, reaching parity with the SAML provider.
We've been talking about MSC2403: Add "knock" feature for a few weeks, but the end is in sight: the PR is reviewed and the tests pass, so we're on track for including it in 1.25.0! We're also on the cusp of a finishing a new algorithm for calculating the auth chain difference in State Resolution v2, which should significantly reduce worst case performance.
Lastly, the deprecated
/_matrix/client/*/adminAdmin API endpoints have been removed. If you have tools which target these endpoints, please update them to use the
/_synapse/adminURL prefix instead.
The Docker ARM images for Dendrite have been updated for version 0.3.2. As always, they can be found in my docker repo at https://hub.docker.com/u/trslimey
- Monolith: https://hub.docker.com/r/trslimey/dendrite-monolith
- Polylith: https://hub.docker.com/r/trslimey/dendrite-polylith
I have also submitted a PR for automated multiarch docker builds for Dendrite, so if that gets accepted, no more unofficial images for me :P
Pierre told us:
YunoHost is an operating system aiming for the simplest administration of a server, and therefore democratize self-hosting.
Synapse integration had been updated to 1.21.2 (1.23.0 available in branch
Element Web integration had been updated to 1.7.13 (1.7.14 available in branch
Eric Eastwood reported:
We've soft-launched the new bridge to all public Gitter rooms! You can now find any public room on Gitter checking out the room directory for
gitter.imor directly by replacing the forward slash in the URI part of the Gitter room with an underscore and joining
#*:gitter.im(replace the *). If you come across any bugs, feel free check the list of known problems and create an issue. There will be a full announcement next week so stay tuned!
We've also added a few more features this week and now transform
:emoji:syntax from Gitter to Unicode so they're compatible in Matrix, propagate the room topic/description, and some bug fixes around threaded conversations and replies. You can track our full progress from the GitLab epic for the native Gitter-Matrix bridge.
Massive milestone! Great work Eric, it's been such fast progress!
Alexandre Franke announced:
This was actually just the beginning, the ground work needed to lay the foundations for A Better Future. We already have a bunch of other merge requests to continue down that path. Hopefully there shouldn’t be such large ones in the (near) future. So what’s next? The work that landed this week was a switch to the SDK for almost all endpoint queries. Now need to handle the syncs with it. Later on, we will use it to handle storage, and then enable E2EE as well, but that will take quite some time.
Big progress from Fractal here! Will be good to hear more from the Fractal club to see what the ETA is for storage and E2EE.
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) reported:
While I've actually not had much time to work on Nheko, I did at least fix most of the UTD (Unable to decrypt) issues, when sending encrypted messages. This has been a long standing annoyance, but it should now finally not be an issue anymore (well... at least it should not be caused by Nheko as often anymore)! With this there are only a few tickets left to finally bring E2EE out of beta in Nheko (SSSS and bootstrapping cross-signing, as well as a general review for potential issues).
And while I have actually not been doing much work, we actually had more Pull Requests (and merged them too) this week than I have ever seen before in Nheko! Thank you very much to everyone who contributed. A short summary:
Nheko now uses the Nheko icon from your system theme, if available
You can finally look at avatars in their full resolution!
Megolm sessions are now lazily loaded from disk.
The registration page now also has nice inline error messages, hinting at why a specific input is unacceptable.
Updates to the russian translation
The README now lists all required GStreamer plugins for voice and video calls.
It feels super great, when you have so many people contributing, I love it! <3
Nheko really seems to be doing something right when it comes to attracting PRs!
As compiled by the team:
Aleks Kissinger added:
LaTeX support will be available under Labs in the next release of Element: https://github.com/vector-im/element-web/blob/develop/docs/labs.md
cryptovoxels released a cute little preact matrix client for all your VR needs: https://github.com/cryptovoxels/chat
We don't have much information about this one yet, other than that cryptovoxels have been interested in developing a Matrix client for their world for a while.
Hemppa the Bot is a multipurpose bot for writing modules super easily in Python.
Hemppa the Bot is a multipurpose bot for writing modules super easily in Python. Last week Hemppa received a useful feature of printing files! You can set up a room for a specific printer and invite anyone you wish to it to allow printing. Any attachments uploaded to the room will be automatically printed. It's actually one of the easiest way to print from a phone and very useful if you have a printer that does not have drivers for modern Windows or MacOS versions. https://github.com/vranki/hemppa#printing
A bot to receive Alertmanager webhook events and forward them to chosen rooms.
Matrix-Alertmanager has a new release v0.4.0 with improved formatting of alert messages and an update of Node to v14. Find more information here.
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.
This is a pretty cool, Matrix-ish video! Doug shows Element-iOS and Nio running side-by-side, natively (!) on an M1 Mac Mini.
See you next week, and be sure to stop by #twim:matrix.org with your updates!