Commit graph

6201 commits

Author SHA1 Message Date
Travis Ralston
d4c74d37a9
Update documentation style & fix room version heading order (#3683)
* Update documentation style & fix room version heading order

Also add a missing signing key section to v6.

This additionally contains various edits to the fragments to have them make a little bit more sense in context.

Finally, this updates various aspects of the documentation style which haven't previously been considered - they're added here considering we're in the area.

* changelog

* enhanced changelogs

* Minor wording adjustments

* Apply suggestions from code review

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

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2022-01-31 15:18:58 -07:00
Aaron Raimist
990dfec94b
Update several spots where C-S API was still using r0 APIs (#3671)
* Update several spots where C-S API was still using r0 APIs

Signed-off-by: Aaron Raimist <aaron@raim.ist>

* Add changelog

Signed-off-by: Aaron Raimist <aaron@raim.ist>
2022-01-31 17:19:56 +00:00
Alexandre Franke
d3e39567f4
Responses schema fixes (#3650)
Fixes #2237.

Corrects the response schemas for:

```
PUT /user/{user_id}/account_data/{account_dataType}
PUT /user/{user_id}/rooms/{roomId}/account_data/{type}
PUT /directory/list/room/{roomId}
PUT /sendToDevice/{eventType}/{txnId}
POST /account/3pid
POST /account/3pid/add
POST /account/3pid/bind
```
2022-01-31 10:31:29 +00:00
Travis Ralston
2e5cc42666
Update node-fetch dependency & lockfile version (#3670)
Modern versions of node and npm should be compatible with this format.

Supersedes https://github.com/matrix-org/matrix-doc/pull/3668
2022-01-27 11:13:02 -07:00
Travis Ralston
df1d150142 Add missing changelog 2022-01-26 12:22:47 -07:00
Travis Ralston
59f4d7ffed Revert fix to appendices 2022-01-26 12:19:13 -07:00
Matthew Hodgson
20aa44bd13
typoes (#3680)
* typoes

* Appease the faulty spellcheck on the json too

Co-authored-by: Travis Ralston <travisr@matrix.org>
2022-01-26 12:14:09 -07:00
Richard van der Hoff
4a9c236572 Changelogs for #3674 2022-01-26 11:00:30 +00:00
Richard van der Hoff
c3b53d5ae6
comments on resolve-allof (#3657) 2022-01-26 10:50:48 +00:00
Richard van der Hoff
783624d2cd
Fix rendering of responses with empty bodies (#3674) 2022-01-26 10:50:09 +00:00
Richard van der Hoff
39a41a18ba
Fix the response for GET /_matrix/app/v1/thirdparty/protocol/{protocol} (#3675)
This should return a single protocol, not all of them.

Fixes #2286.
2022-01-26 10:47:29 +00:00
Matthew Hodgson
c151353956 s/master/main/g otherwise we link to stale content 2022-01-25 23:40:32 +00:00
Travis Ralston
4a597ace51
Re-add knock's otherwise, reject per MSC2403 (#3661)
* Re-add knock's `otherwise, reject` per MSC2403

Fixes https://github.com/matrix-org/matrix-doc/issues/3648

* changelog + changelog for 3432
2022-01-19 17:12:48 -07:00
Patrick Cloke
fff5f87c3d
Fix the type of children in the /hierarchy S-S API. (#3660)
* Fix the type of children in the /hierarchy S-S API.

* Newsfragment
2022-01-19 13:30:09 -07:00
Alexandre Franke
b6b98410c1
🐛 openapi: prepend basePath to all paths (#3642) 2022-01-19 15:39:41 +01:00
Travis Ralston
6c4aabd053
Room versions 8 and 9: Restricted rooms (#3387)
* Room versions 8 and 9: Restricted rooms

MSCs:
* https://github.com/matrix-org/matrix-doc/pull/3083
* https://github.com/matrix-org/matrix-doc/pull/3289
* https://github.com/matrix-org/matrix-doc/pull/3375

* Changelogs

* Capitalization

Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>

* Remove verbiage for spaces because they don't exist

* Iterations on text

* Another clarification

* Make error code descriptions consistent

* Apply suggestions from code review

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

* Incorporate from merge

* Misc language update per review

* Update accuracy before splitting auth rules

* fix wtf moment

* Fix up v8 and v9 to match "fully specify room versions"

* Scope auth events selection to room version

* Apply consistency

* Add changelogs

* Review part 1

* Apply suggestions from code review

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

* Split out redaction sections

* Clarify general case of join conditions

Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2022-01-18 09:55:34 -07:00
Travis Ralston
3475ef62ab
Remove straggling case of "groups" (#3652)
* Remove straggling case of "groups"

* changelog
2022-01-18 08:58:58 -07:00
Travis Ralston
fc3f7d60eb
Remove aliases from /publicRooms response (#3624)
Through attempting to land [Synapse#11667](https://github.com/matrix-org/synapse/pull/11667) it was found that Synapse doesn't return the `aliases` property on `/publicRooms` as it was [removed](https://github.com/matrix-org/synapse/pull/6970) by a [tracking issue](https://github.com/matrix-org/synapse/issues/6898) referencing [MSC2432](https://github.com/matrix-org/matrix-doc/pull/2432) as its base. Though MSC2432 does not make mention of this, the [document](https://docs.google.com/document/d/1NNDkobiFLeUkJtyj0H6qvKIedgvIkZnFKo78-03cGEk/edit) the MSC is based upon makes deliberate effort to mention the endpoint and the removal of `aliases`. Thus, it is determined as a likely accidental omission from the formal MSC and therefore the formal spec.

This has been corrected here by amending the MSC (per the process) and removing the field, basing itself off of the [spec PR for spaces](https://github.com/matrix-org/matrix-doc/pull/3610) for diff clarity.
2022-01-18 08:54:28 -07:00
Travis Ralston
97a8b0bb13 spelling 2022-01-17 13:12:56 -07:00
Travis Ralston
9af83dfd41
Add Spaces to the spec (#3610)
* First iteration of specifying Spaces

MSCs:
* https://github.com/matrix-org/matrix-doc/pull/3288
* https://github.com/matrix-org/matrix-doc/pull/2946
* https://github.com/matrix-org/matrix-doc/pull/1772

Note that this makes modifications to the underlying MSCs as well. These are intended to be minor edits to aid clarity/accuracy of the MSCs, as per the proposal process. Functionally, clients and servers might need to change their behaviour slightly as is expected of implementing this stuff early. Synapse has these changes (alongside backwards compatibility) here: https://github.com/matrix-org/synapse/pull/11667

* add changelogs

* Accuracy per review

* Apply suggestions from code review

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

* fully prefix new endpoints

* Fully prefix endpoint in 3616 too

* Fix ordering example

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2022-01-17 10:03:14 -07:00
Patrick Cloke
21882b6006
MSC3567: Allow requesting events from the start/end of the room history (#3567)
* Initial cut of MSC to standardize from being optiona on /messages requests.

* Fix typo.

Co-authored-by: Travis Ralston <travisr@matrix.org>

* Clarifications of start/end.

* Add information about back-paginating excluded events.

Co-authored-by: Travis Ralston <travisr@matrix.org>
2022-01-16 13:14:54 -07:00
Hubert Chathi
16ec511e9c MSC2675: Serverside aggregations of message relationships (#2675)
* initial version of serverside aggregations proposal

* fix MSC numbers

* clarification

* add e2ee section from 2674 here, as it is only needed for server-side aggregations

* move edge case wrt to calling /context on a relation here from 2674

* fix typo

* clarify which APIs should bundle relations

* move stale_events over to future extensions section

* summarize stale_events and make tone conditional to mark that is not part of the MSC

* casing and wording

* clarify in summary an API for requesting relations is also proposed

* remove proposal for batch get event api as is unused and unimplemented

* attempt to clarify relations vs aggregations

* clarify pagination and align it with synapse impl already in the wild

* conciseness

* better headers

* clarify that relations are always returned, contrary to aggregations

* document the limitation of the event type not being known in e2ee rooms

* specify that redacted relations are not aggregated

* remove type in (non-binding) example as synapse doesn't do this

* mention that these are just examples

* clarify that this is a non-normative example

* Update proposals/2675-aggregations-server.md

Co-authored-by: David Baker <dbkr@users.noreply.github.com>

* add http method for endpoint list

* line break

* remove "unbundled relations" term, it's just confusing

instead use relation events,
with the bundled form now called aggregation

also restructure the headings so we have on section about aggregations
and another one about querying relation events

* some more restructuring of text after changing doc structure

* mention original_event for m.replace relations

* remove dir param as it is unused and unimplemented

* clarify that relating pending events should happen by transaction_id

* remove unimplemented /aggregations/{eventID}//{eventType}/{key}
 endpoint

* Update proposals/2675-aggregations-server.md

Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>

* mention that the server might not be aware of all the relations

* clarify that redacted events should still return their relations and aggregations respectively

* remove /context edge case, it should not be special-cased

* Update proposals/2675-aggregations-server.md

Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>

* Update proposals/2675-aggregations-server.md

Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>

* Update proposals/2675-aggregations-server.md

Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>

* bad example, replies doesn't use relations

* clarify that we dont bundle discrete events

* clarify that we dont bundle discrete events, again

* improve example

* clarify this MSC does not use a prefix

* better english

* clarify pagination in example

* better english

* remove contradication: m.reference doesn't support pagination but example mentions it

* double punctuation

* clarify that only the bundled aggregation limit for truncation can't be set by the client, /aggregations does have a limit param

* move e2ee limitation to limitations section

* clarify prefixes

* mention that state events never bundle aggregations

* Update proposals/2675-aggregations-server.md

Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>

* add that the visibility of relations can derive from that of the target

* typsos

* be more explicit

* moar rewording

* keep related parts together

* don't make a relation invisible because the target event isn't

also clarify what to do with relations for which the target is invisible

* Update proposals/2675-aggregations-server.md

Co-authored-by: David Baker <dbkr@users.noreply.github.com>

* better words

* Update proposals/2675-aggregations-server.md

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

* Update proposals/2675-aggregations-server.md

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

* Update proposals/2675-aggregations-server.md

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

* Update proposals/2675-aggregations-server.md

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

* be more precise when clients should ensure the key is shared

* mention that ignored users can cause different aggregations for users

* move visibility rule changes to MSC3570

* don't overspecify visibility limitation, allow for unspecified behaviour

as synapse includes the invisible events in the aggregation

* Update proposals/2675-aggregations-server.md

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

* Update proposals/2675-aggregations-server.md

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

* Update proposals/2675-aggregations-server.md

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

* Update proposals/2675-aggregations-server.md

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

* Update proposals/2675-aggregations-server.md

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

* move non-normative note to below example

* make rel_type mandatory as the response structure doesn't allow for mixing types

* fix typo/thinko

* make pagination forward only as there is no use case for backwards

* Update proposals/2675-aggregations-server.md

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

* add non-normative aggregation examples

* Update proposals/2675-aggregations-server.md

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

* use relation type rather than rel_type

the former is already define as the latter in MSC 2674

* change trailing slashes remark to event_type, rel_type is mandatory now

* reword and split out client-side aggregation section

* rename parent event to target event, the term used elsewhere

* apply suggestion

* apply suggestion

* remove pagination

* remove mentions of /aggregations endpoint after removing pagination

* add note about not bundling into state events

* restructure headers so more of the aggregations stuff is under section

* make rel_type mandatory for /relations and better wording

* remove confusion that aggregations contain more info than relations

* Update proposals/2675-aggregations-server.md

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

* Update proposals/2675-aggregations-server.md

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

* mention that tokens from /sync, /messages can be used on /relations

* try not to be overly prescriptive

* remove edge case of ignoring events without target event, as ignoring is not always safe

* clarify limitation for encrypted rooms

* make rel_type optional again for /relations

* Update proposals/2675-aggregations-server.md

Co-authored-by: Hubert Chathi <hubert@uhoreg.ca>

* Update proposals/2675-aggregations-server.md

Co-authored-by: Hubert Chathi <hubert@uhoreg.ca>

* Update proposals/2675-aggregations-server.md

Co-authored-by: Hubert Chathi <hubert@uhoreg.ca>

* Update proposals/2675-aggregations-server.md

Co-authored-by: Hubert Chathi <hubert@uhoreg.ca>

* Update proposals/2675-aggregations-server.md

Co-authored-by: Matthew Hodgson <matthew@arasphere.net>

* mention requires auth and rate-limited on /relations

* replace hypothetical examples for bundled aggregations with non-normative ones

* move to MSC 2676 as it's specific to edits

* dont repeat how local echo using transaction_id works

Co-authored-by: Bruno Windels <bruno@windels.cloud>
Co-authored-by: David Baker <dbkr@users.noreply.github.com>
Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
Co-authored-by: Matthew Hodgson <matthew@arasphere.net>
2022-01-15 15:07:44 -07:00
Hubert Chathi
6fb684397a
Clarify how to interpret missing one time key counts (#3636) 2022-01-11 15:30:46 -05:00
Richard van der Hoff
2a5e33a760
Revert "add node_modules (#3632)" (#3633)
This reverts commit cf73fb97bc.

this was a duplicate of an existing entry
2022-01-10 13:12:17 +00:00
Jonathan de Jong
cf73fb97bc
add node_modules (#3632) 2022-01-08 13:12:18 -07:00
Andrew Morgan
a8f7723fe5 Rename assets-hugo directory to assets (#3259)
Now that we've dropped the old build pipeline (and an assets directory does not exist in the repo any longer, we can rename the hugo version of the assets (assets-hugo) created during the build tools migration back to simply assets.
2022-01-06 10:37:13 +00:00
Alexandre Franke
7e92964dc5
🚚 Rename OpenAPI artifact (#3621)
Signed-off-by: Alexandre Franke <alexandre.franke@matrix.org>
2022-01-06 09:36:06 +01:00
Travis Ralston
56532dd688
Describe and hoist stripped state to a first-class citizen (#3606)
* Describe and hoist stripped state to a first-class citizen

Fixes https://github.com/matrix-org/matrix-doc/issues/3413
MSC: https://github.com/matrix-org/matrix-doc/pull/3173

* Add changelog

* may->can for clarity

* Update text per review
2022-01-05 10:57:59 -07:00
Travis Ralston
224773dc6a
Specify fallback keys (#3615)
* Specify fallback keys

MSC: https://github.com/matrix-org/matrix-doc/pull/2732

* changelog

* Appease spell check

* Fine, let's appease the spellcheck this way

* Apply suggestions from code review

Co-authored-by: Hubert Chathi <hubert@uhoreg.ca>

* Fix intro

* word wrap

Co-authored-by: Hubert Chathi <hubert@uhoreg.ca>
2022-01-04 20:35:21 -07:00
Travis Ralston
26e0765159
Add guest changes to spec: MSC3069 and MSC3419 (#3605)
* Add MSC3069 support

https://github.com/matrix-org/matrix-doc/pull/3069

* Add MSC3419 support

https://github.com/matrix-org/matrix-doc/pull/3419

* Normalize and fix guest access endpoints list

* Changelogs
2022-01-04 20:29:40 -07:00
Travis Ralston
00169abcdb
Specify module order manually to work around hugo issues (#3612) 2022-01-04 20:29:10 -07:00
Travis Ralston
0ee58100c4
Add capabilities described by MSC3283 (#3614)
* Add capabilities described by MSC3283

MSC: https://github.com/matrix-org/matrix-doc/pull/3283

* changelog
2022-01-04 20:28:42 -07:00
Travis Ralston
e4057072bd
Add registration token UIA type (#3616)
* Add registration token UIA type

MSC: https://github.com/matrix-org/matrix-doc/pull/3231

**Note**: This introduces the endpoint as v1 rather than r0 given the global versioning changes landed between the acceptance of the MSC and now.

* Fix swagger

* Changelogs

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

Co-authored-by: Hubert Chathi <hubert@uhoreg.ca>

Co-authored-by: Hubert Chathi <hubert@uhoreg.ca>
2022-01-04 20:27:58 -07:00
Travis Ralston
20bd445602
Add a changelog for the appendices (#3609)
As a document which is versioned, we should have a changelog for it. It might be empty most of the time but oh well.
2022-01-04 20:23:02 -07:00
Lukas Lihotzki
4415e36a74 dump-swagger.py: include untagged operations (#3326) 2022-01-04 11:58:34 -07:00
Richard van der Hoff
3be746c9d3
Fix rendering of response examples (#3584)
* Fix rendering of response examples

Fixes the autogeneration of JSON examples for array objects. This fixes a
number of "Specification error: Example invalid or not present" errors in the
rendered spec.

* Unbreak examples for non-objects/arrays

The previous change had broken auto-generated examples for everything that
wasn't an object or array; fix it up again.

* Remove conditions on $example

Everything should now have a generated example, so the condition is
redundant. Furthermore it was suppressing examples for APIs where the example
was an empty dict.
2022-01-04 16:47:58 +00:00
Richard van der Hoff
355e06eaa6
Clarification for /event_auth (#3583)
The description on this endpoint implied it returned the auth chain for the
full state of the room, which is incorrect.
2022-01-04 16:45:10 +00:00
Travis Ralston
592cbd537c
Describe matrix: URI scheme (#3608)
* Copy spec PR near-verbatim from past PR

With light review being addressed.

https://github.com/matrix-org/matrix-doc/pull/3168

* Alter for modern day

* Add changelog

* specify that we're using the grammar
2021-12-30 22:11:09 -07:00
Travis Ralston
1e9dd4d22e
Avoid use of the word "clobber" (#3611)
* Avoid use of the word "clobber"

Fixes https://github.com/matrix-org/matrix-doc/issues/1328

* changelog
2021-12-30 22:07:45 -07:00
Travis Ralston
4734f40098 Add hugo build lock to gitignore 2021-12-29 14:58:26 -07:00
Travis Ralston
afc5298f11
Replace s2s join sequence diagram for legibility (#3603)
Without the vertical lines it's a bit difficult to parse. A different tool was used to generate the graph this time.
2021-12-29 11:58:14 -07:00
Dan Callahan
48d8f7202d
Add HTTP 403 to possible profile responses (#3530)
* Add HTTP 403 to possible profile responses

Some servers may not allow profile lookup over federation, and thus
respond to GET /_matrix/client/v3/profile/{userId} with an HTTP 403.

For example, Synapse can be configured to behave in this way by setting:

    allow_profile_lookup_over_federation=false

Thus, this behavior already exists in the wild, and may cause issues for
clients such as https://github.com/vector-im/element-web/issues/17269.

Synapse could alter its behavior and return an HTTP 404 in these cases,
but amending the Spec seems preferable to align with extant behavior.
Further, allowing HTTP 403 gives clients more specific information as to
why a request has failed, enabling more precise error handling.

Signed-off-by: Dan Callahan <danc@element.io>

* Update changelogs/client_server/newsfragments/3530.clarification

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

* Annotate misc data about error

Co-authored-by: Travis Ralston <travpc@gmail.com>
Co-authored-by: Travis Ralston <travisr@matrix.org>
2021-12-29 11:30:32 -07:00
Travis Ralston
dfec7d687e Remove extraneous slash 2021-12-29 10:17:26 -07:00
Alexandre Franke
6972342611
🐛 Fix base URL for OpenAPI definition (#3602)
Signed-off-by: Alexandre Franke <alexandre.franke@matrix.org>

Co-authored-by: Alexandre Franke <alexandre.franke@matrix.org>
2021-12-29 10:01:32 -07:00
Travis Ralston
afb6867232 Decorate the rest of the appservice login stuff too 2021-12-28 14:23:23 -07:00
Travis Ralston
76aaf39811 Decorate Matrix version on appservice login 2021-12-28 14:21:57 -07:00
Will Hunt
a05706780d Add m.login.appservice to the spec (#3324)
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
Co-authored-by: Hubert Chathi <hubertc@matrix.org>
Co-authored-by: Travis Ralston <travisr@matrix.org>
2021-12-28 14:18:44 -07:00
Travis Ralston
3ebe4e801b Fix historical spec build 2021-12-28 12:50:39 -07:00
Alexandre Franke
b55cc15772
Fix links in OpenAPI description nodes (#3598)
Signed-off-by: Alexandre Franke <alexandre.franke@matrix.org>
2021-12-28 18:14:44 +01:00
Travis Ralston
00ee4d7010 Add changelog 2021-12-28 09:18:13 -07:00