Those following closely will know that the matrix.org home server has been having some problems with our hosting provider. This really came down to I/O provision and stability therein. It turns out that running a homeserver is harder when it can’t talk to the db.
We have now fully migrated to our new provider (with improved hardware specs) and you should notice everything feeling much much snappier.
We have also taking the time to upgrade all of our community rooms to modern room versions. This should mean an end to state resets and other unintuitive behaviour associated with large public rooms.
I have been dismantling my habitat in Japan and will spend a couple of weeks in Moscow, Russia before moving further west to the Netherlands. Due to this, expect very low activity on Quotient front in December; but I still intend to release the first beta of libQuotient 0.6 in the remaining week, breaking the half-year span without releases.
anoa told us:
Here's your weekly spec update on what happened last week in spec land.
Entered Final Comment Period:
- MSC 1756: cross-signing devices using a master identity key
- MSC 2313: Moderation policies as rooms (ban lists)
Neil told us:
This week released Synapse v1.6.0rc1 and will release the real deal next week. 1.6.0 contains a lot of ground work for e2ee cross signing, supporting multiple databases (to aid db sharing) as well as a bunch of bug fixes and perf improvements.
Aside from that we’ve been working on room retention support and ephemeral messages which should be ready to merge rsn.
Finally we’ve been working on improving config granularity for caching, such that individual caches can be configured via homeserver.yaml. Experimenting with this approach to caching has proved to be very powerful in tuning performance, expect to see it on mainline shortly. Further down the line we'd like to make it more dynamic so that manual tuning is unnecessary.
This is also now available from Mathijs' docker hub repo.
Facebook decided to break everything and switch from long polling to MQTT over websockets, but mautrix-facebook has already been updated with initial support for the new protocol. It's still a bit buggy though, e.g. reconnecting after a disconnection doesn't seem to work properly
I have started deploying Brawl, you can try it at https://bwindels.github.io/brawl/
Also few small new features and fixes since the last TWIM mention a while back:
- make initial sync faster: it uses the lazy load members feature to not load a lot of room state on initial sync as that isn't used yet anyways.
- more useful room list: room aliases and are now recognized for the room name, and DMs are named after the user id.
- some smaller bugs fixed
koma, Kotlin library:
- Update Kotlin to latest release 1.3.60
Continuum, desktop client based on koma:
- Implement pop-up and sound, which will be used to show notifications
We are almost done in our privacy work around integrations and integrations manager. While we were working on widgets, we made some improvements on them. They now have a menu with some actions (refresh, open in Browser, remove). The jitsi widget now displays the room name, user avatar and name.
@poljar:matrix.org told us:
The PR for matrix-react-sdk has finally landed, the PR for riot-web needed some documentation and is waiting for final review. Work on the UI for our indexer inside of riot has started and some more functionality to load events that are files has been added inside of Seshat as well.
Privacy work related to Integration Manager about to be released (SDK + App). Also a couple of bug fixed (including the infinite app restart after SSO token expiration)
riot web just gained in-app notifications for verification requests on /develop. See PR at https://github.com/matrix-org/matrix-react-sdk/pull/3661 . All of this is behind the verification over DM labs flag!
Check out these docs, very nice!
matrix-notepad It's been a slow two weeks for matrix-notepad since I've been a bit busy.
- The core "Logootish" algorithm was documented
- "Logootish" was separated out into its own repo (
logootish-js) and converted to TypeScript.
- TypeDoc was used to document the
- Fixed some wonderful spelling errors in the algorithm code
- Nothing has changed for the main Matrix Notepad repo, so there's no user difference. It just makes the core algorithm a bit easier to read.
My plan in the future is basically to work out rich text and JSON object collaboration (clearly, this is far away!) and create some kind of "universal client" that can load up web apps to use the algorithm in a single Matrix room. The result would be that it's much easier to create collaboration apps.
Obviously, that's a far-off goal, but my point in documenting the algo is to get ahead of the game a bit
v0.4.0 has been released of the matrix-bot-sdk. Last week was beta 15, and now it's out for real. There's quite a few changes from v0.3.9, but here's an overview:
Support for encryption through Pantalaimon
Support for metrics
Finished support for appservices
Better support for bridges (storage, mappings, and utility functions)
Classes for events and other structures in Matrix
Utility classes for permalinks, profile caching, Synapse admin APIs, and server ACLs (globs)
Improved logging support
Various bug fixes and improvements
Give it a test, and report any issues in #matrix-bot-sdk:t2bot.io ! The full diff is available here: https://github.com/turt2live/matrix-js-bot-sdk/compare/v0.3.9...v0.4.0
Maubot will now automatically follow room upgrades. In addition to that, plugins storing room IDs in the database have been updated to automatically update the database when the room is upgraded.
In other maubot news, the PR by lorico to rewrite my old GitLab bot as maubot plugin was finally merged.
See you next week, and be sure to stop by #twim:matrix.org with your updates!