jsonschema_rs 0.57.0-x86_64-linux → 0.58.1-x86_64-linux
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +21 -1
- data/README.md +12 -0
- data/lib/jsonschema/3.3/jsonschema_rb.so +0 -0
- data/lib/jsonschema/3.4/jsonschema_rb.so +0 -0
- data/lib/jsonschema/4.0/jsonschema_rb.so +0 -0
- data/lib/jsonschema/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 632f4f100c7824813a5890cc5d85ca505405f505733711312edea2718b071cd5
|
|
4
|
+
data.tar.gz: 71721bb73c2c5416f532a580cc0c3c5ddcea63fb99dfe13b3fe4787e8c97e6ff
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 2fd21d7d3f4b07838cc32eac0017f1b16ff1dc9374d9b19ef1de94b41af12ba46047f396df1f0a40edbcec8517cd23139bc663a6261d7e9fd438b4778909389a
|
|
7
|
+
data.tar.gz: f14d39a77ccd272bb18e3155664071988e7772c7239741fb80dbe1ea546479f5d3347d12d937b5e307973e8e68080119f5c88162bbdc376a86608f5bd5ca22de
|
data/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,24 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## [0.58.1] - 2026-09-26
|
|
6
|
+
|
|
7
|
+
### Performance
|
|
8
|
+
|
|
9
|
+
- `uri` and `uri-reference` formats check the syntax directly instead of parsing each value into a URI.
|
|
10
|
+
|
|
11
|
+
## [0.58.0] - 2026-09-25
|
|
12
|
+
|
|
13
|
+
### Performance
|
|
14
|
+
|
|
15
|
+
- `oneOf` and `anyOf` whose branches each require a property fixed to a distinct string validate only the branch matching the instance's value.
|
|
16
|
+
- `Meta.valid?` and `Meta.validate!` check a schema against the bundled drafts without converting it first, 2 to 5x faster on the benchmarked schemas.
|
|
17
|
+
|
|
18
|
+
### Fixed
|
|
19
|
+
|
|
20
|
+
- `Canonical.find_unsatisfiable` missing a `oneOf` over `$ref` branches beside a sibling none of them admits.
|
|
21
|
+
- A value with no JSON form nested under `type: null` failing validation silently (it should raise `TypeError`).
|
|
22
|
+
|
|
5
23
|
## [0.57.0] - 2026-09-22
|
|
6
24
|
|
|
7
25
|
### Added
|
|
@@ -577,7 +595,9 @@
|
|
|
577
595
|
|
|
578
596
|
- Initial public release
|
|
579
597
|
|
|
580
|
-
[Unreleased]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.
|
|
598
|
+
[Unreleased]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.58.1...HEAD
|
|
599
|
+
[0.58.1]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.58.0...ruby-v0.58.1
|
|
600
|
+
[0.58.0]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.57.0...ruby-v0.58.0
|
|
581
601
|
[0.57.0]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.56.0...ruby-v0.57.0
|
|
582
602
|
[0.56.0]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.55.1...ruby-v0.56.0
|
|
583
603
|
[0.55.1]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.55.0...ruby-v0.55.1
|
data/README.md
CHANGED
|
@@ -700,6 +700,18 @@ Valid draft symbols: `:draft4`, `:draft6`, `:draft7`, `:draft201909`, `:draft202
|
|
|
700
700
|
|
|
701
701
|
For detailed benchmarks, see our [full performance comparison](https://github.com/Stranger6667/jsonschema/blob/master/crates/jsonschema-rb/BENCHMARKS.md).
|
|
702
702
|
|
|
703
|
+
### Compile-Time Validators
|
|
704
|
+
|
|
705
|
+
If you ship your own extension and know the schema at build time, the Rust crate's
|
|
706
|
+
`#[jsonschema::validator(..., backend = Magnus)]` macro compiles it into a validator that reads
|
|
707
|
+
Ruby objects directly, so nothing is parsed or compiled when your extension is loaded, and
|
|
708
|
+
validation runs up to 3.5x faster than with a validator built at run time. See the
|
|
709
|
+
[macro documentation](https://docs.rs/jsonschema/latest/jsonschema/#ruby-extension-modules).
|
|
710
|
+
|
|
711
|
+
This is not available from the `jsonschema_rs` gem, which takes its schemas at run time.
|
|
712
|
+
A complete extension with its build and test commands lives in
|
|
713
|
+
[`examples/magnus-extension`](https://github.com/Stranger6667/jsonschema/tree/master/examples/magnus-extension).
|
|
714
|
+
|
|
703
715
|
## Acknowledgements
|
|
704
716
|
|
|
705
717
|
This library draws API design inspiration from the Python [`jsonschema`](https://github.com/python-jsonschema/jsonschema) package. We're grateful to the Python `jsonschema` maintainers and contributors for their pioneering work in JSON Schema validation.
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
data/lib/jsonschema/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: jsonschema_rs
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.58.1
|
|
5
5
|
platform: x86_64-linux
|
|
6
6
|
authors:
|
|
7
7
|
- Dmitry Dygalo
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-09-
|
|
11
|
+
date: 2026-09-26 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bigdecimal
|