Commit Graph

392 Commits (bcead3b0a5beddd45c652d18142438bd1d1fa216)

Author SHA1 Message Date
Erik Johnston 38fcc563da Spell out full title 9 years ago
Erik Johnston 0efa3fd981 Add module 9 years ago
Kegan Dougal 6a0595bc46 Add in size limits as per SPEC-222 9 years ago
Erik Johnston d8bc0c9315 Add search module 9 years ago
Kegan Dougal f0d8052951 SPEC-205: Warn about password strengths in m.login.password section 9 years ago
Kegan Dougal 44b19a8b0e SPEC-165: Outline directory traversal attacks on MXC URIs 9 years ago
Kegan Dougal 45b1d08c7e SPEC-207: Add a warning about needing AS tokens to be unique and why 9 years ago
Kegan Dougal cd34d4e19b SPEC-182: Make it clearer how ASes are supposed to create users by linkifying the right text. 9 years ago
Kegan Dougal 3608f3a282 SPEC-144 : Use https examples not http. 9 years ago
Kegan Dougal 34bd8edec5 Move related auth sections together 9 years ago
Kegan Dougal 6f6861a11d Swaggerify the createRoom API 9 years ago
Kegan Dougal 07d7a3fa3a Shuffle pagination section around 9 years ago
Kegan Dougal 7bdb71b1c9 Tweak the syncing section
Bring together disparate sections to make it more cohesive.
9 years ago
Kegan Dougal e716e81963 Add `dir` parameter to pagination. Remove path references
This section needs a lot of work to not lie.
9 years ago
Kegan Dougal e561a663d3 Tweaks to intro, start using swagger APIs in the CS API section. 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 656bee78c4 Merge branch 'master' into module-im 9 years ago
Matthew Hodgson 7ae2573113 fix barefaced lie regarding the passivity of ASes 9 years ago
Matthew Hodgson 39faccb00d CS API is not just v1 surely 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
Erik Johnston 3b4c3522e6 Merge branch 'master' of github.com:matrix-org/matrix-doc into erikj/disable_federation 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
Kegsay 68df99409a Merge pull request #83 from matrix-org/module-content-repo
Content Repo Module
9 years ago
Erik Johnston ccdd376f30 Merge pull request #63 from matrix-org/erikj/room_create_preset
Update the room creation API spec to include new keys: 'preset' and 'initial_state'
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
Erik Johnston 912a8ca760 Be more explicit about keys that are clobbered 9 years ago
Erik Johnston dbc72c43ac s/private_chat_shared_power/trusted_private_chat/ 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 d092b22848 Rename to 'Managing history visibility' 9 years ago
Kegan Dougal 6c3e70d272 Start fleshing out voip module 9 years ago
Kegan Dougal 91b6347f74 Explain what 'embedded' clients are 9 years ago
Kegan Dougal be9402b66f Move feature profiles section to modules as a sub-section 9 years ago
Kegan Dougal 0320e8cef3 Table tweaks from PR 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
Erik Johnston 73b4090f52 Add private_chat_shared_power 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 82c27884ba Make E2E optional 9 years ago
Erik Johnston 83b9497664 Add context and example 9 years ago
Kegsay c96f02c2b0 Merge pull request #69 from matrix-org/erikj/login_token
m.login.token
9 years ago
Erik Johnston 6e6bc8a5a9 Mandate macaroon 9 years ago
Erik Johnston ce53a17180 Add txn_id rationale 9 years ago
Erik Johnston 4776e0c04c Add creation_content key 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 db8f3c0d59 Desktop clients should have a GUI 9 years ago
Erik Johnston 97154cc6b2 s/nonce/txn_id/ 9 years ago
Erik Johnston 4c9f524cab Neaten things up 9 years ago
Erik Johnston 317c2f20d3 Draft login token spec 9 years ago
Kegan Dougal 510553ee00 Remove smurf suffixes. Add anchor for feature profiles. 9 years ago
Kegan Dougal 9fac152d32 Explain what the clients are and the column reference 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
Erik Johnston 18dc7784df Mention precedence 9 years ago
Erik Johnston 078dd0165f Update the room creation API spec to include new keys: 'preset' and 'initial_state' 9 years ago
Kegan Dougal 1da64db302 Use relative depths for groups instead of absolute ones
This means the group can be agnostic to how deeply nested it is,
improving reusability of groups.
9 years ago
Kegan Dougal 29bae15790 Fix typo 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 b49cb57fe5 Move events sections to CS API 9 years ago
Kegan Dougal 16693a644a Various review fixes 9 years ago
Kegan Dougal b0eb985523 Merge branch 'master' into spec-restructure-modules 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 8590cc84b5 Process and extract targets in gendoc.py 9 years ago
Kegan Dougal 568982ee2e Represent nested deps in targets.yaml along with title styles
This will allow us to programatically position .rst snippets *anywhere*
which will for once and for all remove the horrid title level mismatch bugs.

We require this in order to allow people to re-shuffle the spec without
having to adjust the spec itself (e.g. 2 targets with different levels of
nesting).
9 years ago
Kegan Dougal 703f913a47 Add a 'targets.yaml' files in /specification
We're well beyond the point now where a simple `cat` of .rst files to "build"
the spec is practical. We may want to slice and dice the spec in different
ways to address various cross-cutting concerns. To this end, there is now a
'targets' file which contains the "build targets" for the spec, which contains
the sorting order for the .rst files. For now, we just have a single
target: 'main'.
9 years ago
Kegan Dougal f520ac9d82 Create a modules folder to group together similar parts of the spec 9 years ago
Kegan Dougal c77ef1a2cc Add stub files feature_profiles and modules 9 years ago
Kegan Dougal f2c952ec58 Reshuffle spec into sections roughly right as per PR #52 9 years ago
Mark Haines f33c0846c3 Merge remote-tracking branch 'origin/master' into markjh/document_v1_rooms_api 9 years ago
Kegan Dougal 1f6b12b3e8 Modify and enforce the file format/structure used
Convert the file format to be of the form ##_##_something.rst where the
first ## is the top-level section number and the second ## is the
second-level section number, e.g. 07_01_push_cs_api.rst means
Section 7.1 - This is now enforced in gendoc.py along with the title line
style that should be used (= for top-level, - for 2nd level) which will
give helpful suggestions if you trip up. This feels much more intuitive
now looking in /specification
9 years ago
Kegan Dougal 9ed39665c8 PR feedback 9 years ago
Kegan Dougal 8e7b33ac99 Fix more typos/spelling errors 9 years ago
Kegan Dougal 3f9d183c2a More typo/layout fixes
Split out identity servers to a separate file
9 years ago
Kegan Dougal 620d3dcb26 Test commit 9 years ago
Kegan Dougal faa95e172f More formatting fixes; typos; etc 9 years ago
Kegan Dougal af32ec194a Move VoIP events to 22_voip_events
20_events is a huge as it is, this makes it easier to find what section
you actually want when editing.
9 years ago
Kegan Dougal 5b59c67510 Minor formatting fixes. Fix state event templating. 9 years ago
Mark Haines 7eb8b4fde2 Add new-style docs for the APIs for getting events for a room 9 years ago
Daniel Wagner-Hall 59a4e84361 s/registration/login/ 9 years ago
Daniel Wagner-Hall b8e2ac5c1b Swaggerify /login 9 years ago
Kegsay e788f565f8 Merge pull request #36 from matrix-org/daniel/threepidinvites
Swagger /room/{roomId}/invite
9 years ago
Kegsay 3011823c51 Merge pull request #27 from matrix-org/receipts
Document receipts
9 years ago
Daniel Wagner-Hall 2797fac3aa Swagger /room/{roomId}/invite
This is a transcription of the current spec, with nothing new or
controversial in it.
9 years ago
Daniel Wagner-Hall 04b2b2588f Fix up formatting and typos 9 years ago
Daniel Wagner-Hall d53943c8c2 Spec /room/{roomId}/join
This is just replacing the existing spec with a swagger version.

Subsequent pull requests will add 3pid join to this, as well as specing
the invite, leave, ban, and kick endpoints.
9 years ago
Erik Johnston 80bb51d9bb Make it clearer 9 years ago
Erik Johnston 4b24b887c7 Document m.room.history_visibility 9 years ago
Erik Johnston 83dfc2bf61 Fix some mistakes/typos 9 years ago
Erik Johnston 0dc22e7217 Document receipts 9 years ago
Paul "LeoNerd" Evans 49c52a96a7 Rename 'perspective server' to 'notary server' as that's what the Perspectives Project calls them too 9 years ago
Kegsay 880bf20403 Merge pull request #21 from matrix-org/paul/fixes
Three small fixes
9 years ago
Mark Haines 7d805f105e Mention that Olm uses AES in CBC mode 9 years ago
Mark Haines 88176ef148 Add notes on algorithm naming. Fix some typos 9 years ago
Paul "LeoNerd" Evans c6f2f711de Mention AAAA as well as A records; remark on default port 8448 for no-SRV fallback 9 years ago
Mark Haines d06580a481 Spelling 9 years ago
Mark Haines e1f201f9e6 Add description of the olm type and body JSON keys 9 years ago
Mark Haines c83e8480e8 Fix JSON syntax 9 years ago
Mark Haines 6597aaa448 Start describing the plaintext payload format for encrypted messages, add the exact URLs used for key queries from clients and for key queries for federation 9 years ago
Mark Haines 41d204e72c Name the key 'ciphertext' rather than 'ciphertexts' 9 years ago
Mark Haines 6f69707c71 Update e2e spec: Group ciphertext by device key rather than device id, add return to docs for /keys/upload, Use "m.room.encrypted" for now, rather than trying to add an encrypted content to arbitrary event types 9 years ago
Mark Haines 42ad1f8612 Add a link to signing JSON section of the spec. Fixup the markup a bit 9 years ago
Mark Haines 01927cee9b Rename "take" to "claim". Hyphenate "one-time". 9 years ago
Mark Haines 36e035c79e Add some specification for end-to-end 9 years ago
Matthew Hodgson f08588bf7e typo 9 years ago
Paul "LeoNerd" Evans 5f391b5617 Also document the directory server federation API 9 years ago
Paul "LeoNerd" Evans fc1e01f373 Add a small note about the meaning of the 'target' field 9 years ago
Paul "LeoNerd" Evans af1616ba9a Merge branch 'master' into paul/fixes 9 years ago
Paul "LeoNerd" Evans 28894ac1b7 Bugfix to embedded sign_json() python code 10 years ago
Paul "LeoNerd" Evans 9b046cbc04 Tiny fix to embedded YAML fragment 10 years ago
Kegan Dougal e572cc662a Restructure the first few sections.
Remove unecessary sections; put presnece/profile sections on the right level.
Move Living Standard warning to the top of the Introduction section.
10 years ago
Kegan Dougal 71e200a063 Remove version section. 10 years ago
Kegan Dougal e10859a887 Replace presence API with new template. 10 years ago
Kegan Dougal ec631c60d4 Add link to github commit for the spec as per request. 10 years ago
Kegan Dougal bb9537b824 Add a CHANGELOG. Modify table CSS.
Hook up templating system to read the CHANGELOG for version and changelog info.
Modified nature.css to make it clearer on table headings/sub-headings. Use the
full _matrix/client path on title links to make it clear it is for v1.
10 years ago
Kegan Dougal f134728268 Link to msgtypes from the description of m.room.message. 10 years ago
Kegan Dougal 51df65bb49 Remove old power level references. Link to m.room.power_levels. 10 years ago
Kegan Dougal ac7ccfa622 Add {{presence_events}}. Factor out common code in MatrixSections. 10 years ago
Kegan Dougal 6f330bd879 Gut the old msgtypes section and replace with {{msgtype_events}} 10 years ago
Kegan Dougal f5059057b3 Update AS API docs (wording/layout tweaks, rationale). 10 years ago
Kegan Dougal 9d532f30e8 Add {{voip_events}}. Add more info on sections when asked via build.py -s 10 years ago
Kegan Dougal 89083b3a86 Add {{spec_version}}. Update build.py module docs. 10 years ago
Kegan Dougal 96671ce833 Use the templating system to set {{git_version}}. Restructure sections code.
Restructured the sections code to be slightly more encapsulated than before.
This will be expanded to more clearly separate the templating system from
the specific implementation of the spec templates.
10 years ago
Kegan Dougal ed4ce6950c Template up common event fields from the 'core' json schema file. 10 years ago
Kegan Dougal 02c44a889e Remove stuff from 20_events.rst and replace with {{room_events}}. Update gendoc to call build.py for template vars. 10 years ago
Matthew Hodgson e729a9e425 Merge pull request #16 from matrix-org/key_v2_fixes
Add minimum_valid_until_ts to key/v2 API
10 years ago
Matthew Hodgson fa1ec93c78 typo 10 years ago
Matthew Hodgson 39b3de1df3 remove AS register/unregister APIs from the spec for now, but keep the useful info intact 10 years ago
Erik Johnston 580b4a1787 Merge pull request #15 from matrix-org/csauth
Document CS API V2 auth changes and new APIs.
10 years ago
Mark Haines 9752dc399e Update 30_server_server_api.rst
Missing '$'
10 years ago
Mark Haines 9bfbbce0f4 Update 30_server_server_api.rst
Use a query parameter for minimum_valid_until_ts for the GET version of the query api.
10 years ago
Mark Haines cdcaf69fb5 Update 30_server_server_api.rst 10 years ago
David Baker deb17914ca Link syntax 10 years ago
David Baker 199bb87ffa Add link to v1 docs. 10 years ago
David Baker 3343b7f84d Clarify n-factor auth and add the diagram back in as an example 10 years ago
David Baker e7d334c5cd Kill all camels 10 years ago
David Baker 233522b612 Fix typo 10 years ago
David Baker a52819ba69 Clarify dummy auth 10 years ago
David Baker fa8d8a9f95 Remove spurious array in error example 10 years ago
David Baker cfbc58c4fb Forgot bind_email param on register. 10 years ago
Matthew Hodgson 52692931d7 fix typos 10 years ago
David Baker e52146e47f V2PREFIX 10 years ago
David Baker dd12d901af Oops: missed recaptcha. Also make list in the same order as the details. 10 years ago
David Baker b71aaddad0 Try & fix RST errors 10 years ago
David Baker c583bf9570 wrong title level 10 years ago
David Baker 8495d9451e Document CS API V2 auth changes and new APIs. 10 years ago
Matthew Hodgson 04086975bd fix header depth 10 years ago
Matthew Hodgson 4255058680 typo 10 years ago
Matthew Hodgson dacf93b405 oooooops, apparently I forgot to 'git add' these when I refactored the spec last month :-/ 10 years ago
Mark Haines 6f269890be Add a brief reference to the perspectives project and mention what should happen if a server goes offline 10 years ago
Mark Haines 0db3182159 Describe what the expired_ts is 10 years ago
Mark Haines 4422e9ca2b Add a short summary of how the v2 key api is supposed to be used 10 years ago
Mark Haines ed21f50cc3 Add version 2 of the server key distribution API 10 years ago
David Baker 3f5a94484f Update spec where I changed it to allow omiting value for highlight 10 years ago
Matthew Hodgson 0f1514febb standardise on <foo> rather than :foo 10 years ago