This Week in Matrix 2023-12-08

08.12.2023 00:00 — This Week in Matrix Thib

Matrix Live

Dept of Servers 🏢

Synapse (website)

Synapse is a Matrix homeserver implementation developed by the matrix.org core team

dmr reports

This Tuesday we released Synapse 1.98.0rc1. Its promotion to the 1.98.0 release proper is planned for the coming Tuesday (12th Dec). We expect v1.98.0 to be the final release of 2023, as the team takes a break over the holiday period.

Of note in this release candidate:

As ever, thank you to our users, contributors, and community of server operators.

Continue reading…

This Week in Matrix 2023-12-01

01.12.2023 00:00 — This Week in Matrix Thib

Matrix Live

Unfortunately no Matrix Live this week, your host and editor apologises for the inconvenience!

Dept of Status of Matrix 🌡️

Libera Chat bridge sunsetting

Josh Simmons says

This week we were sorry to announce that we are not able to bring the Libera.Chat bridge back online. We have already begun working through clean up tasks, such as clearing ghosts, and expect to be done by December 22. If you see any bridge artifacts left past that point, please let us know.

We know that many communities and individuals were relying on the bridge, and we regret the impact this situation has on them.

If you are one of those who have relied on the bridge in the past, you may be asking: what now? You do have options.

People who need a bridge for their community can run their own: the matrix-appservice-irc software is still maintained. Only its Libera.Chat instance, which was configured to persist connections across restarts, is being shut down. Please be mindful of the network, and read Libera.Chat’s recommendations and their Matrix FAQ when doing so.

For more information, read our full announcement and Libera.Chat’s announcement.

Matrix on Wikidata

Christian Paul (jaller94) reports

Wikidata is an open knowledge base, containing structured information to be read by humans and machines. I love it and I contribute to it a lot.

This week, I added a few more items from the Matrix ecosystem which I want to highlight:

You may have heard of this event series called Matrix Community Summit (Q123583505). In the past, we've had the Matrix Community Summit 2022 (Q123583515) and the Matrix Community Summit 2023 (Q123583556).

One output of these community summits is the Matrix Salon Podcast (Q123583531), which is a podcast featuring community members. Check it out! After all, you already seem to be interested in Matrix (Q22906785) given you're currently reading This Week In Matrix (Q123583570).

Continue reading…

Matrix v1.9 release

29.11.2023 17:44 — Releases Travis Ralston

Hey all,

We’ve just pushed out Matrix 1.9! Our last release was Matrix 1.8 and brought us a whole new room version. Matrix 1.9 continues a theme of an annual maintenance release, bringing with it mostly clarifications and bug fixes.

Today’s release sees just 1 MSC formally merged to the specification, though this is expected for a maintenance release. For the last 2 months (and beyond), we have largely been focused on changes which haven’t settled enough to be MSCs yet, such as interactions with the More Instant Messaging Interoperability (MIMI) working group at the IETF.

This post covers a lot of what we’ve been up to for the last few months, and what we expect to get done for the Matrix 1.10 release cycle. As always, the full changelog for Matrix 1.9 is at the bottom of the post :)

Messaging interoperability

One of the major features of Matrix is its ability to connect multitudes of messaging providers with a common communications fabric - a feature that is extremely useful in light of the EU’s Digital Markets Act (DMA) which requires gatekeepers to interoperate with other messaging providers.

We’ve been working with the MIMI working group at the IETF to establish a federation protocol for DMA-style messaging alongside our own experiments like MSC3995: Linearized Matrix. The proposed protocol for MIMI is based upon the Linearized Matrix work, but is primarily designed for an MLS-centric environment.

Discussions and experiments will continue over the next several months, and you can read all about our progress so far in TWIM 2023-11-10.

Custom emoji/stickers

We mentioned in Matrix 1.8’s release that we’d be taking a look at MSC2545, MSC1951, MSC4027, and MSC3892 - a family of MSCs collectively called “custom emoji/stickers”. Our review started relatively late in the Matrix 1.9 release cycle (sorry), and we started thinking about interactions with MSC3916/MSC3911 where media is linked to a specific event.

We haven’t had a chance to really dig into the specific possible concerns on these two features overlapping, but do welcome feedback and suggestions for what might impact custom emoji/stickers over on our dedicated tracking issue. We’ll continue working through the problem space in the Matrix 1.10 release cycle, and hope to get both linked media and custom emoji/stickers up for FCP.

Upcoming in Matrix 1.10

With each release we aim to have a plan for what the next release will look like, giving us a direction or theme to follow. Noting that the next release cycle has a lot of holidays (and FOSDEM) in it, we’ve got an initial list of things to look at, grouped by theme:

  • Authenticated media
    • MSC3916 - Authentication for media
    • MSC3911 - Linking media to events
  • Custom emoji/stickers
  • MSC4074 - Server-side annotation aggregation
  • MSC4048 - Authenticated key backup
  • Extensible Events
  • Encrypted Appservices
    • MSC2409 - Sending EDUs to appservices
    • MSC3202 - Encrypted appservices
  • MSC2702 - Content-Disposition semantics for media
  • MSC3939 - Account locking

This list is not final and will be iterated upon over the next couple of weeks. If you’ve got an MSC to add or remove, let us know in the SCT Office on Matrix. For all of the MSCs above, we aim to get them to a FCP-accepted state at a minimum, and merged to the spec if time permits (and makes sense - looking at you, Extensible Events).

The full changelog

Matrix 1.9 is a relatively light maintenance release, but it still has a changelog! Read on for full details.

Client-Server API

Backwards Compatible Changes

  • Add the m.rule.suppress_edits default push rule, as per MSC3958. (#1617)

Spec Clarifications

  • Fix m.call.negotiate schema and example. (#1546)
  • Clarify that the via property is required for m.space.parent and m.space.child as per MSC1772. Contributed by @PaarthShah. (#1618)
  • Add a note to the /publicRooms API that the server name is case sensitive. (#1638)
  • Clarify that an m.room.name event with an absent name field is not expected behavior. (#1639)
  • Fix schemas used for account data and presence events in GET /initialSync. (#1647)
  • Fix various typos throughout the specification. (#1658, #1661, #1665)
  • Fix .m.rule.suppress_notices push rule not being valid JSON. (#1671)
  • Add missing properties for event_property_is and event_property_contains push conditions to PushConditions object. (#1673)
  • Indicate that fallback keys should have a fallback property set to true. (#1676)
  • Clarify that thread roots are not considered within the thread. (#1677)

Server-Server API

Spec Clarifications

  • Fix schema of m.receipt EDU. (#1636)
  • Fix various typos throughout the specification. (#1661)
  • Clarify that federation requests for non-local users are invalid. (#1672)

Application Service API

No significant changes.

Identity Service API

No significant changes.

Push Gateway API

No significant changes.

Room Versions

No significant changes.

Appendices

Spec Clarifications

  • Clarify timestamp specification with respect to leap seconds. (#1627)
  • Fix various typos throughout the specification. (#1652)

Internal Changes/Tooling

Backwards Compatible Changes

  • Add more CI checks for OpenAPI definitions and JSON Schemas. (#1656)
  • Generate server-server OpenAPI definition. (#1657)

Spec Clarifications

  • Replace all mentions of Swagger by OpenAPI. (#1633)
  • Fix enum types in JSON schemas. (#1634)
  • Fix schema of m.mentions object. (#1635)
  • Fix rendering of m.receipt event in Client-Server API. (#1637)
  • Remove required fieldname in appservice Protocol definition. (#1646)
  • Fix github action workflow responsible for releasing of @matrix-org/spec package. (#1648)
  • Upgrade GitHub actions. (#1660)

Shutting down the Matrix bridge to Libera Chat

28.11.2023 00:00 — Bridges Josh Simmons

Today we are sorry to announce that we are not able to bring the Libera Chat bridge back online. We have already begun working through clean up tasks, such as clearing ghosts, and expect to be done by December 22. If you see any bridge artifacts left past that point, please let us know.

If you are one of those who have relied on the bridge in the past, you may be asking: what now? You do have options.

People who need a bridge for their community can run their own: the matrix-appservice-irc software is still maintained. Only its Libera Chat instance, which was configured to persist connections across restarts, is being shut down. Please be mindful of the network, and read Libera Chat’s recommendations and their Matrix FAQ when doing so.

Continue reading…

This Week in Matrix 2023-11-24

24.11.2023 00:00 — This Week in Matrix Thib

Matrix Live

Dept of Spec 📜

uhoreg reports

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/proposals.

MSC Status

New MSCs:

MSCs in Final Comment Period:

Accepted MSCs:

  • No MSCs were accepted this week.

Closed MSCs:

Spec Updates

Matrix 1.9 is due out next week. Keep your eyes peeled for an update.

Dept of Bridges 🌉

matrix-hookshot (website)

A multi purpose multi platform bridge, formerly known as matrix-github

Andrew F announces

Hookshot 4.6.0 & webhook responses

Get ready for another Hookshot release! The flagship new feature is the ability for Hookshot to respond to webhooks with custom response data, once Hookshot has handled the webhook message. This feature exists because while some services expect an immediate response to webhooks, others wait for the request to complete. With this release, Hookshot can now handle both cases. For more details, refer to the documentation.

The release is available at https://github.com/matrix-org/matrix-hookshot/releases/tag/4.6.0, or by doing docker pull halfshot/matrix-hookshot:4.6.0. And as usual, feel free to direct any questions about Hookshot in our Matrix room: #hookshot:half-shot.uk

Continue reading…

This Week in Matrix 2023-11-17

17.11.2023 00:00 — This Week in Matrix Thib

Matrix Live

Dept of Spec 📜

Andrew Morgan (anoa) announces

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/proposals.

MSC Status

New MSCs:

MSCs in Final Comment Period:

  • No MSCs are in FCP.

Accepted MSCs:

  • No MSCs were accepted this week.

Closed MSCs:

Spec Updates

Cross-posting from TravisR's announcement in the Office of the Spec Core Team room...

Matrix 1.9

The next release, Matrix 1.9, is scheduled for release on Wednesday, November 29, 2023. This will largely be a maintenance release, but if there's anything you think we might have missed, please let us know.

Matrix 1.10

The Spec Core Team is now accepting MSC and feature suggestions towards the Matrix 1.10 release, due sometime around FOSDEM in February (unsure if it'll be before or after). So far we've got the following features up for consideration:

  • Extensible Events (at least proposing FCP on the majority of the core system; plan to merge for Matrix 1.11)
  • Encrypted appservices (like MSC2409)
  • Custom emoji/stickers (merge)

If there's specific MSCs, or even vague ideas you'd like the SCT to focus on, let us know in the Office of the Spec Core Team room. The SCT will generally find it harder to actually write the MSCs ourselves, but if you're planning on implementing a feature that will need spec review, let us know so we can ensure bandwidth is made available for that review to happen.

Random MSC of the Week

The random MSC of the week is... MSC3394: New auth rule that only allows someone to post a message in relation to another message!

This MSC is paving the way towards the use case of a room where, for instance, announcements can be made by admins, while general users can start or participate in a thread branched off from an announcement. But they otherwise would not be able to make "top-level" posts.

This feature is common in services such as Telegram, for announcement or support rooms. And it would be nice to be able to support the same kind of use case in Matrix.

It looks like I dropped the ball on keeping up with the discussion on this one. So excuse me while I go do that!

Dept of Servers 🏢

Synapse (website)

Synapse is a Matrix homeserver implementation developed by the matrix.org core team

clokep reports

Synapse 1.96.1 was released (note that 1.96.0 was skipped due to issues releasing). It includes:

  • Support for multiple receipts workers.
  • Some new module APIs.
  • Performance improvements
  • Many bugfixes!

Check it out and let us know of any issues.

Additionally, synapse-s3-storage-provider 1.3.0 was released to fix some incompatibilities with newer dependencies used in Synapse.

This past week has also seen Erik land a bunch more performance improvements, especially when using workers. Support for asynchronous uploads was finally merged, thanks to Sumner Evans from Beeper.

Dept of Clients 📱

Commet (website)

airyz announces

Hello! today we are announcing the latest minor update, v0.1.3! This contains mostly small bug fixes and UI Improvements, as well as a few quality of life features!

What's New?

  • Rooms and spaces shared between multiple accounts are visually distinguished
  • Improved HTML Rendering
  • Implemented lazy loading of room members
  • Zoom and pan on images and video
  • Background task indicator for downloads
  • Direct messages in spaces are now visually distinct from rooms

Bug Fixes

  • Fixed an issue where a room shared between multiple logged in accounts wouldn't open correctly
  • Fixed notifications being displayed for old messages

Release: https://github.com/commetchat/commet/releases/tag/v0.1.3

Join Our Room Github Twitter Mastodon

FluffyChat (website)

Krille-chan announces

FluffyChat v1.15.1 has been released with a lot of bugfixes and updated translations.This release also finally makes it possible to select text in the chat on web, desktop but also on mobile. Please be aware that the default long press behavior to select events has changed to normal taps because of this.

For the next release you can also expect the return of presences. While this feature is disabled on matrix.org, it seems to work fine on other servers. The app tries to filter out users from servers where presences are disabled to not display them as always-offline. I hope this works fine. As far as I can see, the difference is that on server with presences enabled there is always a „last_active_ago“ field in the presence content. So the app assumes that, if the user is offline and last_active_ago is NOT set, then it is better to just not display the presence status at all.

Element X iOS (website)

A total rewrite of Element-iOS using the Matrix Rust SDK underneath and targeting devices running iOS 16+.

Ștefan announces

We took this week to work on some polish for Element X and squished a host of bugs, including:

Element X Android (website)

Android Matrix messenger application using the Matrix Rust Sdk and Jetpack Compose

benoit says

Element X Android 0.3.1 is available on the PlayStore. We spent the week fixing bugs and improving our codebase. We are also adding the read marker and read receipt rendering to the timeline and are also progressing on the mention epic. Jorge also made a big improvement on the release time for the Rust SDK. It now takes around 20 minutes, previously it was up to 5 hours!

Element Web/Desktop (website)

Secure and independent communication, connected via Matrix. Come talk with us in #element-web:matrix.org!

Danielle reports

Element Web/Desktop

  • We’ve tightened scope and started reviewing feedback and iterating on the new room header and right panel designs. Keep your feedback coming, we’d love to hear it!
    • If you don’t have the new header already, go ahead and try it out on Element Develop by using the labs flag: “Under active development, new room header & details interface”
  • The team’s been working on streamlining the process we use to release Element Web. We’ve simplified it and are working through different testing tools to ensure that we’ve got our automated tests running smoothly.
  • Our week has also been focussed on reducing the number of failing notification tests by fixing bugs and working through the test suite.

Dept of SDKs and Frameworks 🧰

matrix-nio (website)

Paarth Shah says

Another full release 0.23.0 of is out as of a few minutes ago (right as I'm typing this), with some nice bugfixes, nicer features, and important progress for a whole lot more (I'll give you a hint: 🧵)

Notable changes (full changes here):

  • Introduce querying for m.direct
  • Propagating asyncio.CancelledError properly, following official asyncio standards
  • Allowing custom ToDeviceEvents via UnknownToDeviceEvent (use this wisely, and consult the spec!)
  • Allowing arbitrary callable/awaitable objects to be set as a callback (don't limit yourself to functions and coroutines!)

A sincere thank you to everyone who contributed!

Dept of Bots 🤖

Dominik reports

MatrixJoinLink is bot that allows the creation of invite links to non-public rooms in matrix.

Several months have passed since I initially introduced the bot in TWIM. In the interim, I've seamlessly incorporated the bot into various work related contexts as well as in private contexts. The bot addresses the challenge of being unable to invite individuals via a link to a non-public room or space. Since my last announcement, I further improved UX. The bot is now able to deal with various room identifiers (i.e., matrix.to links, internal room ids, and public room aliases).

MatrixJoinLink simplifies the process of inviting users to non-public spaces. Here's a guide on how to make the most of it:

  1. Invite the bot into your room.
  2. Once the bot joins, use the command !join help to explore its features. Please note that the bot responds exclusively to users or servers configured by the bot owner.
  3. To create a Join Link, kindly type !join link Demonstration_Link, and the bot will promptly generate a join link for you. Ensure that the bot has the necessary permissions to invite users.

Help

Feel free to test the bot and raise any issue using GitHub or using the development room that is mentioned in the project's README. Also consult the README for technical details.

Dept of Events and Talks 🗣️

FOSDEM 2024

Thib reports

a heads-up that the Matrix.org Foundation & Community Devroom has been accepted at FOSDEM24 You can find the CfP here, and submit your talk propositions before December 4

Centralize the Matrix Community at the Chaos Congress

Nico says

As you may know, the 37th Chaos Congress takes place in Hamburg, 27.-30.12.2023. If you don't know, the Chaos Congress is a collection of cool people mostly from the different Chaos communities to talk about interesting topics ranging from technology all the way to politics. You will however need a ticket, which will only be available in very limited quantities.

Similar to the what we already did at the Chaos camp, we have applied for an assembly at the congress. An assembly basically is a few tables with people centered around a topic, where you can join to chat, participate in workshops or even get someone to fix or setup your Matrix homeserver!

Currently the assembly is not yet approved. However we are announcing it now, so that you can give it some thought if you want to participate and maybe help shape the Matrix Community assembly!

Since the proposal isn't public yet, there is no link to share to find more information about it. But if you are helping to organize the assemblies, you can find it in the backoffice. So for now (and for later), if you want to discuss it, suggest things to do or have other comments, feel free to join us in #chaosevents:matrix.org!

So far we don't have a program yet, but maybe you have a cool workshop you want to do in our small round? Or maybe you just want to hang out and maybe answer questions people have about Matrix? Or maybe you just want to meet some Matrix developers, that you have always looked up to, to complain about how this one button is slightly of center when running their client on your PDP11?

In the end YOU can decide what you want this assembly to be, but now at least you know about it (if it gets approved)! Further updates will follow as we make progress and when we think you may have forgotten about us!

Matrix Federation Stats

Aine reports

collected by MatrixRooms.info - an MRS instance by etke.cc

As of today, 8251 Matrix federateable servers have been discovered by matrixrooms.info, 2068 (25.1%) of them are publishing their rooms directory over federation. The published directories contain 274767 rooms. Do you know what room isn't one of them? There are no rooms about backpacking among them, so if you're wondering "what an interesting room I can create to find great people to socialize with" - a room about backpacking would be a great choice!

How to add your server | How to remove your server

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.

#ping:maunium.net

Join #ping:maunium.net to experience the fun live, and to find out how to add YOUR server to the game.

RankHostnameMedian MS
1maunium.net252
2nerdhouse.io259
3tcpip.uk278.5
4rom4nik.pl280
5shortestpath.dev330
6nevarro.space356
7pleasemakemeri.ch450
8forgedtheir.phd540
9badti.me558
10matrix.rainer-zufall.tk598

#ping-no-synapse:maunium.net

Join #ping-no-synapse:maunium.net to experience the fun live, and to find out how to add YOUR server to the game.

RankHostnameMedian MS
1dendrite.s3cr3t.me138
2inet6.in154
3kumma.juttu.asia159
4dendrite.matrix.org213
5kanp.ai221
6inu.is224
7pleasemakemeri.ch340
8herkinf.de362
9matrix.amcforum.wiki414
10matrix.its-tps.fr423

That's all I know

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

Call for Participation to the FOSDEM 2024 Matrix Devroom

10.11.2023 15:00 — General Thib

Building on last year's success, the Matrix.org Foundation is excited to host a Matrix.org Foundation and Community devroom in person this year again at FOSDEM. Half a day of talks, demos and workshops around Matrix itself and projects built on top of Matrix.

We encourage people working on the Matrix protocol or building on it in an open source project to submit a proposal! Note that companies are welcome to talk about the Matrix details of their open source projects, but marketing talks are not welcome.

Continue reading…