jsonschema_rs 0.59.0 → 0.60.1
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 +24 -1
- data/Cargo.toml +2 -2
- data/ext/jsonschema/Cargo.lock +14 -13
- data/ext/jsonschema/Cargo.toml +3 -3
- data/lib/jsonschema/version.rb +1 -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: 78c7f32b92eafb10071df6778cf5b7880761225d0a06d9a5cdf4ce28e8338bc0
|
|
4
|
+
data.tar.gz: b287cf7f7c8ddceb2b2740b684ecc05cfb96c3a69cd1613390cd143f7c5c5bfa
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 8412cd40a9cdfc850ceead36f4d4fb9778529d13443ad77d3cc83c1258e041a0c014becc58e895b8eef49c3dfed56a4c293468bc6efb181850fad9e3f6bc8c1e
|
|
7
|
+
data.tar.gz: 35a8d3d3ceed145d2c7fd6aee64e5b293fc15b8563e3bbf6b0d2bc0c5ccececf35b0e84c690f519958c0bfc10ae84e4fbc3448d9ea55ef9b1fe05cce63053fe1
|
data/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,27 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## [0.60.1] - 2026-10-24
|
|
6
|
+
|
|
7
|
+
### Fixed
|
|
8
|
+
|
|
9
|
+
- Wrong results in `type: integer`, `const`, `enum`, `uniqueItems`, `multipleOf`, `minimum`, `maximum`, `exclusiveMinimum` and `exclusiveMaximum` for numbers with exponents past one million, such as `1e-2000000`.
|
|
10
|
+
|
|
11
|
+
### Performance
|
|
12
|
+
|
|
13
|
+
- Validation of numbers with many digits or large exponents in `const`, `enum`, `uniqueItems`, `type: integer`, `multipleOf`, `minimum`, `maximum`, `exclusiveMinimum` and `exclusiveMaximum` taking time growing faster than the square of the digit count, instead of at most the square.
|
|
14
|
+
- Validation of numbers with more than ten thousand digits, written or implied by their exponent, taking time linear in their written length instead of quadratic in their digit count.
|
|
15
|
+
|
|
16
|
+
## [0.60.0] - 2026-10-22
|
|
17
|
+
|
|
18
|
+
### Performance
|
|
19
|
+
|
|
20
|
+
- 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)
|
|
21
|
+
- `items` and `additionalProperties` looking up a single-keyword subschema once per array or object instead of once per value.
|
|
22
|
+
- `is_valid` and `validate` reading fewer cache lines per subschema, by keeping error locations apart from validators.
|
|
23
|
+
- `is_valid` on recursive schemas caching only `$ref` results that took many steps to compute, instead of every one.
|
|
24
|
+
- Error evaluation paths taking memory linear in the `$ref` nesting depth, not quadratic. [#1778](https://github.com/Stranger6667/jsonschema/issues/1778)
|
|
25
|
+
|
|
5
26
|
## [0.59.0] - 2026-10-16
|
|
6
27
|
|
|
7
28
|
### Fixed
|
|
@@ -670,7 +691,9 @@
|
|
|
670
691
|
|
|
671
692
|
- Initial public release
|
|
672
693
|
|
|
673
|
-
[Unreleased]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.
|
|
694
|
+
[Unreleased]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.60.1...HEAD
|
|
695
|
+
[0.60.1]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.60.0...ruby-v0.60.1
|
|
696
|
+
[0.60.0]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.59.0...ruby-v0.60.0
|
|
674
697
|
[0.59.0]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.58.6...ruby-v0.59.0
|
|
675
698
|
[0.58.6]: https://github.com/Stranger6667/jsonschema/compare/ruby-v0.58.5...ruby-v0.58.6
|
|
676
699
|
[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.
|
|
3
|
+
version = "0.60.1"
|
|
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.
|
|
17
|
+
jsonschema = { version = "0.60.1", 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 }
|
data/ext/jsonschema/Cargo.lock
CHANGED
|
@@ -693,9 +693,9 @@ dependencies = [
|
|
|
693
693
|
|
|
694
694
|
[[package]]
|
|
695
695
|
name = "jsonschema"
|
|
696
|
-
version = "0.
|
|
696
|
+
version = "0.60.1"
|
|
697
697
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
698
|
-
checksum = "
|
|
698
|
+
checksum = "65de752665c4a06528af6759955eecf60ba73ae7442d35349963a09c8031cd71"
|
|
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.
|
|
730
|
+
version = "0.60.1"
|
|
731
731
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
732
|
-
checksum = "
|
|
732
|
+
checksum = "cdff476d114a63256d073bc6e9eb272cc0bf361ab2851a0c7126d4c5df094be4"
|
|
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.
|
|
740
|
+
version = "0.60.1"
|
|
741
741
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
742
|
-
checksum = "
|
|
742
|
+
checksum = "46226bcac3338786466c9221b536397618e6e35f2330862df57c080e4dd5a4cb"
|
|
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.
|
|
759
|
+
version = "0.60.1"
|
|
760
760
|
dependencies = [
|
|
761
761
|
"jsonschema",
|
|
762
762
|
"magnus",
|
|
@@ -770,24 +770,25 @@ dependencies = [
|
|
|
770
770
|
|
|
771
771
|
[[package]]
|
|
772
772
|
name = "jsonschema-regex"
|
|
773
|
-
version = "0.
|
|
773
|
+
version = "0.60.1"
|
|
774
774
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
775
|
-
checksum = "
|
|
775
|
+
checksum = "6f8a848331614144c03e815fb931f238c9e342bd7ab501b29e35d647e7cd5688"
|
|
776
776
|
dependencies = [
|
|
777
777
|
"regex-syntax",
|
|
778
778
|
]
|
|
779
779
|
|
|
780
780
|
[[package]]
|
|
781
781
|
name = "jsonschema-value"
|
|
782
|
-
version = "0.
|
|
782
|
+
version = "0.60.1"
|
|
783
783
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
784
|
-
checksum = "
|
|
784
|
+
checksum = "5a5a947ef798eeacacb43edf29b1d0ab64bdf5e2c9fbcaad10ee8663d922b544"
|
|
785
785
|
dependencies = [
|
|
786
786
|
"ahash",
|
|
787
787
|
"bytecount",
|
|
788
788
|
"fraction",
|
|
789
789
|
"getrandom 0.3.4",
|
|
790
790
|
"magnus",
|
|
791
|
+
"memchr",
|
|
791
792
|
"num-bigint",
|
|
792
793
|
"num-cmp",
|
|
793
794
|
"num-traits",
|
|
@@ -1136,9 +1137,9 @@ dependencies = [
|
|
|
1136
1137
|
|
|
1137
1138
|
[[package]]
|
|
1138
1139
|
name = "referencing"
|
|
1139
|
-
version = "0.
|
|
1140
|
+
version = "0.60.1"
|
|
1140
1141
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1141
|
-
checksum = "
|
|
1142
|
+
checksum = "922268812b6f9e20b4ab0f1efe8e07036958eed7346ceddb31c777b5531fd11f"
|
|
1142
1143
|
dependencies = [
|
|
1143
1144
|
"ahash",
|
|
1144
1145
|
"fluent-uri",
|
data/ext/jsonschema/Cargo.toml
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[package]
|
|
2
2
|
name = "jsonschema-rb-ext"
|
|
3
|
-
version = "0.
|
|
3
|
+
version = "0.60.1"
|
|
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.
|
|
13
|
+
jsonschema = { version = "0.60.1", 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.
|
|
16
|
+
referencing = "0.60.1"
|
|
17
17
|
serde = { version = "1", features = ["derive"] }
|
|
18
18
|
serde_json = { version = "1", features = ["arbitrary_precision"] }
|
|
19
19
|
strum = "0.28.0"
|
data/lib/jsonschema/version.rb
CHANGED
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.
|
|
4
|
+
version: 0.60.1
|
|
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.
|
|
83
|
+
documentation_uri: https://github.com/Stranger6667/jsonschema/blob/ruby-v0.60.1/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'
|