Commit Graph

303 Commits (2aacc1feda4bd949d1148755ab724718f03c4a3a)

Author SHA1 Message Date
Kévin Commaille 2aacc1feda
Remove legacy mentions (#2186)
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
2 months ago
Johannes Marbach 72a2ebc7ad
Spec PR - MSC4142: Remove unintentional intentional mentions in replies (#2210) 3 months ago
Travis Ralston 7bc016bda6
Specification for MSC4311: Create event availability in stripped state (#2207)
* Part 1: Invites

* Part 2: Knocks

* Use correct schema and examples; Remind readers often about formats

* changelogs

* Add schema warning

* Name the objects

* Move changed-in and expand upon it

* Rename the example

* address review feedback
3 months ago
Kim Brose bfbeb5e257
clarify world_readable history visibility (#2204)
Signed-off-by: HarHarLinks <2803622+HarHarLinks@users.noreply.github.com>
3 months ago
Travis Ralston f97d2944ae
Room version 12 (#2193)
* Placeholder

* i++

* Room version 12

Template out a v12 room version

Make v12 default, per MSC4304

Update PDU checks and auth event selection per MSC4291

Describe new room_id format per MSC4291

Move v6 depth definition to a component for easier referencing

Move room_id to a component to prep for v12, per MSC4291

Create and use a new room_id component for v12+ per MSC4291

Reflect auth events selection change onto all room versions per MSC4291

The MSC asks the `description` of `auth_events` to be adjusted, however this feels like a better representation of the change.

Add `room_id` format rules and renumber per MSC4291

Reflect change to rule 1.2 per MSC4291

Insert same room_id check to v1-12 auth rules per MSC4307 and MSC4291

Deprecate `predecessor.event_id` per MSC4291

Insert auth rule to validate `additional_creators` per MSC4289

Insert rule for `users` validation of creators and renumber per MSC4289

Define "room creator(s)" per MSC4289

Spec `additional_creators` on create events per MSC4289

Spec `additional_creators` on `/upgrade` per MSC4289

The MSC doesn't mention how to handle unsupported room versions, but the Synapse implementation used for FCP ignores the field in such room versions. This feels like a good approach, and will need clarifying in the MSC too (if accepted at the spec level).

Add notes to `/upgrade` behaviour per MSC4289 and MSC4291

Describe how additional creators work during room creation per MSC4289

Fix default user power level descriptions per MSC4289

Describe tombstone power level changes per MSC4289

Warn clients about event format changes in v12 per MSC4289 and MSC4291

Flag additional room creators support for client reference per MSC4289

Remove TODO now that it's fully addressed

Copy state res into v12 as-is for modification

Apply Modification 1 to SR2.1 per MSC4297

Apply Modification 2 to SR2.1 per MSC4297

Add summary box to the top of SR2.1 for ease of developer reference

Modification 2 was split into items 2 and 3 for further ease of understanding.

Add all the changelogs

`x` is used until a real PR number can be assigned.

Some changelogs are duplicated to the Client-Server API to increase visibility of the changes to v12.

Review: Minor phrasing adjustments in changelogs

Review: Clarify that v12 isn't quite the default yet in the changelog

Review: Clarify to clients that creators are immutable

Review: Improve 'how to parse a domain' advice for legacy apps

Review: Add a bit more detail as to why a room ID might be required

Apply suggestions from code review

Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>

Clarify that clients can override the tombstone default

Mention creatorship UI label by finishing the Permissions section

We probably should have removed the WIP note in v1.0, but alas.

Add changelog for tombstone changes

Use assigned spec PR number in changelogs

(cherry picked from commit ec81eea7e4532fd398b8013071d6981c97117d9e)
4 months ago
Tom Foster c4bfd2feb8
Spec for MSC4133: Update profile endpoints to support extended fields (#2071)
Signed-off-by: Tom Foster <tom@tcpip.uk>
Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>
Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
Co-authored-by: Johannes Marbach <n0-0ne+github@mailbox.org>
Co-authored-by: Richard van der Hoff <richard@matrix.org>
4 months ago
Eric Eastwood 04f42ac208
Fix `/sync` flow referencing incorrect parameter to use with `/messages` (#2195)
* Fix wrong parameter to use with `/messages`

* Add changelog
4 months ago
Andy Balaam f6d5009959
Clarify that clients should replace events with the most recent replacement by origin_server_ts (#2190)
Signed-off-by: Andy Balaam <andy.balaam@matrix.org>
4 months ago
Benjamin Bouvier fb4a0d8f66
Clarify that the `latest_event` field is serialized in the same form as the event itself (#2169) 4 months ago
Johannes Marbach 3e1e9fa8df
Fix typo (#2179)
Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>
5 months ago
Johannes Marbach 484a777572
Fix typo (#2171)
Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>
5 months ago
Kévin Commaille 1c06ed9cf7
Final tweaks for the OAuth 2.0 API (#2164)
* Clarify that SSO login applies to the legacy authentication API

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>

* Do not point to specific authentication API for obtaining access token

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>

* Add warnings about incompatibility with OAuth 2.0 to endpoints that use UIA

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>

* Add changelog

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>

* Add note about API standards not applying to OAuth 2.0

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>

* Apply suggestions from code review

---------

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
Co-authored-by: Travis Ralston <travpc@gmail.com>
5 months ago
Kévin Commaille b278a4e0ec
Clarify the differences between the two authentication APIs (#2159)
I tried to summarize MSC3861, and add sections to be able to find quickly how to do something with either API.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
6 months ago
Kévin Commaille ccd9e50eb1
Add OAuth 2.0 token revocation (#2151)
As per MSC4254

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
6 months ago
Kévin Commaille e4740e36e8
Add OAuth 2.0 authorization code and refresh token grant types (#2150)
As per MSC2964

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
6 months ago
Kévin Commaille 9244c84a32
Add OAuth 2.0 dynamic client registration (#2148)
As per MSC2966

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
6 months ago
Kévin Commaille 51ccbbd240
Add the OAuth 2.0 server metadata discovery endpoint (#2147)
As per MSC2965.
6 months ago
Kévin Commaille a2a9a02efa
Add OAuth 2.0 scopes (#2149)
As per MSC2967

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
6 months ago
Johannes Marbach 7bcc3ecb81
Spec PR - MSC3266: Room Summary API (#2125)
Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>
6 months ago
Kévin Commaille 866c05f487
Reorganize client authentication section to separate the legacy API and the new OAuth 2.0 API (#2141)
Since account locking and suspension are authentication API agnostic,
this is a pre-requisite to adding the new OAuth 2.0-based API.

This also splits the endpoints that where all included in the
registration OpenAPI data, to separate them cleanly in the spec, and
avoid having deactivation show before registration.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
6 months ago
Johannes Marbach 7470c72d94
Clarify the meaning of "public spaces" (#2109)
Relates to: #633

Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>
6 months ago
Johannes Marbach 643a6dca2d
Spec PR - MSC4147: Including device keys with Olm-encrypted events (#2122)
Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>
Co-authored-by: Richard van der Hoff <richard@matrix.org>
6 months ago
Johannes Marbach 2c734c3c5b
Clarify the meaning of "public rooms" in the room directory (#2104)
Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>
Co-authored-by: Kim Brose <2803622+HarHarLinks@users.noreply.github.com>
Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
7 months ago
Andy Balaam 075d203ecd
Fix typo: as->has (#2144)
Signed-off-by: Andy Balaam <andy.balaam@matrix.org>
7 months ago
Johannes Marbach 0439707624
Spec PR - MSC3765: Rich text in room topics (#2095)
Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>
7 months ago
Johannes Marbach 73fcf366a0
Clarify the meaning of "public rooms" for presence (#2108) 7 months ago
Johannes Marbach 0a1efd8c9c
Clarify the meaning of "public rooms" for policy lists (#2107) 7 months ago
Johannes Marbach 2c6ddafb43
Clarify the meaning of "public rooms" for call invites (#2106) 7 months ago
Johannes Marbach c74befd111
Clarify the meaning of "public rooms" for profile look-ups (#2101) 7 months ago
Kim Brose ca9c376076
Clarify Well-Known URIs (#2140)
* Clarify Well-Known URIs

Signed-off-by: HarHarLinks <2803622+HarHarLinks@users.noreply.github.com>

* Fix section link

---------

Signed-off-by: HarHarLinks <2803622+HarHarLinks@users.noreply.github.com>
7 months ago
Kévin Commaille fca171427f
Clarifications around third-party invites (#2083)
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
8 months ago
Andy Balaam 8a2c58b1b1
Typo "not" -> "no" (#2121)
* Typo "not" -> "no"

Signed-off-by: Andy Balaam <andy.balaam@matrix.org>

---------

Signed-off-by: Andy Balaam <andy.balaam@matrix.org>
8 months ago
Johannes Marbach c7581356bf
MSC4260: Reporting users (Client-Server API) (#2093)
* MSC4260: Reporting users (Client-Server API)

Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>

* Add changelog

* Update data/api/client-server/report_content.yaml

Co-authored-by: Kévin Commaille <76261501+zecakeh@users.noreply.github.com>

* Move option to consistently respond with 200 to user reporting endpoint

* Move optional random delay to event and user reporting endpoints

* Make reason required for user and room reports

* Fix requiredness syntax

---------

Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>
Co-authored-by: Kévin Commaille <76261501+zecakeh@users.noreply.github.com>
9 months ago
Johannes Marbach 844dd6f8ae
Clients can choose which history visibility options they offer to users when creating rooms (#2072)
Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>
9 months ago
Johannes Marbach ad17652fce
Clarify that applying redactions is a SHOULD for clients (#2055) 11 months ago
Johannes Marbach b9f46d1d85
Add missing preposition (#2048)
Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>
11 months ago
morguldir e341525e04
Undeprecate /initialSync for peeking (#2036)
Signed-off-by: morguldir <morguldir@protonmail.com>
11 months ago
Travis Ralston 2fd5bf10bb
Specify account suspension (#2014)
* Specify account suspension

* changelog

* Apply suggestions from code review

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>

* Add some links

---------

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
12 months ago
Kévin Commaille 846cc49eb2
Clarify allowed HTTP methods in CORS responses (take 2) (#2011)
* Clarify allowed HTTP methods in CORS responses (take 2)

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>

* Update previous changelog an add duplicate changelog

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>

---------

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
12 months ago
David Baker 9198182f1a
Add error codes from MSC4178 (#1944)
* Add error codes from MSC4178

* changelog

* Put changelog in the right place

* Move newsfile

* Add the codes to the right endpoint

* Also add M_THREEPID_IN_USE

which was always used and is specified in the IS API, but not in the
C/S API. We decided this was well-specced enough that it didn't need
its own MSC.
12 months ago
Kévin Commaille 54d872e19b
Fix added-in Matrix spec version for report room endpoint (#2028)
See #1938 where they were incorrectly marked as 1.12 instead of 1.13.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
12 months ago
Richard van der Hoff 075a98d619
Add hyperlinks to endpoints (#2016)
... because there's nothing more infuriating than someone talking about an
endpoint, then having to search through 150 pages of spec for it.
12 months ago
Kévin Commaille 8ab2988824
Remove reply fallbacks (#1994)
As per MSC2781.
1 year ago
Kévin Commaille f64eec5a93
Use `json` instead of `json5` for syntax highlighting (#2017)
* Use json instead of json5 for syntax highlighting

Chroma, the library used for syntax highlighting in Hugo, does not support JSON5 so those code blocks were not highlighted.
However it supports comments in JSON so they are highlighted correctly in the rendered spec.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>

* Add changelog

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>

---------

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
1 year ago
Richard van der Hoff f8119f5336
Remove distinction between `StateFilter` and `RoomEventFilter` (#2015)
They are exactly the same type, so let's combine their tables together.
1 year ago
Kévin Commaille 9882d95775
Improve the quality of the rendered diagrams (#1999)
The first commit allows to lazy-load the diagrams, which should improve the loading time of the CS API on mobile. In the process it also improves the alt text of the images.

The second commit serves the diagrams as high-resolution WebPs. Encoding a high resolution diagram as WebP gives a file of approximately the same size as the lower resolution PNG. For maximum compatibility we also serve them as a lower resolution WebP and a fallback PNG. WebP was chosen because it is one of the export formats of draw.io/diagrams.net, and it is widely available in modern browsers.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
1 year ago
Kévin Commaille c5d7eb7a2d
Add `PATCH` and `HEAD` to the allowed HTTP methods in CORS responses (#1995) 1 year ago
Kévin Commaille 611d6c3e7e
Always use `%` delimiter for `added-in` and `changed-in` shortcodes (#1975)
The `<>` delimiters are not necessary for the shortcode to be rendered inline, and in some cases they break some expectations: a shortcode that is separated from other text to be in its own paragraph is not actually wrapped by a `p` element, breaking the spacing between paragraphs.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
1 year ago
Kévin Commaille 1e47d7ec48
Remove `boxes/added-in-paragraph` shortcode (#1970) 1 year ago
Johannes Marbach c74105db43
MSC4151: Reporting rooms (#1938) 1 year ago