Commit Graph

312 Commits (00de03bddb34d09caccbb268580d69473eadd799)

Author SHA1 Message Date
Travis Ralston 6c7eea555a
Merge pull request #1773 from matrix-org/travis/spec/rooms
Add a room version specification
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
Andrew Morgan b7b96833d0 Fix sticky headers so they don't hide behind header bar on desktop 6 years ago
Andrew Morgan f738f671d1 Sticky headers for proposals page 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 a451e007a4 Fix labels in proposals script 6 years ago
Richard van der Hoff fa0b4f9e13 Make the proposal labels match what happens in practice 6 years ago
Richard van der Hoff 926cfe4f75 Change the labels the proposals list looks for
This is slightly complicated by the `proposal-wip` label going away, and
becoming implicit
6 years ago
Erik Johnston 4271391214
Initial stab at documenting soft fail (#1641) 6 years ago
Matthew Hodgson 1fc6465168 remove archaic port 8448 from matrix.org URL for swagger-ui 6 years ago
Matthew Hodgson d789564db7 only apply list CSS overrides to section classes 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
Richard van der Hoff 8773b9319b
Merge pull request #1599 from matrix-org/benpa/spec-tables-prettier
Benpa/spec tables prettier
6 years ago
Travis Ralston 84a2b7f3c0
Merge pull request #1632 from uhoreg/fix_room_member_state_key
fix handling of multi-line state key descriptions
6 years ago
Ben Parsons c77b505441 capitali[zs]e path parameters 6 years ago
Ben Parsons 778fe2a47a css caption size tweak 6 years ago
Ben Parsons e8afab1fe5 many visual improvements 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 cee0a5ac7b
Merge pull request #1557 from turt2live/travis/general/r0-prep
Prepare the identity service and server-server APIs for r0
6 years ago
Hubert Chathi a1b1054aa1 fix handling of multi-line state key descriptions 6 years ago
Travis Ralston 2753d24302 Merge remote-tracking branch 'matrix-org/master' into travis/general/r0-prep 6 years ago
Travis Ralston 827033c128 Merge remote matrix-org/master 6 years ago
Richard van der Hoff f649d04ae1
Merge pull request #1626 from matrix-org/rav/encoding
Set the encoding to UTF-8 on all file I/O
6 years ago
Richard van der Hoff 20c9829f56
Merge pull request #1627 from matrix-org/travis/general/dont-build-proposals
Don't generate proposals.rst in Circle CI
6 years ago
Travis Ralston ecd3ce39e5 Don't generate proposals.rst in Circle CI 6 years ago
Richard van der Hoff 4e90b32348 Set the encoding to UTF-8 on all file I/O
Hopefully this will resolve issues with building the spec on systems where the
default encoding is somthing other than UTF-8.
6 years ago
Ben Parsons f1ae872857 light zebra striping for tables 6 years ago
Ben Parsons 9e1d6d7490 sanitise caption handling 6 years ago
Travis Ralston b2092922e8 Don't define a variable for the appservice major version 6 years ago
Travis Ralston a5c3924492 Merge remote matrix-org/master 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 2ab2f91088 Merge remote-tracking branch 'matrix-org/master' into travis/releases/push-gateway/r0.1.0 6 years ago
Ben Parsons 380a53ecba adjust caption -> smaller, left align 6 years ago
Ben Parsons 989b50a1a0 remove debug string 6 years ago
Ben Parsons 6e0fe70500 make spec tables prettier 6 years ago
Travis Ralston b402608b41 Don't reference the major version for the push gateway specification
If we ever have a v2 endpoint for the push gateway, we'd likely spec it alongside the v1 stuff, updating applicable references elsewhere.
6 years ago
Travis Ralston 4278a9a516 Merge remote-tracking branch 'matrix-org/master' into travis/c2s/fix-events 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 e9e93b0eec Move `invite_room_state` to the correct place in the client-server API
Fixes https://github.com/matrix-org/matrix-doc/issues/1350
6 years ago
Travis Ralston 0f28f83270 Fix client-server event schemas: remove `age`, dedupe fields
This commit adds support for event schema examples to have references to help reduce the chance of fields being forgotten. This also helps reduce duplication of fields, allowing for a more consistent spec that uses the same values everywhere.

This also removes both `unsigned` and `age` from the examples as per:
* https://github.com/matrix-org/matrix-doc/issues/1524
* https://github.com/matrix-org/matrix-doc/issues/630

Finally, this replaces "localhost" in the examples with an example domain. This is really just a nitpick thing on my part where seeing a "real world" domain is preferred. 

Fixes https://github.com/matrix-org/matrix-doc/issues/1524
Fixes https://github.com/matrix-org/matrix-doc/issues/630
Step towards https://github.com/matrix-org/matrix-doc/issues/1530
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 750d4f9fda Rename the presence EDU files to be accurate to their types; Misc cleanup of titles 6 years ago
Travis Ralston a53fa9300d Merge remote-tracking branch 'matrix-org/master' into travis/s2s/presence 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
Kitsune Ral 9be78f3aa7 Better support enums when they come among oneOf types 6 years ago
Kitsune Ral 88d97b06ae Support oneOf 6 years ago
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.
6 years ago
Travis Ralston 0f8954d839
Merge pull request #1463 from turt2live/travis/s2s/pdus-and-edus
Improve documentation around EDUs and PDUs
6 years ago