jsonschema_rs 0.53.0-x86_64-linux → 0.55.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 +44 -1
- 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
- data/sig/jsonschema.rbs +9 -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: 3a673a45b4bab3dab3b28a294ab14381158d63d69b24c5e4cc7995140077743d
|
|
4
|
+
data.tar.gz: 30ca95795884ad287009b82e0379b59e348cea5bee430229c22fe87a337e7162
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 3cacdc251b989c1cc0e94c23ea3f320c0cf8023c8691176d47b6e4ffe902dcf601edb24c89fe02279b81b14aeed164e0535b653c402a4cb180b5221c80b975d3
|
|
7
|
+
data.tar.gz: 6e7767d4b2318e2848c800f563cd67925904b75e5037def52bc84acae4d8e6bc714e605dc7fa1083938d80430c1f1bc52c0f150e6771cc5ea2f428b2252b93fb
|
data/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,47 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## [0.55.0] - 2026-09-06
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
|
|
9
|
+
- `JSONSchema::Canonical::PatternValueFailsView`, which `ObjectView#violations` records for a `patternProperties` entry.
|
|
10
|
+
|
|
11
|
+
### Changed
|
|
12
|
+
|
|
13
|
+
- Canonicalization of `not` over `patternProperties`, which kept the entry under `not` instead of recording the demand a key breaks.
|
|
14
|
+
- Canonicalization of an `anyOf` over objects sharing a `properties` key under `patternProperties`, which settled only on a second pass.
|
|
15
|
+
- Canonicalization of `not` over an `allOf` folded through a reference, which settled only on a second pass.
|
|
16
|
+
- Canonicalization of a `multipleOf` divisor past `f64` precision, which was not taken to divide itself.
|
|
17
|
+
- Canonicalization of an `anyOf` over a value beside a window pinned to it, which settled only on a second pass.
|
|
18
|
+
- Canonicalization of `minProperties: 1` beside a `not` that already demands a key, which settled only on a second pass.
|
|
19
|
+
|
|
20
|
+
### Fixed
|
|
21
|
+
|
|
22
|
+
- `absolute_keyword_location` naming the sibling keyword whose validator carries the check: `maxLength` beside `minLength`, `minItems`, `maxItems` or `type` beside `items`, and a two-name `required` beside `properties`. [#1579](https://github.com/Stranger6667/jsonschema/issues/1579)
|
|
23
|
+
- `schemaLocation` in `evaluate` output naming `minLength` for a `maxLength` failure. [#1579](https://github.com/Stranger6667/jsonschema/issues/1579)
|
|
24
|
+
|
|
25
|
+
## [0.54.0] - 2026-09-06
|
|
26
|
+
|
|
27
|
+
### Performance
|
|
28
|
+
|
|
29
|
+
- `validate` and `iter_errors` check each assertion keyword with the `is_valid` path and build an error only for a failing one.
|
|
30
|
+
- `evaluate` holds its output tree in one allocation instead of one per node.
|
|
31
|
+
- A `pattern` of `^\S*$` scans bytes instead of decoding every character.
|
|
32
|
+
- `validate` on `properties` beside a two-name `required` confirms both names in the pass that checks the properties, instead of looking each up first.
|
|
33
|
+
- A string `enum` compares an option's length and first and last eight bytes before its full text.
|
|
34
|
+
- A JSON Pointer segment is scanned for `~` and `/` eight bytes at a time before it is copied.
|
|
35
|
+
- Canonicalization cloning leaves per intersection and the definition map per settled target.
|
|
36
|
+
|
|
37
|
+
### Changed
|
|
38
|
+
|
|
39
|
+
- Canonicalization of `unevaluated*` beside `dependentSchemas` or `if`/`then`/`else`, which kept the document `Raw`.
|
|
40
|
+
- Canonicalization of `not` over `patternProperties`, which kept the document `Raw`.
|
|
41
|
+
|
|
42
|
+
### Fixed
|
|
43
|
+
|
|
44
|
+
- Canonicalization of `not` over an object with `properties`, `patternProperties` and `additionalProperties`, which applied `additionalProperties` to the keys listed in `properties`.
|
|
45
|
+
|
|
5
46
|
## [0.53.0] - 2026-09-02
|
|
6
47
|
|
|
7
48
|
### Fixed
|
|
@@ -504,7 +545,9 @@
|
|
|
504
545
|
|
|
505
546
|
- Initial public release
|
|
506
547
|
|
|
507
|
-
[Unreleased]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.
|
|
548
|
+
[Unreleased]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.55.0...HEAD
|
|
549
|
+
[0.55.0]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.54.0...ruby-v0.55.0
|
|
550
|
+
[0.54.0]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.53.0...ruby-v0.54.0
|
|
508
551
|
[0.53.0]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.52.1...ruby-v0.53.0
|
|
509
552
|
[0.52.1]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.52.0...ruby-v0.52.1
|
|
510
553
|
[0.52.0]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.51.0...ruby-v0.52.0
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
data/lib/jsonschema/version.rb
CHANGED
data/sig/jsonschema.rbs
CHANGED
|
@@ -207,7 +207,7 @@ module JSONSchema
|
|
|
207
207
|
def properties: () -> Hash[String, CanonicalSchema]
|
|
208
208
|
def pattern_properties: () -> Hash[String, CanonicalSchema]
|
|
209
209
|
def additional_properties: () -> CanonicalSchema?
|
|
210
|
-
def violations: () -> Array[NameFailsView | UndeclaredValueFailsView]
|
|
210
|
+
def violations: () -> Array[NameFailsView | UndeclaredValueFailsView | PatternValueFailsView]
|
|
211
211
|
def inspect: () -> String
|
|
212
212
|
def deconstruct_keys: (untyped keys) -> Hash[Symbol, untyped]
|
|
213
213
|
end
|
|
@@ -228,6 +228,14 @@ module JSONSchema
|
|
|
228
228
|
def deconstruct_keys: (untyped keys) -> Hash[Symbol, untyped]
|
|
229
229
|
end
|
|
230
230
|
|
|
231
|
+
# Some key matching `pattern` has a value failing `schema`.
|
|
232
|
+
class PatternValueFailsView
|
|
233
|
+
def pattern: () -> String
|
|
234
|
+
def schema: () -> CanonicalSchema
|
|
235
|
+
def inspect: () -> String
|
|
236
|
+
def deconstruct_keys: (untyped keys) -> Hash[Symbol, untyped]
|
|
237
|
+
end
|
|
238
|
+
|
|
231
239
|
# The complement of an opaque schema.
|
|
232
240
|
class NotView
|
|
233
241
|
def schema: () -> CanonicalSchema
|
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.55.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-09-
|
|
11
|
+
date: 2026-09-06 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bigdecimal
|