Releases: Stranger6667/jsonschema
Releases · Stranger6667/jsonschema
[Rust] Release 0.22.0
Changed
- Extend email validation. #471
- BREAKING: Custom retrievers now receive
&Uri<&str>instead of&UriRef<&str> - Bump
once_cellto1.20. - Bump
regexto1.11.
Fixed
timeformat validation (leap seconds and second fractions).durationformat validation.- Panic on root
$idwithout base. #547 hostnameformat validation (double dot).idn-hostnameformat validation. #101
Performance
- Faster building of a validator.
hostname,date,time,date-time, anddurationformats validation.- Cache regular expressions for
pattern. #417
[Python] Release 0.22.1
Fixed
- Removed
dbg!macro.
[Python] Release 0.22.0
Changed
- Extend email validation. #471
Fixed
timeformat validation (leap seconds and second fractions).durationformat validation.- Panic on the root
$idwithout a base. #547 hostnameformat validation (double dot).idn-hostnameformat validation. #101
Performance
- Faster building of a validator.
hostname,date,time,date-time, anddurationformats validation.- Cache regular expressions for
pattern. #417
[Python] Release 0.21.0
Added
$anchorsupport.$recursiveRef&$recursiveAnchorsupport in Draft 2019-09.$dynamicRef&$dynamicAnchorsupport in Draft 2020-12.
Changed
- BREAKING: Treat
$refas URI, not URL and additionally normalize them. #454 - BREAKING: Resolve all non-recursive references eagerly.
- BREAKING: Disallow use of fragments in
$id. #264
Fixed
- Infinite recursion in
unevaluatedProperties. #420 - Cross-draft validation from newer to older ones.
- Changing base URI in folder.
- Location-independent identifier in remote resource.
- Missing some format validation for Draft 2020-12.
- Incomplete
iri&iri-referencevalidation.
Performance
- Faster validation for
uri,iri,uri-reference, andiri-referenceformats.
[Rust] Release 0.21.0
Important: This release brings a complete rework of reference resolving which deprecates some older APIs.
While backward compatibility is maintained for now, users are encouraged to update their code. See the Migration Guide for details on transitioning to the new API.
Added
$anchorsupport.$recursiveRef&$recursiveAnchorsupport in Draft 2019-09.$dynamicRef&$dynamicAnchorsupport in Draft 2020-12.
Changed
- BREAKING: Treat
$refas URI, not URL and additionally normalize them. #454 - BREAKING: Resolve all non-recursive references eagerly.
- BREAKING: Disallow use of fragments in
$id. #264
Deprecated
SchemaResolvertrait andSchemaResolverErrorin favor of a simplerRetrievethat works withBox<dyn std::error::Error>.
In turn, it also deprecatesValidationOptions::with_resolverin favor ofValidationOptions::with_retrieverValidationOptions::with_documentin favor ofValidationOptions::with_resource.
Fixed
- Infinite recursion in
unevaluatedProperties. #420 - Cross-draft validation from newer to older ones.
- Changing base URI in folder.
- Location-independent identifier in remote resource.
- Missing some format validation for Draft 2020-12.
- Incomplete
iri&iri-referencevalidation.
Performance
- Faster validation for
uri,iri,uri-reference, andiri-referenceformats.
[Rust] Release 0.20.0
Important: This release includes several deprecations and renames. While backward compatibility is maintained for now, users are encouraged to update their code. See the Migration Guide for details on transitioning to the new API.
Added
- New draft-specific modules for easier version-targeted validation:
jsonschema::draft4jsonschema::draft6jsonschema::draft7jsonschema::draft201909jsonschema::draft202012
Each module providesnew(),is_valid(), andoptions()functions.
jsonschema::options()function as a shortcut forjsonschema::Validator::options(), that allows for customization of the validation process.
Changed
- Make
Debugimplementation forSchemaNodeopaque. - Make
jsonschema::validator_forand related functions returnValidationError<'static>in theirErrvariant.
This change makes possible to use the?operator to return errors from functions where the input schema is defined.
Deprecated
- Rename
CompilationOptionstoValidationOptionsfor clarity. - Rename
JSONSchematoValidatorfor clarity. #424 - Rename
JSONPointertoJsonPointerfor consistency with naming conventions. #424 - Rename
jsonschema::compiletojsonschema::validator_for. - Rename
CompilationOptions::compiletoValidationOptions::build.
Old names are retained for backward compatibility but will be removed in a future release.
Fixed
- Location-independent references in remote schemas on drafts 4, 6, and 7.
[Python] Release 0.20.0
Added
- New draft-specific validator classes:
Draft4Validator,Draft6Validator,Draft7Validator,Draft201909Validator, andDraft202012Validator. validator_forfunction for automatic draft detection.
Changed
- The
JSONSchemaclass has been renamed toValidator. The old name is retained for backward compatibility but will be removed in a future release.
Deprecated
- The
JSONSchemaclass is deprecated. Use thevalidator_forfunction or draft-specific validators instead.
You can usevalidator_forinstead ofJSONSchema.from_str. - Constants
jsonschema_rs.DRAFT4,jsonschema_rs.DRAFT6,jsonschema_rs.DRAFT7,jsonschema_rs.DRAFT201909, andjsonschema_rs.DRAFT202012are deprecated in favor of draft-specific validator classes.
Fixed
- Location-independent references in remote schemas on drafts 4, 6, and 7.
[Rust] Release 0.19.1
Fixed
ipv4format validation. #512
[Python] Release 0.19.1
Fixed
ipv4format validation. #512
[Rust] Release 0.19.0
Added
jsonschema::compileshortcut.
Changed
- Bump MSRV to
1.70.
Fixed
uuidformat validation.- Combination of
unevaluatedPropertieswithallOfandoneOf. #496
Deprecated
clifeature in favor of a separatejsonschema-clicrate.draft201909anddraft202012features. The relevant functionality is now enabled by default.
Performance
uuidvalidation viauuid-simd.