jsonschema_rs 0.52.1-aarch64-linux → 0.54.0-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: 78413c833f2fbd0ade6fe407fceca865baf121572b65a2f5018a01bd54ee1880
4
- data.tar.gz: 4d3e0618b8082ebff76a806f430c9b7b607d8e4b4879d10d1055b2593d8419b8
3
+ metadata.gz: a733de8889c90d64eeccdb19b4cf3076f02b768fa03550373da767d1ba8e5f2f
4
+ data.tar.gz: d17718e3438ce8b6d15bfb38afc419ff6b0fda2dd124072063551688aecbd195
5
5
  SHA512:
6
- metadata.gz: 83c3621e50c0c3ebe5d514973dae2a94094ca6e53694555b621387289db7efd9dc92d257d3b89ad64fbccd90ec2b8b85f3f9d405aba32f815390f472419c905f
7
- data.tar.gz: f19d616788ea8204f44b2c28d09e8bdb8abddec3f7b69e29dcea869d0fe32ea464879a7d5bcd0ee2140a5d0e78ec72070e4789c04199c625904f5c5461bdac1a
6
+ metadata.gz: 6469600d815a4970cc4b499864f6ca2682e1b695cb190f4ab4b7c5ef2a9be1b8e02182a983e538c88f6f0d3d3d38815d8c8dcd7a538017c390c6ea9feb6ef1df
7
+ data.tar.gz: 1ad456b10b4b20406528cd28349163a98c6fe445bd6ebef4fafe476ae3988641f6b523b9e3f0fee45b709c31d5941f07d76d4ad8743fcd99a9bbb808d46a1884
data/CHANGELOG.md CHANGED
@@ -2,6 +2,44 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [0.54.0] - 2026-09-06
6
+
7
+ ### Performance
8
+
9
+ - `validate` and `iter_errors` check each assertion keyword with the `is_valid` path and build an error only for a failing one.
10
+ - `evaluate` holds its output tree in one allocation instead of one per node.
11
+ - A `pattern` of `^\S*$` scans bytes instead of decoding every character.
12
+ - `validate` on `properties` beside a two-name `required` confirms both names in the pass that checks the properties, instead of looking each up first.
13
+ - A string `enum` compares an option's length and first and last eight bytes before its full text.
14
+ - A JSON Pointer segment is scanned for `~` and `/` eight bytes at a time before it is copied.
15
+ - Canonicalization cloning leaves per intersection and the definition map per settled target.
16
+
17
+ ### Changed
18
+
19
+ - Canonicalization of `unevaluated*` beside `dependentSchemas` or `if`/`then`/`else`, which kept the document `Raw`.
20
+ - Canonicalization of `not` over `patternProperties`, which kept the document `Raw`.
21
+
22
+ ### Fixed
23
+
24
+ - Canonicalization of `not` over an object with `properties`, `patternProperties` and `additionalProperties`, which applied `additionalProperties` to the keys listed in `properties`.
25
+
26
+ ## [0.53.0] - 2026-09-02
27
+
28
+ ### Fixed
29
+
30
+ - Draft 4 `type: integer` matching a `Float` or not depending on its formatting; a `Float` is never a draft 4 integer.
31
+ - `uniqueItems` accepting `0` alongside `-0.0` in arrays of more than 15 items.
32
+
33
+ ### Performance
34
+
35
+ - Canonicalizing an `allOf` of object schemas walks their property maps once instead of looking every key up.
36
+ - `properties` and `required` compare short names without `memcmp`.
37
+ - Draft 4 `type: integer` is up to 6x faster on float-heavy instances.
38
+ - `evaluate` renders each node's locations once instead of rebuilding them.
39
+ - Building a schema resolves each `$ref` target once instead of per reference site.
40
+ - Building a schema with an `$id` encodes each absolute location once instead of re-validating it.
41
+ - `enum` listing strings or integers, with or without `null`, matches against a set instead of comparing each candidate.
42
+
5
43
  ## [0.52.1] - 2026-08-30
6
44
 
7
45
  ### Performance
@@ -487,7 +525,9 @@
487
525
 
488
526
  - Initial public release
489
527
 
490
- [Unreleased]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.52.1...HEAD
528
+ [Unreleased]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.54.0...HEAD
529
+ [0.54.0]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.53.0...ruby-v0.54.0
530
+ [0.53.0]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.52.1...ruby-v0.53.0
491
531
  [0.52.1]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.52.0...ruby-v0.52.1
492
532
  [0.52.0]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.51.0...ruby-v0.52.0
493
533
  [0.51.0]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.50.1...ruby-v0.51.0
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.52.1"
4
+ VERSION = "0.54.0"
5
5
  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.52.1
4
+ version: 0.54.0
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-30 00:00:00.000000000 Z
11
+ date: 2026-09-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bigdecimal