Improve best_match (and thereby error messages from jsonschema.validate) in cases where there are multiple sibling errors from applying anyOf / allOf -- i.e. when multiple elements of a JSON array have errors, we now do prefer showing errors from earlier elements rather than simply showing an error for the full array (#1250).
(Micro-)optimize equality checks when comparing for JSON Schema equality by first checking for object identity, as == would.
Properly consider items (and properties) to be evaluated by unevaluatedItems (resp. unevaluatedProperties) when behind a $dynamicRef as specified by the 2020 and 2019 specifications.
jsonschema.exceptions.ErrorTree.__setitem__ is now deprecated. More broadly, in general users of jsonschema should never be mutating objects owned by the library.
Improve best_match (and thereby error messages from jsonschema.validate) in cases where there are multiple sibling errors from applying anyOf / allOf -- i.e. when multiple elements of a JSON array have errors, we now do prefer showing errors from earlier elements rather than simply showing an error for the full array (#1250).
(Micro-)optimize equality checks when comparing for JSON Schema equality by first checking for object identity, as == would.
v4.21.1
Slightly speed up the contains keyword by removing some unnecessary validator (re-)creation.
v4.21.0
Fix the behavior of enum in the presence of 0 or 1 to properly consider True and False unequal (#1208).
Special case the error message for {min,max}{Items,Length,Properties} when they're checking for emptiness rather than true length.
v4.20.0
Properly consider items (and properties) to be evaluated by unevaluatedItems (resp. unevaluatedProperties) when behind a $dynamicRef as specified by the 2020 and 2019 specifications.
jsonschema.exceptions.ErrorTree.__setitem__ is now deprecated.
More broadly, in general users of jsonschema should never be mutating objects owned by the library.
v4.19.2
Fix the error message for additional items when used with heterogeneous arrays.
Don't leak the additionalItems keyword into JSON Schema draft 2020-12, where it was replaced by items.
v4.19.1
Single label hostnames are now properly considered valid according to the hostname format.
This is the behavior specified by the relevant RFC (1123).
IDN hostname behavior was already correct.
v4.19.0
Importing the Validator protocol directly from the package root is deprecated.
Import it from jsonschema.protocols.Validator instead.
Automatic retrieval of remote references (which is still deprecated) now properly succeeds even if the retrieved resource does not declare which version of JSON Schema it uses.
Such resources are assumed to be 2020-12 schemas.
This more closely matches the pre-referencing library behavior.
v4.18.6
Set a jsonschema specific user agent when automatically retrieving remote references (which is deprecated).
... (truncated)
Commits
9882dbe Add / ignore the new specification test suite property.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps jsonschema from 3.2.0 to 4.22.0.
Release notes
Sourced from jsonschema's releases.
... (truncated)
Changelog
Sourced from jsonschema's changelog.
... (truncated)
Commits
9882dbe
Add / ignore the new specification test suite property.ebc90bb
Merge commit '8fcfc3a674a7188a4fcc822b7a91efb3e0422a20'8fcfc3a
Squashed 'json/' changes from b41167c74..54f3784a830b7537
Pin pyenchant to pre from below until pyenchant/pyenchant#302 is released.c3729db
Enable doctests for the rest of the referencing page.70a994c
Remove a now-unneeded noqa since apparently this is fixed in new ruff.e6d0ef1
Fix a minor typo in the referencing example docs.bceaf41
Another placeholder benchmark for future optimization.b20234e
Consider errors from earlier indices (in instances) to be better matches41b49c6
Minor improvement to test failure message when a best match test fails.Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show