Commit Graph

202 Commits (7fa45fbf18ae8da282f4a5d821747e40607d65ea)

Author SHA1 Message Date
Richard van der Hoff 33191e5555 Better examples 8 years ago
Richard van der Hoff dfbe416490 Better types for additionalProps
recurse down the definitions for additionalProps, so that the types are better
8 years ago
Richard van der Hoff 57611ec523 More example formatting improvements
Generate more realistic example integers, and do some sanity checks on other
examples.
8 years ago
Richard van der Hoff b12b38d680 regrandfather json-formatted example params 8 years ago
Richard van der Hoff af84ca09a0 Better support for examples in responses
Walk the response schema to generate examples.
8 years ago
Richard van der Hoff d16385a74f More ordering fixes
We were breaking the ordering of objects defined by allOf reference
8 years ago
Richard van der Hoff c66a83c9ff Order props in the spec the same as the API
Use an OrderedDict when reading the api docs so that properties defined in the
API are rendered in the same order in the spec.
8 years ago
Richard van der Hoff 93894ebbbe Fix spurious "None" in non-room events
Events like m.direct and m.tag don't inherit from either Message event or State
event, and were getting a "None" where there should have been a type.
8 years ago
Richard van der Hoff 3dd0fcabb3 Render the body of response objects with inheritance 8 years ago
Richard van der Hoff 23d5073820 Mark required fields in response objects as such
Actually this means we can remove a bunch of code which special-cased this.
8 years ago
Richard van der Hoff 49cd65dd58 Add a license to the spec
We're licensing hte spec under ASLv2. Add the LICENSE file, and add the
short-form to as much of the source as is practical right now (adding it to
json source is a massive pita).
8 years ago
David Baker d66ea3c3ce Don't line wrap the API descriptions
They are in RST format which is whitespace sensitive and threfore can't be line wrapped without breaking the syntax.

There is more wrapping in other places but some of it is into tables where it does need to be fixed width in order for the RST table to parse correctly.
9 years ago
Richard van der Hoff c0e5f3c3ca matrix_templates/units.py: add some comments
... to help understand the slightly cryptic python incantation.
9 years ago
Richard van der Hoff 4875be05ce Give better error messages when parsing fails
An attempt to give slightly more helpful error messages when we have a problem
parsing an event schema file (in particular, which file contains the problem,
and which property within it).

A bit of light refactoring to make it tractable.
9 years ago
Matthew Hodgson 666229073e fix 3pid mapping wording 9 years ago
Richard van der Hoff 8f4d7c95df Include '..' lines in changelogs
Not all lines starting with '..' are comments, and even if they are comments,
they might as well go into the generated spec ReST.
9 years ago
Richard van der Hoff 167b84cc7f Another go at formatting examples
Let's try to avoid parsing the JSON, as it will reorder the examples.
9 years ago
Richard van der Hoff 45199d0edc Attempt to parse examples as json
... because some of them are, and we don't want to double-escape them.
9 years ago
Richard van der Hoff 6b23598a26 Improve API examples in the spec
* Show response codes even if we don't have examples for them
 * Walk the objects to build param examples if none are given at the top level
9 years ago
Richard van der Hoff 695a533e45 Don't sort the HTTP APIs
We can order them manually in the YAML, so why would we want a completely
different order in the spec?
9 years ago
Richard van der Hoff 01f8173c84 Put each bit of spec in its own directory
I want to change the URLs for the spec sections on the website from
<version>/<section>.html to <section>/<version>.html, to better reflect how we
do the versioning.

This puts each bit of spec in its own directory, updates the index to point to
the right place, and fixes continuserv to deal with directories as well as
files.

This will probably require fixes to the speculator too, but I'll have to come
back to that.
9 years ago
Richard van der Hoff a8eb72e7a1 Fix changelog generation
Gendoc was adding extra newlines to the changelog RST, which messed it all up.
9 years ago
Richard van der Hoff be09cd859d Fix errors when running build.py with default args
Fixes ugly errors when build.py was run (a) with no --substitutions at all, and
(b) without the expected substitutions
9 years ago
Richard van der Hoff 262c9ea113 Improve handling of $ref in swagger files
It turns out that swagger merges $refed attributes with those defined inline,
so do the same here.
9 years ago
Jimmy Cuadra 5b18db9096 Make list of APIs on the index a table. 9 years ago
David Baker 71cb646541 Change `id` in the push gateway poke to be `event_id` and spec that it's the Matrix event ID of the message. Correct the spec for badge count pushes which omit fields previously described as mandatory. Add more detail about when to use event_id to suppress dupes. Also add the push gateway doc so it's actually included in the spec. 9 years ago
Daniel Wagner-Hall e0c55eeccf Add initial identity server spec
More to come
9 years ago
Daniel Wagner-Hall f4f186baee Add _cs suffix to client-server http APIs
I'm about to add identity service APIs, so differentiating is good.
9 years ago
Daniel Wagner-Hall 902f25ef4a Include newline before table headings 9 years ago
Daniel Wagner-Hall 1e2b63763e /join and /room/:roomId/join aren't exact aliases
Separate them, clarify their differences.

Also, fix some links which weren't being properly populated.
9 years ago
Richard van der Hoff 7a244ff977 Merge branch 'master' into rav/body_params_in_tables
Conflicts:
	templating/matrix_templates/units.py
9 years ago
Richard van der Hoff b8669609a0 Merge pull request #255 from matrix-org/rav/refactor_schema_logic
Refactor a bunch of the logic in matrix_templates/units.py
9 years ago
Richard van der Hoff 18570126b5 Merge pull request #259 from matrix-org/rav/doc_speedups
Speed up gendoc.py by only running build.py once
9 years ago
Richard van der Hoff 87f2f9e878 Fix review comments 9 years ago
Richard van der Hoff 1f6c4d5bb2 Speed up gendoc.py by only running build.py once 9 years ago
Richard van der Hoff 4bdfd3d492 Fix 'required' annotations
We lost some required annotations. Add them back in.
9 years ago
Richard van der Hoff f438644ec3 Don't sort the properties in object schemas
It makes more sense for us to order the properties manually in the yaml file,
rather than forcing their alphabeticising.
9 years ago
Richard van der Hoff 93eb6fb352 another diff noise fix 9 years ago
Richard van der Hoff 71b6ea8578 Fix a couple of things which were giving noisy diffs 9 years ago
Richard van der Hoff c6f5ba09d4 Display POST body parameters as tables
Replace a whole bunch of special-casing for POST body parameters with the same
logic as is used for response objects: represent all but the top-level as
tables.
9 years ago
Richard van der Hoff 9a5673a1cc Reinstate event type info
The 'typeof' info on the events was perpetrated by a fearsome hack which I
broke. I don't want to fix it any better right now, so just make the hack work
and pull the rug over.
9 years ago
Richard van der Hoff d17c84b819 Fix a missed call to get_tables_for_schema 9 years ago
Richard van der Hoff 9f9b3a1fdd Refactor a bunch of the logic in matrix_templates/units.py
Move 'inherit_parents' calls up to before get_json_schema_object_fields so that
things can inherit their types via allOf declarations. Also make it possible to
inherit descriptions.

Remove redundant 'include_parents' parameter, which was never used.

Move 'resolve_references' call out of get_tables_for_schema (it was redundant
sometimes and not others, and now it is clearer who has responsibility for it)
9 years ago
Daniel Wagner-Hall 3e086909f1 Deprecated deprecated APIs 9 years ago
Daniel Wagner-Hall 1d2ed9e9d6 Changelogs: indent instead of blockquoting 9 years ago
Daniel Wagner-Hall dcd51c39b3 Indent state-key descriptions
Right now two spaces make a <dt> whereas four does the right thing.
9 years ago
Daniel Wagner-Hall b8ea5f7ffb Resolve references by default
This means I can re-use this function for the swagger-UI generation

I can't see why you would want un-resolved references as a consumer.
9 years ago
Daniel Wagner-Hall 39f43abbb7 Add per-API changelogs 9 years ago
Daniel Wagner-Hall f81b967e2d Make all the schema files yaml 9 years ago
Daniel Wagner-Hall 614ee9ea1b Move application service swagger out of c-s dir 9 years ago