matrix-doc/scripts/templating/matrix_templates
Travis Ralston 9aa47b86c4 Introduce a concept of 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 identifier grammar as it stands into the v1 room spec. This is in anticipation of the v2 room spec having a different set of grammar. Event schemas haven't been migrated here while the MSC to change them is in-flight.

There are a few open questions at this point:
* Do we move state resolution into here?
* Do we move the auth rules into here?

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.
2018-09-10 16:34:42 -06:00
..
templates Merge pull request #1599 from matrix-org/benpa/spec-tables-prettier 2018-08-31 21:40:55 +01:00
__init__.py Convert build scripts to python 3 2018-07-06 15:21:07 -06:00
sections.py Introduce a concept of a room version specification 2018-09-10 16:34:42 -06:00
units.py Introduce a concept of a room version specification 2018-09-10 16:34:42 -06:00