Commit graph

6310 commits

Author SHA1 Message Date
Alexey Rusakov
980d9cd6e9
openapi_extensions.md: fix typos and leftovers (#1128)
* openapi_extensions.md: fix typos and leftovers

dump-swagger had to substitute things in the past - these days it
just merges definitions.

* Changelog
2022-06-14 22:02:52 -06:00
Neil Alexander
1a994f6119
Add m.federate into the auth rules (#1103)
* Add section about `m.federate` into the auth rules

* Add changelog entry

* Update changelog, add to room version 10 event auth rules
2022-06-14 17:08:33 +01:00
David Robertson
580be61df7
Conflicted state set is a set of events (#1120)
In #1042 I incorrectly wrote that the conflicted state set is a set of
pairs (K, V). We later take the union of the conflicted state set and
the auth difference. The latter is a set of events (V) only.

Fix this by making the conflicted state set a set of events rather than
a set of pairs. That is, the conflicted state set is a a `Set[Event]`
instead of a `Set[((type, state key), event)]`.
2022-06-14 17:07:16 +01:00
Alexey Rusakov
cbdd889fa8
auth_data.yaml: formally allow it to be non-object (#1115)
Closes #716.

Signed-off-by: Alexey Rusakov Kitsune-Ral@users.sf.net
2022-06-14 16:35:18 +01:00
Hubert Chathi
10615c5385
Merge pull request #1113 from zecakeh/refresh-token-inhibit
`refresh_token` is omitted if `inhibit_login` is true
2022-06-13 05:30:47 -04:00
Hubert Chathi
3fbaced8be
Merge changelog with changelog for #1056 2022-06-13 05:27:17 -04:00
Kévin Commaille
86f984b1b6
Changelog
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
2022-06-11 17:52:48 +02:00
Kévin Commaille
c665f7fcb6
refresh_token is omitted if inhibit_login is true
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
2022-06-11 17:47:20 +02:00
Travis Ralston
926c6bad61
Deprecate the sender_key and device_id on Megolm events (#1101)
* Deprecate the `sender_key` and `device_id` on Megolm events

MSC: https://github.com/matrix-org/matrix-spec-proposals/pull/3700 ([Markdown](https://github.com/matrix-org/matrix-spec-proposals/blob/main/proposals/3700-deprecate-sender-key.md))

The language around `m.room.encrypted` is a bit awkward because *technically* you can use the event to represent non-Megolm events, however that's considered an edge case at this time.

* changelog

* Apply wording changes

* Remove incorrect example

* Add missing sentence
2022-06-09 02:24:41 -06:00
Travis Ralston
c4db688af8
Spec /relations and aggregations (#1062)
* Commit to show changes to rich replies section

* Move rich replies to a module

* Add remainder of MSC2674

* Pivot away from MSC3440: Threads

* Add changelog entries so far

* Make a note for why we have aggregations/relations if nothing uses it

* Outright remove threads references

Apparently this breaks the table of contents

* Define MSC2675

* Define MSC3666

* Add note for rich replies?

* Update content/client-server-api/_index.md

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

* Clarify how ignoring works for aggregations.

* Try to clarify redactions a bit

* Clarify using parent/child language

* Add missing bits of MSC2675

* Add changelog for aggregations

* Appease the linters

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

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

* Apply suggestions from code review

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

* Apply suggestions from code review

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

* Try to clarify the return of /relations

* Fix required attribute

* Fix wording round 1

* Try to fix pagination

* Copy/paste the endpoint to make Open API happy

* Fix code block examples for rich replies

* Apply suggestions from code review

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

* Apply suggestions on all 3 endpoints

* Fix description of relationships API

* Fix warning about server-side aggregation/bundling

Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2022-06-08 15:32:55 -06:00
Travis Ralston
f14e18131b
Specify room version 10: knock_restricted and int power levels (#1099)
* Clarification on historical power level handling

* Revert "Clarification on historical power level handling"

This reverts commit f443b3d5a9afac3095b14a72ec471ba06f4cc78b.

* Clean up

* Let us try this again not using VS Code

* Markdown is full of mysteries

* Move stringy power levels to room versions

* Describe range

* Fix minor issues with previous room version stuff

* Copy/paste v9 into v10

* Describe deprecated formatting

* Paste unmodified auth rules from v8 into v10

* Move 9.1 to 9.3, add 9.1 and 9.2 for integer enforcement

* Add knock_restricted to v10 auth

* Misc cleanup and clarification for fragments

* Describe `knock_restricted` client changes

* Changelogs

* spelling

* Apply suggestions from code review

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

* Apply code review suggestions manually

* Fix v9 redactions

* Fix auth rules clarity issues

* Apply suggestions from code review

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

* Remove false integer requirements

Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com>
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2022-06-08 15:22:47 -06:00
Nicolas Werner
e70045f4cc
room_type is not a required parameter in practice (#1110)
* room_type is not a required parameter in practice

In practice servers seem to mirror what the room create event does and
leave out the room_type when unset.

Signed-off-by: Nicolas Werner <n.werner@famedly.com>

* Add changelog

Signed-off-by: Nicolas Werner <n.werner@famedly.com>

* Also make room_type and allowed_room_ids optional in the openapi

They are optional according to the text, but the openapi marks them as
required instead.

Signed-off-by: Nicolas Werner <n.werner@famedly.com>

* Fix copy and paste error of newsfragment

Signed-off-by: Nicolas Werner <n.werner@famedly.com>
2022-06-07 17:27:53 -06:00
Hubert Chathi
8d82366cf2
Merge pull request #1056 from uhoreg/refresh_token_spec
Add spec for refresh tokens
2022-06-02 16:29:22 -04:00
Hubert Chathi
9bf02ada55 don't need securityDefinitions since we don't use access token 2022-06-02 16:19:11 -04:00
Hubert Chathi
ef3df9d549
Apply suggestions from code review
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2022-06-02 16:17:46 -04:00
The one with the braid (she/her) | Dфҿ mit dem Zopf (sie/ihr)
31304300f5
fix: spaces hierarchy paramater types (#1097)
* fix: spaces hierarchy paramater types

- changed `limit` parameter type to integer
- changed `query` parameter type to integer

A floating number does not make any sense here. Also, at least Synapse
does not allow floating point numbers in here.

Signed-off-by: TheOneWithTheBraid <the-one@with-the-braid.cf>

* Update changelogs/client_server/newsfragments/1097.clarification

Co-authored-by: Travis Ralston <travpc@gmail.com>
2022-05-31 14:33:04 -06:00
Hubert Chathi
91b2a49b6f apply suggestions from review, and other clarifications 2022-05-31 16:19:15 -04:00
Hubert Chathi
84747f90e8 Merge branch 'main' into refresh_token_spec 2022-05-31 16:16:27 -04:00
Travis Ralston
10bd1b5038
Re-add timestamp massaging (#1094)
* Re-add timestamp massaging

Per [MSC3316](https://github.com/matrix-org/matrix-spec-proposals/pull/3316)

* changelog
2022-05-31 09:24:45 -06:00
Travis Ralston
a91030f27b
Re-add paragraph about how some state keys are reserved (#1100)
* Re-add paragraph about how some state keys are reserved

Fixes https://github.com/matrix-org/matrix-spec/issues/1013

* changelog
2022-05-31 09:24:25 -06:00
Travis Ralston
515269b2e3
Unify & standardize the v1.3 changelog (#1102)
* Reference MSCs where MSCs were not being referenced.
* Alter language to appear consistent and from a single voice.
* Bundle and group various changes together (will affect the final changelog - the rendered one still doesn't bundle appropriately).
* Move entries to the spec area they are intended to be in.
2022-05-31 09:24:06 -06:00
Hubert Chathi
2780055198
clarify federation Authorization header an add destination property (#1067)
* clarify federation Authorization header an add destination property

* add changelogs

* some clarifications

* more clarifications, fixes

* use HTML in the added-in/changed-in shortcodes

* Apply suggestions from code review

Co-authored-by: Travis Ralston <travpc@gmail.com>
2022-05-30 15:33:56 -06:00
David Robertson
3f7b0e80a3
Minor drive-by state res clarifications (#1042)
* Opinionated rewrite of unconflicted state map

* Define auth chain
2022-05-30 14:13:55 +01:00
David Robertson
25a9dcfd3c
Clarify that the resident server should sign the restricted join (#1093)
* Clarify that server should sign the restricted join

* Changelog

* Changelog
2022-05-27 20:04:09 -06:00
Alexey Rusakov
e38c4e6f17 Revert accidentally pushed commits
This reverts commits:
c11991f9de.
f8bf0fa0ac.
7abdd45c06.
92db4e20da.
2022-05-27 18:23:06 +02:00
Alexey Rusakov
92db4e20da /password: formalise 'default' for logout_devices 2022-05-27 18:18:47 +02:00
Alexey Rusakov
7abdd45c06 notifications.yaml: Use int64 for timestamp 2022-05-27 18:18:47 +02:00
Alexey Rusakov
f8bf0fa0ac profile.yaml: require displayname/avatar_url
This makes a deliberate choice for the question stated in #2717.
2022-05-27 18:18:47 +02:00
Alexey Rusakov
c11991f9de openapi_extensions.md: add a clarification for oneOf 2022-05-27 18:18:47 +02:00
Richard van der Hoff
bb47f08ee7
Remove broken "token-based" link (#1081)
This used to link to a section in the UIA docs (https://matrix.org/docs/spec/client_server/r0.6.1#token-based), 
but that was removed in 7c6636a5.
2022-05-25 11:27:30 +01:00
David Robertson
c4e54509db
PDU check 5 should consult state before an event (#1070) 2022-05-23 18:22:33 +01:00
Hubert Chathi
58f960e5cc
Merge pull request #1055 from progval/valid_until_ts
Clarify that valid_until_ts is in milliseconds, like other timestamps used in Matrix
2022-05-17 13:03:32 -04:00
Michael Telatynski
573dbb3b74
Fix error code typo (#1059)
* Fix error code typo

See https://spec.matrix.org/v1.2/client-server-api/#other-error-codes

* Create 1059.clarification
2022-05-11 11:14:24 -06:00
David Robertson
9ede29a01d
Attempt to define a valid event (#1045)
* Attempt to define a valid event

Resolves #1044.

Well, maybe.

* Changelog

* link to /rooms, thanks Travis

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

Co-authored-by: Travis Ralston <travpc@gmail.com>
2022-05-10 13:51:23 -06:00
Alexey Rusakov
61e7a73a4f
Drop lifetime from the call answer event example (#1054)
* Drop lifetime from the call answer event example

* Changelog
2022-05-10 13:40:01 -06:00
David Robertson
29e7036043
Auth rules: PDU content definitions cross-refs (#1050)
* Auth rules: PDU content definitions cross-refs

* Changelog

* Apparently v6 & v7 auth rules aren't in fragments
2022-05-10 13:31:19 -06:00
David Robertson
81d61d87f4
Italicise primes and brackets in state res desc (#1043)
* Italicise primes and brackets in state res desc

I don't like it but it seems to make things look decent in Firefox.
This is probably good enough---we're not Knuth, after all.

Additionally I have avoided the use of `*E*'s` as in "E's prev_events"
since the apostrophe looks poor here.

Resolves #774.
An alternative to #1040.

* Changelog
2022-05-10 13:29:29 -06:00
Hubert Chathi
4b5c6ff1fd Merge branch 'main' into refresh_token_spec 2022-05-10 15:23:01 -04:00
Travis Ralston
72c047d336 Move changelog to correct directory 2022-05-10 13:21:13 -06:00
Hubert Chathi
d692062e3a add changelog 2022-05-10 15:17:09 -04:00
Hubert Chathi
1f81587154 add spec for refresh tokens 2022-05-10 15:09:27 -04:00
Valentin Lorentz
34589078fd Clarify that valid_until_ts is in milliseconds, like other timestamps used in Matrix
Signed-off-by: Valentin Lorentz <progval+git@progval.net>
2022-05-10 19:34:22 +02:00
Travis Ralston
fd2d5b8a49
Fix a few more instances of matrix-doc being used; Fix changelog support for repo split (#1051)
* Use spec-proposals repo for links in spec text and current changelog

* Make the changelog repo-aware

* Changelog
2022-05-10 08:59:54 -06:00
Andrew Morgan
8a5955e98f Remove 'room_id' field from m.typing, m.receipt and m.fully_read examples and schema (#3679)
The spec had an erroneous `room_id` field in a m.typing EDU entry of /sync, `m.read` receipts in `/sync`, and `m.fully_read` room account data objects in the spec. None of these are necessary nor used in practice.

Checking part of the ecosystem for whether clients look for, or homeservers include, these room_id fields, I found that:

    Element does not require them, nor does Synapse include them.
    Ruma does not include them.
    Dendrite does not include them.
    nheko/mtxclient does not look for them.

This change removes room_id from the example and OpenAPI schema in each case mentioned above. It only affects the Client-Server spec - the Server-Server spec text remains unchanged.

The field was initially introduced in 0f28f83.
2022-05-09 01:28:17 -06:00
Aaron Raimist
c657932830 Update the default room version to 9 (#3739)
* Update the default room version to 9

Spec PR for [MSC3589](https://github.com/matrix-org/matrix-doc/pull/3589)

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

* Add changelog

Signed-off-by: Aaron Raimist <aaron@raim.ist>
2022-05-09 01:28:17 -06:00
Aaron Raimist
ac4a296e4c Remove unenforced size limit on room names (#3669)
Fixes #3641

The spec says the name field in m.room.name events must not exceed 255 bytes but no servers actually enforce this over the C-S API. Clients should probably already be truncating room names to an appropriate length for their user interface.

Signed-off-by: Aaron Raimist <aaron@raim.ist>
2022-05-09 01:28:17 -06:00
Jonas Platte
71601a5ff5 Fix broken link in end_to_end_encryption.md (#3708) 2022-05-09 01:28:17 -06:00
Alexandre Franke
632c224ec3 Warn of untagged operations (#3699)
Signed-off-by: Alexandre Franke <alexandre.franke@matrix.org>

Co-authored-by: Alexandre Franke <alexandre.franke@matrix.org>
2022-05-09 01:28:17 -06:00
Tulir Asokan
9b0bd0917d Fix join membership auth rules when join_rule is knock (#3737)
Fixes #3736
2022-05-09 01:28:17 -06:00
Travis Ralston
fd2340a4da Fix membership state table and diagram (#3730)
* Fix membership state table and diagram

There were 2 missing cases which are legal:
* `invite->knock` (a fairly silly thing to do, but legal under the auth rules)
* `external->leave (via /kick)` (another somewhat silly thing to do, but no different than `external->ban (via /ban)`)

The state table considered the first as illegal, which is untrue.

* Changelog

* Make the graph prettier

* Update changelogs/client_server/newsfragments/3730.clarification

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-05-09 01:28:17 -06:00