json-schema-spec icon indicating copy to clipboard operation
json-schema-spec copied to clipboard

CI for meta-schemas

Open handrews opened this issue 6 years ago • 1 comments

Our quality levels on the meta-schemas have been unacceptable (and I'm the one who has made most of the meta-schema changes, so I'm primarily criticizing myself here, although the problem extends back before my time on the project).

Bugs found (by various people) since I've been involved:

draft-03:

  • missing comma in hyper-schema.json. it wouldn't even parse- apparently no one ever used it

draft-04:

  • format entirely missing
  • readOnly entirely missing
  • the whole confusion over what "format": "uri" meant, causing it to be used incorrectly
  • still using "format": "regex" despite it having been removed from draft-04 (we decided not to fix this, it applies to draft-06 as well)

draft-06:

  • readOnly's default set to the string "false" instead of boolean false
  • propertyNames schema wrong (should be object of schemas, not a single schema)
  • contains entirely missing

draft-07:

  • propertyNames schema wrong

We should set up a test suite for the meta-schemas and require that meta-schema changes, including test suite changes, accompany spec changes. This should be done before shipping draft-08. The draft-08 keyword unevaluatedProperties will make it much easier to check for misspelled properties.

handrews avatar Jun 21 '18 22:06 handrews

Presumably this is also a duplicate of https://github.com/json-schema-org/JSON-Schema-Test-Suite/issues/244 (for which there are a small number of existing ones in my implementation) but I haven't gotten a chance to actually sit down and move them.

Julian avatar Feb 24 '19 02:02 Julian