element-hq / element-hq/dendrite
Declare support for Matrix 1.3
- Dominant language
- Go
- Stars
- 965
- Forks
- 101
- PR merge metrics
- No merged PRs in 30d
Description
*This issue was originally created by [**@S7evinK**](https://github.com/S7evinK) at .*
[Complete changelog v1.3](https://github.com/matrix-org/matrix-spec/blob/e40d9ca18676fc774b39f30b44998d7f0118596a/content/changelog/v1.3.md)
### Client-Server API
Backwards Compatible Changes
- [x] Make `from` optional on `GET /_matrix/client/v3/messages` to allow requesting events from the start or end of the room history, as per [MSC3567](https://github.com/matrix-org/matrix-spec-proposals/pull/3567).
- While `from` is optional, it is not spec compliant
- [ ] Add refresh tokens, per [MSC2918](https://github.com/matrix-org/matrix-spec-proposals/pull/2918).
- [x] Describe a structured system for event relationships, as per [MSC2674](https://github.com/matrix-org/matrix-spec-proposals/pull/2674).
- [ ] Describe how relationships between events can be "aggregated", as per [MSC2675](https://github.com/matrix-org/matrix-spec-proposals/pull/2675) and [MSC3666](https://github.com/matrix-org/matrix-spec-proposals/pull/3666).
- [x] Add support for a new `knock_restricted` join rule in supported room versions, as per [MSC3787](https://github.com/matrix-org/matrix-spec-proposals/pull/3787).
Spec Clarifications
- [x] Clarify that the url field in `m.room.avatar` events is not required. ([#987](https://github.com/matrix-org/matrix-spec/issues/987))
- [ ] Clarify that the `type` in user-interactive authentication can be omitted. ([#989](https://github.com/matrix-org/matrix-spec/issues/989))
- Not optional in Dendrite
- [x] Correct the default value for `invite` where it is not specified in an `m.room.power_levels` event. ([#1021](https://github.com/matrix-org/matrix-spec/issues/1021))
- See https://github.com/matrix-org/gomatrixserverlib/pull/416
### Server-Server API
Backwards Compatible Changes
- [x] Add a `destination` property to the Authorization header, as per [MSC3383](https://github.com/matrix-org/matrix-spec-proposals/pull/3383).
Spec Clarifications
(NOTE: Non-actionable things removed)
- [x] Remove largely unused `origin` field from PDUs. ([#998](https://github.com/matrix-org/matrix-spec/issues/998))
- [x] Clarify the format for the Authorization header. ([#1038](https://github.com/matrix-org/matrix-spec/issues/1038), [#1067](https://github.com/matrix-org/matrix-spec/issues/1067))
### Application Service API
Backwards Compatible Changes
- [x] Add timestamp massaging as per [MSC3316](https://github.com/matrix-org/matrix-spec-proposals/pull/3316).
### Room Versions
Backwards Compatible Changes
- [x] Add room version 10 as per [MSC3604](https://github.com/matrix-org/matrix-spec-proposals/pull/3604).
- [x] Enforce integer power levels in room version 10 as per [MSC3667](https://github.com/matrix-org/matrix-spec-proposals/pull/3667).
- [x] Add a `knock_restricted` join rule supported by room version 10 as per [MSC3787](https://github.com/matrix-org/matrix-spec-proposals/pull/3787).
Spec Clarifications
(NOTE: Non-actionable things removed)
- [x] For all room versions: Add `m.federate` to the authorization rules, as originally intended. ([#1103](https://github.com/matrix-org/matrix-spec/issues/1103))
Contributor guide
Research direction
Start with the linked Matrix 1.3 changelog and the unchecked Client-Server API items, especially MSC2918, MSC2675, MSC3666, and the user-interactive authentication clarification. Compare those requirements with Dendrite's current support; done means the remaining applicable items are implemented and the project can accurately declare Matrix 1.3 support.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- api, backend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100