This Week in Matrix

279 posts tagged with "This Week in Matrix" (See all Category)

Atom Feed

This Week in Matrix 2023-09-29

29.09.2023 00:00 — This Week in Matrix Thib

Matrix Live

Dept of Servers 🏢

Dendrite (website)

Second generation Matrix homeserver

Devon Dmytro reports

This week we released v0.13.3. Here are a few of the highlights:

  • Room version 11 is now supported
  • Sliding Sync proxy can be configured in the /.well-known/matrix/client response
  • Invitations are now correctly pushed to devices
  • A bug which could result in the corruption of m.direct account data has been fixed
  • Clients can request the federation event_format when creating filters
  • Many under the hood improvements for MSC4014: Pseudonymous Identities

...and a whole lot more. Check out the release notes for the full set of changes! As always, feel free to stop by #dendrite:matrix.org to join in on the discussion and if you encounter a bug make sure to report it here.

Dept of Bridges 🌉

Postmoogle (website)

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

Aine says

Introducing Postmoogle v0.9.16: Bridging Email and Matrix Like Never Before!

We at etke.cc are delighted to announce the release of Postmoogle v0.9.16, your trusted bridge for seamlessly connecting the worlds of email and Matrix. In this update, we've introduced a host of new features and enhancements to elevate your Matrix email experience.

Here's what's new in this release:

  1. Emoji Support: Express yourself with emojis! You can now react to emails with the ⛔️,🛑, or 🚫 emojis to add the sender to your spam list. Embrace a better quality of life change within your Matrix rooms.
  2. Subaddressing Support: Postmoogle now offers support for subaddressing. Receive emails sent to addresses like [email protected], giving you more control over your email routing.
  3. Enhanced Banlist Modes: We've added two new server ban modes: banlist:auth and banlist:auto. The banlist:auth mode automatically bans users for attempting to authenticate into Postmoogle over SMTP with invalid credentials, while banlist:auto automatically bans for invalid emails, such as those failing MX, SPF, or DKIM checks. You can configure each mode separately, enhancing the security of your Matrix environment.
  4. Improved Banlist Output: The !pm banlist command output has been improved to display bans per day in weekly chunks. This streamlined presentation makes it easier for you to monitor and manage banned IPs effectively.
  5. Enhanced Reply Handling: Postmoogle now ensures that it always replies to your messages, either within the threads or using the reply-tos, depending on your mailbox configuration. This guarantees a more organized and threaded conversation experience within your Matrix rooms.
  6. Custom Mailbox Signatures: The new !pm signature command enables you to set a personalized signature for your mailbox, adding a unique touch to your email messages.
  7. Automatic Replies: With the introduction of the !pm autoreply command, you can configure automatic responses for all incoming emails without existing threads. This feature simplifies communication when receiving new email threads.

Postmoogle v0.9.16 brings you an enhanced email-to-Matrix bridge, bolstered security measures, and an improved quality of life. Whether you're managing email discussions within your Matrix rooms or responding to emails from your Matrix client, Postmoogle ensures a seamless integration.

Upgrade to Postmoogle v0.9.16 today and discover the future of email communication within the Matrix ecosystem. To get started, visit our GitLab repository or explore the #postmoogle:etke.cc room.

Dept of Clients 📱

Commet

A client packed with fun and convenient features.

airyz announces

Hello, world!

I'm excited to finally announce Commet! a new client for matrix! We are aiming to create a client that is packed with fun and convenient features, to help you connect with your friends.

We’ve been quietly in development over the past seven months and while we aren’t ready to call Commet stable, it is ‘stable enough’ to reveal it to the community

Despite being early in development, we have a few exciting features that help us stand out:

Built for multiple accounts

Commet was built from the ground up to have great support for running multiple accounts at once.

A Gif searcher in a matrix client?! We are running a proxy service for tenor, so you can easily send sarcastic gifs on matrix!

Custom Emotes / Stickers

We support the same custom emotes implementation that you might be familiar with from other clients!

Thats all for now! Check us out on github or stop by our room and say hi!

Neochat (website)

A client for matrix, the decentralized communication protocol

Tobias Fella says

We've landed a major feature in NeoChat this week: There's a now a page showing the subspaces and rooms in a space. This also allows for basic space administration tasks, like adding new rooms to the space. Internally, our Qt6 port is progressing, with all major changes being done now.

Element X iOS (website)

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

Ștefan says

Busy week in Element X land:

  • Following small tweaks here and there Polls are now officially finished! 🥳
  • Work has started on support for voice messages
  • And also on user mention pills
  • We can now reply to more types of room messages
  • Our unit tests are more stable and ever and our coverage is at all time high at 71.4%
  • And we fixed bugs around UI and Integration tests, the Element Call integration, iOS 17 and more

Element X Android (website)

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

benoit announces

  • Element X Android will be released on the PlayStore - once Google approves it - with a fix for the crash about the Camera permission.
  • Polls are getting the latest design tweak, notification with the poll question is coming.
  • Open a room is smoother than before, some stuff have been move to worker thread.
  • The bloom effect will also be rendered faster.
  • We are adding test to reach the target of 60% of code coverage. We are not far!
  • The Rich Text Editor can now be displayed in full screen mode.
  • Next week we will start October features: Key backup management; pin and biometric unlock; voice message; and rendering pills in the timeline.

Element Web/Desktop (website)

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

Johannes Marbach announces

  • We’re wrapping up some test stabilisation work on our notification test suite and will transition into fixing the failures next.
  • Visual regressions from the Compound adoption have mostly been fixed. We started applying a UI refresh to the right panel and are planning to unlabs it together with the room header once complete.
  • About 80% of our strings have been migrated over to Localazy. We’re getting close to finishing this off and reopening translations to contributors.
  • People living on the edge might have noticed that the Safari 17 update has broken our emoji fonts. We’re planning to put a hotfix together for this today. On the back of this we’re also considering doing away with bundled emoji fonts entirely and falling back to what the OS provides. The situation on this is looking much different these days compared to a few years ago.

Dept of VoIP 🤙

Calling for bridges

Malte E reports

During the Matrix community summit, Timo K.and I discussed reducing friction for video calls with bridged users. Instead of true call bridging, which would likely be months of work, we implemented a workaround within less than a day. Starting an MSC3401 call from Matrix will send an element call link to the remote platform user, which will skip login and room selection, taking them straight to the call in two clicks (one for the link and one to confirm). On the Matrix side, the experience is seamless, once a few prerequisites have been met: the matrix client must use MSC3401 and because element web currently defaults to legacy calling in DMs, a third user, such as the bridge bot, must be present in the room. Furthermore, a modified element call instance is needed. We have so far implemented calls via Element Call for matrix -> Telegram in DMs. We will be working on solutions for incoming calls and group calls as well as support for other platforms. There is currently still a major security concern: To skip the login process, the link comes with a token for the ghost account. Anyone with access to the token - that includes the matrix user who started the call - will be able to log in with that ghost account. We invalidate the token once the call has ended, but that is obviously nowhere near sufficient. Scoped access tokens with permissions for sending and receiving call events in a single room for a limited time would be required. On platforms using Double Ratchet E2E, it should also be possible to use different plaintext for different recipients in the same message, thereby only exposing the token to those who already implicitly have authority over the ghost account through their account on the remote platform.

For those brave enough to try, you will need this fork of mautrix-python, this fork of mautrix-telegram as well as this fork of element call or just use the instance hosted here. In the bridge config.yaml, set bridge.calls.enabled to true and provide the element call instance in bridge.calls.ec_url. Be sure that you trust everyone with access your bridge before deploying, until we have figured out how to make it safer.

We apologize for the subpar audio and glitches. We had limited time and equipment to record the demo and will try to do better next time {{< video src="vrcDiEGzmollhUGuTEONHVCE.m4v" >}}

Dept of SDKs and Frameworks 🧰

Rory&::LibMatrix

Emma [it/its] says

Not much changed this week:

  • Some refactors to how user identities are handled
  • Correction in function names to correctly display async vs non-async functions
  • AuthenticatedHomeserverGeneric.GetRoom(string id) is no longer async, since that is only a constructor call.
  • Sync code has gotten a slight cleanup
  • AuthenticatedHomeserverGeneric.WhoAmI was turned into a property that only gets fetched when attempting to get the info for the first time, rather than fetching it when constructing the homeserver object.
  • Added a null check for creationEvent.Invite when callign CreateRoom
    • This field was also made nullable
  • Renamed canonicalHomeServerDomain to baseUrl in the constructors for homeservers
  • FullHomeServerDomain and HomeServerDomain were removed from homeserver objects
  • Authentication was moved to a functions inside RemoteHomeserver rather than being service-only. This allows for usecases outside of Dependency Injection based applications
  • LoginResponse now tries to get homeserver canonical domain from mxid if not provided by the server (since this field is deprecated)
  • Removed an obsolete way to get room state without providing a type (can still pass JsonElement if required)
  • Fixed sending files in a room via room.SendFileAsync, this now does what you would expect instead of throwing an exception (because I'd written the wrong code)
  • Added room.DisbandRoomAsync() in the case you ever want to completely get rid of a room, ban everyone and make the room private
  • Added AddChildAsync to SpaceRoom, in order to allow adding space children
  • Removed TieredStorage arguments from homeserver constructor
  • Removed explicit http client creation for authenticated homeservers, in favor of re-using the one created in RemoteHomeserver
  • Fixed room.SendMessageEventAsync requiring an event type (this is always m.room.message afaik)
  • Moved namespace LibMatrix.StateEventTypes.Spec to LibMatrix.EventTypes.Spec.State in order to better represent what's in that folder
  • Increased coverage of MatrixHttpClient to include PUT requests
  • Removed TieredStorageService argument from SyncHelper (I might make SyncHelper not part of homeserver in the future so you can have separate sync loops with different filters)
  • GetRoom(string id) now has a check that the id needs to start with a !
  • Added a Logout function to AuthenticatedHomeserverGeneric so you can properly dispose a session
  • Added the ability to resolve room aliases
  • Last, but definitely not least, some unit tests have been added!

Non-code updates:

  • Unit tests are powered by an unfederated homeserver at matrixunittests.rory.gay - there is no data persistence

As always:

  • The code is available at my git domain
    • If anyone wants to contribute a page to put there instead of a plain dumb git directory, please feel free to!
    • All other contributions are more than welcome, be it documentation, code, anything!
  • Discussion is welcome in #libmatrix:rory.gay

Trixnity (website)

Multiplatform Kotlin SDK for Matrix

Michael announces

We are happy to announce that Trixnity Messenger is open source now. It is a Kotlin multiplatform Matrix messenger SDK built on top of Trixnity. It defines a messenger client without specifying a UI layer (think of it as a headless messenger). All it provides is a series of view models that define the structure and logic of a messenger. It has never been easier to implement a Matrix messenger targeting multiple platforms such as Android, iOS, Desktop or the web. Just define how it should look - all the logic and nitty-gritty details are already accounted for. And if you do not like the behavior of the messenger in some parts, just extend or override the existing logic with your own. There is no need to fork the project. So join us at https://gitlab.com/connect2x/trixnity-messenger and in #trixnity-messenger:imbitbu.de.

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

Jonas Platte reports

Dept of Internet of Things 💡

Home Assistant - Matrix Integration

Paarth Shah announces

I'm happy to announce that Home Assistant 2023.10 release (in beta at the time of writing) includes my PR to refactor the included matrix integration to use matrix-nio! You can see the full changelog here. As part of the merge, I've also become the code owner for the integration.

In the 2023-06-09 TWIM I announced that I'd created matrix-nio-hacs as a stand-in while this had still been pending merge. As it will no longer be necessary, for those of you who have been using it, I'll eventually be archiving the repository since I now will be able to continue development directly on home assistant core. Any and all bug reports and/or PRs will be greatly appreciated!

Dept of Events and Talks 🗣️

Matrix User Meetup Berlin

saces reports

Long time no matrix meetup? We can help!

Next Matrix user meetup 4.10.2023, 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.

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

Matrix room: #mumb:c-base.org

Matrix Salon Podcast (German episode)

Christian Paul (jaller94) says

Meet Nadine, a designer and UX enthusiast who builds Polychat. Polychat is a bridging service for people from different messenger silos. This way, people won't need to leave their familiar messenger silo to talk to group on other platforms.

Episode url: https://podcasters.spotify.com/pod/show/matrix-podcast0/episodes/Nadine---Polychat--Matrix-Community-Summit-2023-e29urs9 RSS feed: https://anchor.fm/s/cdb34188/podcast/rss Mastodon post: https://mastodontech.de/@jaller94/111149212044231025

For English interviews of Matrix community members, check out some of our previous episodes! Also, in the upcoming weeks, we'll release two more English episodes.

Dept of Interesting Projects 🛰️

Mappo

Janet Blackquill reports

Hi, I present to y'all a little bot called Mappo. He's technically been around for a while, but I polished him up with some new Matrix features as of late to bring him closer to his presence on Discord, and I haven't really promoted it before.

He's a lil noodly jellyfish fella that lets you play the eponymous social deduction game of Mappo where some people are villagers and some people are creatures. The village is trying to figure out who the creatures are to exile them, but at the same time, the creatures are slowly picking them off, one-by-one until they outnumber them! Who wins is determined by who's the best at deducing the truth (or obfuscating it if you're one of the creatures!) The roles range from the conventional like the Seer and Werewolf to the wild and wacky like Cookie Person and Goose.

His source is located on GitHub at https://github.com/pontaoski/mappo. Mappo is unique for a bot due to being multi-protocol with a core logic speaking to an abstraction layer implemented for both Discord and Matrix.

If you wanna check out Mappo in action, come stop by #mappo:toki.club and give the game a try with other people!

matrix-static

HarHarLinks reports

Hi from the Matrix Community Summit Sunday Hackathon!

That's right, a couple people were still alive on Sunday after one awesome Thursday of BarCamp BarCamping and two more excellent days full of Matrix programme and programming across two stages and got together for some creative Matrix hacking!

We had a bunch of interesting projects, see the announcement about VoIP bridging from Malte E. and Timo K. Personally, I was involved in the event T-Shirt creation revised MSC2997 implementation with the wonderful @c_atc:c-base.org. If you look at that more closely, you'll find there is an mxc-URL in the event body. matrixmeetup.de is hosted using GitLab pages, so you can't just do anything you want, however challenge_accepted.jpg. Of course, entering it into your browser works (how?), try it out!

The obvious idea was to also make it all work through matrix so that in the future, once other client's implement the event scheme, the event will properly work? But how would we set up a media on a defined media ID and ...could we circumvent having to set up it's own homeserver just for this gimmick, or even any additional infrastructure at all?

Luckily I was sitting next to the excellent Nico from Nheko and we started hacking! After stumbling over the need to still offer working legacy r0 endpoints, we quickly got it working. Try a m.room.message with:

  "content": {
    "body": "Summit Logo.png",
    "info": {
      "h": 1578,
      "mimetype": "image/png",
      "size": 386815,
      "w": 2022
    },
    "msgtype": "m.image",
    "url": "mxc://matrixmeetup.de/summit2023"
  }

We learned during the event that we would have liked its Matrix rooms and space(s) to be more discoverable, so we continued prototyping with the room directory for next year. The /_matrix/federation/v1/publicRooms is not too complicated, it's basically a list of room IDs with a couple attributes we had to hardcode...:

{
  "avatar_url": "mxc://matrixmeetup.de/summit2023",
  "guest_can_join": false,
  "join_rule": "public",
  "name": "Matrix Community Summit Berlin 2023",
  "num_joined_members": 1000000,
  "room_id": "!rrRxqrMIOzXJggCSEm:matrix.org",
  "room_type": "m.space",
  "topic": "Summit on 21-23 September 2023.\n @c-base in Berlin\n \n a barcamp - 21th\n a conference - 22/23th\n open door day - 24th (to be confirmed)",
  "world_readable": true
}

However it was not quite so easy. As you can see above, the endpoint - like most of Matrix - doesn't use a file type extension. It turns out that Synapse really wants that piece of JSON to served with the JSON mime type, but GitLab pages' does not support setting the mime type manually and can only derive it automatically using some heuristic. Thanks to the manical investigation into that heuristic, Nico came up with the idea to use GitLab's _redirects or more precisely rewrite function to forward from the Matrix endpoint to the actual file served with the .json extension and what can I say - it works as proven by this screenshot from Nheko (it's Other Clients October soon, so try using Nheko)!

What if I told you there were even more hackers there? urp picked up where we achieved our goals and continued testing. You can follow the experiments being done and the documented findings on GitLab/matrix-static and join the effort or give feedback in the matrix room matrix-static-server..

Overall we can absolutely recommend you try hacking with some static Matrix for your project, I can see lots of applications for hosting media alone. Until next time! 👋

Department of Community Initiatives 👪️

For everything impulsed by the community that is not an Foundation initiative.

Matrix Community Forum

MTRNord announces

Changes and new features

  • Email registration should be fixed. If you tried to register and didn't get the activation email, check your spam folder please
  • There now is a way to announce events and get them into a calendar at https://forum.miki.community/t/matrix-events/52
    • For example, TWIM is in the calendar (also contains some Tips and Tricks for your next post :) feel free to add more of these if you have them!) https://forum.miki.community/t/this-week-in-matrix/100/2
  • Categories have been reorganized to be more useful
  • Login via GitHub is possible - Login via matrix will only be possible after OIDC lands in Matrix spec and is adapted by users
  • Small nice to have features have been added
    • Support for setting a birthdate this seems to break the forum
    • Support for Footnotes
    • Support for templates
    • A dark/light mode toggle
    • User Fields for mxid, git(hub) (and friends) ID, pronouns have been added to be optionally set on the profile.
  • Added the gamification plugin which gives a Forum Leaderboard which may help to motivate some people that are not coders and gives those people rewards too. Additionally, there could be also further integration, for example using https://meta.discourse.org/t/how-to-integrate-discourse-gamification-with-an-external-system-redeem-and-award-points/262968

Planned things

  • Support for integration into existing Matrix based communication using https://meta.discourse.org/t/discourse-chat-integration/66522
  • Possibly finding a way to get events announced in twim also into the forum automatically

Discussion Area

Anything more permanent like wishes or request should be in the forum itself at https://forum.miki.community/c/site-feedback/2

However for quick discussions or questions there is #matrix-community-forum:midnightthoughts.space available too.

Asbjørn announces

Other Clients October

We're doing it again!

Other Clients October is a month-long challenge, where we switch away from our daily-driver Matrix clients completely for a the entire month if October.

It's a nice way to explore the rich space of Matrix clients.

Only use Element? Maybe check out Cinny. Only use Fluffychat? Try kicking the tires on ElementX. Only use Nheko? Why not try out Gomuks? Working on a client? Give dogfooding it a shot this month!

Join the Matrix room: #other-clients-october:olli.ng

Say hi, and tell us what clients you'll be trying!

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
1maescool.be470
2plocki.org509
3envs.net526
4tcpip.uk567.5
5forgedtheir.phd607.5
6shortestpath.dev639
7chat.gokhanc.net740
8herkinf.de870.5
9utzutzutz.net918
10wcore.org945

#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
1frai.se163.5
2hacklab.fi172
3kanp.ai193.5
4inu.is260
5chat.gaskins.family328
6littlevortex.net338
7skladka.net405
8matrix.org442
9matrix.its-tps.fr464
10noisytoot.org543

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 2023-09-22

22.09.2023 18:30 — This Week in Matrix Thib

Matrix Live

Dept of Status of Matrix 🌡️

Thib announces

Let me start right away with no less than a sneak peek at Matrix 2.0. Matthew walks us through the most exciting MSCs currently in flight with working implementations, that will be drastically changing the experience on Matrix.

One of those MSCs makes Matrix support OIDC. But Synapse already supports OIDC, right? If you want to learn more about the difference between OIDC and OIDC (sic) and how it's going to impact you, the auth team and I wrote a post for you.

Continue reading…

This Week in Matrix 2023-09-15

15.09.2023 00:00 — This Week in Matrix Thib

Matrix Live

Dept of Spec 📜

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

MSC Status

New MSCs:

MSCs proposed for Final Comment Period:

MSCs in Final Comment Period:

  • No MSCs are in FCP.

Accepted MSCs:

  • No MSCs were accepted this week.

Closed MSCs:

  • No MSCs were closed/rejected this week.

New MSCs in detail

In this new segment, we aim to give a bit more context as to why an MSC was opened, beyond what is available in the MSC's introduction.

MSC4056 stems from a conversation held back at IETF 117, where members of the Spec Core Team (SCT) were attempting to make RBAC work in Matrix. Thankfully, there was prior art in the form of MSC2812, but a problem with decentralization (and specifically state resolution) was discovered. Thoughts were had about how to fix it, and MSC4056 is the result of those thoughts. Implementation work is eventually planned for this MSC, but in the meantime it should see forwards movement with the SCT's involvement in the MIMI working group at the IETF.

If you have thoughts or suggestions about the very Discord-centric approach, please leave them on the MSC :)

Continue reading…

This Week in Matrix 2023-09-01

01.09.2023 00:00 — This Week in Matrix Thib

Matrix Live

Dept of Status of Matrix 🌡️

Thib says

We’d like to thank everyone for their patience as we continue to work toward restoring the Libera.Chat bridge, and apologize for the continued inconvenience. We’ve heard from many people and communities who are impacted, who have confirmed that operating this bridge is an important service and we remain committed to getting it back online.

It’s been a month since our last update and folks have been reaching out, so we wanted to take this opportunity to provide a brief update.

The bridge team at Element is still actively working on the issues that led to the bridge being disabled in the first place. You can see some of the work that’s in flight through GitHub PRs: #1757, #1766, #1764, #1734.

We’re also looking into a way to transition responsibility for the bridge from Element to being directly run by The Matrix.org Foundation over the coming months - more details as we have them.

Unfortunately, we do not yet have a clear timeline for bringing the bridge back online. We’ll continue providing regular updates and will share more information as soon as we can. Thank you again for your patience! Please do not hesitate to reach out at #libera-matrix:libera.chat if you have any questions or concerns.

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:

  • There were no new MSCs this week.

MSCs in Final Comment Period:

Accepted MSCs:

  • No MSCs were accepted this week.

Closed MSCs:

  • No MSCs were closed/rejected this week.

New MSCs in detail

In this new segment, we aim to give a bit more context as to why an MSC was opened, beyond what is available in the MSC's introduction.

For MSC4026, the primary motivation came out of the Element Backend team's desire to selectively enable new and experimental Matrix features for only a subset of users on matrix.org. Experimental features are exciting, but also have the chance to break clients completely. By only enabling a feature for a small subset of users, system administrators can ensure that there is no breakage before widening the set of users.

By adding optional authentication to the /versions client endpoint, which has a set of unstable_features flags, the homeserver is able to know which user the request came from. From there, it can decide whether a certain feature should be advertised as enabled or disabled.

The expected outcome of this is safer deployments - and ultimately less panicking when (not if) something breaks.

Spec Updates

Matrix v1.8 was released last week, and hot on the heels we're now working towards Matrix v1.9, due November 2023.

See the "Upcoming in Matrix 1.9" section of the linked blogpost for the MSCs that the Spec Core Team plan to land in time for v1.9!

Random MSC of the Week

The random MSC of the week is... MSC3160: Message timezone markup!

This MSC proposes new HTML syntax for formatted m.room.messages with a <time> tag that could display a time automatically based on the receiving user's timezone/12 or 24hr/etc. preferences. This saves users from manually calculating timezone offsets in their head.

I think this would be an excellent feature, and I've seen it in use already in platforms like Discord. Discord lacks any UI for the user to construct these though, instead hoping users just magically figure it out. This leads to sites like https://hammertime.cyou/ existing. But it would be nice to see clients providing a similar native UI.

What do you think? Have thoughts? Leave them on the MSC as a new pull request comment!

Dept of Servers 🏢

Synapse (website)

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

dmr says

This week we released Synapse 1.91, which contains

We are aware of a performance regression in this release which gradually consumes more CPU over time. We have just (within the last hour) begun to understand this and have a fix planned. We'll need to test this properly at the start of next week; you can expect a bugfix release shortly after, if all goes well.

The full changelog is available on GitHub. Thank you to our contributors for this release: Alexander Fechler, Gabriel Rodríguez, Nick Mills-Barret, Nico, Matthew Ma, Maximilian Bosch and Theodore Ni.

Aside from the release, this week we have been working on a few small bugfixes, which should make a nice addition to the upcoming 1.92 release.

In other news, for the last few releases Erik has been working to fix database corruption problems relating to room retention and purging historical events. He put out a call for testing in the Synapse Announcements room last Friday. It is not risk-free, but if anyone is feeling bold and is prepared to handle potential data loss, we would appreciate testing and feedback.

Finally, let me once thank our community of server operators in the #synapse:matrix.org room. It is an invaluable asset; we are indebted to everyone for all of your efforts and are extremely grateful.

Dept of Clients 📱

Benedict says

Just wanted to mention, that Konstantin Tskhovrebov created a really cool little Matrix messenger based on Trixnity. It is called smalk, uses Compose Multiplatform and already works on Desktop, Android and iOS with the same code base. Maybe web is coming soon too.

Neochat (website)

A client for matrix, the decentralized communication protocol

Tobias Fella says

This week, we've implemented a bunch of cool features:

  • You can now create matrix accounts directly in NeoChat. As part of the, the entire login UI has been revamped to a more modern look.
  • On the other end of an account's life cycle, we've also implemented deactivating accounts
  • You can now forward messages to a different room
  • The right sidebar has been improved for mobile devices

Apart from that, we're improving a lot of our code behind the scenes and preparing for the move to Qt6 (hopefully completed later this

Element X iOS (website)

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

Ștefan says

Happy Friday everybody, ending another week that very much kept us on our toes:

Element X Android (website)

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

benoit reports

  • Element X Android is not far from being released to production, but we want to fix the issue about notification without content first. This happens when the SDK cannot decrypt the Event content.
  • Polls are now enabled, you can create, vote and end polls, and they are correctly rendered in the timeline.
  • We have started to integrate Element Call to the application.
  • Still working on polishing OIDC and making progress on integrating the Rich Text Editor.
  • We are fixing lots of bugs, keep reporting bug reports, it’s really helpful!

Dept of SDKs and Frameworks 🧰

Trixnity (website)

Multiplatform Kotlin SDK for Matrix

Benedict announces

A small Trixnity release this week (v.3.10.4):

features/improvements:

  • add default user agent "Trixnity"
  • allow subscribeAsFlow in SyncApiClients Subscribable

bugfixes:

  • fix createRoomRepositoriesModule

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

Jonas Platte says

Over the last few weeks, we added

We also fixed lots of issues, including

… and improved our logging setup, as well as CI.

Dept of Services 🚀

matrix-docker-ansible-deploy (website)

Matrix server setup using Ansible and Docker

Slavi announces

Thanks to Aine of etke.cc, matrix-docker-ansible-deploy can now set up the SchildiChat client.

See our Configuring SchildiChat documentation to get started.

Dept of Bots 🤖

Maubot-meetings

Gwmngilfen announces

Historically, Ansible has relied on an old IRC bot called Zodbot to run our official chat meetings - take notes, log action items, and so forth, as well as posting the logs to a webhost for people to read later. With the IRC bridge currently down, we decided to dust off a 2-year-old action item to write a Matrix Meeting bot. Since (a) Zodbot is written in Python, and (b) I was already using Maubot for other things, it made sense to write it in the Maubot framework.

If you also have a need to a meeting Matrix, you might have a use for this! If so, you can check out the extremely hacky code on GitHub and deploy it to your own Maubot host in the usual way. By default the bot will post the meeting logs to the room when #endmeeting is called, but optionally (because this is useful to me) you can also post the logs to a Discourse instance instead. More backends for log handling are also planned.

Comments/feature requests/bug reports are of course very welcome!

Dept of Events and Talks 🗣️

Matrix User Meetup Berlin

saces says

This will be the last meetup before the matrix community summit, a good opportunity to test your [m]atrix outfit.

Next Matrix user meetup 6.9.2023, 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 brougth 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

Matrix Community Summit 2023 (website)

HarHarLinks reports

The Matrix Community Summit 2023 🗻 is taking place September 21st through September 24th at the awesome hacker space station c-base in Berlin!

News: The schedule had a slight adjustment to fix times being shown later than intended. The talks on Friday and Saturday start at 10:00 AM (CEST). The schedule has also been updated to include the breakfast, lunch break, dinner, and social events.

If your talk was accepted and you are participating as a speaker, please do still get a ticket!

The range of available T-Shirts has been extended! There are now 4 variants for you to choose from (or get them all!). If you already bought a ticket that includes a free T-shirt, you should be able to switch your choice to any of the new ones, in case you prefer them.

Summary:

  • 📆 We updated the schedule from last week to show sessions in Berlin local time properly and also include breaks and meals. View it online here or import to your schedule consuming apps.
  • 🎫 Tickets are available! We are counting on Matrix businesses and professionals to buy our supporter tickets or sponsoring packages so we can provide everyone with food and drinks.
  • 👕 T-Shirts available for preordering, including new additional variants!
  • 🗨️ Join the event space #matrix-community-summit-berlin-2023:matrix.org for all related rooms including news and general discussion, etc.
    • 🚗🏨 Carpools and Roomshares if you're looking for how to travel or where to sleep.
    • 💪 If you can and want to help out with the event organisation, join the orga room!
  • 🗣️ The call for participation ended last Sunday, August 20th, however if you missed it until now and just came up with the greatest new idea, don't hesitate to contact us at Matrix Community Summit Orga and we will see how we can squeeze you in.

See you soon in Berlin!

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
1maescool.be682
2nerdhouse.io1225
3mailstation.de1805
4rom4nik.pl2462
5cooperteam.net2541.5
6aguiarvieira.pt6261
7ocean.joedonofry.com9137
8littlevortex.net9705
9wcore.org10432
10balsillie.net13723

#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
1herkinf.de249
2dendrite.kootstra.frl282
3fellr.net331.5
4rustybever.be407
5littlevortex.net441.5
6777.tf454
7shiftsystems.net722
8matrix.shutdown.network1223
9noisytoot.org1235
10inu.is1665

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 2023-08-25

25.08.2023 00:00 — This Week in Matrix Hubert Chathi

Dept of Spec 📜

TravisR 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:

Merged MSCs:

Matrix 1.8 is here!

If you haven't yet seen the blog post, check it out. Room version 11 is new in this release, and we've already got an idea for what Matrix 1.9 looks like :)

New MSCs in detail

In this new segment, we aim to give a bit more context as to why an MSC was opened, beyond what is available in the MSC's introduction.

MSC4049 is highly experimental investigative work into what it would take to support making messages as appearing to be sent by a room or server instead of a user. There are some use cases highlighted in the MSC itself, but the primary driving factor is a point of relatively minor feedback from the MIMI working group: "does sender really need to be a user ID?". The spike-shaped experiment overlaps heavily with both crypto IDs and pseudo IDs by accident, but might help inform those two projects via MSC4047 and MSC4046. Currently there is not a plan to push any of the 3 MSCs towards FCP, though feedback is very much welcome on how the stack feels.

MSC4048 is part of the crypto team's mission to improve encryption across all of Matrix, with this particular MSC looking to improve the trustworthiness of key backups. Watch this space for updates as the MSC progresses, and please provide feedback on the proposal itself.

Dept of Servers 🏢

Synapse (website)

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

Shay announces

This week we released 1.91.0rc1. Highlights include:

  • Implements an admin API to lock an user without deactivating them. Based on MSC3939
  • Fix performance of state resolutions for large, old rooms that did not have the full auth chain persisted
  • Fix a bug introduced in 1.87 where synapse would send an excessive amount of federation requests to servers which have been offline for a long time
  • Allow customising the IdP display name, icon, and brand for SAML and CAS providers (in addition to OIDC provider)

and much more. If you'd like to take a deep dive into the changes, you can find the release notes here and as always, if you encounter a bug feel free to report it at https://github.com/matrix-org/synapse/issues/new/choose.

Dendrite (website)

Second generation Matrix homeserver

Devon Dmytro announces

This week we released v0.13.2. Here are a few of the highlights:

Features:

  • Further improvements and fixes for MSC4014: Pseudonymous Identities
  • Space summaries (MSC2946) have been moved from MSC to being natively supported
  • The default room version to use when creating rooms can now be configured using room_server.default_room_version

Fixes:

  • Migrations in SQLite are now prepared on the correct context (transaction or database)
  • Event size checks are more in line with Synapse
  • Getting local members to notify has been optimized, which should significantly reduce memory allocation and cache usage
  • Background federated joins should now be fixed and not timeout after a short time
  • Database connections are now correctly re-used

...and a whole lot more. Check out the release notes for the full set of changes! As always, feel free to stop by #dendrite:matrix.org to join in on the discussion and if you encounter a bug make sure to report it here.

Dept of Clients 📱

Neochat (website)

A client for matrix, the decentralized communication protocol

Carl Schwan announces

This week we released a new major version for NeoChat as part of the KDE Gear 23.08 release. This will be likely the last version using Qt5.

NeoChat received a full visual overhaul of its user interface, which should make it looks a lot cleaner. The timeline bubbles use nicer shadows, we revamped the room list style and improved the notification images to display both the user and the room avatar at the same time. Read markers from the other participants in the room will be displayed in the timeline. The right sidebar which displays the list of participants and the room information now has a special look for direct chats and the whole sidebar is scrollable now instead of just the participants list.

Apart from a visual overhaul, NeoChat can now display location events and also a map with the location of all the users currently broadcasting their location using Itinerary's Matrix integration. Great for locating where your friends are.

We also made it possible to send stickers and the existing custom emoji editor now lets you add new custom stickers too. Finally, we improved our development tools, which allow users to inspect the state of a room and fixed a lot of stability issues all other the place.

https://kde.org/announcements/gear/23.08.0/

Ement.el (website)

Matrix client for Emacs

alphapapa reports

Ement.el, a Matrix client for the GNU Emacs text editor and Lisp environment, has been released at v0.11. Changes since the last version include:

Additions

  • Commands ement-room-image-show and ement-room-image-scale (bound to RET and M-RET when point is at an image) view and scale images. (Thanks to Steven Allen for these and other image-related improvements.)
  • Command ement-room-image-show-mouse is used to show an image with the mouse.

Changes

  • Enable image-mode when showing images in a new buffer. (Thanks to Steven Allen.)
  • Command ement-room-image-show is not used for mouse events.
  • Show useful message in SSO login page.

Fixes

  • Allow editing of already-edited events.
  • Push rules' actions may be listed in any order. (Fixes compatibility with v1.7 of the spec. Thanks to Steven Allen.)
  • Call external browser for SSO login page. (JavaScript is usually required, which EWW doesn't support, and loading the page twice seems to change state on the server that causes the SSO login to fail, so it's best to load the page in the external browser directly).
  • Clean up SSO server process after two minutes in case SSO login fails.
  • Don't stop syncing if an error is signaled while sending a notification.
  • Command ement-room-list-next-unread could enter an infinite loop. (Thanks to Visuwesh and @mrtnmrtn:matrix.org.)
  • Events in notifications buffer could appear out-of-order. (#191. Thanks to Phil Sainty.)

Internal

  • The ement-read-receipt-idle-timer could be duplicated when using multiple sessions. (#196. Thanks to Phil Sainty.)

Feel free to join us in the chat room: #ement.el:matrix.org!

Element X iOS (website)

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

Ștefan reports

  • This week we continued our foray into OIDC and we’re making very good progress, it won’t be long now
  • There’s a brand new user-defined notification settings screen 👏
  • We also built the underlying structure for what’s going to become mention pills
  • Deep dove into startup performance and made sure that the rooms load in 0.1 shakes of a lamb's tail
  • plus tackled a significant number of bugs, developer experience improvements and testing additions

Element X Android (website)

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

benoit announces

  • OIDC has been integrated into Element X Android. Users using a compatible server should be able to sign in using this solution. You can test it using the latest nightly build.
  • In the meantime we are still stabilising the application
  • Work on polls has made big steps, as well as integrating the Rich Text Editor.
  • Coming soon: Account setup screen, displayed the first time the user signs in to an account, since the very first sync performed by the sliding sync proxy may still take time for big accounts.
  • Regarding the release, we will make an update of the open testing version, and move it to production in the coming days if we’re happy with it.

Element Web/Desktop (website)

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

Johannes Marbach says

  • Progress on stuck notifications, sadly, slowed down a little this week as we've been busy with maintenance and infrastructure issues.
  • Our work around using Compound components in the room header continues. We've finished up the avatar component changes and dealt with some of the expected / unexpected fallout from making app-wide changes.
  • Finally, we also proceeded moving from Weblate to Localazy for our translations. We've reduced the number of source strings by using built-ins for language names and similar things and started realising string reuse with the Element X mobile apps.

Dept of Non Chat Clients 🎛️

KDE Itinerary

Carl Schwan reports

KDE Itinerary is a digital travel assistant that protects your privacy. It makes collecting all the information about your travel inside a single application easy and straightforward. KDE Itinerary is available for Plasma Mobile and Android. We release Itinerary at the same time as NeoChat, and in this release, apart of the integration of many more transport providers, it lets you connect your Matrix account with Itinerary to share your live location inside a Matrix room based on the on-board APIs from your train or flight.

Itinerary broadcasts the position, as specified in the relevant MSCs, and extends it with the direction the user is headed towards.

About this release: https://kde.org/announcements/gear/23.08.0/#itineraryhttpsappskdeorgitinerary More information about Itinerary: https://kde.org/for/travelers/#kde-itinerary

Dept of SDKs and Frameworks 🧰

Trixnity (website)

Multiplatform Kotlin SDK for Matrix

Benedict reports

Trixnity v3.10.3 has been released with some minor improvements and a fix of a long standing (March 2023) bug.

improvements:

  • move [Event] extensions from trixnity-client to trixnity-core
  • server discovery fallback when no .well-known exists

bugfixes:

  • fix wrong check of mac in sas verification (failed, when other client accepts emojis first)

Dept of Ops 🛠

matrix-docker-ansible-deploy (website)

Matrix server setup using Ansible and Docker

Slavi reports

Thanks to Johan Swetzén's efforts (who finished what was started by James Reilly and Shreyas Ajjarapu), matrix-docker-ansible-deploy now supports bridging to Android SMS and Apple iMessage via the mautrix-wsproxy service (in combination with a mautrix-imessage bridge running on your Mac or Android phone).

See our Setting up Mautrix wsproxy for bridging Android SMS or Apple iMessage documentation page for getting started.

Dept of Services 🚀

etke.cc (website)

Your matrix server on your conditions

Slavi reports

TLDR: Bring-your-own-server orders on etke.cc no longer incur a one-time setup fee ($50) as part of a pricing change experiment, thus making Matrix hosting with us more accessible and encouraging more people to host on their own server. Additional details are below.

At etke.cc, we're working on a new ordering form, new services and pricing changes to match. We're always trying to cut down costs and to make prices more fair - smaller/simpler setups costing less, while orders with many components (requiring more work to setup and to support) having a higher cost.

At the same time, we're working on automating more of the order-handling flow and of server maintenance, so that we can keep costs low for everyone.

While all these changes are still being worked on (coming soon!), we'd like to announce another change - the experimental removal of the $50 one-time setup fee that we used to charge for Bring-your-own-server orders. With this fee removed, we're aiming to encourage more people to try Matrix on their own server (on-premise or rented from any provider in any location), as opposed to renting Hetzner Cloud servers out through us via our Turnkey offering.

While our Turnkey offering (optionally combined with hosting on a domain of ours like YOU.etke.host or YOU.onmatrix.chat) is still the easiest way to get started, we'd like to promote our more-independent and vendor-lock-in-free Bring-your-own-server offering more.

Bring-your-own-server orders are more difficult/costly for us to process compared to hosting Turnkey servers that we are in complete control of, so removing the one-time setup fee may come back to bite us through an influx of many and difficult to process orders. For now, we've decided to take this risk and see how it goes. If you've been wishing to host Matrix via etke.cc but this fee was holding you back, now is your chance!

Dept of Bots 🤖

Dominik reports

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

Two weeks ago, I've mentioned the bot the first time in TWIM. Since then, I've made several improvements regarding UX. Now I'm happy to announce the next (probably interesting) version of the bot has been released (Release 0.10.0). Additionally, I've added more pictures of the workflow & technical details to the README of the project; so take a look at it if you like :)

The most important change is the new link command and more detailed error responses to the users (e.g., if permissions are missing). It was not that easy to create an invite link for a space without using development tools in Element to send messages in the space room itself. Thus, I've extended the link command of the bot: You can now send a message like !join link !internal.roomId A fancy link name in order to create an invite link to the room with the mentioned internal id (actually, a matrix.to link will also work as long as it contains the internal id of the room).

So, 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.

Dept of Events and Talks 🗣️

Matrix Community Summit 2023

HarHarLinks reports

The Matrix Community Summit 2023 🗻 is taking place September 21st through September 24th (in 4 weeks!!!) at the awesome hacker space station c-base! That time seems to be approaching quite fast, so we just published the first version of the schedule which you can view online here or import to your schedule consuming apps.

Join the event space #matrix-community-summit-berlin-2023:matrix.org for all related rooms including news and general discussion, car pools and room shares, etc. If you can and want to help out with the event organisation, join the Matrix Community Summit Orga!

Tickets 🎫 are now available! In order to be able to provide food and drinks for everyone during the whole event, we are counting on Matrix businesses and professionals to buy our supporter tickets. Specific sponsoring packages are also available. Beyond that, we are looking for a "Media Sponsor" to step up, which would enable us to produce media coverage of the event.

Similar to last year, T-Shirts 👕 commemorating the event will be available again and you can already pre-order them with your tickets, with more details following soon.

The call for participation 🗣️ ended last Sunday (August 20th), however if you missed it until now and just came up with the greatest new idea, don't hesitate to contact us at Matrix Community Summit Orga and we will see how we can squeeze you in.

See you soon in Berlin!

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 2023-08-18

18.08.2023 00:00 — This Week in Matrix MTRNord

Dept of Spec 📜

TravisR 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:

Accepted MSCs:

Closed MSCs:

  • No MSCs were closed/rejected this week.

Spec Updates

This last week the SCT has largely been preparing for the spec release happening on August 23rd, 2023 and working on getting some of the IETF/MIMI work into MSC shape. It's largely business as usual at the moment for the SCT :)

Matrix 1.9's planned work will be finalized on Monday as well, ahead of the Matrix 1.8 release on Wednesday. Please raise any MSCs or general feature areas to the SCT before Monday in #sct-office:matrix.org for them to be considered. The SCT will have limited/no bandwidth to look at things not raised for consideration.

Continue reading…

This Week in Matrix 2023-08-11

11.08.2023 00:00 — This Week in Matrix Hubert Chathi

Matrix Live

Dept of Spec 📜

TravisR says

Spec

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 proposed for Final Comment Period:

MSCs in Final Comment Period:

Accepted MSCs:

  • No MSCs were accepted this week.

Closed MSCs:

  • No MSCs were closed/rejected this week.

Spec Updates

We have a release date planned for Matrix 1.8! We're looking at Wednesday, August 23rd, 2023, and tracked as issue #1614. Currently the only release blocker is room version 11, which should land well in advance of August 23rd. If there's other things we should be considering please raise them ASAP in #sct-office:matrix.org.

August 23rd also begins the Matrix 1.9 cycle where we'll be sticking to our MSC review plan more strongly. Stay tuned to TWIM for news on the exact MSCs/features we'll be looking at for that cycle, and let us know in #sct-office:matrix.org if you think we should consider something in our planning.

The SCT has otherwise been thinking a lot about the MIMI working group at the IETF and how the protocol layering works there. About half of the SCT is going to take a break from MSC review over the next few weeks to ensure the protocol we're designing for MIMI will be fully compatible with Matrix - this will mean that some MSCs will move slower through FCP, sorry.

As always, if you have questions, concerns, complaints, etc then let us know in #sct-office:matrix.org 🙂

TravisR also announces

port 8448 has formally been registered by IANA 🎉

Dept of Servers 🏢

Synapse (website)

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

Shay says

This week we released 1.90.0rc1. Highlights include:

  • Fix a long-standing bug where purging history and paginating simultaneously could lead to database corruption when using workers.
  • Scope transaction IDs to devices (implement MSC3970).
  • Remove support for legacy application service paths
  • Fix a long-standing bug where the synapse_port_db failed to configure sequences for application services and partial stated rooms

and much more. If you'd like to take a deep dive into the changes, you can find the release notes here and as always, if you encounter a bug feel free to report it at https://github.com/matrix-org/synapse/issues/new/choose.

f0x notes

Recently added a Synapse worker to handle ~ ^/_matrix/federation/v1/send/ (which I apparently forgot back when I added all the other workers), and it resulted in huge performance improvements after my homeserver was getting absolutely trashed by incoming EDU's. Also now survived zfs trim running quite well, which I usually cancel halfway because it impacts disk so much Synapse becomes rather unusable.

https://stats.pixie.town/d/synapse-new/synapse?orgId=1&from=1690544792772&to=1691752981336

Conduit (website)

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

Timo on Conduit ⚡️ announces

Announcing Conduit v0.6.0

Hey everyone, it's been a long time since the last stable Conduit release, but v0.6.0 has finally been released. It's the biggest update yet, adding support for threads, spaces, edit history, backfilling and much more, along with other improvements like automatic corruption recovery, check out https://conduit.rs/changelog for more information.

It's becoming harder and harder to notice missing features, the biggest one is being unable to join rooms with old room versions. You should give Conduit a try if you haven't already!

To update, simple replace the binary and restart. If it worked, you should receive a message in your admin room.

I currently work on Conduit in my free time, you can support me on https://liberapay.com/timokoesters

Dept of Clients 📱

Nheko (website)

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

Nico announces

I have been away travelling for so long, that I forgot what I last posted an update on, so I'll just summarize what happened recently!

Nheko now shows an indicator for moderators and admins in the timeline. Don't be confused if that mismatches the definition in Element, we don't hardcode specific powerlevels so our definition is slightly different. We also removed the last remnants of Qt Widgets in our code and are now relying only on Qml (apart from parts where Qt uses widgets as the fallback). Nheko now also compiles against {fmt} version 10 and the macOS intel nightlies should work again. You can now also mark a room as read from the room list, Nheko should not break on rooms without a creator anymore and reactions should render smoothly again.

Outside of that, people might have met me at FrOScon, where I popped up randomly and gave a surprise talk to everyone including me and I also stole some food at the Matrix User Meetup in Berlin. If you are attending the Chaos Camp, you might be able to catch me there soon or you can possibly also spot me at the Matrix summit in September. Let's see if I get to finish any code until then...

That's all and let's hope I can make my way through the backlog of open PRs soon!

FluffyChat (website)

Krille-chan says

That was some hard work in the last weeks. FluffyChat's migration to Github meant that I need to rewrite the whole CI/CD setup. And some blockers on the Linux version of FluffyChat didn't let me sleep last night. But at least the iOS version is now working and so I am proud to present FluffyChat v1.13.0 with some new features and minor design changes.

https://github.com/krille-chan/fluffychat/releases/tag/v1.13.0

ALL CHANGES:

  • feat: option to not send typing notifications (Bnyro)
  • feat: small performance tweaks for Message (gilice)
  • feat: New onboarding screen with SSO as first class feature
  • feat: Import/Export emoji packs from/to zip file
  • fix: Set iOS badge (Krille)
  • refactor: Switch the dev hosting platform from GitLab to GitHub
  • design: New more compact chat bubble design and other design tweaks
  • design: Login now shows SSO more prominent and deprecates in-app registration in favor of SSO registration
  • Translated using Weblate (Arabic) (Rex_sa)
  • Translated using Weblate (Chinese (Simplified)) (Poesty Li)
  • Translated using Weblate (Estonian) (Priit Jõerüüt)
  • Translated using Weblate (German) (nautilusx)
  • Translated using Weblate (Indonesian) (Linerly)
  • Translated using Weblate (Ukrainian) (Ihor Hordiichuk)

Element X iOS (website)

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

Ștefan reports

Exciting week for Element X iOS as release 1.2.2 went out and 1.2.3 is hot on its heels. We have a lot of new features, improvements and bug fixes that will make the app (even more of) a joy to use. As always, you can check the full release notes here.

This week we:

  • Improved how responsive the timeline action menu is to toggle
  • Started parsing the latest room message displayed in the room list and render it accordingly
  • Re-enabled and simplified the background app refresh
  • Re-enabled room list caching and offline support
  • Fixed issues around modal presentations and deep linking from notifications
  • Fixed crashes when trying to reply to media timeline items
  • Made good progress on polls
  • and more great fixes coming out of the SDK

Stay tuned, even more exciting times ahead!

Element X Android (website)

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

Jorge announces

This week on Android we've been focusing on ironing out several critical bugs:

  • We had crashes in async Rust functions caused by a bug in the included Rust SDK version.
  • Rust and Android logs weren't being properly formatted and sent in rageshakes.
  • Fixed several stability issues around the sync process.
  • Notifications should now be more reliable, and we also don't display fallback notifications anymore for events that couldn't be fetched by the Rust SDK.

In other news, we've also:

  • Worked in standardising our design components following Compound, so you'll notice several UI and UX changes that should make Android, iOS and web look more consistent.
  • Started bringing polls to EAX.
  • Made the initial planning for integrating Element Call into the app.

Element Web/Desktop (website)

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

Danielle reports

  • This week on Web… We’ve been making progress on our updates to the room header and right panel. Check out our changes by using the Labs flag from Element Nightly or Develop.
    • We’re aiming to simplify our product in order to make it more accessible and user friendly overall. It’s an exciting time and evolution.
  • We’re working on stuck notifications; this week turning our attention to the automated tests. Ensuring that tests are set up and clearly define the behaviour that we want means that it’ll be easier for us to identify mis-steps in the future.

Dept of VoIP 🤙

Element Call (website)

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

Florian Heese reports

Hello from the VoIP team

We have a new Element Call release v0.4.3. This time we concentrated mainly on bug fixes and polishing:

  • fixing device selection bugs
  • preventing devices from sleeping during calls
  • Starting large calls auto-muted

Wait there is one more thing: We added the foundation for (media) end-to-end encryption which you can find and test in the developer settings. You can expect a major UX rework supporting proper end-to-end encryption handling soonTM.

Dept of SDKs and Frameworks 🧰

Trixnity (website)

Multiplatform Kotlin SDK for Matrix

Benedict reports

Trixnity v3.10.0 has been released.

features/improvements:

  • Added Room::createEventContent to get some common information about the room like room version or room type
  • Added Room::lastRelevantEventTimestamp to sort rooms without fetching TimelineEvents.
  • Removed async transactions. They were introduced, because realm only supports one transaction at a time. They led to some consistency issues, so they were removed. Another workaround for realm was found.
  • Reworked the cache (now called ObserveableCache) to be way more memory efficient and therefore faster (a former rework in v3.7.0 still had some memory issues)

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

Jonas Platte announces

New features:

Bug fixes:

Dimension (website)

An open source integration manager for matrix clients, like Element.

TravisR reports

Dimension is archived

Unfortunately, I haven't had time in the last 1-2 years to maintain Dimension, and so it's been archived. Community members may have been aware that it's not been receiving maintenance for quite a while now, but the last step was to formally archive the project.

For those not familiar, Dimension is (was) an integration manager: a UI for managing room-level integrations supported by Element. Typically available via "Add widgets, bridges & bots", the integration manager provides an easier way to configure such things, though the default one in Element does not support self-hosted bots & bridges at the moment.

With this news, it's strongly recommended to not deploy Dimension in your infrastructure: there's more than 1 year's worth of undiagnosed security issues, and the project doesn't even run in most cases. Unfortunately, there are no open source alternatives at the moment either. Others are welcome to start their own replacement project, and I'd suggest not using Dimension as a base to get away from years of bad code/technical debt (sorry).

Chances are you don't need an integration manager though:

  • Widgets can be added to rooms with Element Web/Desktop with /addwidget
  • Self-hosted bots and bridges can be managed entirely by commands
  • Stickers are best supported by https://github.com/maunium/stickerpicker and alternative clients like Nheko

If you have questions or concerns, #dimension:t2bot.io will live on as a room, but support will not be provided.

Dept of Services 🚀

etke.cc (website)

Your matrix server on your conditions

Aine announces

Hey TWIM, long time no see!

etke.cc service update is here.

A while ago, we started providing etke.host subdomains for free for new orders. You want a matrix server but don't have a domain name? Sure, get a yourname.etke.host subdomain when you order a matrix server from us with no additional fee, works both for on-premises and cloud/hosting setups.

Now we're extending that subdomain offering - the new onmatrix.chat domain is available for order for new customers. From now on, you can get a matrix server with MXIDs like @john:doe.onmatrix.chat with no extra fee.

Get your own matrix server and follow the #news:etke.cc for updates

Dept of Events and Talks 🗣️

Matrix Community Summit Berlin

Christian Paul (jaller94) says

With 6 weeks until the Summit in Berlin, get a ticket now. https://tickets.summit2023.matrixmeetup.de/matrix-salon/summit2023/

Looking for sponsors

Our expenses are mostly food and drinks. If the Summit is relevant to your work, please ask your employer to buy a ticket for you or to become a sponsor. Sponsors will allow us to pay for the drinks at the c-base bar, have a BBQ at c-base and invite everyone for dinner as a networking event. Furthermore, we're looking for a Media Sponsor to rent video and audio recording equipment for expert interviews, discussing projects presented at the event.

Call for participation (1 week left)

Also, we're still looking for people to give talks or workshops about their projects and Matrix use cases. Are you developing an interesting client, bot or library? Have you found ways to make hosting, monitoring or moderating Matrix servers easier? Please share your knowledge on the two conference days (Friday and Saturday)! Please submit proposals at https://summit2023.matrixmeetup.de/conference/

Summit overview

Thu, 21st Sep - Barcamp (= attendees suggest and vote for topics to discuss in the morning of the day; then we split up in groups according to our interests) Fri + Sat, 22nd and 23rd Sep - Conference Sun, 24th Sep - Open Door Day (c-base will be open for open discussions and collaboration)

Greetings from FrOSCon!

HarHarLinks reports

Last weekend (August 5-6), the Free and Open Source Conference took place at the University of applied Sciences Bonn Rhine Sieg.

We had an awesome time and it was great to see everybody in person!

There were a lot of spontaneous amendments to our programme, including a presentation streamed through Element Call! We thank everybody involved:

  • Our own devroom VOC team, thanks to whom we will be able to provide video recordings of most sessions for anyone who could not attend in person! Slides are already mostly available and videos will be as soon️™️ as they are ready, watch this space!
  • Everybody answering questions and selling [matrix] merch at the stand!
  • The whole FrOSCon crew for allowing us to be a part of this event!
  • Of course, all of the speakers and presenters involved!
  • Last but not least, everybody attending!

Join us in our FrOSCon Matrix room for discussion and see you next time: #FrOSCon:fiksel.info

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 2023-08-04

04.08.2023 18:19 — This Week in Matrix MTRNord

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

MSC Status

New MSCs:

  • There were no new MSCs this week.

MSCs in Final Comment Period:

  • No MSCs are in FCP.

Accepted MSCs:

  • No MSCs were accepted this week.

Closed MSCs:

  • No MSCs were closed/rejected this week.

Spec Updates

No movement through the process on the surface for any MSCs according to the above chart, but some things have been happening! Other than the usual background hum of IETF work, conversations across many MSCs have been moving along. We also saw MSC3930 (Polls push notifications) have FCP proposed! The latter would stop a notification from being generated every time someone voted in a poll, which is sorely needed.

A reminder that in keeping with the spec's quarterly release schedule, Matrix v1.8 is due to release this month and Matrix v1.9 is due for November. We want to plan well ahead for the v1.9 release though, so if you would like to see anything in particular land in v1.9, please raise that concern in the Office of the Spec Core Team room!

See this message in the same room for more information including the currently planned v1.9 spec changes.

Random MSC of the Week

The random MSC of the week is... Refine and clarify how presence works!

This is a very old "MSC" (still on google docs), but it's come up and I've seen folks taking a look at revamping presence recently, so I figured it may be interesting to share.

The document lists a number of confusing behaviours that come with the current presence spec (at the time, though it hasn't moved much since then). There is also a bullet-point list of what a redesigned presence could look like.

Given the conversation on the GitHub issue, this document appears lost to time. But perhaps someone will find it useful today.

Dept of Servers 🏢

Conduit (website)

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

Timo on Conduit ⚡️ announces

Conduit was at the top of Hacker News this week! https://news.ycombinator.com/item?id=36937713

Synapse (website)

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

Shay announces

This week we released 1.89.0. Highlights include:

  • Allow + in Matrix IDs, per MSC4009
  • Support room version 11 from MSC3820
  • Allow configuring the set of workers to proxy outbound federation traffic through via outbound_federation_restricted_to
  • Fix a long-standing bug where remote invites weren't correctly pushed
  • Fix a bug where resyncing stale device lists could block responding to federation transactions, and thus delay receiving new data from the remote server

and much more. If you'd like to take a deep dive into the changes, you can find the release notes here and as always, if you encounter a bug feel free to report it at https://github.com/matrix-org/synapse/issues/new/choose.

Dept of Bridges 🌉

mattermost-to-matrix

Gabriel R. announces

Hi! I've made a new Matrix<->Mattermost message history import tool and bridge: https://github.com/gabrc52/mattermost-to-matrix. It allows importing and bridging entire Mattermost teams into Matrix spaces. If you have any questions about it, you can DM me or use GitHub issues.

Dept of Clients 📱

Quaternion 0.0.96 beta4 (website)

A Qt5-based IM client for Matrix

kitsune says

After another round of smashing the keyb^W bugs, another beta of Quaternion is out now - hopefully the last one before the release. Nicer timeline scrolling, (much) better HTML insertion and a few other fixes all around. Packagers and translators - that's a great moment to update your stuff where necessary (would be especially great to see help on Ukrainian, Polish, and Spanish translations).

Element X iOS (website)

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

Ștefan announces

It's holiday season in Element land (and everywhere else?) but that doesn't mean we don't have cool updates for you:

  • Version 1.2.1 has been submitted to AppStore review and, as a result of that, we are now building a special home screen state for when you're not part of any rooms 😅
  • We're setting up the foundations for the RichTextEditor adoption
  • Started looking in what it would take to adopt Element Call and the results are promising
  • We have a brand new notification settings screen
  • The app now shows avatars for direct messages
  • Made improvements to how read receipts are sent
  • And, as always, a bunch of bug fixes and performance improvements

Element X Android (website)

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

ganfra announces

  • Investigate release blocker issues, including fix of async uniFFI bug on Kotlin
  • Continue integration of Compound
  • Continue working on Polls
  • The app now shows avatars for direct messages
  • A bunch of bug fixes and performance improvements

Element Web/Desktop (website)

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

Danielle announces

Element Web/Desktop

  • This week in web… We’re heads down on the stuck notifications issues we’ve been battling. We’re making significant progress across the board. We’ve coined the current issues as “zombie notifications” as these are the ones that are removed by entering a room but come back when the app restarts. Rest assured, we’re doing all we can.
  • Also new in this week’s release are the updated colours. We’ve updated our colour system across the board to improve legibility and usability throughout the app. It goes hand-in-hand with our other accessibility improvements.

Dept of SDKs and Frameworks 🧰

Matrix-Login

Skyler M reports

Reworked matrix-login script to an web-app form so it's usable at https://matrix-token.skylab.fi (source code: https://gitlab.com/samip5/matrix-login, secured by hCaptcha).

  • Supports only SSO at this moment and spits out an access token to be used eg with Whatsapp double puppet.

Trixnity (website)

Multiplatform Kotlin SDK for Matrix

Benedict announces

Trixnity v3.9.0 has been released:

features:

  • BREAKING CHANGE: more type safe push rules (sealed interface for different kinds of push rules)
  • added ServerDefaultPushRules

improvements:

  • CoroutineCache performance improvements (one of the 3.7.x releases made it a bit slower)

Dept of Bots 🤖

Dominik announces

MatrixJoinLink is bot that allows the creation of invite links to non-public rooms in matrix. It uses the Trixnity framework. The bot is currently in early alpha and primarily used as proof-of-concept. In addition, I currently gather feedback regarding the concept.

Reason for this Bot

I always struggled with the problem that I have private rooms, I want to share with a group of friends. Before the bot, I had to invite all the people. Now I can invite JoinLink and create an invite link. This link can be shared to my friends who want to join my room (including spaces).

Technical Details / How it works

  1. Let's assume that you want to share the private room !private:room.domain
  2. After you've invited the bot, you can enter !join link IShareLinksWithYou
  3. The bot creates a new public room that contains "IShareLinksWithYou" in its name. The room will not be listed in the room directory; for this example its ID is !public:room.domain
  4. If somebody joins the public room, the bot verifies whether the rooms belong to each other based on two encrypted state events in !private:room.domain and !public:room.domain. If the validation is successful, the bot invites the user to the private room.
  5. If you want to disable the share simply type !join unlink in the private room. This will invalidate the link.

MensaBot

Dominik announces

The MensaBot is a bot I created at the beginning of the year using the Trixnity framework. It sends a daily reminder of the food that is currently available in your canteen (German: Mensa). You can also use commands to request the list directly. Currently, it only supports the API of my university's canteen. However, the bot is extensible for new canteens.

Features

  • Schedule daily posts about the food in your canteen
  • Get a summary of the food in your canteen (on the current date)
  • Simple rights management (only configured admins can interact with the bot)

flip-matrix-bot (website)

A Matrix bot for the Friendly Linux Players community.

HER0 announces

Among other (less interesting) changes, the bot received an update to the response generated by the information events command, contributed by a community member!

Additionally, the in-progress documentation keeps getting improvements. This week, it was focused on the Running the bot section, starting with the Installation chapter.

Dept of Events and Talks 🗣️

Matrix @ FrOSCon

HarHarLinks says

FrOSCon is happening this weekend! If you're very spontaneous, or at least a bit spontaneous and not too far away, drop by our Matrix Community Stand and Devroom!

Dept of Guides 🧭

Matrix client tutorial

uhoreg says

The initial version of the Olm encryption section of my Matrix client tutorial is now up. The plan is to do sending/receiving of to-device messages next, and then a section where all the e2ee pieces get put together into a more coherent package. After the to-device section is written, it will be almost a replacement for the current e2ee implementation guide, with the missing sections being encrypted attachments (which, in the current guide, is just a pointer to the spec), and key requests/forwarding.

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
1test.zemos.net256
2zemos.net609
3herkinf.de653
4kittenface.studio880
5maescool.be970
6geipert.eu1003.5
7wcore.org1096
8matrix.comrademajor.bond1411.5
9wi11.co.uk1981
10rom4nik.pl2441

#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
1test.zemos.net67.5
2zemos.net137
3herkinf.de205.5
4shiftsystems.net333.5
5matrix.org364
6777.tf503
7forlorn.day874
8rustybever.be930.5
9matrix.shutdown.network292340

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 2023-07-28

28.07.2023 18:00 — 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://spec.matrix.org/proposals.

MSC Status

New MSCs:

MSCs in Final Comment Period:

Accepted MSCs:

  • No MSCs were accepted this week.

Closed MSCs:

  • No MSCs were closed/rejected this week.

Spec Updates

We've been quite busy at IETF 117 this last week discussing MLS and MIMI in several contexts, meetings, and sessions. Overall things have moved pretty fast in the last week, but the short summary is we're working with MIMI to get (Linearized) Matrix used as the new-found "signalling layer". This layer delegates membership of the room to the crypto layer when the crypto layer (namely MLS) supports being used as such, and is responsible for enforcing all policies. Policies in the context of MIMI are things like join rules, history visibility, and power levels, but with an added twist: we're looking at supporting Role-Based Access Control (RBAC) in combination with power levels in MIMI, which should also bring RBAC to Matrix in the form of a currently-unwritten MSC.

All told, we've got several new documents to write and MSCs to draft, but we'll get there in time. The MIMI working group is expecting solutions in place by about September, so watch this space for more news as we progress. An architecture draft is also in progress on the MIMI side to further explain what all of these new layers mean. In the meantime, if you have questions then please visit the matrix-spec room on Matrix!

We're also looking for more Matrix 1.9 candidates. Currently we have just custom emoji and anything to do with MIMI on the agenda - if you'd like to add more, let us know in the Office of the Matrix Spec Core Team room on Matrix.

Random MSC of the Week

The random MSC of the week is... MSC3062: Bot verification!

This MSC describes a method for verifying (cross-signing) the devices of a bot user, and how verification of that sort could be done. Obviously it wouldn't make much sense to verify emoji with a bot. Instead, this MSC suggests that the bot provide a URL to present to the user. If the URL appears trustworthy (those who would control this URL should also be in charge of this bot), then the user can choose to continue the verification.

The user's Matrix client would then make a request to the URL with details of the verification. If the server responds successfully, some cryptographic magic happens, and your client will consider the bot verified!

This is essentially tying a bot's verification with control of a domain's DNS, which I think is a smart way to do things. But you do need to watch out for those pesky UTF-8 control characters when asking the user to verify the URL!

Dept of Servers 🏢

Synapse (website)

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

Shay says

This week we released 1.89.rc1. Highlights include:

  • Add Unix Socket support for HTTP Replication Listeners. Document and provide usage instructions for utilizing Unix sockets in Synapse
  • Fix a long-standing bug where remote invites weren't correctly pushed
  • Ensure a long state res does not starve CPU by occasionally yielding to the reactor
  • Remove support for calling the /register endpoint with an unspecced user property for application services
  • Support room version 11 from MSC3820

and much more. If you'd like to take a deep dive into the changes, you can find the release notes here and as always, if you encounter a bug feel free to report it at https://github.com/matrix-org/synapse/issues/new/choose.

Dept of Bridges 🌉

Thib says

we have asked the Libera.Chat team to postpone the removal of portals from 31st July to 11th August, both to leave us more time to get the bridge ready and to leave people more time to turn their portals into plumbed rooms.

We're grateful to the Libera Chat team for accepting our request and being mindful of our community.

Dept of Clients 📱

Element X iOS (website)

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

Ștefan reports

Another week, another successful campaign on tweaks and bugfixes. We’ve continued our foray with:

Otherwise we’re also working on room notification settings and support for polls

Element X Android (website)

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

benoit reports

  • We are still fixing issues on Element X Android, to be able to release it. Thanks for your patience!
  • We are also making progress on some new features like polls for instance, mainly on the Rust SDK side right now.
  • The project got an updated readme: https://github.com/vector-im/element-x-android!

Element Web/Desktop (website)

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

Johannes Marbach says

  • We’ve continued our quest to eliminate stuck notifications. Fixes around read receipts for non-thread relations on thread roots, missing replies and some of the zombie notifications that appear on app reload have landed. Hot off the press, we’ve also identified a promising fix for the unread count mismatch before and after decryption. Check out our meta issue for the plan going forward.
  • On the Compound front, we’ve had discussions around theming support and aligned on letting a small subset of customisable colours define the theme identity while not entirely disabling fully custom themes
  • Lastly, we’ve also made some more progress around the logout path in the native OIDC integration. Sadly, things will be somewhat delayed here with folks going on summer vacation and having to pivot to other projects temporarily.

Element Android (website)

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

benoit says

  • Element Android 1.6.5 has been released, it contains some bugfixes, especially when the device is out of network range. Should be available soon on GooglePlay and F-Droid.

Commune (website)

Commune is a communications suite built on top of matrix. Commune aims to bring together chat, discussions, email and other interactive apps into a single matrix client.

ahq reports

Shpong is an instance of Commune, a publicly-accessible matrix community.

Dept of Non Chat Clients 🎛️

Thirdroom (website)

A browser-based open metaverse client

Matthew (away) reports

We've had to stop development on Third Room for the foreseeable due to lack of funding (folks who said they were interested in funding the project unfortunately did not come through in the end, and Element unfortunately doesn't have the resources to continue funding the development solo). All the code is of course Apache Licensed open source, and we very much hope that the codebase will find a way to live on in future.

Dept of SDKs and Frameworks 🧰

Matrix.swift SDK (website)

cvwright reports

The Circles team at FUTO is proud to announce the first alpha pre-release of Matrix.swift, our homegrown Swift client SDK for Matrix apps on Apple platforms including iOS and MacOS.

Although the project is still quite rough around the edges, it already provides most of the basic functionality that a simple Matrix client app would need. It can create, join, and leave rooms, and it can send and receive messages and media attachments, with support for Matrix end-to-end encryption via the Rust Crypto SDK.

A more complete list of features is available in the main project repo.

The first alpha v0.1.0 release is available from the FUTO Gitlab as well as from a Github mirror.

Trixnity (website)

Multiplatform Kotlin SDK for Matrix

Benedict reports

Trixnity 3.8.0 is released with matrix 1.7 support 🎉

features:

  • matrix 1.7 support (reactions and more)
  • extend MatrixClient API of sync allowing to set presence
  • configurable sync delays (contribution by @steffen.eichenberg)

bugfixes:

  • don't fail filling timeline when room does not exist locally yet

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

Jonas Platte reports

This week, we made progress on four key areas:

Dept of Bots 🤖

Matrix Registration Bot (website)

moanos [he/him] announces

The matrix-registration-bot allows you to manage an invite only matrix server. An admin asks the bot for a invite code and then sends this code to a friend (or enemy) that they want to invite to the server.

it is now a lot easier to run the bot

  • Create an admin account on your server for the bot
  • run docker run -it -e "BOT_USERNAME=@matrix-registration-bot:example.org" -e "BOT_PASSWORD=SECURE_PASSWORD" -e "BOT_SERVER=https://synapse.example.org" moanos/matrix-registration-bot:1.3.0
  • Message the bot help to find out about all it can do

For all the folks using matrix-docker-ansible-deploy: Adding the following to you vars.yml is enough to fully configure the bot

matrix_bot_matrix_registration_bot_enabled: true

#By default, the playbook will set use the bot with a username like 
## this: `@bot.matrix-registration-bot:DOMAIN`.
# To use a different username, uncomment & adjust the variable.
# matrix_bot_matrix_registration_bot_matrix_user_id_localpart: bot.matrix-registration-bot

# Generate a strong password here. Consider generating it with `pwgen -s 64 1`
matrix_bot_matrix_registration_bot_bot_password: PASSWORD_FOR_THE_BOT

# Enables registration
matrix_synapse_enable_registration: true

# Restrict registration to users with a token
matrix_synapse_registration_requires_token: true

No more hassle with access tokens - the bot can obtain them now on it's own!

For questions and support visit #matrix-registration-bot:hyteck.de

flip-matrix-bot (website)

A Matrix bot for the Friendly Linux Players community.

HER0 says

The new online documentation has received a bunch of updates, and now the Interacting with the bot section (starting with the usage overview) is much more fleshed out.

The docs are still in an early state, but this is a step towards making the bot easier to work with! If you have any feedback on this, feel free to file an issue or discuss it with us in #flip-matrix-bot:flip.earth.

Dept of Events and Talks 🗣️

Michael Weimann says

Schau dir den Vortrag „Die aufregende Reise einer Matrix-Nachricht“ am Sonntag, den 06.08. August um 10:00 Uhr auf der FrOSCon an

This post is about a talk „The exciting journey of a Matrix message“ explaining the Matrix protocol and APIs at FrOSCon. Since the conference is mainly in German, the main content of this post is also in German.

Wenn ihr wissen wollt, warum Matrix funktioniert und ihr nächstes Wochenende in der Nähe von Bonn (bzw. Sankt Augustin) seid, schaut euch den Vortrag „Die aufregende Reise einer Matrix-Nachricht“ auf der FrOSCon an!

Im Vortrag verfolgen wir den Weg einer Matrix-Nachricht vom eigenen Eingabefeld bis zur Timeline des Empfängers: Was passiert da, wer redet mit wem und wie zum Geier funktioniert eigentlich diese Verschlüsselung? Zu jedem Schritt schauen wir uns an, welche APIs benutzt werden. Außerdem werfen wir einen Blick in die Matrix-Spezifikation, in der drinsteht, wie das alles funktioniert.

Der Vortrag wird danach auch als Stream bei media.ccc.de verfügbar sein. Die komplette Beschreibung zum Vortrag gibt es im FrOSCon Programm.

HarHarLinks says

Matrix @ FrOSCon

FrOSCon is happening next week!

Matrix User Meetup Berlin

saces reports

Next Matrix user meetup 2.8.2023, 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 brougth 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 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
1test.zemos.net273
2zemos.net462.5
3maescool.be467
4infosec.exchange677.5
5herkinf.de715
6kittenface.studio814
7matrix.org2807.5
80xdead10cc.com3498
9anonymousland.org4500
10plocki.org6476

#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
1test.zemos.net68
2zemos.net123
3herkinf.de151
4777.tf206
5matrix.org337
6l1qu1d.net750.5
7evilcyberhacker.net1184.5
8shiftsystems.net22843

That's all I know

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