jsonschema_rs 0.50.1-x86_64-linux → 0.51.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 +27 -1
- data/README.md +1 -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
- data/sig/jsonschema.rbs +7 -0
- 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: '01039060bc2389acdf86de4a17ca8038a9a9a15c50ebb3b49327ccc332cc0598'
|
|
4
|
+
data.tar.gz: 83ea2e4aefa122352cee496e845af970f9ae88e865f8b0a9b28a3b878771b437
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 8648fbabca232e1a547ce14823ebea7e34d2fb7b0d2bac99d8feb4ddab63928593cd7a9a5015e00d637081574bc6548e6aa8fa6bcc7d11bf2516c581051b8792
|
|
7
|
+
data.tar.gz: c5632df20ccfce1ccab959f6ead8d5648ef05cbaf53450a1dcde828f6047b17992712214bbfbb464edf4787b6134191c73deee89eacae12456f6e7a2f2da4c95
|
data/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,31 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## [0.51.0] - 2026-08-23
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
|
|
9
|
+
- `vocabularies` option, declaring support for a vocabulary this library does not implement.
|
|
10
|
+
|
|
11
|
+
### Fixed
|
|
12
|
+
|
|
13
|
+
- The `uniqueItems` length ceiling not reading an `items` or `contains` schema written as a `$ref`.
|
|
14
|
+
- The Draft 2020-12 Format-Assertion vocabulary read as an annotation, so a meta-schema requiring it accepted values its `format` rejects.
|
|
15
|
+
- An unrecognized `format` accepted under a meta-schema requiring the Format-Assertion vocabulary (it should be rejected).
|
|
16
|
+
- A meta-schema requiring a vocabulary this library does not implement accepted (it should be rejected).
|
|
17
|
+
- The Draft 2019-09 Format vocabulary declared `true` read as an annotation, so a meta-schema requiring it accepted values its `format` rejects.
|
|
18
|
+
- The bundled `https://json-schema.org/draft/2020-12/meta/format-assertion` meta-schema not declaring its vocabulary, so a schema written against it annotated `format` instead of asserting it.
|
|
19
|
+
- A meta-schema without `$id` keeping its `$vocabulary` unread, so a schema written against it got every Draft 2020-12 vocabulary.
|
|
20
|
+
- A schema naming a bundled vocabulary meta-schema as its `$schema` rejected as an unknown meta-schema (it should build).
|
|
21
|
+
- The `regex` format reading the Rust regex dialect (it should read the ECMA-262 dialect in Unicode mode).
|
|
22
|
+
- The `uri-template` format rejecting an apostrophe in a literal (it should accept it, per RFC 6570 errata 6937).
|
|
23
|
+
- The `duration` format accepting weeks combined with a time part, such as `P1WT1H` (it should reject it).
|
|
24
|
+
- Stack overflow compiling `unevaluatedProperties` or `unevaluatedItems` beside a `$ref` that cycles back to the node, written as `#`, through its `$id`, or through a chain of definitions.
|
|
25
|
+
|
|
26
|
+
### Performance
|
|
27
|
+
|
|
28
|
+
- Building `unevaluatedProperties` or `unevaluatedItems` over a deep `allOf` or `$ref` chain costs its depth instead of its square.
|
|
29
|
+
|
|
5
30
|
## [0.50.1] - 2026-08-22
|
|
6
31
|
|
|
7
32
|
### Changed
|
|
@@ -442,7 +467,8 @@
|
|
|
442
467
|
|
|
443
468
|
- Initial public release
|
|
444
469
|
|
|
445
|
-
[Unreleased]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.
|
|
470
|
+
[Unreleased]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.51.0...HEAD
|
|
471
|
+
[0.51.0]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.50.1...ruby-v0.51.0
|
|
446
472
|
[0.50.1]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.50.0...ruby-v0.50.1
|
|
447
473
|
[0.50.0]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.49.9...ruby-v0.50.0
|
|
448
474
|
[0.49.9]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.49.8...ruby-v0.49.9
|
data/README.md
CHANGED
|
@@ -644,6 +644,7 @@ JSONSchema.valid?(schema, instance,
|
|
|
644
644
|
formats: { "name" => proc }, # Custom format validators
|
|
645
645
|
keywords: { "name" => Klass }, # Custom keyword validators
|
|
646
646
|
registry: registry, # Pre-registered schemas
|
|
647
|
+
vocabularies: ["https://..."], # Vocabularies implemented by custom keywords
|
|
647
648
|
pattern_options: opts, # RegexOptions or FancyRegexOptions
|
|
648
649
|
email_options: opts, # EmailOptions
|
|
649
650
|
http_options: opts # HttpOptions
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
data/lib/jsonschema/version.rb
CHANGED
data/sig/jsonschema.rbs
CHANGED
|
@@ -310,6 +310,7 @@ module JSONSchema
|
|
|
310
310
|
untyped schema,
|
|
311
311
|
?validate_formats: bool?,
|
|
312
312
|
?ignore_unknown_formats: bool?,
|
|
313
|
+
?vocabularies: Array[String]?,
|
|
313
314
|
?base_uri: String?,
|
|
314
315
|
?retriever: (^(String) -> untyped)?,
|
|
315
316
|
?mask: String?,
|
|
@@ -326,6 +327,7 @@ module JSONSchema
|
|
|
326
327
|
untyped schema,
|
|
327
328
|
?validate_formats: bool?,
|
|
328
329
|
?ignore_unknown_formats: bool?,
|
|
330
|
+
?vocabularies: Array[String]?,
|
|
329
331
|
?mask: ::String?,
|
|
330
332
|
?base_uri: ::String?,
|
|
331
333
|
?retriever: (^(::String) -> untyped)?,
|
|
@@ -371,6 +373,7 @@ module JSONSchema
|
|
|
371
373
|
?draft: draft?,
|
|
372
374
|
?validate_formats: bool?,
|
|
373
375
|
?ignore_unknown_formats: bool?,
|
|
376
|
+
?vocabularies: Array[String]?,
|
|
374
377
|
?base_uri: String?,
|
|
375
378
|
?retriever: (^(String) -> untyped)?,
|
|
376
379
|
?mask: String?,
|
|
@@ -389,6 +392,7 @@ module JSONSchema
|
|
|
389
392
|
?draft: draft?,
|
|
390
393
|
?validate_formats: bool?,
|
|
391
394
|
?ignore_unknown_formats: bool?,
|
|
395
|
+
?vocabularies: Array[String]?,
|
|
392
396
|
?base_uri: String?,
|
|
393
397
|
?retriever: (^(String) -> untyped)?,
|
|
394
398
|
?mask: String?,
|
|
@@ -407,6 +411,7 @@ module JSONSchema
|
|
|
407
411
|
?draft: draft?,
|
|
408
412
|
?validate_formats: bool?,
|
|
409
413
|
?ignore_unknown_formats: bool?,
|
|
414
|
+
?vocabularies: Array[String]?,
|
|
410
415
|
?base_uri: String?,
|
|
411
416
|
?retriever: (^(String) -> untyped)?,
|
|
412
417
|
?mask: String?,
|
|
@@ -423,6 +428,7 @@ module JSONSchema
|
|
|
423
428
|
?draft: draft?,
|
|
424
429
|
?validate_formats: bool?,
|
|
425
430
|
?ignore_unknown_formats: bool?,
|
|
431
|
+
?vocabularies: Array[String]?,
|
|
426
432
|
?base_uri: String?,
|
|
427
433
|
?retriever: (^(String) -> untyped)?,
|
|
428
434
|
?mask: String?,
|
|
@@ -441,6 +447,7 @@ module JSONSchema
|
|
|
441
447
|
?draft: draft?,
|
|
442
448
|
?validate_formats: bool?,
|
|
443
449
|
?ignore_unknown_formats: bool?,
|
|
450
|
+
?vocabularies: Array[String]?,
|
|
444
451
|
?base_uri: String?,
|
|
445
452
|
?retriever: (^(String) -> untyped)?,
|
|
446
453
|
?formats: Hash[String, ^(String) -> bool]?,
|
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.51.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-23 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bigdecimal
|