Commit Graph

1485 Commits (a72a5ccda11d94b306f507c6cb59d4fdc3042ebd)

Author SHA1 Message Date
Travis Ralston ad64af3f01 Clarify how reference hashes are done 6 years ago
Travis Ralston 01556e5b17 Clarifications and bug fixes in how v3 rooms work 6 years ago
Travis Ralston 3c17a0e53b Mention caching 6 years ago
Travis Ralston b971bcee7d Accurately represent the 3 proposals and provide more detail 6 years ago
Travis Ralston 48e4d6e412 Document domain reuse concerns
Fixes https://github.com/matrix-org/matrix-doc/issues/1783
6 years ago
Travis Ralston d2f012f4ea Incorporate MSC1831
Original proposal: https://github.com/matrix-org/matrix-doc/pull/1831

Implementation proof: pending
6 years ago
Travis Ralston 0347e873ef Specify .well-known s2s discovery and X.509 validation
Original proposals:
* https://github.com/matrix-org/matrix-doc/pull/1708 (note: the JSON requirements were softened by https://github.com/matrix-org/matrix-doc/pull/1824)
* https://github.com/matrix-org/matrix-doc/pull/1711

Implementation proofs:
* https://github.com/matrix-org/synapse/pull/4489
* No explicit PRs for MSC1711 could be found, however Synapse is known to implement it.

There are no intentional changes which differ from the proposals in this commit, however the author has relied upon various historical conversations outside of the proposals to gain the required context. Inaccuracies introduced by the author are purely accidental.
6 years ago
Travis Ralston ccce6c196d Specify how capabilities work in the c2s API
Original proposals:
* https://github.com/matrix-org/matrix-doc/pull/1753
* https://github.com/matrix-org/matrix-doc/pull/1804

Implementation proof:
* https://github.com/matrix-org/synapse/pull/4472
* https://github.com/matrix-org/matrix-js-sdk/pull/830

There is one change to MSC1753 which is included in this commit. MSC1804 remains unchanged. In the original proposal, the change password capability being present was an indication that password changes were possible. It was found that this doesn't really communicate the state very well to clients in that lack of a capability (or a 404, etc) would mean that users would erroneously not be able to change their passwords. A simple boolean flag was added to assist clients in detecting this capability.
6 years ago
Travis Ralston ff75996524 Add specification for room version 3: Event IDs as hashes
Original proposal: https://github.com/matrix-org/matrix-doc/pull/1659
Implementation proofs (some traversing of the PR tree may be required to get all of them):
* https://github.com/matrix-org/synapse/pull/4483
* https://github.com/matrix-org/synapse/pull/4499

This doesn't intentionally change anything from the proposal.

**Implementation details**:

The simple part of this is the introduction of a rooms/v3.html document. The somewhat unclear part is the stuff done to the s2s definitions. This pulls `unsigned_pdu` out to `unsigned_pdu_base` (all fields except `event_id`) where it can be reused in `pdu` and `pdu_v3` (for rooms v3). These definitions are further moved into the room version specifications where they can highlight the exact schemas in detail.

Version 1 has been updated to include the pre-existing event format, however the core principles of the room have not been changed. The same applies to room version 2. Room versions have immutable core principles once in the spec, otherwise these format changes would land in a pre-existing version.

The client-server API event formats will need updating, however that is being punted to a different commit to try and keep these changes reviewable.
6 years ago
Neil Johnson c09fa6845e
Update presence.rst 6 years ago
Travis Ralston 00adfdbf4a
Merge pull request #1820 from matrix-org/travis/spec/fed-v2-invite
Specification for v2 s2s invite API
6 years ago
Andrew Morgan 0712fd36a2 75% majority now required for FCP 6 years ago
Travis Ralston aca9437bf3 Specification for v2 s2s invite API
Original proposal: https://github.com/matrix-org/matrix-doc/pull/1794
Implementation proofs:
* https://github.com/matrix-org/synapse/pull/4402
* https://github.com/matrix-org/synapse/pull/4496

There are no changes from the original proposal.
6 years ago
Neil Johnson bf2b6e6daa remove references to presence lists 6 years ago
Matthew Hodgson a358e2d4d8 rst 6 years ago
Richard van der Hoff 9f443225ac fix incorrect spelling of homeserver 6 years ago
Travis Ralston 6c7eea555a
Merge pull request #1773 from matrix-org/travis/spec/rooms
Add a room version specification
6 years ago
Travis Ralston 052d68d83d
Merge pull request #1791 from matrix-org/travis/spec/rver-upgrades
Add room version upgrades
6 years ago
Travis Ralston 061f59547a Minor wording changes 6 years ago
Hubert Chathi 5cafcd103f
Fix copyright
> Since this is a copy-and-paste of old text, I think the copyright year should match when the original text was written, which according to git was 2017.

Co-Authored-By: turt2live <travpc@gmail.com>
6 years ago
Travis Ralston 0dfc64a9f4 Improve wording 6 years ago
Travis Ralston bd5e760a0d Simplify the description for room versions
Instead of trying to describe maturity, stability, and recommendedness in one list we should describe what is "safe" and "unsafe" to use. The default version is just something that servers should use, and is normally going to be stable.
6 years ago
Hubert Chathi ebe887d931
Grammar
Co-Authored-By: turt2live <travpc@gmail.com>
6 years ago
Matthew Hodgson 86703ef952
Merge branch 'master' into matthew/msc1779 6 years ago
Matthew Hodgson 3b86fa0e3c incorporating delph & vdh reviews 6 years ago
Travis Ralston ba37f2d311 prompt->advertise 6 years ago
Travis Ralston 19e94815f9 Try and improve the understanding of room versions 6 years ago
Travis Ralston 0dde2489b6 Clarify what a Mandatory room version is 6 years ago
Travis Ralston 96d754f429 promote -> prompt 6 years ago
Travis Ralston a6f5d01586 Clarify that servers don't have to implement development/beta versions 6 years ago
Travis Ralston 2457438f1e Encourage servers to transfer whatever they can while being open-ended 6 years ago
Travis Ralston 4e0533a5f3 Soften UX requirements 6 years ago
Travis Ralston fcc26d247e
Merge pull request #1789 from matrix-org/travis/spec/sso-login
Add a generic SSO login API
6 years ago
Travis Ralston 82ee3a6035 Adjust wording for SSO introduction 6 years ago
Travis Ralston 166d4ada86 Fix room versions reference in appendices & s2s spec 6 years ago
Travis Ralston 71e6321f4d Rework how room versions are represented
Versions are actually on a scale of recommendations, and are expected to be created as needed. The scale presented here (develop/beta/default/recommended/mandatory) is a more wordy version of what was previously discussed/intended for room versions - the labels aren't final and may be changed.
6 years ago
Travis Ralston aeb524ef89 Remove CAS login and reference it against r0.4.0
The SSO module should cover what CAS provides, and r0.4.0 is good as a reference for how CAS could be implemented without us repeating it here.
6 years ago
Matthew Hodgson 811e65a4d1 kitsune review on when to add things to the spec 6 years ago
Matthew Hodgson 70be8393a3 clarify the technical note and guiding principles 6 years ago
Matthew Hodgson f3085812e9 more examples; remove widget MSC ref 6 years ago
Matthew Hodgson 156488384c add more examples for spec inclusion; add interoperability as a core value 6 years ago
Matthew Hodgson c053996a77 add new technical guidelines to proposals.rst
this was originally a todo for MSC1779, but belongs better in proposals.rst
6 years ago
Travis Ralston b85f7bb248 Add room version upgrades
Implements https://github.com/matrix-org/matrix-doc/issues/1501
6 years ago
Travis Ralston d6c33ea0a5 Make CAS a subset of SSO 6 years ago
Travis Ralston 3e7a5f5ea4 Initial draft for SSO support 6 years ago
Travis Ralston bc1303a1a0
Add a bit of rationale for WIP tags 6 years ago
Travis Ralston 671527360c
Recommend some kind of WIP tag for MSCs 6 years ago
Travis Ralston 258aba5fed Incorporate MSC1693
This is largely blatant copy/paste from the MSC with some formatting done to tidy it up a bit.
6 years ago
Travis Ralston ffe577371d Add a room version specification
The "Room Specification" (or "Room Version Specification") is the specification that defines which room versions do what and are intended to be documents which speak the truth about how rooms operate under the hood.

The approach taken here is a bit different than other specifications. For starters, the specification is versioned in this project instead of relying on the matrix.org repository to track compiled HTML. This is done for a couple reasons, the first being we're still developing the v1 specification while concurrently making a v2 spec and the second being trying to reduce the reliance on matrix.org's repository for specifications.

Because the room spec is built into versions, some changes needed to be made. The `targets.yaml` now has a special syntax for indicating what version something is at, and the changelog generator can handle rendering different versions of the same changelog (as parsed from the RST). Some additional work has been put in to the changelog parsing to allow us to reference the v1 room spec as "v1" without having to sacrifice clarity in the changelog headings.

Finally, this moves the state resolution algorithms into the versioned
spec as a result of MSC1759 (https://github.com/matrix-org/matrix-doc/pull/1759).

Note: this does not introduce the concept of versioned schemas (tabs) that I was previously working with. There's currently no use for them, so they are shelved elsewhere.
6 years ago
Richard van der Hoff 958b956776
Merge pull request #1755 from matrix-org/erikj/event_checks
Document the checks made for incoming PDUs
6 years ago
Travis Ralston 35de43de61
Merge pull request #1743 from matrix-org/dbkr/add_sandbox_to_csp
Add 'sandbox' to recommended CSP header
6 years ago
Erik Johnston 39df8291e9 Add TODO 6 years ago
Erik Johnston be625254b1 Fix up wording about auth rules to not lie 6 years ago
Erik Johnston c93bdcc59c Fix up headings 6 years ago
Richard van der Hoff cac150d567
Fix up wording
Co-Authored-By: erikjohnston <erikj@jki.re>
6 years ago
Erik Johnston ee9c010c37 Document the checks made for incoming PDUs 6 years ago
Richard van der Hoff fa0b4f9e13 Make the proposal labels match what happens in practice 6 years ago
J. Ryan Stinnett d197a5761f Clarify encrypted push rules
Fix `.m.rule.encrypted_room_one_to_one` by moving a condition to the right block
of the rule.

Fix `.m.rule.encrypted` to state that it applies to group rooms.

Signed-off-by: J. Ryan Stinnett <jryans@gmail.com>
6 years ago
David Baker e318286404 Add 'sandbox' to recommended CSP header 6 years ago
Ben Parsons 16f17855c9 link to CS API Swagger Viewer 6 years ago
Ben Parsons 43109a717f placeholder for proposals CSS 6 years ago
Richard van der Hoff 767af87744
Merge pull request #1701 from uhoreg/e2e_export
document megolm session export format
6 years ago
Hubert Chathi 189725659a clarifications and formatting fixes 6 years ago
Matthew Hodgson 179162379e spell out that shepherd cannot be author 6 years ago
Erik Johnston 4271391214
Initial stab at documenting soft fail (#1641) 6 years ago
Andrew Morgan f288facec8
Merge pull request #1697 from matrix-org/anoa/msc_update
The new and improved MSC process
6 years ago
Andrew Morgan f8ffa79b56 Update and clarify proposal labels 6 years ago
Andrew Morgan 2b259c6a7b Remove etiquette page from targets 6 years ago
Andrew Morgan 4b858a7993 DCO required for proposal and spec PR 6 years ago
Andrew Morgan 0afb122760 Clarification on FCPs 6 years ago
Andrew Morgan f00be6b0d8 Etiquette -> guiding principles 6 years ago
Hubert Chathi 46fde9723c document megolm session export format 6 years ago
Matthew Hodgson c6e0a88b09 fix irc bridge example properly 6 years ago
Matthew Hodgson 7a86bc4a66 fix missing escapes on AS regexp 6 years ago
Andrew Morgan ea21e31a0c Merge branch 'anoa/msc_update' of github.com:matrix-org/matrix-doc into anoa/msc_update 6 years ago
Andrew Morgan 7bff4d288c be begin -> begin 6 years ago
Travis Ralston 5a2d28e7fd Reduce more abbreviations! 6 years ago
Travis Ralston 9625f11fd4 reduce abbreviations 6 years ago
Andrew Morgan d487c0974f Clarify how to get a shepherd (just ask) 6 years ago
Andrew Morgan 45c935d8d3 Clarify that MSCs aren't just issues anymore. 6 years ago
Andrew Morgan 1e939c50f5 Gather feedback 6 years ago
Andrew Morgan 148f7d7b33 Minor proposal updates are allowed 6 years ago
Andrew Morgan 5a1e735921 Fix sign off bullet 6 years ago
Andrew Morgan aeea060bb8 Specify where to find the MSC ID 6 years ago
Andrew Morgan 7753957d04 remove ambiguity 6 years ago
Andrew Morgan 2f0025c7a7 Fix up wording in proposal etiquette 6 years ago
Andrew Morgan 35c924308c core team -> Core Team 6 years ago
Andrew Morgan 8121bef771 Introduce the spec core team 6 years ago
Andrew Morgan c1ecb9e324 Fix up table with title and add corresponding GitHub labels 6 years ago
Andrew Morgan 889b46898c Move proposal etiquette to a separate document. 6 years ago
Andrew Morgan 49d017bdd5 your proposal -> the proposal 6 years ago
Andrew Morgan fb4c50ec8a No need to redefine MSC 6 years ago
Andrew Morgan 604091380f Attempt to fix contributing link 6 years ago
Andrew Morgan b3f90f5825 proposal passed = spec pr missing 6 years ago
Andrew Morgan 873641e4bc Proposal Created and In Review is a single phase 6 years ago
Andrew Morgan 11dbd5b56a Proposal WIP -> drafting/feedback gathering 6 years ago
Andrew Morgan 5ae3b50c6b Require link to implementation 6 years ago
Andrew Morgan f1d71bd6c4 Less complicated wording 6 years ago
Andrew Morgan 0e9ad9e95d Fix wording, fix earlier capatilization 6 years ago
Andrew Morgan f769084570 Put it in the proposals dir! 6 years ago
Andrew Morgan 67146e4bec MSC ALL the changes 6 years ago
Andrew Morgan 9432ed76d7 first-draft -> first draft 6 years ago
Andrew Morgan 80d1d4af9c Fix capatilization 6 years ago
Andrew Morgan d2e827e0c6 Note about earlier MSC process 6 years ago
Andrew Morgan 764c63f3e8 Add proposal template 6 years ago
Andrew Morgan a3144e6959 Move to the new and improved MSC process 6 years ago
Matthew Hodgson 6dab4b28f8
Merge pull request #1648 from matrix-org/matthew/device_list_update
document device list synchronisation over federation.
6 years ago
Matthew Hodgson 334c69bcda wording fix 6 years ago
Matthew Hodgson ccbc88ee5d reword to spell out to when device list updates should be sent 6 years ago
Matthew Hodgson bcd48ebbec
Merge pull request #1610 from uhoreg/reloaded
document new state resolution algorithm
6 years ago
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>
6 years ago
Matthew Hodgson e9e3afbd34 clarify who servers should send m.device_list_update EDUs to 6 years ago
Matthew Hodgson 928fc5cbe5 incorporate review 6 years ago
Matthew Hodgson 42b11e096f Review 6 years ago
Matthew Hodgson d25f4412d4 improve wording 6 years ago
Matthew Hodgson db302b66ca revert example which was corect first time; fix rst 6 years ago
Matthew Hodgson 0f9a23c471 swaggerify to-device 6 years ago
Matthew Hodgson 0afdcc59ea spell out stream_id and fix todo 6 years ago
Matthew Hodgson 30d56691b1 document device list synchronisation over federation.
untested
closes MSC1212
6 years ago
Travis Ralston 735de03e07 Add r0 version links
These were missed in the release process.
6 years ago
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
6 years ago
Travis Ralston 00578547c0
Merge pull request #1644 from matrix-org/rav/is_token_grammar
Spec grammars for IS things
6 years ago
Travis Ralston f3825c5827 A couple more stragglers 6 years ago
Travis Ralston 218b86d6e8 Hopefully the last one 6 years ago
Richard van der Hoff 79974b152c s/identity service/identity server 6 years ago
Richard van der Hoff a544b68298 Merge branch 'master' into rav/is_token_grammar 6 years ago
Travis Ralston 7d34995ece It's actually an "identity server implementing the Identity Service API"
Also add a note about appservices being special.
6 years ago
Travis Ralston 7ac76fa27c Actually we're going with "identity server" afterall 6 years ago
Travis Ralston ec248b436f Identity Service is lowercase 6 years ago
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.
6 years ago
Travis Ralston 108c623557
Merge pull request #1635 from turt2live/travis/c2s/read-markers
Add read markers
6 years ago
Travis Ralston 835f5de387 Generalize the token name even more 6 years ago
Richard van der Hoff dced3d5707 Notes on the format of IS session IDs and tokens 6 years ago
Travis Ralston f299fe023a English 6 years ago
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
6 years ago
Hubert Chathi c0dd7e0025
Merge pull request #1420 from Zil0/encrypted_attach
Document encrypted attachments
6 years ago
Travis Ralston 4b9fb99644 Take out unhelpful example 6 years ago
Travis Ralston 3146fc339a Merge remote-tracking branch 'matrix-org/master' into travis/c2s/clarify-errors 6 years ago
Travis Ralston f6d9e53f5c Clarify that homeserver must reject clients from setting m.fully_read 6 years ago
Travis Ralston 2e8151999e Clarify that read markers are fully read markers 6 years ago
Hubert Chathi f1f32d3a15 add more clarifications 6 years ago
Travis Ralston 679ddabb53 Merge remote-tracking branch 'matrix-org/master' into travis/c2s/read-markers 6 years ago
Travis Ralston 567843e043 Add additional clarity to how rich replies are structured and used 6 years ago
Hubert Chathi e3daf10bb9 refactor encrypted file schema as "Extension to m.message" 6 years ago
Travis Ralston 9004be7bda Merge remote matrix-org/master 6 years ago
Travis Ralston f013b7ef03
Merge pull request #1631 from turt2live/travis/general/unstable-warning
Render a warning if the spec is unstable
6 years ago
Travis Ralston ab00630ebc Don't include a second unstable warning in the s2s spec for now 6 years ago
Travis Ralston f72c821be4
Merge pull request #1619 from turt2live/travis/c2s/local-echo
Reference that transaction IDs may be used to echo
6 years ago
Travis Ralston 136ba15eb2
Merge pull request #1605 from turt2live/travis/c2s/clarify-html-again
Mention that clients should not be producing invalid HTML
6 years ago
Travis Ralston 38ae166e9d
Merge pull request #1505 from turt2live/travis/general/3pid_invite
Clarify how third party invites work
6 years ago
Travis Ralston afa16f1e4e
Merge pull request #1606 from turt2live/travis/c2s/room-tags
Update the room tagging documentation
6 years ago
Travis Ralston c127eed7e7
Merge pull request #1600 from turt2live/travis/c2s/media-csp
Specify the minimum CSP for media
6 years ago
Travis Ralston 9646d99c9e
Merge pull request #1602 from turt2live/travis/general/redactions
Add the other fields the server is expected to keep on events
6 years ago
Erik Johnston 080845ac1c Add link to previous section 6 years ago
Erik Johnston bbca5ce43a Merge branch 'master' of github.com:matrix-org/matrix-doc into erikj/limit_auth_events 6 years ago
Erik Johnston b6ed25e4b4 Fix incorrect indent 6 years ago
Erik Johnston f3a13eed76
Merge pull request #1593 from matrix-org/erikj/auth_events
Update rules on which events to add to `auth_events`
6 years ago
Erik Johnston 86891ca7e4
Merge pull request #1625 from matrix-org/erikj/auth_rejections
Explain how to handle rejected events
6 years ago
Erik Johnston d91dc6fbf6 Fixup 6 years ago
Erik Johnston 4d653748d6 Add note back in 6 years ago
Erik Johnston 8e6c8ba59e Merge branch 'master' of github.com:matrix-org/matrix-doc into erikj/spec_3pid_ruls 6 years ago
Erik Johnston a1aedb386a Actually use proper sentences like a proper adult 6 years ago
Erik Johnston 0adfd1ebb0
Merge pull request #1591 from matrix-org/erikj/fixup_auth_rules
Fix up auth rules
6 years ago
Erik Johnston d63184ebac Fixup 6 years ago
Erik Johnston 3c53e1910d Fixup 6 years ago
Erik Johnston 1a45bc4a85 Reword 6 years ago
Erik Johnston 59f86ec8f2 Reindent as RST requires sublists to be three spaces 6 years ago
Erik Johnston f4706c8889 Require creator field 6 years ago
Erik Johnston f3aea32a24 Be consistent with 'If..., reject' 6 years ago
Erik Johnston 6c8a45c165 Full stops 6 years ago
Erik Johnston ebb044674f Remove duplicated explanation about event rejection 6 years ago
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
6 years ago
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)
6 years ago
Travis Ralston caaa688e37 Fix links to client-server spec 6 years ago
Travis Ralston 219b27b182 Merge remote matrix-org/master 6 years ago
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)
6 years ago
Richard van der Hoff 0f84c69805
Merge branch 'master' into rav/clarify_event_signing 6 years ago
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.
6 years ago
Travis Ralston d57b977a55 Merge branch 'm-master' into travis/general/3pid_invite 6 years ago
Travis Ralston 1f6499d563 Fix typo 6 years ago
Travis Ralston 356626845c Remove unhelpful arrow from the 3rd party invite sequence dance
This doesn't add anything in terms of clarity.
6 years ago
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
6 years ago
Travis Ralston cee0a5ac7b
Merge pull request #1557 from turt2live/travis/general/r0-prep
Prepare the identity service and server-server APIs for r0
6 years ago
Travis Ralston 32cde24bcf Fix server-server link in IS spec 6 years ago
Travis Ralston e82c22b060
Merge pull request #1615 from turt2live/travis/is/touchups
Touch up more of the identity service specification
6 years ago
Travis Ralston b8f2c721dc Clarify which attributes should be valid 6 years ago
Travis Ralston 2d18b0d2d8 Merge remote-tracking branch 'matrix-org/master' into travis/c2s/clarify-html-again 6 years ago
Travis Ralston f09db16027 Merge remote-tracking branch 'matrix-org/master' into travis/s2s/key-mgmt 6 years ago
Travis Ralston 2753d24302 Merge remote-tracking branch 'matrix-org/master' into travis/general/r0-prep 6 years ago
Travis Ralston 440841d1ff Recommend a CSP rather than require it. 6 years ago
Travis Ralston 70f72b5b3b
Merge pull request #1628 from turt2live/travis/as/external_url
Clarify how external_url is supposed to work
6 years ago
Travis Ralston cc1e496287
Merge pull request #1629 from turt2live/travis/as/route-versions
Version all appservice endpoints and provide a fallback
6 years ago
Travis Ralston 326ff6b1a1
Merge branch 'master' into travis/as/external_url 6 years ago
Travis Ralston 0f2e01f5b5
Merge pull request #1555 from turt2live/travis/as/cleanup
Application service spec cleanup; Security definitions; r0 prep
6 years ago
Travis Ralston 1a3f112337 Clarify that the external_url is unsafe 6 years ago
Travis Ralston be5c566028 Version all appservice endpoints and provide a fallback
Fixes https://github.com/matrix-org/matrix-doc/issues/1616
6 years ago
Travis Ralston a48f7b9278 Clarify how external_url is supposed to work
Fixes https://github.com/matrix-org/matrix-doc/issues/1624
6 years ago
Travis Ralston 05b017276c Don't accidentally limit application services to one homeserver 6 years ago
Travis Ralston ab14f33060 Add link to the client-server ACLs module 6 years ago
Erik Johnston 5c2b8e3569 Explain how to handle rejeceted events 6 years ago
Hubert Chathi db644ca522 add some clarifications 6 years ago
Travis Ralston 56f6640c07
Merge pull request #1618 from turt2live/travis/c2s/initalsync
Remove references to initialSync from account data and receipts module
6 years ago
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.
6 years ago
Richard van der Hoff 6ba50fe2f6
Merge pull request #1588 from matrix-org/rav/fix_server_name
Specify that server names cannot be %-encoded
6 years ago
Travis Ralston bd93481013 Reference that transaction IDs may be used to echo
Fixes https://github.com/matrix-org/matrix-doc/issues/1462
6 years ago
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
6 years ago
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.
6 years ago
Travis Ralston a5c3924492 Merge remote matrix-org/master 6 years ago
Hubert Chathi 4230e375fa
Merge pull request #1465 from Zil0/key_sharing
Document key sharing events
6 years ago
Travis Ralston dc602b74d2 Reference the server-server specification for /onbind 6 years ago
Travis Ralston 0387da51e2 Clarify how sessions work when establishing associations 6 years ago
Travis Ralston 039cefdbea Say that identity services should be nice to web browsers (CORS/OPTIONS) 6 years ago
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)
6 years ago
Hubert Chathi 0130620cc1
Merge pull request #1596 from uhoreg/e2e_sessions
specify how to handle multiple olm sessions with the same device
6 years ago
Hubert Chathi 9b94e588e6 document new state resolution algorithm 6 years ago
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.
6 years ago
Travis Ralston e7a69a6a6d Merge remote-tracking branch 'matrix-org/master' into travis/general/r0-prep 6 years ago
Travis Ralston a46783eb24 Revert "Take out the reference to the current version from the changelog"
This reverts commit 2a20c11467.
6 years ago
Travis Ralston 2a20c11467 Take out the reference to the current version from the changelog 6 years ago
Travis Ralston 2ab2f91088 Merge remote-tracking branch 'matrix-org/master' into travis/releases/push-gateway/r0.1.0 6 years ago
Richard van der Hoff 196159be91 We should include the Host header if the port was explicit. 6 years ago
Travis Ralston abb91508be
Merge pull request #1556 from turt2live/travis/is/cleanup
Identity Service API cleanup
6 years ago
Travis Ralston c03f2f8d79 Minor touchups to the room tagging API
Fixes some of https://github.com/matrix-org/matrix-doc/issues/1565
6 years ago
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
6 years ago
Travis Ralston 8950f0b2cc Spelling 6 years ago
Travis Ralston 2234e0b097 Mention that clients should not be producing invalid HTML
Fixes https://github.com/matrix-org/matrix-doc/issues/1595
6 years ago
Matthew Hodgson 8e88d82a4b fix typo in anchor. fixes #1603 6 years ago
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)
6 years ago
Travis Ralston ec20c43220 Specify the minimum CSP for media
Fixes https://github.com/matrix-org/matrix-doc/issues/1066
6 years ago
Travis Ralston 73feee5d73
Merge pull request #1586 from turt2live/travis/as/comment-ts-section
Comment out the timestamp massaging section for now
6 years ago
Travis Ralston 25b34e1d7b Mention that ts massaging was in a draft, but not in the release 6 years ago
Travis Ralston 39ef845a53
Merge pull request #1547 from turt2live/travis/c2s/pills
Document how mentions (pills) work
6 years ago
Hubert Chathi 5019fb7c49
Merge pull request #1359 from uhoreg/well-known
.well-known discovery
6 years ago
Hubert Chathi 688c8ebcd3 specify how to handle multiple olm sessions with the same device 6 years ago
Erik Johnston d921b81c70 Reject events with superfluous auth_events entries 6 years ago
Erik Johnston 073ebb051b Spec third party invites in auth rules 6 years ago
Erik Johnston 5d40af7ecf Update rules on which events to add to `auth_events` 6 years ago
Erik Johnston 86b5486445 Add missing clauses to and fix authorization rules
They are still missing third party invites.
6 years ago
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.
6 years ago
Richard van der Hoff d493c82e82 even more clarification 6 years ago
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
6 years ago
Richard van der Hoff 78d8118846 Further server_name clarification 6 years ago
Richard van der Hoff f15eafae7f Remove trailing spaces 6 years ago
Richard van der Hoff 08fba5de51 Link to grammar rather than duplicating. 6 years ago
Richard van der Hoff 120bb8dc8e s/host/hostname/ 6 years ago
Richard van der Hoff 8679a642b4 clarity 6 years ago
Richard van der Hoff 7f9524f801 s/--/—/ 6 years ago
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.
6 years ago
Travis Ralston 85b9769cd9 Comment out the timestamp massaging section for now
Pending discussion on https://github.com/matrix-org/matrix-doc/issues/1585
6 years ago
Erik Johnston fc1fdc95af Specify a limit on the number of EDUs and PDUs a transaction can contain 6 years ago
Valentin Deniaud 28ced3b0a4 fixup! document encrypted attachments 6 years ago
Travis Ralston 72c6fa2aaf More versioned links 6 years ago
Travis Ralston cff5b8b205 More versioned links 6 years ago
Travis Ralston e4f8c23972
Merge pull request #1562 from turt2live/travis/c2s/html-formatting
Define the supported HTML subset for message events
6 years ago
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.
6 years ago
Travis Ralston fa3e9a7609 Merge remote-tracking branch 'matrix-org/master' into travis/c2s/pills 6 years ago
Travis Ralston 6f80db5ddf Include the "other versions" section of the changelog 6 years ago
Travis Ralston 07153c22a9 Misc. cleanup of the appservice spec 6 years ago
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.
6 years ago
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.
6 years ago
Travis Ralston 51193cac39 Merge remote-tracking branch 'matrix-org/master' into travis/as/normal-events 6 years ago
Travis Ralston 4e885c3f77
Merge pull request #1550 from turt2live/travis/general/acls
Server ACLs
6 years ago
Travis Ralston a0b17e6ed6
Merge pull request #1551 from turt2live/travis/c2s/push-rules
General improvements to the push rules module
6 years ago
Travis Ralston 090f852fdf
Merge pull request #1262 from matrix-org/anoa/document_as_options
Document new application service registration file options
6 years ago
Travis Ralston 54032964fc Misc clarity for 3rd party appservice protocols/locations 6 years ago
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.
6 years ago
Travis Ralston d7397ccd56 Provide additional rationale for kicking users when they are ACLd 6 years ago
Travis Ralston 76afef79f8 Clarify the rationale and motive for blanket IP banning and port exclusion 6 years ago
Travis Ralston be97e95dc1 Promote device management to be a dedicated section 6 years ago
Travis Ralston 8069981252 Add federation /user/* endpoints
Fixes https://github.com/matrix-org/matrix-doc/issues/1438
6 years ago
Travis Ralston 89daa3c5ce Clarify that clients aren't required to render all the tags
This commit also includes minor clarifications to surrounding text.
6 years ago
Travis Ralston 5bf99aeb34 Add a note that formatted_body is not forever 6 years ago
Travis Ralston c7822cc9a8 Link to the content repo when referencing MXC URIs in images 6 years ago
Travis Ralston d7d28f7e5b Remove nl as a supported HTML tag 6 years ago
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
6 years ago
Travis Ralston 312799ae78 General clarification for mention and how matrix.to URIs are meant to work 6 years ago
Valentin Deniaud b7577ea237 document encrypted attachments
Fix #461.
6 years ago
Valentin Deniaud f6b5aee3e2 explain how to use key sharing events 6 years ago
Travis Ralston d370a2c6fd Prepare the identity service and server-server APIs for r0
* Create the changelog scaffolding
* Set up the variables for versioning
6 years ago
Travis Ralston dafea96621 Fix indentation and schema references in the identity service spec 6 years ago
Travis Ralston 811998735c Define common error codes in the Identity Service API
Fixes https://github.com/matrix-org/matrix-doc/issues/1407
6 years ago
Travis Ralston 017d6db737 Document third party network/protocol directories (for appservices)
Fixes https://github.com/matrix-org/matrix-doc/issues/869
6 years ago
Travis Ralston 9eda1a6971 Move the third party network API to it's own section 6 years ago
Travis Ralston bbd33c1461 Move appservice transaction API to the right section
Part of https://github.com/matrix-org/matrix-doc/issues/1532
6 years ago
Travis Ralston ab0be04571 Fix titles 6 years ago
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
6 years ago
Travis Ralston ef41b5c2bf Server ACLs
Implements the proposal for https://github.com/matrix-org/matrix-doc/issues/1383
6 years ago
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.
6 years ago
Valentin Deniaud 2d8a321b46 document key sharing and m.room_key_request 6 years ago
Travis Ralston 3869f68a5c Merge remote-tracking branch 'matrix-org/master' into travis/general/room-versions 6 years ago
Travis Ralston 6172d5986a
Merge pull request #1537 from turt2live/travis/as/user-alias-query
Clean up user and alias querying for application services
6 years ago
Travis Ralston 997562786b
Merge pull request #1534 from turt2live/travis/as/auth-impersonation
Encourage appservices to use the Authorization header
6 years ago
Travis Ralston 1102fc59b2 Spelling 6 years ago
Travis Ralston 389fa87e6e English 6 years ago
Travis Ralston 1d7ea314d4
Merge pull request #1482 from turt2live/travis/s2s/presence
Document how presence EDUs work between servers
6 years ago
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.
6 years ago
Travis Ralston 24edec67c3 Merge remote-tracking branch 'matrix-org/master' into anoa/document_as_options 6 years ago
Travis Ralston 06157c6336 Merge branch 'master' into anoa/document_as_options 6 years ago
Travis Ralston 7e5160c7c2 Merge remote-tracking branch 'matrix-org/master' into travis/as/user-alias-query 6 years ago
Travis Ralston 13a1628f59 Improve wording about how masquerading works 6 years ago
Travis Ralston 7ad22b2454
Merge pull request #1533 from turt2live/travis/as/general
General/small improvements to the application service API specification
6 years ago
Travis Ralston c8ba2e098c Wording improvements for appservices 6 years ago
Will Hunt fca1c0b7f8
Guests should support /context and /event 6 years ago
Travis Ralston 9ec914956f
Merge pull request #1536 from turt2live/travis/as/user-namespace
Recommend that application services use an underscore for namespacing
6 years ago
Travis Ralston d468ae0fa3
Merge pull request #1535 from turt2live/travis/as/no-sync
Add a note that application services cannot /sync normally
6 years ago
Travis Ralston 26746cf785
Merge pull request #1517 from turt2live/travis/c2s/auth-header
Dedicate a section on how to use access tokens
6 years ago
Valentin Deniaud 9430f2c7f9 room ID is included in Megolm plaintext, not Olm 6 years ago
Valentin Deniaud 8ba19b51ab complete Olm documentation 6 years ago
Valentin Deniaud b2316ba782 enforce unique namespacing in new algorithms experiments 6 years ago
Valentin Deniaud eb8ea0e85a remove warning pointing at outdated doc 6 years ago
Valentin Deniaud 4e0f107ef7 document changed field behavior in e2e sync extension 6 years ago
Valentin Deniaud 248786681e fix typo 6 years ago
Valentin Deniaud e5005b2d0f document E2E events
This was written by Richard van der Hoff.
6 years ago
Valentin Deniaud 68b78dc5d8 complete Megolm documentation 6 years ago
Valentin Deniaud 669605b24a add Olm missing properties 6 years ago
Valentin Deniaud 76071bae98 explain how to verify sender_key ownership 6 years ago
Valentin Deniaud 8274f91b0b document device verification
This was written by Richard van der Hoff.
6 years ago
Valentin Deniaud a28f243ed7 document left parameter of device_lists in sync response
fix #1171
6 years ago
Valentin Deniaud 10c3307427 document device_one_time_keys_count in /sync/ response
fix #1157
6 years ago
Valentin Deniaud 2686b99080 fix json indent 6 years ago
Valentin Deniaud 07e3de3c61 add megolm messaging algorithm subsection
This was written by Richard van der Hoff.
6 years ago
Valentin Deniaud 33802dbbaf add olm messaging algorithm subsection
This was written by Richard van der Hoff.
6 years ago
Valentin Deniaud e210f8b050 add e2e messaging algorithms section intro
This was written by Richard van der Hoff.
6 years ago
Travis Ralston 0863c5452e Take out the false third party network endpoints
Fixes https://github.com/matrix-org/matrix-doc/issues/800
6 years ago
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
6 years ago
Travis Ralston 069a2f7481 Split the query user and room APIs out to their own files 6 years ago
Travis Ralston 954498bf78 Recommend that application services use an underscore for namespacing
Fixes https://github.com/matrix-org/matrix-doc/issues/689
6 years ago
Travis Ralston 205b326e4a Add a note that application services cannot /sync normally
Fixes https://github.com/matrix-org/matrix-doc/issues/1144
6 years ago
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
6 years ago
Travis Ralston 7caad61b86 Clearly state how the users namespace relates to interest in events
Fixes https://github.com/matrix-org/matrix-doc/issues/1307
6 years ago
Travis Ralston fd101b6ac9 Misc language changes 6 years ago
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
6 years ago
Hubert Chathi 6612dbecf1 tweak wording for validation 6 years ago
Travis Ralston ebca4c7d86 Merge remote-tracking branch 'matrix-org/master' into travis/s2s/presence 6 years ago
Travis Ralston 21dc6f823a
Merge pull request #1484 from turt2live/travis/s2s/read-receipts
Document how read receipts work over federation
6 years ago
Travis Ralston 44d1f8dbe5 s/timeline/event graph 6 years ago
Travis Ralston a53fa9300d Merge remote-tracking branch 'matrix-org/master' into travis/s2s/presence 6 years ago
Travis Ralston ff1afaa8f7 Add a note about how presence lists work 6 years ago
Travis Ralston e7aed3da26 Remove poll/unpoll from presence 6 years ago
Travis Ralston 4b9922b641
Merge pull request #1494 from turt2live/travis/general/openid
Document OpenID in the client-server and server-server APIs
6 years ago
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.
6 years ago
Travis Ralston 2eab07ade4 Fix header in server-server API 6 years ago
Travis Ralston 2aa0e7b00f
Merge pull request #1483 from turt2live/travis/s2s/typing
Document how typing notifications work over federation
6 years ago
Travis Ralston d6c54b0278 unaccessible isn't a word 6 years ago
Travis Ralston ca87876f1b Clarify that the Authorization header is preferred 6 years ago
Travis Ralston 25d01aa431 Dedicate a section on how to use access tokens
Fixes https://github.com/matrix-org/matrix-doc/issues/1042.
6 years ago
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
6 years ago
Travis Ralston de961fb7d6 Improve wording on push gateways 6 years ago
Hubert Chathi a264120b38 put server discovery as its own section 6 years ago
Hubert Chathi fcca80dad8 various minor fixes
- formatting fixes
- add examples to homeserver/identity server discovery schema
- replace DNS name with hostname
6 years ago