jsonschema_rs 0.59.0 → 0.60.0

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: 103822ad4a54d121d77b6dc1255893c0a4bc014485bf9d5f19a08a32d5942ff1
4
- data.tar.gz: 023cecb35cb44427703009c992b95a1f291c99c8d106337f87678adac1d71dd6
3
+ metadata.gz: 25fd2e3cf1682bcd3ab82dfdbb8b86bf179da24c3d7304b95fa102b5af609962
4
+ data.tar.gz: 9db1b4260c437bdd9223982a9e1a74338a9e9269d584b17435411c8f0783d3ea
5
5
  SHA512:
6
- metadata.gz: b718749642d0a462c5781403ae152b7a2bd7c3e732a437d9599e2ac87781aecd4ac87b3e321272557125915f5ff982661a5c2683973cbe0e7ee39a701737aa12
7
- data.tar.gz: 10376b14d725a7feeaeb64f92e01d26f175f6d6694460bbd76015a305649e47603909c3d0fb7963d9da0172d2b3fe14f166b36dc9229877c06062605500edded
6
+ metadata.gz: 59f09bf535a7254818879ee7f9e71d95156ba2ad102e08f4c58ec3a930fd432c4220b67171b070d91b8ee7b65a96d8d0580412b8cc145bd77c42deda370de23e
7
+ data.tar.gz: 880758c4c57ef503d6ccb50d8864a02d13ae132ba807b6db0874fac100aac1d9812468fca5d014cf8f9b12db0bf035240584e8ca416a3e6efb226e6caa44a0e4
data/CHANGELOG.md CHANGED
@@ -2,6 +2,16 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [0.60.0] - 2026-10-22
6
+
7
+ ### Performance
8
+
9
+ - Validation with unfinished regex matches running each such match once instead of once per run, and comparing errors across runs in linear time instead of quadratic. [#1784](https://github.com/Stranger6667/jsonschema/issues/1784)
10
+ - `items` and `additionalProperties` looking up a single-keyword subschema once per array or object instead of once per value.
11
+ - `is_valid` and `validate` reading fewer cache lines per subschema, by keeping error locations apart from validators.
12
+ - `is_valid` on recursive schemas caching only `$ref` results that took many steps to compute, instead of every one.
13
+ - Error evaluation paths taking memory linear in the `$ref` nesting depth, not quadratic. [#1778](https://github.com/Stranger6667/jsonschema/issues/1778)
14
+
5
15
  ## [0.59.0] - 2026-10-16
6
16
 
7
17
  ### Fixed
@@ -670,7 +680,8 @@
670
680
 
671
681
  - Initial public release
672
682
 
673
- [Unreleased]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.59.0...HEAD
683
+ [Unreleased]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.60.0...HEAD
684
+ [0.60.0]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.59.0...ruby-v0.60.0
674
685
  [0.59.0]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.58.6...ruby-v0.59.0
675
686
  [0.58.6]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.58.5...ruby-v0.58.6
676
687
  [0.58.5]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.58.4...ruby-v0.58.5
data/Cargo.toml CHANGED
@@ -1,6 +1,6 @@
1
1
  [package]
2
2
  name = "jsonschema-rb"
3
- version = "0.59.0"
3
+ version = "0.60.0"
4
4
  edition = "2021"
5
5
  authors = ["Dmitry Dygalo <dmitry@dygalo.dev>"]
6
6
  license = "MIT"
@@ -14,7 +14,7 @@ crate-type = ["cdylib"]
14
14
 
15
15
  [dependencies]
16
16
  strum = "0.28.0"
17
- jsonschema = { version = "0.59.0", default-features = false, features = ["magnus", "arbitrary-precision", "resolve-http", "resolve-file", "tls-ring", "macros", "idna"] }
17
+ jsonschema = { version = "0.60.0", default-features = false, features = ["magnus", "arbitrary-precision", "resolve-http", "resolve-file", "tls-ring", "macros", "idna"] }
18
18
  magnus = { version = "0.9", features = ["rb-sys"] }
19
19
  rb-sys = "0.9"
20
20
  serde = { workspace = true }
@@ -693,9 +693,9 @@ dependencies = [
693
693
 
694
694
  [[package]]
695
695
  name = "jsonschema"
696
- version = "0.59.0"
696
+ version = "0.60.0"
697
697
  source = "registry+https://github.com/rust-lang/crates.io-index"
698
- checksum = "1b320ad34c177093d21622edc9215bb608294c2333ff296672c0c8265a5ee60c"
698
+ checksum = "7e7305938cac5ee144352ceb71583ffc6cfeac7d20fcb20ef865a4d5c314e499"
699
699
  dependencies = [
700
700
  "ahash",
701
701
  "bytecount",
@@ -727,9 +727,9 @@ dependencies = [
727
727
 
728
728
  [[package]]
729
729
  name = "jsonschema-macros"
730
- version = "0.59.0"
730
+ version = "0.60.0"
731
731
  source = "registry+https://github.com/rust-lang/crates.io-index"
732
- checksum = "d51afbb8ac4451efcb123f2071e007cabb3de0eff1bc2293c8d64259c42ca58c"
732
+ checksum = "d3317cf86d77fe02157600b2119e5b9ad1eff1784f928f886ac109b1e62c724b"
733
733
  dependencies = [
734
734
  "jsonschema-macros-core",
735
735
  "proc-macro2",
@@ -737,9 +737,9 @@ dependencies = [
737
737
 
738
738
  [[package]]
739
739
  name = "jsonschema-macros-core"
740
- version = "0.59.0"
740
+ version = "0.60.0"
741
741
  source = "registry+https://github.com/rust-lang/crates.io-index"
742
- checksum = "f6428834471c2bbb8d3ba2199fb927e504b02879ae8090550470ecbccfd9224a"
742
+ checksum = "cc42605fdff4c9d16e0be653d0527a85e939486f4aa06656e426b3692bb18823"
743
743
  dependencies = [
744
744
  "fancy-regex",
745
745
  "indexmap",
@@ -756,7 +756,7 @@ dependencies = [
756
756
 
757
757
  [[package]]
758
758
  name = "jsonschema-rb-ext"
759
- version = "0.59.0"
759
+ version = "0.60.0"
760
760
  dependencies = [
761
761
  "jsonschema",
762
762
  "magnus",
@@ -770,18 +770,18 @@ dependencies = [
770
770
 
771
771
  [[package]]
772
772
  name = "jsonschema-regex"
773
- version = "0.59.0"
773
+ version = "0.60.0"
774
774
  source = "registry+https://github.com/rust-lang/crates.io-index"
775
- checksum = "1472f7be79026f79e01a9b172263311e829d7c210d57b39cb57037abc0ce0500"
775
+ checksum = "99991ee391af622bda42f01a8727e12fcddbc5ace6f116eef766f060242a36a0"
776
776
  dependencies = [
777
777
  "regex-syntax",
778
778
  ]
779
779
 
780
780
  [[package]]
781
781
  name = "jsonschema-value"
782
- version = "0.59.0"
782
+ version = "0.60.0"
783
783
  source = "registry+https://github.com/rust-lang/crates.io-index"
784
- checksum = "e5a7550a7a84787e715ead0b47e01fa8c6bb7c3413630f91a8f2094c06c2078a"
784
+ checksum = "31581ee58bb3f9a56c0413dd8560d4bdda6b05be0751fa6a533d5b609beb1aae"
785
785
  dependencies = [
786
786
  "ahash",
787
787
  "bytecount",
@@ -1136,9 +1136,9 @@ dependencies = [
1136
1136
 
1137
1137
  [[package]]
1138
1138
  name = "referencing"
1139
- version = "0.59.0"
1139
+ version = "0.60.0"
1140
1140
  source = "registry+https://github.com/rust-lang/crates.io-index"
1141
- checksum = "473f4dcca28ead7ee0f8e5b5d0bbae2549f4fc4c958fb20af328961b6c174be3"
1141
+ checksum = "fd75db0e860de35f9b7fb4b05fe13ba057f2548db080178009067f9ea9751d32"
1142
1142
  dependencies = [
1143
1143
  "ahash",
1144
1144
  "fluent-uri",
@@ -1,6 +1,6 @@
1
1
  [package]
2
2
  name = "jsonschema-rb-ext"
3
- version = "0.59.0"
3
+ version = "0.60.0"
4
4
  edition = "2021"
5
5
  publish = false
6
6
 
@@ -10,10 +10,10 @@ name = "jsonschema_rb"
10
10
  path = "../../src/lib.rs"
11
11
 
12
12
  [dependencies]
13
- jsonschema = { version = "0.59.0", default-features = false, features = ["magnus", "arbitrary-precision", "resolve-http", "resolve-file", "tls-ring", "macros", "idna"] }
13
+ jsonschema = { version = "0.60.0", default-features = false, features = ["magnus", "arbitrary-precision", "resolve-http", "resolve-file", "tls-ring", "macros", "idna"] }
14
14
  magnus = { version = "0.9", features = ["rb-sys"] }
15
15
  rb-sys = "0.9"
16
- referencing = "0.59.0"
16
+ referencing = "0.60.0"
17
17
  serde = { version = "1", features = ["derive"] }
18
18
  serde_json = { version = "1", features = ["arbitrary_precision"] }
19
19
  strum = "0.28.0"
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module JSONSchema
4
- VERSION = "0.59.0"
4
+ VERSION = "0.60.0"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jsonschema_rs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.59.0
4
+ version: 0.60.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dmitry Dygalo
@@ -80,7 +80,7 @@ metadata:
80
80
  homepage_uri: https://github.com/Stranger6667/jsonschema/tree/master/crates/jsonschema-rb
81
81
  source_code_uri: https://github.com/Stranger6667/jsonschema
82
82
  changelog_uri: https://github.com/Stranger6667/jsonschema/blob/master/crates/jsonschema-rb/CHANGELOG.md
83
- documentation_uri: https://github.com/Stranger6667/jsonschema/blob/ruby-v0.59.0/crates/jsonschema-rb/README.md
83
+ documentation_uri: https://github.com/Stranger6667/jsonschema/blob/ruby-v0.60.0/crates/jsonschema-rb/README.md
84
84
  bug_tracker_uri: https://github.com/Stranger6667/jsonschema/issues
85
85
  funding_uri: https://github.com/sponsors/Stranger6667
86
86
  rubygems_mfa_required: 'true'