Releases: Stranger6667/jsonschema
Releases · Stranger6667/jsonschema
Release list
[Ruby] Release 0.48.2
Fixed
Canonical::JSON.to_stringincorrectly emitting exponent form for smallFloatvalues (e.g.1e-7instead of0.0000001).
Performance
- Faster validator compilation by pre-sizing internal caches.
[Python] Release 0.48.2
Performance
- Faster validator compilation by pre-sizing internal caches.
[CLI] Release 0.48.2
cli-v0.48.2 chore(rust): Release 0.48.2
[Rust] Release 0.48.1
Fixed
- Missing
requirederrors inevaluate()output for schemas withpropertiesand a two-entryrequiredarray. #1220 contentEncodingerrors for invalid UTF-8 after decoding incorrectly had emptyinstance_pathandschema_path.
Performance
- Faster code generation for
#[jsonschema::validator](~5% across benchmarked schemas), via aliasing repeated paths in the emitted code.
[Ruby] Release 0.48.1
Fixed
- Missing
requirederrors inevaluateoutput for schemas withpropertiesand a two-entryrequiredarray. #1220 contentEncodingerrors for invalid UTF-8 after decoding incorrectly had emptyinstance_pathandschema_path.
[Python] Release 0.48.1
Fixed
- Missing
requirederrors inevaluate()output for schemas withpropertiesand a two-entryrequiredarray. #1220 contentEncodingerrors for invalid UTF-8 after decoding incorrectly had emptyinstance_pathandschema_path.
[CLI] Release 0.48.1
cli-v0.48.1 chore(rust): Release 0.48.1
[Rust] Release 0.48.0
Added
iter_errorsfor#[jsonschema::validator]-generated validators.
Fixed
- Per-branch context on generated
anyOfandoneOfvalidation errors, matching runtime validators. $recursiveRefin generated validators incorrectly resolved to the innermost$recursiveAnchor(it should resolve to the outermost one).- Integer instances just outside the
i64/u64range incorrectly compared against numeric bounds through lossyf64rounding underarbitrary-precision(e.g.{"minimum": -9223372036854775808}accepted-9223372036854775809).
Changed
- One canonical number spelling from
canonical::json::to_stringunderarbitrary-precision("1e-2"becomes"0.01","1.50"becomes"1.5") and correctly-rounded float parsing (serde_json'sfloat_roundtrip).
Performance
- Faster
multipleOfvalidation for integer instances with integer divisors, via integer arithmetic instead of floating-point modulo.
[Ruby] Release 0.48.0
Fixed
JSONSchema::Meta.valid?andJSONSchema::Meta.validate!incorrectly accepted some Draft 2019-09 schemas that the meta-schema rejects.- Integers just outside the
i64/u64range incorrectly compared against numeric bounds through lossyf64rounding (e.g.{"minimum" => -9223372036854775808}accepted-9223372036854775809).
Performance
- Faster
multipleOfvalidation for integer instances with integer divisors, via integer arithmetic instead of floating-point modulo.
[Python] Release 0.48.0
Fixed
meta.is_validandmeta.validateincorrectly accepted some Draft 2019-09 schemas that the meta-schema rejects.- Integers just outside the
i64/u64range incorrectly compared against numeric bounds through lossyf64rounding (e.g.{"minimum": -9223372036854775808}accepted-9223372036854775809).
Performance
- Faster
multipleOfvalidation for integer instances with integer divisors, via integer arithmetic instead of floating-point modulo.