[Rust] Release 0.58.0
·
88 commits
to master
since this release
Added
backend = Pyo3on#[jsonschema::validator], generating a validator that reads Python objects in place.backend = Magnuson#[jsonschema::validator], generating a validator that reads Ruby objects in place.jsonschema::meta::pyo3, the bundled meta-schema validators for a schema held as a Python object.jsonschema::meta::magnus, the bundled meta-schema validators for a schema held as a Ruby object.methods = { ... }on#[jsonschema::validator], selecting which ofis_valid,validate, anditer_errorsare generated.json::Jsonb, validating a Postgresjsonbvalue in place, behind thejsonbfeature.
Performance
oneOfandanyOfwhose branches each require a property fixed to a distinct string validate only the branch matching the instance's value.- Generated
validatechecksrequiredin the same pass over an object asproperties, instead of looking up each required name.
Fixed
- A
oneOfover$refbranches beside a sibling none of them admits, which canonicalized to anallOfinstead offalse. multipleOfincorrectly accepted1e-400and other magnitudes below the smallestf64subnormal witharbitrary-precision(they are not zero).- Numeric keywords panicked on a custom representation holding a number past
f64withoutarbitrary-precision.