Thib

140 posts tagged with "Thib" (See all Author)

This Week in Matrix 2022-11-11

11.11.2022 18:26 — This Week in Matrix Thib

Matrix Live

Dept of Status of Matrix 🌡️

andybalaam reports

A few Matrix folks went to IETF115 this week, and here is my Trip Report: Can Matrix help messaging standardisation through MIMI?

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://matrix.org/docs/spec/proposals.

MSC Status

New MSCs:

MSCs in Final Comment Period:

  • No MSCs are in FCP.

Accepted MSCs:

Spec updates

This week the Spec Core Team has been working with the IETF More Instant Messaging Interoperability (MIMI) working group to define a charter. With a charter, the working group is able to start thinking about implementation and design details, which means talking even more about Matrix!

We had the opportunity to discuss Matrix with several interested people at IETF this week, and are extremely excited for the (long) road ahead: even in the event where Matrix doesn't get accepted, we hope the protocol(s) the working group publishes will be fit for purpose and adopted widely (not to mention our own spec will be better as a result).

To find out more about what we're doing in this space or to learn more, check out this week's Matrix Live above!

Random MSC of the Week

The random MSC of the week is... MSC3381: Polls (mk II)!

Polls! They are useful for quickly gauging whether a group of people agree, or entirely disagree on a topic or choice. This is an MSC with a fairly long history, but has received experimental implementation in a small number of Matrix clients. The concept uses Extensible Events, and there are plans to rewrite it off the back of changes in MSC1767 (extensible events). But for now, it works and is a fun feature.

It's likely worth waiting for the rewrite before commenting on the MSC with detailed changes, but otherwise feel free to have a read to see how it currently works!

Dept of Servers 🏢

Feta (website)

geoffledak announces

Feta is a Matrix server distribution for the Raspberry Pi 3 and 4.

It is a an operating system image, based on Raspberry Pi OS Lite and includes the Matrix Synapse server, a self-hosted Element client, Postgres database, and it generates an SSL certificate for your domain using Certbot. The coturn TURN server is also included so voice and video calls work without any additional configuration.

The provided setup script will have your server up and running in a matter of minutes.

All you need to do is configure your DNS settings for your domain, forward some ports through your router, and boot up your Raspberry Pi. Once setup is complete, enjoy your new Matrix server! Synapse, Element, Postgres, coturn, and federation are all preconfigured for you.

Visit https://www.feta.bz/ to download and get more info.

Head on over to #feta:matrix.org for discussion and updates!

Telodendria (website)

An open source Matrix homeserver implementation written from scratch in ANSI C and designed to be lightweight and simple, yet functional

Jordan Bancino says

  • Donations: Both recurring and one-time donations are now accepted via LiberaPay and Stripe, respectively—GitHub Sponsors is hopefully coming soon. All funds will go directly to infrastructure and development labor. You can find the donate links on the website, and the GitHub mirror.
  • Memory/Network Improvements: Another week brings another round of memory and socket handling improvements.
  • Patch Submission: It's now easier than ever to contribute to Telodendria thanks to the new send-patch script. Submitting your changes for review is now only a single command.
  • Newsletter: Catch the full-length newsletter in #telodendria-newsletter:bancino.net.

Synapse (website)

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

squah says

Synapse 1.71.0 has been released! It contains the usual round of bugfixes and performance improvements, plus some new features. Notably, Synapse now supports:

  • back-channel logouts from OpenID Connect providers.
  • Postgres and SQLite full-text search operators in search queries.
  • MSC3664, push rules for relations.

Server administrators should be aware that:

  • legacy Prometheus metric names are now disabled by default, and will be removed altogether in Synapse 1.73.0. If not already done, server administrators should update their dashboards and alerting rules to avoid using the deprecated metric names.
  • Synapse 1.71.0 will be the last release to support PostgreSQL 10. Server administrators are encouraged to upgrade their PostgreSQL servers before the next release, if needed.

You can read more about v1.71.0 here: https://github.com/matrix-org/synapse/releases

In the mean time, the team has been working on the remaining parts of faster room joins.

Dept of Bridges 🌉

Postmoogle (website)

An Email to Matrix bridge. 1 room = 1 mailbox.

Aine announces

Postmoogle vUnreleased is here!

Yep, no pinned release yet, but there are some exciting features in the main branch (latest docker image):

multi-domain support!

You can have one main email domain (eg: the-etke.cc) and multiple additional domains that will be used as aliases (not-etke.cc, example.com), so you can get more spam to the [email protected], [email protected] and [email protected] at the same time!

bridged thread replies!

the last planned feature of the roadmap: send reply (reply-to or thread reply) to an email message in the matrix room and it will automatically set all magic stuff (In-Reply-To header, subject with Re: %original message's subject%, etc) and send email. It's pretty rough implementation, so feedback is appreciated!

Source code and say hi in the #postmoogle:etke.cc room

Dept of Clients 📱

Hydrogen (website)

Hydrogen is a lightweight matrix client with legacy and mobile browser support

Midhun says

Released v0.3.4 (and v0.3.3) with a join room UI and lots of bug fixes! Special thanks to Isaiah Becker-Mayer for his numerous typescript PRs!

Some of the fixes are for:

  • an error that can stop sync
  • an issue where hydrogen did not verify senders of room keys!
  • message verification not working in rooms where we haven't sent a message yet

Element Web/Desktop (website)

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

kittykat announces

  • 1.11.14 is out, with many improvements to threads!
  • This week, we fixed some issues, including a bug with media uploads

In labs (you can enable labs features in settings on develop.element.io or on Nightly):

  • We’ve added more functionality to the rich text editor, it’s catching up slowly with the basic composer
  • Voice broadcast also has a few new tricks up its sleeve, including improvements to pre-recording and message length

Element iOS (website)

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

Ștefan says

  • We have been working hard on improving the Element experience and to that extend we have fixed some crashes, squashed timeline layout issues, improved the device manager and the new rich text editor
  • Work is also continuing on thread notifications and the new crypto frameworks
  • ElementX on the other hand received support for offline logins, message editing, video and encrypted messages in the timeline and a brand new underlying navigation mechanism

Element Android (website)

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

benoit reports

  • Element Android 1.5.7 has been pushed to production on the PlayStore and should also be available for F-Droid users soon. This version fixes the issue when sharing items to the app, and also fixes the regression observed in 1.5.6 (before it reaches production!) during the first sync with the server.
  • We are making progress on ElementX, which is a new client using the Matrix Rust SDK and Jetpack Compose. This app is now able to display a timeline and send messages to a room using the wysiwyg composer.

Dept of SDKs and Frameworks 🧰

Trixnity (website)

Multiplatform Kotlin SDK for Matrix

Benedict announces

We released Trixnity 3.0.0-beta3, which supports the matrix spec 1.4 and new relation types: reply (without fallback), replace, thread (basic support, no separate timelines or client aggregations yet).

simplematrixbotlib (website)

simplematrixbotlib is an easy to use bot library for the Matrix ecosystem written in Python and based on matrix-nio.

imbev reports

Version 2.8.0 released!

This version brings a few improvements.

The sending of video messages has been added. The following handler will send a video after any message from another user:

async def example(room, message):
    match = botlib.MessageMatch(room, message, bot)
    example_video="./videos/example.mp4"
    if match.is_not_from_this_bot():
        await bot.api.send_video_message(
            room_id=room.room_id, 
            video_filepath=example_video)

Thanks to moanos and HarHarLinks, there are improvements to the handling of device ids.

Join us in the Matrix room at https://matrix.to/#/#simplematrixbotlib:matrix.org or the Git repository at https://codeberg.org/imbev/simplematrixbotlib !

Version 3.0 coming soon!

Ruma (website)

A set of Rust library crates for working with the Matrix protocol. Ruma’s approach to Matrix emphasizes correctness, security, stability and performance.

Jonas Platte announces

Since our last update in June (yeah, sorry...), we released Ruma 0.7.0 and a few patch releases including all of the following and more:

  • Support for refresh tokens (MSC2918 / Matrix 1.4)
  • Unstable support for discovering an OpenID Connect Server (MSC2965)
  • Unstable support for private read receipts
  • Lots of API refinements, like renaming AnyRoomEvent to AnyTimelineEvent
  • Support for Room Version 10
  • Unstable support for sliding sync

Since this release was released back in September, a bunch of things have also happened that are not released yet:

  • Many features were moved out of unstable feature flags because they were stabilized in Matrix 1.4
  • We made message construction easier than ever with improvements to markdown detection and improvements to reply and edit creation
  • We refactored and extended the push notification code
  • We are about to conclude a massive refactoring that should make our codebase look less strange if you are familiar with Rust, and could help compile times as well

matrix-rust-sdk (website)

Next-gen crypto-included SDK for developing Clients, Bots and Appservices; written in Rust with bindings for Node, Swift and WASM

ben announces

This week has seen important strives forward on sliding sync, which now has a PR up for offline support and the new timeline API, with some initial unittests and video messages support merged and support for file messages coming up. On the FFI, we now have support for logging in Android and work on moving the iOS binding scripts into our internal xtask cli.

As usual a lot of work is been going in the background without any visible, tangible outcome yet. On one side we are making great progress on getting a first async-prototype for uniffi with python working, on the other we have been profiling the sdk on iOS mobile devices for its memory footprint - which is a major blocker for notification support.

️👉 Wanna hack on matrix rust? Go check out our help wanted tagged issues and join our matrix channel at Matrix Rust SDK.

Dept of Events and Talks 🗣️

FOSDEM

Thib announces

There will be a Matrix Devroom at FOSDEM next February 🎉 We will issue a CfP very soon™

Dept of Interesting Projects 🛰️

Matrix Plays GameBoy games

jaller94 reports

Using this Lua script and NodeJS bot, you can remotely control any GameBoy (Classic + Color + Advance) game using the mGBA emulator. Invite some friends to the Matrix room and everyone can control the game at once. Yes, the project name is a reference to the famous "Twitch Plays Pokémon" stream which has 1000s of people complete Pokémon games together just by typing into a chat.

This is a bot and does not need an AppService registration.

https://github.com/jaller94/matrix-plays-pokemon

Disclaimer: This is a hobby project of mine. It is neither associated with nor endorsed by my employer or Nintendo. The project does not contain ROMs or other non-free assets.

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
1babel.sh350
2nognu.de409
3trygve.me548
4maescool.be623
5keks.club630
6shortestpath.dev640.5
7willian.wang686
8rom4nik.pl775
9alemann.dev840.5
10babel1.eu898

#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
1babel.sh130
2dendrite.matrix.org185
3kumma.juttu.asia219
4rustybever.be327.5
5forlorn.day511
6frai.se606.5
7matrix.milkte.ch1078
8babel1.eu1243
9willian.wang36298
10jacksonchen666.com236505

That's all I know

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

This Week in Matrix 2022-11-04

04.11.2022 19:27 — This Week in Matrix Thib

Matrix Live

Dept of Spec 📜

Andrew Morgan (anoa) says

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

New MSCs:

MSCs in Final Comment Period:

Accepted MSCs:

Closed MSCs:

Spec Updates

This week we've been continuing our mission to define Matrix as the interoperable standard for instant messaging! With many of our discussions expected to happen next week in this area, we've prepared some drafts for the wider community to review (with even more on the way!). With MSC3923, we're asking for feedback on whether people think the approach is something that could work for Matrix, though there is a cautionary note that there's a lot of TODOs to fill still.

We hope to have even more news next week, but as a reminder: The IETF process is fairly slow-moving as it takes a lot of time to get through the different stages. Keep an eye on MSCs tagged "IETF" or "MIMI" - or watch this space - for updates on how it's going 🙂

Random MSC of the Week

The random MSC of the week is... MSC3911: Linking media to events!

This MSC attempts to be an addition to authenticated media in matrix (specifically MSC3916) where successful authentication would also be conditioned on whether or not the user was able to view an associated event in a Matrix room. In plain english, that means that if the media was sent in a room, then you'd need to be in that room to be able to see the media (even if you tried to load the media outside of a matrix client). This change helps address some concerns about media leaking outside of the room it was sent. It also opens up possibilities to delete media if all associated events have been redacted.

Check it out if you're interested in advancing media in Matrix!

Dept of Servers 🏢

Telodendria (website)

An open source Matrix homeserver implementation written from scratch in ANSI C and designed to be lightweight and simple, yet functional

Jordan Bancino reports

Telodendria is moving along slowly but steadily. Here are a few brief things to note for this week:

  • GitHub: There's now a read-only Git mirror of the source code hosted on GitHub, which you can browse online, or clone if you want to do local work with it.
  • Network & Memory Improvements: I did a lot of work with my debugger this week and made a number of network and memory improvements that make Telodendria much more stable and efficient.
  • Data API: I just have begun writing code for persisting data and caching it. At the current pace, I'd expect to see that done around the end of this year.
  • Get Involved: If you want to speed up development, I'm happy to delegate any of the tasks in TODO.txt to you.
  • Matrix: As a reminder, Telodendria is organized entirely on Matrix at #telodendria:bancino.net. There you'll find a number of rooms for various purposes, including submitting patches, discussing Telodendria, and digesting the official newsletter. Feel free to stop by, even if it's just to say hi and express your interest in the project.

Synapse (website)

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

Shay reports

Welcome to another Friday! Here in Synapse-land we have been hard at work on this week's release candidate: v1.71.0rc2. It contains bugfixes, a few new features, and continued work on speeding up Synapse. Some notable elements are:

  • Legacy Prometheus metric names are now disabled by default, and will be removed altogether in Synapse 1.73.0. If not already done, server administrators should update their dashboards and alerting rules to avoid using the deprecated metric names.

  • Synapse now supports back-channel logouts from OpenID Connect providers.

  • Synapse now supports use of Postgres and SQLlite full-text search operators in search queries.

  • Synapse now implement MSC3664, Pushrules for relations.

You can read more about v1.71.0rc2 here: https://github.com/matrix-org/synapse/releases

Swiclops (website)

A Matrix user-interactive authentication (UIA) server

cvwright announces

Announcing the first alpha release of Swiclops, a server that handles authentication, registration, and other user management tasks for a Matrix homeserver like Synapse.

Swiclops can be configured to provide user-interactive authentication (UIA) on the Matrix /login endpoint, similar to MSC2835. This opens up many exciting possibilities for the future, including:

  • Requiring acceptance of the latest terms of service at login
  • Multi-stage authentication protocols, such as WebAuthn or PassKeys, or various password-authenticated key exchange (PAKE) protocols
  • Two-factor authentication

Authentication Modules

  • MSC3231 Registration Tokens
  • Token-based email validation
  • Cryptographic password-based login that does not expose users passwords to the server
  • Legacy password auth (ie m.login.password)
  • Terms of service
  • (Coming soon!) Support for registration with paid subscriptions via the Apple App Store and Google Play Store
  • (Coming soon!) Support for Apple FaceID and TouchID

Source Code

Swiclops release v0.1.0

Installation

The easiest way to install Swiclops is by using Ansible and Docker. We have created an Ansible role for it in a fork of the popular matrix-docker-ansible-deploy playbook.

Dendrite (website)

Second generation Matrix homeserver

neilalexander says

We wouldn't ordinarily make so many releases in one week, but we've been quite busy! Instead of including the entire set of changelogs, please see the releases below which have more details about what's changed:

  • Version 0.10.7 today, which fixes a variety of things in /sync amongst other things
  • Version 0.10.6 on Tuesday, which optimises history visibility, improves E2EE and tweaks some state resolution code
  • Version 0.10.5 on Monday, which adds hCaptcha support, improves E2EE and a range of other fixes

If you have a Dendrite homeserver, staying up-to-date is highly recommended so please upgrade when you can. Otherwise, if you want to play with Dendrite without having to set up your own infrastructure, the dendrite.matrix.org homeserver is open for registration (upon completion of a CAPTCHA, so you may need to register using Element Web).

As always, please feel free to join us in #dendrite:matrix.org for related discussion.

Homeserver Deployment 📥️

Ananace announces

This week has been quite calm, only a single update to my Helm Charts; element-web being bumped to 1.11.13

Dept of Clients 📱

SmallTalk (website)

Minimal Android messenger powered by Matrix

adam says

Quick update from SmallTalk - a tiny native android client, currently in BETA

  • Fullscreen zoomable image viewer
  • Muting room notifications
  • Rich text formatting (very WIP)
  • Bug fixes around Android 13 permissions and being unable to login on non synapse homeservers

There's been an effort to make the app chat agnostic through the abstraction of a chat engine, this could allow different chat protocols to be used or simply swap out matrix SDK implementations (like the matrix-rust-sdk!)

More information over at Github & #small-talk

Quadrix (website)

A Minimal, simple, multi-platform chat client for the Matrix protocol.

JFA announces

Quadrix v1.4.5 has been released and is available for mobiles and desktops in the respective app stores (Google Play, App Store, Mac App Store, Microsoft, Snap Store, Flathub).

The main improvement in this release is the added support for the .well-known API call, which allows to register and login on homeservers using a base domain URL.

Also, the displaying of redacted and edited messages has been improved.

I started testing Quadrix on the Conduit server implementation (thanks to @timo:conduit.rs for a test account on conduit.rs) and noticed right away some major issues. A few fixes are already included in this release.

Finally, for PinePhone users, the Ozone/Wayland switch has now been disabled in the flatpak build for Phosh, because of a compatibility issue between Electron and the on-screen keyboard. On Phosh, the app now runs in XWayland mode (it looks blurry) but at least the OSK works.

Please leave feedback/comments at #quadrix:matrix.org or in the issues at https://github.com/alariej/quadrix (stars welcome :-)

Nheko (website)

Desktop client for Matrix using Qt and C++17.

red_sky (nheko.im) reports

You can now respond to notifications on macOS in nheko! These will be sent as a rich reply. No need to open up the main client any more to respond to folks.

Nico says

As already mentioned, the Apple Silicon builds are now properly packaged.

Additionally we fixed the pagination issues in our search and you should now be able to find more messages. As part of that we also optimized a few database queries again to reduce disk load when running Nheko (which became more noticeable after we enabled some durability flags on the database last week).

There have also been more fixes to the pushrules code. Test code now outnumbers the actual implementation by 4:1. As an additional feature, we do highlight messages marked as "highlight" via a pushrule (i.e. when someone mentions you) in the timeline by adding a red outline.

As part of the push work I also implemented and fixed a few things in Synapse related to pushrules. If replies are not highlighted for you currently, it might be this bug. A longer term fix will be MSC3664, which I also implemented. I also fixed some compatibility issues when sending pushrules to clients after the recent Synapse refactoring.

Element Web/Desktop (website)

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

Danielle reports

  • This week we’ve released a hotfix - there’s important changes in this one so please update when you can.
  • The team is starting to look at improving our Matrix.to links and flow.
  • There will be some opportunities to contribute here, so if you’re interested keep your eyes on the Help Wanted tag in GitHub
  • Following our recent research into Notifications we’re starting to build a picture of the things that would be useful to change. We need clearer definitions around defaults, and flexibility in notifications.

In labs (you can enable labs features in settings on develop.element.io or on Nightly):

Element iOS (website)

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

Ștefan reports

  • Version 1.9.10 is ready for release and brings a handful of bug fixes throughout the app
  • The rich text editor now has voice message support as well as other updates and performance enhancements
  • We’ve been making good progress on ElementX push notification support and we’re getting close to a working solution
  • ElementX also gained a new timeline scroll mechanism and improved concurrency
  • We have also been working on improving thread notification counts and read receipts
  • Work continues on the device manager
  • This week we also saw the first build of the ElementR iOS app, introducing Rust side crypto support to the existing codebase

Element Android (website)

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

Danielle announces

  • This week's release has a new media picker when you’re choosing to upload something to the timeline.
  • We’ve also been working on multi-select in the new device manager
  • And… Fixing the share actions in the share dialog
  • In Labs; We’re building loading and pagination improvements for Threads.

Dept of Non Chat Clients 🎛️

Circles (website)

E2E encrypted social networking built on Matrix. Safe, private sharing for your friends, family, and community.

cvwright says

Circles is a secure, E2E encrypted social network app built on Matrix. We have a new build (v1.0.6) of our Android beta today.

Circles v1.0.6 is now available from our beta F-Droid repo, so F-Droid users' clients should start picking it up over the next day or so. Updates in this release include:

  • A new expandable view for long text posts
  • Animated .webp support
  • Password strength estimation (using zxcvbn)
  • Fixed scroll on emoji dialog
  • Fixed crash on take photo/video

Adventurous users can also install the latest build by grabbing the APK directly from our repo.

Interested users can also join us in #circles:matrix.org to get the latest news about the app.

Dept of Widgets 🧩

Oliver Sand says

Hello from Nordeck 👋 This week we finally released the first of our widgets as open source: It's the matrix-poll-widget.

The widget allows to conduct polls in Matrix rooms. But unlike MSC3381 it is designed for more complex scenarios, like polls with multiple parties in a council. You have full control over your data, as it's stored in your Matrix room. It is currently in use in the German public sector. The widget is built using TypeScript, React, and the matrix-widget-api. We also extracted a thin layer of code that is shared between our widgets into our matrix-widget-toolkit, another project we made open source recently. Our remaining widgets will follow in the next couple of weeks. We keep you updated here.

If you have any questions, reach out to us at our #nordeck:matrix.org.

Dept of VoIP 🤙

Element Call (website)

Native Decentralised End-to-end Encrypted Group Calls in Matrix, as a standalone web app

Florian Heese says

Hello from the VoIP team,

We've just released Element Call v0.3.2 which has a whole collection of new things. Screen sharing will now work in embedded mode on desktop and it will now show tiles for people it's trying to connect to, so it should make it easier to see what's going wrong in a call. Please continue rageshaking if you see failures: ideally immediately after the failure, from both sides, and please describe what went wrong in as much detail as you can!

Dept of SDKs and Frameworks 🧰

Trixnity (website)

Multiplatform Kotlin SDK for Matrix

Benedict reports

Trixnity release 3.0.0-beta1

We released Trixnity 3.0.0-beta1. This is a major version with many (breaking) changes. We will wait for the 3.0.0 release until we have implemented the Matrix 1.4 spec changes (m.replace will be really hacky due to a - in my opinion - spec bug).

Support realm database

We now support realm as a database backend. This allows you to use Trixnity on iOS with a persistent database.

Added exchangeable MediaStore

Media is not saved into the database anymore, but in an exchangeable MediaStore. It is also streamed, so you can download and upload large files. There is trixnity-client-media-okio for a multiplatform file based implementation.

Improved StateFlowCache

The StateFlowCache, which basically is a reactive cache on top of an arbitrary database does not need a CoroutineScope parameter for any read or write operation anymore. It was needed to react to the lifecycle of the consumer, so that not used data could be removed from the cache. This was really error prone, because if the consumer passed a wrong CoroutineScope with a too long lifecycle, the cache could grow unlimited. We figured out to solve this with Kotlin Flows, so everything is lazy and the lifecycle can be determined from the Flow consumer!

We also fixed a long standing bug, which could cause to return a Flow, which does not emit updated values.

Power level calculation support

We implemented some functions to calculate power levels (e. g. canBanUser(...)).

Naming change of classes and interfaces

We changed the naming of all interfaces from IXyz to Xyz and the implementation of it from Xyz to XyzImpl

Server-API improvements

We made some improvements to the various server APIs to allow implementing proxies filtering requests and responses.

matrix-rust-sdk (website)

Next-gen crypto-included SDK for developing Clients, Bots and Appservices; written in Rust with bindings for Node, Swift and WASM

ben announces

👉️ Wanna hack on matrix rust? Go check out our help wanted tagged issues and join our matrix channel at Matrix Rust SDK.

Dept of Events and Talks 🗣️

Salt reports

SeaGL (the Seattle GNU/Linux Conference) will be holding our tenth annual (third virtual) conference online November 4–5, powered by Matrix and our custom bot, Patch. Join this free—as in freedom and tea—volunteer powered grassroots technical summit, no registration required. This year's theme is "Hang Ten”, in honor of our tenth year!

Keynote speakers include:

  • Aeva Black
  • Ernie Smith
  • Lorena Mesa
  • Sumana Harihareswara

We have a packed lineup of free / libre / open source talks. There are also a number of fun social activities providing opportunities to mingle with your fellow participants. Additional information on the conference and how to attend is available on our blog.

As previously mentioned, we've been refining the virtual conference experience for three years and would gladly welcome new wings and beaks to our all-volunteer staff!

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
1matrix.org402.5
2nognu.de488
3maescool.be587.5
4seymour.family751.5
5zemos.net1062
6mailstation.de2588
7kittenface.studio3202
8roeckx.be3374.5
9cezeri.tech3884
10diasp.in4767

#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.matrix.org138.5
2matrix.sum7.eu143.5
3willian.wang410.5
4forlorn.day714
5matrix.milkte.ch2024
6frai.se10978.5

That's all I know

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

This Week in Matrix 2022-10-28

28.10.2022 19:07 — This Week in Matrix Thib

Matrix Live

Dept of Spec 📜

Andrew Morgan (anoa) says

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

New MSCs:

MSCs in Final Comment Period:

Merged MSCs:

Closed MSCs:

Spec Updates

MSC3917: Cryptographically Constrained Room Membership is rather interesting. It aims to make room membership in a room cryptographically verifiable via a "Master Signing Key" that's controlled by users. This is in addition to the homeserver signatures typically placed on events in Matrix. The purpose is to prevent a homeserver from being able to lie about your membership in a room. While not the end-all-be-all solution to this particular problem, it's certainly a well-reasoned take.

Matrix @ IETF 115

This last week (well, last few months), the Spec Core Team has been working on defining Matrix as the standard for interoperable messaging at the IETF level, under MIMI. The current drafts can be found in these places:

  • Matrix as a transport for MIMI: https://turt2live.github.io/ietf-mimi-matrix-transport/draft-ralston-mimi-matrix-transport.html (MSC3918)
  • Matrix as a message format for MIMI: https://turt2live.github.io/ietf-mimi-matrix-message-format/draft-ralston-mimi-matrix-message-format.html (MSC3919)

We'll be publishing these as proper Internet-Drafts once submissions open back up at IETF in a week or so. In the meantime, if you have any feedback then please let us know on the MSCs 🙂

Random MSC of the Week

The random MSC of the week is... MSC3032: Thoughts on updating presence!

A loose collection of thoughts on how presence (the ability to see whether people are online/office) may be improved at the Matrix protocol level, and how it could be integrated into a profiles-as-rooms feature (MSC1769). Check it out if presence is something you're interested in!

TravisR explains

A soon-to-be working group within the IETF called "More Instant Messaging Interoperability" (MIMI) is aiming to solve, well, messaging interoperability for primarily reasons of the EU Digital Markets Act (DMA). The DMA requires "gatekeepers" to interop with other platforms while maintaining the same level of encryption, and we think Matrix is the perfect fit for this use-case. While we'd likely be saying goodbye to Olm and Megolm in the process, we'd be saying hello to Messaging Layer Security (MLS) and its decentralized counterpart DMLS - a good thing in our books, at the moment.

In terms of what we've done this week in publishing our drafts (and soon to be real Internet-Drafts under the IETF process), we're formally proposing that Matrix's Federation API and event schema be used for messaging interoperability. Our very own Matrix spec process will be impacted by this sort of direction as it makes it (theoretically) "harder" to change details of the spec. To avoid it being extraordinarily difficult, we'll be nailing down some of the edge cases of the Federation API and event format ( 👀 extensible events) naturally as we work closer and closer to an RFC series. We'll also be making some architectural changes to our specification itself to better support half of it being in the IETF domain, like defining room versions more clearly and splitting non-core spec out of the way. It's worth noting that this is a relatively slow process as we work towards the deadline of DMA a few years from now, but the changes might be felt by the ecosystem on a more rapid scale.

At the moment, we're planning to attend IETF 115 to help keep Matrix on the map for MIMI and raise our feedback about the proposed working group charter. Discussions about whether Matrix is the correct fit are already ongoing, but expected to increase as we get closer to IETF 116 next quarter. We were also already at IETF 114 a few months ago where many of these conversations started.

Future work is currently expected to come through under my name, as have the current drafts (both with obvious input from Matthew as project lead). Watching this space and the spec process for updates is best 🙂

Dash User-Contributed Docset

ChristianP says

The Matrix Spec 1.4 is now available as a Docset for the Dash offline documentation reader. You can install this docset from Dash's Preferences > Downloads > User Contributed. This docset will likely be kept up-to-date by me. This is not an official distribution channel of the Matrix Spec team – things may break.

If you're using the open-source reader Zeal, you'll have to install new versions manually: https://gitlab.com/jaller94/dash-matrix-spec#use-with-zeal

Dept of Servers 🏢

Telodendria (website)

Jordan Bancino says

Hi everyone, I'm working on a little Matrix project called Telodendria.

Telodendria is eventually going to be another homeserver implementation. It isn't one yet; I'm still in the very early stages of prototyping it, and writing some boilerplate code, but I've been encouraged to throw the project out there for more exposure, so here we are!

Telodendria is written in ANSI C, will use a custom flat-file database, and relies only on a POSIX system to be built and run. It won't pull in any dependencies; as much as possible will be written from scratch, including the HTTP stack, JSON parser, and any other baseline stuff a Matrix homeserver needs.

Why?

One of the goals is simply to build a useful homeserver, but also just to learn about the inner workings of Matrix and the technology that supports it, as well as to have a bit of fun in the process.

At this point we've got Synapse, Dendrite, Conduit, Construct, and a few other great projects. So you're probably asking, What practical reasons are there to build another homeserver? The best answer to that is in Telodendria's manual, but what it really comes down to is being portable and lightweight. It'd be cool to have a Matrix homeserver server that can run anywhere, but specifically targets the more obscure operating systems like the BSDs. Additionally, it should be light enough to perform well on Raspberry Pis, routers, cheap VPSs, and other low-power and low-storage devices that might not be as capable of running a full database plus a hefty Matrix homeserver.

For me personally, I just want a homeserver that feels like it belongs on OpenBSD and is capable of handling my use case without having to install any third-party packages. I'm a digital minimalist that wants to cut down on his software requirements, and Telodendria is one of the ways I've set out to do that.

Want to get involved?

There's definitely plenty of code and documentation to be written, so if you're looking for a challenge and believe in the project's philosophy, you're highly encouraged to get involved in whatever way you're able.

The development discussion happens entirely on Matrix. If you're unsure where to start, start by joining the project rooms listed in the manual. Do be sure to also check out main project website, which has a list of all the manual pages. The manual should contain much of the information you'll need to get started, but it's far from complete, so if you find the information to be insufficient, don't be afraid to ask questions in the rooms listed above.

Conduit (website)

Conduit is a simple, fast and reliable chat server powered by Matrix

Timo on Conduit ⚡️ announces

Great news! The FUTO organization selected me for a grant to sponsor me working on Conduit. I want to finally work on the big remaining issues like threads, backfilling, spaces and so on. Also keep an eye on the Conduit v0.5 release. It is almost done and contains many bug fixes. You can already try it out by compiling conduit-next.

Synapse (website)

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

dmr announces

A lot of the Synapse team are out at the moment; we have mostly been in maintenance mode, both for the project and the Matrix.org deployment. With that said: we released Synapse 1.70.0 on Tuesday followed by a 1.70.1 patch release today. Highlights include:

Thank you as ever to our community of contributors, server operators and users who've been involved in this release. We'll be cutting a release candidate for Synapse 1.71 on the upcoming Tuesday (1st November), aiming to release the week after (8th November).

As for this week: we've been testing Synapse against the recent Python 3.11 release, dealing wit h CI deprecations and working through our backlog of old PRs. Lots of small things to juggle!

Homeserver Deployment 📥️

Helm Chart (website)

Ananace announces

Since I happen to have a few free minutes this friday;

My Helm Charts continue to stay up-to-date, with element-web at 1.11.12 and matrix-synapse on 1.70.0 (though refer to #homeowners:matrix.org before updating)

Ananace reports

And another little update on my Helm Charts; matrix-synapse 1.70.1 is now available as well

Dept of Clients 📱

Nheko (website)

Desktop client for Matrix using Qt and C++17.

Nico announces

I guess the most exciting news is that the macOS M1 builds are now merged to master and will be available for the next release. Seems like those are even faster on macOS that the intel builds! (Time from launch to be able to send a message is about 1 or 2 seconds.) The builds are using the generous cirrus CI open-source offering, so thank you!

Another good news is that a fox fixed the upload widget sometimes breaking Nheko when trying to upload specific files on some platforms. Apart from that there were also minor fixes to room sorting in communities, performance fixes to the parent community links as well as work on enabling more warnings when developing Nheko (to ensure our code is better quality, more secure and less error prone).

If you want to find out more about Nheko, our official community is currently being set up at #community:nheko.im!

Element Web/Desktop (website)

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

Danielle says

  • Along with some bug fixes we’ve been adding more updates to some features currently in Labs!

    • Check out a newly improved Threads; with recent updates deployed, threads notifications should be much more reliable these days. We’ve still got more work to do but the improvements are great.
    • Video rooms and Element Call in the desktop version now supports screen sharing.
    • The rich text editor is also getting regular updates and expanded functionality.
  • In the pipeline for us over the next few weeks are improvements to notifications and matrix.to links.

Element iOS (website)

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

Ștefan announces

  • In order to enhance our ability to test before launch we’ve now got Nightly builds on ElementX iOS. Our internal testers are able to use the app for longer before we prep for release to the App Store and that will increase the quality of our product.
    • We’ve also made other improvements to our performance testing.
  • The composer has had a few upgrades recently - keep your eyes open for that and let us know what you think!
  • Work on voice broadcasting is moving ahead quickly
  • We’re working on signing in via QR code and other enhancements in this area.
  • And last but not least, ElementX is very close to getting e2e encryption support!

Element Android (website)

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

benoit announces

  • The new app layout has been out for a few weeks now and we’re keeping an eye on feedback and numbers. So far it seems like most people like it though we’ve heard great ideas about improvements we can make in the future. Keep it coming!
  • We’re working hard on increasing the test coverage in our app so that we have even more confidence in the app we’re pushing to the Play Store.
  • Under Labs, there’s some new features. Check out:
    • The new composer. It’s What You See Is What You Get and hopefully a lot more straight-forward to use!
    • There’s also a new way to manage your devices and notifications on different clients.

Dept of Non Chat Clients 🎛️

nheko-krunner (website)

A KRunner plugin to list joined rooms and possibly other things from nheko.

LorenDB says

I have updated nheko-krunner to work with the latest D-Bus API from nheko. There is no new release out yet, but expect to see a release (possibly with other cool things) after the next nheko release.

Circles (website)

E2E encrypted social networking built on Matrix. Safe, private sharing for your friends, family, and community.

cvwright reports

Happy Friday all! Once again we have a new build of the Circles Android app for your beta testing enjoyment.

Updates in this release (v1.0.5)

  • Renamed the app back to "Circles". Technically the proper name of the app is "FUTO Circles", but it will show up on your home screen as simply "Circles", similar to how Google Photos is "Photos" and Google Maps is "Maps". The Circuli name was too hard for most English speakers to pronounce, and it didn't solve our other issues with the name. "FUTO Circles" should do the trick.
  • We're keeping the Circuli name for our online service.
  • Added QR-code-based device verification.
  • Made registration tokens optional, i.e. it's up to the server whether to require them or not. Currently we do require registration tokens on our servers, and you can sign up with the token 0000-1111-2222-4444.

Dept of SDKs and Frameworks 🧰

matrix-rust-sdk (website)

Next-gen crypto-included SDK for developing Clients, Bots and Appservices; written in Rust with bindings for Node, Swift and WASM

ben announces

Long-awaited and with a bunch of final bug-fixes on the server side, this week eventually saw the merging of the sliding sync extensions, enabling e2ee and to-device message support via sliding-sync on main. With that, and some additional APIs on, a new Element-x with e2ee support was made available. A release that also features the latest work on the timeline API, which, too, has seen its fair share of progress this week - mainly internal fixes and debugging helpers.

As a result of the sliding sync work, just earlier today, an important PR was opened for jack-in, the experimental debugging TUI client based on matrix-rust-sdk (which we use for debugging sliding sync): now allowing you send (encrypted) messages, too.

Following last weeks announcement we also made the Rust-Sec public, indicating why we recommend upgrading to 0.6.1, which we released shortly prior.

Other than that, work has been progressed in the background on the pretty complex problem of async in uniffi and system-specific runners, namely libdispatch on ios rather than tokio, as well as work on uniff proc-macros.

️👉 Wanna hack on matrix rust? Go check out our help wanted tagged issues and join our matrix channel at Matrix Rust SDK.

libQuotient (website)

A Qt5 library to write cross-platform clients for Matrix

kitsune reports

A new beta for libQuotient 0.7 is out, with a few fixes and improvements across the board but especially in E2EE-related code. This one is still a bit too early for Linux packagers but we're steadily approaching the release. The release notes are available at a usual place: https://github.com/quotient-im/libQuotient/releases/tag/0.7-beta2

Dept of Events and Talks 🗣️

Matrix User Meetup Berlin

saces says

Next Matrix user meetup 2.11.2022, 8 pm @ c-base

Meet other matrix users, chat about Matrix, the rest, and everything else, discuss your Matrix ideas, sign each other in persona, and maybe spice the evening with a good mate or beer.

Also when the bbq is lit you may wish you brought your favorite item :)

Every first Wednesday of the month in the c-base at 8pm ('til the next pandemic).

Matrix room: #mumb:c-base.org

Dept of Interesting Projects 🛰️

Chatrix (website)

Matthew announces

Automattic look to be working on a wordpress plugin called Chatrix, forked from Element’s Chatterbox (in turn built on Hydrogen)… https://github.com/Automattic/chatrix-frontend

hg-dashboard (website)

thejhh announces

We published our example dashboard fullstack app at Github. It uses Matrix as one of the database options to save application's stored state -- and also contains sample configurations for multiple Matrix Home servers. The project is complete full stack sample project which can be used to kick start new projects. It has REST backend written in TypeScript using Spring Boot style API implementation, architecture copied from enterprise Java world to TypeScript. The frontend is implemented with ReactJS. It also has docker-compose configurations and a simple testing framework implemented.

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
1neko.dev318
2keks.club474
3alemann.dev531
4trygve.me532.5
5utzutzutz.net588
6justinruiter.nl680.5
7mozilla.org1290
8kittenface.studio1702
9rom4nik.pl1894
10matrix.cirk2.de2523

#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.matrix.org196.5
2kumma.juttu.asia244.5
3willian.wang479
4frai.se502.5
5grin.hu509.5
6conduit.hazmat.jacksonchen666.com522.5
7forlorn.day727
8rustybever.be879
9dendrite.s3cr3t.me1303
10valha.la1547

That's all I know

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

This Week in Matrix 2022-10-21

21.10.2022 19:33 — This Week in Matrix Thib
Last update: 21.10.2022 19:20

Matrix Live

This week

Dept of Status of Matrix 🌡️

Gwmngilfen reports

AnsibleFest 2022 happened this week, and the work the community has been doing with Matrix got quite some attention! We got a mention during the Day 1 Keynote (YouTube) and again during an interview with theCUBE.net. Both are worth watching 🙂

Thanks to the shoutout from Adam in the Keynote, we've had 40 new people join the #social:ansible.com room 🚀 and lots of interest in Matrix at the Fest Community Booth. Huge thanks to @maxamillion:one.ems.host and @cybette:ansible.im for their time! ❤️

Dept of Spec 📜

Andrew Morgan (anoa) says

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

New MSCs:

MSCs in Final Comment Period:

Closed MSCs:

Accepted MSCs:

  • No MSCs were accepted this week.

Spec Updates

The Spec Core Team are continuing to work on spec maintenance in the run up to Matrix v1.5 (due next month!). Again, if you'd like to help out with small fixes and corrections to the spec, feel free to take a look at the list of open spec clarification issues. Thank you!

Random MSC of the Week

The random MSC of the week is... MSC2700: Thumbnail requirements for the media repo!

This MSC has the goal of clarifying the mimetypes of media that a homeserver both MUST and SHOULD support thumbnailing for. The intention is to give clients a clearer picture of what file formats will receive a proper thumbnail before they are uploaded to the homeserver.

Comments on the MSC seem to suggest that the MSC as it stands does not completely solve the problem: while it does give clients an explicit list of supported mimetypes, the list is quite short. And the list of SHOULD mimetypes cannot be relied on.

The MSC also clarifies that encrypted media should always be uploaded with a mimetype of application/octet-stream, instead of the original media's mimetype, which seems like a welcome and uncontentious point. And finally, it defines 501 M_UNSUPPORTED to be returned instead of an internal server error on thumbnailing failure.

I believe the next step for this MSC is for the current threads to be incorporated into the text; so don't miss the threads when reading it!

Dept of Servers 🏢

Synapse (website)

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

Brendan Abolivier announces

This week we've released Synapse 1.69! It comes with improved caching tools for third-party modules, and support for a bunch of experimental features, such as thread-aware read receipts (MSC3771) and an approval flow for new registrations (MSC3866). As part of this release, we've also laid out the removal schedule for the long-deprecated legacy Prometheus metric names, and the generate_short_term_login_token module API method. Read all about it on the matrix.org blog: https://matrix.org/blog/2022/10/17/synapse-1-69-released

Another big thing in Synapse 1.69 is experimental support for faster remote room joins! You can read more about it on the blog: https://matrix.org/blog/2022/10/18/testing-faster-remote-room-joins but briefly, we are ready for server admins to begin testing, with some caveats. If you've read the post and feel confident, turn it on, give it a spin and let us know how it goes!

Alongside 1.69, we're also disclosing a moderate severity vulnerability that we fixed back in Synapse 1.62. If your deployment runs a Synapse version older than 1.62, and is openly federating, please update to a more recent version of Synapse at your earliest convenience. More info on this in advisory GHSA-jhjh-776m-4765 and CVE-2022-31152.

This week we've also released the first release candidate for Synapse 1.70 (1.70.0rc1). This release will include experimental support for thread-aware notifications (MSC3773) and filtering (MSC3874), improved validation, advertising support for Matrix 1.3 and 1.4, and the usual load of bugfixes and internal improvements. We're very grateful to anyone helping us make Synapse more stable by testing and running release candidates, and reporting bugs to the issue tracker and general feedback to #synapse:matrix.org 🙂

Dendrite (website)

Second generation Matrix homeserver

neilalexander announces

This week we released Dendrite 0.10.4 which contains the following features and fixes:

  • Various tables belonging to the user API will be renamed so that they are namespaced with the userapi_ prefix
    • Note that, after upgrading to this version, you should not revert to an older version of Dendrite as the database changes will not be reverted automatically
  • The backoff and retry behaviour in the federation API has been refactored and improved
  • Private read receipt support is now advertised in the client /versions endpoint
  • Private read receipts will now clear notification counts properly
  • A bug where a false leave membership transition was inserted into the timeline after accepting an invite has been fixed
  • Some panics caused by concurrent map writes in the key server have been fixed
  • The sync API now calculates membership transitions from state deltas more accurately
  • Transaction IDs are now scoped to endpoints, which should fix some bugs where transaction ID reuse could cause nonsensical cached responses from some endpoints
  • The length of the type, sender, state_key and room_id fields in events are now verified by number of bytes rather than codepoints after a spec clarification, reverting a change made in Dendrite 0.9.6

As always, please feel free to join us in #dendrite:matrix.org for more related discussion.

Dept of Bridges 🌉

matrix-hookshot (website)

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

Andrew F reports

matrix-hookshot 2.4.0 is here with yet more features!

Good news everyone. This release adds improved JIRA & GitHub event support. Here are some highlights:

  • Multiple JIRA connections may now be added to a single room (as well as across multiple rooms).
  • JIRA widgets now properly support adding listeners for issue creation -- a small bug prevented it from working last release.
  • JIRA widgets now support adding listeners for issue updates. This was technically already supported, but it wasn't shown in the widget -- now it's there for the world to see.
  • JIRA connections now support version events. So far, this includes version creation, updates, and releases.
  • GitHub connections now support workflow completion events.
  • The stability of GitHub login sessions has been improved overall.

As usual, feel free to join #hookshot:half-shot.uk for setup advice & feedback.

Dept of Clients 📱

Nheko (website)

Desktop client for Matrix using Qt and C++17.

red_sky (nheko.im) says

Nheko now has native builds for Apple silicon macs! No need for Rosetta! If you have an Apple silicon device, please check out the latest nheko nightlies so we can get feedback on how it’s working!

Element Web/Desktop (website)

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

Danielle reports

  • The new release candidate is available in staging ahead of the release early next week. Try it out!
    • The new WYSIWYG (What You See Is What You Get) composer is available in Labs soon; It’s in active development and we’ll be adding more functionality soon.
  • Notifications research is near conclusion; We trawled hundreds of GitHub issues, discussions, looked at competitors and interviewed some users. We’re really excited to bring improvements to your experience.
  • We’re beginning work on integrating the Rust matrix_sdk_crypto into Element Web (to replace the existing libolm-based implementation of encryption)

In labs (you can enable labs features in settings on develop.element.io or on Nightly):

  • Threads is making great progress and we’re hoping you’ll start seeing these improvements in the next few weeks! Keep your eyes open for updates.

Element iOS (website)

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

Manu announces

  • Element-iOS RC 1.9.9 available on the public TestFlight with under labs settings:
  • New device manager
  • WYSIWYG editor
  • Voice Broadcast is on heavy development. We have recording and playback working.
  • ElementX work is resumed with full support of iOS16 and XCode14

Element Android (website)

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

benoit announces

  • Release candidate 1.5.4 is available for the tester on the PlayStore. It includes a lot of new features, most of them behind lab flags: new device management, new WYSIWYG editor, Voice broadcast, etc. Also the application is now targeting Android 13 devices. Please refer to the full changelog for more details.
  • We are working to migrate from the Realm Java SDK to the Realm Kotlin SDK. This is a big change, which should simplify developers' lives, but also reduce the number of crashes related to Realm.

Element (website)

Everything related to Element but not strictly bound to a client

Danielle reports

Community testing

  • Help us test the WYSIWYG editor and other new features at 4pm on Wednesday 26th Oct
  • For more info on our next testing sessions (sync or async), you can join us at #element-community-testing:matrix.org!

Dept of Non Chat Clients 🎛️

Populus Viewer (website)

A Social Annotation Tool Powered by Matrix

gleachkr says

It's been a little while since our last update, but Populus development continues! In addition to the usual bugfixes, we've made a number of ergonomics improvements suggested by the experiences of other users at my university. These include:

  1. Buttons for message actions (react, redact, reply, and so on) are now displayed in a way that doesn't overlap with sender names

  2. Avatar images for discussions can now up uploaded simultaneously with discussion creation.

  3. Older collections of discussions can be "archived" using m.lowpriority

  4. Moar tootips!

We've also made some minor graphical improvements: loading messages are now indicated with a nice low-contrast SVG hint, rather than the literal-minded "loading message" message. Some icons have been improved, and the bartab (lines in the margins) display logic has been improved. And, we're now on the latest JS-SDK version.

Dept of VoIP 🤙

Element Call (website)

Native Decentralised End-to-end Encrypted Group Calls in Matrix, as a standalone web app

Florian Heese says

👋 Hello form the VoIP team. This week we have a bunch of news. 1) We released Element Call version 0.3 with a lot of UX polishing including i18n (thx to the great community) and paving the way for a proper 2) integration into Element Web and Desktop. If you want to give it a try:

  • Use https://develop.element.io or Element Desktop Nightly
  • Enable in Settings -> Labs -> Calls
    • Element Call Videorooms
    • New group call experience
  • Now you can create
    • A new video room backed by Element Call or
    • Enable Calls in the Rooms settings of a room and just press the regular call button
  1. And by the way we also added screen-sharing with Element Desktop Nightly using the embedded Element Call.

Dept of SDKs and Frameworks 🧰

matrix-rust-sdk (website)

Next-gen crypto-included SDK for developing Clients, Bots and Appservices; written in Rust with bindings for Node, Swift and WASM

ben announces

While the sliding sync extensions are being tested and bugs found during the tests reported and fixed, the FFI for the new timeline API has been approved and merged this week. The third big chunk that was merged this week, was a refactoring to Replace QR with SAS verification and the yet to be merged signaling for SAS verification.

While forcing the (not clearly spec'ed) sending of authentication tokens for get_profile and get_display_name, we've also noticed a bug where we sometimes, unintentionally include the access_token in debug output - and fixed that. We will be providing a patch release and RustSec about this soon.

Other than that, this week has seen many smaller fixes, like making the store-setters on client-builder actually adhere to the builder pattern or removing string from storerrors, and improvements like the API to set local trust or setting workspace wide dependencies for uniffi and others.

👉 Wanna hack on matrix rust? Go check out our help wanted tagged issues and join our matrix channel at Matrix Rust SDK.

Dept of Events and Talks 🗣️

cos announces

Zoo 2022, a Commodore 64 Demoparty has decided to bridge it's various chat channels via Matrix. You can join via Matrix, Discord, IRC or Telegram and participate in the party programme. The actual party will be held 28.-30.10 in Orivesi, Finland. https://2022.zooparty.org/

Matrix in the News 📰

Matthew says

our friends at Bluesky announced their application protocol for building decentralised social media called AT. While not based on Matrix, there are some parallels, and some stuff we may be able to steal get inspiration from around portable identity :) https://blueskyweb.xyz/blog/10-18-2022-the-at-protocol

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
1nognu.de351
2maescool.be453
3mindlesstux.com939
4kittenface.studio1079
5alemann.dev1251
6zemos.net1399
7rom4nik.pl1581
8kit.edu2082
9projectsegfau.lt2292
10valha.la2639

#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.neilalexander.dev196
2dendrite.matrix.org223.5
3kumma.juttu.asia273.5
4rustybever.be496.5
5dendrite.s3cr3t.me655.5
6forlorn.day1297
7frai.se9140
8zemos.net15335

That's all I know

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