This Week in Matrix 2019-02-08
02/08/2019 — General
Huge week! Let's go!
Matrix Live: Riot Redesign Chat (2019-02-08 - Season 3, Episode 13)
Riot-web new version coming out so soon. So soon! It looks and runs great, you can use it today at https://riot.im/develop. Includes a labs flag for displaying custom tags, which I love. Watch the vid.
FOSDEM 2019FOSDEM happened.
- two Matrix-themed packed-room talks
- lots of people coming to chat at the stall to say things like "hi" or "I like Matrix" or "what is Matrix? … wow that sounds amazing, how can I get involved?"
- 1000s of stickers decentralised out of my bag onto people's laptops
Synapse 0.99.0With the release of Server to Server Spec r0.1, Synapse 0.99.0 is shipping now.
Synapse 1.0.0 will be compliant with r0.1 and the goal of Synapse 0.99.0 is to act as a stepping stone to Synapse 1.0. Synapse 0.99.0 supports the r0.1 release of the server to server specification, but is compatible with both the legacy Matrix federation behaviour (pre-r0.1) as well as post-r0.1 behaviour, in order to allow for a smooth upgrade across the federation.
It is critical that all admins upgrade to 0.99.0 and configure a valid TLS certificate. Admins will have 1 month to do so, after which 1.0.0 will be released and those servers without a valid certificate will no longer be able to federate with >= 1.0.0 servers.
Please read the announcement post and be sure to come and chat in #synapse:matrix.org if you need help!
Cadair has been helping admin this year's GSOC application:
Matrix.org has applied to be a GSOC (Google Summer of Code) mentoring organisation. If your matrix project has a feature a summer student could tackle and you have the time to mentor them over the summer, why not add a project idea to our website by submitting a PR to this repo. Feel free to ask questions in #gsoc:matrix.org as well.
In Progress MSCs
- [MSC 1840]: MSC1840: Typed rooms
- [MSC 1849]: MSC1849: WIP: Proposal for m.relates_to aggregations
- [MSC 1866]: Add proposal for invite error code for unsupported room version
- [MSC 1862]: MSC1862: Presence Capabilities
matrix-puppet-hangouts 0.1.0 released, with bidirectional image supporttom reports that:
matrix-puppet-hangouts version 0.1.0 has been released!
This release adds bidirectional (Hangouts -> Matrix and Matrix -> Hangouts) image support!
It also bumps the version of matrix-puppet-bridge (the common core of matrix-puppet-bridge bridges, which handles most of the stuff that's the same between different third-party service bridges, and makes implementing new matrix-puppet-bridge bridges easier) required to 1.16.2, the current latest, for recent bugfixes that improve all matrix-puppet-bridge bridges.
0.1.0 also requires Python 3.5+, for async. Older versions of python3 won't work. PRs getting python3 < 3.5 working again are welcome.
tom also gives credit to d3m3vilurr:
These changes are also brought to us by d3m3vilurr, Honored Hero of Matrix Puppet Bridge
Half-Shot working on matrix-bifrost, a matrix bridge for libpurple and xmpp.js:
This week I have been hard at work fixing a lot of the bugs that have cropped up from bifrost's rapid development. We now have a docker image available (https://github.com/matrix-org/matrix-bifrost).
SMSMatrix now available on F-Droid
A recent favourite of mine, SMSMatrix runs a tiny service on your Android device, which forwards SMS messages to and from Matrix rooms. This week tijder announced that it's now available on F-Droid:
SmsMatrix just got released in the F-droid store. Now everybody can install and get updates from the F-droid store. https://f-droid.org/app/eu.droogers.smsmatrix
matrix-media-repo from TravisR now supports .well-known server delegation
TravisR reports that:
matrix-media-repo now supports .well-known server delegation (compatible with Synapse 0.99 and r0.1 of the server-server specification), among many other bug fixes and improvements. Actually validating the certificates presented by servers will be implemented alongside Synapse 1.0's requirement for it.
Dimension from TravisR now supports .well-known server delegationSimilar to matrix-media-repo above, TravisR has been implementing .well-known server delegation in Dimension:
Dimension now supports .well-known server delegation (compatible with Synapse 0.99 and r0.1 of the server-server specification). Actually validating the certificates presented by servers will be implemented alongside Synapse 1.0's requirement for it.
mxisd v1.3.0-rc.3 is out. This is hopefully the last RC before release, but we would like as much testing as possible! the v1.3 branch is a big enhancement on the previous release with big performance and privacy improvements. It's smaller, faster, stronger and protects you privacy even better than before! You know you want it!
matrix-docker-ansible-deploy now supports Synapse v0.99Slavi reports that:
matrix-docker-ansible-deploy now supports Synapse v0.99 and should be ready for Synapse v1.0.I have been using these playbooks to test my own homeserver deployment and am happy.
If you're using the playbook to manage your Matrix server you should upgrade soon.
Depending on how you've customized your setup, you may not even have to do anything for the big Synapse v0.99/v1.0 transition, besides upgrading and re-running the playbook. A good place to start is the changelog entry: Synapse v0.99 support and preparation for Synapse v1.0
Tchap Android clientWillem reports that:
After seeing a demo at FOSDEM of Tchap, the app the French government uses to access their Matrix network, I decided to try to get it to work as a general-purpose Matrix client. The app uses email and password to log in, and infers the homeserver address from the homeserver name. So to get it to work, I had to patch the app and write a little proxy so it gets the proper homeserver (and optionally identity server) from an email address.
A patched version of Tchap can be found at https://github.com/14mRh4X0r/tchap-android, code for the proxy at https://git.snt.utwente.nl/14mRh4X0r/tchap-proxy. At the moment it's very crude, and images/files don't work since the virus scan API is unimplemented, but at least it can be used outside the French government. ?
Riot iOSFrom the team:
- Still iterating on key backup UX
- Fix various share extension bugs (image sending failure, links share as text, etc…)
- Still iterating on the key backup UX, changes concern Riot and the Matrix SDK
- Valere has worked on Riot Android Notifications, we intend to merge this work on develop at the beginning of the next Sprint.
- RiotX: no update this week due to François being out of the office
.NET SDKHalf-Shot, working on "not bridging":
I opened up the .NET SDK project for the first time in two years and revived it to just about work with a r0.4.0 home server. Its now based on .NET core 2.0.
Related .NET lovin'.
Spectral, soon for KDE Plasma Mobile
Black Hat is clearing:
I'm porting Spectral to KDE Plasma Mobile with Kirigami framework. This provides full convergence and mobile support.Some progress pictures below, desktop and mobile version.
Preparing for Synapse on OpenBSDLinda has been making progress on a project to get Synapse running on OpenBSD, and to that end has been preparing and improving the dependencies that we take for granted on Linux. To summarise the current status:
This week I've been porting Synapse's dependencies to OpenBSD
-currentdistribution. There is no port yet for Synapse in OpenBSD. Ports missing from OpenBSD
6.4for Synapse's dependencies were:
py-frozendict: ok'd, waiting…
py-treq: WIP (this will take a while, lots of dependencies)
py-daemonize: ok'd, waiting…
8.10.4done, waiting to be imported…
py-prometheus_clientdone, needs to be tested/imported…
coturn: TBD, maybe?
py-phonenumberswas added to OpenBSD
py-service_identityreceived updates to ports.
py-frozendictare ported ready and waiting to be given "ok" at OpenBSD's
[email protected]mailing list.
There is an unofficial up-to-date Synapse port exists at GitHub maintained by someone else, which I've not yet tested. (At glance, I can take a guess the
devel/tzport may not be required.)
coturndoesn't have a port yet, may have to look at it later.)