UNCLASSIFIED - NO CUI

Skip to content

Update dependency jsonschema to v4

renovate requested to merge renovate/jsonschema-4.x into development

This MR contains the following updates:

Package Type Update Change
jsonschema (changelog) ironbank-pypi major 3.2.0 -> 4.15.0

Release Notes

python-jsonschema/jsonschema

v4.15.0

Compare Source

=======

  • 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

Compare Source

=======

  • 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

Compare Source

=======

  • 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

Compare Source

=======

  • Fix some stray comments in the README.

v4.12.0

Compare Source

=======

  • 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

Compare Source

=======

  • Make the rendered README in PyPI simpler and fancier. Thanks Hynek (#​983)!

v4.10.3

Compare Source

=======

  • jsonschema.validators.validator_for now properly uses the explicitly provided default validator even if the $schema URI is not found.

v4.10.2

Compare Source

=======

  • Fix a second place where subclasses may have added attrs attributes (#​982).

v4.10.1

Compare Source

=======

  • Fix Validator.evolve (and APIs like iter_errors which call it) for cases where the validator class has been subclassed. Doing so wasn't intended to be public API, but given it didn't warn or raise an error it's of course understandable. The next release however will make it warn (and a future one will make it error). If you need help migrating usage of inheriting from a validator class feel free to open a discussion and I'll try to give some guidance (#​982).

v4.10.0

Compare Source

=======

  • Add support for referencing schemas with $ref across different versions of the specification than the referrer's

v4.9.1

Compare Source

======

  • Update some documentation examples to use newer validator releases in their sample code.

v4.9.0

Compare Source

======

  • Fix relative $ref resolution when the base URI is a URN or other scheme (#​544).
  • pkgutil.resolve_name is now used to retrieve validators provided on the command line. This function is only available on 3.9+, so 3.7 and 3.8 (which are still supported) now rely on the pkgutil_resolve_name <https://pypi.org/project/pkgutil_resolve_name/>_ backport package. Note however that the CLI itself is due to be deprecated shortly in favor of check-jsonschema <https://github.com/python-jsonschema/check-jsonschema>_.

v4.8.0

Compare Source

======

  • best_match no longer traverses into anyOf and oneOf when all of the errors within them seem equally applicable. This should lead to clearer error messages in some cases where no branches were matched.

v4.7.2

Compare Source

======

  • Also have best_match handle cases where the type validator is an array.

v4.7.1

Compare Source

======

  • Minor tweak of the PyPI hyperlink names

v4.7.0

Compare Source

======

  • Enhance best_match to prefer errors from branches of the schema which match the instance's type (#​728)

v4.6.2

Compare Source

======

  • Fix a number of minor typos in docstrings, mostly private ones (#​969)

v4.6.1

Compare Source

======

  • Gut the (incomplete) implementation of recursiveRef on draft 2019. It needs completing, but for now can lead to recursion errors (e.g. #​847).

v4.6.0

Compare Source

======

  • Fix unevaluatedProperties and unevaluatedItems for types they should ignore (#​949)
  • jsonschema now uses hatch <https://hatch.pypa.io/>_ for its build process. This should be completely transparent to end-users (and only matters to contributors).

v4.5.1

Compare Source

======

  • Revert changes to $dynamicRef which caused a performance regression in v4.5.0

v4.5.0

Compare Source

======

  • Validator classes for each version now maintain references to the correct corresponding format checker (#​905)
  • Development has moved to a GitHub organization <https://github.com/python-jsonschema/>_. No functional behavior changes are expected from the change.

v4.4.0

Compare Source

======

  • Add mypy support (#​892)
  • Add support for Python 3.11

v4.3.3

Compare Source

======

  • Properly report deprecation warnings at the right stack level (#​899)

v4.3.2

Compare Source

======

  • Additional performance improvements for resolving refs (#​896)

v4.3.1

Compare Source

======

  • Resolving refs has had performance improvements (#​893)

v4.3.0

Compare Source

======

  • Fix undesired fallback to brute force container uniqueness check on certain input types (#​893)
  • Implement a PEP544 Protocol for validator classes (#​890)

v4.2.1

Compare Source

======

  • Pin importlib.resources from below (#​877)

v4.2.0

Compare Source

======

  • Use importlib.resources to load schemas (#​873)
  • Ensure all elements of arrays are verified for uniqueness by uniqueItems (#​866)

v4.1.2

Compare Source

======

  • Fix dependentSchemas to properly consider non-object instances to be valid (#​850)

v4.1.1

Compare Source

======

  • Fix prefixItems not indicating which item was invalid within the instance path (#​862)

v4.1.0

Compare Source

======

  • Add Python 3.10 to the list of supported Python versions

v4.0.1

Compare Source

======

  • Fix the declaration of minimum supported Python version (#​846)

v4.0.0

Compare Source

======

  • Partial support for Draft 2020-12 (as well as 2019-09). Thanks to Thomas Schmidt and Harald Nezbeda.
  • False and 0 are now properly considered non-equal even recursively within a container (#​686). As part of this change, uniqueItems validation may be slower in some cases. Please feel free to report any significant performance regressions, though in some cases they may be difficult to address given the specification requirement.
  • The CLI has been improved, and in particular now supports a --output option (with plain (default) or pretty arguments) to control the output format. Future work may add additional machine-parsable output formats.
  • Code surrounding DEFAULT_TYPES and the legacy mechanism for specifying types to validators have been removed, as per the deprecation policy. Validators should use the TypeChecker object to customize the set of Python types corresponding to JSON Schema types.
  • Validation errors now have a json_path attribute, describing their location in JSON path format
  • Support for the IP address and domain name formats has been improved
  • Support for Python 2 and 3.6 has been dropped, with python_requires properly set.
  • multipleOf could overflow when given sufficiently large numbers. Now, when an overflow occurs, jsonschema will fall back to using fraction division (#​746).
  • jsonschema.__version__, jsonschema.validators.validators, jsonschema.validators.meta_schemas and jsonschema.RefResolver.in_scope have been deprecated, as has passing a second-argument schema to Validator.iter_errors and Validator.is_valid.

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this MR and you won't be reminded about this update again.


  • If you want to rebase/retry this MR, click this checkbox.

This MR has been generated by Renovate Bot.

Edited by renovate

Merge request reports