diff --git a/Cargo.lock b/Cargo.lock index 355797e64..111a119e6 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -113,15 +113,6 @@ version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" -[[package]] -name = "block-buffer" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" -dependencies = [ - "generic-array", -] - [[package]] name = "block-buffer" version = "0.10.4" @@ -219,7 +210,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cf4c2f4e1afd912bc40bfd6fed5d9dc1f288e0ba01bfcc835cc5bc3eb13efe15" dependencies = [ "generic-array", - "rand_core 0.6.4", + "rand_core", "subtle", "zeroize", ] @@ -256,17 +247,32 @@ dependencies = [ [[package]] name = "curve25519-dalek" -version = "3.2.0" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b9fdf9972b2bd6af2d913799d9ebc165ea4d2e65878e329d9c6b372c4491b61" +checksum = "f711ade317dd348950a9910f81c5947e3d8907ebd2b83f76203ff1807e6a2bc2" dependencies = [ - "byteorder", - "digest 0.9.0", - "rand_core 0.5.1", + "cfg-if", + "cpufeatures", + "curve25519-dalek-derive", + "digest", + "fiat-crypto", + "platforms", + "rustc_version", "subtle", "zeroize", ] +[[package]] +name = "curve25519-dalek-derive" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83fdaf97f4804dcebfa5862639bc9ce4121e82140bec2a987ac5140294865b5b" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.18", +] + [[package]] name = "darling" version = "0.20.1" @@ -329,22 +335,13 @@ version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8" -[[package]] -name = "digest" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" -dependencies = [ - "generic-array", -] - [[package]] name = "digest" version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ - "block-buffer 0.10.4", + "block-buffer", "const-oid", "crypto-common", "subtle", @@ -363,33 +360,34 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0997c976637b606099b9985693efa3581e84e41f5c11ba5255f88711058ad428" dependencies = [ "der", - "digest 0.10.7", + "digest", "elliptic-curve", "rfc6979", - "signature 2.1.0", + "signature", "spki", ] [[package]] name = "ed25519" -version = "1.5.3" +version = "2.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91cff35c70bba8a626e3185d8cd48cc11b5437e1a5bcd15b9b5fa3c64b6dfee7" +checksum = "60f6d271ca33075c88028be6f04d502853d63a5ece419d269c15315d4fc1cf1d" dependencies = [ - "signature 1.6.4", + "pkcs8", + "signature", ] [[package]] name = "ed25519-dalek" -version = "1.0.1" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c762bae6dcaf24c4c84667b8579785430908723d5c889f469d76a41d59cc7a9d" +checksum = "7277392b266383ef8396db7fdeb1e77b6c52fed775f5df15bb24f35b72156980" dependencies = [ "curve25519-dalek", "ed25519", - "rand 0.7.3", + "rand_core", "serde", - "sha2 0.9.9", + "sha2", "zeroize", ] @@ -407,12 +405,12 @@ checksum = "968405c8fdc9b3bf4df0a6638858cc0b52462836ab6b1c87377785dd09cf1c0b" dependencies = [ "base16ct", "crypto-bigint", - "digest 0.10.7", + "digest", "ff", "generic-array", "group", "pkcs8", - "rand_core 0.6.4", + "rand_core", "sec1", "subtle", "zeroize", @@ -460,10 +458,16 @@ version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" dependencies = [ - "rand_core 0.6.4", + "rand_core", "subtle", ] +[[package]] +name = "fiat-crypto" +version = "0.1.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e825f6987101665dea6ec934c09ec6d721de7bc1bf92248e1d5810c8cd636b77" + [[package]] name = "fnv" version = "1.0.7" @@ -481,17 +485,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "getrandom" -version = "0.1.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce" -dependencies = [ - "cfg-if", - "libc", - "wasi 0.9.0+wasi-snapshot-preview1", -] - [[package]] name = "getrandom" version = "0.2.10" @@ -501,7 +494,7 @@ dependencies = [ "cfg-if", "js-sys", "libc", - "wasi 0.11.0+wasi-snapshot-preview1", + "wasi", "wasm-bindgen", ] @@ -518,7 +511,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" dependencies = [ "ff", - "rand_core 0.6.4", + "rand_core", "subtle", ] @@ -549,7 +542,7 @@ version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" dependencies = [ - "digest 0.10.7", + "digest", ] [[package]] @@ -652,8 +645,8 @@ dependencies = [ "ecdsa", "elliptic-curve", "once_cell", - "sha2 0.10.7", - "signature 2.1.0", + "sha2", + "signature", ] [[package]] @@ -723,13 +716,13 @@ dependencies = [ [[package]] name = "num-derive" -version = "0.3.3" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d" +checksum = "9e6a0fd4f737c707bd9086cc16c925f294943eb62eb71499e9fd4cf71f8b9f4e" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.18", ] [[package]] @@ -767,12 +760,6 @@ version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" -[[package]] -name = "opaque-debug" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" - [[package]] name = "output_vt100" version = "0.1.3" @@ -798,6 +785,12 @@ dependencies = [ "spki", ] +[[package]] +name = "platforms" +version = "3.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3d7ddaed09e0eb771a79ab0fd64609ba0afb0a8366421957936ad14cbd13630" + [[package]] name = "ppv-lite86" version = "0.2.17" @@ -846,8 +839,8 @@ dependencies = [ "byteorder", "lazy_static", "num-traits", - "rand 0.8.5", - "rand_chacha 0.3.1", + "rand", + "rand_chacha", "rand_xorshift", "regex-syntax", "rusty-fork", @@ -880,19 +873,6 @@ dependencies = [ "proc-macro2", ] -[[package]] -name = "rand" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" -dependencies = [ - "getrandom 0.1.16", - "libc", - "rand_chacha 0.2.2", - "rand_core 0.5.1", - "rand_hc", -] - [[package]] name = "rand" version = "0.8.5" @@ -900,18 +880,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" dependencies = [ "libc", - "rand_chacha 0.3.1", - "rand_core 0.6.4", -] - -[[package]] -name = "rand_chacha" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" -dependencies = [ - "ppv-lite86", - "rand_core 0.5.1", + "rand_chacha", + "rand_core", ] [[package]] @@ -921,16 +891,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" dependencies = [ "ppv-lite86", - "rand_core 0.6.4", -] - -[[package]] -name = "rand_core" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" -dependencies = [ - "getrandom 0.1.16", + "rand_core", ] [[package]] @@ -939,16 +900,7 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom 0.2.10", -] - -[[package]] -name = "rand_hc" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" -dependencies = [ - "rand_core 0.5.1", + "getrandom", ] [[package]] @@ -957,7 +909,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" dependencies = [ - "rand_core 0.6.4", + "rand_core", ] [[package]] @@ -1111,19 +1063,6 @@ dependencies = [ "syn 2.0.18", ] -[[package]] -name = "sha2" -version = "0.9.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" -dependencies = [ - "block-buffer 0.9.0", - "cfg-if", - "cpufeatures", - "digest 0.9.0", - "opaque-debug", -] - [[package]] name = "sha2" version = "0.10.7" @@ -1132,7 +1071,7 @@ checksum = "479fb9d862239e610720565ca91403019f2f00410f1864c5aa7479b950a76ed8" dependencies = [ "cfg-if", "cpufeatures", - "digest 0.10.7", + "digest", ] [[package]] @@ -1141,24 +1080,18 @@ version = "0.10.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" dependencies = [ - "digest 0.10.7", + "digest", "keccak", ] -[[package]] -name = "signature" -version = "1.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c" - [[package]] name = "signature" version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e1788eed21689f9cf370582dfc467ef36ed9c707f073528ddafa8d83e3b8500" dependencies = [ - "digest 0.10.7", - "rand_core 0.6.4", + "digest", + "rand_core", ] [[package]] @@ -1170,13 +1103,12 @@ checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0" [[package]] name = "soroban-env-common" version = "0.0.17" -source = "git+https://github.com/stellar/rs-soroban-env?rev=048be90e10dfda6486141f96ea86e32fb91681f4#048be90e10dfda6486141f96ea86e32fb91681f4" +source = "git+https://github.com/stellar/rs-soroban-env?rev=d92944576e2301c9866215efcdc4bbd24a5f3981#d92944576e2301c9866215efcdc4bbd24a5f3981" dependencies = [ "arbitrary", "crate-git-revision", "ethnum", "num-derive", - "num-integer", "num-traits", "serde", "soroban-env-macros", @@ -1188,7 +1120,7 @@ dependencies = [ [[package]] name = "soroban-env-guest" version = "0.0.17" -source = "git+https://github.com/stellar/rs-soroban-env?rev=048be90e10dfda6486141f96ea86e32fb91681f4#048be90e10dfda6486141f96ea86e32fb91681f4" +source = "git+https://github.com/stellar/rs-soroban-env?rev=d92944576e2301c9866215efcdc4bbd24a5f3981#d92944576e2301c9866215efcdc4bbd24a5f3981" dependencies = [ "soroban-env-common", "static_assertions", @@ -1197,21 +1129,21 @@ dependencies = [ [[package]] name = "soroban-env-host" version = "0.0.17" -source = "git+https://github.com/stellar/rs-soroban-env?rev=048be90e10dfda6486141f96ea86e32fb91681f4#048be90e10dfda6486141f96ea86e32fb91681f4" +source = "git+https://github.com/stellar/rs-soroban-env?rev=d92944576e2301c9866215efcdc4bbd24a5f3981#d92944576e2301c9866215efcdc4bbd24a5f3981" dependencies = [ "backtrace", "curve25519-dalek", "ed25519-dalek", - "getrandom 0.2.10", + "getrandom", "hex", "k256", "log", "num-derive", "num-integer", "num-traits", - "rand 0.7.3", - "rand_chacha 0.2.2", - "sha2 0.9.9", + "rand", + "rand_chacha", + "sha2", "sha3", "soroban-env-common", "soroban-native-sdk-macros", @@ -1223,7 +1155,7 @@ dependencies = [ [[package]] name = "soroban-env-macros" version = "0.0.17" -source = "git+https://github.com/stellar/rs-soroban-env?rev=048be90e10dfda6486141f96ea86e32fb91681f4#048be90e10dfda6486141f96ea86e32fb91681f4" +source = "git+https://github.com/stellar/rs-soroban-env?rev=d92944576e2301c9866215efcdc4bbd24a5f3981#d92944576e2301c9866215efcdc4bbd24a5f3981" dependencies = [ "itertools", "proc-macro2", @@ -1232,7 +1164,6 @@ dependencies = [ "serde_json", "stellar-xdr", "syn 2.0.18", - "thiserror", ] [[package]] @@ -1250,7 +1181,7 @@ dependencies = [ [[package]] name = "soroban-native-sdk-macros" version = "0.0.17" -source = "git+https://github.com/stellar/rs-soroban-env?rev=048be90e10dfda6486141f96ea86e32fb91681f4#048be90e10dfda6486141f96ea86e32fb91681f4" +source = "git+https://github.com/stellar/rs-soroban-env?rev=d92944576e2301c9866215efcdc4bbd24a5f3981#d92944576e2301c9866215efcdc4bbd24a5f3981" dependencies = [ "itertools", "proc-macro2", @@ -1269,7 +1200,7 @@ dependencies = [ "hex", "proptest", "proptest-arbitrary-interop", - "rand 0.7.3", + "rand", "soroban-env-guest", "soroban-env-host", "soroban-ledger-snapshot", @@ -1289,7 +1220,7 @@ dependencies = [ "proc-macro2", "quote", "rustc_version", - "sha2 0.9.9", + "sha2", "soroban-env-common", "soroban-spec", "soroban-spec-rust", @@ -1316,7 +1247,7 @@ dependencies = [ "prettyplease", "proc-macro2", "quote", - "sha2 0.9.9", + "sha2", "soroban-spec", "stellar-xdr", "syn 2.0.18", @@ -1626,12 +1557,6 @@ dependencies = [ "libc", ] -[[package]] -name = "wasi" -version = "0.9.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" - [[package]] name = "wasi" version = "0.11.0+wasi-snapshot-preview1" @@ -1834,17 +1759,3 @@ name = "zeroize" version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2a0956f1ba7c7909bfb66c2e9e4124ab6f6482560f6628b5aaeba39207c9aad9" -dependencies = [ - "zeroize_derive", -] - -[[package]] -name = "zeroize_derive" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.18", -] diff --git a/Cargo.toml b/Cargo.toml index f289a7c8f..9279aff14 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -40,17 +40,17 @@ soroban-token-sdk = { version = "0.9.2", path = "soroban-token-sdk" } [workspace.dependencies.soroban-env-common] version = "0.0.17" git = "https://github.com/stellar/rs-soroban-env" -rev = "048be90e10dfda6486141f96ea86e32fb91681f4" +rev = "d92944576e2301c9866215efcdc4bbd24a5f3981" [workspace.dependencies.soroban-env-guest] version = "0.0.17" git = "https://github.com/stellar/rs-soroban-env" -rev = "048be90e10dfda6486141f96ea86e32fb91681f4" +rev = "d92944576e2301c9866215efcdc4bbd24a5f3981" [workspace.dependencies.soroban-env-host] version = "0.0.17" git = "https://github.com/stellar/rs-soroban-env" -rev = "048be90e10dfda6486141f96ea86e32fb91681f4" +rev = "d92944576e2301c9866215efcdc4bbd24a5f3981" [workspace.dependencies.stellar-strkey] version = "0.0.7" diff --git a/deny.toml b/deny.toml index b095aa443..e99e39f1e 100644 --- a/deny.toml +++ b/deny.toml @@ -39,11 +39,6 @@ targets = [ # (https://doc.rust-lang.org/cargo/reference/pkgid-spec.html) exclude = [ - # for the time being some metaprogramming crates haven't updated to syn 2. The - # only way to deal with these is to prune them from the tree. - "derive_arbitrary", - "num-derive", - ] # If true, metadata will be collected with `--all-features`. Note that this can't @@ -117,7 +112,7 @@ allow = [ "BSD-3-Clause", "Apache-2.0 WITH LLVM-exception", "Unicode-DFS-2016", - "MPL-2.0" + # "MPL-2.0" ] # List of explicitly disallowed licenses # See https://spdx.org/licenses/ for list of possible licenses @@ -249,28 +244,12 @@ deny = [ # Certain crates/versions that will be skipped when doing duplicate detection. skip = [ #{ name = "ansi_term", version = "=0.11.0" }, - - # ed25519-dalek and proptest have conflicting rand deps, - # where ed25519-dalek is on an older revision. - # proptest is only used as a dev-dependency, - # so this conflict should not cause extra bloat to contracts. - # Below are the newer version numbers required by proptest. - { name = "rand", version = "0.8" }, - { name = "rand_chacha", version = "0.3" }, ] # Similarly to `skip` allows you to skip certain crates during duplicate # detection. Unlike skip, it also includes the entire tree of transitive # dependencies starting at the specified crate, up to a certain depth, which is # by default infinite. skip-tree = [ - # while we're waiting for dalek to go to 2.0 we have - # duplicates of a whole lot of ECC dependencies due - # to k256 - { name = "block-buffer", version = "=0.9.0" }, - { name = "sha2", version = "=0.9.9" }, - { name = "signature", version = "=1.6.4" }, - { name = "rand_core", version = "=0.5.1"}, - { name = "digest", version = "=0.9.0" } ] # This section is considered when running `cargo deny check sources`. diff --git a/soroban-sdk-macros/Cargo.toml b/soroban-sdk-macros/Cargo.toml index bf0385805..e3285c235 100644 --- a/soroban-sdk-macros/Cargo.toml +++ b/soroban-sdk-macros/Cargo.toml @@ -28,7 +28,7 @@ quote = "1.0" proc-macro2 = "1.0" itertools = "0.10.3" darling = "0.20.0" -sha2 = "0.9.9" +sha2 = "0.10.7" [features] testutils = [] diff --git a/soroban-sdk/Cargo.toml b/soroban-sdk/Cargo.toml index 901c34f89..8e6e87cd6 100644 --- a/soroban-sdk/Cargo.toml +++ b/soroban-sdk/Cargo.toml @@ -24,10 +24,10 @@ soroban-env-guest = { workspace = true } soroban-env-host = { workspace = true, features = [] } soroban-ledger-snapshot = { workspace = true } stellar-strkey = { workspace = true } -arbitrary = { version = "1.1.3", features = ["derive"], optional = true } -ed25519-dalek = { version = "1.0.1", optional = true } +arbitrary = { version = "1.3.0", features = ["derive"], optional = true } +ed25519-dalek = { version = "2.0.0", features = ["rand_core"], optional = true } # match the version of rand used in dalek -rand = "0.7.3" +rand = "0.8.5" ctor = { version = "0.2.1", optional = true } [dev-dependencies] @@ -35,11 +35,11 @@ soroban-sdk-macros = { workspace = true, features = ["testutils"] } soroban-env-host = { workspace = true, features = ["testutils"] } stellar-xdr = { workspace = true, features = ["next", "std"] } soroban-spec = { workspace = true } -ed25519-dalek = "1.0.1" -rand = "0.7.3" +ed25519-dalek = "2.0.0" +rand = "0.8.5" ctor = "0.2.1" hex = "0.4.3" -arbitrary = { version = "1.1.3", features = ["derive"] } +arbitrary = { version = "1.3.0", features = ["derive"] } proptest = "1.2.0" proptest-arbitrary-interop = "0.1.0" diff --git a/soroban-spec-rust/Cargo.toml b/soroban-spec-rust/Cargo.toml index 92bf48e86..45390cfe9 100644 --- a/soroban-spec-rust/Cargo.toml +++ b/soroban-spec-rust/Cargo.toml @@ -17,7 +17,7 @@ thiserror = "1.0.32" syn = {version="2.0",features=["full"]} quote = "1.0" proc-macro2 = "1.0" -sha2 = "0.9.9" +sha2 = "0.10.7" prettyplease = "0.2.4" [dev_dependencies]