0
0
Fork 0
Commit Graph

1400 Commits

Author SHA1 Message Date
Andrew Morgan 2f0025c7a7 Fix up wording in proposal etiquette 2018-10-16 00:57:11 +02:00
Andrew Morgan 35c924308c core team -> Core Team 2018-10-16 00:57:08 +02:00
Andrew Morgan 8121bef771 Introduce the spec core team 2018-10-16 00:44:05 +02:00
Andrew Morgan c1ecb9e324 Fix up table with title and add corresponding GitHub labels 2018-10-16 00:17:08 +02:00
Andrew Morgan 889b46898c Move proposal etiquette to a separate document. 2018-10-16 00:07:16 +02:00
Andrew Morgan 49d017bdd5 your proposal -> the proposal 2018-10-15 23:51:28 +02:00
Andrew Morgan fb4c50ec8a No need to redefine MSC 2018-10-15 23:37:41 +02:00
Andrew Morgan 604091380f Attempt to fix contributing link 2018-10-15 16:41:44 +02:00
Andrew Morgan b3f90f5825 proposal passed = spec pr missing 2018-10-15 16:38:48 +02:00
Andrew Morgan 873641e4bc Proposal Created and In Review is a single phase 2018-10-15 16:34:41 +02:00
Andrew Morgan 11dbd5b56a Proposal WIP -> drafting/feedback gathering 2018-10-15 16:30:33 +02:00
Andrew Morgan 5ae3b50c6b Require link to implementation 2018-10-15 16:18:20 +02:00
Andrew Morgan f1d71bd6c4 Less complicated wording 2018-10-15 16:09:04 +02:00
Andrew Morgan 0e9ad9e95d Fix wording, fix earlier capatilization 2018-10-15 16:05:09 +02:00
Andrew Morgan f769084570 Put it in the proposals dir! 2018-10-15 15:54:28 +02:00
Andrew Morgan 67146e4bec MSC ALL the changes 2018-10-15 15:52:33 +02:00
Andrew Morgan 9432ed76d7 first-draft -> first draft 2018-10-15 15:51:54 +02:00
Andrew Morgan 80d1d4af9c Fix capatilization 2018-10-15 15:48:55 +02:00
Andrew Morgan d2e827e0c6 Note about earlier MSC process 2018-10-15 15:46:26 +02:00
Andrew Morgan 764c63f3e8 Add proposal template 2018-10-15 15:29:40 +02:00
Andrew Morgan a3144e6959 Move to the new and improved MSC process 2018-10-15 02:33:15 +02:00
Matthew Hodgson 6dab4b28f8
Merge pull request #1648 from matrix-org/matthew/device_list_update
document device list synchronisation over federation.
2018-09-03 16:54:36 +01:00
Matthew Hodgson 334c69bcda wording fix 2018-09-03 16:53:39 +01:00
Matthew Hodgson ccbc88ee5d reword to spell out to when device list updates should be sent 2018-09-03 16:49:36 +01:00
Matthew Hodgson bcd48ebbec
Merge pull request #1610 from uhoreg/reloaded
document new state resolution algorithm
2018-09-02 23:53:08 +01:00
Konstantinos Sideris 192a6c2ab9 Use example.org on examples instead of domain.com which is a real domain
Signed-off-by: Konstantinos Sideris <sideris.konstantin@gmail.com>
2018-09-02 17:58:21 +03:00
Matthew Hodgson e9e3afbd34 clarify who servers should send m.device_list_update EDUs to 2018-09-02 13:00:29 +01:00
Matthew Hodgson 928fc5cbe5 incorporate review 2018-09-01 03:08:53 +01:00
Matthew Hodgson 42b11e096f Review 2018-09-01 02:48:37 +01:00
Matthew Hodgson d25f4412d4 improve wording 2018-09-01 02:46:05 +01:00
Matthew Hodgson db302b66ca revert example which was corect first time; fix rst 2018-09-01 02:44:53 +01:00
Matthew Hodgson 0f9a23c471 swaggerify to-device 2018-09-01 02:37:31 +01:00
Matthew Hodgson 0afdcc59ea spell out stream_id and fix todo 2018-09-01 02:10:45 +01:00
Matthew Hodgson 30d56691b1 document device list synchronisation over federation.
untested
closes MSC1212
2018-09-01 01:48:02 +01:00
Travis Ralston 735de03e07 Add r0 version links
These were missed in the release process.
2018-08-31 17:40:32 -06:00
Travis Ralston bb2835651f
Merge pull request #1637 from turt2live/travis/c2s/clarify-errors
List known client-server error codes; Clarify priority of error codes vs http status code
2018-08-31 16:42:43 -06:00
Travis Ralston 00578547c0
Merge pull request #1644 from matrix-org/rav/is_token_grammar
Spec grammars for IS things
2018-08-31 16:05:23 -06:00
Travis Ralston f3825c5827 A couple more stragglers 2018-08-31 15:55:07 -06:00
Travis Ralston 218b86d6e8 Hopefully the last one 2018-08-31 15:48:41 -06:00
Richard van der Hoff 79974b152c s/identity service/identity server 2018-08-31 22:44:36 +01:00
Richard van der Hoff a544b68298 Merge branch 'master' into rav/is_token_grammar 2018-08-31 22:37:04 +01:00
Travis Ralston 7d34995ece It's actually an "identity server implementing the Identity Service API"
Also add a note about appservices being special.
2018-08-31 15:35:32 -06:00
Travis Ralston 7ac76fa27c Actually we're going with "identity server" afterall 2018-08-31 15:04:00 -06:00
Travis Ralston ec248b436f Identity Service is lowercase 2018-08-31 15:04:00 -06:00
Travis Ralston cc0badaaa1 Fix all naming cases of "identity service"
Fixes https://github.com/matrix-org/matrix-doc/issues/1396

Includes some "homeserver" fixes too. This commit does not include historical documentation or notes.
2018-08-31 15:04:00 -06:00
Travis Ralston 108c623557
Merge pull request #1635 from turt2live/travis/c2s/read-markers
Add read markers
2018-08-31 14:47:39 -06:00
Travis Ralston 835f5de387 Generalize the token name even more 2018-08-31 14:22:07 -06:00
Richard van der Hoff dced3d5707 Notes on the format of IS session IDs and tokens 2018-08-31 21:06:51 +01:00
Travis Ralston f299fe023a English 2018-08-31 12:51:31 -06:00
Travis Ralston f4c5c209f3 Generalize language for pagination
Previously the section was very strict in what pagination was, however this isn't the reality for the matrix specification. Several endpoints have their own pagination naming conventions and do not follow those mandated by this section.

This commit generalizes the language to cover those endpoints while also describing how pagination works. In particular, it describes the rough API shape to expect and how to deal with the responses.

This commit also removes the `M_BAD_PAGINATION` error as it is not used in the real world. Homeservers are instead encouraged to use the standard `M_INVALID_PARAM` or similar error code.

Fixes https://github.com/matrix-org/matrix-doc/issues/610
Fixes https://github.com/matrix-org/matrix-doc/issues/1523
2018-08-31 12:36:08 -06:00
Hubert Chathi c0dd7e0025
Merge pull request #1420 from Zil0/encrypted_attach
Document encrypted attachments
2018-08-31 13:33:05 -04:00
Travis Ralston 4b9fb99644 Take out unhelpful example 2018-08-31 11:18:54 -06:00
Travis Ralston 3146fc339a Merge remote-tracking branch 'matrix-org/master' into travis/c2s/clarify-errors 2018-08-31 11:15:03 -06:00
Travis Ralston f6d9e53f5c Clarify that homeserver must reject clients from setting m.fully_read 2018-08-31 11:13:32 -06:00
Travis Ralston 2e8151999e Clarify that read markers are fully read markers 2018-08-31 11:13:19 -06:00
Hubert Chathi f1f32d3a15 add more clarifications 2018-08-31 12:59:57 -04:00
Travis Ralston 679ddabb53 Merge remote-tracking branch 'matrix-org/master' into travis/c2s/read-markers 2018-08-31 10:34:19 -06:00
Travis Ralston 567843e043 Add additional clarity to how rich replies are structured and used 2018-08-31 10:20:26 -06:00
Hubert Chathi e3daf10bb9 refactor encrypted file schema as "Extension to m.message" 2018-08-31 12:11:27 -04:00
Travis Ralston 9004be7bda Merge remote matrix-org/master 2018-08-31 10:08:05 -06:00
Travis Ralston f013b7ef03
Merge pull request #1631 from turt2live/travis/general/unstable-warning
Render a warning if the spec is unstable
2018-08-31 09:50:37 -06:00
Travis Ralston ab00630ebc Don't include a second unstable warning in the s2s spec for now 2018-08-31 09:49:24 -06:00
Travis Ralston f72c821be4
Merge pull request #1619 from turt2live/travis/c2s/local-echo
Reference that transaction IDs may be used to echo
2018-08-31 09:48:02 -06:00
Travis Ralston 136ba15eb2
Merge pull request #1605 from turt2live/travis/c2s/clarify-html-again
Mention that clients should not be producing invalid HTML
2018-08-31 08:41:29 -06:00
Travis Ralston 38ae166e9d
Merge pull request #1505 from turt2live/travis/general/3pid_invite
Clarify how third party invites work
2018-08-31 08:38:40 -06:00
Travis Ralston afa16f1e4e
Merge pull request #1606 from turt2live/travis/c2s/room-tags
Update the room tagging documentation
2018-08-31 08:36:40 -06:00
Travis Ralston c127eed7e7
Merge pull request #1600 from turt2live/travis/c2s/media-csp
Specify the minimum CSP for media
2018-08-31 08:32:33 -06:00
Travis Ralston 9646d99c9e
Merge pull request #1602 from turt2live/travis/general/redactions
Add the other fields the server is expected to keep on events
2018-08-31 08:31:50 -06:00
Erik Johnston 080845ac1c Add link to previous section 2018-08-31 12:00:38 +01:00
Erik Johnston bbca5ce43a Merge branch 'master' of github.com:matrix-org/matrix-doc into erikj/limit_auth_events 2018-08-31 11:52:36 +01:00
Erik Johnston b6ed25e4b4 Fix incorrect indent 2018-08-31 11:32:29 +01:00
Erik Johnston f3a13eed76
Merge pull request #1593 from matrix-org/erikj/auth_events
Update rules on which events to add to `auth_events`
2018-08-31 11:27:03 +01:00
Erik Johnston 86891ca7e4
Merge pull request #1625 from matrix-org/erikj/auth_rejections
Explain how to handle rejected events
2018-08-31 11:26:57 +01:00
Erik Johnston d91dc6fbf6 Fixup 2018-08-31 11:20:26 +01:00
Erik Johnston 4d653748d6 Add note back in 2018-08-31 11:17:58 +01:00
Erik Johnston 8e6c8ba59e Merge branch 'master' of github.com:matrix-org/matrix-doc into erikj/spec_3pid_ruls 2018-08-31 11:13:13 +01:00
Erik Johnston a1aedb386a Actually use proper sentences like a proper adult 2018-08-31 11:04:49 +01:00
Erik Johnston 0adfd1ebb0
Merge pull request #1591 from matrix-org/erikj/fixup_auth_rules
Fix up auth rules
2018-08-31 11:01:12 +01:00
Erik Johnston d63184ebac Fixup 2018-08-31 10:59:42 +01:00
Erik Johnston 3c53e1910d Fixup 2018-08-31 10:51:59 +01:00
Erik Johnston 1a45bc4a85 Reword 2018-08-31 10:24:51 +01:00
Erik Johnston 59f86ec8f2 Reindent as RST requires sublists to be three spaces 2018-08-31 10:07:59 +01:00
Erik Johnston f4706c8889 Require creator field 2018-08-31 10:06:26 +01:00
Erik Johnston f3aea32a24 Be consistent with 'If..., reject' 2018-08-31 09:59:45 +01:00
Erik Johnston 6c8a45c165 Full stops 2018-08-31 09:57:00 +01:00
Erik Johnston ebb044674f Remove duplicated explanation about event rejection 2018-08-31 09:51:17 +01:00
Travis Ralston d57b40d0cc Clarify how the client should treat errors
This is based on observation and rough interpretation and may need additional review from people.

Fixes https://github.com/matrix-org/matrix-doc/issues/1188
2018-08-30 23:06:32 -06:00
Travis Ralston e6adf9f6b9 Document known client-server error codes
Covers part of https://github.com/matrix-org/matrix-doc/issues/603 (updating all the endpoints is being done as a separate PR/commit). 

Reference: 74854a9719/synapse/api/errors.py (L30-L61)
2018-08-30 23:05:51 -06:00
Travis Ralston caaa688e37 Fix links to client-server spec 2018-08-30 16:28:26 -06:00
Travis Ralston 219b27b182 Merge remote matrix-org/master 2018-08-30 16:27:20 -06:00
Travis Ralston f923d08078 Add read markers
This is the spec for https://github.com/matrix-org/matrix-doc/issues/910

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

Some reverse engineering was required to work out the complete details as to how this works. In particular, the 405 for setting account data and the behaviour of m.read.

References:
* 405 for account data: d69decd5c7/synapse/rest/client/v2_alpha/account_data.py (L85-L90)
* m.read behaviour: d69decd5c7/synapse/rest/client/v2_alpha/read_marker.py (L45-L52)
2018-08-30 16:21:31 -06:00
Richard van der Hoff 0f84c69805
Merge branch 'master' into rav/clarify_event_signing 2018-08-30 22:48:56 +01:00
Travis Ralston 98a445890c Render a warning if the spec is unstable
Fixes https://github.com/matrix-org/matrix-doc/issues/1499

This is done by using magic variables in the RST. The magic variables are generated based on the substitutions available, making them available for use at build-time. 

Magic variables were chosen because it allows people to continue working on the spec and release process without having to worry about removing a chunk of text from the top of the file. Originally, this was attempted by using jinja2 if-statements, however the substitutions are replaced *after* the template is executed, so the condition would never match. 

The format of the variable is to make the templating happy. Using colons or percent signs results in the templator thinking something else is going on, and then complaining about format.
2018-08-30 15:05:50 -06:00
Travis Ralston d57b977a55 Merge branch 'm-master' into travis/general/3pid_invite 2018-08-30 15:01:31 -06:00
Travis Ralston 1f6499d563 Fix typo 2018-08-30 15:01:20 -06:00
Travis Ralston 356626845c Remove unhelpful arrow from the 3rd party invite sequence dance
This doesn't add anything in terms of clarity.
2018-08-30 15:00:52 -06:00
Travis Ralston 5e6a2c30a2 Comment out the part where identity services can revoke their keys
They can't because otherwise 3rd party invites can be rejected by homeservers, as per https://github.com/matrix-org/matrix-doc/issues/1633
2018-08-30 15:00:14 -06:00
Travis Ralston cee0a5ac7b
Merge pull request #1557 from turt2live/travis/general/r0-prep
Prepare the identity service and server-server APIs for r0
2018-08-30 14:46:35 -06:00
Travis Ralston 32cde24bcf Fix server-server link in IS spec 2018-08-30 12:26:24 -06:00
Travis Ralston e82c22b060
Merge pull request #1615 from turt2live/travis/is/touchups
Touch up more of the identity service specification
2018-08-30 12:23:25 -06:00
Travis Ralston b8f2c721dc Clarify which attributes should be valid 2018-08-30 12:22:50 -06:00
Travis Ralston 2d18b0d2d8 Merge remote-tracking branch 'matrix-org/master' into travis/c2s/clarify-html-again 2018-08-30 12:21:38 -06:00
Travis Ralston f09db16027 Merge remote-tracking branch 'matrix-org/master' into travis/s2s/key-mgmt 2018-08-30 12:19:59 -06:00
Travis Ralston 2753d24302 Merge remote-tracking branch 'matrix-org/master' into travis/general/r0-prep 2018-08-30 12:17:09 -06:00
Travis Ralston 440841d1ff Recommend a CSP rather than require it. 2018-08-30 12:13:21 -06:00
Travis Ralston 70f72b5b3b
Merge pull request #1628 from turt2live/travis/as/external_url
Clarify how external_url is supposed to work
2018-08-30 11:12:39 -06:00
Travis Ralston cc1e496287
Merge pull request #1629 from turt2live/travis/as/route-versions
Version all appservice endpoints and provide a fallback
2018-08-30 11:11:25 -06:00
Travis Ralston 326ff6b1a1
Merge branch 'master' into travis/as/external_url 2018-08-30 11:09:15 -06:00
Travis Ralston 0f2e01f5b5
Merge pull request #1555 from turt2live/travis/as/cleanup
Application service spec cleanup; Security definitions; r0 prep
2018-08-30 11:08:10 -06:00
Travis Ralston 1a3f112337 Clarify that the external_url is unsafe 2018-08-30 11:07:09 -06:00
Travis Ralston be5c566028 Version all appservice endpoints and provide a fallback
Fixes https://github.com/matrix-org/matrix-doc/issues/1616
2018-08-30 11:03:42 -06:00
Travis Ralston a48f7b9278 Clarify how external_url is supposed to work
Fixes https://github.com/matrix-org/matrix-doc/issues/1624
2018-08-30 10:49:40 -06:00
Travis Ralston 05b017276c Don't accidentally limit application services to one homeserver 2018-08-30 10:23:12 -06:00
Travis Ralston ab14f33060 Add link to the client-server ACLs module 2018-08-30 10:11:37 -06:00
Erik Johnston 5c2b8e3569 Explain how to handle rejeceted events 2018-08-30 17:03:16 +01:00
Hubert Chathi db644ca522 add some clarifications 2018-08-30 11:24:39 -04:00
Travis Ralston 56f6640c07
Merge pull request #1618 from turt2live/travis/c2s/initalsync
Remove references to initialSync from account data and receipts module
2018-08-30 07:44:08 -06:00
Richard van der Hoff 55c4307f12 Rewrite the section on signing events
... for clarity and de-duplication. And to say a bit about validating the
signatures.
2018-08-30 14:37:24 +01:00
Richard van der Hoff 6ba50fe2f6
Merge pull request #1588 from matrix-org/rav/fix_server_name
Specify that server names cannot be %-encoded
2018-08-30 10:48:06 +01:00
Travis Ralston bd93481013 Reference that transaction IDs may be used to echo
Fixes https://github.com/matrix-org/matrix-doc/issues/1462
2018-08-29 23:18:10 -06:00
Travis Ralston 78487a01ec Remove references to initialSync from account data and receipts module
Fixes https://github.com/matrix-org/matrix-doc/issues/695

Note: This commit leaves the /join endpoints alone because they say "and /sync" rather than just initialSync
2018-08-29 23:11:00 -06:00
Travis Ralston e227095fb4 Add rich replies
Fixes https://github.com/matrix-org/matrix-doc/issues/1234

The notable parts of this are:
* The titles go to insane levels. Rich replies are fairly complex and need some splitting apart to be understandable.
* The allowed HTML tags now have an exception for `<mx-reply>`

Please note that the event example is intended to be fixed by a PR that fixes all event examples.
2018-08-29 22:58:11 -06:00
Travis Ralston a5c3924492 Merge remote matrix-org/master 2018-08-29 21:28:24 -06:00
Hubert Chathi 4230e375fa
Merge pull request #1465 from Zil0/key_sharing
Document key sharing events
2018-08-29 23:05:17 -04:00
Travis Ralston dc602b74d2 Reference the server-server specification for /onbind 2018-08-29 21:02:35 -06:00
Travis Ralston 0387da51e2 Clarify how sessions work when establishing associations 2018-08-29 21:02:28 -06:00
Travis Ralston 039cefdbea Say that identity services should be nice to web browsers (CORS/OPTIONS) 2018-08-29 21:02:24 -06:00
Travis Ralston bbba7dedd6 Clean up identity service RST
* Title casing
* s/identity server/identity service
* Rough column limit enforcement
* Add some links (used by future commits)
2018-08-29 21:02:19 -06:00
Hubert Chathi 0130620cc1
Merge pull request #1596 from uhoreg/e2e_sessions
specify how to handle multiple olm sessions with the same device
2018-08-29 22:45:38 -04:00
Hubert Chathi 9b94e588e6 document new state resolution algorithm 2018-08-29 21:39:49 -04:00
Travis Ralston c7a228bf7b Don't make the major version a variable
We are likely to want to maintain v1 when we release a v2, so we'll avoid a variable for now.
2018-08-29 19:32:52 -06:00
Travis Ralston e7a69a6a6d Merge remote-tracking branch 'matrix-org/master' into travis/general/r0-prep 2018-08-29 19:29:42 -06:00
Travis Ralston a46783eb24 Revert "Take out the reference to the current version from the changelog"
This reverts commit 2a20c11467.
2018-08-29 18:10:03 -06:00
Travis Ralston 2a20c11467 Take out the reference to the current version from the changelog 2018-08-29 17:54:48 -06:00
Travis Ralston 2ab2f91088 Merge remote-tracking branch 'matrix-org/master' into travis/releases/push-gateway/r0.1.0 2018-08-29 17:54:34 -06:00
Richard van der Hoff 196159be91 We should include the Host header if the port was explicit. 2018-08-29 22:18:14 +01:00
Travis Ralston abb91508be
Merge pull request #1556 from turt2live/travis/is/cleanup
Identity Service API cleanup
2018-08-29 15:16:53 -06:00
Travis Ralston c03f2f8d79 Minor touchups to the room tagging API
Fixes some of https://github.com/matrix-org/matrix-doc/issues/1565
2018-08-29 14:53:55 -06:00
Travis Ralston f2d02c9559 Take out device management section for now
This will be handled by the implementation of https://github.com/matrix-org/matrix-doc/issues/1212
2018-08-29 14:37:30 -06:00
Travis Ralston 8950f0b2cc Spelling 2018-08-29 14:36:43 -06:00
Travis Ralston 2234e0b097 Mention that clients should not be producing invalid HTML
Fixes https://github.com/matrix-org/matrix-doc/issues/1595
2018-08-29 12:38:15 -06:00
Matthew Hodgson 8e88d82a4b fix typo in anchor. fixes #1603 2018-08-29 19:15:05 +01:00
Travis Ralston 348b549f9f Add the other fields the server is expected to keep on events
Fixes https://github.com/matrix-org/matrix-doc/issues/839

Reference: d69decd5c7/synapse/events/utils.py (L44-L91)
2018-08-29 11:19:37 -06:00
Travis Ralston ec20c43220 Specify the minimum CSP for media
Fixes https://github.com/matrix-org/matrix-doc/issues/1066
2018-08-29 10:55:34 -06:00
Travis Ralston 73feee5d73
Merge pull request #1586 from turt2live/travis/as/comment-ts-section
Comment out the timestamp massaging section for now
2018-08-29 10:10:36 -06:00
Travis Ralston 25b34e1d7b Mention that ts massaging was in a draft, but not in the release 2018-08-29 09:55:43 -06:00
Travis Ralston 39ef845a53
Merge pull request #1547 from turt2live/travis/c2s/pills
Document how mentions (pills) work
2018-08-29 09:13:02 -06:00
Hubert Chathi 5019fb7c49
Merge pull request #1359 from uhoreg/well-known
.well-known discovery
2018-08-29 10:40:54 -04:00
Hubert Chathi 688c8ebcd3 specify how to handle multiple olm sessions with the same device 2018-08-29 10:17:20 -04:00
Erik Johnston d921b81c70 Reject events with superfluous auth_events entries 2018-08-29 14:17:52 +01:00
Erik Johnston 073ebb051b Spec third party invites in auth rules 2018-08-29 14:01:07 +01:00
Erik Johnston 5d40af7ecf Update rules on which events to add to `auth_events` 2018-08-29 13:24:02 +01:00
Erik Johnston 86b5486445 Add missing clauses to and fix authorization rules
They are still missing third party invites.
2018-08-29 11:32:14 +01:00
Erik Johnston 0b7b3bfcb0 Reindent auth rules section
RST expects sub lists to be indented by three or more spaces. By doing
so we can then rely on `#.` for automatic numbering.
2018-08-29 11:20:33 +01:00
Richard van der Hoff d493c82e82 even more clarification 2018-08-29 10:04:02 +01:00
Erik Johnston 7327656965
Merge pull request #1581 from matrix-org/erikj/limit_txn_size
Specify a limit on the number of EDUs and PDUs a transaction can contain
2018-08-29 09:48:57 +01:00
Richard van der Hoff 78d8118846 Further server_name clarification 2018-08-29 09:36:50 +01:00
Richard van der Hoff f15eafae7f Remove trailing spaces 2018-08-29 09:26:31 +01:00
Richard van der Hoff 08fba5de51 Link to grammar rather than duplicating. 2018-08-29 09:25:38 +01:00
Richard van der Hoff 120bb8dc8e s/host/hostname/ 2018-08-29 09:24:24 +01:00
Richard van der Hoff 8679a642b4 clarity 2018-08-29 00:19:05 +01:00
Richard van der Hoff 7f9524f801 s/--/—/ 2018-08-29 00:07:36 +01:00
Richard van der Hoff 6f3b42a457 Server names cannot be %-encoded
They aren't URLs; it was a thinko to refer to the URL spec for this.
2018-08-28 23:56:20 +01:00
Travis Ralston 85b9769cd9 Comment out the timestamp massaging section for now
Pending discussion on https://github.com/matrix-org/matrix-doc/issues/1585
2018-08-28 14:06:55 -06:00
Erik Johnston fc1fdc95af Specify a limit on the number of EDUs and PDUs a transaction can contain 2018-08-28 17:29:58 +01:00
Valentin Deniaud 28ced3b0a4 fixup! document encrypted attachments 2018-08-28 15:04:40 +02:00
Travis Ralston 72c6fa2aaf More versioned links 2018-08-27 19:33:03 -06:00
Travis Ralston cff5b8b205 More versioned links 2018-08-27 19:30:46 -06:00
Travis Ralston e4f8c23972
Merge pull request #1562 from turt2live/travis/c2s/html-formatting
Define the supported HTML subset for message events
2018-08-27 19:14:52 -06:00
Travis Ralston 39e674ccb3 Clarify what matrix.to is and mention that room IDs are not routable
Also actually render the warning saying that this scheme is temporary.
2018-08-27 18:27:48 -06:00
Travis Ralston fa3e9a7609 Merge remote-tracking branch 'matrix-org/master' into travis/c2s/pills 2018-08-27 18:09:19 -06:00
Travis Ralston 6f80db5ddf Include the "other versions" section of the changelog 2018-08-27 18:04:35 -06:00
Travis Ralston 07153c22a9 Misc. cleanup of the appservice spec 2018-08-27 18:04:19 -06:00
Travis Ralston fa96d8629b Prepare the appservice spec for an r0 release
This puts the scaffolding in place for an r0 release to happen, such as the changelog and version variables.
2018-08-27 18:04:08 -06:00
Travis Ralston 17e0ef4b91 Remove empty file and now-empty section from the appservice spec
This commit has approval under https://github.com/matrix-org/matrix-doc/pull/1555 although is being included in this branch/PR so the build passes, permitting a merge.
2018-08-27 17:58:47 -06:00
Travis Ralston 51193cac39 Merge remote-tracking branch 'matrix-org/master' into travis/as/normal-events 2018-08-27 17:53:32 -06:00
Travis Ralston 4e885c3f77
Merge pull request #1550 from turt2live/travis/general/acls
Server ACLs
2018-08-27 17:48:43 -06:00
Travis Ralston a0b17e6ed6
Merge pull request #1551 from turt2live/travis/c2s/push-rules
General improvements to the push rules module
2018-08-27 17:48:01 -06:00
Travis Ralston 090f852fdf
Merge pull request #1262 from matrix-org/anoa/document_as_options
Document new application service registration file options
2018-08-27 17:47:53 -06:00
Travis Ralston 54032964fc Misc clarity for 3rd party appservice protocols/locations 2018-08-27 17:41:52 -06:00
Travis Ralston bac0392a2d General clarity for push rule defaults and where to get information
Include moving a roaming condition that was under the wrong rule.
2018-08-27 17:28:08 -06:00
Travis Ralston d7397ccd56 Provide additional rationale for kicking users when they are ACLd 2018-08-27 16:21:10 -06:00
Travis Ralston 76afef79f8 Clarify the rationale and motive for blanket IP banning and port exclusion 2018-08-27 16:14:37 -06:00
Travis Ralston be97e95dc1 Promote device management to be a dedicated section 2018-08-27 14:49:38 -06:00
Travis Ralston 8069981252 Add federation /user/* endpoints
Fixes https://github.com/matrix-org/matrix-doc/issues/1438
2018-08-27 14:19:10 -06:00
Travis Ralston 89daa3c5ce Clarify that clients aren't required to render all the tags
This commit also includes minor clarifications to surrounding text.
2018-08-27 09:17:40 -06:00
Travis Ralston 5bf99aeb34 Add a note that formatted_body is not forever 2018-08-27 09:17:08 -06:00
Travis Ralston c7822cc9a8 Link to the content repo when referencing MXC URIs in images 2018-08-27 09:16:53 -06:00
Travis Ralston d7d28f7e5b Remove nl as a supported HTML tag 2018-08-27 09:16:30 -06:00
Travis Ralston aa294fac06 Define the supported HTML subset for message events
Also clarify that `m.notice` messages can support HTML.

Fixes https://github.com/matrix-org/matrix-doc/issues/1559
Fixes https://github.com/matrix-org/matrix-doc/issues/1560
2018-08-25 22:57:52 -06:00
Travis Ralston 312799ae78 General clarification for mention and how matrix.to URIs are meant to work 2018-08-25 22:30:49 -06:00
Valentin Deniaud b7577ea237 document encrypted attachments
Fix #461.
2018-08-25 17:31:49 +02:00
Valentin Deniaud f6b5aee3e2 explain how to use key sharing events 2018-08-25 17:27:18 +02:00
Travis Ralston d370a2c6fd Prepare the identity service and server-server APIs for r0
* Create the changelog scaffolding
* Set up the variables for versioning
2018-08-24 17:19:25 -06:00
Travis Ralston dafea96621 Fix indentation and schema references in the identity service spec 2018-08-24 15:53:27 -06:00
Travis Ralston 811998735c Define common error codes in the Identity Service API
Fixes https://github.com/matrix-org/matrix-doc/issues/1407
2018-08-24 15:51:23 -06:00
Travis Ralston 017d6db737 Document third party network/protocol directories (for appservices)
Fixes https://github.com/matrix-org/matrix-doc/issues/869
2018-08-24 11:07:30 -06:00
Travis Ralston 9eda1a6971 Move the third party network API to it's own section 2018-08-24 10:22:19 -06:00
Travis Ralston bbd33c1461 Move appservice transaction API to the right section
Part of https://github.com/matrix-org/matrix-doc/issues/1532
2018-08-23 13:29:04 -06:00
Travis Ralston ab0be04571 Fix titles 2018-08-22 15:24:53 -06:00
Travis Ralston 7ec3cc4343 General improvements to the push rules module
This commit does a few things:
* Add 3 undocumented push rules to the spec for encrypted events and at-room notifications.
* Require unrecognized conditions to not match, ensuring that future conditions do not cause clients to accidentally notify users.
* Clarify that push rules should be enabled when created.
* Document a new condition required for at-room notifications.

Fixes https://github.com/matrix-org/matrix-doc/issues/1163
Fixes https://github.com/matrix-org/matrix-doc/issues/1034
Fixes https://github.com/matrix-org/matrix-doc/issues/676
Fixes https://github.com/matrix-org/matrix-doc/issues/1033
Relates to https://github.com/matrix-org/matrix-doc/issues/1101
2018-08-22 15:21:21 -06:00
Travis Ralston ef41b5c2bf Server ACLs
Implements the proposal for https://github.com/matrix-org/matrix-doc/issues/1383
2018-08-22 12:48:37 -06:00
Travis Ralston 9835c98544 Document how mentions (pills) work
Implements the proposal over at https://github.com/matrix-org/matrix-doc/issues/1067

Includes some specification for how matrix.to is structured, and how it is intended to be replaced.
2018-08-21 22:05:47 -06:00
Valentin Deniaud 2d8a321b46 document key sharing and m.room_key_request 2018-08-21 21:35:03 +02:00
Travis Ralston 3869f68a5c Merge remote-tracking branch 'matrix-org/master' into travis/general/room-versions 2018-08-21 12:22:35 -06:00
Travis Ralston 6172d5986a
Merge pull request #1537 from turt2live/travis/as/user-alias-query
Clean up user and alias querying for application services
2018-08-21 12:14:07 -06:00
Travis Ralston 997562786b
Merge pull request #1534 from turt2live/travis/as/auth-impersonation
Encourage appservices to use the Authorization header
2018-08-21 12:13:35 -06:00
Travis Ralston 1102fc59b2 Spelling 2018-08-21 12:13:19 -06:00
Travis Ralston 389fa87e6e English 2018-08-21 12:10:40 -06:00
Travis Ralston 1d7ea314d4
Merge pull request #1482 from turt2live/travis/s2s/presence
Document how presence EDUs work between servers
2018-08-21 11:26:32 -06:00
Travis Ralston 339a2748e8 Take out groups for now; Move namespace mention
Groups aren't landing in the spec yet, so we shouldn't include them yet.
2018-08-21 09:49:41 -06:00
Travis Ralston 24edec67c3 Merge remote-tracking branch 'matrix-org/master' into anoa/document_as_options 2018-08-21 09:44:04 -06:00
Travis Ralston 06157c6336 Merge branch 'master' into anoa/document_as_options 2018-08-21 09:42:44 -06:00
Travis Ralston 7e5160c7c2 Merge remote-tracking branch 'matrix-org/master' into travis/as/user-alias-query 2018-08-20 12:37:05 -06:00
Travis Ralston 13a1628f59 Improve wording about how masquerading works 2018-08-20 12:34:52 -06:00
Travis Ralston 7ad22b2454
Merge pull request #1533 from turt2live/travis/as/general
General/small improvements to the application service API specification
2018-08-20 12:28:38 -06:00
Travis Ralston c8ba2e098c Wording improvements for appservices 2018-08-20 12:09:17 -06:00
Will Hunt fca1c0b7f8
Guests should support /context and /event 2018-08-20 18:06:26 +01:00
Travis Ralston 9ec914956f
Merge pull request #1536 from turt2live/travis/as/user-namespace
Recommend that application services use an underscore for namespacing
2018-08-20 10:16:20 -06:00
Travis Ralston d468ae0fa3
Merge pull request #1535 from turt2live/travis/as/no-sync
Add a note that application services cannot /sync normally
2018-08-20 10:13:11 -06:00
Travis Ralston 26746cf785
Merge pull request #1517 from turt2live/travis/c2s/auth-header
Dedicate a section on how to use access tokens
2018-08-20 10:08:18 -06:00
Valentin Deniaud 9430f2c7f9 room ID is included in Megolm plaintext, not Olm 2018-08-18 11:41:45 +02:00
Valentin Deniaud 8ba19b51ab complete Olm documentation 2018-08-18 11:41:45 +02:00
Valentin Deniaud b2316ba782 enforce unique namespacing in new algorithms experiments 2018-08-18 11:41:45 +02:00
Valentin Deniaud eb8ea0e85a remove warning pointing at outdated doc 2018-08-18 11:41:45 +02:00
Valentin Deniaud 4e0f107ef7 document changed field behavior in e2e sync extension 2018-08-18 11:41:45 +02:00
Valentin Deniaud 248786681e fix typo 2018-08-18 11:41:45 +02:00
Valentin Deniaud e5005b2d0f document E2E events
This was written by Richard van der Hoff.
2018-08-18 11:41:45 +02:00
Valentin Deniaud 68b78dc5d8 complete Megolm documentation 2018-08-18 11:41:45 +02:00
Valentin Deniaud 669605b24a add Olm missing properties 2018-08-18 11:41:45 +02:00
Valentin Deniaud 76071bae98 explain how to verify sender_key ownership 2018-08-18 11:41:45 +02:00
Valentin Deniaud 8274f91b0b document device verification
This was written by Richard van der Hoff.
2018-08-18 11:41:45 +02:00
Valentin Deniaud a28f243ed7 document left parameter of device_lists in sync response
fix #1171
2018-08-18 11:41:45 +02:00
Valentin Deniaud 10c3307427 document device_one_time_keys_count in /sync/ response
fix #1157
2018-08-18 11:41:45 +02:00
Valentin Deniaud 2686b99080 fix json indent 2018-08-18 11:41:45 +02:00
Valentin Deniaud 07e3de3c61 add megolm messaging algorithm subsection
This was written by Richard van der Hoff.
2018-08-18 11:41:45 +02:00
Valentin Deniaud 33802dbbaf add olm messaging algorithm subsection
This was written by Richard van der Hoff.
2018-08-18 11:41:45 +02:00
Valentin Deniaud e210f8b050 add e2e messaging algorithms section intro
This was written by Richard van der Hoff.
2018-08-18 11:41:45 +02:00
Travis Ralston 0863c5452e Take out the false third party network endpoints
Fixes https://github.com/matrix-org/matrix-doc/issues/800
2018-08-17 15:31:21 -06:00
Travis Ralston 95b2b7c2bc Move query APIs to the right heading
Fixes https://github.com/matrix-org/matrix-doc/issues/1325

Addresses some of https://github.com/matrix-org/matrix-doc/issues/1532
2018-08-17 15:30:42 -06:00
Travis Ralston 069a2f7481 Split the query user and room APIs out to their own files 2018-08-17 15:22:06 -06:00
Travis Ralston 954498bf78 Recommend that application services use an underscore for namespacing
Fixes https://github.com/matrix-org/matrix-doc/issues/689
2018-08-17 15:13:56 -06:00
Travis Ralston 205b326e4a Add a note that application services cannot /sync normally
Fixes https://github.com/matrix-org/matrix-doc/issues/1144
2018-08-17 15:03:30 -06:00
Travis Ralston 857bcc0fe7 Encourage appservices to use the Authorization header
This also throws in a mention about how to handle a request with a lack of user_id.

The request samples now encourage the use of the header over the query string, and have had their sample values added for some readability. 

Fixes https://github.com/matrix-org/matrix-doc/issues/1296
Fixes https://github.com/matrix-org/matrix-doc/issues/1424
2018-08-17 13:49:35 -06:00
Travis Ralston 7caad61b86 Clearly state how the users namespace relates to interest in events
Fixes https://github.com/matrix-org/matrix-doc/issues/1307
2018-08-17 13:40:05 -06:00
Travis Ralston fd101b6ac9 Misc language changes 2018-08-17 13:39:17 -06:00
Hubert Chathi f5dc0eaed2
document msisdn-related endpoints in IS (#1507)
* add msisdn endpoints in Identity Server spec
* add in CS endpoints that use the IS msisdn endpoints
2018-08-17 12:00:13 -04:00
Hubert Chathi 6612dbecf1 tweak wording for validation 2018-08-17 11:54:14 -04:00
Travis Ralston ebca4c7d86 Merge remote-tracking branch 'matrix-org/master' into travis/s2s/presence 2018-08-17 09:53:57 -06:00
Travis Ralston 21dc6f823a
Merge pull request #1484 from turt2live/travis/s2s/read-receipts
Document how read receipts work over federation
2018-08-17 09:50:40 -06:00
Travis Ralston 44d1f8dbe5 s/timeline/event graph 2018-08-17 09:46:11 -06:00
Travis Ralston a53fa9300d Merge remote-tracking branch 'matrix-org/master' into travis/s2s/presence 2018-08-17 09:34:16 -06:00
Travis Ralston ff1afaa8f7 Add a note about how presence lists work 2018-08-17 09:33:17 -06:00
Travis Ralston e7aed3da26 Remove poll/unpoll from presence 2018-08-17 09:16:39 -06:00
Travis Ralston 4b9922b641
Merge pull request #1494 from turt2live/travis/general/openid
Document OpenID in the client-server and server-server APIs
2018-08-17 08:57:33 -06:00
Travis Ralston ba51d5960e r0.1.0 release of the Push Gateway specification
Because this is the first release, it has several moving parts to it:
* The version variables have been defined.
* The towncrier changelog has been prepared for future modifications.
* The templating has been updated to better support future versions of the specification.
* A release process document has been created.
2018-08-16 11:50:18 -06:00
Travis Ralston 2eab07ade4 Fix header in server-server API 2018-08-16 11:45:53 -06:00
Travis Ralston 2aa0e7b00f
Merge pull request #1483 from turt2live/travis/s2s/typing
Document how typing notifications work over federation
2018-08-16 10:09:21 -06:00
Travis Ralston d6c54b0278 unaccessible isn't a word 2018-08-15 16:39:01 -06:00
Travis Ralston ca87876f1b Clarify that the Authorization header is preferred 2018-08-15 16:37:52 -06:00
Travis Ralston 25d01aa431 Dedicate a section on how to use access tokens
Fixes https://github.com/matrix-org/matrix-doc/issues/1042.
2018-08-15 16:33:09 -06:00
Travis Ralston fde48e7ee8 Specify how room versioning works
This is the spec PR for https://github.com/matrix-org/matrix-doc/issues/1425

Room version upgrades are not part of MSC1425.

Documented aspects:
* room_version on the create event
* creating a room with a specific version (useful for testing)
* make_join behaviour
* error code documentation
* grammar of room versions

Based upon https://docs.google.com/document/d/1urKgReoHqxX8R_XtySB17dPi-DZcKhqTEL2_s895Wz0/edit
2018-08-15 15:12:36 -06:00
Travis Ralston de961fb7d6 Improve wording on push gateways 2018-08-15 11:59:58 -06:00
Hubert Chathi a264120b38 put server discovery as its own section 2018-08-14 18:06:03 -04:00
Hubert Chathi fcca80dad8 various minor fixes
- formatting fixes
- add examples to homeserver/identity server discovery schema
- replace DNS name with hostname
2018-08-14 17:58:57 -04:00
Hubert Chathi 6a3cf10be9 Merge remote-tracking branch 'origin/master' into well-known 2018-08-14 17:00:56 -04:00
Travis Ralston 6ad71f785e Improve documentation for pushers and push gateways
This fixes a number of formatting issues alongside a few documentation problems:
* The push gateway can actually expect less parameters than previously advertised. This is for user privacy.
* Introduction of the `m.email` pusher for email-capable homeservers.
* Fields not being flagged as required on some endpoints.
* Document the `event_id_only` format

Note: this does not attempt to document push rules, just pushers.

Fixes https://github.com/matrix-org/matrix-doc/issues/1374
Fixes https://github.com/matrix-org/matrix-doc/issues/1087
2018-08-14 12:51:50 -06:00
Travis Ralston 88b35d1be5 Clarify how third party invites work
This adds several diagrams to the Client-Server API about how invites
are handled, including what the server is expected to do. This helps
implementors know what they are supposed to do in the common cases,
and infer where needed to get the more complex cases correct.

Although lacking in some areas, this is how third party invites work
today.

A link to the now-improved client-server documentation for third party
invites has been added to the server-server specification. The existing
server-server specification needed no further changes on the subject.

Fixes https://github.com/matrix-org/matrix-doc/issues/1366
2018-08-13 16:29:50 -06:00
Hubert Chathi cd4fed509c
convert IS endpoints to Swagger (#1427) 2018-08-10 16:21:06 -04:00
Hubert Chathi 292d334509
document new login identifier object (#1390) 2018-08-10 16:19:17 -04:00
Travis Ralston 50fc1c4d16 Move backfill/get events so that joins, leaves, and invites are together 2018-08-09 08:35:24 -06:00
Travis Ralston 83ea90f7ba Move the Authentication section higher in the spec
It forms the foundation for all the requests under it, so it should appear before the endpoints that need it.
2018-08-09 08:33:31 -06:00
Travis Ralston 32178bb07e Tidy up the specification
* Minor word choice changes
* Remove the now-empty "Protocol URLs" section
2018-08-09 08:33:00 -06:00
Travis Ralston 56dbeeb22a
Merge pull request #1469 from turt2live/travis/s2s/backfill
Improve documentation for backfilling rooms
2018-08-09 08:00:43 -06:00
Travis Ralston c8a8fdfa8d
Merge pull request #1493 from turt2live/travis/s2s/media
Mention how the content repository works over federation
2018-08-08 08:30:08 -06:00
Travis Ralston 0a7e670715 Document how typing notifications work over federation
Relevant synapse code: d69decd5c7/synapse/handlers/typing.py (L221-L230)
2018-08-08 08:28:52 -06:00
Travis Ralston e03bfbc47b Document how read receipts work over federation
Federation format: d69decd5c7/synapse/handlers/receipts.py (L153-L166)

Population of the fields that the above uses to construct the EDU: d69decd5c7/synapse/handlers/receipts.py (L48-L56)
2018-08-08 08:27:22 -06:00
Travis Ralston 05a2427c73 Document how presence EDUs work between servers
It's worth noting that Synapse does not make use of the `poll` or `unpoll` fields, and therefore the wording has been updated to permit servers to reject users. In the case of synapse, it would automatically reject everyone in the list by nature of ignoring it.
2018-08-08 08:24:09 -06:00
Travis Ralston a77975ba68
Merge pull request #1450 from turt2live/travis/s2s/inviting-rooms
Improve documentation for how non-third party invites work
2018-08-08 08:19:50 -06:00
Travis Ralston 0f8954d839
Merge pull request #1463 from turt2live/travis/s2s/pdus-and-edus
Improve documentation around EDUs and PDUs
2018-08-08 08:02:37 -06:00
Travis Ralston dcae88c290 Document OpenID in the server-server API
Part of https://github.com/matrix-org/matrix-doc/issues/857

Reference: d69decd5c7/synapse/federation/transport/server.py (L543-L557)
2018-08-07 22:13:21 -06:00
Travis Ralston 8ffac01efe Document OpenID in the client-server API
Part of https://github.com/matrix-org/matrix-doc/issues/857

Reference: d69decd5c7/synapse/rest/client/v2_alpha/openid.py (L31-L58)
2018-08-07 22:10:11 -06:00
Travis Ralston cdcd72c0e3 Fix stray hash on client-server API link
This shouldn't be here, and nothing appears to need it. Removing it now because it has been noticed.
2018-08-07 17:02:24 -06:00
Travis Ralston 0858e7bd23 Mention how the content repository works over federation
We might want to consider promoting the media repo to it's own API, and maybe consider calling it the Media Repo rather than Content Repo.

Source of information: experience.
2018-08-07 16:58:14 -06:00
Travis Ralston 521dcdd5d5 Merge remote-tracking branch 'matrix-org/master' into travis/s2s/backfill 2018-08-07 08:54:25 -06:00
Travis Ralston 35f15ba3d8
Merge pull request #1477 from turt2live/travis/s2s/public-rooms
Document the /publicRooms endpoint for federation
2018-08-07 08:31:10 -06:00
Travis Ralston d712bfc73d
Merge pull request #1479 from turt2live/travis/s2s/server-discovery
Federation: Document the Host header; Clarify how literal IP addresses are handled
2018-08-07 08:30:47 -06:00
Travis Ralston e10770ae8b
Merge pull request #1475 from turt2live/travis/s2s/event-auth
Document /event_auth and /query_auth
2018-08-07 08:30:22 -06:00
Richard van der Hoff eb45419431
Merge pull request #1490 from matrix-org/dbkr/room_tag_grammar
Fix grammar in room tag spec
2018-08-07 09:36:28 +01:00
Florian Jacob e7cebf670e Fix minor spelling mistake from #1472
Signed-off-by: Florian Jacob <projects+git AT florianjacob )DOT( de>
2018-08-06 22:59:26 +02:00
David Baker 803ef536ba Fix grammar in room tag spec
Have removed the second clause about how the client interprets them:
I was trying to think how to rephrase it but I think in reality it's
probably just redundant.
2018-08-06 15:58:30 +01:00
Travis Ralston dcb39f8890 Fix wording from bad merge 2018-08-05 10:55:55 -06:00
Will Hunt c826edf23b Remove dns_name from S2S Api 2018-08-05 14:46:42 +01:00
Will Hunt 7a46bdae02
Spacing 2018-08-05 14:43:05 +01:00
Will Hunt 632101dcde
Merge branch 'master' into hs/dns-to-be-hostname 2018-08-05 14:42:05 +01:00
Travis Ralston 5fbaa1deb5 Federation: Document the Host header; Clarify how literal IP addresses are handled
Fixes https://github.com/matrix-org/matrix-doc/issues/1161

The IP address clarification is to add an explicit mention of how to handle the case. The prior documentation assumed that all servers would be resolvable with DNS, and does technically have a fallback to use the fallback port, however making it clear feels like a good idea.
2018-08-03 13:20:46 -06:00
Travis Ralston 2ac80d38d7 Document the /publicRooms endpoint for federation
This intentionally doesn't document the third party network aspect of the endpoint. This is scheduled for a later area for dealing with third party network/IDs and is reported as https://github.com/matrix-org/matrix-doc/issues/1476

The client-server response has been broken out to a shared file: both the client-server and server-server /publicRoom endpoints return the same thing, with slightly different inputs.

The inputs (and behaviour) are based upon the docstring here: 43ecfe0b10/synapse/federation/transport/server.py (L583-L612)
2018-08-03 11:23:44 -06:00
Travis Ralston 73958ecbff Document /event_auth and /query_auth
/event_auth is a fairly easy endpoint to determine the use case of. /query_auth is a little harder to investigate and has a fairly interesting purpose: it appears to be used for the sending server to admit defeat and shop around for the right auth chain, correcting it's own perspective as it goes.

/query_auth is based off the following research points in synapse:
* 43ecfe0b10/synapse/handlers/federation.py (L1947-L1990)
* 43ecfe0b10/synapse/handlers/federation.py (L2049-L2187)
* 43ecfe0b10/synapse/handlers/federation.py (L1716-L1761)
* 43ecfe0b10/synapse/federation/federation_server.py (L393-L446)
* https://github.com/matrix-org/synapse/blob/master/synapse/federation/transport/server.py#L482-L487
2018-08-03 09:27:19 -06:00
Travis Ralston 6b67d501e4
Merge branch 'master' into travis/s2s/query 2018-08-03 08:55:21 -06:00
Travis Ralston 3a9fb11c9b
Merge branch 'master' into travis/s2s/backfill 2018-08-03 08:54:40 -06:00
Travis Ralston 1578da453b
Merge branch 'master' into travis/s2s/get-event 2018-08-03 08:01:43 -06:00
Travis Ralston 86d7f42173
Merge pull request #1455 from turt2live/travis/s2s/leaving-rooms
Document how leaving rooms/rejecting invites over federation works
2018-08-03 08:00:56 -06:00
Travis Ralston d48f1e1713
Merge pull request #1461 from turt2live/travis/s2s/transactions
Improve documentation on how Transactions work
2018-08-03 07:38:45 -06:00
Travis Ralston cda88f3b3d Document /get_missing_events
Fixes https://github.com/matrix-org/matrix-doc/issues/1385
2018-08-02 23:18:08 -06:00
Travis Ralston 05bb7e1050 Spelling and word choice 2018-08-02 18:45:59 -06:00
Travis Ralston 53d4003d3a manual merge of master into travis/s2s/query 2018-08-02 16:48:32 -06:00
Travis Ralston 48972addbf
Merge pull request #1428 from turt2live/travis/s2s/joining-rooms
Improve the documentation for joining rooms
2018-08-02 16:44:31 -06:00
Travis Ralston a9258ed195 an -> a 2018-08-02 16:43:29 -06:00
Travis Ralston 9d474bb819 Document event retrieval endpoints in more detail
This also adds a previously-undocumented endpoint: /state_ids

Backfill is technically not part of this section, however it is being left untouched to make the merge with #1469 easier (which moves it out of the file).

Reference material:
* Some calls to synapse on these endpoints with a relatively simple private room.
2018-08-02 12:44:54 -06:00
Travis Ralston 5aef545128 Improve documentation for backfilling rooms
There's not a whole lot to improve here - most of the changes are about reorganization and minor clarifications.
2018-08-01 13:31:23 -06:00
Travis Ralston b96ee3e393
Merge pull request #1423 from turt2live/travis/s2s/keys
Improve the server key exchange portion of the s2s specification
2018-08-01 07:44:57 -06:00
Travis Ralston 5027a9a59a Improve documentation around EDUs and PDUs
Clarify fields, improve examples, and make the tables in the spec be generated rather than duplicated.
2018-07-31 13:58:23 -06:00
Travis Ralston 7679b4f1d1 Improve documentation on how Transactions work
The response is based upon various sections of the Synapse code in how it generates a response.

There are no new fields added to the transaction. Originally, `previous_ids` and `pdu_failures` were to be documented however neither of these are used in the real world.
2018-07-30 16:58:13 -06:00
David Baker 2dc51d416d Ignore stuff in `m.` you don't understand 2018-07-27 12:27:30 +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 8f1a4ae0ea Formatting 2018-07-26 16:43:51 -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 f873bae0cc Improve documentation for how non-third party invites work
The details are fairly straightforward. An `event` has been added to the response body because that's what Synapse returns, despite the spec saying otherwise until now: d69decd5c7/synapse/federation/federation_server.py (L339)
2018-07-26 08:44:10 -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 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
Will Hunt bdb881420c
Merge branch 'master' into hs/dns-to-be-hostname 2018-07-24 23:12:12 +01: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
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
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
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
Ben Parsons e7c79f2bd4 avoid .rst link conflict warnings 2018-07-20 15:30:58 +01:00
Ben Parsons 54d6d58fff naively move content from intro.rst to index.rst 2018-07-20 14:15:47 +01:00
Travis Ralston e226b60c7f Merge remote-tracking branch 'matrix-org/master' into travis/s2s/transactions-swagger 2018-07-18 10:59:39 -06:00
Travis Ralston 7cb918407d Merge remote-tracking branch 'matrix-org/master' into travis/s2s/keys-swagger 2018-07-18 10:32:46 -06:00
Travis Ralston cf93c88337 Convert third party invite exchange to swagger 2018-07-13 15:44:33 -06:00
Travis Ralston 51faf8ed2e Convert the general query API to swagger
Includes "moving" the directory query API into the same area. This will make more sense once the other query types are specified.
2018-07-12 13:46:42 -06:00
Travis Ralston 91c59e7384
Merge pull request #1353 from matrix-org/anoa/as_thirdparty_lookup
Thirdparty Entity Lookup API
2018-07-12 11:19:12 -06:00
Andrew Morgan 291a4dfc76 Third party lookup module. Fix wording 2018-07-12 16:59:30 +01:00
Andrew Morgan 114bcf1a2e Use $ref, clean up, fix errors, AS is now a C-S module. 2018-07-12 14:31:34 +01:00
Travis Ralston 374ec00046 Convert things that mention "Transaction" to swagger
There's two kinds of transactions currently: one with EDUs and one without. The one with EDUs is only used on /send, however the schema is still somewhat worth splitting out for simplicity.

The examples are brought apart to make them slightly more reusable for when they get dumped into the relevant sections of the spec (see TODO in server_server_api.rst)

Further, the Transactions stuff introduces tuples to the spec. The units.py has been updated to support this.
2018-07-11 16:52:27 -06:00
Travis Ralston 96889f16e9 Split out and fix the /server and /query key APIs 2018-07-11 13:20:44 -06:00
Travis Ralston bd2c0b7c98 Convert server keys to swagger 2018-07-11 13:09:19 -06:00
Travis Ralston 423d5593f5 Generify how OPTIONS and CORS are handled 2018-07-09 15:40:03 -06:00
Travis Ralston dd9414472b Merge remote-tracking branch 'matrix-org/master' into travis/cors 2018-07-06 08:51:32 -06:00
Andrew Morgan 8e22e9e85a Fix title underline length 2018-07-05 12:00:20 +01:00
Andrew Morgan cc3724b54a fix indentation, error messages. add rest of PR 2018-07-05 11:55:25 +01:00
Will Hunt 92f3989f2b Dirty replace of DNS name -> hostname 2018-07-05 11:37:06 +01:00
Hubert Chathi ce1e2c0904 incorporate feedback from reviewers 2018-07-04 17:58:37 -04:00