All Versions
Latest Version
Avg Release Cycle
35 days
Latest Release

Changelog History
Page 1

  • v4.17.1 Changes

    • The error message when using unevaluatedProperties with a non-trivial schema value (i.e. something other than false) has been improved (#996).
  • v4.17.0 Changes

    • The check_schema method on jsonschema.protocols.Validator instances now enables format validation by default when run. This can catch some additional invalid schemas (e.g. containing invalid regular expressions) where the issue is indeed uncovered by validating against the metaschema with format validation enabled as an assertion.
    • The jsonschema CLI (along with jsonschema.cli the module) are now deprecated. Use check-jsonschema instead, which can be installed via pip install check-jsonschema and found here <>_.
  • v4.16.1 Changes

    • ๐Ÿ‘‰ Make ErrorTree have a more grammatically correct repr.
  • v4.16.0 Changes

    • ๐Ÿ‘Œ Improve the base URI behavior when resolving a $ref to a resolution URI which is different from the resolved schema's declared $id.
    • Accessing jsonschema.draftN_format_checker is deprecated. Instead, if you want access to the format checker itself, it is exposed as jsonschema.validators.DraftNValidator.FORMAT_CHECKER on any jsonschema.protocols.Validator.
  • v4.15.0 Changes

    • ๐Ÿ“š A specific API Reference page is now present in the documentation.
    • ๐Ÿ›  $ref on earlier drafts (specifically draft 7 and 6) has been "fixed" to follow the specified behavior when present alongside a sibling $id. Specifically the ID is now properly ignored, and references are resolved against whatever resolution scope was previously relevant.
  • v4.14.0 Changes

    • ๐Ÿ—„ FormatChecker.cls_checks is deprecated. Use FormatChecker.checks on an instance of FormatChecker instead.
    • ๐Ÿ›  unevaluatedItems has been fixed for draft 2019. It's nonetheless discouraged to use draft 2019 for any schemas, new or old.
    • ๐Ÿ›  Fix a number of minor annotation issues in protocols.Validator
  • v4.13.0 Changes

    • โž• Add support for creating validator classes whose metaschema uses a different dialect than its schemas. In other words, they may use draft2020-12 to define which schemas are valid, but the schemas themselves use draft7 (or a custom dialect, etc.) to define which instances are valid. Doing this is likely not something most users, even metaschema authors, may need, but occasionally will be useful for advanced use cases.
  • v4.12.1 Changes

    • ๐Ÿ›  Fix some stray comments in the README.
  • v4.12.0 Changes

    • Warn at runtime when subclassing validator classes. Doing so was not intended to be public API, though it seems some downstream libraries do so. A future version will make this an error, as it is brittle and better served by composing validator objects instead. Feel free to reach out if there are any cases where changing existing code seems difficult and I can try to provide guidance.
  • v4.11.0 Changes

    • ๐Ÿ‘‰ Make the rendered README in PyPI simpler and fancier. Thanks Hynek (#983)!