Commit Graph

203 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
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
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
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
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
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
morguldir e341525e04
Undeprecate /initialSync for peeking (#2036)
Signed-off-by: morguldir <morguldir@protonmail.com>
11 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
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 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
Travis Ralston 9486237f1b
Allow guests to access media (MSC4189) (#1959)
MSC: https://github.com/matrix-org/matrix-spec-proposals/pull/4189
1 year ago
Kévin Commaille 6d088e03a1
Add `added-in` shortcode for unread markers section (#1941)
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
1 year ago
Kévin Commaille 415fb43848
Specify `Content-Type` and `Content-Disposition` usage in the media repo (#1935) 1 year ago
Kim Brose c6d974975e
Improve wording of the unauthenticated media deprecation box (#1916) 1 year ago
Johannes Marbach cbe8092d8a
Spec for MSC2867 (Marking rooms as unread) (#1895)
Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
1 year ago
Johannes Marbach b1349dd06f
Remove the deprecated name attribute on HTML anchor elements (#1870)
* Remove the deprecated name attribute on HTML anchor elements

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

* Add changelog

* Update content/client-server-api/modules/instant_messaging.md

Co-authored-by: Travis Ralston <travpc@gmail.com>

* Update content/client-server-api/modules/instant_messaging.md

Co-authored-by: Travis Ralston <travpc@gmail.com>

* Update changelogs/client_server/newsfragments/1870.deprecation

* Rename 1870.deprecation to 1870.removal

---------

Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>
Co-authored-by: Travis Ralston <travpc@gmail.com>
Co-authored-by: Hubert Chathi <hubertc@matrix.org>
1 year ago
Johannes Marbach e4589bbc8a
Clarify that dont_notify and coalesce MUST be gracefully ignored (#1890) 1 year ago
davidegirardi 7d94efe136
Spell out secure secret storage and sharing (#1875)
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
Co-authored-by: Travis Ralston <travpc@gmail.com>
1 year ago
Kévin Commaille 18628dc5d7
Allow to specify a prefix for generated HTML IDs of API endpoints (#1882)
* Allow to specify a prefix for generated HTML IDs of API endpoints

Allows to deduplicate IDs of duplicate endpoints

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
Kévin Commaille 094e25b6cd
Ensure more uniqueness for generated HTML IDs (#1881)
* Include method in all API endpoint children's IDs

Avoids duplicate IDs for object of endpoints
that use the same path but a different method.

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

* Differentiate API endpoints' request and response children's IDs

Ensures that the objects have a unique ID compared to other parts of the endpoint.
Mostly useful for the Error type that can be used for responses with different status codes.

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

* Differentiate the names of both SessionData formats

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
Kévin Commaille 5fbfdd6821
Fix generated HTML (#1880)
* Add tr as child of thead in HTML tables

It is invalid HTML for th to be the direct children of thead

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

* Remove unnecessary HTML code end tag

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

* Avoid nesting p HTML elements

A p HTML element cannot contain other block elements,
so the "parent" element is closed when the first "child" one is opened.

We need to use Page.RenderString with options
to force Hugo to keep the wrapping p elements
even if the content contains a single paragraph.

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

* Add missing HTML details end tags

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

* Replace HTML a self-closing tag with start and end tags

The a element start and end tags are mandatory.

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

* Replace obsolete HTML name attribute with id

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

* Add changelog

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
1 year ago
Hugh Nimmo-Smith 5f47b96240
Clarify when server name is used and link to definition (#1862)
* Clarify when server name is used and link to definition

* Changelog
1 year ago
Travis Ralston 7a51ae879c
Add authenticated media (MSC3916) (#1858)
* C2S: Deprecate now-legacy endpoints

* C2S: Fix MXC URI code block while we're here

* C2S: Describe the authentication and deprecation requirements

* C2S: Intro the upload/download endpoints differently

* C2S: Literally copy/paste the `content-repo.yaml` spec

* C2S: Drop `/upload` and `/create` because we aren't replacing them today

* C2S: Fix notes while we're here

* C2S: Update metadata for new endpoints

* C2S: Add authentication to new endpoints

* C2S: Drop `allow_remote` and `allow_redirect` on new endpoints

* C2S: Append backwards compatibility notes

* C2S: Decorate old media endpoints with pointers to the new ones

The server-server spec might have a harder time linking to these, but that can be fixed with verbiage.

* C2S: Annotate IdP icon spec with media auth implications

* S2S: Modernize section text

* S2S: Create content repository API

This is largely a copy/paste of the new authed content repo API in the Client-Server API, though some keywords (like "client") have been changed. Paths and response formats have also been changed to support the federation-specific requirements.

* C2S & S2S: Add plethora of changelogs

* Reference RFC 1341

* Upgrade keywords in changed text

* Mention caching

* Cross-reference IdP icons

* Update content/client-server-api/modules/content_repo.md
1 year ago
Hugh Nimmo-Smith 4a280bcd87
Clarifications around encoding of data within verification QR codes (#1839) 1 year ago
Richard van der Hoff cd8ce97563
Minor clarifications to the "end-to-end encryption" module (#1863) 1 year ago
Johannes Marbach a17550648c
Fix typo in moderation policy lists spec (#1832) 2 years ago
Kévin Commaille ea781ef7b2
Spec markup for mathematical messages (#1816)
* Spec markup for mathematical messages

As per MSC2191.

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

* Add changelog

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

* Add warning box

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

* Improve warning

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

* Add links

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

---------

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
2 years ago
Sumner Evans 500e83b9b7
e2ee/qr: clarify that the device's Ed25519 signing key should be used (#1829)
Signed-off-by: Sumner Evans <sumner.evans@automattic.com>
2 years ago
Richard van der Hoff dac867dd6a
Rename "recovery key" to "backup decryption key" (#1819)
Also, some other editorial improvements, including factoring out our two definitions of the same key encoding algorithm.

Co-authored-by: Travis Ralston <travisr@matrix.org>
2 years ago
Richard van der Hoff 073ce659df
Define opaque identifier grammar (#1791)
Since we already have three of these, and I'm about to add a fourth, let's pull
it out to a common definition.

We could, of course, keep defining the grammar each time it's used, but
defining it in an appendix helps us be consistent for future API design.
2 years ago