Commit Graph

218 Commits (13d3293378b3e49fdcf1637e471f91e3d2b485e1)

Author SHA1 Message Date
Kegsay 1229ad24dd Merge pull request #103 from matrix-org/spec-165-mxc-security
SPEC-165: Outline directory traversal attacks on MXC URIs
9 years ago
Erik Johnston 728b5a7951 Add very short summary 9 years ago
Erik Johnston 007bb1a69a Add extra new line 9 years ago
Erik Johnston d8bc0c9315 Add search module 9 years ago
Kegan Dougal 44b19a8b0e SPEC-165: Outline directory traversal attacks on MXC URIs 9 years ago
Kegan Dougal 3608f3a282 SPEC-144 : Use https examples not http. 9 years ago
Kegan Dougal 4170dbd5cf Review comments 9 years ago
Kegan Dougal 173d00cea0 Review comments 9 years ago
Daniel Wagner-Hall 2502ca7ac6 Merge branch 'master' into daniel/threepidinvites-2
Conflicts:
	specification/targets.yaml
9 years ago
Daniel Wagner-Hall 4a1fb74897 Review comments 9 years ago
Kegan Dougal 8f5c796884 Linkify 'pushers' 9 years ago
Kegan Dougal e378de8379 Shuffle history visibility module to be in the module format 9 years ago
Kegan Dougal f2a6950cc3 Minor tweaks; allow objects without props/parents if a title is set
This allows us to do things like {Tweaks} where Tweaks is defined somewhere
else.
9 years ago
Daniel Wagner-Hall dc3c02aff5 Review comments 9 years ago
Daniel Wagner-Hall 21a40b317d Merge branch 'master' into daniel/threepidinvites-2 9 years ago
Kegan Dougal 9c95ee5c1f Modify wording and formatting 9 years ago
Kegan Dougal 31ae4b3859 Swaggerify push notification API
Edit units.py to support nested JSON request keys
9 years ago
Kegan Dougal a9618a981b Swaggerify the /enabled endpoint 9 years ago
Kegan Dougal 56ce432399 Get profile tag keys displaying correctly. 9 years ago
Kegan Dougal db25276856 Start adding in push definitions
This is going to be painful to represent due to how the push API allows
mixed types (strings or objects) and mixed top-level keys ("content" rule kind
allowing "pattern" as a top-level key). We may wish to re-visit the design
of this API for v2.
9 years ago
Kegan Dougal c5edc60c4c Add push YAML for pushers endpoint.
Also display "required" text on required JSON body request params. Also
increase the size of the request param column to support longer param names
present in the pushers API.
9 years ago
Kegan Dougal d3ed517ebf Finish laying out rough sections 9 years ago
Kegan Dougal a7400508c6 Define module titles from the template 9 years ago
Kegan Dougal 319ba8f404 Combine push files into one
We can fork it out again if it makes sense, but certainly 2/3 of the files
were very small and it just adds more complexity when refactoring.
9 years ago
Kegan Dougal 91ca36509b Flesh out IM module 9 years ago
Kegan Dougal 8e5c832ff9 Flesh out more of the IM module 9 years ago
Kegan Dougal 47cf958b54 Merge branch 'master' into module-im 9 years ago
Kegsay 8c092e3d11 Merge pull request #74 from matrix-org/module-presence
Presence module
9 years ago
Kegan Dougal 417c5b53c4 Remove duplicate sentences from merge conflicts 9 years ago
Daniel Wagner-Hall b29fdebec2 Give example of verification dance 9 years ago
Kegan Dougal 458383585f Stub sections 9 years ago
Kegsay ead79614ff Merge pull request #78 from matrix-org/module-typing2
Typing module
9 years ago
Daniel Wagner-Hall 9d8dc7971d Review comments 9 years ago
Kegan Dougal 09ac367847 Merge branch 'master' into module-content-repo
Conflicts:
	templating/matrix_templates/units.py
9 years ago
Kegan Dougal 4dabcd112e Remove redundant info now we have the http api template. Minor tweaks to display of schema with no names but a type 9 years ago
Daniel Wagner-Hall af7d2ca9fc Update 3pid invite spec
This takes into account:
 1) That finding the existing servers of a room is hard
 2) Federation
9 years ago
Kegan Dougal 87b6dd845e Flesh out content repo; modify templating to support headers
Edit content-repo.yaml to include examples and headers.
Restructure content module to conform to the module template.
Adjust the HTTP API template to give 1 more char to the response
param to fit "Content-Disposition" correctly.
Edit the templating system to support displaying enums for
swagger APIs (before it was just JSON schema). Also add support
for introspecting headers from swagger. Finally, replace - with
_ when forming the {{ template_var }} else things whine.
9 years ago
Kegsay 8aad238cda Merge pull request #80 from matrix-org/module-receipts
Receipts module
9 years ago
Kegan Dougal da2be7eae4 Merge branch 'master' into module-voip
Conflicts:
	specification/modules/voip_events.rst
9 years ago
Kegan Dougal 1520f3647f Merge branch 'master' into module-typing2
Conflicts:
	specification/modules/typing_notifications.rst
9 years ago
Kegan Dougal cc6f256b24 Merge branch 'master' into module-presence
Conflicts:
	specification/modules/presence.rst
9 years ago
Kegan Dougal 6000887201 Merge branch 'master' into module-receipts
Conflicts:
	specification/modules/receipts.rst
9 years ago
Kegan Dougal c972dad8b3 Flesh out receipts module. Add receipts swagger
Add templating support for v2 apis.
9 years ago
Kegsay 4a7a682c0f Merge pull request #65 from matrix-org/spec-feature-profiles
Spec feature profiles
9 years ago
Kegan Dougal 365a9076b9 Add nested dict template support; Add x-pattern
For cases where event schema specify `patternProperties` it would be nice
to give that pattern a "human-readable" form rather than a raw regex. This
is now supported by specifying `x-pattern` in the value part of the specified
pattern e.g. `patternProperties:{ "^.*":{ x-pattern: "$THING", ... } }`

Templating had limited record type descriptions limited to value primitives
e.g. `{string: integer}`. It now supports inspecting the values recursively
if the value is `object`.

Updated `m.receipt` to take both these points into account to make it read
better. Tweak receipt module text.
9 years ago
Kegan Dougal 3b73b07bab Clarifications that room invites are m.call.invites not actual invites 9 years ago
Kegan Dougal e82661413e Add /turnServer endpoint 9 years ago
Kegan Dougal 6c3e70d272 Start fleshing out voip module 9 years ago
Kegan Dougal 097dc50180 Minor tweaks 9 years ago
Kegan Dougal a82f2ad4ac Flesh out typing module 9 years ago
Kegan Dougal 2b7e02c080 Add sections for typing. Add swagger, JSON schema and example m.typing event 9 years ago
Kegan Dougal 52f6496cf0 Merge branch 'master' into module-presence 9 years ago
Kegan Dougal 4e1e82f995 Fix paragraph CSS and adjust where paragraphs are in the RST
The CSS for `nature.css` was such that it was preventing `p` tags from
having sufficient vertical whitespace. This meant that you couldn't insert
any kind of spacing between lengthy sections (they just appeared as new lines).

This PR fixes this so you can actually have some whitespace between paragraphs.
As a result of this change, some parts of the spec appeared to have too much
whitespace. These were often sections which shouldn't have begun a new
paragraph anyway (e.g. a single sentence being an entire paragraph, `TODO`
blocks resulting in new paragraphs). This PR fixes the most offending areas
where we shouldn't have been inserting new paragraphs.
9 years ago
Kegan Dougal 069e4e39f4 Move presence specific sections from intro to presence module 9 years ago
Kegan Dougal 0a04672d76 Start converting the presence module. Add Rationale admonition. 9 years ago
Kegan Dougal cdf9f011e9 Add room history visibility as a module. 9 years ago
Kegan Dougal 5abea1f2bc Minor tweaks 9 years ago
Kegan Dougal 70518ae655 Clarify template suffixes 9 years ago
Kegan Dougal 643468e914 Mention swagger. Clarify how event type template vars are formed. 9 years ago
Kegan Dougal c2fc1a2fb1 Add basic module template.
This has the core sections for events/server/client/security.
9 years ago
Kegan Dougal c6375ed3d1 Flesh out feature profiles section
Add table detailing the profiles. Add anchors to link through to each module
following a well-defined format (rather than the name of the module section).
Allow UTF-8 in the spec.
9 years ago
Kegan Dougal 5115346297 Add instant_messaging module; modify batesian section rules
Previously, all `m.room.*` events were wodged into `{{room_events}}` which
isn't great when you want to pull specific ones out. Batesian had a 1:1
mapping of `render_foo()` to a section `{{foo}}`, and having to constantly
add functions for new types is a PITA. Batesian now supports returning a
`dict` instead of a section `string` where the keys are the `{{foo}}` and
the value is what will be inserted. Also add conflicting section key checks
to avoid multiple definitions of the same `{{foo}}`. Define dicts for
event schemata and swagger HTTP APIs.

Using this new feature, split out the instant messaging stuff from the events
section, and replace `{{room_events}}` with a list of specific events e.g.
`{{m_room_member_event}}`.
9 years ago
Kegan Dougal 5b134119bd Add presence module; fix relative title bug
If a relative title appeared after an HTTP API table, it
would insert the wrong level because it thought that part
of the table was a title.
9 years ago
Kegan Dougal 0c0ac3e814 Fix common event fields template to use subtitle char 9 years ago
Kegan Dougal e8cdfcbba2 Rename spec files to not have numbers everywhere; update targets.yaml 9 years ago
Kegan Dougal f71763b0d3 Implement relative title styles
Templates don't know at what level they will be inserted. Previously, we
hard-coded the title style which is not compatible with the build target
system. Define a set of styles which will be replaced by the gendoc script
when it encounters them:
 '<' : Make this title a sub-heading
 '/' : Make this title a heading at the same level
 '>' : Make this title a super-heading

The build target system is now basically complete and functioning.
9 years ago
Kegan Dougal 067363c629 Get the desired title levels right; print out the actual level used to stdout 9 years ago
Kegan Dougal f520ac9d82 Create a modules folder to group together similar parts of the spec 9 years ago