Commit graph

2883 commits

Author SHA1 Message Date
David Baker
5ddf5374db Missing comma 2018-07-27 12:24:29 +01:00
David Baker
f90ed4b77d Make non-namespaced tags verboten 2018-07-27 12:08:04 +01:00
David Baker
e4fd088fcc Fix room tags spec 2018-07-27 12:05:30 +01:00
Travis Ralston
cafd1a9ab3 Use more modern timestamps 2018-07-26 16:46:33 -06:00
Travis Ralston
e27f4a69a0 Key versions must be [0-9a-zA-Z_] 2018-07-26 16:46:13 -06:00
Travis Ralston
8f1a4ae0ea Formatting 2018-07-26 16:43:51 -06:00
Travis Ralston
bdccfca726 Timestamps should be in milliseconds 2018-07-26 16:43:43 -06:00
Travis Ralston
cad1db2a14 Unpadded means unpadded 2018-07-26 16:43:16 -06:00
Travis Ralston
9dbb627d7b Undo accidental changes to the operation ID 2018-07-26 16:42:40 -06:00
Travis Ralston
2f71703427 Deprecate key ID querying 2018-07-26 16:42:21 -06:00
Travis Ralston
9fdd8a6f96 Document how leaving rooms/rejecting invites over federation works
Fixes https://github.com/matrix-org/matrix-doc/issues/1401

This is very similar to the joining rooms handshake, and much of it is a near copy/paste of the make_join and send_join API. The major difference is the send_leave API doesn't return anything.

References:
* Handling of make_leave: d69decd5c7/synapse/handlers/federation.py (L1285-L1310)
* send_leave route: d69decd5c7/synapse/federation/transport/client.py (L267)
* make_leave route: d69decd5c7/synapse/federation/transport/server.py (L396)
* send_leave returning nothing: d69decd5c7/synapse/handlers/federation.py (L1346)
2018-07-26 14:59:43 -06:00
Travis Ralston
1b374eafbc
Merge pull request #1454 from turt2live/travis/fix-proposals-blocked
Only get issues that are proposals when finding proposals
2018-07-26 09:59:16 -06:00
Travis Ralston
4f24d2101f Only get issues that are proposals when finding proposals
Otherwise we end up with not-proposals showing up in the list.
2018-07-26 09:51:08 -06:00
Travis Ralston
c2f1c6e78d Improve the joining rooms handshake documentation
There isn't a whole lot to this section that needed work. The section overall lost the table schema in favour of having the endpoints close by.

The directory query is improved in https://github.com/matrix-org/matrix-doc/pull/1443
2018-07-26 08:43:08 -06:00
Travis Ralston
8e97b0ca81 Improve the server key exchange portion of the s2s specification
Most of the text has been shuffled into the swagger definitions to bring it closer to where it matters.

This also attempts to clarify what is out in the wild. Most importantly, the first version of the key exchange is outright removed from the specification. Other research points/questions are:

* What is a "Key ID"?
  * 1241156c82/synapse/rest/key/v2/local_key_resource.py (L81-L83)
  * 1241156c82/synapse/rest/key/v2/local_key_resource.py (L88-L91)
* Returning a cached response if the server throws a 400, 500, or otherwise not-offline status code
  * 1241156c82/synapse/rest/key/v2/remote_key_resource.py (L227-L229)
* `minimum_valid_until_ts` default
  * This branch of the ladder: 1241156c82/synapse/rest/key/v2/remote_key_resource.py (L192)
* Returning empty arrays when querying offline/no servers
  * Queried by hand against matrix.org as a notary server with a fake domain name to query
* Returning all keys even when querying for specific keys
  * Queried by hand using matrix.org as a notary server against a server publishing multiple keys.

The examples and descriptions were also improved as part of this commit.
2018-07-26 08:41:00 -06:00
Travis Ralston
d914c402e2 Improve the profile query to have more sane responses
This is a mix of Synapse and Dendrite behaviour, mostly Dendrite. Synapse returns `null` for field values that aren't set, however Dendrite just doesn't return them and instead opts for an empty object.

Further, synapse is lacking in error codes in this area. Dendrite does some additional validation on this API which introduces more errors for bad requests, instead of defaulting to empty objects/200 OK responses.

Likewise, Dendrite returns a 404 when the user is not found while Synapse returns 200 OK/empty object.
2018-07-26 08:40:39 -06:00
Travis Ralston
0ddf578b61 Combine all queries into their own section
This removes the Directory and Profile sections, instead opting to document them as Queries. 

The behaviour of profile queries is based on Synapse's behaviour. A few issues have been opened to improve the behaviour:
* https://github.com/matrix-org/matrix-doc/issues/1434
* https://github.com/matrix-org/matrix-doc/issues/1435
* https://github.com/matrix-org/matrix-doc/issues/1436
* https://github.com/matrix-org/matrix-doc/issues/1437

This fixes https://github.com/matrix-org/matrix-doc/issues/1404
2018-07-26 08:40:39 -06:00
Travis Ralston
b0744aa1e9
Merge pull request #1413 from turt2live/travis/s2s/join-swagger
Convert joins/invites to swagger
2018-07-26 08:39:26 -06:00
Travis Ralston
af0629a520 Full stop 2018-07-26 08:36:12 -06:00
Travis Ralston
6368b03280
Merge pull request #1449 from turt2live/travis/down-with-travis
Remove Travis CI configuration
2018-07-25 09:16:01 -06:00
Richard van der Hoff
17811bca27
Merge pull request #1448 from turt2live/travis/s2s/pdu-event-id
Add the event_id to unsigned PDUs
2018-07-25 11:54:09 +01:00
Will Hunt
bdb881420c
Merge branch 'master' into hs/dns-to-be-hostname 2018-07-24 23:12:12 +01:00
Travis Ralston
dcc4b0bfbc Remove Travis CI configuration
We're using Circle CI for testing a bunch of the spec, and so far it has the advantage of being faster. Also, it's not named the same as me.

We can also remove the Travis CI specific check in generate-matrix-org-assets because Circle CI doesn't touch this.
2018-07-24 14:47:47 -06:00
Travis Ralston
9f399a08fe Full stops
I'm never going to remember these
2018-07-24 14:41:42 -06:00
Travis Ralston
0d1b82a601 Add the event_id to unsigned PDUs
This went missing in the swagger conversion. The example already has an event_id.
2018-07-24 14:40:32 -06:00
Travis Ralston
eaf175056f Full stops 2018-07-24 10:58:15 -06:00
Travis Ralston
797aca87bd Update the check_examples.py script to resolve references
The script previously wasn't chasing down valid references in examples.
2018-07-24 10:58:15 -06:00
Travis Ralston
7314405904 Update comment 2018-07-24 10:58:15 -06:00
Travis Ralston
45ec8269e6 Fill out the required fields in all the examples 2018-07-24 10:58:15 -06:00
Travis Ralston
9c1c541a38 Remove extra "required" declarations
"required" is something that is handled as an array, and these are invalid. The `type` in both cases is covered by a required array elsewhere
2018-07-24 10:58:15 -06:00
Travis Ralston
004998b98f Convert invites to swagger
The whole section reads like a description for the endpoint, and has been replaced by the swagger definition now (rather than at a later stage). All the same information should be kept.
2018-07-24 10:58:15 -06:00
Travis Ralston
f09c4fd286 Convert joins to swagger 2018-07-24 10:58:15 -06:00
Travis Ralston
24e531a896
Merge pull request #1406 from turt2live/travis/s2s/transactions-swagger
Convert things that mention "Transaction" to swagger
2018-07-24 10:38:55 -06:00
Travis Ralston
acf9632afc Enlist the examples 2018-07-24 10:25:24 -06:00
Travis Ralston
9fa838d3e8 Improve type naming 2018-07-24 10:17:57 -06:00
Travis Ralston
5ade15534d Remove extra branch in example generation 2018-07-24 10:17:39 -06:00
Travis Ralston
042772aaf5 Make nested titles better 2018-07-24 10:13:23 -06:00
Michael Telatynski
2790c1f069
Merge pull request #1289 from matrix-org/t3chguy/group_id
basic spec for group IDs, mostly copied from User IDs as they share grammar
2018-07-24 16:20:18 +01:00
Travis Ralston
cb4fcd1d09 Merge remote-tracking branch 'matrix-org/master' into travis/s2s/transactions-swagger 2018-07-24 09:15:36 -06:00
Travis Ralston
a4e5a461f9 Improve handing of lists appearing in items 2018-07-24 09:14:31 -06:00
Travis Ralston
88beaf4ad8 Completely remove /pull
It's not been in use for years - we can safely let it disappear
2018-07-24 09:13:46 -06:00
Travis Ralston
21c4af70a9 Fix schema definitions (spelling, attributes) 2018-07-24 09:13:15 -06:00
Will Hunt
26505533dd drop dns_name = host in favour of host 2018-07-24 16:06:59 +01:00
Ben Parsons
01d01cfbbb
Merge pull request #1440 from matrix-org/benp/clarifyintro
Improve discoverability of /docs/spec/intro/ document by including content in /docs/spec/
2018-07-24 11:43:43 +01:00
Ben Parsons
07aeaadef9 update links which used to point to docs/spec/intro 2018-07-24 11:41:03 +01:00
Matthew Hodgson
4fdc22dc90
Merge pull request #1447 from Cadair/gilesconfig
Fix typo in Giles config
2018-07-24 11:10:09 +01:00
Stuart Mumford
7c71b697e7
Fix typo in Giles config
Signed-off-by: Stuart Mumford <stuart@cadair.com>
2018-07-24 11:07:11 +01:00
Travis Ralston
e6389e8ffc
Merge pull request #1445 from Cadair/gilesconfig
Add config for Giles
2018-07-23 16:16:50 -06:00
Stuart Mumford
03b74476f1
Add config for Giles
Signed-off-by: Stuart Mumford <stuart@cadair.com>
2018-07-23 20:24:12 +01:00
Travis Ralston
2aafde4549
Merge pull request #1419 from turt2live/travis/s2s/3pinvites-swagger
Convert third party invite exchange to swagger
2018-07-23 10:33:00 -06:00