Update dependency jsonschema to v4.20.0 #217
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
==4.17.3
->==4.20.0
Release Notes
python-jsonschema/jsonschema (jsonschema)
v4.20.0
Compare Source
=======
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
Compare Source
=======
additionalItems
keyword into JSON Schema draft 2020-12, where it was replaced byitems
.v4.19.1
Compare Source
=======
hostname
format.This is the behavior specified by the relevant RFC (1123).
IDN hostname behavior was already correct.
v4.19.0
Compare Source
=======
Validator
protocol directly from the package root is deprecated.Import it from
jsonschema.protocols.Validator
instead.Such resources are assumed to be 2020-12 schemas.
This more closely matches the pre-referencing library behavior.
v4.18.6
Compare Source
=======
jsonschema
specific user agent when automatically retrieving remote references (which is deprecated).v4.18.5
Compare Source
=======
v4.18.4
Compare Source
=======
v4.18.3
Compare Source
=======
applicable_validators
in extended validators.Specifically, validators extending early drafts where siblings of
$ref
were ignored will properly ignore siblings in the extended validator.v4.18.2
Compare Source
=======
jsonschema.RefResolver
and pointer resolution.v4.18.1
Compare Source
=======
jsonschema.RefResolver
based resolution when used in combination with a custom validation dialect (viajsonschema.validators.create
).v4.18.0
Compare Source
=======
This release majorly rehauls the way in which JSON Schema reference resolution is configured.
It does so in a way that should be backwards compatible, preserving old behavior whilst emitting deprecation warnings.
jsonschema.RefResolver
is now deprecated in favor of the newreferencing library <https://github.com/python-jsonschema/referencing/>
_.referencing
will begin in beta, but already is more compliant than the existing$ref
support.This change is a culmination of a meaningful chunk of work to make
$ref
resolution more flexible and more correct.Backwards compatibility should be preserved for existing code which uses
RefResolver
, though doing so is again now deprecated, and all such use cases should be doable using the new APIs.Please file issues on the
referencing
tracker if there is functionality missing from it, or here on thejsonschema
issue tracker if you have issues with existing code not functioning the same, or with figuring out how to change it to usereferencing
.In particular, this referencing change includes a change concerning automatic retrieval of remote references (retrieving
http://foo/bar
automatically within a schema).This behavior has always been a potential security risk and counter to the recommendations of the JSON Schema specifications; it has survived this long essentially only for backwards compatibility reasons, and now explicitly produces warnings.
The
referencing
library itself will not automatically retrieve references if you interact directly with it, so the deprecated behavior is only triggered if you fully rely on the default$ref
resolution behavior and also include remote references in your schema, which will still be retrieved during the deprecation period (after which they will become an error).This should not be a "visible" change in the sense that
requires-python
has been updated, so users using 3.7 should still receivev4.17.3
when installing the library.unevaluatedItems
now properly does not consider items to be evaluated by anadditionalItems
schema ifitems
is missing from the schema, as the specification says in this case thatadditionalItems
must be completely ignored.date
format checker on Python 3.11 (when format assertion behavior is enabled), where it was too liberal (#1076).unevaluatedProperties
(#1075).Deprecations
jsonschema.RefResolver
-- see above for details on the replacementjsonschema.RefResolutionError
-- see above for details on the replacementjsonschema.ErrorTree
-- instead import it viajsonschema.exceptions.ErrorTree
jsonschema.FormatError
-- instead import it viajsonschema.exceptions.FormatError
Configuration
📅 Schedule: Branch creation - "before 4am on the first day of the month" in timezone Europe/Berlin, Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.