Synapse 1.77 released
16.02.2023 00:00 — Releases — Mathieu VeltenGreetings Matrix fans! We've published Synapse version 1.77 as the new stable release this week. Synapse admins are encouraged to upgrade to it at their convenience.
Greetings Matrix fans! We've published Synapse version 1.77 as the new stable release this week. Synapse admins are encouraged to upgrade to it at their convenience.
Hey all,
Matrix 1.6 is out there! Like Matrix 1.5 back in November, this release is largely a maintenance update. Matrix 1.1 through 1.4 have been relatively major upgrades, so a little time between features doesn’t feel like a bad idea :)
As with all spec releases, we encourage implementations to gradually update over the next few months rather than have support for everything on release day - please be kind to the projects you use, and help them gain support if able.
Matrix 1.6 sees just 7 MSCs get merged, though this is to be expected from a maintenance release. Check out Matthew’s Matrix 2.0 talk at FOSDEM for an idea of what’s expected over the next few releases.
We’ve covered a couple of the MSCs below, but read on to the full changelog for the full picture.
Andrew Morgan (anoa) says
🔗MSC Status
New MSCs:
MSCs in Final Comment Period:
- No MSCs are in FCP.
Accepted MSCs:
Merged MSCs:
- MSC3943: Partial joins to nameless rooms should include heroes' memberships
- MSC3783: Fixed base64 for SAS verification
🔗Spec Updates
In keeping with our (roughly) quarterly release schedule of the Matrix Spec, v1.6 is due to be released on February 14th. That's only four days from now! The headline features are a new Jump-to-Date Client-Server API (MSC3030) and initial work on speeding up room joins (MSC3706), along with many other fixes and clarifications to the spec text itself.
If you haven't yet seen it, Matthew's Matrix 2.0 talk at FOSDEM walks through some of the upcoming features in the spec. Each will land in subsequent, future releases of the spec. Once all have landed, we'll call that Matrix 2.0 (in name and in actual version number).
Extensible events is one such upcoming feature. While the core proposal outlining the feature (MSC1767) will land in v1.6, the smattering of MSCs which describe how various event types will work under extensible events will span multiple upcoming spec versions. Watch this space!
🔗Random MSC of the Week
The random MSC of the week is... MSC2974: Widgets: Capabilities re-exchange!
This MSC is relatively simple; proposing a method for widgets to ask the client for additional capabilities after it has already been initialised. Doing so allows for increased security and privacy workflows, as the widget need only ask for access to certain pieces of data at the point that it needs it (rather than all up front).
A similar transition of permission granting happened in mobile devices and apps. Initially mobile apps would ask for all permissions they would need up front - which users would blindly accept. These days, mobile OS's have shifted to a model where individual permissions are requested upon attempting to complete an action in an app. This way, users have better context on the reason for the permissions request. (Oddly, browsers have yet to reach this stage with extensions - those still ask for all permissions up front.)
Do check out the proposal and its technical details if widgets are your thing!
For the past two years, FOSDEM couldn’t happen in-person. Fortunately we could help, and Matrix hosted the world's largest free & open source software conference online! This year we were finally back in-person… but not only.
The set-up we have arranged in 2021 and polished in 2022 has proved to be robust and served us well during the pandemic. Returning to an in-person conference didn’t mean we had to throw it all away… quite the opposite!
No Matrix Live today, but there will be a lot of Matrix content this weekend at FOSDEM in the Matrix devroom, and Matthew's main-track talk.
Greetings Matrix fans! We've published Synapse version 1.76 as the new stable release this week. Synapse admins are encouraged to upgrade to it at their convenience. Please take a look at the upgrade notes for any important information about upgrading.
Thib reports
The Matrix Foundation is a candidate this year again to the GSoC programme. If you intend to mentor a student around your Matrix project, please ping me (@thib:ergaster.org) in the #gsoc:matrix.org room. Your project doesn't have to be set in stone yet: we need to have a good estimate of the number of mentors and projects applying before FOSDEM (by the end of next week).
Unfortunately no Matrix Live this week!
Andrew Morgan (anoa) says
Here's your weekly spec update! The heart of Matrix is the specification - and this is modified by Matrix Spec Change (MSC) proposals. Learn more about how the process works at https://matrix.org/docs/spec/proposals.
🔗MSC Status
New MSCs:
- There were no new MSCs this week.
MSCs in Final Comment Period:
Merged MSCs:
- No MSCs were merged this week.
🔗Spec Updates
This week and the week afterwards, the Spec Core Team are mostly focused on improvements to Matrix that we'd like to show off at FOSDEM 2023 this year! That consists of MSCs related to Faster Room Joins (MSC3943 among others) and Extensible Events (MSC1767).
🔗Random MSC of the Week
The random MSC of the week is... MSC3230: Spaces top level order!
This defines an algorithm and a data structure that can be used to order one's top-level list of Spaces and have that order sync across all of their clients. Rooms and spaces within a Space continue to have their order defined by an
order
key (and failing that, theorigin_server_ts
field) in the correspondingm.space.child
event of their parent's Space's state.I won't get into the details of the algorithm here (or its criticisms), but feel free to jump into the MSC and take a look!
We published Synapse version 1.75 as the new stable release this week. Synapse admins are encouraged to upgrade to it at their convenience. It seems like the blog post for version 1.74 was eaten by Santa's reindeer, so this post will also cover changes from it.
Dandellion announces
Back in July I started a discussion on wikidata for adding a matrix space property, after much discussion in the wikidata community (lead mostly by tgr) we instead landed on a Matrix room property. This now enables slightly more accurate semantics when describing matrix rooms belonging to organizations, projects, and people on wikidata.
Wikidata is a knowledge base available under a free license and using standard machine-parsable data to add information to what is known as the "semantic web", this allows querying for information like for example: Organizations with matrix rooms
As the rest of wikimedia's projects it's open for contributions!
Andrew Morgan (anoa) announces
Here's your weekly spec update! The heart of Matrix is the specification - and this is modified by Matrix Spec Change (MSC) proposals. Learn more about how the process works at https://matrix.org/docs/spec/proposals.
🔗MSC Status
New MSCs:
- [WIP] MSC3956: Extensible Events - Encrypted Events
- MSC3955: Extensible Events - Automated event mixin (notices)
- MSC3954: Extensible Events - Text Emotes
- MSC3953: Server capability DAG
- MSC3952: Intentional Mentions
MSCs in Final Comment Period:
- No MSCs are in FCP.
Merged MSCs:
Closed MSCs:
- MSC3852: Expose user agent information on
Device
- MSC3517: "Mention" Pushrule
- Deprecated in favour of MSC3952: Intentional Mentions.
🔗Spec Updates
As you can tell from the above MSC list, Extensible Events continues to charge forwards, with Travis working busily away at replicating all of the existing event functionality (plus new functionality - image albums anyone?) in a world containing Extensible Events. As always, take a look at the core MSC (MSC1767) for a background on what Extensible Events is, and why it's so exciting.
This week has also seen room version 10 become the default recommended room version in the spec! As a reminder, v10 brings the ability to have a room that's both knockable and restricted at once, as well as more strictly enforces the types of power level values.
Otherwise we've seen lots of movement in other areas of the spec. Expect to see some work done around push rules (which have historically been rather complicated and fiddly...) and notifications in the days to come.
🔗Random MSC of the Week
The random MSC of the week is... MSC3779: "Owned" State Events!
I remember this MSC fondly. It was originally born out of MSC3489's need to allow any user in the room to send
m.beacon_info
state events. This can easily be achieved today by lowering the required power level ofm.beacon_info
to the default user level. However, you then run into the issue of any user being able to edit any other user'sm.beacon_info
event!Thus this MSC attempts to modify the state events permission model so that users can "own" certain state events that they send. We already somewhat have this functionality - if you put your Matrix ID as the state ID for any state event, only you or users with a power level higher than you can edit it.
Sadly this little trick (which we use for
m.room.member
events) doesn't work in the case of live location sharing, as the feature demands the ability to share location from multiple devices at once. Hence, trying to send twom.beacon_info
events with the same state key would overwrite each other.This MSC attempts to expand the functionality by modifying the definition so that a user "owns" a state event if the state key starts with their Matrix ID. Problem solved... for the most part!
Do check out the MSC if you have some use cases in mind that would benefit from something like this.