jsonschema_rs 0.51.0-x86_64-linux → 0.52.0-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 +14 -1
- data/README.md +8 -2
- 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: ce274a06208c1cd4edac0a666ae528d3347bd3266ae244aa6bd98959e93884fa
|
|
4
|
+
data.tar.gz: 99224e7475d633c0b533a888ec708a3749d91dabf9c3c70998b2211feeedbc47
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 3b5d47ff07fa89a797bff77c683ea0f89216093e93731992dd3076ff0b46306b7aa3b99c462eec2d118958c8322d53d05f72203d9db8515664709d50ae99239d
|
|
7
|
+
data.tar.gz: da2d956cbee728a47d178fd66d522fa4e032d9521c4c6125f04f9f8837284bb421742cc8b247b6eaf9c555cf81af0e6dd6f2b9c06fb0c5d2b31ab9ae15252714
|
data/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,18 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## [0.52.0] - 2026-08-27
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
|
|
9
|
+
- The `offline:` keyword argument, refusing to fetch references outside `registry:`.
|
|
10
|
+
|
|
11
|
+
### Fixed
|
|
12
|
+
|
|
13
|
+
- Canonicalization not idempotent where a `patternProperties` `$ref` matches a key `properties` names.
|
|
14
|
+
- The `draft:` keyword argument and the `Draft201909Validator` / `Draft202012Validator` classes gating keywords on the vocabularies of the `$schema` they override, so the validator accepted every instance.
|
|
15
|
+
- `valid?` disagreeing with `validate!`, `each_error`, and `evaluate` on a schema that reaches its own `$ref` twice, one of them under `not`.
|
|
16
|
+
|
|
5
17
|
## [0.51.0] - 2026-08-23
|
|
6
18
|
|
|
7
19
|
### Added
|
|
@@ -467,7 +479,8 @@
|
|
|
467
479
|
|
|
468
480
|
- Initial public release
|
|
469
481
|
|
|
470
|
-
[Unreleased]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.
|
|
482
|
+
[Unreleased]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.52.0...HEAD
|
|
483
|
+
[0.52.0]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.51.0...ruby-v0.52.0
|
|
471
484
|
[0.51.0]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.50.1...ruby-v0.51.0
|
|
472
485
|
[0.50.1]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.50.0...ruby-v0.50.1
|
|
473
486
|
[0.50.0]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.49.9...ruby-v0.50.0
|
data/README.md
CHANGED
|
@@ -49,7 +49,7 @@ end
|
|
|
49
49
|
- 🌐 Remote reference fetching (network/file)
|
|
50
50
|
- 🔧 Custom keywords and format validators
|
|
51
51
|
- ✨ Meta-schema validation for schema documents
|
|
52
|
-
- 📦 Schema bundling into Compound Schema Documents
|
|
52
|
+
- 📦 Schema bundling into Compound Schema Documents, and `$ref` dereferencing
|
|
53
53
|
- 🧮 Experimental schema canonicalization
|
|
54
54
|
- ♦️ Supports Ruby 3.2, 3.4 and 4.0
|
|
55
55
|
|
|
@@ -371,7 +371,7 @@ Compare a request schema new-against-old and a response schema old-against-new:
|
|
|
371
371
|
|
|
372
372
|
Both operands must share one setup - the same draft, format policy, regular-expression engine and definitions - or `IncompatibleOperands` is raised. `UnsupportedOperand` means an operand is a `Raw` pass-through, and `UnsupportedResult` that the canonical form does not support the result. All three live under `JSONSchema::Canonical`.
|
|
373
373
|
|
|
374
|
-
## Schema Bundling
|
|
374
|
+
## Schema Bundling and Dereferencing
|
|
375
375
|
|
|
376
376
|
Produce a Compound Schema Document ([Appendix B](https://json-schema.org/draft/2020-12/json-schema-core#appendix-B)) by embedding all external `$ref` targets into a draft-appropriate container. The result validates identically to the original.
|
|
377
377
|
|
|
@@ -395,6 +395,12 @@ registry = JSONSchema::Registry.new([["https://example.com/address.json", addres
|
|
|
395
395
|
bundled = JSONSchema.bundle(schema, registry: registry)
|
|
396
396
|
```
|
|
397
397
|
|
|
398
|
+
`dereference` instead replaces each `$ref` with the schema it points to, for consumers that do not resolve references. Circular references are left in place.
|
|
399
|
+
|
|
400
|
+
```ruby
|
|
401
|
+
dereferenced = JSONSchema.dereference(schema, registry: registry)
|
|
402
|
+
```
|
|
403
|
+
|
|
398
404
|
## Meta-Schema Validation
|
|
399
405
|
|
|
400
406
|
Validate that a JSON Schema document is itself valid:
|
|
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.52.0
|
|
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-08-
|
|
11
|
+
date: 2026-08-26 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bigdecimal
|