element-hq / element-hq/dendrite

Declare support for Matrix 1.3

Open
#3,219 0 comments 0 reactions 0 assignees View on GitHub
help wanted spec-compliance
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.