Commit graph

6313 commits

Author SHA1 Message Date
Alexey Rusakov
6792b7a9d6
Use type: integer, format: int64 for timestamps (#1129)
* Use type: integer / format: int64 for timestamps

Closes #749.

* Changelog
2022-06-15 00:32:55 -06:00
Alexey Rusakov
6adacd18c1
Arrange a few titles (#1126)
* Arrange a few titles

Before this change, PublicRoomsChunk in the spec text could be found in
two places (actually three but the third one is identical to the first
one), defining two (_mostly_ identical but) different schemas.
Ctrl-F'ing through the spec may confuse you with the "wrong" definition.
This commit gives distinct schemas distinct names; aside from
PublicRoomChunk, the same story happens with the derivative of
stripped_state.yaml used in space_hierarchy.yaml (it's not exactly
StrippedStateEvent either).

As for the removal of `PublicRoomsChunks` (plural) - this title is
unnecessary because the tooling would place rather self-explanatory
`[PublicRoomsChunk]` without it, whereas the plural title ends up with
no definition in the spec text.

* Add changelog
2022-06-14 22:04:10 -06:00
Alexey Rusakov
dcc1f4adee
keys.yml: fix one_time_keys object contents (#1127)
* keys.yml: fix one_time_keys object contents

The alternatives previously listed under two additionalProperties levels
are actually one _more_ level deeper; we still can't define them in
a formal way before moving to OpenAPI 3 but at least let's be honest
and say there's always a dict where there's always a dict. Also,
since the same data structure is used in three places now, at least
give it a name, and document the actual definition (once) separately
(not using it now because it's OpenAPI 3).

* Changelog
2022-06-14 22:03:53 -06:00
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