jsonschema_rs 0.49.4-aarch64-linux → 0.49.6-aarch64-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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8c22c51afb1f4c0c651addda328c1891df9e51c4ed61f7b0f86780cea0a33d09
4
- data.tar.gz: 0ae9dae7df879372a2449023872549170734966232a323bc2771eef5df972e08
3
+ metadata.gz: '07847ea4476c91eacdd6c87f05653aca1e501e8d41ecb218e88291c9cae6da87'
4
+ data.tar.gz: e206925112e0edc658b1e5a206b7ee288c47e9afa3008df9f083e7bad83b98a2
5
5
  SHA512:
6
- metadata.gz: efa3a48af6657314d679e4cb3f8c485413c6da789d8e87b900a1eb9e1f7e8286d17b3ba142cf144af82c3018c805dbbc1a969c445674f7d8332a8649830811db
7
- data.tar.gz: 5c6601d718193f2934023cbeda5bb9fb7533e2f113b7c61e5554baf1d4f4d151556dd8b1e7e0c34ef30f1c269004e833391499f173e36485dc5c20fdce8ec507
6
+ metadata.gz: 2bfb492998dd9ac84dc0ce46d8adb37c4e699d863fb815adc4edca2dbd1dee279799be9c79a0fbf8e70bc2d38795eb78ba618fed22ed34a4889b135f8b1b75d0
7
+ data.tar.gz: 0174ad4ebbdb3aef1d1fbb21cd5901fa7479954ef223e959d52e370bed7fb6775522b28232d75636aac9111b85b2f85e6499d8ce6e28965884cb6dfda3aef1c0
data/CHANGELOG.md CHANGED
@@ -2,6 +2,47 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [0.49.6] - 2026-08-06
6
+
7
+ ### Added
8
+
9
+ - Canonicalization of a negated `uniqueItems`, where the complement demands a repeated element under the length floor two elements imply.
10
+ - Canonicalization of a negated array tuple, where each position's complement stands under the length that reaches it.
11
+ - Canonicalization of `contains` demands sharing no value, where their counts add up into a length floor.
12
+ - `CanonicalSchema#negate` through references, where the complement of the resolved target takes the reference's place.
13
+ - Canonicalization of negated `propertyNames` and `additionalProperties`, where the complement spells the violating-key demand instead of a `not` residual.
14
+ - Canonicalization of negated `additionalProperties` under Draft 4, where the violating-key demand spells the closed property map.
15
+ - Canonicalization of `not` a reference, where the complement of the resolved target takes the pointer's place.
16
+ - Canonicalization of a negated `oneOf`, where the complement spells the values no branch admits beside the values two branches share.
17
+ - Canonicalization of negated `items` under Draft 4, where the violating-element demand spells the barred element schema.
18
+
19
+ ### Changed
20
+
21
+ - `ArrayView` reports distinctness in three states, so an array demanding a repeated element reads apart from one demanding distinct elements.
22
+
23
+ ### Fixed
24
+
25
+ - `CanonicalSchema#negate` keeping a root self-reference in the complement, where it points at the complement instead of the source.
26
+ - An `additionalItems` that tails no tuple keeping the whole document unmodeled under Draft 2020-12.
27
+
28
+ ## [0.49.5] - 2026-08-05
29
+
30
+ ### Added
31
+
32
+ - Canonicalization of `not` an integer schema under Draft 4, which the number leaf carries as barred integers.
33
+ - Canonicalization of `not` a `multipleOf`, which numeric leaves carry as barred divisors.
34
+ - Canonicalization of `not` an integer schema, where a barred divisor of one spells the non-integer numbers.
35
+ - Canonicalization of `not` a `pattern`, which string leaves carry as barred patterns.
36
+ - Canonicalization of `not` a typed value set under Draft 4, such as `{"type": "integer", "enum": [1, 2]}`.
37
+ - `CanonicalSchema#is_subset_of`, whether the other schema admits every value this one admits.
38
+ - Canonicalization of a reference cycle carrying no assertion, which admits every value.
39
+
40
+ ### Fixed
41
+
42
+ - `CanonicalSchema#is_subset_of` failing to prove a union of array branches a subset of itself.
43
+ - Two spellings of one number canonicalizing to different texts when the fraction exceeds the expansion cap.
44
+ - Numeric bounds and `multipleOf` comparing values through a lossy `f64` conversion, such as `1e-400` passing `{"maximum": 0}`.
45
+
5
46
  ## [0.49.4] - 2026-08-04
6
47
 
7
48
  ### Added
@@ -286,7 +327,9 @@
286
327
 
287
328
  - Initial public release
288
329
 
289
- [Unreleased]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.49.4...HEAD
330
+ [Unreleased]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.49.6...HEAD
331
+ [0.49.6]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.49.5...ruby-v0.49.6
332
+ [0.49.5]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.49.4...ruby-v0.49.5
290
333
  [0.49.4]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.49.3...ruby-v0.49.4
291
334
  [0.49.3]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.49.2...ruby-v0.49.3
292
335
  [0.49.2]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.49.1...ruby-v0.49.2
Binary file
Binary file
Binary file
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module JSONSchema
4
- VERSION = "0.49.4"
4
+ VERSION = "0.49.6"
5
5
  end
data/sig/jsonschema.rbs CHANGED
@@ -45,6 +45,7 @@ module JSONSchema
45
45
  def kind: () -> kind
46
46
  def view: () -> view
47
47
  def intersect: (CanonicalSchema other) -> CanonicalSchema
48
+ def is_subset_of: (CanonicalSchema other) -> bool?
48
49
  def negate: () -> CanonicalSchema?
49
50
  def definition: (String uri) -> CanonicalSchema?
50
51
  def definitions: () -> Hash[String, CanonicalSchema]
@@ -83,7 +84,9 @@ module JSONSchema
83
84
  def min_length: () -> Integer?
84
85
  def max_length: () -> Integer?
85
86
  def patterns: () -> Array[String]
87
+ def excluded_patterns: () -> Array[String]
86
88
  def formats: () -> Array[String]
89
+ def excluded_formats: () -> Array[String]
87
90
  def content_media_types: () -> Array[String]
88
91
  def content_encodings: () -> Array[String]
89
92
  def excluded: () -> Array[String]
@@ -98,6 +101,8 @@ module JSONSchema
98
101
  def maximum: () -> (Integer | Float)?
99
102
  def exclusive_maximum: () -> bool
100
103
  def multiple_of: () -> Array[Integer | Float]
104
+ def not_multiple_of: () -> Array[Integer | Float]
105
+ def excludes_integers: () -> bool
101
106
  def inspect: () -> String
102
107
  def deconstruct_keys: (untyped keys) -> Hash[Symbol, untyped]
103
108
  end
@@ -107,6 +112,7 @@ module JSONSchema
107
112
  def minimum: () -> Integer?
108
113
  def maximum: () -> Integer?
109
114
  def multiple_of: () -> Array[Integer | Float]
115
+ def not_multiple_of: () -> Array[Integer | Float]
110
116
  def inspect: () -> String
111
117
  def deconstruct_keys: (untyped keys) -> Hash[Symbol, untyped]
112
118
  end
@@ -115,7 +121,7 @@ module JSONSchema
115
121
  class ArrayView
116
122
  def min_items: () -> Integer?
117
123
  def max_items: () -> Integer?
118
- def unique_items: () -> bool
124
+ def distinctness: () -> (:unconstrained | :all_distinct | :some_repeated)
119
125
  def prefix_items: () -> Array[CanonicalSchema]
120
126
  def items: () -> CanonicalSchema?
121
127
  def contains: () -> Array[ContainsView]
@@ -140,6 +146,24 @@ module JSONSchema
140
146
  def property_names: () -> CanonicalSchema?
141
147
  def properties: () -> Hash[String, CanonicalSchema]
142
148
  def pattern_properties: () -> Hash[String, CanonicalSchema]
149
+ def additional_properties: () -> CanonicalSchema?
150
+ def violations: () -> Array[NameFailsView | UndeclaredValueFailsView]
151
+ def inspect: () -> String
152
+ def deconstruct_keys: (untyped keys) -> Hash[Symbol, untyped]
153
+ end
154
+
155
+ # Some key's name fails the schema.
156
+ class NameFailsView
157
+ def schema: () -> CanonicalSchema
158
+ def inspect: () -> String
159
+ def deconstruct_keys: (untyped keys) -> Hash[Symbol, untyped]
160
+ end
161
+
162
+ # Some key outside `names` and matching none of `patterns` has a value failing `additional`.
163
+ class UndeclaredValueFailsView
164
+ def names: () -> Array[String]
165
+ def patterns: () -> Array[String]
166
+ def additional: () -> CanonicalSchema
143
167
  def inspect: () -> String
144
168
  def deconstruct_keys: (untyped keys) -> Hash[Symbol, untyped]
145
169
  end
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.49.4
4
+ version: 0.49.6
5
5
  platform: aarch64-linux
6
6
  authors:
7
7
  - Dmitry Dygalo
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-08-03 00:00:00.000000000 Z
11
+ date: 2026-08-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bigdecimal