Fix starting workers when federation sending not split out. (#7133). Introduced in v1.12.0.
Avoid importing sqlite3 when using the postgres backend. Contributed by David Vo. (#7155). Introduced in v1.12.0rc1.
Fix a bug which could cause outbound federation traffic to stop working if a client uploaded an incorrect e2e device signature. (#7177). Introduced in v1.11.0.
We released 1.12.0 this week which contains some decent performance wins. Our theme for the moment is to continue working on performance, and the sharding project is starting to make some real progress. Hopefully we get onto breaking out event persistence next week.
Aside from that you'll see a lot of work to improve SSO support, in particular the ability for SSO and User Interactive Auth to work together is just around the corner.
Sorry for all the matrix.org slowness, we're doing everything we can!
Updated the Kubernetes-optimized images of Synapse to 1.12.0.
Both the alpine and debian-based - with jemalloc support - tags use the latest twisted package.
NB; If you're using both workers and application services, make sure that your application service config files are mounted into the worker pods as well.
Debian backports for Buster will see updated synapse and Twisted around the weekend when packages migrate to testing
Debian packages for synapse have been updated and now pull the patched version of Twisted with CVE-2020-10108, CVE-2020-10109 and other security vulnerabilities fixed
the patched version of Twisted in Debian is 18.9.0-8, Ubuntu ships security fixes in 18.9.0-6ubuntu1; both include all necessary security fixes
20.3.0 is currently in Debian experimental and hopefully will be uploaded to unstable by the end of the week
Submitted a PR that adds support for running the Synapse state compression tool to the synapse-purge utility written by djmaze. So that it's able to both launch purges for all rooms, as well as compress their state afterwards.
mx-puppet-bridge is a general bridging library that supports (double)bridging and relays. The goal is to make it as easy as possible for others to bridge new third-party protocols to matrix. Support roomDonate
There is a new skype bridge! mx-puppet-skype, also based on mx-puppet-bridge.
It already features:
Sending normal and rich formatted text in both directions
Sending images, audio and other media in both directions
Some skype emoji are parsed to normal emoji
Skype->Matrix typing and read indicators
Skype->Matrix user updates
Please note that skype seems to be having some issues lately where sometimes messages aren't received (also in the official client), and that sadly also affects the bridge.
Nheko is a desktop client using Qt, Boost.Asio and C++17. It supports E2EE (with the notable exception being device verification for now) and intends to be full featured and nice to look at
The image overlay you get, when you click on an image, should now stay out of your way, when downloading an image (adasauce)
Nheko now shouldn't show a console on launch on Windows anymore (abma)
Typing notifications now won't sanitize users twice. This shouldn't increase Corona infections, just make special characters like < and & show up correctly, so you can put more <3 into your names. (Emi)
A lot of edge cases, where avatars didn't show up correctly were fixed. One issue with dynamic thumbnailing and synapse is still waiting for a synapse pr to be merged.
If you restart your server, Nheko should now use less CPU in the time the server is down. It may take a bit longer to reconnect though.
I'd like to thank all the contributors, that contribute seemingly random, small patches. It really helps make Nheko better in the long term and I really appreciate your help! <3
Quotient 0.5.3 RC goes out - this is a backwards-compatible release that you can safely use with your Quaternion 0.0.9.4. Packagers are welcome to do all the preparations necessary - 0.5.3 release will happen right after the weekend! Despite back-compatibility, this version sports quite a few recent improvements backported from the master branch, including SSO, support of reactions and message editing, .well-known and, of course, quite a few bug fixes. Check it out at https://github.com/quotient-im/libQuotient/releases/tag/0.5.3-rc.
P.S. For those who want more, Quotient 0.6 (and Quaternion 0.0.9.5) are coming real-soon-now, too!
We are still working on cross-signing but we see the end :). Gossiping of cross-signing private keys is now automatically done in background. We have a new modal that pops up on unverified sign-ins. We started to make cross-platform tests and fixed issues. Next week will be all about polishing this feature.
You need to tell the playbook to use the :develop riot-web though. The documentation page instructs people to do that (for now).
I did a 4-person video conference the other day and all Jitsi components combined seemed to take some ~500MB of memory and quite a lot of CPU, while the call was ongoing.
Now comes with a !risk command that takes an age and calculates some outcome probabilities for that age group. Thanks to @dctremblay:matrix.org for adding this in!
v0.2.0 of the reminder plugin for maubot was released recently. The primary change was a new custom date parser, which should have less weird results than before.
It also has a locale system. You can set locales with !reminder locale <list of locales>. The system is fairly simple: it just tries to parse the input with each locale in the order specified and uses the first match. It doesn't have many locales so far, so contributions are welcome if you're not afraid of regexes (contributions for reducing the number of regexes are also welcome :D)
for those who quite understandably couldnβt endure listening to 90 minutes of waffle about Matrix on The Changelog, the transcript is now up at https://changelog.com/podcast/384!
To help people stay in contact in times of coronavirus, there are now coronavirus rooms in 4 languages (German: #covid-19-de:ungleich.ch , English: #covid-19:ungleich.ch, French: #covid-19-fr:ungleich.ch and Korean #covid-19-kr:ungleich.ch) They are all listed on https://ungleich.ch/u/blog/coronavirus-chats/ to give new matrix users an easy entrance
Here we reveal, rank, and applaud the homeservers with the lowest ping, as measured by pingbot, a maubot that you can host on your own server. Join #ping:maunium.net to experience the fun live, and to find out how to add YOUR server to the game.
The most important reason to upgrade to 1.12.0 is that it contains performance improvements to boost the efficiency of state resolution in room versions greater than v1 (#7095).
It also contains an implementation of (MSC2432) designed to limit room alias abuse. The MSC contains the full details, but in short admins now have more control over aliases as they appear on their local server.
There is also plenty of ground work for our master process sharding project. Nothing that can be used today unfortunately, but expect big improvements for worker based deployments over the coming weeks.
Please pay special attention to the security advisory in the changelog, TL;DR make sure your installation is using Twisted 20.3.0.
Also, note that once Synapse 1.13.0 is released, the default branch will change to being develop rather than master. Again more details follow in the changelog.
Get the new release from github or any of the sources mentioned at https://github.com/matrix-org/synapse/blob/master/INSTALL.md.
Debian packages and Docker images are rebuilt using the latest versions of
dependency libraries, including Twisted 20.3.0. Please see security advisory
below.
Synapse may be vulnerable to request-smuggling attacks when it is used with a
reverse-proxy. The vulnerabilities are fixed in Twisted 20.3.0, and are
described in
CVE-2020-10108
and
CVE-2020-10109.
For a good introduction to this class of request-smuggling attacks, see
https://portswigger.net/research/http-desync-attacks-request-smuggling-reborn.
We are not aware of these vulnerabilities being exploited in the wild, and
do not believe that they are exploitable with current versions of any reverse
proxies. Nevertheless, we recommend that all Synapse administrators ensure that
they have the latest versions of the Twisted library to ensure that their
installation remains secure.
Administrators who have installed Synapse from distribution packages should
consult the information from their distributions.
The matrix.org Synapse instance was not vulnerable to these vulnerabilities.
πAdvance notice of change to the default git branch for Synapse
Currently, the default git branch for Synapse is master, which tracks the
latest release.
After the release of Synapse 1.13.0, we intend to change this default to
develop, which is the development tip. This is more consistent with common
practice and modern git usage.
Although we try to keep develop in a stable state, there may be occasions
where regressions creep in. Developers and distributors who have scripts which
run builds using the default branch of Synapse should therefore consider
pinning their scripts to master.
Changes related to room alias management (MSC2432):
Publishing/removing a room from the room directory now requires the user to have a power level capable of modifying the canonical alias, instead of the room aliases. (#6965)
Validate the alt_aliases property of canonical alias events. (#6971)
Users with a power level sufficient to modify the canonical alias of a room can now delete room aliases. (#6986)
Implement updated authorization rules and redaction rules for aliases events, from MSC2261 and MSC2432. (#7037)
Stop sending m.room.aliases events during room creation and upgrade. (#6941)
Synapse no longer uses room alias events to calculate room names for push notifications. (#6966)
The room list endpoint no longer returns a list of aliases. (#6970)
Remove special handling of aliases events from MSC2260 added in v1.10.0rc1. (#7034)
Expose the synctl, hash_password and generate_config commands in the snapcraft package. Contributed by @devec0. (#6315)
Check that server_name is correctly set before running database updates. (#6982)
Break down monthly active users by appservice_id and emit via Prometheus. (#7030)
Render a configurable and comprehensible error page if something goes wrong during the SAML2 authentication process. (#7058, #7067)
Add an optional parameter to control whether other sessions are logged out when a user's password is modified. (#7085)
Add prometheus metrics for the number of active pushers. (#7103, #7106)
Improve performance when making HTTPS requests to sygnal, sydent, etc, by sharing the SSL context object between connections. (#7094)
When a user's profile is updated via the admin API, also generate a displayname/avatar update for that user in each room. (#6572)
Fix a couple of bugs in email configuration handling. (#6962)
Fix an issue affecting worker-based deployments where replication would stop working, necessitating a full restart, after joining a large room. (#6967)
Fix duplicate key error which was logged when rejoining a room over federation. (#6968)
Prevent user from setting 'deactivated' to anything other than a bool on the v2 PUT /users Admin API. (#6990)
Fix py35-old CI by using native tox package. (#7018)
Fix a bug causing org.matrix.dummy_event to be included in responses from /sync. (#7035)
Fix a bug that renders UTF-8 text files incorrectly when loaded from media. Contributed by @TheStranjer. (#7044)
Fix a bug that would cause Synapse to respond with an error about event visibility if a client tried to request the state of a room at a given token. (#7066)
Repair a data-corruption issue which was introduced in Synapse 1.10, and fixed in Synapse 1.11, and which could cause /sync to return with 404 errors about missing events and unknown rooms. (#7070)
Fix a bug causing account validity renewal emails to be sent even if the feature is turned off in some cases. (#7074)
P2P work is continuing at p2p.riot.im, with various fixes and a new public room directory
Room version work is continuing with new headered event support in Kafka, the internal APIs and the sync API in Dendrite, and in the event code in gomatrixserverlib
Joining rooms over federation is a bit more reliable now, as prev events are handled properly in this case and therefore the first message into the room doesn't get lost
Some improved error handling work has been merged - thanks to prateek2211 and abbyck
The /joined_rooms endpoint is now implemented - thanks to prateek2211
Notes on usage:
In order to try p2p.riot.im, do I need to create an account or should I be signing in to some user?
Just register as normal. Be aware you are registering into your local in-browser Homeserver, rather than a remote service.
v1.1.0 has been released with experimental (incomplete) IPFS support, memory leak fixes, and other improvements. This is a highly recommended upgrade if you use expireAfterDays or have memory problems.
This week we have seen a huge increase in traffic and so we are spending a lot of time battling with scaling. Most notably we shipped an optimisation to improve state resolution for room versions > 1. Our sharding effort continues and we are working towards backing matrix.org with redis for pub sub which is prerequisite for the project.
Aside from that we had some problems with push reliability, this should now be fixed. Sorry if you were bitten!
We also put out 1.12.0rc1 expect a full release early next week.
Next week performance performance performance. Weβll also complete improvements to user Interactive Auth for SSO installations.
Welcome to Christian, who is joining the Bridges team as an employee. He'll start out on the Slack bridge but will be working more generally with Half-Shot on all bridges.
mx-puppet-bridge is a general bridging library that supports (double)bridging and relays. The goal is to make it as easy as possible for others to bridge new third-party protocols to matrix. Support roomDonate
Unified namespaces is a big update! This means that, if the remote protocol has globally unique IDs (e.g. as discord has the case) it will only create one room on matrix for any amount of puppets. Combining this with the advanced relay option, this means that protocol implementations (e.g. discord) now can act like a normal relay bridge only with super awesome puppeting! As in, the for the puppets, the DMs work and channels&guilds that the relay bot is not in. All this is possible without any changes to the protocol implementation, should the protocol have unique global IDs.
In preparation to the upcoming (long-awaited) releases for Quotient and Quaternion, the library has gained full-blown support of SSO flow, such as the one used by the Mozilla's homeserver, and adventurous Mozilla Matrix users can use the master branch of Quaternion to login to their accounts. Next step - official releases and backports.
Nheko is a desktop client using Qt, Boost.Asio and C++17. It supports E2EE (with the notable exception being device verification for now) and intends to be full featured and nice to look at
Emi added a new sorting method to the room list, that keeps rooms with unread messages on top, even when the messages are older than the messages in silenced or read rooms. It makes the room list a lot nicer to use and after being skeptical at the start, I now use it on all my systems. Huge thanks to Emi for bearing with my long and confusing review!
I'm working on a Gtk GUI for py-matrix-utils, progress can be followed at https://gitlab.com/Swedneck/py-matrix-utils
This isn't going to be a fully fledged matrix client, it's just a graphical interface for various matrix tools.
Thanks to the super awesome bridging powers of Matrix anyone on WhatsApp can now chat with the bot! Feel free to chat with it and share with anyone who prefers to use WhatsApp!
More magic bridging means Telegram users can now chat with the bot! Please feel free to share with anyone who prefers to use Telegram!
Additionally:
CovBot has a couple of contributors working on it now too π
We are mid in building a team to give free IT support and security help to critical infrastructure operators during Corona times organized via Riot. Added a local alias for this room here at #helpeurope:matrix.org . room where we started creation #helpeurope:matrix.ctseuro.com. Everybody wanting to help is welcome.
Here we reveal, rank, and applaud the homeservers with the lowest ping, as measured by pingbot, a maubot that you can host on your own server. Join #ping:maunium.net to experience the fun live, and to find out how to add YOUR server to the game.
Matthew talks to Kegan and Neil about the status of P2P Matrix, and about Dendrite development.
You will know Matrix Live as a weekly video produced by the Matrix team and shared on YouTube. We are now offering the same content as an audio-only podcast, as a way of reaching more people. You can find the podcast:
The Changelog invited me to do a podcast on all things Matrix - the 90 minutes of high density braindump can be found over at https://changelog.com/podcast/384
We are still welcoming GSoC students who want to apply to work on Matrix projects this summer. You can browse the suggested projects list or submit your own by chatting in the appropriate project room or #gsoc:matrix.org. Student applications begin on Monday!
Matthew also mentioned the work that is going on with Dendrite P2P:
We've got our first ever public Riot running with P2P Matrix, by compiling Dendrite to WASM and embedding it in the browser as a service worker. It's still quite early, but you can try to play with it now at https://p2p.riot.im. You can hear (and see!) all about it in this week's Matrix Live.
It's using libp2p (IPFS's network layer) for P2P, coordinating via our shiny new libp2p websocket rendezvous server at https://rendezvous.matrix.org:8443
Lots of limitations still: the room directory isn't hooked up; it doesn't persist your database yet; and no store-and-forward for users who are offline.
Meanwhile Neil has been making good progress on v3, v4 and v5 room versions in Dendrite
Spent a few days in London discussing the shape of P2P and Dendrite to come... watch this space βοΈ
This week weβve been working on alias abuse support, fixing a SSO limitation with user interactive auth which will allow SSO users to deactivate devices etc. Weβve also fixed a few SSO registration bugs and are currently investigating a push problem causing push to be delayed for certain users.
Next week more of the same, plus a return to Synapse performance work.
Quotient is getting traction again, with 0.6 release finally in sight. This week a long standing PR from aa13q has been merged with a few (still very much work-in-progress) E2EE additions. One notable change is that by default the master branch (and the upcoming release) now builds without E2EE. This is to relieve packagers from a chore of adding E2EE dependencies (QtOlm and olm) for not much merit, while the work on E2EE stack for Quotient continues. In the meantime, the recommended way of using E2EE with Quotient-backed clients is to use pantalaimon next to your client application.
Nheko is a desktop client using Qt, Boost.Asio and C++17. It supports E2EE (with the notable exception being device verification for now) and intends to be full featured and nice to look at
One could say not much exciting stuff happened. Emily contributed a fix, that drops the filesystem access requirement from the nheko flatpaks. Otherwise I've heard someone working on hiding events in the timeline and some random branches named device-verification appeared. We'll see, where that will lead...
v1.5.13-rc.1 available on staging with some more goodies like an option for alphabetically sorted room list, an option to dismiss the read marker and a fix for the right panel causing scroll jumps. Cross-signing work continues and is tantalisingly close to completion for release!
πInteresting article about using matrix-client.el with Pantalaimon
Some folks over at #matrix-client.el:matrix.org suggested i should submit my article here. ItΚΌs about making matrix-client.el able to participate in encrypted rooms via Pantalaimon.
Just released version 2.0.1 of the Ruby SDK - which should probably by 2.1.0 but I'm apparently quite tired today - adding support for non-final MSCs without polluting the main APIs.
Currently only MSC2108 - Sync over Server Sent Events - is implemented, but more MSCs can easily be plugged in as wanted.
The auto-invite-matrix-bot utility bot now not only can relay invites to one primary account but it also is relaying mentions from your secondary accounts to your primary account now!
You may have learned that recorded cases of COVID-19 are increasing exponentially. Also increasing exponentially are updates from Peter Roberts, who has developed a maubot to help provide information:
Here we reveal, rank, and applaud the homeservers with the lowest ping, as measured by pingbot, a maubot that you can host on your own server. Join #ping:maunium.net to experience the fun live, and to find out how to add YOUR server to the game.
A busy week in Synapse this week! We've released Synapse 1.11.1 to fix a security problem with single-sign-on, Patrick has been putting the finishing touches to the room-alias-spam mitigation measures in MSC2432, and Erik has been doing some exciting work in replacing the inter-process replication protocol for worker-based deployments.
We've also started the design work on single-sign-on support for user-interactive-auth, which we'll be starting implementation work on next week.
Also:
Oh hello... is that Synapse replicating data streams using Redis, paving the way to multi-master Synapse clustering for arbitrary horizontal scalability!?! π pic.twitter.com/E7pcFWQEgC
mx-puppet-slack supports xoxc tokens now! That means you are able to bridge slack workspaces without the need of legacy tokens or oauth - no permission from the workspace admins are required for those!
mx-puppet-bridge is a general bridging library that supports (double)bridging and relays. The goal is to make it as easy as possible for others to bridge new third-party protocols to matrix. Support roomDonate
gomuks now supports sending replies, reactions and redactions with commands. You can either run the command (e.g. /react ποΈ) first and then select the message with up/down arrows and enter, or you can click on a message to select it first and then run the command.
In general, we'll welcome any help if someone would like to contribute - great way to get some experience with React Native! Just reach out!
If anybody has the skill set or interest, we are also looking at creating a React Native specific Matrix SDK to improve performance and allow others to develop RN clients easily.
Riot-iOS: We have fixed an issue with push notifications but we are still investigating rageshake logs before doing the release. In parallel, we are still working on cross-signing: QR code and Secret Sharing.
Nheko is a desktop client using Qt, Boost.Asio and C++17. It supports E2EE (with the notable exception being device verification for now) and intends to be full featured and nice to look at
We welcomed adasauce as an official member to the Nheko project on Github! Adasauce has been working on a lot of the smaller annoyances and layout issues.
Adasauce started working on configuring what events get shown in the timeline on a per room or account wide basis.
We have merged the dev branch to master, because it confused a lot of people. If your packages use 0.7.0-dev, now is the time to switch
red_sky merged the dev branch and started updating everything, that depends on this branch. This includes the AUR package and our Weblate instance (for translations).
Nheko now has experimental support for MSC2448. This adds a blurry preview for images (and videos) sent via nheko directly into the event body (at the cost of ~30 bytes). This considerably reduces latency until clients show something, that isn't an empty box, to preview media, since downloading the media over federation and generating a thumbnail has positive latency.
Avatars should now not be blurry when using display scaling. Please report, if this is still happening to you (in the timeline or room list, there is a known issue with the user profile dialog and servers that don't do dynamic thumbnailing)
Misc fixes and translation updates from multiple contributors.
i have updated simplematrixlib and py-matrix-utils adding (among other things) the ability to upload and download media, and send messages!
Simplematrixlib is available on PyPi.
Another image bump, this time to 1.11.1
The accompanying Helm chart I've been writing has sadly gotten rather delayed due to prioritisations at work, so might be a bit until then.
During last hackweek, I wrote a chat bot integration in Rust for openSUSEs Open Build Service. OBS is used for development of the openSUSE distribution and can build packages from the same sources for Fedora, Debian, Ubuntu, SUSE Linux Enterprise and other distributions.
The bot follows given packages and pull requests and pings a room if any changes occur (build finished, PR got commented or accepted, ..).
Isabella the Monero Girl is a fun sticker pack made by Cypher Stack designed to be cute, fun, and used by anyone. We hope you enjoy emoting with Isabella.
Here we reveal, rank, and applaud the homeservers with the lowest ping, as measured by pingbot, a maubot that you can host on your own server. Join #ping:maunium.net to experience the fun live, and to find out how to add YOUR server to the game.
Heads up that yesterday at 12:00 ET, the Mozilla IRC network was switched off
after over 22 years of valiant service, and the mozilla.org Matrix instance is
now in full production.
You can get at it via the Riot instance at
https://chat.mozilla.org, by pointing your client at
https://mozilla.modular.im, or by joining rooms on the mozilla.org server over
federation via its room directory.
We'd like to thank Mozilla again for putting their faith in Matrix, and are
determined to do everything we can to ensure we're a more than worthy
successor to IRC; we have big boots to fill :)
We've been gathering a huge amount of invaluable FTUE (first time user experience)
feedback from the commentary inΒ #synchronicity:mozilla.org - and we're in the process
of implementing it over the coming weeks. In particular, we've already implemented
alphabetic room ordering, custom theming support, and done a bunch more SSO work.
The immediate priorities include:
Fixing a regression in jumps/jank when scrolling (fix PRed to develop today)
Enabling Mozilla IAM SSO authentication on remaining "interactive user auth" flows (e.g. managing devices)
Fixing the UX around selecting server when browsing the room directory.
Fixing notification defaults, behaviour and settings UX
Better educating users to connect to the mozilla.modular.im if using a random app.
Finally, it's worth noting that the matrix-ircd project is
seeing some commits again, many thanks to jplatte from the Ruma project - so if you are
currently despairing the demise of moznet, never fear: you may yet be able to connect to the Mozilla matrix
server via IRC (authing via Mozilla IAM, of course) and pretend that none of this newfangled Matrix stuff
exists :D
Please keep the feedback coming in #synchronicity:mozilla.org - we're gathering it all up into Github (under the mozilla label) as well as a high level Google Doc to help collate everything.
Synapse 1.11.1 is a security release which contains a fix impacting installations using Single Sign-On (i.e. SAML2 or CAS) for authentication. Administrators of such installations are encouraged to upgrade as soon as possible.
Admins not using Single Sign-On to authenticate users are not affected though may wish to upgrade anyway to pull in some unrelated bug fixes.
Thanks to Rhys Davies for the responsible disclosure.
Get the new release from github or any of the sources mentioned at https://github.com/matrix-org/synapse/blob/master/INSTALL.md.
This release includes a security fix impacting installations using Single Sign-On (i.e. SAML2 or CAS) for authentication. Administrators of such installations are encouraged to upgrade as soon as possible.
The release also includes fixes for a couple of other bugs.
Add a confirmation step to the SSO login flow before redirecting users to the redirect URL. (b2bd54a2, 65c73cdf, a0178df1)
Fixed set a user as an admin with the admin API PUT /_synapse/admin/v2/users/<user_id>. Contributed by @dklimpel. (#6910)
Fix bug introduced in Synapse 1.11.0 which sometimes caused errors when joining rooms over federation, with 'coroutine' object has no attribute 'event_id'. (#6996)
This week Matrix held a Meetup Event in London! There were presentations demonstrating E2E Cross-Signing (including the next, sleeker QR codes), P2P in the browser with Dendrite, Message retention, and Github bridging. There was also plenty of P2E* and B2D**.
Last week we announced that Google had selected Matrix for the Google Summer of Code progamme, and requested projects get involved under the Matrix banner. We had a great response to this call: Ditto, Ruma, opsdroid and Nheko are all offering projects this year, as well as projects under the core Matrix team.
We updated suggested projects list (more to come), so if you're a student please take a look. Think about what you'd like to work on, get involved with suggested projects, and join #gsoc:matrix.org to discuss.
Matrixmon, the perl based c2s probe with metrics to track your Synapse server client API responses is now at v0.5.0 and now allows using an access_token for the probe user.
This week Erik been tackling the work on sharding the master process in Synapse, Patrick has been working on the new room alias semantics while richvdh has been doing some background preparation to allow us to change the way events are redacted in future room versions.
Next week: SSO/User Interactive auth is still in the pipeline, alongside an option to allow users to change their password without logging out their other devices, and of course, more sharding.
The docker images of my projects (specifically mautrix-{telegram,whatsapp,facebook,hangouts} bridges, maubot and mautrix-manager) now support arm64 in addition to amd64. They're multiarch images, so the same tag will work with both architectures.
adasauce fixed the settings page to properly display on narrow screens, like the PinePhone or Librem5
We fixed rooms being stuck on unread. This only applies for rooms, where you receive an event after you updated.
Avatars should now render in high res on high dpi screen with display scaling enabled.
We fixed some smaller annoyances regarding what happens, when clicking elements of replies and the reply button now only shows on hover (or tap on the right side, like the timestamp, on mobile)
We fixed the logic around user interactive authentication needed for registration, which means you should be able to register on servers using recaptcha and other registration requirements again! Note that this currently doesn't seem to work on servers, that use workers. This may be because of a synapse bug, but the jury is still out, it may still be our fault ;-)
We wrote some proposals for GSoC, which Nheko was invited to participate in under the matrix.org umbrella.
nheko-reborn is now available on the guix package manager!
Guix feature reproducible builds, allowing users to verify the binary cache correctness, and the possibility to create tarball/docker images
to easily share the build results with all dependencies to systems without guix package manager.
Guix also aims at reducing bootstrap binaries to a minimum (see this blog post for example), reducing the effect of trusting trust attacks. Those properties led guix to be the package manager of choice for bitcoin development.
Our current Outreachy intern implemented many nice media related things. Videos now have a preview playing directly in the room history and clicking on them opens a player view with the usual controls.
Audio messages have a nicer presentation too. The audio player downloads the whole file to make seeking possible.
The narrow view (used e.g. on the Pinephone and Librem 5) gained a new swipe-back gesture to go back from room to room list
RiotX: We have released version 0.17.0: new attachment management, with media preview and edition. This release also contains a lot of bug fixes. We are also still working on cross-signing implementation.
...is a template repo based on the matrix-nio library that you can use to get quickly up and running with making simple, yet powerful matrix bots in Python!
ποΈ Encryption Support is now built-in π! This does shift the login model from access token to username/password. Note that by entering a device id however, you won't be creating a new device every time you start up the bot!
Other notable fixes:
/sync is no longer spammed! This should take some load off of your homeserver.
Config file parsing is a lot simpler now by way of a _get_cfg method, which allows you to easily device down into yaml dictionaries, set default values, mark whether a config value is required etc.
Thanks to alturiak for motivating me to make these changes :)
tulir made a PR to add a provisioning API - said PR is already merged. Thanks a lot!
Way better relay mode: You can now configure individual puppets to be a relay rather than a puppet. Additionally you can configure default room visibility and autoinvite.
Don't unbridge a room on leaving anymore - it will remain bridged. You can get invites to rooms via the new invite command. With the knock MSC it will also be possible to get an invite via a knock.
If you have any questions, please join our support chat and maybe consider to donate. Thank you!
Hemppa the bot gained ability to run shell commands via Matrix. It's a small feature but enables a lot of possibilities in system management and monitoring, home automation, and whatever you can do in linux shell. As an example project I plan to use it for running a script to open hackerspace door with Raspberry Pi's GPIO if sender is a member. https://github.com/vranki/hemppa
remindbot got support for reacting when mentioned. This allows the bot to be used in rooms with more than 2 participants. The timespec got a minor update, supporting now the variant tomorrow HH:MM. Furthermore, the bot now sends a reaction when a notification has been scheduled instead of a noisy message.
Here we reveal, rank, and applaud the homeservers with the lowest ping, as measured by pingbot, a maubot that you can host on your own server. Join #ping:maunium.net to experience the fun live, and to find out how to add YOUR server to the game.
Synapse 1.11 landed on Friday (sorry for running late on blogging the release notes!)
The main change is to introduce an experimental API MSC2432 for managing aliases for rooms on your local server. In Synapse 1.10 we removed support for m.room.aliases events, which were a way to try to track which aliases a room had on the room itself (but were vulnerable to abuse). In this release we've re-added the ability to query which aliases a given server has for the room, giving visibility for managing aliases, without having them spray all over the room state itself. Riot/Web 1.5.10 supports the new API, giving a way to manage aliases on your local server while we finish off the remaining work to improve alias safety & maintenance.
We've also changed the default power levels for new rooms so that room upgrades and ACLs require you to be an Admin (PL100), and invites in public rooms now require you to be a moderator (PL50).
Get the new release from github or any of the sources mentioned at https://github.com/matrix-org/synapse/blob/master/INSTALL.md.
Admin API to add or modify threepids of user accounts. (#6769)
Limit the number of events that can be requested by the backfill federation API to 100. (#6864)
Add ability to run some group APIs on workers. (#6866)
Reject device display names over 100 characters in length to prevent abuse. (#6882)
Add ability to route federation user device queries to workers. (#6873)
The result of a user directory search can now be filtered via the spam checker. (#6888)
Implement new GET /_matrix/client/unstable/org.matrix.msc2432/rooms/{roomId}/aliases endpoint as per MSC2432. (#6939, #6948, #6949)
Stop sending m.room.aliases events when adding / removing aliases. Check alt_aliases in the latest m.room.canonical_alias event when deleting an alias. (#6904)
Change the default power levels of invites, tombstones and server ACLs for new rooms. (#6834)
Fix worker docs to point /publicised_groups API correctly. (#6938)
Clean up and update docs on setting up federation. (#6940)
Add a warning about indentation to generated configuration files. (#6920)
Databases created using the compose file in contrib/docker will now always have correct encoding and locale settings. Contributed by Fridtjof Mund. (#6921)
Update pip install directions in readme to avoid error when using zsh. (#6855)