From 6a774475df5569afe1db464d92dda0dbe85a45f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adam=20Chuda=C5=9B?= Date: Thu, 7 Dec 2023 15:52:37 +0100 Subject: [PATCH] Test Wallet Contract --- Cargo.lock | 3006 ++++++++++------- Cargo.toml | 4 + integration-tests/Cargo.toml | 1 + .../tests/client/features/delegate_action.rs | 79 +- .../src/tests/standard_cases/mod.rs | 2 +- .../src/tests/standard_cases/runtime.rs | 4 +- .../lib/compiler-test-derive/src/lib.rs.orig | 3 - runtime/near-wallet-contract/Cargo.toml | 2 +- runtime/near-wallet-contract/LICENSE-APACHE | 1 - runtime/near-wallet-contract/LICENSE-MIT | 1 - runtime/near-wallet-contract/build.rs | 8 +- .../res/nightly_wallet_contract.wasm | Bin 84755 -> 347351 bytes .../res/wallet_contract.wasm | Bin 84755 -> 346523 bytes .../wallet-contract/Cargo.lock | 11 + .../wallet-contract/Cargo.toml | 37 +- .../wallet-contract/src/lib.rs | 44 +- runtime/runtime/src/actions.rs | 2 +- .../fuzz_targets_disabled/runtime_fuzzer.rs | 2 +- 18 files changed, 1936 insertions(+), 1271 deletions(-) delete mode 120000 runtime/near-wallet-contract/LICENSE-APACHE delete mode 120000 runtime/near-wallet-contract/LICENSE-MIT diff --git a/Cargo.lock b/Cargo.lock index 1f6a78552dd..baa770dc4c8 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2,15 +2,22 @@ # It is not intended for manual editing. version = 3 +[[package]] +name = "Inflector" +version = "0.11.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe438c63458706e03479442743baae6c88256498e6431708f6dfc520a26515d3" + [[package]] name = "actix" -version = "0.13.0" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f728064aca1c318585bf4bb04ffcfac9e75e508ab4e8b1bd9ba5dfe04e2cbed5" +checksum = "cba56612922b907719d4a01cf11c8d5b458e7d3dba946d0435f20f58d6795ed2" dependencies = [ + "actix-macros", "actix-rt", "actix_derive", - "bitflags 1.3.2", + "bitflags 2.4.1", "bytes", "crossbeam-channel", "futures-core", @@ -23,31 +30,31 @@ dependencies = [ "pin-project-lite", "smallvec", "tokio", - "tokio-util 0.7.2", + "tokio-util 0.7.10", ] [[package]] name = "actix-codec" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57a7559404a7f3573127aab53c08ce37a6c6a315c374a31070f3c91cd1b4a7fe" +checksum = "617a8268e3537fe1d8c9ead925fca49ef6400927ee7bc26750e90ecee14ce4b8" dependencies = [ "bitflags 1.3.2", "bytes", "futures-core", "futures-sink", - "log", "memchr", "pin-project-lite", "tokio", - "tokio-util 0.7.2", + "tokio-util 0.7.10", + "tracing", ] [[package]] name = "actix-cors" -version = "0.6.1" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "414360eed71ba2d5435b185ba43ecbe281dfab5df3898286d6b7be8074372c92" +checksum = "0346d8c1f762b41b458ed3145eea914966bb9ad20b9be0d6d463b20d45586370" dependencies = [ "actix-utils", "actix-web", @@ -60,17 +67,17 @@ dependencies = [ [[package]] name = "actix-http" -version = "3.3.1" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2079246596c18b4a33e274ae10c0e50613f4d32a4198e09c7b93771013fed74" +checksum = "a92ef85799cba03f76e4f7c10f533e66d87c9a7e7055f3391f09000ad8351bc9" dependencies = [ "actix-codec", "actix-rt", "actix-service", "actix-utils", "ahash 0.8.6", - "base64 0.21.0", - "bitflags 1.3.2", + "base64 0.21.5", + "bitflags 2.4.1", "brotli", "bytes", "bytestring", @@ -92,40 +99,39 @@ dependencies = [ "sha1", "smallvec", "tokio", - "tokio-util 0.7.2", + "tokio-util 0.7.10", "tracing", "zstd", ] [[package]] name = "actix-macros" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "465a6172cf69b960917811022d8f29bc0b7fa1398bc4f78b3c466673db1213b6" +checksum = "e01ed3140b2f8d422c68afa1ed2e85d996ea619c988ac834d255db32138655cb" dependencies = [ "quote", - "syn 1.0.103", + "syn 2.0.39", ] [[package]] name = "actix-router" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb60846b52c118f2f04a56cc90880a274271c489b2498623d58176f8ca21fa80" +checksum = "d66ff4d247d2b160861fa2866457e85706833527840e4133f8f49aa423a38799" dependencies = [ "bytestring", - "firestorm", "http", - "log", "regex", "serde", + "tracing", ] [[package]] name = "actix-rt" -version = "2.7.0" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ea16c295198e958ef31930a6ef37d0fb64e9ca3b6116e6b93a8bdae96ee1000" +checksum = "28f32d40287d3f402ae0028a9d54bef51af15c8769492826a69d28f81893151d" dependencies = [ "actix-macros", "futures-core", @@ -134,9 +140,9 @@ dependencies = [ [[package]] name = "actix-server" -version = "2.1.1" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0da34f8e659ea1b077bb4637948b815cd3768ad5a188fdcd74ff4d84240cd824" +checksum = "3eb13e7eef0423ea6eab0e59f6c72e7cb46d33691ad56a726b3cd07ddec2c2d4" dependencies = [ "actix-rt", "actix-service", @@ -144,8 +150,7 @@ dependencies = [ "futures-core", "futures-util", "mio", - "num_cpus", - "socket2", + "socket2 0.5.5", "tokio", "tracing", ] @@ -163,28 +168,31 @@ dependencies = [ [[package]] name = "actix-tls" -version = "3.0.3" +version = "3.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fde0cf292f7cdc7f070803cb9a0d45c018441321a78b1042ffbbb81ec333297" +checksum = "72616e7fbec0aa99c6f3164677fa48ff5a60036d0799c98cab894a44f3e0efc3" dependencies = [ - "actix-codec", "actix-rt", "actix-service", "actix-utils", "futures-core", "http", - "log", + "impl-more", "openssl", "pin-project-lite", + "rustls", + "rustls-webpki", + "tokio", "tokio-openssl", - "tokio-util 0.7.2", + "tokio-util 0.7.10", + "tracing", ] [[package]] name = "actix-utils" -version = "3.0.0" +version = "3.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e491cbaac2e7fc788dfff99ff48ef317e23b3cf63dbaf7aaab6418f40f92aa94" +checksum = "88a1dcdff1466e3c2488e1cb5c36a71822750ad43839937f85d2f4d9f8b705d8" dependencies = [ "local-waker", "pin-project-lite", @@ -192,9 +200,9 @@ dependencies = [ [[package]] name = "actix-web" -version = "4.1.0" +version = "4.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a27e8fe9ba4ae613c21f677c2cfaf0696c3744030c6f485b34634e502d6bb379" +checksum = "0e4a5b5e29603ca8c94a77c65cf874718ceb60292c5a5c3e5f4ace041af462b9" dependencies = [ "actix-codec", "actix-http", @@ -205,7 +213,7 @@ dependencies = [ "actix-service", "actix-utils", "actix-web-codegen", - "ahash 0.7.7", + "ahash 0.8.6", "bytes", "bytestring", "cfg-if 1.0.0", @@ -225,41 +233,32 @@ dependencies = [ "serde_json", "serde_urlencoded", "smallvec", - "socket2", + "socket2 0.5.5", "time", "url", ] [[package]] name = "actix-web-codegen" -version = "4.0.0" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7525bedf54704abb1d469e88d7e7e9226df73778798a69cea5022d53b2ae91bc" +checksum = "eb1f50ebbb30eca122b188319a4398b3f7bb4a8cdf50ecfb73bfc6a3c3ce54f5" dependencies = [ "actix-router", "proc-macro2", "quote", - "syn 1.0.103", + "syn 2.0.39", ] [[package]] name = "actix_derive" -version = "0.6.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d44b8fee1ced9671ba043476deddef739dd0959bf77030b26b738cc591737a7" +checksum = "7c7db3d5a9718568e4cf4a537cfd7070e6e6ff7481510d0237fb529ac850f6d3" dependencies = [ "proc-macro2", "quote", - "syn 1.0.103", -] - -[[package]] -name = "addr2line" -version = "0.19.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a76fd60b23679b7d19bd066031410fb7e458ccc5e958eb5c325888ce4baedc97" -dependencies = [ - "gimli 0.27.2", + "syn 2.0.39", ] [[package]] @@ -268,7 +267,7 @@ version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" dependencies = [ - "gimli 0.28.0", + "gimli", ] [[package]] @@ -283,7 +282,7 @@ version = "0.7.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a824f2aa7e75a0c98c5a504fceb80649e9c35265d44525b5f94de4771a395cd" dependencies = [ - "getrandom 0.2.9", + "getrandom 0.2.11", "once_cell", "version_check", ] @@ -295,7 +294,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "91429305e9f0a25f6205c5b8e0d2db09e0708a7a6df0f42212bb56c32c8ac97a" dependencies = [ "cfg-if 1.0.0", - "getrandom 0.2.9", + "getrandom 0.2.11", "once_cell", "version_check", "zerocopy", @@ -303,24 +302,24 @@ dependencies = [ [[package]] name = "aho-corasick" -version = "0.7.18" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e37cfd5e7657ada45f742d6e99ca5788580b5c529dc78faf11ece6dc702656f" +checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0" dependencies = [ "memchr", ] [[package]] name = "alloc-no-stdlib" -version = "2.0.3" +version = "2.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35ef4730490ad1c4eae5c4325b2a95f521d023e5c885853ff7aca0a6a1631db3" +checksum = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3" [[package]] name = "alloc-stdlib" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "697ed7edc0f1711de49ce108c541623a0af97c6c60b2f6e2b65229847ac843c2" +checksum = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece" dependencies = [ "alloc-no-stdlib", ] @@ -354,79 +353,78 @@ checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299" [[package]] name = "anstream" -version = "0.3.1" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6342bd4f5a1205d7f41e94a41a901f5647c938cdfa96036338e8533c9d6c2450" +checksum = "2ab91ebe16eb252986481c5b62f6098f3b698a45e34b5b98200cf20dd2484a44" dependencies = [ "anstyle", "anstyle-parse", "anstyle-query", "anstyle-wincon", "colorchoice", - "is-terminal", "utf8parse", ] [[package]] name = "anstyle" -version = "1.0.0" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41ed9a86bf92ae6580e0a31281f65a1b1d867c0cc68d5346e2ae128dddfa6a7d" +checksum = "7079075b41f533b8c61d2a4d073c4676e1f8b249ff94a393b0595db304e0dd87" [[package]] name = "anstyle-parse" -version = "0.2.0" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e765fd216e48e067936442276d1d57399e37bce53c264d6fefbe298080cb57ee" +checksum = "c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c" dependencies = [ "utf8parse", ] [[package]] name = "anstyle-query" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b" +checksum = "a3a318f1f38d2418400f8209655bfd825785afd25aa30bb7ba6cc792e4596748" dependencies = [ - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] name = "anstyle-wincon" -version = "1.0.1" +version = "3.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "180abfa45703aebe0093f79badacc01b8fd4ea2e35118747e5811127f926e188" +checksum = "1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7" dependencies = [ "anstyle", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] name = "anyhow" -version = "1.0.62" +version = "1.0.75" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1485d4d2cc45e7b201ee3767015c96faa5904387c9d87c6efdd0fb511f12d305" +checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6" [[package]] name = "arbitrary" -version = "1.3.0" +version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2d098ff73c1ca148721f37baad5ea6a465a13f9573aba8641fbbbae8164a54e" +checksum = "7d5a26814d8dcb93b0e5a0ff3c6d80a8843bafb21b39e8e18a6f05471870e110" dependencies = [ "derive_arbitrary", ] [[package]] name = "arc-swap" -version = "1.5.0" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5d78ce20460b82d3fa150275ed9d55e21064fc7951177baacf86a145c4a4b1f" +checksum = "bddcadddf5e9015d310179a59bb28c4d4b9920ad0f11e8e14dbadf654890c9a6" [[package]] name = "arrayref" -version = "0.3.6" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4c527152e37cf757a3f78aae5a06fbeefdb07ccc535c980a3208ee3060dd544" +checksum = "6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545" [[package]] name = "arrayvec" @@ -434,6 +432,12 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" +[[package]] +name = "arrayvec" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" + [[package]] name = "assert_matches" version = "1.5.0" @@ -442,13 +446,13 @@ checksum = "9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9" [[package]] name = "async-recursion" -version = "1.0.4" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e97ce7de6cf12de5d7226c73f5ba9811622f4db3a5b91b55c53e987e5f91cba" +checksum = "5fd55a5ba1179988837d24ab4c7cc8ed6efdeff578ede0416b4225a5fca35bd0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.39", ] [[package]] @@ -470,18 +474,18 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.39", ] [[package]] name = "async-trait" -version = "0.1.68" +version = "0.1.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9ccdd8f2a161be9bd5c023df56f1b2a0bd1d83872ae53b71a84a12c9bf6e842" +checksum = "a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.39", ] [[package]] @@ -508,9 +512,9 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" [[package]] name = "awc" -version = "3.1.1" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87ef547a81796eb2dfe9b345aba34c2e08391a0502493711395b36dd64052b69" +checksum = "7fa3c705a9c7917ac0f41c0757a0a747b43bbc29b0b364b081bd7c5fc67fb223" dependencies = [ "actix-codec", "actix-http", @@ -518,8 +522,7 @@ dependencies = [ "actix-service", "actix-tls", "actix-utils", - "ahash 0.7.7", - "base64 0.21.0", + "base64 0.21.5", "bytes", "cfg-if 1.0.0", "cookie", @@ -559,28 +562,34 @@ dependencies = [ [[package]] name = "aws-region" -version = "0.25.1" +version = "0.25.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f92a8af5850d0ea0916ca3e015ab86951ded0bf4b70fd27896e81ae1dfb0af37" +checksum = "42fed2b9fca70f2908268d057a607f2a906f47edbf856ea8587de9038d264e22" dependencies = [ "thiserror", ] [[package]] name = "backtrace" -version = "0.3.67" +version = "0.3.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "233d376d6d185f2a3093e58f283f60f880315b6c60075b01f36b3b85154564ca" +checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" dependencies = [ - "addr2line 0.19.0", + "addr2line", "cc", "cfg-if 1.0.0", "libc", - "miniz_oxide 0.6.2", - "object 0.30.4", + "miniz_oxide", + "object", "rustc-demangle", ] +[[package]] +name = "base64" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b41b7ea54a0c9d92199de89e20e58d49f02f8e699814ef3fdf266f6f748d15c7" + [[package]] name = "base64" version = "0.12.3" @@ -589,21 +598,21 @@ checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff" [[package]] name = "base64" -version = "0.13.0" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd" +checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" [[package]] name = "base64" -version = "0.21.0" +version = "0.21.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4a4ddaa51a5bc52a6948f74c06d20aaaddb71924eab79b8c97a8c556e942d6a" +checksum = "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9" [[package]] name = "basic-toml" -version = "0.1.2" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c0de75129aa8d0cceaf750b89013f0e08804d6ec61416da787b35ad0d7cddf1" +checksum = "2f2139706359229bfa8f19142ac1155b4b80beafb7a60471ac5dd109d4a19778" dependencies = [ "serde", ] @@ -641,7 +650,7 @@ dependencies = [ "regex", "rustc-hash", "shlex", - "syn 2.0.32", + "syn 2.0.39", ] [[package]] @@ -665,16 +674,28 @@ dependencies = [ "typenum", ] +[[package]] +name = "bitvec" +version = "0.20.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7774144344a4faa177370406a7ff5f1da24303817368584c6206c8303eb07848" +dependencies = [ + "funty 1.1.0", + "radium 0.6.2", + "tap", + "wyz 0.2.0", +] + [[package]] name = "bitvec" version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" dependencies = [ - "funty", - "radium", + "funty 2.0.0", + "radium 0.7.0", "tap", - "wyz", + "wyz 0.5.1", ] [[package]] @@ -695,7 +716,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b64485778c4f16a6a5a9d335e80d449ac6c70cdd6a06d2af18a6f6f775a125b3" dependencies = [ "arrayref", - "arrayvec", + "arrayvec 0.5.2", "cc", "cfg-if 0.1.10", "constant_time_eq", @@ -705,11 +726,20 @@ dependencies = [ [[package]] name = "block-buffer" -version = "0.10.2" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" +dependencies = [ + "generic-array 0.14.7", +] + +[[package]] +name = "block-buffer" +version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bf7fe51849ea569fd452f37822f606a5cabb684dc918707a0193fd4664ff324" +checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" dependencies = [ - "generic-array 0.14.5", + "generic-array 0.14.7", ] [[package]] @@ -719,7 +749,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b872f3528eeeb4370ee73b51194dc1cd93680c2d0eb6c7a223889038d2c1a167" dependencies = [ "quote", - "syn 1.0.103", + "syn 1.0.109", ] [[package]] @@ -778,7 +808,7 @@ dependencies = [ "proc-macro-crate 1.3.1", "proc-macro2", "quote", - "syn 1.0.103", + "syn 1.0.109", ] [[package]] @@ -818,11 +848,11 @@ dependencies = [ [[package]] name = "borsh" -version = "1.0.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e6cb63579996213e822f6d828b0a47e1d23b1e8708f52d18a6b1af5670dd207" +checksum = "9897ef0f1bd2362169de6d7e436ea2237dc1085d7d1e4db75f4be34d86f309d1" dependencies = [ - "borsh-derive 1.0.0", + "borsh-derive 1.2.1", "cfg_aliases", ] @@ -836,20 +866,20 @@ dependencies = [ "borsh-schema-derive-internal", "proc-macro-crate 0.1.5", "proc-macro2", - "syn 1.0.103", + "syn 1.0.109", ] [[package]] name = "borsh-derive" -version = "1.0.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35b4db62e0515621636e47f425d78a40bdea94c2d23713428fb12194cf5459a4" +checksum = "478b41ff04256c5c8330f3dfdaaae2a5cc976a8e75088bafa4625b0d0208de8c" dependencies = [ "once_cell", - "proc-macro-crate 1.3.1", + "proc-macro-crate 2.0.1", "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.39", "syn_derive", ] @@ -861,7 +891,7 @@ checksum = "5449c28a7b352f2d1e592a8a28bf139bc71afb0764a14f3c02500935d8c44065" dependencies = [ "proc-macro2", "quote", - "syn 1.0.103", + "syn 1.0.109", ] [[package]] @@ -872,14 +902,14 @@ checksum = "cdbd5696d8bfa21d53d9fe39a714a18538bad11492a42d066dbbc395fb1951c0" dependencies = [ "proc-macro2", "quote", - "syn 1.0.103", + "syn 1.0.109", ] [[package]] name = "brotli" -version = "3.3.4" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1a0b1dbcc8ae29329621f8d4f0d835787c1c38bb1401979b49d13b0b305ff68" +checksum = "516074a47ef4bce09577a3b379392300159ce5b1ba2e501ff1c819950066100f" dependencies = [ "alloc-no-stdlib", "alloc-stdlib", @@ -888,9 +918,9 @@ dependencies = [ [[package]] name = "brotli-decompressor" -version = "2.3.2" +version = "2.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59ad2d4653bf5ca36ae797b1f4bb4dbddb60ce49ca4aed8a2ce4829f60425b80" +checksum = "4e2e4afe60d7dd600fdd3de8d0f08c2b7ec039712e3b6137ff98b7004e82de4f" dependencies = [ "alloc-no-stdlib", "alloc-stdlib", @@ -904,57 +934,64 @@ checksum = "771fe0050b883fcc3ea2359b1a96bcfbc090b7116eae7c3c512c7a083fdf23d3" [[package]] name = "bumpalo" -version = "3.12.0" +version = "3.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" + +[[package]] +name = "byte-slice-cast" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d261e256854913907f67ed06efbc3338dfe6179796deefc1ff763fc1aee5535" +checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c" [[package]] name = "bytecheck" -version = "0.6.8" +version = "0.6.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a31f923c2db9513e4298b72df143e6e655a759b3d6a0966df18f81223fff54f" +checksum = "8b6372023ac861f6e6dc89c8344a8f398fb42aaba2b5dbc649ca0c0e9dbcb627" dependencies = [ "bytecheck_derive", "ptr_meta", + "simdutf8", ] [[package]] name = "bytecheck_derive" -version = "0.6.8" +version = "0.6.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edb17c862a905d912174daa27ae002326fff56dc8b8ada50a0a5f0976cb174f0" +checksum = "a7ec4c6f261935ad534c0c22dbef2201b45918860eb1c574b972bd213a76af61" dependencies = [ "proc-macro2", "quote", - "syn 1.0.103", + "syn 1.0.109", ] [[package]] name = "byteorder" -version = "1.4.3" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be" +checksum = "a2bd12c1caf447e69cd4528f47f94d203fd2582878ecb9e9465484c4148a8223" [[package]] name = "bytesize" -version = "1.1.0" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c58ec36aac5066d5ca17df51b3e70279f5670a72102f5752cb7e7c856adfc70" +checksum = "a3e368af43e418a04d52505cf3dbc23dda4e3407ae2fa99fd0e4f308ce546acc" dependencies = [ "serde", ] [[package]] name = "bytestring" -version = "1.0.0" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90706ba19e97b90786e19dc0d5e2abd80008d99d4c0c5d1ad0b5e72cec7c494d" +checksum = "74d80203ea6b29df88012294f62733de21cfeab47f17b41af3a38bc30a03ee72" dependencies = [ "bytes", ] @@ -982,18 +1019,18 @@ dependencies = [ [[package]] name = "camino" -version = "1.0.8" +version = "1.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07fd178c5af4d59e83498ef15cf3f154e1a6f9d091270cb86283c65ef44e9ef0" +checksum = "c59e92b5a388f549b863a7bea62612c09f24c8393560709a54558a9abdfb3b9c" dependencies = [ "serde", ] [[package]] name = "cargo-platform" -version = "0.1.2" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cbdb825da8a5df079a43676dbe042702f1707b1109f713a01420fbb4cc71fa27" +checksum = "e34637b3140142bdf929fb439e8aa4ebad7651ebf7b1080b3930aa16ac1459ff" dependencies = [ "serde", ] @@ -1006,7 +1043,7 @@ checksum = "4acbb09d9ee8e23699b9634375c72795d095bf268439da88562cf9b501f181fa" dependencies = [ "camino", "cargo-platform", - "semver 1.0.9", + "semver 1.0.20", "serde", "serde_json", ] @@ -1067,10 +1104,10 @@ dependencies = [ "log", "near-async", "near-chain-configs", - "near-crypto", + "near-crypto 0.0.0", "near-network", "near-o11y", - "near-primitives", + "near-primitives 0.0.0", "near-store", "nearcore", "openssl-probe", @@ -1091,7 +1128,7 @@ dependencies = [ "num-traits", "serde", "wasm-bindgen", - "windows-targets 0.48.0", + "windows-targets 0.48.5", ] [[package]] @@ -1127,14 +1164,14 @@ version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "12f8e7987cbd042a63249497f41aed09f8e65add917ea6566effbc56578d6801" dependencies = [ - "generic-array 0.14.5", + "generic-array 0.14.7", ] [[package]] name = "clang-sys" -version = "1.3.1" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cc00842eed744b858222c4c9faf7243aafc6d33f92f96935263ef4d8a41ce21" +checksum = "c688fc74432808e3eb684cae8830a86be1d66a2bd58e1f248ed0960a590baf6f" dependencies = [ "glob", "libc", @@ -1143,45 +1180,43 @@ dependencies = [ [[package]] name = "clap" -version = "4.2.4" +version = "4.4.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "956ac1f6381d8d82ab4684768f89c0ea3afe66925ceadb4eeb3fc452ffc55d62" +checksum = "bfaff671f6b22ca62406885ece523383b9b64022e341e53e009a62ebc47a45f2" dependencies = [ "clap_builder", "clap_derive", - "once_cell", ] [[package]] name = "clap_builder" -version = "4.2.4" +version = "4.4.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84080e799e54cff944f4b4a4b0e71630b0e0443b25b985175c7dddc1a859b749" +checksum = "a216b506622bb1d316cd51328dce24e07bdff4a6128a47c7e7fad11878d5adbb" dependencies = [ "anstream", "anstyle", - "bitflags 1.3.2", "clap_lex", "strsim", ] [[package]] name = "clap_derive" -version = "4.2.0" +version = "4.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9644cd56d6b87dbe899ef8b053e331c0637664e9e21a33dfcdc36093f5c5c4" +checksum = "cf9804afaaf59a91e75b022a30fb7229a7901f60c755489cc61c9b423b836442" dependencies = [ - "heck 0.4.0", + "heck 0.4.1", "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.39", ] [[package]] name = "clap_lex" -version = "0.4.1" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a2dd5a6fe8c6e3502f568a6353e5273bbb15193ad9a89e457b9970798efbea1" +checksum = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1" [[package]] name = "cloud-storage" @@ -1190,7 +1225,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7602ac4363f68ac757d6b87dd5d850549a14d37489902ae639c06ecec06ad275" dependencies = [ "async-trait", - "base64 0.13.0", + "base64 0.13.1", "bytes", "chrono", "dotenv", @@ -1215,26 +1250,16 @@ dependencies = [ "bitflags 1.3.2", ] -[[package]] -name = "codespan-reporting" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e" -dependencies = [ - "termcolor", - "unicode-width", -] - [[package]] name = "cold-store-tool" version = "0.0.0" dependencies = [ "anyhow", - "borsh 1.0.0", + "borsh 1.2.1", "clap", "near-chain-configs", "near-epoch-manager", - "near-primitives", + "near-primitives 0.0.0", "near-store", "nearcore", "rand 0.8.5", @@ -1250,9 +1275,9 @@ checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" [[package]] name = "combine" -version = "4.6.4" +version = "4.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a604e93b79d1808327a6fca85a6f2d69de66461e7620f5a4cbf5fb4d1d7c948" +checksum = "35ed6e9d84f0b51a7f52daf1c7d71dd136fd7a3f41a8462b8cdb8c78d920fad4" dependencies = [ "bytes", "memchr", @@ -1260,15 +1285,15 @@ dependencies = [ [[package]] name = "console" -version = "0.15.5" +version = "0.15.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3d79fbe8970a77e3e34151cc13d3b3e248aa0faaecb9f6091fa07ebefe5ad60" +checksum = "c926e00cc70edefdc64d3a5ff31cc65bb97a3460097762bd23afb4d8145fccf8" dependencies = [ "encode_unicode", "lazy_static", "libc", "unicode-width", - "windows-sys 0.42.0", + "windows-sys 0.45.0", ] [[package]] @@ -1285,9 +1310,9 @@ checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" [[package]] name = "cookie" -version = "0.16.0" +version = "0.16.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94d4706de1b0fa5b132270cddffa8585166037822e260a944fe161acd137ca05" +checksum = "e859cd57d0710d9e06c381b550c06e76992472a8c6d527aecd2fc673dcc231fb" dependencies = [ "percent-encoding", "time", @@ -1296,9 +1321,9 @@ dependencies = [ [[package]] name = "core-foundation" -version = "0.9.3" +version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" +checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" dependencies = [ "core-foundation-sys", "libc", @@ -1306,9 +1331,9 @@ dependencies = [ [[package]] name = "core-foundation-sys" -version = "0.8.3" +version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc" +checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" [[package]] name = "cpp_demangle" @@ -1360,12 +1385,12 @@ dependencies = [ "cranelift-control", "cranelift-entity", "cranelift-isle", - "gimli 0.28.0", - "hashbrown 0.14.2", + "gimli", + "hashbrown 0.14.3", "log", "regalloc2", "smallvec", - "target-lexicon 0.12.3", + "target-lexicon 0.12.12", ] [[package]] @@ -1411,7 +1436,7 @@ dependencies = [ "cranelift-codegen", "log", "smallvec", - "target-lexicon 0.12.3", + "target-lexicon 0.12.12", ] [[package]] @@ -1428,7 +1453,7 @@ checksum = "f32e81605f352cf37af5463f11cd7deec7b6572741931a8d372f7fdd4a744f5d" dependencies = [ "cranelift-codegen", "libc", - "target-lexicon 0.12.3", + "target-lexicon 0.12.12", ] [[package]] @@ -1458,9 +1483,9 @@ dependencies = [ [[package]] name = "crc-catalog" -version = "2.2.0" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cace84e55f07e7301bae1c519df89cdad8cc3cd868413d3fdbdeca9ff3db484" +checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" [[package]] name = "crc32fast" @@ -1531,9 +1556,9 @@ dependencies = [ [[package]] name = "crossbeam-deque" -version = "0.8.1" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6455c0ca19f0d2fbf751b908d5c55c1f5cbc65e03c4225427254b46890bdde1e" +checksum = "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef" dependencies = [ "cfg-if 1.0.0", "crossbeam-epoch", @@ -1542,14 +1567,14 @@ dependencies = [ [[package]] name = "crossbeam-epoch" -version = "0.9.14" +version = "0.9.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46bd5f3f85273295a9d14aedfb86f6aadbff6d8f5295c4a9edb08e819dcf5695" +checksum = "ae211234986c545741a7dc064309f67ee1e5ad243d0e48335adc0484d960bcc7" dependencies = [ "autocfg", "cfg-if 1.0.0", "crossbeam-utils", - "memoffset 0.8.0", + "memoffset 0.9.0", "scopeguard", ] @@ -1565,12 +1590,11 @@ dependencies = [ [[package]] name = "crossbeam-utils" -version = "0.8.8" +version = "0.8.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bf124c720b7686e3c2663cf54062ab0f68a88af2fb6a030e87e30bf721fcb38" +checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294" dependencies = [ "cfg-if 1.0.0", - "lazy_static", ] [[package]] @@ -1591,9 +1615,9 @@ dependencies = [ [[package]] name = "crossterm_winapi" -version = "0.9.0" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ae1b35a484aa10e07fe0638d02301c5ad24de82d310ccbd2f3693da5f09bf1c" +checksum = "acdd7c62a3665c7f6830a51635d9ac9b23ed385797f70a83bb8bafe9c572ab2b" dependencies = [ "winapi", ] @@ -1606,11 +1630,11 @@ checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" [[package]] name = "crypto-common" -version = "0.1.3" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57952ca27b5e3606ff4dd79b0020231aaf9d6aa76dc05fd30137538c50bd3ce8" +checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" dependencies = [ - "generic-array 0.14.5", + "generic-array 0.14.7", "typenum", ] @@ -1620,15 +1644,15 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b584a330336237c1eecd3e94266efb216c56ed91225d634cb2991c5f3fd1aeab" dependencies = [ - "generic-array 0.14.5", + "generic-array 0.14.7", "subtle", ] [[package]] name = "csv" -version = "1.2.1" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b015497079b9a9d69c02ad25de6c0a6edef051ea6360a327d0bd05802ef64ad" +checksum = "ac574ff4d437a7b5ad237ef331c17ccca63c46479e5b5453eb8e10bb99a759fe" dependencies = [ "csv-core", "itoa", @@ -1638,13 +1662,26 @@ dependencies = [ [[package]] name = "csv-core" -version = "0.1.10" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b2466559f260f48ad25fe6317b3c8dac77b5bdb5763ac7d9d6103530663bc90" +checksum = "5efa2b3d7902f4b634a20cae3c9c4e6209dc4779feb6863329607560143efa70" dependencies = [ "memchr", ] +[[package]] +name = "curve25519-dalek" +version = "3.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90f9d052967f590a76e62eb387bd0bbb1b000182c3cefe5364db6b7211651bc0" +dependencies = [ + "byteorder", + "digest 0.9.0", + "rand_core 0.5.1", + "subtle", + "zeroize", +] + [[package]] name = "curve25519-dalek" version = "4.1.1" @@ -1654,7 +1691,7 @@ dependencies = [ "cfg-if 1.0.0", "cpufeatures", "curve25519-dalek-derive", - "digest 0.10.6", + "digest 0.10.7", "fiat-crypto", "platforms", "rand_core 0.6.4", @@ -1671,58 +1708,14 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", -] - -[[package]] -name = "cxx" -version = "1.0.94" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f61f1b6389c3fe1c316bf8a4dccc90a38208354b330925bce1f74a6c4756eb93" -dependencies = [ - "cc", - "cxxbridge-flags", - "cxxbridge-macro", - "link-cplusplus", -] - -[[package]] -name = "cxx-build" -version = "1.0.94" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12cee708e8962df2aeb38f594aae5d827c022b6460ac71a7a3e2c3c2aae5a07b" -dependencies = [ - "cc", - "codespan-reporting", - "once_cell", - "proc-macro2", - "quote", - "scratch", - "syn 2.0.32", -] - -[[package]] -name = "cxxbridge-flags" -version = "1.0.94" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7944172ae7e4068c533afbb984114a56c46e9ccddda550499caa222902c7f7bb" - -[[package]] -name = "cxxbridge-macro" -version = "1.0.94" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2345488264226bf682893e25de0769f3360aac9957980ec49361b083ddaa5bc5" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.32", + "syn 2.0.39", ] [[package]] name = "darling" -version = "0.20.1" +version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0558d22a7b463ed0241e993f76f09f30b126687447751a8638587b864e4b3944" +checksum = "0209d94da627ab5605dcccf08bb18afa5009cfbef48d8a8b7d7bdbc79be25c5e" dependencies = [ "darling_core", "darling_macro", @@ -1730,27 +1723,27 @@ dependencies = [ [[package]] name = "darling_core" -version = "0.20.1" +version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab8bfa2e259f8ee1ce5e97824a3c55ec4404a0d772ca7fa96bf19f0752a046eb" +checksum = "177e3443818124b357d8e76f53be906d60937f0d3a90773a664fa63fa253e621" dependencies = [ "fnv", "ident_case", "proc-macro2", "quote", "strsim", - "syn 2.0.32", + "syn 2.0.39", ] [[package]] name = "darling_macro" -version = "0.20.1" +version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29a358ff9f12ec09c3e61fef9b5a9902623a695a46a917b07f269bff1445611a" +checksum = "836a9bbc7ad63342d6d6e7b815ccab164bc77a2d95d84bc3117a8c0d5c98e2d5" dependencies = [ "darling_core", "quote", - "syn 2.0.32", + "syn 2.0.39", ] [[package]] @@ -1762,6 +1755,16 @@ dependencies = [ "uuid", ] +[[package]] +name = "deranged" +version = "0.3.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8eb30d70a07a3b04884d2677f06bec33509dc67ca60d92949e5535352d3191dc" +dependencies = [ + "powerfmt", + "serde", +] + [[package]] name = "derive-enum-from-into" version = "0.1.1" @@ -1770,18 +1773,18 @@ checksum = "adc2a1b7c0031fb651e9bc1fa4255da82747c187b9ac1dc36b3783d71fadd9d5" dependencies = [ "proc-macro2", "quote", - "syn 1.0.103", + "syn 1.0.109", ] [[package]] name = "derive_arbitrary" -version = "1.3.1" +version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53e0efad4403bfc52dc201159c4b842a246a14b98c64b55dfd0f2d89729dfeb8" +checksum = "67e77553c4162a157adbf834ebae5b415acbecbeafc7a74b0e886657506a7611" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.39", ] [[package]] @@ -1794,7 +1797,7 @@ dependencies = [ "proc-macro2", "quote", "rustc_version 0.4.0", - "syn 1.0.103", + "syn 1.0.109", ] [[package]] @@ -1818,16 +1821,16 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" dependencies = [ - "generic-array 0.14.5", + "generic-array 0.14.7", ] [[package]] name = "digest" -version = "0.10.6" +version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8168378f4e5023e7218c89c891c0fd8ecdb5e5e4f18cb78f38cf245dd021e76f" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ - "block-buffer", + "block-buffer 0.10.4", "crypto-common", "subtle", ] @@ -1854,9 +1857,9 @@ dependencies = [ [[package]] name = "dissimilar" -version = "1.0.4" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c97b9233581d84b8e1e689cdd3a47b6f69770084fc246e86a7f78b0d9c1d4a5" +checksum = "86e3bdc80eee6e16b2b6b0f87fbc98c04bee3455e35174c0de1a125d0688c632" [[package]] name = "dlv-list" @@ -1870,6 +1873,12 @@ version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77c90badedccf4105eca100756a0b1289e191f6fcbdadd3cee1d2f614f97da8f" +[[package]] +name = "dyn-clone" +version = "1.0.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "545b22097d44f8a9581187cdf93de7a71e4722bf51200cfaba810865b49a495d" + [[package]] name = "dynasm" version = "1.2.3" @@ -1882,7 +1891,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 1.0.103", + "syn 1.0.109", ] [[package]] @@ -1897,7 +1906,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 1.0.103", + "syn 1.0.109", ] [[package]] @@ -1929,13 +1938,36 @@ version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "53aff6fdc1b181225acdcb5b14c47106726fd8e486707315b1b138baed68ee31" +[[package]] +name = "ed25519" +version = "1.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91cff35c70bba8a626e3185d8cd48cc11b5437e1a5bcd15b9b5fa3c64b6dfee7" +dependencies = [ + "signature 1.6.4", +] + [[package]] name = "ed25519" version = "2.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53" dependencies = [ - "signature", + "signature 2.2.0", +] + +[[package]] +name = "ed25519-dalek" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c762bae6dcaf24c4c84667b8579785430908723d5c889f469d76a41d59cc7a9d" +dependencies = [ + "curve25519-dalek 3.2.1", + "ed25519 1.5.3", + "rand 0.7.3", + "serde", + "sha2 0.9.9", + "zeroize", ] [[package]] @@ -1944,18 +1976,18 @@ version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1f628eaec48bfd21b865dc2950cfa014450c01d2fa2b69a86c2fd5844ec523c0" dependencies = [ - "curve25519-dalek", - "ed25519", + "curve25519-dalek 4.1.1", + "ed25519 2.2.3", "rand_core 0.6.4", - "sha2", + "sha2 0.10.8", "subtle", ] [[package]] name = "either" -version = "1.6.1" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457" +checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" [[package]] name = "elastic-array" @@ -1974,38 +2006,38 @@ checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f" [[package]] name = "encoding_rs" -version = "0.8.31" +version = "0.8.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9852635589dc9f9ea1b6fe9f05b50ef208c85c834a562f0c6abb1c475736ec2b" +checksum = "7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1" dependencies = [ "cfg-if 1.0.0", ] [[package]] name = "enum-map" -version = "2.1.0" +version = "2.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0348b2a57c82f98b9dbd8098b1abb2416f221823d3e50cbe24eaebdd16896826" +checksum = "6866f3bfdf8207509a033af1a75a7b08abda06bbaaeae6669323fd5a097df2e9" dependencies = [ "enum-map-derive", ] [[package]] name = "enum-map-derive" -version = "0.8.0" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a63b7a0ddec6f38dcec5e36257750b7a8fcaf4227e12ceb306e341d63634da05" +checksum = "f282cfdfe92516eb26c2af8589c274c7c17681f5ecc03c18255fe741c6aa64eb" dependencies = [ "proc-macro2", "quote", - "syn 1.0.103", + "syn 2.0.39", ] [[package]] name = "enumset" -version = "1.1.2" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e875f1719c16de097dee81ed675e2d9bb63096823ed3f0ca827b7dea3028bbbb" +checksum = "226c0da7462c13fb57e5cc9e0dc8f0635e7d27f276a3a7fd30054647f669007d" dependencies = [ "enumset_derive", ] @@ -2019,7 +2051,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.39", ] [[package]] @@ -2041,13 +2073,12 @@ dependencies = [ [[package]] name = "errno" -version = "0.3.1" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a" +checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" dependencies = [ - "errno-dragonfly", "libc", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] @@ -2079,9 +2110,9 @@ dependencies = [ [[package]] name = "expect-test" -version = "1.3.0" +version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dced95c9dcd4e3241f95841aad395f9c8d7933a3b0b524bdeb2440885c72a271" +checksum = "30d9eafeadd538e68fb28016364c9732d78e420b9ff8853fa5e4058861e9f8d3" dependencies = [ "dissimilar", "once_cell", @@ -2123,7 +2154,7 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6d81b511929c2669eaf64e36471cf27c2508133e62ade9d49e608e8d675e7854" dependencies = [ - "bitvec", + "bitvec 1.0.1", "dissimilar", "num-traits", "prefix-sum-vec", @@ -2133,18 +2164,15 @@ dependencies = [ "wasmprinter", ] -[[package]] -name = "firestorm" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d3d6188b8804df28032815ea256b6955c9625c24da7525f387a7af02fbb8f01" - [[package]] name = "fixed-hash" version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cfcf0ed7fe52a17a03854ec54a9f76d6d84508d1c0e66bc1793301c73fc8493c" dependencies = [ + "byteorder", + "rand 0.8.5", + "rustc-hex", "static_assertions", ] @@ -2156,20 +2184,18 @@ checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" [[package]] name = "flagset" -version = "0.4.3" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cda653ca797810c02f7ca4b804b40b8b95ae046eb989d356bce17919a8c25499" +checksum = "d52a7e408202050813e6f1d9addadcaafef3dca7530c7ddfb005d4081cce6779" [[package]] name = "flate2" -version = "1.0.23" +version = "1.0.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b39522e96686d38f4bc984b9198e3a0613264abaebaff2c5c918bfa6b6da09af" +checksum = "46303f565772937ffe1d394a4fac6f411c6013172fadde9dcdb1e147a086940e" dependencies = [ - "cfg-if 1.0.0", "crc32fast", - "libc", - "miniz_oxide 0.5.1", + "miniz_oxide", ] [[package]] @@ -2195,9 +2221,9 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" [[package]] name = "form_urlencoded" -version = "1.1.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9c384f161156f5260c24a097c56119f9be8c798586aecc13afbcbe7b7e26bf8" +checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" dependencies = [ "percent-encoding", ] @@ -2213,10 +2239,10 @@ dependencies = [ ] [[package]] -name = "fs_extra" -version = "1.2.0" +name = "funty" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2022715d62ab30faffd124d40b76f4134a550a87792276512b18d63272333394" +checksum = "fed34cd105917e91daa4da6b3728c47b068749d6a62c59811f06ed2ac71d9da7" [[package]] name = "funty" @@ -2226,9 +2252,9 @@ checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" [[package]] name = "futures" -version = "0.3.21" +version = "0.3.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f73fe65f54d1e12b726f517d3e2135ca3125a437b6d998caf1962961f7172d9e" +checksum = "da0290714b38af9b4a7b094b8a37086d1b4e61f2df9122c3cad2577669145335" dependencies = [ "futures-channel", "futures-core", @@ -2241,9 +2267,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.21" +version = "0.3.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3083ce4b914124575708913bca19bfe887522d6e2e6d0952943f5eac4a74010" +checksum = "ff4dd66668b557604244583e3e1e1eada8c5c2e96a6d0d6653ede395b78bbacb" dependencies = [ "futures-core", "futures-sink", @@ -2251,15 +2277,15 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.21" +version = "0.3.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c09fd04b7e4073ac7156a9539b57a484a8ea920f79c7c675d05d289ab6110d3" +checksum = "eb1d22c66e66d9d72e1758f0bd7d4fd0bee04cad842ee34587d68c07e45d088c" [[package]] name = "futures-executor" -version = "0.3.21" +version = "0.3.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9420b90cfa29e327d0429f19be13e7ddb68fa1cccb09d65e5706b8c7a749b8a6" +checksum = "0f4fb8693db0cf099eadcca0efe2a5a22e4550f98ed16aba6c48700da29597bc" dependencies = [ "futures-core", "futures-task", @@ -2268,38 +2294,38 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.21" +version = "0.3.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc4045962a5a5e935ee2fdedaa4e08284547402885ab326734432bed5d12966b" +checksum = "8bf34a163b5c4c52d0478a4d757da8fb65cabef42ba90515efee0f6f9fa45aaa" [[package]] name = "futures-macro" -version = "0.3.21" +version = "0.3.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33c1e13800337f4d4d7a316bf45a567dbcb6ffe087f16424852d97e97a91f512" +checksum = "53b153fd91e4b0147f4aced87be237c98248656bb01050b96bf3ee89220a8ddb" dependencies = [ "proc-macro2", "quote", - "syn 1.0.103", + "syn 2.0.39", ] [[package]] name = "futures-sink" -version = "0.3.21" +version = "0.3.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21163e139fa306126e6eedaf49ecdb4588f939600f0b1e770f4205ee4b7fa868" +checksum = "e36d3378ee38c2a36ad710c5d30c2911d752cb941c00c72dbabfb786a7970817" [[package]] name = "futures-task" -version = "0.3.21" +version = "0.3.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57c66a976bf5909d801bbef33416c41372779507e7a6b3a5e25e4749c58f776a" +checksum = "efd193069b0ddadc69c46389b740bbccdd97203899b48d09c5f7969591d6bae2" [[package]] name = "futures-util" -version = "0.3.21" +version = "0.3.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8b7abd5d659d9b90c8cba917f6ec750a74e2dc23902ef9cd4cc8c8b22e6036a" +checksum = "a19526d624e703a3179b3d322efec918b6246ea0fa51d41124525f00f1cc8104" dependencies = [ "futures-channel", "futures-core", @@ -2346,9 +2372,9 @@ dependencies = [ [[package]] name = "generic-array" -version = "0.14.5" +version = "0.14.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd48d33ec7f05fbfa152300fdad764757cbded343c1aa1cff2fbaf4134851803" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" dependencies = [ "typenum", "version_check", @@ -2362,9 +2388,9 @@ dependencies = [ "clap", "csv", "near-chain-configs", - "near-crypto", + "near-crypto 0.0.0", "near-network", - "near-primitives", + "near-primitives 0.0.0", "nearcore", "serde", "serde_json", @@ -2375,14 +2401,14 @@ dependencies = [ name = "genesis-populate" version = "0.0.0" dependencies = [ - "borsh 1.0.0", + "borsh 1.2.1", "clap", "indicatif", "near-chain", "near-chain-configs", - "near-crypto", + "near-crypto 0.0.0", "near-epoch-manager", - "near-primitives", + "near-primitives 0.0.0", "near-store", "near-test-contracts", "near-vm-runner", @@ -2403,9 +2429,9 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.9" +version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c85e1d9ab2eadba7e5040d4e09cbd6d072b76a557ad64e797c2cb9d4da21d7e4" +checksum = "fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f" dependencies = [ "cfg-if 1.0.0", "libc", @@ -2414,26 +2440,20 @@ dependencies = [ [[package]] name = "gimli" -version = "0.27.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad0a93d233ebf96623465aad4046a8d3aa4da22d4f4beba5388838c8a434bbb4" - -[[package]] -name = "gimli" -version = "0.28.0" +version = "0.28.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" +checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" dependencies = [ "fallible-iterator 0.3.0", - "indexmap 2.0.0", + "indexmap 2.1.0", "stable_deref_trait", ] [[package]] name = "glob" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574" +checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" [[package]] name = "h2" @@ -2447,10 +2467,10 @@ dependencies = [ "futures-sink", "futures-util", "http", - "indexmap 2.0.0", + "indexmap 2.1.0", "slab", "tokio", - "tokio-util 0.7.2", + "tokio-util 0.7.10", "tracing", ] @@ -2489,9 +2509,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.14.2" +version = "0.14.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f93e7192158dbcda357bdec5fb5788eebf8bbac027f3f33e719d29135ae84156" +checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604" dependencies = [ "ahash 0.8.6", "allocator-api2", @@ -2499,11 +2519,11 @@ dependencies = [ [[package]] name = "hashlink" -version = "0.8.2" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0761a1b9491c4f2e3d66aa0f62d0fba0af9a0e2852e4d48ea506632a4b56e6aa" +checksum = "e8094feaf31ff591f651a2664fb9cfd92bba7a60ce3197265e9482ebe753c8f7" dependencies = [ - "hashbrown 0.13.2", + "hashbrown 0.14.3", ] [[package]] @@ -2526,18 +2546,9 @@ dependencies = [ [[package]] name = "heck" -version = "0.4.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9" - -[[package]] -name = "hermit-abi" -version = "0.1.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" -dependencies = [ - "libc", -] +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" [[package]] name = "hermit-abi" @@ -2588,14 +2599,23 @@ version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" dependencies = [ - "digest 0.10.6", + "digest 0.10.7", +] + +[[package]] +name = "home" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5444c27eef6923071f7ebcc33e3444508466a76f7a2b93da00ed6e19f30c1ddb" +dependencies = [ + "windows-sys 0.48.0", ] [[package]] name = "http" -version = "0.2.7" +version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff8670570af52249509a86f5e3e18a08c60b177071826898fde8997cf5f6bfbb" +checksum = "8947b1a6fad4393052c7ba1f4cd97bed3e953a95c79c92ad9b051a04611d9fbb" dependencies = [ "bytes", "fnv", @@ -2604,9 +2624,9 @@ dependencies = [ [[package]] name = "http-body" -version = "0.4.4" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ff4f84919677303da5f147645dbea6b1881f368d03ac84e1dc09031ebd7b2c6" +checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" dependencies = [ "bytes", "http", @@ -2615,21 +2635,21 @@ dependencies = [ [[package]] name = "httparse" -version = "1.7.1" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "496ce29bb5a52785b44e0f7ca2847ae0bb839c9bd28f69acac9b99d461c0c04c" +checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" [[package]] name = "httpdate" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4a1e36c821dbe04574f602848a19f742f4fb3c98d40449f11bcad18d6b17421" +checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" [[package]] name = "hyper" -version = "0.14.18" +version = "0.14.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b26ae0a80afebe130861d90abf98e3814a4f28a4c6ffeb5ab8ebb2be311e0ef2" +checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468" dependencies = [ "bytes", "futures-channel", @@ -2642,7 +2662,7 @@ dependencies = [ "httpdate", "itoa", "pin-project-lite", - "socket2", + "socket2 0.4.10", "tokio", "tower-service", "tracing", @@ -2676,26 +2696,25 @@ dependencies = [ [[package]] name = "iana-time-zone" -version = "0.1.56" +version = "0.1.58" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0722cd7114b7de04316e7ea5456a0bbb20e4adb46fd27a3697adb812cff0f37c" +checksum = "8326b86b6cff230b97d0d312a6c40a60726df3332e721f72a1b035f451663b20" dependencies = [ "android_system_properties", "core-foundation-sys", "iana-time-zone-haiku", "js-sys", "wasm-bindgen", - "windows", + "windows-core", ] [[package]] name = "iana-time-zone-haiku" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0703ae284fc167426161c2e3f1da3ea71d94b21bedbcc9494e92b28e334e3dca" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" dependencies = [ - "cxx", - "cxx-build", + "cc", ] [[package]] @@ -2717,9 +2736,9 @@ dependencies = [ [[package]] name = "idna" -version = "0.3.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6" +checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" dependencies = [ "unicode-bidi", "unicode-normalization", @@ -2739,6 +2758,32 @@ dependencies = [ "version_check", ] +[[package]] +name = "impl-codec" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "161ebdfec3c8e3b52bf61c4f3550a1eea4f9579d10dc1b936f3171ebdcd6c443" +dependencies = [ + "parity-scale-codec", +] + +[[package]] +name = "impl-more" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "206ca75c9c03ba3d4ace2460e57b189f39f43de612c2f85836e65c929701bb2d" + +[[package]] +name = "impl-trait-for-tuples" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "indexer-example" version = "0.0.0" @@ -2756,9 +2801,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "1.9.2" +version = "1.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399" +checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" dependencies = [ "autocfg", "hashbrown 0.12.3", @@ -2767,12 +2812,12 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.0.0" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d" +checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f" dependencies = [ "equivalent", - "hashbrown 0.14.2", + "hashbrown 0.14.3", "serde", ] @@ -2805,6 +2850,15 @@ dependencies = [ "yaml-rust", ] +[[package]] +name = "instant" +version = "0.1.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" +dependencies = [ + "cfg-if 1.0.0", +] + [[package]] name = "integration-tests" version = "0.0.0" @@ -2813,7 +2867,7 @@ dependencies = [ "actix-rt", "anyhow", "assert_matches", - "borsh 1.0.0", + "borsh 1.2.1", "chrono", "clap", "futures", @@ -2827,7 +2881,7 @@ dependencies = [ "near-chunks", "near-client", "near-client-primitives", - "near-crypto", + "near-crypto 0.0.0", "near-epoch-manager", "near-fmt", "near-jsonrpc", @@ -2836,8 +2890,8 @@ dependencies = [ "near-network", "near-o11y", "near-performance-metrics", - "near-primitives", - "near-primitives-core", + "near-primitives 0.0.0", + "near-primitives-core 0.0.0", "near-stdx", "near-store", "near-telemetry", @@ -2851,6 +2905,7 @@ dependencies = [ "parking_lot 0.12.1", "primitive-types", "rand 0.8.5", + "rlp", "serde", "serde_json", "smart-default", @@ -2868,67 +2923,66 @@ version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2" dependencies = [ - "hermit-abi 0.3.3", + "hermit-abi", "libc", "windows-sys 0.48.0", ] [[package]] name = "ipnet" -version = "2.5.0" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "879d54834c8c76457ef4293a689b2a8c59b076067ad77b15efafbb05f92a592b" +checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" [[package]] name = "is-terminal" -version = "0.4.7" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adcf93614601c8129ddf72e2d5633df827ba6551541c6d8c59520a371475be1f" +checksum = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b" dependencies = [ - "hermit-abi 0.3.3", - "io-lifetimes", - "rustix 0.37.20", + "hermit-abi", + "rustix 0.38.26", "windows-sys 0.48.0", ] [[package]] name = "itertools" -version = "0.10.3" +version = "0.10.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9a9d19fa1e79b6215ff29b9d6880b706147f16e9b1dbb1e4e5947b5b02bc5e3" +checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" dependencies = [ "either", ] [[package]] name = "itoa" -version = "1.0.2" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "112c678d4050afce233f4f2852bb2eb519230b3cf12f33585275537d7e41578d" +checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38" [[package]] name = "jobserver" -version = "0.1.24" +version = "0.1.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af25a77299a7f711a01975c35a6a424eb6862092cc2d6c72c4ed6cbc56dfc1fa" +checksum = "8c37f63953c4c63420ed5fd3d6d398c719489b9f872b9fa683262f8edd363c7d" dependencies = [ "libc", ] [[package]] name = "js-sys" -version = "0.3.57" +version = "0.3.66" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "671a26f820db17c2a2750743f1dd03bafd15b98c9f30c7c2628c024c05d73397" +checksum = "cee9c64da59eae3b50095c18d3e74f8b73c0b86d2792824ff01bbce68ba229ca" dependencies = [ "wasm-bindgen", ] [[package]] name = "json_comments" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41ee439ee368ba4a77ac70d04f14015415af8600d6c894dc1f11bd79758c57d5" +checksum = "9dbbfed4e59ba9750e15ba154fdfd9329cee16ff3df539c2666b70f58cc32105" [[package]] name = "jsonwebtoken" @@ -2938,7 +2992,7 @@ checksum = "afabcc15e437a6484fc4f12d0fd63068fe457bf93f1c148d3d9649c60b103f32" dependencies = [ "base64 0.12.3", "pem", - "ring", + "ring 0.16.20", "serde", "serde_json", "simple_asn1", @@ -2946,16 +3000,19 @@ dependencies = [ [[package]] name = "keccak" -version = "0.1.0" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67c21572b4949434e4fc1e1978b99c5f77064153c59d998bf13ecd96fb5ecba7" +checksum = "8f6d5ed8676d904364de097082f4e7d240b571b67989ced0240f08b7f966f940" +dependencies = [ + "cpufeatures", +] [[package]] name = "keypair-generator" version = "0.0.0" dependencies = [ "clap", - "near-crypto", + "near-crypto 0.0.0", "nearcore", ] @@ -2971,7 +3028,7 @@ version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" dependencies = [ - "spin", + "spin 0.5.2", ] [[package]] @@ -2994,9 +3051,9 @@ checksum = "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c" [[package]] name = "libfuzzer-sys" -version = "0.4.3" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "336244aaeab6a12df46480dc585802aa743a72d66b11937844c61bbca84c991d" +checksum = "a96cfd5557eb82f2b83fed4955246c988d331975a002961b07c81584d107e7f7" dependencies = [ "arbitrary", "cc", @@ -3005,14 +3062,25 @@ dependencies = [ [[package]] name = "libloading" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efbc0f03f9a775e9f6aed295c6a1ba2253c5757a9e03d55c6caa46a681abcddd" +checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" dependencies = [ "cfg-if 1.0.0", "winapi", ] +[[package]] +name = "libredox" +version = "0.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8" +dependencies = [ + "bitflags 2.4.1", + "libc", + "redox_syscall 0.4.1", +] + [[package]] name = "librocksdb-sys" version = "0.11.0+8.1.1" @@ -3043,36 +3111,21 @@ dependencies = [ [[package]] name = "libz-sys" -version = "1.1.6" +version = "1.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92e7e15d7610cce1d9752e137625f14e61a28cd45929b6e12e47b50fe154ee2e" +checksum = "d97137b25e321a73eef1418d1d5d2eda4d77e12813f8e6dead84bc52c5870a7b" dependencies = [ "cc", "pkg-config", "vcpkg", ] -[[package]] -name = "link-cplusplus" -version = "1.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecd207c9c713c34f95a097a5b029ac2ce6010530c7b49d7fea24d977dede04f5" -dependencies = [ - "cc", -] - [[package]] name = "linked-hash-map" version = "0.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f" -[[package]] -name = "linux-raw-sys" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4" - [[package]] name = "linux-raw-sys" version = "0.3.8" @@ -3081,27 +3134,26 @@ checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" [[package]] name = "linux-raw-sys" -version = "0.4.11" +version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "969488b55f8ac402214f3f5fd243ebb7206cf82de60d3172994707a4bcc2b829" +checksum = "c4cd1a83af159aa67994778be9070f0ae1bd732942279cabb14f86f986a21456" [[package]] name = "local-channel" -version = "0.1.3" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f303ec0e94c6c54447f84f3b0ef7af769858a9c4ef56ef2a986d3dcd4c3fc9c" +checksum = "b6cbc85e69b8df4b8bb8b89ec634e7189099cea8927a276b7384ce5488e53ec8" dependencies = [ "futures-core", "futures-sink", - "futures-util", "local-waker", ] [[package]] name = "local-waker" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e34f76eb3611940e0e7d53a9aaa4e6a3151f69541a282fd0dad5571420c53ff1" +checksum = "4d873d7c67ce09b42110d801813efbc9364414e356be9935700d368351657487" [[package]] name = "lock_api" @@ -3114,9 +3166,9 @@ dependencies = [ [[package]] name = "lock_api" -version = "0.4.7" +version = "0.4.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "327fa5b6a6940e4699ec49a9beae1ea4845c6bab9314e4f84ac68742139d8c53" +checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45" dependencies = [ "autocfg", "scopeguard", @@ -3124,12 +3176,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.17" +version = "0.4.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" -dependencies = [ - "cfg-if 1.0.0", -] +checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" [[package]] name = "loupe" @@ -3148,16 +3197,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c0fbfc88337168279f2e9ae06e157cfed4efd3316e14dc96ed074d4f2e6c5952" dependencies = [ "quote", - "syn 1.0.103", + "syn 1.0.109", ] [[package]] name = "lru" -version = "0.7.5" +version = "0.7.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32613e41de4c47ab04970c348ca7ae7382cf116625755af070b008a15516a889" +checksum = "e999beba7b6e8345721bd280141ed958096a2e4abdf74f67ff4ce49b4b54e47a" dependencies = [ - "hashbrown 0.11.2", + "hashbrown 0.12.3", ] [[package]] @@ -3172,9 +3221,9 @@ dependencies = [ [[package]] name = "lzma-sys" -version = "0.1.17" +version = "0.1.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdb4b7c3eddad11d3af9e86c487607d2d2442d185d848575365c4856ba96d619" +checksum = "5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27" dependencies = [ "cc", "libc", @@ -3196,33 +3245,34 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" dependencies = [ - "regex-automata", + "regex-automata 0.1.10", ] [[package]] name = "matches" -version = "0.1.9" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f" +checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5" [[package]] name = "maybe-async" -version = "0.2.6" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6007f9dad048e0a224f27ca599d669fca8cfa0dac804725aab542b2eb032bce6" +checksum = "0f1b8c13cb1f814b634a96b2c725449fe7ed464a7b8781de8688be5ffbd3f305" dependencies = [ "proc-macro2", "quote", - "syn 1.0.103", + "syn 1.0.109", ] [[package]] name = "md-5" -version = "0.10.4" +version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66b48670c893079d3c2ed79114e3644b7004df1c361a4e0ad52e2e6940d07c3d" +checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf" dependencies = [ - "digest 0.10.6", + "cfg-if 1.0.0", + "digest 0.10.7", ] [[package]] @@ -3233,17 +3283,17 @@ checksum = "490cc448043f947bae3cbee9c203358d62dbee0db12107a74be5c30ccfd09771" [[package]] name = "memchr" -version = "2.5.0" +version = "2.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" +checksum = "f665ee40bc4a3c5590afb1e9677db74a508659dfd71e126420da8274909a0167" [[package]] name = "memfd" -version = "0.6.2" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b20a59d985586e4a5aef64564ac77299f8586d8be6cf9106a5a40207e8908efb" +checksum = "b2cffa4ad52c6f791f4f8b15f0c05f9824b2ced1160e88cc393d64fff9a8ac64" dependencies = [ - "rustix 0.36.9", + "rustix 0.38.26", ] [[package]] @@ -3258,9 +3308,9 @@ dependencies = [ [[package]] name = "memmap2" -version = "0.5.3" +version = "0.5.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "057a3db23999c867821a7a59feb06a578fcb03685e983dff90daf9e7d24ac08f" +checksum = "83faa42c0a078c393f6b29d5db232d8be22776a891f8f56e5284faee4a20b327" dependencies = [ "libc", ] @@ -3292,11 +3342,17 @@ dependencies = [ "autocfg", ] +[[package]] +name = "memory_units" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8452105ba047068f40ff7093dd1d9da90898e63dd61736462e9cdda6a90ad3c3" + [[package]] name = "mime" -version = "0.3.16" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d" +checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" [[package]] name = "mime_guess" @@ -3310,9 +3366,9 @@ dependencies = [ [[package]] name = "minidom" -version = "0.15.0" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dddfe21863f8d600ed2bd1096cb9b5cd6ff984be6185cf9d563fb4a107bffc5" +checksum = "f45614075738ce1b77a1768912a60c0227525971b03e09122a05b8a34a2a6278" dependencies = [ "rxml", ] @@ -3325,32 +3381,23 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2b29bd4bc3f33391105ebee3589c19197c4271e3e5a9ec9bfe8127eeff8f082" -dependencies = [ - "adler", -] - -[[package]] -name = "miniz_oxide" -version = "0.6.2" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa" +checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7" dependencies = [ "adler", ] [[package]] name = "mio" -version = "0.8.6" +version = "0.8.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b9d9a46eff5b4ff64b45a9e316a6d1e0bc719ef429cbec4dc630684212bfdf9" +checksum = "8f3d0b296e374a4e6f3c7b0a1f5a51d748a0d34c85e7dc48fc3fa9a87657fe09" dependencies = [ "libc", "log", "wasi 0.11.0+wasi-snapshot-preview1", - "windows-sys 0.45.0", + "windows-sys 0.48.0", ] [[package]] @@ -3368,14 +3415,14 @@ dependencies = [ "near-chain-configs", "near-chunks", "near-client", - "near-crypto", + "near-crypto 0.0.0", "near-epoch-manager", "near-jsonrpc", "near-jsonrpc-client", "near-network", "near-o11y", "near-performance-metrics", - "near-primitives", + "near-primitives 0.0.0", "near-store", "near-telemetry", "nearcore", @@ -3403,9 +3450,9 @@ checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a" [[package]] name = "native-tls" -version = "0.2.10" +version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd7e2f3618557f980e0b17e8856252eee3c97fa12c54dff0ca290fb6266ca4a9" +checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" dependencies = [ "lazy_static", "libc", @@ -3419,13 +3466,35 @@ dependencies = [ "tempfile", ] +[[package]] +name = "near-abi" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "885db39b08518fa700b73fa2214e8adbbfba316ba82dd510f50519173eadaf73" +dependencies = [ + "borsh 0.9.3", + "schemars", + "semver 1.0.20", + "serde", +] + +[[package]] +name = "near-account-id" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "71d258582a1878e6db67400b0504a5099db85718d22c2e07f747fe1706ae7150" +dependencies = [ + "borsh 0.9.3", + "serde", +] + [[package]] name = "near-account-id" version = "1.0.0-alpha.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d10d45a9c49c3e975c362cf4d1dc1d7b72a716b30394bea56ee2a8fb225f50b7" dependencies = [ - "borsh 1.0.0", + "borsh 1.2.1", "serde", ] @@ -3444,15 +3513,15 @@ name = "near-amend-genesis" version = "0.0.0" dependencies = [ "anyhow", - "borsh 1.0.0", + "borsh 1.2.1", "clap", "near-chain", "near-chain-configs", - "near-crypto", + "near-crypto 0.0.0", "near-epoch-manager", "near-network", - "near-primitives", - "near-primitives-core", + "near-primitives 0.0.0", + "near-primitives-core 0.0.0", "near-store", "near-test-contracts", "nearcore", @@ -3474,7 +3543,7 @@ dependencies = [ "futures", "near-o11y", "near-performance-metrics", - "near-primitives", + "near-primitives 0.0.0", "once_cell", "serde", "serde_json", @@ -3497,7 +3566,7 @@ version = "0.0.0" dependencies = [ "actix", "assert_matches", - "borsh 1.0.0", + "borsh 1.2.1", "bytesize", "chrono", "crossbeam-channel", @@ -3511,14 +3580,14 @@ dependencies = [ "near-chain-configs", "near-chain-primitives", "near-client-primitives", - "near-crypto", + "near-crypto 0.0.0", "near-epoch-manager", "near-network", "near-o11y", "near-performance-metrics", "near-performance-metrics-macros", "near-pool", - "near-primitives", + "near-primitives 0.0.0", "near-store", "num-rational", "once_cell", @@ -3540,14 +3609,14 @@ dependencies = [ "chrono", "derive_more", "near-config-utils", - "near-crypto", + "near-crypto 0.0.0", "near-o11y", - "near-primitives", + "near-primitives 0.0.0", "num-rational", "once_cell", "serde", "serde_json", - "sha2", + "sha2 0.10.8", "smart-default", "tracing", ] @@ -3557,8 +3626,8 @@ name = "near-chain-primitives" version = "0.0.0" dependencies = [ "chrono", - "near-crypto", - "near-primitives", + "near-crypto 0.0.0", + "near-primitives 0.0.0", "thiserror", "tracing", ] @@ -3569,7 +3638,7 @@ version = "0.0.0" dependencies = [ "actix", "assert_matches", - "borsh 1.0.0", + "borsh 1.2.1", "chrono", "derive-enum-from-into", "derive_more", @@ -3580,14 +3649,14 @@ dependencies = [ "near-chain", "near-chain-configs", "near-chunks-primitives", - "near-crypto", + "near-crypto 0.0.0", "near-epoch-manager", "near-network", "near-o11y", "near-performance-metrics", "near-performance-metrics-macros", "near-pool", - "near-primitives", + "near-primitives 0.0.0", "near-store", "once_cell", "rand 0.8.5", @@ -3602,7 +3671,7 @@ name = "near-chunks-primitives" version = "0.0.0" dependencies = [ "near-chain-primitives", - "near-primitives", + "near-primitives 0.0.0", ] [[package]] @@ -3614,7 +3683,7 @@ dependencies = [ "anyhow", "assert_matches", "async-trait", - "borsh 1.0.0", + "borsh 1.2.1", "chrono", "cloud-storage", "derive_more", @@ -3628,7 +3697,7 @@ dependencies = [ "near-chain-primitives", "near-chunks", "near-client-primitives", - "near-crypto", + "near-crypto 0.0.0", "near-dyn-configs", "near-epoch-manager", "near-network", @@ -3636,7 +3705,7 @@ dependencies = [ "near-performance-metrics", "near-performance-metrics-macros", "near-pool", - "near-primitives", + "near-primitives 0.0.0", "near-store", "near-telemetry", "num-rational", @@ -3667,8 +3736,8 @@ dependencies = [ "near-chain-configs", "near-chain-primitives", "near-chunks-primitives", - "near-crypto", - "near-primitives", + "near-crypto 0.0.0", + "near-primitives 0.0.0", "serde", "serde_json", "strum", @@ -3692,15 +3761,15 @@ name = "near-crypto" version = "0.0.0" dependencies = [ "blake2", - "borsh 1.0.0", + "borsh 1.2.1", "bs58", "c2-chacha", - "curve25519-dalek", + "curve25519-dalek 4.1.1", "derive_more", - "ed25519-dalek", + "ed25519-dalek 2.1.0", "hex", "hex-literal", - "near-account-id", + "near-account-id 1.0.0-alpha.4", "near-config-utils", "near-stdx", "once_cell", @@ -3709,24 +3778,50 @@ dependencies = [ "secp256k1", "serde", "serde_json", - "sha2", + "sha2 0.10.8", "subtle", "tempfile", "thiserror", ] +[[package]] +name = "near-crypto" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e75673d69fd7365508f3d32483669fe45b03bfb34e4d9363e90adae9dfb416c" +dependencies = [ + "arrayref", + "blake2", + "borsh 0.9.3", + "bs58", + "c2-chacha", + "curve25519-dalek 3.2.1", + "derive_more", + "ed25519-dalek 1.0.1", + "near-account-id 0.14.0", + "once_cell", + "parity-secp256k1", + "primitive-types", + "rand 0.7.3", + "rand_core 0.5.1", + "serde", + "serde_json", + "subtle", + "thiserror", +] + [[package]] name = "near-database-tool" version = "0.0.0" dependencies = [ "anyhow", - "borsh 1.0.0", + "borsh 1.2.1", "clap", "indicatif", "near-chain", "near-chain-configs", "near-epoch-manager", - "near-primitives", + "near-primitives 0.0.0", "near-store", "nearcore", "rand 0.8.5", @@ -3743,7 +3838,7 @@ dependencies = [ "anyhow", "near-chain-configs", "near-o11y", - "near-primitives", + "near-primitives 0.0.0", "once_cell", "prometheus", "serde", @@ -3757,19 +3852,19 @@ dependencies = [ name = "near-epoch-manager" version = "0.0.0" dependencies = [ - "borsh 1.0.0", + "borsh 1.2.1", "chrono", "itertools", "near-cache", "near-chain-configs", "near-chain-primitives", - "near-crypto", - "near-primitives", + "near-crypto 0.0.0", + "near-primitives 0.0.0", "near-store", "num-rational", "primitive-types", "rand 0.8.5", - "rand_hc 0.3.1", + "rand_hc 0.3.2", "serde_json", "smart-default", "tracing", @@ -3784,7 +3879,7 @@ dependencies = [ "near-chain", "near-chain-configs", "near-epoch-manager", - "near-primitives", + "near-primitives 0.0.0", "near-store", "nearcore", "tracing", @@ -3795,12 +3890,12 @@ name = "near-flat-storage" version = "0.0.0" dependencies = [ "anyhow", - "borsh 1.0.0", + "borsh 1.2.1", "clap", "near-chain", "near-chain-configs", "near-epoch-manager", - "near-primitives", + "near-primitives 0.0.0", "near-store", "nearcore", "rayon", @@ -3812,7 +3907,7 @@ dependencies = [ name = "near-fmt" version = "0.0.0" dependencies = [ - "near-primitives-core", + "near-primitives-core 0.0.0", ] [[package]] @@ -3826,11 +3921,11 @@ dependencies = [ "hex", "near-chain", "near-chain-configs", - "near-crypto", + "near-crypto 0.0.0", "near-epoch-manager", "near-mirror", "near-o11y", - "near-primitives", + "near-primitives 0.0.0", "near-store", "nearcore", "rayon", @@ -3850,11 +3945,11 @@ dependencies = [ "futures", "near-chain-configs", "near-client", - "near-crypto", + "near-crypto 0.0.0", "near-dyn-configs", "near-indexer-primitives", "near-o11y", - "near-primitives", + "near-primitives 0.0.0", "near-store", "nearcore", "node-runtime", @@ -3870,7 +3965,7 @@ dependencies = [ name = "near-indexer-primitives" version = "0.0.0" dependencies = [ - "near-primitives", + "near-primitives 0.0.0", "serde", "serde_json", ] @@ -3894,8 +3989,8 @@ dependencies = [ "near-jsonrpc-primitives", "near-network", "near-o11y", - "near-primitives", - "near-rpc-error-macro", + "near-primitives 0.0.0", + "near-rpc-error-macro 0.0.0", "once_cell", "serde", "serde_json", @@ -3910,7 +4005,7 @@ name = "near-jsonrpc-adversarial-primitives" version = "0.0.0" dependencies = [ "near-network", - "near-primitives", + "near-primitives 0.0.0", "serde", ] @@ -3922,7 +4017,7 @@ dependencies = [ "awc", "futures", "near-jsonrpc-primitives", - "near-primitives", + "near-primitives 0.0.0", "serde", "serde_json", ] @@ -3938,7 +4033,7 @@ dependencies = [ "near-jsonrpc", "near-jsonrpc-primitives", "near-jsonrpc-tests", - "near-primitives", + "near-primitives 0.0.0", "once_cell", "serde", "serde_json", @@ -3952,9 +4047,9 @@ dependencies = [ "arbitrary", "near-chain-configs", "near-client-primitives", - "near-crypto", - "near-primitives", - "near-rpc-error-macro", + "near-crypto 0.0.0", + "near-primitives 0.0.0", + "near-rpc-error-macro 0.0.0", "serde", "serde_json", "thiserror", @@ -3966,17 +4061,17 @@ version = "0.0.0" dependencies = [ "actix", "awc", - "borsh 1.0.0", + "borsh 1.2.1", "futures", "near-actix-test-utils", "near-chain-configs", "near-client", - "near-crypto", + "near-crypto 0.0.0", "near-jsonrpc", "near-jsonrpc-primitives", "near-network", "near-o11y", - "near-primitives", + "near-primitives 0.0.0", "near-store", "once_cell", "serde", @@ -3987,9 +4082,9 @@ dependencies = [ name = "near-mainnet-res" version = "0.0.0" dependencies = [ - "near-account-id", + "near-account-id 1.0.0-alpha.4", "near-chain-configs", - "near-primitives", + "near-primitives 0.0.0", "serde_json", ] @@ -4000,10 +4095,10 @@ dependencies = [ "actix", "anyhow", "async-trait", - "borsh 1.0.0", + "borsh 1.2.1", "bs58", "clap", - "ed25519-dalek", + "ed25519-dalek 2.1.0", "hex", "hkdf", "near-chain", @@ -4011,14 +4106,14 @@ dependencies = [ "near-chain-primitives", "near-client", "near-client-primitives", - "near-crypto", + "near-crypto 0.0.0", "near-epoch-manager", "near-indexer", "near-indexer-primitives", "near-network", "near-o11y", - "near-primitives", - "near-primitives-core", + "near-primitives 0.0.0", + "near-primitives-core 0.0.0", "near-store", "nearcore", "once_cell", @@ -4028,7 +4123,7 @@ dependencies = [ "secp256k1", "serde", "serde_json", - "sha2", + "sha2 0.10.8", "strum", "thiserror", "tokio", @@ -4044,7 +4139,7 @@ dependencies = [ "arc-swap", "assert_matches", "async-trait", - "borsh 1.0.0", + "borsh 1.2.1", "bytes", "bytesize", "chrono", @@ -4057,12 +4152,12 @@ dependencies = [ "itertools", "lru", "near-async", - "near-crypto", + "near-crypto 0.0.0", "near-fmt", "near-o11y", "near-performance-metrics", "near-performance-metrics-macros", - "near-primitives", + "near-primitives 0.0.0", "near-stable-hasher", "near-store", "once_cell", @@ -4070,7 +4165,7 @@ dependencies = [ "parking_lot 0.12.1", "pin-project", "pretty_assertions", - "protobuf 3.0.2", + "protobuf 3.3.0", "protobuf-codegen", "rand 0.8.5", "rand_xorshift", @@ -4085,7 +4180,7 @@ dependencies = [ "time", "tokio", "tokio-stream", - "tokio-util 0.7.2", + "tokio-util 0.7.10", "tracing", "turn", "webrtc-util", @@ -4096,13 +4191,13 @@ name = "near-o11y" version = "0.0.0" dependencies = [ "actix", - "base64 0.21.0", + "base64 0.21.5", "bencher", "clap", "itoa", - "near-crypto", + "near-crypto 0.0.0", "near-fmt", - "near-primitives-core", + "near-primitives-core 0.0.0", "once_cell", "opentelemetry", "opentelemetry-otlp", @@ -4110,7 +4205,7 @@ dependencies = [ "prometheus", "serde", "serde_json", - "smartstring 1.0.1", + "smartstring", "strum", "thiserror", "tokio", @@ -4133,7 +4228,7 @@ dependencies = [ "once_cell", "strum", "tokio", - "tokio-util 0.7.2", + "tokio-util 0.7.10", "tracing", ] @@ -4142,7 +4237,7 @@ name = "near-performance-metrics-macros" version = "0.0.0" dependencies = [ "quote", - "syn 2.0.32", + "syn 2.0.39", ] [[package]] @@ -4157,7 +4252,7 @@ dependencies = [ "near-jsonrpc", "near-network", "near-o11y", - "near-primitives", + "near-primitives 0.0.0", "once_cell", "prometheus", "tokio", @@ -4168,10 +4263,10 @@ dependencies = [ name = "near-pool" version = "0.0.0" dependencies = [ - "borsh 1.0.0", - "near-crypto", + "borsh 1.2.1", + "near-crypto 0.0.0", "near-o11y", - "near-primitives", + "near-primitives 0.0.0", "once_cell", "rand 0.8.5", ] @@ -4182,9 +4277,9 @@ version = "0.0.0" dependencies = [ "arbitrary", "assert_matches", - "base64 0.21.0", + "base64 0.21.5", "bencher", - "borsh 1.0.0", + "borsh 1.2.1", "bytesize", "cfg-if 1.0.0", "chrono", @@ -4193,11 +4288,11 @@ dependencies = [ "enum-map", "hex", "insta", - "near-crypto", + "near-crypto 0.0.0", "near-fmt", "near-o11y", - "near-primitives-core", - "near-rpc-error-macro", + "near-primitives-core 0.0.0", + "near-rpc-error-macro 0.0.0", "near-stdx", "near-vm-runner", "num-rational", @@ -4218,28 +4313,74 @@ dependencies = [ "tracing", ] +[[package]] +name = "near-primitives" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ad1a9a1640539c81f065425c31bffcfbf6b31ef1aeaade59ce905f5df6ac860" +dependencies = [ + "borsh 0.9.3", + "byteorder", + "bytesize", + "chrono", + "derive_more", + "easy-ext", + "hex", + "near-crypto 0.14.0", + "near-primitives-core 0.14.0", + "near-rpc-error-macro 0.14.0", + "near-vm-errors", + "num-rational", + "once_cell", + "primitive-types", + "rand 0.7.3", + "reed-solomon-erasure", + "serde", + "serde_json", + "smart-default", + "strum", + "thiserror", +] + [[package]] name = "near-primitives-core" version = "0.0.0" dependencies = [ "arbitrary", - "base64 0.21.0", - "borsh 1.0.0", + "base64 0.21.5", + "borsh 1.2.1", "bs58", "derive_more", "enum-map", "insta", - "near-account-id", + "near-account-id 1.0.0-alpha.4", "num-rational", "serde", "serde_json", "serde_repr", "serde_with", - "sha2", + "sha2 0.10.8", "strum", "thiserror", ] +[[package]] +name = "near-primitives-core" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91d508f0fc340f6461e4e256417685720d3c4c00bb5a939b105160e49137caba" +dependencies = [ + "base64 0.11.0", + "borsh 0.9.3", + "bs58", + "derive_more", + "near-account-id 0.14.0", + "num-rational", + "serde", + "sha2 0.10.8", + "strum", +] + [[package]] name = "near-rosetta-rpc" version = "0.0.0" @@ -4253,15 +4394,15 @@ dependencies = [ "futures", "hex", "insta", - "near-account-id", + "near-account-id 1.0.0-alpha.4", "near-actix-test-utils", "near-chain-configs", "near-client", "near-client-primitives", - "near-crypto", + "near-crypto 0.0.0", "near-network", "near-o11y", - "near-primitives", + "near-primitives 0.0.0", "node-runtime", "paperclip", "serde", @@ -4279,7 +4420,18 @@ dependencies = [ "quote", "serde", "serde_json", - "syn 2.0.32", + "syn 2.0.39", +] + +[[package]] +name = "near-rpc-error-core" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93ee0b41c75ef859c193a8ff1dadfa0c8207bc0ac447cc22259721ad769a1408" +dependencies = [ + "quote", + "serde", + "syn 1.0.109", ] [[package]] @@ -4287,10 +4439,56 @@ name = "near-rpc-error-macro" version = "0.0.0" dependencies = [ "fs2", - "near-rpc-error-core", + "near-rpc-error-core 0.0.0", + "serde", + "serde_json", + "syn 2.0.39", +] + +[[package]] +name = "near-rpc-error-macro" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e837bd4bacd807073ec5ceb85708da7f721b46a4c2a978de86027fb0034ce31" +dependencies = [ + "near-rpc-error-core 0.14.0", + "serde", + "syn 1.0.109", +] + +[[package]] +name = "near-sdk" +version = "4.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "15eb3de2defe3626260cc209a6cdb985c6b27b0bd4619fad97dcfae002c3c5bd" +dependencies = [ + "base64 0.13.1", + "borsh 0.9.3", + "bs58", + "near-abi", + "near-crypto 0.14.0", + "near-primitives 0.14.0", + "near-primitives-core 0.14.0", + "near-sdk-macros", + "near-sys", + "near-vm-logic", + "once_cell", + "schemars", "serde", "serde_json", - "syn 2.0.32", + "wee_alloc", +] + +[[package]] +name = "near-sdk-macros" +version = "4.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4907affc9f5ed559456509188ff0024f1f2099c0830e6bdb66eb61d5b75912c0" +dependencies = [ + "Inflector", + "proc-macro2", + "quote", + "syn 1.0.109", ] [[package]] @@ -4309,9 +4507,9 @@ dependencies = [ "near-network", "near-o11y", "near-ping", - "near-primitives", + "near-primitives 0.0.0", "once_cell", - "sha2", + "sha2 0.10.8", "tokio", "tracing", ] @@ -4323,14 +4521,14 @@ dependencies = [ "actix", "actix-web", "anyhow", - "borsh 1.0.0", + "borsh 1.2.1", "clap", "cloud-storage", "near-client", "near-jsonrpc", "near-o11y", - "near-primitives", - "near-primitives-core", + "near-primitives 0.0.0", + "near-primitives-core 0.0.0", "near-store", "nearcore", "once_cell", @@ -4352,7 +4550,7 @@ dependencies = [ "anyhow", "assert_matches", "bencher", - "borsh 1.0.0", + "borsh 1.2.1", "bytesize", "crossbeam", "derive_more", @@ -4367,10 +4565,10 @@ dependencies = [ "near-chain", "near-chain-configs", "near-chunks", - "near-crypto", + "near-crypto 0.0.0", "near-fmt", "near-o11y", - "near-primitives", + "near-primitives 0.0.0", "near-stdx", "near-vm-runner", "num_cpus", @@ -4388,6 +4586,12 @@ dependencies = [ "tracing", ] +[[package]] +name = "near-sys" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "397688591acf8d3ebf2c2485ba32d4b24fc10aad5334e3ad8ec0b7179bfdf06b" + [[package]] name = "near-telemetry" version = "0.0.0" @@ -4398,7 +4602,7 @@ dependencies = [ "near-o11y", "near-performance-metrics", "near-performance-metrics-macros", - "near-primitives", + "near-primitives 0.0.0", "once_cell", "openssl", "serde", @@ -4428,7 +4632,7 @@ dependencies = [ "near-chain", "near-chain-configs", "near-epoch-manager", - "near-primitives", + "near-primitives 0.0.0", "near-store", "nearcore", "tracing", @@ -4440,12 +4644,12 @@ version = "0.0.0" dependencies = [ "enumset", "finite-wasm", - "hashbrown 0.14.2", + "hashbrown 0.14.3", "near-vm-types", "near-vm-vm", "rkyv", "smallvec", - "target-lexicon 0.12.3", + "target-lexicon 0.12.12", "thiserror", "tracing", "wasmparser 0.99.0", @@ -4459,7 +4663,7 @@ dependencies = [ "dynasmrt 2.0.0", "enumset", "finite-wasm", - "hashbrown 0.14.2", + "hashbrown 0.14.3", "lazy_static", "memoffset 0.8.0", "more-asserts", @@ -4469,7 +4673,7 @@ dependencies = [ "rayon", "smallvec", "strum", - "target-lexicon 0.12.3", + "target-lexicon 0.12.12", "tracing", ] @@ -4480,7 +4684,7 @@ dependencies = [ "pretty_assertions", "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.39", "trybuild", ] @@ -4502,36 +4706,70 @@ dependencies = [ "region", "rkyv", "rustc-demangle", - "rustix 0.37.20", - "target-lexicon 0.12.3", + "rustix 0.37.27", + "target-lexicon 0.12.12", "thiserror", "tracing", ] [[package]] -name = "near-vm-runner" -version = "0.0.0" +name = "near-vm-errors" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0da466a30f0446639cbd788c30865086fac3e8dcb07a79e51d2b0775ed4261e" dependencies = [ - "anyhow", - "arbitrary", - "assert_matches", - "base64 0.21.0", - "bolero", - "borsh 1.0.0", - "clap", - "ed25519-dalek", - "enum-map", - "expect-test", - "finite-wasm", - "hex", - "loupe", - "memoffset 0.8.0", - "near-crypto", - "near-primitives", - "near-primitives-core", - "near-stdx", - "near-test-contracts", - "near-vm-compiler", + "borsh 0.9.3", + "near-account-id 0.14.0", + "near-rpc-error-macro 0.14.0", + "serde", +] + +[[package]] +name = "near-vm-logic" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81b534828419bacbf1f7b11ef7b00420f248c548c485d3f0cfda8bb6931152f2" +dependencies = [ + "base64 0.13.1", + "borsh 0.9.3", + "bs58", + "byteorder", + "near-account-id 0.14.0", + "near-crypto 0.14.0", + "near-primitives 0.14.0", + "near-primitives-core 0.14.0", + "near-vm-errors", + "ripemd", + "serde", + "sha2 0.10.8", + "sha3", + "zeropool-bn", +] + +[[package]] +name = "near-vm-runner" +version = "0.0.0" +dependencies = [ + "anyhow", + "arbitrary", + "assert_matches", + "base64 0.21.5", + "bolero", + "borsh 1.2.1", + "clap", + "ed25519-dalek 2.1.0", + "enum-map", + "expect-test", + "finite-wasm", + "hex", + "loupe", + "memoffset 0.8.0", + "near-crypto 0.0.0", + "near-primitives 0.0.0", + "near-primitives-core 0.0.0", + "near-stdx", + "near-test-contracts", + "near-vm-compiler", "near-vm-compiler-singlepass", "near-vm-engine", "near-vm-runner", @@ -4549,7 +4787,7 @@ dependencies = [ "serde_json", "serde_repr", "serde_with", - "sha2", + "sha2 0.10.8", "sha3", "strum", "thiserror", @@ -4577,7 +4815,7 @@ version = "0.0.0" dependencies = [ "arbitrary", "libfuzzer-sys", - "near-primitives", + "near-primitives 0.0.0", "near-test-contracts", "near-vm-runner", "wasm-smith", @@ -4591,7 +4829,7 @@ dependencies = [ "anyhow", "cfg-if 1.0.0", "finite-wasm", - "indexmap 1.9.2", + "indexmap 1.9.3", "more-asserts", "near-vm-compiler", "near-vm-compiler-singlepass", @@ -4603,7 +4841,7 @@ dependencies = [ "near-vm-wast", "prefix-sum-vec", "serial_test", - "target-lexicon 0.12.3", + "target-lexicon 0.12.12", "tempfile", "test-log", "thiserror", @@ -4618,7 +4856,7 @@ name = "near-vm-test-generator" version = "0.0.0" dependencies = [ "anyhow", - "target-lexicon 0.12.3", + "target-lexicon 0.12.12", ] [[package]] @@ -4626,7 +4864,7 @@ name = "near-vm-types" version = "0.0.0" dependencies = [ "bolero", - "indexmap 1.9.2", + "indexmap 1.9.3", "num-traits", "rkyv", "thiserror", @@ -4640,7 +4878,7 @@ dependencies = [ "cc", "cfg-if 1.0.0", "finite-wasm", - "indexmap 1.9.2", + "indexmap 1.9.3", "libc", "memoffset 0.8.0", "more-asserts", @@ -4661,7 +4899,7 @@ dependencies = [ "near-vm-test-api", "tempfile", "thiserror", - "wast", + "wast 40.0.0", ] [[package]] @@ -4684,7 +4922,7 @@ dependencies = [ "anyhow", "awc", "bencher", - "borsh 1.0.0", + "borsh 1.2.1", "chrono", "cloud-storage", "dirs", @@ -4702,7 +4940,7 @@ dependencies = [ "near-client", "near-client-primitives", "near-config-utils", - "near-crypto", + "near-crypto 0.0.0", "near-dyn-configs", "near-epoch-manager", "near-jsonrpc", @@ -4712,7 +4950,7 @@ dependencies = [ "near-o11y", "near-performance-metrics", "near-pool", - "near-primitives", + "near-primitives 0.0.0", "near-rosetta-rpc", "near-store", "near-telemetry", @@ -4753,7 +4991,7 @@ dependencies = [ "near-chain-configs", "near-client", "near-config-utils", - "near-crypto", + "near-crypto 0.0.0", "near-database-tool", "near-dyn-configs", "near-epoch-sync-tool", @@ -4765,7 +5003,7 @@ dependencies = [ "near-o11y", "near-performance-metrics", "near-ping", - "near-primitives", + "near-primitives 0.0.0", "near-state-parts", "near-state-parts-dump-check", "near-store", @@ -4818,15 +5056,15 @@ name = "node-runtime" version = "0.0.0" dependencies = [ "assert_matches", - "borsh 1.0.0", + "borsh 1.2.1", "enum-map", "hex", "indicatif", "near-chain-configs", - "near-crypto", + "near-crypto 0.0.0", "near-o11y", - "near-primitives", - "near-primitives-core", + "near-primitives 0.0.0", + "near-primitives-core 0.0.0", "near-store", "near-test-contracts", "near-vm-runner", @@ -4839,7 +5077,7 @@ dependencies = [ "rayon", "serde", "serde_json", - "sha2", + "sha2 0.10.8", "tempfile", "testlib", "thiserror", @@ -4848,9 +5086,9 @@ dependencies = [ [[package]] name = "nom" -version = "7.1.1" +version = "7.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8903e5a29a317527874d0402f867152a3d21c908bb0b933e416c65e301d4c36" +checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" dependencies = [ "memchr", "minimal-lexical", @@ -4922,20 +5160,20 @@ dependencies = [ [[package]] name = "num-traits" -version = "0.2.15" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" +checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c" dependencies = [ "autocfg", ] [[package]] name = "num_cpus" -version = "1.13.1" +version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1" +checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" dependencies = [ - "hermit-abi 0.1.19", + "hermit-abi", "libc", ] @@ -4945,15 +5183,6 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "17b02fc0ff9a9e4b35b3342880f48e896ebf69f2967921fe8646bf5b7125956a" -[[package]] -name = "object" -version = "0.30.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03b4680b86d9cfafba8fc491dc9b6df26b68cf40e9e6cd73909194759a63c385" -dependencies = [ - "memchr", -] - [[package]] name = "object" version = "0.32.1" @@ -4961,16 +5190,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0" dependencies = [ "crc32fast", - "hashbrown 0.14.2", - "indexmap 2.0.0", + "hashbrown 0.14.3", + "indexmap 2.1.0", "memchr", ] [[package]] name = "once_cell" -version = "1.18.0" +version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" +checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" [[package]] name = "oorandom" @@ -4986,9 +5215,9 @@ checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" [[package]] name = "openssl" -version = "0.10.60" +version = "0.10.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79a4c6c3a2b158f7f8f2a2fc5a969fa3a068df6fc9dbb4a43845436e3af7c800" +checksum = "6b8419dc8cc6d866deb801274bba2e6f8f6108c1bb7fcc10ee5ab864931dbb45" dependencies = [ "bitflags 2.4.1", "cfg-if 1.0.0", @@ -5007,7 +5236,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.39", ] [[package]] @@ -5027,9 +5256,9 @@ dependencies = [ [[package]] name = "openssl-sys" -version = "0.9.96" +version = "0.9.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3812c071ba60da8b5677cc12bcb1d42989a65553772897a7e0355545a819838f" +checksum = "c3eaad34cdd97d81de97964fc7f29e2d104f483840d906ef56daa1912338460b" dependencies = [ "cc", "libc", @@ -5114,9 +5343,9 @@ dependencies = [ [[package]] name = "paperclip" -version = "0.8.0" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "461c6d9997c512648e9cfd41575a3e0d3f46a1ec3c8214a32dd91b729487b1dc" +checksum = "2509afd8f138efe07cd367832289f5cc61d1eb1ec7f1eb75172abca6f7b9b66d" dependencies = [ "anyhow", "itertools", @@ -5124,7 +5353,7 @@ dependencies = [ "paperclip-actix", "paperclip-core", "paperclip-macros", - "semver 1.0.9", + "semver 1.0.20", "serde", "serde_derive", "serde_json", @@ -5135,9 +5364,9 @@ dependencies = [ [[package]] name = "paperclip-actix" -version = "0.6.0" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8e2adab1a71766521af58973719fb66bd7b92e6ce8a3acf1e83c7acc0e78e17" +checksum = "4adf797da91baee514bc03b020fdd6673d2f8c1af8a859e50d6d803a4b3dddd2" dependencies = [ "actix-service", "actix-web", @@ -5151,9 +5380,9 @@ dependencies = [ [[package]] name = "paperclip-core" -version = "0.6.0" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d53eecc65b19fa7884e3e6939e54ba5104ec179894728bca6f6cee67adfa145e" +checksum = "8db363c823fa71c00da73ff8cee3d6902e1ad66b770cc224a74dc7cf54de3aad" dependencies = [ "actix-web", "mime", @@ -5169,11 +5398,11 @@ dependencies = [ [[package]] name = "paperclip-macros" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0e23a129dc95a45661cbbfac1b8f865094131da7937738a343d00f47d87fada" +checksum = "ce6e25ce2c5362c8d48dc89e0f9ca076d507f7c1eabd04f0d593cdf5addff90c" dependencies = [ - "heck 0.4.0", + "heck 0.4.1", "http", "lazy_static", "mime", @@ -5182,7 +5411,45 @@ dependencies = [ "quote", "strum", "strum_macros", - "syn 1.0.103", + "syn 1.0.109", +] + +[[package]] +name = "parity-scale-codec" +version = "2.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "373b1a4c1338d9cd3d1fa53b3a11bdab5ab6bd80a20f7f7becd76953ae2be909" +dependencies = [ + "arrayvec 0.7.4", + "bitvec 0.20.4", + "byte-slice-cast", + "impl-trait-for-tuples", + "parity-scale-codec-derive", + "serde", +] + +[[package]] +name = "parity-scale-codec-derive" +version = "2.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1557010476e0595c9b568d16dcfb81b93cdeb157612726f5170d31aa707bed27" +dependencies = [ + "proc-macro-crate 1.3.1", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "parity-secp256k1" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fca4f82fccae37e8bbdaeb949a4a218a1bbc485d11598f193d2a908042e5fc1" +dependencies = [ + "arrayvec 0.5.2", + "cc", + "cfg-if 0.1.10", + "rand 0.7.3", ] [[package]] @@ -5204,7 +5471,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3a704eb390aafdc107b0e392f56a82b668e3a71366993b5340f5833fd62505e" dependencies = [ "lock_api 0.3.4", - "parking_lot_core 0.7.2", + "parking_lot_core 0.7.3", +] + +[[package]] +name = "parking_lot" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" +dependencies = [ + "instant", + "lock_api 0.4.11", + "parking_lot_core 0.8.6", ] [[package]] @@ -5213,15 +5491,15 @@ version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" dependencies = [ - "lock_api 0.4.7", - "parking_lot_core 0.9.3", + "lock_api 0.4.11", + "parking_lot_core 0.9.9", ] [[package]] name = "parking_lot_core" -version = "0.7.2" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d58c7c768d4ba344e3e8d72518ac13e259d7c7ade24167003b8488e10b6740a3" +checksum = "b93f386bb233083c799e6e642a9d73db98c24a5deeb95ffc85bf281255dffc98" dependencies = [ "cfg-if 0.1.10", "cloudabi", @@ -5233,22 +5511,36 @@ dependencies = [ [[package]] name = "parking_lot_core" -version = "0.9.3" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60a2cfe6f0ad2bfc16aefa463b497d5c7a5ecd44a23efa72aa342d90177356dc" +dependencies = [ + "cfg-if 1.0.0", + "instant", + "libc", + "redox_syscall 0.2.16", + "smallvec", + "winapi", +] + +[[package]] +name = "parking_lot_core" +version = "0.9.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09a279cbf25cb0757810394fbc1e359949b59e348145c643a939a525692e6929" +checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e" dependencies = [ "cfg-if 1.0.0", "libc", - "redox_syscall 0.2.13", + "redox_syscall 0.4.1", "smallvec", - "windows-sys 0.36.1", + "windows-targets 0.48.5", ] [[package]] name = "paste" -version = "1.0.7" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c520e05135d6e763148b6426a837e239041653ba7becd2e538c076c738025fc" +checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" [[package]] name = "peeking_take_while" @@ -5262,32 +5554,33 @@ version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fd56cbd21fea48d0c440b41cd69c589faacade08c992d9a54e471b79d0fd13eb" dependencies = [ - "base64 0.13.0", + "base64 0.13.1", "once_cell", "regex", ] [[package]] name = "percent-encoding" -version = "2.2.0" +version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e" +checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" [[package]] name = "pest" -version = "2.4.0" +version = "2.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbc7bc69c062e492337d74d59b120c274fd3d261b6bf6d3207d499b4b379c41a" +checksum = "ae9cee2a55a544be8b89dc6848072af97a20f2422603c10865be2a42b580fff5" dependencies = [ + "memchr", "thiserror", "ucd-trie", ] [[package]] name = "pest_derive" -version = "2.4.0" +version = "2.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60b75706b9642ebcb34dab3bc7750f811609a0eb1dd8b88c2d15bf628c1c65b2" +checksum = "81d78524685f5ef2a3b3bd1cafbc9fcabb036253d9b1463e726a91cd16e2dfc2" dependencies = [ "pest", "pest_generator", @@ -5295,63 +5588,63 @@ dependencies = [ [[package]] name = "pest_generator" -version = "2.4.0" +version = "2.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4f9272122f5979a6511a749af9db9bfc810393f63119970d7085fed1c4ea0db" +checksum = "68bd1206e71118b5356dae5ddc61c8b11e28b09ef6a31acbd15ea48a28e0c227" dependencies = [ "pest", "pest_meta", "proc-macro2", "quote", - "syn 1.0.103", + "syn 2.0.39", ] [[package]] name = "pest_meta" -version = "2.4.0" +version = "2.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c8717927f9b79515e565a64fe46c38b8cd0427e64c40680b14a7365ab09ac8d" +checksum = "7c747191d4ad9e4a4ab9c8798f1e82a39affe7ef9648390b7e5548d18e099de6" dependencies = [ "once_cell", "pest", - "sha1", + "sha2 0.10.8", ] [[package]] name = "petgraph" -version = "0.6.2" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6d5014253a1331579ce62aa67443b4a658c5e7dd03d4bc6d302b94474888143" +checksum = "e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9" dependencies = [ "fixedbitset", - "indexmap 1.9.2", + "indexmap 2.1.0", ] [[package]] name = "pin-project" -version = "1.0.10" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58ad3879ad3baf4e44784bc6a718a8698867bb991f8ce24d1bcbe2cfb4c3a75e" +checksum = "fda4ed1c6c173e3fc7a83629421152e01d7b1f9b7f65fb301e490e8cfc656422" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.0.10" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "744b6f092ba29c3650faf274db506afd39944f48420f6c86b17cfe0ee1cb36bb" +checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" dependencies = [ "proc-macro2", "quote", - "syn 1.0.103", + "syn 2.0.39", ] [[package]] name = "pin-project-lite" -version = "0.2.9" +version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116" +checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" [[package]] name = "pin-utils" @@ -5361,9 +5654,9 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "pkg-config" -version = "0.3.25" +version = "0.3.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae" +checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964" [[package]] name = "platforms" @@ -5371,11 +5664,17 @@ version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "14e6ab3f592e6fb464fc9712d8d6e6912de6473954635fd76a589d832cffcbb0" +[[package]] +name = "powerfmt" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" + [[package]] name = "ppv-lite86" -version = "0.2.16" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872" +checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" [[package]] name = "prefix-sum-vec" @@ -5401,12 +5700,12 @@ dependencies = [ [[package]] name = "prettyplease" -version = "0.2.4" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ceca8aaf45b5c46ec7ed39fff75f57290368c1846d33d24a122ca81416ab058" +checksum = "ae005bd773ab59b4725093fd7df83fd7892f7d8eafb48dbd7de6e024e4215f9d" dependencies = [ "proc-macro2", - "syn 2.0.32", + "syn 2.0.39", ] [[package]] @@ -5416,6 +5715,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "05e4722c697a58a99d5d06a08c30821d7c082a4632198de1eaa5a6c22ef42373" dependencies = [ "fixed-hash", + "impl-codec", "uint", ] @@ -5435,7 +5735,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" dependencies = [ "once_cell", - "toml_edit", + "toml_edit 0.19.15", +] + +[[package]] +name = "proc-macro-crate" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97dc5fea232fc28d2f597b37c4876b348a40e33f3b02cc975c8d006d78d94b1a" +dependencies = [ + "toml_datetime", + "toml_edit 0.20.2", ] [[package]] @@ -5447,7 +5757,7 @@ dependencies = [ "proc-macro-error-attr", "proc-macro2", "quote", - "syn 1.0.103", + "syn 1.0.109", "version_check", ] @@ -5464,9 +5774,9 @@ dependencies = [ [[package]] name = "proc-macro-hack" -version = "0.5.19" +version = "0.5.20+deprecated" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5" +checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" [[package]] name = "proc-macro2" @@ -5488,7 +5798,7 @@ dependencies = [ "lazy_static", "memchr", "parking_lot 0.12.1", - "protobuf 2.27.1", + "protobuf 2.28.0", "thiserror", ] @@ -5532,7 +5842,7 @@ dependencies = [ "itertools", "proc-macro2", "quote", - "syn 1.0.103", + "syn 1.0.109", ] [[package]] @@ -5547,15 +5857,15 @@ dependencies = [ [[package]] name = "protobuf" -version = "2.27.1" +version = "2.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf7e6d18738ecd0902d30d1ad232c9125985a3422929b16c65517b38adc14f96" +checksum = "106dd99e98437432fed6519dedecfade6a06a73bb7b2a1e019fdd2bee5778d94" [[package]] name = "protobuf" -version = "3.0.2" +version = "3.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a74937d52a466a535fda2e83f0e575f3ef1b34e4a84545b4a9e418fad32a3b1c" +checksum = "b65f4a8ec18723a734e5dc09c173e0abf9690432da5340285d536edcb4dac190" dependencies = [ "once_cell", "protobuf-support", @@ -5564,13 +5874,13 @@ dependencies = [ [[package]] name = "protobuf-codegen" -version = "3.0.2" +version = "3.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a02997c69a76d9dba3124e2041dc7bb32c98e2cc7bbd136950312a819c64f825" +checksum = "6e85514a216b1c73111d9032e26cc7a5ecb1bb3d4d9539e91fb72a4395060f78" dependencies = [ "anyhow", "once_cell", - "protobuf 3.0.2", + "protobuf 3.3.0", "protobuf-parse", "regex", "tempfile", @@ -5579,14 +5889,14 @@ dependencies = [ [[package]] name = "protobuf-parse" -version = "3.0.2" +version = "3.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3272369e02691aef4ff079ef97bb278afa9d15c21a41fd727654ab712e4bb297" +checksum = "77d6fbd6697c9e531873e81cec565a85e226b99a0f10e1acc079be057fe2fcba" dependencies = [ "anyhow", - "indexmap 1.9.2", + "indexmap 1.9.3", "log", - "protobuf 3.0.2", + "protobuf 3.3.0", "protobuf-support", "tempfile", "thiserror", @@ -5595,18 +5905,18 @@ dependencies = [ [[package]] name = "protobuf-support" -version = "3.0.2" +version = "3.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebf34636d66670da249c3b6589142e7f0b4918a015ec72fa32102fd43e023b0e" +checksum = "6872f4d4f4b98303239a2b5838f5bbbb77b01ffc892d627957f37a22d7cfe69c" dependencies = [ "thiserror", ] [[package]] name = "psm" -version = "0.1.18" +version = "0.1.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "871372391786ccec00d3c5d3d6608905b3d4db263639cfe075d3b60a736d115a" +checksum = "5787f7cda34e3033a72192c018bc5883100330f362ef279a8cbccfce8bb4e874" dependencies = [ "cc", ] @@ -5628,7 +5938,7 @@ checksum = "16b845dbfca988fa33db069c0e230574d15a3088f147a87b64c7589eb662c9ac" dependencies = [ "proc-macro2", "quote", - "syn 1.0.103", + "syn 1.0.109", ] [[package]] @@ -5651,6 +5961,12 @@ dependencies = [ "proc-macro2", ] +[[package]] +name = "radium" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "643f8f41a8ebc4c5dc4515c82bb8abd397b527fc20fd681b7c011c2aee5d44fb" + [[package]] name = "radium" version = "0.7.0" @@ -5716,7 +6032,7 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom 0.2.9", + "getrandom 0.2.11", ] [[package]] @@ -5730,9 +6046,9 @@ dependencies = [ [[package]] name = "rand_hc" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d51e9f596de227fda2ea6c84607f5558e196eeaf43c986b724ba4fb8fdf497e7" +checksum = "7b363d4f6370f88d62bf586c80405657bde0f0e1b8945d47d2ad59b906cb4f54" dependencies = [ "rand_core 0.6.4", ] @@ -5757,39 +6073,36 @@ dependencies = [ [[package]] name = "rayon" -version = "1.5.3" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd99e5772ead8baa5215278c9b15bf92087709e9c1b2d1f97cdb5a183c933a7d" +checksum = "9c27db03db7734835b3f53954b534c91069375ce6ccaa2e065441e07d9b6cdb1" dependencies = [ - "autocfg", - "crossbeam-deque", "either", "rayon-core", ] [[package]] name = "rayon-core" -version = "1.9.3" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "258bcdb5ac6dad48491bb2992db6b7cf74878b0384908af124823d118c99683f" +checksum = "5ce3fb6ad83f861aac485e76e1985cd109d9a3713802152be56c3b1f0e0658ed" dependencies = [ - "crossbeam-channel", "crossbeam-deque", "crossbeam-utils", - "num_cpus", ] [[package]] name = "redis" -version = "0.23.0" +version = "0.23.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ea8c51b5dc1d8e5fd3350ec8167f464ec0995e79f2e90a075b63371500d557f" +checksum = "4f49cdc0bb3f412bf8e7d1bd90fe1d9eb10bc5c399ba90973c14662a27b3f8ba" dependencies = [ "combine", "itoa", "percent-encoding", "ryu", "sha1_smol", + "socket2 0.4.10", "url", ] @@ -5801,9 +6114,9 @@ checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce" [[package]] name = "redox_syscall" -version = "0.2.13" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42" +checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" dependencies = [ "bitflags 1.3.2", ] @@ -5819,12 +6132,12 @@ dependencies = [ [[package]] name = "redox_users" -version = "0.4.3" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b" +checksum = "a18479200779601e498ada4e8c1e1f50e3ee19deb0259c25825a98b5603b2cb4" dependencies = [ - "getrandom 0.2.9", - "redox_syscall 0.2.13", + "getrandom 0.2.11", + "libredox", "thiserror", ] @@ -5852,13 +6165,14 @@ dependencies = [ [[package]] name = "regex" -version = "1.7.1" +version = "1.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733" +checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343" dependencies = [ "aho-corasick", "memchr", - "regex-syntax", + "regex-automata 0.4.3", + "regex-syntax 0.8.2", ] [[package]] @@ -5867,14 +6181,31 @@ version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" dependencies = [ - "regex-syntax", + "regex-syntax 0.6.29", +] + +[[package]] +name = "regex-automata" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax 0.8.2", ] [[package]] name = "regex-syntax" -version = "0.6.28" +version = "0.6.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" + +[[package]] +name = "regex-syntax" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848" +checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f" [[package]] name = "region" @@ -5890,20 +6221,20 @@ dependencies = [ [[package]] name = "rend" -version = "0.3.6" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79af64b4b6362ffba04eef3a4e10829718a4896dac19daa741851c86781edf95" +checksum = "a2571463863a6bd50c32f94402933f03457a3fbaf697a707c5be741e459f08fd" dependencies = [ "bytecheck", ] [[package]] name = "reqwest" -version = "0.11.17" +version = "0.11.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13293b639a097af28fc8a90f22add145a9c954e49d77da06263d58cf44d5fb91" +checksum = "046cd98826c46c2ac8ddecae268eb5c2e58628688a5fc7a2643704a73faba95b" dependencies = [ - "base64 0.21.0", + "base64 0.21.5", "bytes", "encoding_rs", "futures-core", @@ -5924,9 +6255,10 @@ dependencies = [ "serde", "serde_json", "serde_urlencoded", + "system-configuration", "tokio", "tokio-native-tls", - "tokio-util 0.7.2", + "tokio-util 0.7.10", "tower-service", "url", "wasm-bindgen", @@ -5942,10 +6274,10 @@ version = "0.0.0" dependencies = [ "clap", "integration-tests", - "near-crypto", + "near-crypto 0.0.0", "near-jsonrpc-client", "near-o11y", - "near-primitives", + "near-primitives 0.0.0", "nearcore", "tokio", ] @@ -5959,44 +6291,61 @@ dependencies = [ "cc", "libc", "once_cell", - "spin", - "untrusted", + "spin 0.5.2", + "untrusted 0.7.1", "web-sys", "winapi", ] +[[package]] +name = "ring" +version = "0.17.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "688c63d65483050968b2a8937f7995f443e27041a0f7700aa59b0822aedebb74" +dependencies = [ + "cc", + "getrandom 0.2.11", + "libc", + "spin 0.9.8", + "untrusted 0.9.0", + "windows-sys 0.48.0", +] + [[package]] name = "ripemd" -version = "0.1.1" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1facec54cb5e0dc08553501fa740091086d0259ad0067e0d4103448e4cb22ed3" +checksum = "bd124222d17ad93a644ed9d011a40f4fb64aa54275c08cc216524a9ea82fb09f" dependencies = [ - "digest 0.10.6", + "digest 0.10.7", ] [[package]] name = "rkyv" -version = "0.7.38" +version = "0.7.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "517a3034eb2b1499714e9d1e49b2367ad567e07639b69776d35e259d9c27cca6" +checksum = "0200c8230b013893c0b2d6213d6ec64ed2b9be2e0e016682b7224ff82cff5c58" dependencies = [ + "bitvec 1.0.1", "bytecheck", "hashbrown 0.12.3", "ptr_meta", "rend", "rkyv_derive", "seahash", + "tinyvec", + "uuid", ] [[package]] name = "rkyv_derive" -version = "0.7.38" +version = "0.7.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "505c209ee04111a006431abf39696e640838364d67a107c559ababaf6fd8c9dd" +checksum = "b2e06b915b5c230a17d7a736d1e2e63ee753c256a8614ef3f5147b13a4f5541d" dependencies = [ "proc-macro2", "quote", - "syn 1.0.103", + "syn 1.0.109", ] [[package]] @@ -6008,6 +6357,15 @@ dependencies = [ "libc", ] +[[package]] +name = "rlp" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1190dcc8c3a512f1eef5d09bb8c84c7f39e1054e174d1795482e18f5272f2e73" +dependencies = [ + "rustc-hex", +] + [[package]] name = "rocksdb" version = "0.21.0" @@ -6023,7 +6381,7 @@ name = "runtime-params-estimator" version = "0.0.0" dependencies = [ "anyhow", - "borsh 1.0.0", + "borsh 1.2.1", "bs58", "bytesize", "cfg-if 1.0.0", @@ -6036,10 +6394,10 @@ dependencies = [ "insta", "libc", "near-chain-configs", - "near-crypto", + "near-crypto 0.0.0", "near-fmt", "near-o11y", - "near-primitives", + "near-primitives 0.0.0", "near-store", "near-test-contracts", "near-vm-runner", @@ -6069,10 +6427,10 @@ dependencies = [ "near-chain-configs", "near-client", "near-client-primitives", - "near-crypto", + "near-crypto 0.0.0", "near-epoch-manager", "near-o11y", - "near-primitives", + "near-primitives 0.0.0", "near-store", "near-test-contracts", "nearcore", @@ -6126,7 +6484,7 @@ dependencies = [ "async-trait", "aws-creds", "aws-region", - "base64 0.13.0", + "base64 0.13.1", "block_on_proc", "cfg-if 1.0.0", "hex", @@ -6141,7 +6499,7 @@ dependencies = [ "serde", "serde-xml-rs", "serde_derive", - "sha2", + "sha2 0.10.8", "thiserror", "time", "tokio", @@ -6151,9 +6509,9 @@ dependencies = [ [[package]] name = "rustc-demangle" -version = "0.1.21" +version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ef03e0a2b150c7a90d01faf6254c9c48a41e95fb2a8c2ac1c6f0d2b9aefc342" +checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" [[package]] name = "rustc-hash" @@ -6182,80 +6540,86 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" dependencies = [ - "semver 1.0.9", + "semver 1.0.20", ] [[package]] name = "rustix" -version = "0.36.9" +version = "0.37.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd5c6ff11fecd55b40746d1995a02f2eb375bf8c00d192d521ee09f42bef37bc" +checksum = "fea8ca367a3a01fe35e6943c400addf443c0f57670e6ec51196f71a4b8762dd2" dependencies = [ "bitflags 1.3.2", - "errno 0.2.8", + "errno 0.3.8", "io-lifetimes", "libc", - "linux-raw-sys 0.1.4", - "windows-sys 0.45.0", + "linux-raw-sys 0.3.8", + "windows-sys 0.48.0", ] [[package]] name = "rustix" -version = "0.37.20" +version = "0.38.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b96e891d04aa506a6d1f318d2771bcb1c7dfda84e126660ace067c9b474bb2c0" +checksum = "9470c4bf8246c8daf25f9598dca807fb6510347b1e1cfa55749113850c79d88a" dependencies = [ - "bitflags 1.3.2", - "errno 0.3.1", - "io-lifetimes", + "bitflags 2.4.1", + "errno 0.3.8", "libc", - "linux-raw-sys 0.3.8", - "windows-sys 0.48.0", + "linux-raw-sys 0.4.12", + "windows-sys 0.52.0", ] [[package]] -name = "rustix" -version = "0.38.24" +name = "rustls" +version = "0.21.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ad981d6c340a49cdc40a1028d9c6084ec7e9fa33fcb839cab656a267071e234" +checksum = "629648aced5775d558af50b2b4c7b02983a04b312126d45eeead26e7caa498b9" dependencies = [ - "bitflags 2.4.1", - "errno 0.3.1", - "libc", - "linux-raw-sys 0.4.11", - "windows-sys 0.48.0", + "log", + "ring 0.17.7", + "rustls-webpki", + "sct", +] + +[[package]] +name = "rustls-webpki" +version = "0.101.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" +dependencies = [ + "ring 0.17.7", + "untrusted 0.9.0", ] [[package]] name = "rustversion" -version = "1.0.6" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2cc38e8fa666e2de3c4aba7edeb5ffc5246c1c2ed0e3d17e560aeeba736b23f" +checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4" [[package]] name = "rxml" -version = "0.8.2" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a071866b8c681dc2cfffa77184adc32b57b0caad4e620b6292609703bceb804" +checksum = "a98f186c7a2f3abbffb802984b7f1dfd65dac8be1aafdaabbca4137f53f0dff7" dependencies = [ "bytes", - "pin-project-lite", "rxml_validation", - "smartstring 0.2.10", - "tokio", + "smartstring", ] [[package]] name = "rxml_validation" -version = "0.8.2" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53bc79743f9a66c2fb1f951cd83735f275d46bfe466259fbc5897bb60a0d00ee" +checksum = "22a197350ece202f19a166d1ad6d9d6de145e1d2a8ef47db299abe164dbd7530" [[package]] name = "ryu" -version = "1.0.10" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3f6f92acf49d1b98f7a81226834412ada05458b7364277387724a237f062695" +checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741" [[package]] name = "same-file" @@ -6268,25 +6632,52 @@ dependencies = [ [[package]] name = "schannel" -version = "0.1.19" +version = "0.1.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f05ba609c234e60bee0d547fe94a4c7e9da733d1c962cf6e59efa4cd9c8bc75" +checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88" dependencies = [ - "lazy_static", - "winapi", + "windows-sys 0.48.0", +] + +[[package]] +name = "schemars" +version = "0.8.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "45a28f4c49489add4ce10783f7911893516f15afe45d015608d41faca6bc4d29" +dependencies = [ + "dyn-clone", + "schemars_derive", + "serde", + "serde_json", +] + +[[package]] +name = "schemars_derive" +version = "0.8.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c767fd6fa65d9ccf9cf026122c1b555f2ef9a4f0cea69da4d7dbc3e258d30967" +dependencies = [ + "proc-macro2", + "quote", + "serde_derive_internals", + "syn 1.0.109", ] [[package]] name = "scopeguard" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] -name = "scratch" -version = "1.0.5" +name = "sct" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1792db035ce95be60c3f8853017b3999209281c24e2ba5bc8e59bf97a0c590c1" +checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" +dependencies = [ + "ring 0.17.7", + "untrusted 0.9.0", +] [[package]] name = "seahash" @@ -6315,9 +6706,9 @@ dependencies = [ [[package]] name = "security-framework" -version = "2.6.1" +version = "2.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dc14f172faf8a0194a3aded622712b0de276821addc574fa54fc0a1167e10dc" +checksum = "05b64fb303737d99b81884b2c63433e9ae28abebe5eb5045dcdd175dc2ecf4de" dependencies = [ "bitflags 1.3.2", "core-foundation", @@ -6328,9 +6719,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.6.1" +version = "2.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0160a13a177a45bfb43ce71c01580998474f556ad854dcbca936dd2841a5c556" +checksum = "e932934257d3b408ed8f30db49d85ea163bfe74961f017f405b025af298f0c7a" dependencies = [ "core-foundation-sys", "libc", @@ -6347,9 +6738,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.9" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8cb243bdfdb5936c8dc3c45762a19d12ab4550cdc753bc247637d4ec35a040fd" +checksum = "836fa6a3e1e547f9a2c4040802ec865b5d85f4014efe00555d7090a3dcaa1090" dependencies = [ "serde", ] @@ -6362,9 +6753,9 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" [[package]] name = "serde" -version = "1.0.192" +version = "1.0.193" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bca2a08484b285dcb282d0f67b26cadc0df8b19f8c12502c13d966bf9482f001" +checksum = "25dd9975e68d0cb5aa1120c288333fc98731bd1dd12f561e468ea4728c042b89" dependencies = [ "serde_derive", ] @@ -6393,40 +6784,51 @@ dependencies = [ [[package]] name = "serde_bytes" -version = "0.11.6" +version = "0.11.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "212e73464ebcde48d723aa02eb270ba62eff38a9b732df31f33f1b4e145f3a54" +checksum = "ab33ec92f677585af6d88c65593ae2375adde54efdbf16d597f2cbc7a6d368ff" dependencies = [ "serde", ] [[package]] name = "serde_derive" -version = "1.0.192" +version = "1.0.193" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43576ca501357b9b071ac53cdc7da8ef0cbd9493d8df094cd821777ea6e894d3" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", +] + +[[package]] +name = "serde_derive_internals" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6c7207fbec9faa48073f3e3074cbe553af6ea512d7c21ba46e434e70ea9fbc1" +checksum = "85bf8229e7920a9f636479437026331ce11aa132b4dde37d121944a44d6e5f3c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 1.0.109", ] [[package]] name = "serde_ignored" -version = "0.1.3" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1940036ca2411651a40012009d062087dfe62817b2191a03750fb569e11fa633" +checksum = "80c31d5c53fd39f208e770f5a20a0bb214dee2a8d0d8adba18e19ad95a482ca5" dependencies = [ "serde", ] [[package]] name = "serde_json" -version = "1.0.81" +version = "1.0.108" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b7ce2b32a1aed03c558dc61a5cd328f15aff2dbc17daad8fb8af04d2100e15c" +checksum = "3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b" dependencies = [ - "indexmap 1.9.2", + "indexmap 2.1.0", "itoa", "ryu", "serde", @@ -6434,13 +6836,13 @@ dependencies = [ [[package]] name = "serde_repr" -version = "0.1.8" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2ad84e47328a31223de7fed7a4f5087f2d6ddfe586cf3ca25b7a165bc0a5aed" +checksum = "3081f5ffbb02284dda55132aa26daecedd7372a42417bbbab6f14ab7d6bb9145" dependencies = [ "proc-macro2", "quote", - "syn 1.0.103", + "syn 2.0.39", ] [[package]] @@ -6457,14 +6859,15 @@ dependencies = [ [[package]] name = "serde_with" -version = "3.0.0" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f02d8aa6e3c385bf084924f660ce2a3a6bd333ba55b35e8590b321f35d88513" +checksum = "64cd236ccc1b7a29e7e2739f27c0b2dd199804abc4290e32f59f3b68d6405c23" dependencies = [ - "base64 0.21.0", + "base64 0.21.5", "chrono", "hex", - "indexmap 1.9.2", + "indexmap 1.9.3", + "indexmap 2.1.0", "serde", "serde_json", "serde_with_macros", @@ -6473,23 +6876,23 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "3.0.0" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edc7d5d3932fb12ce722ee5e64dd38c504efba37567f0c402f6ca728c3b8b070" +checksum = "93634eb5f75a2323b16de4748022ac4297f9e76b6dced2be287a099f41b5e788" dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.39", ] [[package]] name = "serde_yaml" -version = "0.9.16" +version = "0.9.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92b5b431e8907b50339b51223b97d102db8d987ced36f6e4d03621db9316c834" +checksum = "3cc7a1570e38322cfe4154732e5110f887ea57e22b76f4bfd32b5bdd3368666c" dependencies = [ - "indexmap 1.9.2", + "indexmap 2.1.0", "itoa", "ryu", "serde", @@ -6503,7 +6906,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e0bccbcf40c8938196944a3da0e133e031a33f4d6b72db3bda3cc556e361905d" dependencies = [ "lazy_static", - "parking_lot 0.10.2", + "parking_lot 0.11.2", "serial_test_derive", ] @@ -6515,18 +6918,18 @@ checksum = "b2acd6defeddb41eb60bb468f8825d0cfd0c2a76bc03bfd235b6a1dc4f6a1ad5" dependencies = [ "proc-macro2", "quote", - "syn 1.0.103", + "syn 1.0.109", ] [[package]] name = "sha1" -version = "0.10.5" +version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f04293dc80c3993519f2d7f6f511707ee7094fe0c6d3406feb330cdb3540eba3" +checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" dependencies = [ "cfg-if 1.0.0", "cpufeatures", - "digest 0.10.6", + "digest 0.10.7", ] [[package]] @@ -6537,30 +6940,43 @@ checksum = "ae1a47186c03a32177042e55dbc5fd5aee900b8e0069a8d70fba96a9375cd012" [[package]] name = "sha2" -version = "0.10.6" +version = "0.9.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0" +checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" dependencies = [ + "block-buffer 0.9.0", "cfg-if 1.0.0", "cpufeatures", - "digest 0.10.6", + "digest 0.9.0", + "opaque-debug", ] [[package]] -name = "sha3" -version = "0.10.6" +name = "sha2" +version = "0.10.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" +dependencies = [ + "cfg-if 1.0.0", + "cpufeatures", + "digest 0.10.7", +] + +[[package]] +name = "sha3" +version = "0.10.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdf0c33fae925bdc080598b84bc15c55e7b9a4a43b3c704da051f977469691c9" +checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" dependencies = [ - "digest 0.10.6", + "digest 0.10.7", "keccak", ] [[package]] name = "sharded-slab" -version = "0.1.4" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "900fba806f70c630b0a382d0d825e17a0f19fcd059a2ade1ff237bcddf446b31" +checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" dependencies = [ "lazy_static", ] @@ -6573,15 +6989,15 @@ checksum = "45bb67a18fa91266cc7807181f62f9178a6873bfad7dc788c42e6430db40184f" [[package]] name = "shlex" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3" +checksum = "a7cee0529a6d40f580e7a5e6c495c8fbfe21b7b52795ed4bb5e62cdf92bc6380" [[package]] name = "signal-hook" -version = "0.3.14" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a253b5e89e2698464fc26b545c9edceb338e18a89effeeecfea192c3025be29d" +checksum = "8621587d4798caf8eb44879d42e56b9a93ea5dcd315a6487c357130095b62801" dependencies = [ "libc", "signal-hook-registry", @@ -6600,24 +7016,36 @@ dependencies = [ [[package]] name = "signal-hook-registry" -version = "1.4.0" +version = "1.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e51e73328dc4ac0c7ccbda3a494dfa03df1de2f46018127f60c693f2648455b0" +checksum = "d8229b473baa5980ac72ef434c4415e70c4b5e71b423043adb4ba059f89c99a1" dependencies = [ "libc", ] +[[package]] +name = "signature" +version = "1.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c" + [[package]] name = "signature" version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" +[[package]] +name = "simdutf8" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f27f6278552951f1f2b8cf9da965d10969b2efdea95a6ec47987ab46edfe263a" + [[package]] name = "similar" -version = "2.1.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e24979f63a11545f5f2c60141afe249d4f19f84581ea2138065e400941d83d3" +checksum = "2aeaf503862c419d66959f5d7ca015337d864e9c49485d771b732e2a20453597" [[package]] name = "simple_asn1" @@ -6642,21 +7070,24 @@ dependencies = [ [[package]] name = "slab" -version = "0.4.6" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb703cfe953bccee95685111adeedb76fabe4e97549a58d16f03ea7b9367bb32" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" +dependencies = [ + "autocfg", +] [[package]] name = "slice-group-by" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03b634d87b960ab1a38c4fe143b508576f075e7c978bfad18217645ebfdfa2ec" +checksum = "826167069c09b99d56f31e9ae5c99049e932a98c9dc2dac47645b08dbbf76ba7" [[package]] name = "smallvec" -version = "1.10.0" +version = "1.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0" +checksum = "4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970" [[package]] name = "smart-default" @@ -6666,16 +7097,7 @@ checksum = "133659a15339456eeeb07572eb02a91c91e9815e9cbc89566944d2c8d3efdbf6" dependencies = [ "proc-macro2", "quote", - "syn 1.0.103", -] - -[[package]] -name = "smartstring" -version = "0.2.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e714dff2b33f2321fdcd475b71cec79781a692d846f37f415fb395a1d2bcd48e" -dependencies = [ - "static_assertions", + "syn 1.0.109", ] [[package]] @@ -6691,25 +7113,35 @@ dependencies = [ [[package]] name = "socket2" -version = "0.4.9" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662" +checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d" dependencies = [ "libc", "winapi", ] +[[package]] +name = "socket2" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b5fac59a5cb5dd637972e5fca70daf0523c9067fcdc4842f053dae04a18f8e9" +dependencies = [ + "libc", + "windows-sys 0.48.0", +] + [[package]] name = "speedy_sync" version = "0.0.0" dependencies = [ - "borsh 1.0.0", + "borsh 1.2.1", "clap", "near-chain", "near-chain-configs", "near-chain-primitives", "near-epoch-manager", - "near-primitives", + "near-primitives 0.0.0", "near-store", "nearcore", "serde", @@ -6722,6 +7154,12 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" +[[package]] +name = "spin" +version = "0.9.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" + [[package]] name = "sptr" version = "0.3.2" @@ -6740,7 +7178,7 @@ version = "0.0.0" dependencies = [ "actix", "anyhow", - "borsh 1.0.0", + "borsh 1.2.1", "bytesize", "chrono", "clap", @@ -6750,12 +7188,12 @@ dependencies = [ "near-chain", "near-chain-configs", "near-client", - "near-crypto", + "near-crypto 0.0.0", "near-epoch-manager", "near-network", "near-o11y", - "near-primitives", - "near-primitives-core", + "near-primitives 0.0.0", + "near-primitives-core 0.0.0", "near-store", "near-test-contracts", "nearcore", @@ -6790,7 +7228,7 @@ dependencies = [ "anyhow", "near-chain-configs", "near-o11y", - "near-primitives", + "near-primitives 0.0.0", "near-store", "node-runtime", "serde_json", @@ -6808,7 +7246,7 @@ dependencies = [ "near-client", "near-epoch-manager", "near-o11y", - "near-primitives", + "near-primitives 0.0.0", "near-store", "nearcore", "serde_json", @@ -6824,24 +7262,24 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" [[package]] name = "strum" -version = "0.24.0" +version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e96acfc1b70604b8b2f1ffa4c57e59176c7dbb05d556c71ecd2f5498a1dee7f8" +checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f" dependencies = [ "strum_macros", ] [[package]] name = "strum_macros" -version = "0.24.0" +version = "0.24.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6878079b17446e4d3eba6192bb0a2950d5b14f0ed8424b852310e5a94345d0ef" +checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59" dependencies = [ - "heck 0.4.0", + "heck 0.4.1", "proc-macro2", "quote", "rustversion", - "syn 1.0.103", + "syn 1.0.109", ] [[package]] @@ -6850,12 +7288,12 @@ version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a7e94b1ec00bad60e6410e058b52f1c66de3dc5fe4d62d09b3e52bb7d3b73e25" dependencies = [ - "base64 0.13.0", + "base64 0.13.1", "crc", "lazy_static", "md-5", "rand 0.8.5", - "ring", + "ring 0.16.20", "subtle", "thiserror", "tokio", @@ -6869,15 +7307,15 @@ version = "0.0.0" [[package]] name = "subtle" -version = "2.4.1" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601" +checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" [[package]] name = "syn" -version = "1.0.103" +version = "1.0.109" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a864042229133ada95abf3b54fdc62ef5ccabe9515b64717bcb9a1919e59445d" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" dependencies = [ "proc-macro2", "quote", @@ -6886,9 +7324,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.32" +version = "2.0.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "239814284fd6f1a4ffe4ca893952cdd93c224b6a1571c9a9eadd670295c0c9e2" +checksum = "23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a" dependencies = [ "proc-macro2", "quote", @@ -6897,21 +7335,21 @@ dependencies = [ [[package]] name = "syn_derive" -version = "0.1.6" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8128874d02f9a114ade6d9ad252078cb32d3cb240e26477ac73d7e9c495c605e" +checksum = "1329189c02ff984e9736652b1631330da25eaa6bc639089ed4915d25446cbe7b" dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.39", ] [[package]] name = "sysinfo" -version = "0.24.5" +version = "0.24.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d80929a3b477bce3a64360ca82bfb361eacce1dcb7b1fb31e8e5e181e37c212" +checksum = "54cb4ebf3d49308b99e6e9dc95e989e2fdbdc210e4f67c39db0bb89ba927001c" dependencies = [ "cfg-if 1.0.0", "core-foundation-sys", @@ -6922,6 +7360,27 @@ dependencies = [ "winapi", ] +[[package]] +name = "system-configuration" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" +dependencies = [ + "bitflags 1.3.2", + "core-foundation", + "system-configuration-sys", +] + +[[package]] +name = "system-configuration-sys" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" +dependencies = [ + "core-foundation-sys", + "libc", +] + [[package]] name = "tap" version = "1.0.1" @@ -6936,9 +7395,9 @@ checksum = "ab0e7238dcc7b40a7be719a25365910f6807bd864f4cce6b2e6b873658e2b19d" [[package]] name = "target-lexicon" -version = "0.12.3" +version = "0.12.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7fa7e55043acb85fca6b3c01485a2eeb6b69c5d21002e273c79e465f43b7ac1" +checksum = "14c39fd04924ca3a864207c66fc2cd7d22d7c016007f9ce846cbb9326331930a" [[package]] name = "tempfile" @@ -6949,28 +7408,38 @@ dependencies = [ "cfg-if 1.0.0", "fastrand", "redox_syscall 0.4.1", - "rustix 0.38.24", + "rustix 0.38.26", "windows-sys 0.48.0", ] [[package]] name = "termcolor" -version = "1.1.3" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755" +checksum = "ff1bc3d3f05aff0403e8ac0d92ced918ec05b666a43f83297ccef5bea8a3d449" dependencies = [ "winapi-util", ] [[package]] name = "test-log" -version = "0.2.11" +version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38f0c854faeb68a048f0f2dc410c5ddae3bf83854ef0e4977d58306a5edef50e" +checksum = "6159ab4116165c99fc88cce31f99fa2c9dbe08d3691cb38da02fc3b45f357d2b" +dependencies = [ + "test-log-macros", + "tracing-subscriber", +] + +[[package]] +name = "test-log-macros" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ba277e77219e9eea169e8508942db1bf5d8a41ff2db9b20aab5a5aadc9fa25d" dependencies = [ "proc-macro2", "quote", - "syn 1.0.103", + "syn 2.0.39", ] [[package]] @@ -6979,8 +7448,8 @@ version = "0.0.0" dependencies = [ "near-chain", "near-chain-configs", - "near-crypto", - "near-primitives", + "near-crypto 0.0.0", + "near-primitives 0.0.0", "near-test-contracts", "node-runtime", "once_cell", @@ -6992,7 +7461,7 @@ version = "0.0.0" dependencies = [ "anyhow", "cargo_metadata", - "semver 1.0.9", + "semver 1.0.20", "serde", "toml", ] @@ -7014,34 +7483,34 @@ checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.39", ] [[package]] name = "thread_local" -version = "1.1.4" +version = "1.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5516c27b78311c50bf42c071425c560ac799b11c30b31f87e3081965fe5e0180" +checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152" dependencies = [ + "cfg-if 1.0.0", "once_cell", ] [[package]] name = "tikv-jemalloc-sys" -version = "0.5.2+5.3.0-patched" +version = "0.5.4+5.3.0-patched" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec45c14da997d0925c7835883e4d5c181f196fa142f8c19d7643d1e9af2592c3" +checksum = "9402443cb8fd499b6f327e40565234ff34dbda27460c5b47db0db77443dd85d1" dependencies = [ "cc", - "fs_extra", "libc", ] [[package]] name = "tikv-jemallocator" -version = "0.5.0" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20612db8a13a6c06d57ec83953694185a367e16945f66565e8028d2c0bd76979" +checksum = "965fe0c26be5c56c94e38ba547249074803efd52adfb66de62107d95aab3eaca" dependencies = [ "libc", "tikv-jemalloc-sys", @@ -7049,11 +7518,13 @@ dependencies = [ [[package]] name = "time" -version = "0.3.21" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f3403384eaacbca9923fa06940178ac13e4edb725486d70e8e15881d0c836cc" +checksum = "c4a34ab300f2dee6e562c10a046fc05e358b29f9bf92277f30c3c8d82275f6f5" dependencies = [ + "deranged", "itoa", + "powerfmt", "serde", "time-core", "time-macros", @@ -7061,15 +7532,15 @@ dependencies = [ [[package]] name = "time-core" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7300fbefb4dadc1af235a9cef3737cea692a9d97e1b9cbcd4ebdae6f8868e6fb" +checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" [[package]] name = "time-macros" -version = "0.2.9" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "372950940a5f07bf38dbe211d7283c9e6d7327df53794992d293e534c733d09b" +checksum = "4ad70d68dba9e1f8aceda7aa6711965dfec1cac869f311a51bd08b3a2ccbce20" dependencies = [ "time-core", ] @@ -7095,17 +7566,16 @@ dependencies = [ [[package]] name = "tinyvec_macros" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.29.1" +version = "1.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "532826ff75199d5833b9d2c5fe410f29235e25704ee5f0ef599fb51c21f4a4da" +checksum = "d0c014766411e834f7af5b8f4cf46257aab4036ca95e9d2c144a10f59ad6f5b9" dependencies = [ - "autocfg", "backtrace", "bytes", "libc", @@ -7114,7 +7584,7 @@ dependencies = [ "parking_lot 0.12.1", "pin-project-lite", "signal-hook-registry", - "socket2", + "socket2 0.5.5", "tokio-macros", "windows-sys 0.48.0", ] @@ -7131,20 +7601,20 @@ dependencies = [ [[package]] name = "tokio-macros" -version = "2.1.0" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" +checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.39", ] [[package]] name = "tokio-native-tls" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7d995660bd2b7f8c1568414c1126076c13fbb725c40112dc0120b78eb9b717b" +checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" dependencies = [ "native-tls", "tokio", @@ -7164,9 +7634,9 @@ dependencies = [ [[package]] name = "tokio-stream" -version = "0.1.9" +version = "0.1.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df54d54117d6fdc4e4fea40fe1e4e566b3505700e148a6827e59b34b0d2600d9" +checksum = "397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842" dependencies = [ "futures-core", "pin-project-lite", @@ -7189,9 +7659,9 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.7.2" +version = "0.7.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f988a1a1adc2fb21f9c12aa96441da33a1728193ae0b95d2be22dbd17fcb4e5c" +checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15" dependencies = [ "bytes", "futures-core", @@ -7203,9 +7673,9 @@ dependencies = [ [[package]] name = "toml" -version = "0.5.9" +version = "0.5.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7" +checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234" dependencies = [ "serde", ] @@ -7222,7 +7692,18 @@ version = "0.19.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" dependencies = [ - "indexmap 2.0.0", + "indexmap 2.1.0", + "toml_datetime", + "winnow", +] + +[[package]] +name = "toml_edit" +version = "0.20.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "396e4d48bbb2b7554c944bde63101b5ae446cff6ec4a24227428f15eb72ef338" +dependencies = [ + "indexmap 2.1.0", "toml_datetime", "winnow", ] @@ -7235,7 +7716,7 @@ checksum = "ff08f4649d10a70ffa3522ca559031285d8e421d727ac85c60825761818f5d0a" dependencies = [ "async-stream", "async-trait", - "base64 0.13.0", + "base64 0.13.1", "bytes", "futures-core", "futures-util", @@ -7267,7 +7748,7 @@ dependencies = [ "proc-macro2", "prost-build", "quote", - "syn 1.0.103", + "syn 1.0.109", ] [[package]] @@ -7278,13 +7759,13 @@ checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" dependencies = [ "futures-core", "futures-util", - "indexmap 1.9.2", + "indexmap 1.9.3", "pin-project", "pin-project-lite", "rand 0.8.5", "slab", "tokio", - "tokio-util 0.7.2", + "tokio-util 0.7.10", "tower-layer", "tower-service", "tracing", @@ -7292,15 +7773,15 @@ dependencies = [ [[package]] name = "tower-layer" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "343bc9466d3fe6b0f960ef45960509f84480bf4fd96f92901afe7ff3df9d3a62" +checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" [[package]] name = "tower-service" -version = "0.3.1" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "360dfd1d6d30e05fda32ace2c8c70e9c0a9da713275777f5a4dbb8a1893930c6" +checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" [[package]] name = "tqdm" @@ -7313,11 +7794,10 @@ dependencies = [ [[package]] name = "tracing" -version = "0.1.36" +version = "0.1.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fce9567bd60a67d08a16488756721ba392f24f29006402881e43b19aac64307" +checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" dependencies = [ - "cfg-if 1.0.0", "log", "pin-project-lite", "tracing-attributes", @@ -7326,31 +7806,32 @@ dependencies = [ [[package]] name = "tracing-appender" -version = "0.2.2" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09d48f71a791638519505cefafe162606f706c25592e4bde4d97600c0195312e" +checksum = "3566e8ce28cc0a3fe42519fc80e6b4c943cc4c8cef275620eb8dac2d3d4e06cf" dependencies = [ "crossbeam-channel", + "thiserror", "time", "tracing-subscriber", ] [[package]] name = "tracing-attributes" -version = "0.1.22" +version = "0.1.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11c75893af559bc8e10716548bdef5cb2b983f8e637db9d0e15126b61b484ee2" +checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 1.0.103", + "syn 2.0.39", ] [[package]] name = "tracing-core" -version = "0.1.30" +version = "0.1.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24eb03ba0eab1fd845050058ce5e616558e8f8d8fca633e6b163fe25c797213a" +checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" dependencies = [ "once_cell", "valuable", @@ -7368,12 +7849,12 @@ dependencies = [ [[package]] name = "tracing-log" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78ddad33d2d10b1ed7eb9d1f518a5674713876e97e5bb9b7345a7984fbb4f922" +checksum = "f751112709b4e791d8ce53e32c4ed2d353565a795ce84da2285393f41557bdf2" dependencies = [ - "lazy_static", "log", + "once_cell", "tracing-core", ] @@ -7398,7 +7879,7 @@ dependencies = [ "opentelemetry", "tracing", "tracing-core", - "tracing-log 0.1.3", + "tracing-log 0.1.4", "tracing-subscriber", ] @@ -7432,15 +7913,15 @@ dependencies = [ [[package]] name = "try-lock" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642" +checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed" [[package]] name = "trybuild" -version = "1.0.80" +version = "1.0.85" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "501dbdbb99861e4ab6b60eb6a7493956a9defb644fd034bc4a5ef27c693c8a3a" +checksum = "196a58260a906cedb9bf6d8034b6379d0c11f552416960452f267402ceeddff1" dependencies = [ "basic-toml", "glob", @@ -7458,12 +7939,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4712ee30d123ec7ae26d1e1b218395a16c87cdbaf4b3925d170d684af62ea5e8" dependencies = [ "async-trait", - "base64 0.13.0", + "base64 0.13.1", "futures", "log", "md-5", "rand 0.8.5", - "ring", + "ring 0.16.20", "stun", "thiserror", "tokio", @@ -7472,9 +7953,9 @@ dependencies = [ [[package]] name = "typenum" -version = "1.15.0" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcf81ac59edc17cc8697ff311e8f5ef2d99fcbd9817b34cec66f90b6c3dfd987" +checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" [[package]] name = "ucd-trie" @@ -7484,9 +7965,9 @@ checksum = "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9" [[package]] name = "uint" -version = "0.9.3" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12f03af7ccf01dd611cc450a0d10dbc9b745770d096473e2faf0ca6e2d66d1e0" +checksum = "76f64bba2c53b04fcab63c01a7d7427eadc821e3bc48c34dc9ba29c501164b52" dependencies = [ "byteorder", "crunchy", @@ -7496,51 +7977,51 @@ dependencies = [ [[package]] name = "unicase" -version = "2.6.0" +version = "2.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6" +checksum = "f7d2d4dafb69621809a81864c9c1b864479e1235c0dd4e199924b9742439ed89" dependencies = [ "version_check", ] [[package]] name = "unicode-bidi" -version = "0.3.8" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "099b7128301d285f79ddd55b9a83d5e6b9e97c92e0ea0daebee7263e932de992" +checksum = "6f2528f27a9eb2b21e69c95319b30bd0efd85d09c379741b0f78ea1d86be2416" [[package]] name = "unicode-ident" -version = "1.0.5" +version = "1.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ceab39d59e4c9499d4e5a8ee0e2735b891bb7308ac83dfb4e80cad195c9f6f3" +checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" [[package]] name = "unicode-normalization" -version = "0.1.19" +version = "0.1.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d54590932941a9e9266f0832deed84ebe1bf2e4c9e4a3554d393d18f5e854bf9" +checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" dependencies = [ "tinyvec", ] [[package]] name = "unicode-segmentation" -version = "1.9.0" +version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e8820f5d777f6224dc4be3632222971ac30164d4a258d595640799554ebfd99" +checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36" [[package]] name = "unicode-width" -version = "0.1.9" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973" +checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85" [[package]] name = "unsafe-libyaml" -version = "0.2.5" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc7ed8ba44ca06be78ea1ad2c3682a43349126c8818054231ee6f4748012aed2" +checksum = "f28467d3e1d3c6586d8f25fa243f544f5800fec42d97032474e17222c2b75cfa" [[package]] name = "untrusted" @@ -7548,14 +8029,20 @@ version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" +[[package]] +name = "untrusted" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" + [[package]] name = "url" -version = "2.3.1" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643" +checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633" dependencies = [ "form_urlencoded", - "idna 0.3.0", + "idna 0.5.0", "percent-encoding", ] @@ -7567,9 +8054,9 @@ checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" [[package]] name = "uuid" -version = "1.3.3" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "345444e32442451b267fc254ae85a209c64be56d2890e601a0c37ff0c3c5ecd2" +checksum = "5e395fcf16a7a3d8127ec99782007af141946b4795001f876d54fb0d55978560" [[package]] name = "validator" @@ -7619,22 +8106,31 @@ checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" [[package]] name = "walkdir" -version = "2.3.2" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56" +checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee" dependencies = [ "same-file", - "winapi", "winapi-util", ] +[[package]] +name = "wallet-contract" +version = "0.0.0" +dependencies = [ + "base64 0.21.5", + "hex", + "near-sdk", + "rlp", + "serde_json", +] + [[package]] name = "want" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ce8a968cb1cd110d136ff8b819a556d6fb6d919363c61534f6860c7eb172ba0" +checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" dependencies = [ - "log", "try-lock", ] @@ -7652,9 +8148,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.80" +version = "0.2.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27370197c907c55e3f1a9fbe26f44e937fe6451368324e009cba39e139dc08ad" +checksum = "0ed0d4f68a3015cc185aff4db9506a015f4b96f95303897bfa23f846db54064e" dependencies = [ "cfg-if 1.0.0", "wasm-bindgen-macro", @@ -7662,24 +8158,24 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.80" +version = "0.2.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53e04185bfa3a779273da532f5025e33398409573f348985af9a1cbf3774d3f4" +checksum = "1b56f625e64f3a1084ded111c4d5f477df9f8c92df113852fa5a374dbda78826" dependencies = [ "bumpalo", - "lazy_static", "log", + "once_cell", "proc-macro2", "quote", - "syn 1.0.103", + "syn 2.0.39", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.30" +version = "0.4.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f741de44b75e14c35df886aff5f1eb73aa114fa5d4d00dcd37b5e01259bf3b2" +checksum = "ac36a15a220124ac510204aec1c3e5db8a22ab06fd6706d881dc6149f8ed9a12" dependencies = [ "cfg-if 1.0.0", "js-sys", @@ -7689,9 +8185,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.80" +version = "0.2.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17cae7ff784d7e83a2fe7611cfe766ecf034111b49deb850a3dc7699c08251f5" +checksum = "0162dbf37223cd2afce98f3d0785506dcb8d266223983e4b5b525859e6e182b2" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -7699,28 +8195,28 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.80" +version = "0.2.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99ec0dc7a4756fffc231aab1b9f2f578d23cd391390ab27f952ae0c9b3ece20b" +checksum = "f0eb82fcb7930ae6219a7ecfd55b217f5f0893484b7a13022ebb2b2bf20b5283" dependencies = [ "proc-macro2", "quote", - "syn 1.0.103", + "syn 2.0.39", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.80" +version = "0.2.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d554b7f530dee5964d9a9468d95c1f8b8acae4f282807e7d27d4b03099a46744" +checksum = "7ab9b36309365056cd639da3134bf87fa8f3d86008abf99e612384a6eecd459f" [[package]] name = "wasm-encoder" -version = "0.11.0" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a35138d119147af92d7e44ae0f052f6496ee5f38e7c0cad3e0338befdb8f3753" +checksum = "2b47b995b096a689358ca9de6c727b94351b95b390dbbf6b7021c22797d36caa" dependencies = [ "leb128", ] @@ -7743,25 +8239,34 @@ dependencies = [ "leb128", ] +[[package]] +name = "wasm-encoder" +version = "0.38.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ad2b51884de9c7f4fe2fd1043fccb8dcad4b1e29558146ee57a144d15779f3f" +dependencies = [ + "leb128", +] + [[package]] name = "wasm-smith" -version = "0.10.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50b4138c138f975e29dbd3ceea3a8d3ea2bb43f71abd4b236640d0cb14cb8ef7" +checksum = "bb87569c81c298836d88405a28a68e8dfcd43b75220a4b4522831a63921b7dbc" dependencies = [ "arbitrary", "flagset", - "indexmap 1.9.2", + "indexmap 1.9.3", "leb128", - "wasm-encoder 0.11.0", - "wasmparser 0.84.0", + "wasm-encoder 0.12.0", + "wasmparser 0.85.0", ] [[package]] name = "wasm-streams" -version = "0.2.3" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bbae3363c08332cadccd13b67db371814cd214c2524020932f0804b8cf7c078" +checksum = "b4609d447824375f43e1ffbc051b50ad8f4b3ae8219680c94452ea05eb240ac7" dependencies = [ "futures-util", "js-sys", @@ -7779,7 +8284,7 @@ dependencies = [ "enumset", "rkyv", "smallvec", - "target-lexicon 0.12.3", + "target-lexicon 0.12.12", "thiserror", "wasmer-types-near", "wasmer-vm-near", @@ -7817,7 +8322,7 @@ dependencies = [ "memmap2", "more-asserts", "rustc-demangle", - "target-lexicon 0.12.3", + "target-lexicon 0.12.12", "thiserror", "wasmer-compiler-near", "wasmer-types-near", @@ -7856,7 +8361,7 @@ dependencies = [ "digest 0.8.1", "errno 0.2.8", "hex", - "indexmap 1.9.2", + "indexmap 1.9.3", "lazy_static", "libc", "nix 0.15.0", @@ -7913,7 +8418,7 @@ version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1ba154adffb0fbd33f5dabd3788a1744d846b43e6e090d44269c7ee8fa5743e4" dependencies = [ - "indexmap 1.9.2", + "indexmap 1.9.3", "rkyv", "thiserror", ] @@ -7927,7 +8432,7 @@ dependencies = [ "backtrace", "cc", "cfg-if 1.0.0", - "indexmap 1.9.2", + "indexmap 1.9.3", "libc", "memoffset 0.6.5", "more-asserts", @@ -7952,11 +8457,11 @@ checksum = "52144d4c78e5cf8b055ceab8e5fa22814ce4315d6002ad32cfd914f37c12fd65" [[package]] name = "wasmparser" -version = "0.84.0" +version = "0.85.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77dc97c22bb5ce49a47b745bed8812d30206eff5ef3af31424f2c1820c0974b2" +checksum = "570460c58b21e9150d2df0eaaedbb7816c34bcec009ae0dcc976e40ba81463e7" dependencies = [ - "indexmap 1.9.2", + "indexmap 1.9.3", ] [[package]] @@ -7965,7 +8470,7 @@ version = "0.99.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ef3b717afc67f848f412d4f02c127dd3e35a0eecd58c684580414df4fde01d3" dependencies = [ - "indexmap 1.9.2", + "indexmap 1.9.3", "url", ] @@ -7975,7 +8480,7 @@ version = "0.105.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "83be9e0b3f9570dc1979a33ae7b89d032c73211564232b99976553e5c155ec32" dependencies = [ - "indexmap 1.9.2", + "indexmap 1.9.3", "url", ] @@ -7985,8 +8490,8 @@ version = "0.115.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e06c0641a4add879ba71ccb3a1e4278fd546f76f1eafb21d8f7b07733b547cd5" dependencies = [ - "indexmap 2.0.0", - "semver 1.0.9", + "indexmap 2.1.0", + "semver 1.0.20", ] [[package]] @@ -8010,17 +8515,17 @@ dependencies = [ "bumpalo", "cfg-if 1.0.0", "fxprof-processed-profile", - "indexmap 2.0.0", + "indexmap 2.1.0", "libc", "log", - "object 0.32.1", + "object", "once_cell", "paste", "psm", "serde", "serde_derive", "serde_json", - "target-lexicon 0.12.3", + "target-lexicon 0.12.12", "wasm-encoder 0.35.0", "wasmparser 0.115.0", "wasmtime-cranelift", @@ -8053,10 +8558,10 @@ dependencies = [ "cranelift-frontend", "cranelift-native", "cranelift-wasm", - "gimli 0.28.0", + "gimli", "log", - "object 0.32.1", - "target-lexicon 0.12.3", + "object", + "target-lexicon 0.12.12", "thiserror", "wasmparser 0.115.0", "wasmtime-cranelift-shared", @@ -8074,9 +8579,9 @@ dependencies = [ "cranelift-codegen", "cranelift-control", "cranelift-native", - "gimli 0.28.0", - "object 0.32.1", - "target-lexicon 0.12.3", + "gimli", + "object", + "target-lexicon 0.12.12", "wasmtime-environ", ] @@ -8088,13 +8593,13 @@ checksum = "fb6a445ce2b2810127caee6c1b79b8da4ae57712b05556a674592c18b7500a14" dependencies = [ "anyhow", "cranelift-entity", - "gimli 0.28.0", - "indexmap 2.0.0", + "gimli", + "indexmap 2.1.0", "log", - "object 0.32.1", + "object", "serde", "serde_derive", - "target-lexicon 0.12.3", + "target-lexicon 0.12.12", "thiserror", "wasmparser 0.115.0", "wasmtime-types", @@ -8106,19 +8611,19 @@ version = "14.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1f0f6586c61125fbfc13c3108c3dd565d21f314dd5bac823b9a5b7ab576d21f1" dependencies = [ - "addr2line 0.21.0", + "addr2line", "anyhow", "bincode", "cfg-if 1.0.0", "cpp_demangle", - "gimli 0.28.0", + "gimli", "log", - "object 0.32.1", + "object", "rustc-demangle", - "rustix 0.38.24", + "rustix 0.38.26", "serde", "serde_derive", - "target-lexicon 0.12.3", + "target-lexicon 0.12.12", "wasmtime-environ", "wasmtime-jit-icache-coherence", "wasmtime-runtime", @@ -8155,7 +8660,7 @@ dependencies = [ "anyhow", "cc", "cfg-if 1.0.0", - "indexmap 2.0.0", + "indexmap 2.1.0", "libc", "log", "mach", @@ -8163,7 +8668,7 @@ dependencies = [ "memoffset 0.9.0", "paste", "rand 0.8.5", - "rustix 0.38.24", + "rustix 0.38.26", "sptr", "wasm-encoder 0.35.0", "wasmtime-asm-macros", @@ -8195,7 +8700,7 @@ checksum = "09b5575a75e711ca6c36bb9ad647c93541cdc8e34218031acba5da3f35919dd3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.39", ] [[package]] @@ -8215,20 +8720,32 @@ dependencies = [ "unicode-width", ] +[[package]] +name = "wast" +version = "69.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1ee37317321afde358e4d7593745942c48d6d17e0e6e943704de9bbee121e7a" +dependencies = [ + "leb128", + "memchr", + "unicode-width", + "wasm-encoder 0.38.1", +] + [[package]] name = "wat" -version = "1.0.42" +version = "1.0.82" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0401b6395ce0db91629a75b29597ccb66ea29950af9fc859f1bb3a736609c76e" +checksum = "aeb338ee8dee4d4cd05e6426683f21c5087dc7cfc8903e839ccf48d43332da3c" dependencies = [ - "wast", + "wast 69.0.1", ] [[package]] name = "web-sys" -version = "0.3.57" +version = "0.3.66" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b17e741662c70c8bd24ac5c5b18de314a2c26c32bf8346ee1e6f53de919c283" +checksum = "50c24a44ec86bb68fbecd1b3efed7e85ea5621b39b35ef2766b66cd984f8010f" dependencies = [ "js-sys", "wasm-bindgen", @@ -8255,15 +8772,28 @@ dependencies = [ "winapi", ] +[[package]] +name = "wee_alloc" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dbb3b5a6b2bb17cb6ad44a2e68a43e8d2722c997da10e928665c72ec6c0a0b8e" +dependencies = [ + "cfg-if 0.1.10", + "libc", + "memory_units", + "winapi", +] + [[package]] name = "which" -version = "4.2.5" +version = "4.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c4fb54e6113b6a8772ee41c3404fb0301ac79604489467e0a9ce1f3e97c24ae" +checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" dependencies = [ "either", - "lazy_static", - "libc", + "home", + "once_cell", + "rustix 0.38.26", ] [[package]] @@ -8290,9 +8820,9 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" +checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596" dependencies = [ "winapi", ] @@ -8304,65 +8834,46 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] -name = "windows" -version = "0.48.0" +name = "windows-core" +version = "0.51.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f" +checksum = "f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64" dependencies = [ - "windows-targets 0.48.0", + "windows-targets 0.48.5", ] [[package]] name = "windows-sys" -version = "0.36.1" +version = "0.45.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea04155a16a59f9eab786fe12a4a450e75cdb175f9e0d80da1e17db09f55b8d2" +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" dependencies = [ - "windows_aarch64_msvc 0.36.1", - "windows_i686_gnu 0.36.1", - "windows_i686_msvc 0.36.1", - "windows_x86_64_gnu 0.36.1", - "windows_x86_64_msvc 0.36.1", + "windows-targets 0.42.2", ] [[package]] name = "windows-sys" -version = "0.42.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" -dependencies = [ - "windows_aarch64_gnullvm 0.42.2", - "windows_aarch64_msvc 0.42.2", - "windows_i686_gnu 0.42.2", - "windows_i686_msvc 0.42.2", - "windows_x86_64_gnu 0.42.2", - "windows_x86_64_gnullvm 0.42.2", - "windows_x86_64_msvc 0.42.2", -] - -[[package]] -name = "windows-sys" -version = "0.45.0" +version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" +checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" dependencies = [ - "windows-targets 0.42.1", + "windows-targets 0.48.5", ] [[package]] name = "windows-sys" -version = "0.48.0" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" dependencies = [ - "windows-targets 0.48.0", + "windows-targets 0.52.0", ] [[package]] name = "windows-targets" -version = "0.42.1" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e2522491fbfcd58cc84d47aeb2958948c4b8982e9a2d8a2a35bbaed431390e7" +checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" dependencies = [ "windows_aarch64_gnullvm 0.42.2", "windows_aarch64_msvc 0.42.2", @@ -8375,17 +8886,32 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" dependencies = [ - "windows_aarch64_gnullvm 0.48.0", - "windows_aarch64_msvc 0.48.0", - "windows_i686_gnu 0.48.0", - "windows_i686_msvc 0.48.0", - "windows_x86_64_gnu 0.48.0", - "windows_x86_64_gnullvm 0.48.0", - "windows_x86_64_msvc 0.48.0", + "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_msvc 0.48.5", + "windows_i686_gnu 0.48.5", + "windows_i686_msvc 0.48.5", + "windows_x86_64_gnu 0.48.5", + "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_msvc 0.48.5", +] + +[[package]] +name = "windows-targets" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" +dependencies = [ + "windows_aarch64_gnullvm 0.52.0", + "windows_aarch64_msvc 0.52.0", + "windows_i686_gnu 0.52.0", + "windows_i686_msvc 0.52.0", + "windows_x86_64_gnu 0.52.0", + "windows_x86_64_gnullvm 0.52.0", + "windows_x86_64_msvc 0.52.0", ] [[package]] @@ -8396,15 +8922,15 @@ checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" [[package]] name = "windows_aarch64_gnullvm" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" [[package]] -name = "windows_aarch64_msvc" -version = "0.36.1" +name = "windows_aarch64_gnullvm" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9bb8c3fd39ade2d67e9874ac4f3db21f0d710bee00fe7cab16949ec184eeaa47" +checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" [[package]] name = "windows_aarch64_msvc" @@ -8414,15 +8940,15 @@ checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" [[package]] name = "windows_aarch64_msvc" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" [[package]] -name = "windows_i686_gnu" -version = "0.36.1" +name = "windows_aarch64_msvc" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "180e6ccf01daf4c426b846dfc66db1fc518f074baa793aa7d9b9aaeffad6a3b6" +checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" [[package]] name = "windows_i686_gnu" @@ -8432,15 +8958,15 @@ checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" [[package]] name = "windows_i686_gnu" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" [[package]] -name = "windows_i686_msvc" -version = "0.36.1" +name = "windows_i686_gnu" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2e7917148b2812d1eeafaeb22a97e4813dfa60a3f8f78ebe204bcc88f12f024" +checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" [[package]] name = "windows_i686_msvc" @@ -8450,15 +8976,15 @@ checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" [[package]] name = "windows_i686_msvc" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" [[package]] -name = "windows_x86_64_gnu" -version = "0.36.1" +name = "windows_i686_msvc" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4dcd171b8776c41b97521e5da127a2d86ad280114807d0b2ab1e462bc764d9e1" +checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" [[package]] name = "windows_x86_64_gnu" @@ -8468,9 +8994,15 @@ checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" [[package]] name = "windows_x86_64_gnu" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" [[package]] name = "windows_x86_64_gnullvm" @@ -8480,15 +9012,15 @@ checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" [[package]] name = "windows_x86_64_gnullvm" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" [[package]] -name = "windows_x86_64_msvc" -version = "0.36.1" +name = "windows_x86_64_gnullvm" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c811ca4a8c853ef420abd8592ba53ddbbac90410fab6903b3e79972a631f7680" +checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" [[package]] name = "windows_x86_64_msvc" @@ -8498,28 +9030,41 @@ checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" [[package]] name = "windows_x86_64_msvc" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" [[package]] name = "winnow" -version = "0.5.15" +version = "0.5.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c2e3184b9c4e92ad5167ca73039d0c42476302ab603e2fec4487511f38ccefc" +checksum = "b7e87b8dfbe3baffbe687eef2e164e32286eff31a5ee16463ce03d991643ec94" dependencies = [ "memchr", ] [[package]] name = "winreg" -version = "0.10.1" +version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80d0f4e272c85def139476380b12f9ac60926689dd2e01d4923222f40580869d" +checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" dependencies = [ - "winapi", + "cfg-if 1.0.0", + "windows-sys 0.48.0", ] +[[package]] +name = "wyz" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85e60b0d1b5f99db2556934e21937020776a5d31520bf169e851ac44e6420214" + [[package]] name = "wyz" version = "0.5.1" @@ -8531,30 +9076,30 @@ dependencies = [ [[package]] name = "xml-rs" -version = "0.8.4" +version = "0.8.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2d7d3948613f75c98fd9328cfdcc45acc4d360655289d0a7d4ec931392200a3" +checksum = "0fcb9cbac069e033553e8bb871be2fbdffcab578eb25bd0f7c508cedc6dcd75a" [[package]] name = "xshell" -version = "0.2.1" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4884417669886d3abff14feec797179526ade713f212e54ec08b19bc6bdc86aa" +checksum = "ce2107fe03e558353b4c71ad7626d58ed82efaf56c54134228608893c77023ad" dependencies = [ "xshell-macros", ] [[package]] name = "xshell-macros" -version = "0.2.1" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37d92065701c3611323f96eac5475b995421fc7eb2bcba1336cdd80b9b2fb68f" +checksum = "7e2c411759b501fb9501aac2b1b2d287a6e93e5bdcf13c25306b23e1b716dd0e" [[package]] name = "xz2" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c179869f34fc7c01830d3ce7ea2086bc3a07e0d35289b667d0a8bf910258926c" +checksum = "388c44dc09d76f1536602ead6d325eb532f5c122f17782bd57fb47baeeb767e2" dependencies = [ "lzma-sys", ] @@ -8576,29 +9121,43 @@ checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" [[package]] name = "zerocopy" -version = "0.7.26" +version = "0.7.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e97e415490559a91254a2979b4829267a57d2fcd741a98eee8b722fb57289aa0" +checksum = "5d075cf85bbb114e933343e087b92f2146bac0d55b534cbb8188becf0039948e" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.7.26" +version = "0.7.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd7e48ccf166952882ca8bd778a43502c64f33bf94c12ebe2a7f08e5a0f6689f" +checksum = "86cd5ca076997b97ef09d3ad65efe811fa68c9e874cb636ccb211223a813b0c2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.32", + "syn 2.0.39", ] [[package]] name = "zeroize" -version = "1.6.0" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a0956f1ba7c7909bfb66c2e9e4124ab6f6482560f6628b5aaeba39207c9aad9" +checksum = "4756f7db3f7b5574938c3eb1c117038b8e07f95ee6718c0efad4ac21508f1efd" +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.39", +] [[package]] name = "zeropool-bn" @@ -8606,6 +9165,7 @@ version = "0.5.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "71e61de68ede9ffdd69c01664f65a178c5188b73f78faa21f0936016a888ff7c" dependencies = [ + "borsh 0.9.3", "byteorder", "crunchy", "lazy_static", @@ -8615,18 +9175,18 @@ dependencies = [ [[package]] name = "zstd" -version = "0.12.3+zstd.1.5.2" +version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76eea132fb024e0e13fd9c2f5d5d595d8a967aa72382ac2f9d39fcc95afd0806" +checksum = "1a27595e173641171fc74a1232b7b1c7a7cb6e18222c11e9dfb9888fa424c53c" dependencies = [ "zstd-safe", ] [[package]] name = "zstd-safe" -version = "6.0.3+zstd.1.5.2" +version = "6.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68e4a3f57d13d0ab7e478665c60f35e2a613dcd527851c2c7287ce5c787e134a" +checksum = "ee98ffd0b48ee95e6c5168188e44a54550b1564d9d530ee21d5f0eaed1069581" dependencies = [ "libc", "zstd-sys", @@ -8634,10 +9194,10 @@ dependencies = [ [[package]] name = "zstd-sys" -version = "2.0.1+zstd.1.5.2" +version = "2.0.9+zstd.1.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fd07cbbc53846d9145dbffdf6dd09a7a0aa52be46741825f5c97bdd4f73f12b" +checksum = "9e16efa8a874a0481a574084d34cc26fdb3b99627480f785888deb6386506656" dependencies = [ "cc", - "libc", + "pkg-config", ] diff --git a/Cargo.toml b/Cargo.toml index 94d3545128d..ea775484359 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -59,6 +59,8 @@ members = [ "runtime/near-vm/compiler-test-derive", "runtime/near-vm-runner", "runtime/near-vm-runner/fuzz", + "runtime/near-wallet-contract", + "runtime/near-wallet-contract/wallet-contract", "runtime/runtime", "runtime/runtime-params-estimator", "runtime/runtime-params-estimator/estimator-warehouse", @@ -227,6 +229,7 @@ near-primitives-core = { path = "core/primitives-core" } near-rosetta-rpc = { path = "chain/rosetta-rpc" } near-rpc-error-core = { path = "tools/rpctypegen/core" } near-rpc-error-macro = { path = "tools/rpctypegen/macro" } +near-sdk = "4.1.1" near-stable-hasher = { path = "utils/near-stable-hasher" } near-state-parts = { path = "tools/state-parts" } near-state-parts-dump-check = { path = "tools/state-parts-dump-check" } @@ -288,6 +291,7 @@ reqwest = { version = "0.11.14", features = ["blocking"] } ripemd = "0.1.1" rkyv = "0.7.31" rlimit = "0.7" +rlp = "0.4.6" rocksdb = { version = "0.21.0", default-features = false, features = ["snappy", "lz4", "zstd", "zlib", "jemalloc"] } runtime-tester = { path = "test-utils/runtime-tester" } rusqlite = { version = "0.29.0", features = ["bundled", "chrono", "functions"] } diff --git a/integration-tests/Cargo.toml b/integration-tests/Cargo.toml index 8bc7f68e47e..254e0b49f4f 100644 --- a/integration-tests/Cargo.toml +++ b/integration-tests/Cargo.toml @@ -25,6 +25,7 @@ once_cell.workspace = true parking_lot.workspace = true primitive-types.workspace = true rand.workspace = true +rlp.workspace = true serde.workspace = true serde_json.workspace = true smart-default.workspace = true diff --git a/integration-tests/src/tests/client/features/delegate_action.rs b/integration-tests/src/tests/client/features/delegate_action.rs index 920ae6009aa..00ba2993515 100644 --- a/integration-tests/src/tests/client/features/delegate_action.rs +++ b/integration-tests/src/tests/client/features/delegate_action.rs @@ -8,15 +8,15 @@ use crate::tests::standard_cases::fee_helper; use near_chain::ChainGenesis; use near_chain_configs::Genesis; use near_client::test_utils::TestEnv; -use near_crypto::{KeyType, PublicKey, Signer}; +use near_crypto::{KeyType, PublicKey, SecretKey, Signer}; use near_primitives::account::{ id::AccountType, AccessKey, AccessKeyPermission, FunctionCallPermission, }; use near_primitives::checked_feature; use near_primitives::config::ActionCosts; use near_primitives::errors::{ - ActionError, ActionErrorKind, ActionsValidationError, InvalidAccessKeyError, InvalidTxError, - TxExecutionError, + ActionError, ActionErrorKind, ActionsValidationError, FunctionCallError, InvalidAccessKeyError, + InvalidTxError, TxExecutionError, }; use near_primitives::test_utils::{ create_user_test_signer, eth_implicit_test_account, near_implicit_test_account, @@ -26,6 +26,7 @@ use near_primitives::transaction::{ DeployContractAction, FunctionCallAction, StakeAction, TransferAction, }; use near_primitives::types::{AccountId, Balance}; +use near_primitives::utils::derive_eth_implicit_account_id; use near_primitives::version::{ProtocolFeature, ProtocolVersion, PROTOCOL_VERSION}; use near_primitives::views::{ AccessKeyPermissionView, ExecutionStatusView, FinalExecutionOutcomeView, FinalExecutionStatus, @@ -34,6 +35,7 @@ use near_test_contracts::{ft_contract, smallest_rs_contract}; use nearcore::config::GenesisExt; use nearcore::test_utils::TestEnvNightshadeSetupExt; use nearcore::NEAR_BASE; +use rlp::RlpStream; use testlib::runtime_utils::{ add_account_with_access_key, add_contract, add_test_contract, alice_account, bob_account, carol_account, eve_dot_alice_account, @@ -945,3 +947,74 @@ fn meta_tx_create_eth_implicit_account() { } meta_tx_create_implicit_account(eth_implicit_test_account()); } + +fn meta_tx_call_wallet_contract(authorized: bool) { + let genesis = Genesis::test(vec![alice_account(), bob_account(), carol_account()], 3); + let relayer = alice_account(); + let node = RuntimeNode::new_from_genesis(&relayer, genesis); + let sender = bob_account(); + + let secret_key = SecretKey::from_seed(KeyType::SECP256K1, "test"); + let public_key = secret_key.public_key(); + let eth_implicit_account = derive_eth_implicit_account_id(public_key.unwrap_as_secp256k1()); + let other_public_key = SecretKey::from_seed(KeyType::SECP256K1, "test2").public_key(); + + let initial_amount = 50 * NEAR_BASE; + let actions = vec![Action::Transfer(TransferAction { deposit: initial_amount })]; + node.user() + .meta_tx(sender.clone(), eth_implicit_account.clone(), relayer.clone(), actions) + .unwrap() + .assert_success(); + + let target = carol_account(); + let transfer_amount = NEAR_BASE; + let initial_balance = node.view_balance(&target).expect("failed looking up balance"); + + let mut stream = RlpStream::new_list(3); + stream.append(&target.as_str()); + // The RLP trait `Encodable` is not implemented for `u128`. + stream.append(&transfer_amount.to_be_bytes().as_slice()); + if authorized { + stream.append(&public_key.key_data()); + } else { + stream.append(&other_public_key.key_data()); + } + let rlp_encoded_data = stream.out().to_vec(); + + let args = serde_json::json!({ + "target": target.to_string(), + "rlp_transaction": rlp_encoded_data, + }) + .to_string() + .into_bytes(); + + let actions = vec![Action::FunctionCall(Box::new(FunctionCallAction { + method_name: "execute_rlp".to_owned(), + args, + gas: 30_000_000_000_000, + deposit: 0, + }))]; + let tx_result = node.user().meta_tx(sender, eth_implicit_account, relayer, actions).unwrap(); + let wallet_contract_call_result = &tx_result.receipts_outcome[1].outcome.status; + + if authorized { + tx_result.assert_success(); + let final_balance = node.view_balance(&target).expect("failed looking up balance"); + assert_eq!(final_balance, initial_balance + transfer_amount); + } else { + let expected_error = near_primitives::views::ExecutionStatusView::Failure(TxExecutionError::ActionError( + ActionError { index: Some(0), kind: ActionErrorKind::FunctionCallError { 0: FunctionCallError::ExecutionError("Smart contract panicked: Public key does not match the Wallet Contract address.".to_string()) }} + )); + assert_eq!(wallet_contract_call_result, &expected_error); + } +} + +#[test] +fn meta_tx_call_wallet_contract_authorized() { + meta_tx_call_wallet_contract(true); +} + +#[test] +fn meta_tx_call_wallet_contract_unauthorized() { + meta_tx_call_wallet_contract(false); +} diff --git a/integration-tests/src/tests/standard_cases/mod.rs b/integration-tests/src/tests/standard_cases/mod.rs index e358f8294a9..1483f882a69 100644 --- a/integration-tests/src/tests/standard_cases/mod.rs +++ b/integration-tests/src/tests/standard_cases/mod.rs @@ -330,7 +330,7 @@ pub fn test_send_money(node: impl Node) { ); } -pub fn transfer_tokens_implicit_account(node: impl Node, public_key: PublicKey) { +pub fn transfer_tokens_to_implicit_account(node: impl Node, public_key: PublicKey) { let account_id = &node.account_id().unwrap(); let node_user = node.user(); let root = node_user.get_state_root(); diff --git a/integration-tests/src/tests/standard_cases/runtime.rs b/integration-tests/src/tests/standard_cases/runtime.rs index c939a0b0e14..3fa8e5d8e68 100644 --- a/integration-tests/src/tests/standard_cases/runtime.rs +++ b/integration-tests/src/tests/standard_cases/runtime.rs @@ -120,7 +120,7 @@ fn test_send_money_runtime() { fn test_transfer_tokens_near_implicit_account_runtime() { let node = create_runtime_node(); let public_key = node.user().signer().public_key(); - transfer_tokens_implicit_account(node, public_key); + transfer_tokens_to_implicit_account(node, public_key); } #[test] @@ -130,7 +130,7 @@ fn test_transfer_tokens_eth_implicit_account_runtime() { } let node = create_runtime_node(); let secret_key = SecretKey::from_seed(KeyType::SECP256K1, "test"); - transfer_tokens_implicit_account(node, secret_key.public_key()); + transfer_tokens_to_implicit_account(node, secret_key.public_key()); } #[test] diff --git a/runtime/near-vm/tests/lib/compiler-test-derive/src/lib.rs.orig b/runtime/near-vm/tests/lib/compiler-test-derive/src/lib.rs.orig index aa50ac8a040..f858e180615 100644 --- a/runtime/near-vm/tests/lib/compiler-test-derive/src/lib.rs.orig +++ b/runtime/near-vm/tests/lib/compiler-test-derive/src/lib.rs.orig @@ -1,8 +1,5 @@ -<<<<<<< HEAD -======= #[cfg(not(test))] extern crate proc_macro; ->>>>>>> 27e96cad2 (compiler-test-derive: Switch to proc_macro exclusively) use proc_macro::TokenStream; use quote::quote; use std::path::PathBuf; diff --git a/runtime/near-wallet-contract/Cargo.toml b/runtime/near-wallet-contract/Cargo.toml index 23c6745f00b..ff2dae083bc 100644 --- a/runtime/near-wallet-contract/Cargo.toml +++ b/runtime/near-wallet-contract/Cargo.toml @@ -4,7 +4,7 @@ version.workspace = true authors.workspace = true edition.workspace = true rust-version.workspace = true -description = "A temporary Wallet Contract placeholder." +description = "Builds and exposes a temporary Wallet Contract wasm file." repository.workspace = true license.workspace = true publish = false diff --git a/runtime/near-wallet-contract/LICENSE-APACHE b/runtime/near-wallet-contract/LICENSE-APACHE deleted file mode 120000 index 0eb30ff1b50..00000000000 --- a/runtime/near-wallet-contract/LICENSE-APACHE +++ /dev/null @@ -1 +0,0 @@ -../../licenses/LICENSE-APACHE \ No newline at end of file diff --git a/runtime/near-wallet-contract/LICENSE-MIT b/runtime/near-wallet-contract/LICENSE-MIT deleted file mode 120000 index df3ae884029..00000000000 --- a/runtime/near-wallet-contract/LICENSE-MIT +++ /dev/null @@ -1 +0,0 @@ -../../licenses/LICENSE-MIT \ No newline at end of file diff --git a/runtime/near-wallet-contract/build.rs b/runtime/near-wallet-contract/build.rs index b437f93c5f4..94559c185c5 100644 --- a/runtime/near-wallet-contract/build.rs +++ b/runtime/near-wallet-contract/build.rs @@ -10,12 +10,8 @@ fn main() { } fn try_main() -> Result<(), Error> { - build_contract("./wallet-contract", &["--features", "latest_protocol"], "wallet_contract")?; - build_contract( - "./wallet-contract", - &["--features", "latest_protocol,nightly"], - "nightly_wallet_contract", - )?; + build_contract("./wallet-contract", &[], "wallet_contract")?; + build_contract("./wallet-contract", &["--features", "nightly"], "nightly_wallet_contract")?; Ok(()) } diff --git a/runtime/near-wallet-contract/res/nightly_wallet_contract.wasm b/runtime/near-wallet-contract/res/nightly_wallet_contract.wasm index 55eaf301197b5188304c1910632968d7adcef1c4..da0a2432253960027cfcd067fd656ece18f6230d 100755 GIT binary patch literal 347351 zcmeFa4Y+01S?9Sw&iBW?r-}k9R5{t_SUnaKkg_`hO`NgT?Sw!e67A@d_URE2N|Rei zsG_Lg45@obRgf4o*wS`1n3M^oNCZVgD@M{@Vi}W&O1Bw<%0yH|bfOQ_#vbNr0`vR7 zYpuQaIrm(sLLBYq>4K`g&))0fUGMjL*SpqEuDt&H(j-aJC)47Jd}U=NUAZE&f76vj zcgYp$A^lAcU6CE)El3*_zxk{o*P*JFq9|s`am(es$$l2j2Gf zYcKaDVvoMN9dk=wz2~}X-v0fUU-kBD5A3J12YE8L==a=kZD{?ix_YFL?Po z_Pp(T-+CbFtNho@El<^CmE=bv*#AL^6INE-@E7gFMr3| z4!rg9@44ZcYc%>j*I)1JoO2>|>cbnVr&rFcb@iTW_8i!w&OEl}lOU7|ME528vArv= zz1ov+AwJo^=fDm7uZ2>-klvRrEG7#J3yX`RJm0iwGm@ArZrZe%C8_?LvL#EoOEUdA zHOumRF;DYkF+c6}G~L91X__x?+PXQ-^V7HHr*Fy^7t_VXJj>Jc6=|BC!Ot|Ke!6XY zs#~>oMw%{e{+i8delbn{hga%)TApNSPSHgvxi0x% zdzW8+^_2&%ynN5KSLbQ}^2^`4=gRAlg6sF>Sr=X8(*D2rw)4K_?YE}4r|(aHEPY@4 zk@Oo6y!nRJbmfQAA5Q;WdMy1p(Dw7`1z-P~z1RGU*Db&HZ5Lg5{^9hSel|U4*V#Xr ze&_%E(e&V5>D}qIzmmS=Nc!&d2huy!52i=ckENeXe>wdR>4WK~(qBw}DSaUAef)Qu z_oer=vmR>ZYghS`xY6E8bBEn#yJ!C^(w$jn(sJqYr2V>KQlv%u+^kcy^}I3ZTsCYJ zEtf5iyFBXb9ryG+8TVZ>ZmFr9zeT@jFQ1(xlYx8F@?_|qPxnn0T<_vx!n>9lZMo#4 zf`;g$Xk2vtuwM*ZvETh!a^bK&81###8=jjrTsj^W?Ep#J_fQBF{$9LI?R1K+{$9Lo zY_C;80O-G>4+O6FdP)t|#PD^)R80)BKHc-6#qYJxt$~j1?vbasj($wYN&4l}wffVd zPo*&HVL0^5Gxn?^G&}6X~-n;aCdibVEUM#+Omr1q2k z2eUMbt)c)zt1dY^dHBdftH~MENp@zR)&05Izzb2f+ri|#87z3qv1pNzTj+I}O)aMie{CC?>-}iP)mCh?KmG5h5iIXrz%G;AbUmteE03 z1=#fZu5}sG=DAS14QXqdX6vBYq}N>c62_H6JlGDt?i8(}2@+t%e$k0KE$x@&Zj6lF zi}fcaF#XTB@-`~EqG+Jnkh8rVaJQwg@9lLK|UdYod z$)v2i(@Lj1ZlT%=)O*HgOe%XCjcQL&^%`^-@}wreeabXG>M``dQ3itPKN>-IQN> z13kBjF11A;?mj$e{dfTI>6Py;;i9y316;?YF=@~yMC(AjjBAhAUS)`+49Gt%1-DTO zuBV_ETr5Gqp!)J8J4uq_zAca8z{+0=nCfAZ%wv+cN-Z$PDe8gJR?+&2BHQ-Qb3xw` zpLV3mo34m9^4@Nvxsn}%#L=s*Or?aR{+~w+hC*m*no6fn#?&fx96(4NV4Zd$sh|oy zu7Y?4_PiApKDsZ*Q~3G|hfOZOj>js8Se|R6zmzP&68_H$;Ey{+b}yocZq4QOjA*w} z;PNFV#toy7ywbJ^D_x7?_6jvE>C!6ck_zPX@2XJc{2CvkP=NqDm17_aw0@AaR*@{_ z=jGyT;b+j6B56*ONCR<~1rvzK&<56E1n~0OE8r_ntq#1A-3ZV)Nv4|h)FSMS4PXcJ z4Jc>6bTEjXup)p^ToSlPF{rP(3bw%JD!lE9&lX&JtFGWxgB++38= z>tF}F+alKTh}4WG;Mf;8gD;PU;<#+Os~7L%P!-*3rtoGUsQuK$psFgH?F_;l9zJn=46Olf>7*hW98fzZ2$O)M}28-4@NUX^b}G#Oq3pA3-C{LFmo zc(8=5!pTc09oon=L+g$Qdcuor_YyzfiNQ?%)i7DgtZ32w%;`o;EO-FUyry9#N?(;cS>eQWs5>%KC z->WGPdKb_Ic&V;_Agz4*U8VQ!9d>|_4=X>rvn(e+^G<%DAMR$2*ZZ;fy8{Y6a182+ zz4G{Shq?R(E;MN3v7G6hx;r;3tkr57a5PIhE0R+v50jc6oJUpHElMzoAipN>~(M4M0c6*g+pHYUUwV@fhGIL z4uWgm|6M{uD=r<&l>-UpYv=H?L2M|4QZ$=iyls+ez5|?5eM^~317@ZAPQifphcgB~ zK`5+@4Bt!AfYPJm6r!TO=^gcrFDT|oG#yHq;KZQD)U^A!1{DT0!N->+%%dU7%n->X z$frh)n8oxiR*#e_6D39dU4D z%#c$lr7Z&S5>$RRq=Rt|2Iac@*1+6sd(0M_8eRlOd_?b>kY&X3?!^p2@FlIBa{Z@v5BO_NqbsnN@GRg-Hf4$ zs5r33oBR?#dTz8SdXgsUEqL9GRPF#6o?+xEHZDj0Mx29+KO4TLVeTJ>U%)rh^*XyC z9_!g9&Wfj|>@_B;s9cUzv(xo7HVVf;8pQc4LjE=4H0#6xISOYLD0i>FJIu?xW>mCF zVmEHlGn2MDBVzFsBw5E@3i;RsQCO#PhuE#P7A9gbL@m1_d*VBg)>X8ovKW;Jo6-sv zW2D{H!b@y#ELNtX0j(9!W}1 zr>>t($W2G1>*JIx7VvBxP|l3}yOtLQTAc}h(!@N6SlXIuyPsZJUKr=S@=q4-61%4U zSEDD0jcj2_gBjk)9-&g0UrI6ws2i>SmQau4HZlqPy=2>@ec^DE70$~@U&o4m*@{vu z7LfO4fxz&ZsiI6I;VB63^^Ol6ws>Rf}8=A*z(S7drlTNe&}fo4Ft zr^xI`cFq|I?(xp-ta2oH8@cOUkcdJeN{YvPm(4Vi(NCM&ZwwYxrvJiaSjx&>`-RKc zbZ|9$P5MHep-gg@yl|P4p~Y_=?u04M2MliJB)gaLZ^b#OM)c8{5otDuhoOkPx2@iP z&)uuR7_SKXA5)bKNOxwhcA2bqer9&Q&8nI<%%Xc<_S#w>vsj}K>Yk62%mk?&)we>( z8etEiK>I~?N?>1FpZ?^y^A{i6f>yGTWzZ_kcY6g;RJyVrUwAo#Ru%FrW`#&ZcCe_9 zcm>C52InBD0&7un=yzOPPYf<^;z|E3U;@Z-mIn1?`mP=Ne zyx#icTAaMTOAVi!?VzrP8YZuC$~yXKX1)pjw1MpB!l8y5o|-9#iSa#E+lQ;R=>nWh zcY*ZNLhM2#-4zF#^nWsADJZPJ;m~Cs1Ab@(8)UkZaVoen)8_mGcS?lt>&|2mibR9; z9)Q)?d@&t2;qmoz#xTiNRUy#UQ2e^m%Rgt#3S=uVMG6Bq+?LVDg)+nTIzJ$*meA7v z50gZpzcbGxsF25jwa7Ba2kxfU=57Bq~liq62_Fp z9^(3;sBqe&n?N)W)dk72zM4Jp|5%rJ%w{|tH_=QdlULXwG(x!fVl;E;N4^JRVn!mr zM=$q|o-nCH9y@rOjQGrKaGvJIrmF|901)2@vnc9}oBXDAW@_r9wbvS%u<9zNq{QfR z)}G#KsgG+i!AD`;f_KLyX=emz1dCM(8E?Tju!mVU$n}Ag^3|$6g5XE5w0p= z(JsZv`|4hdQZb*m7AH9uo((=rZGaod7$m7J69-4lc+pw}x!rOgo)Zxm-89`tex$gW zkc&~!kD0p4%tf!%bi&Is7+hOpafKh&jRQ7QFsU#HzcJX#TK4P;0Cg7Ya9eX0Ed2i; zd?|!FAuNbwBN&`M2Xq+7jg!DV+H8;H4Arj?1NrNT#X-~m7FB>&e8Ir^bW~*u$nL^Fi$-t`e-)ecv@?%QZaw?=^>eS>OM>__J zr%N;lQ4*!Eb!c=Gv9{P+I5($>T)4jO`RDU}qMz)Hrx$ev=jdJykRdl@sh}~Qq%Yk& zAQFEz{MMxSpR6u2AKD53XD?B-Y?XWVUsJNhPeO!!5J#rRseG zWA5g?mv6Z<+d5V-V@l<1s^aKV=-B{i3Y~m2m`L|ukerUQ(sZqZ<%83B&~k(7!KwCO z^Fi0%=bl!TEv^w3_mP5MU19LIKe(bKn_T8zW)SqGwkWB)k)fNr*rjifF4uf(na^`n zx3NeG#N$@PAgIB3s>?kD)Db+S5Q%W67u$Oa%Y({Lo2^PECR*N>KLPTvCIm9XpRK4D zt+b})$}hA;HTNpF`sKCNa^;2g+t!1o3KSoGKKdy2rg;IwiXGL7>*5s>l7C5chpKDi zI{AKy4QMg)CG|T{T@!?p@3*76`Ah5f9MzT2`V#Q`Sfa}5ORGGgE|Mo#6z|AFeDa}b z%=8>Hdp|owt!*ik1E7pG+&3vm_m}yug))3XiW_Sv*2YV$WQ>)=EEa&lqJMsVQ>qvWO}F4C7QF+i>^;b zUwSxNP-ta~XB)48f}<1Q zHcT)4wj)WJP5z(#Q-74(I{bzl#=y*Cl%v&LOf%AoP}3X+C)Maxaaf&RO(_GoQpTo=O4bVW5ofW!le07w7KmFQ2~3?%&ZooIIN*L1e`OzmO4XPrbH)tw zD2g@yKfQD3PBmY}qDM0;y)$c&AU<`cdHmWOKgjS4ib5s4l_=DO_vIA@P}{7D!iKr= zO-7G*S|3o!F!(teOZGqLa4gCv&5C&mJQ8I%D*xgnWq7`-IG!Wf$V{U6qV$^Q(7>fP z$>mGjjR4}Op}9M>PgC^V-NfXnNbnXNGH?0&=z92rw}HtMcM}daR#aszoZhzhk4yK( zZm_~k_AUPd7;=}v;qd{Y(7=Yfd|%Ptuer76!DD96YNVkywSr2QH|^6rL@${v=LEl~ z(V&Je$~#|C6C|~!7f4aK6G#-n4d3T8>`)mB8wwJoPHWEYvi(~7mow!<{|rEKsFeQ+ zFbV{47ej+?CG!;wdCerQ!1_EueE<_~&TPseWUUA3n)$K=NXp;V^nn;16jD>gH? zf@2h6FGRopmF86JINgB{Lm$;Hi;7BMvLbP&offIBmWQ1d-n4n|2@`IFHGjeJK`^9F&I7#)#VO%kkVm@S_Svr;U~sH$mO&lvS3{f zkqD_FKyGF3hlrxq5OY67;=_2G-uuaGLsZu@-HxeZrOQ6G91ln3OaBI99VPn?zO!tq z+Nf;~Zrfr)bLEzpicssf#MH?Y-)anjO!P8KCQ8jA(_p64NT%4PClalldO<>UcmH8X z;Ykk$&>TkV0$J0qv<#nbv>#^vE}8jH8P6}Z2*GE&gJu#@m6V5vr#NPj?lpy!9f(=? zp6zou!v6;)kzWXyOcK*crbJl$N3~!NFD4?vg;}Vk#6+zxR!l@yx_a3r(U4dKIe*=Y zhdzUd7+paOyt!{e%AwQ&dP2TP)DNbkOvJmcbMa8cyV9++799f;AouDWV;Ku$U=tYp z{wp}T)HRG+KPFuRR!Xxg4W`_IPEeZCM1C5CsvB!!1U+(lXak2lYA)z=-<-5!k?vPo zg7m(0qIecqynEpl*YU%3#U+jVPSbxXiLSK1#>@`LzX|$K9a_R<*`H=-9(Y+0KL-O- z*6)~#T9JiKY(QrxqR+OmO$%+O_C$}nUDRV${h zDbdi{vW--5cg;FT9#s&asH~n;-(!Sv@)(h_1;~PAI75`wws-`!EeCs!qJNR6N9wpO z4aglQ@HF;z*Hqc~^#1x&u@=j-?)Tq|yt)ApZ`E2N(ZWq;IFf!WasTI3f_zsPcJOer(Z zc9lz{?(39!Ehb*N{kN0v1ewf~Fzb2_!pIV0K}pfjo0ff%)k$;d>7UOJ70FG<(1;dr zeImJbLUj0m`=AiBd`@C!xaAHlqXF(*xkhm^D>z#OXT}h|^!!6#Jm))D25k!CJ~C4@ zkJ0U)CQ_Il4BDG8&*gco-_{FtV9FB`YX8J^Bh2ik!PQc4=tl7trqe9JTi8f6_wmBm z#l^)#HPbex2aKllsaX!gLV&ijjCQu|F;Li%(6T*bB(PelojJ_q zDC!|@y9RuX_RGw}qA@MhC$@`DKTti|d?-5cu*k+Kw8HqDg#i5O${Vy7TPuoV?GRx! z+Nap(J=yc211We~Oew+b77Q1ct(Yv?`h4_%i-C|RmX(-G^(ygS1U?mQOmLc6{d|cn z;J=#2q@|JVQ{Saz3k0Va4}6nag)d$ZHUQXbW6X9lco}!wi-d;WC5T6xZZ;`EF|!Q- zgQ2mm8;`U`K{%AI6qeV9AzQ&!<64pTq5)i!bfJ+YX+jL3&9bgm5?~mpcaUZk5Y`=m z=YaOaYc%L!Lo^Q9qAhPzp!S$}bTw1QTO-v3WY4 z_UoHBJcUC2+tR57nl$JTP$FZ?856b%L`JLJ1di?w>2)J5D6zJ)G@t;G0i^oyci|4!!TCQXb{??_?gf_J_jy7J7z zI4O}4^XLY$RVHyFP?3)DzCgIrJ^WsJO$*`Z3$<>f+Qx7YT*hg>`M2C-Ku9N zDa#ccDZ!T2eQJxF%VBzyTI)d3+Yfb>{p~jn_4KT9c9KzLzin>py6ZGaMyA~0fG?cS z6wXzc_nQx(5}r=>?FSma?4$)8(kPUohN@wSm+|;_&>5G@;?fs-9B33Bzb&)lu8^wh zxa)KY-~`At7(t@Pv14r+FFOxi%b8-VnwRTBK-L(IWz>RvJH^DoF8(80UHWGCMHWLD z+l&|kyG@f+-g4vJG5~>QS_+fHJL6Blt-NfErB|4H2x{~#?2#|af$i>{a43iL9UFeJ zOzN4ENHSv&Kcwqcu3vU}fRo2QyShw?1-s#y;$Z_yrR;h~IAh6bT1Wbe^w z7snAA2%I&kn6;F^cvF}dU{;vC3>m1HlH6&bE$3X3r`!8b@p@k5X1^N5* z){;$@atMO8>`L+kF-o3&su(jkVb-j_plWgCEddV-0;NLbDZ|N|U^=zssc0J$L`==; z&0vw1V+0r5wZGLgTd-S%`v$@1=x^qQ`|{znRo;z$*(}*_Hq&0r3as33q<#n4Y_hkO zka!lCf|FB(O>Qx$J2lnxIjCH=_=f|JX~Q-#%+aLD2(lpS1Z)|v7Q$1Y$cb`rQR)JJ z5Gj;b41C)7Nwzdmw>T^l-9jjpE5ZGa8qOHGrtttU0AgP$jF(u3?78*FMUy6i7p-8Z zGM3>b!t4|W9jw3_F+2Kv%eJirny!xy*iwVRNH$l7m@C zMdLe4)~V_#E6806zgymJzyGiN22Yd$OehJnqAE2JUwX<4l1-LHozNJ+n4cS)7y~mC z@r|jx8^o4BkcOjieE$ULXk`KK9Cf4NTNe@n^;m%|fb!lHOY5`0Wgf{>Ap8e_gmB00X7mF>tl#&%{^hOyrGkrKb{90F zeG`?cXS8VOS%G)2dYi8!Djn>DqAbh^%wm&ScdtC$ItHqHEN;^Sz0gCr@a@7>-d7SSYQhST@8vMj*YUrx}*16Hz?kQJHPD4cPM|ycc{0%Lv`ajR5u1G-NX(T zXFFW<9S(~Hx*O0T`g(Mmb!kU-wTRoyOk} zTU9Op%)W|^joxQPuzC%=2O(Ay(d{LQJwEi-PzZ|Ex8cU4lk+SD=1k9q*nm0S8Qx^2 zMz>pcDA#pWMn7V&WFBT)8)@wdUcvoGDv7!3C`HW&GN6)j(9$20wbO*dfGZ_yrzGoq zgg`mYrA}i$B&qb0V?G38Y^!i+GI1>`IYl*19SkQuv~DF2uM!jByh@C3jjpy>sVvs| z!En9}lt0hkwW=@%HSJ7*dXHmUTB^EJY(flB(3QqE&M7O&T3 zV$RFYFETbLb)=kNx8TFcXcGWJ&}oDA zgWcBI3AGYhwVN$r>6o=Lkb1U^+VFZ+B<6?toV8voE%PMWAXKrg4Y}L!j8H%?@?U2m zMgD6gN*AUEhfQj0W#)|qy4FUc5;LPwFGYj{`9jf5<5d1Y1?jv#cn{6T`0es42xTkt z5(<~Dn(Ut@1+4?Yzp~e7;aaFGic^<(hZ(8@0&Z^+XGL$ncuahz#a-f$b!z!&Tnx#*S#KCoZ4 zH1MIz3CJrRQ>(K$TdHg%wmP&DwS@Ko3GIqp0*17j4l% zD1YsaP~0mIhIK=UoCPYjYGS}pZSJijFm>)LEx`p_cp>|z)@(DzZyGk3Q4KUjv8k0| zN(n%qLDDRIr?!-EqqdMJ1c2ciJ*=AO`5c|(8L$5z)9OeK236xn8X!~7q6ao4=&B)M z4vLh4ptUHWAt``d4G9J1xz~mS$Qn}Shr|Rs4hd{%NFWYtF!DpfW)H?WL*hnrE*p!6 zq&yc5DX)ek%T^y!Rt@Qw8r8}SLuyQm7|q+5@SiS~WcmMuMJz?aTOnKe5!zH4Lp)b} zGer*M0ANm-3=-RCeZeuN;7Dy(<7iZZ(G$?cyX`SMN|cscNb~9F_e2Mmj446<2DId_1X>AuCjm5sS_ibq z11N)&1{%Ipbff@kV^^_(X3D|_J2He}soSY{LOBJdo~fWzn}2SIW;2xa82fD1iv=ZK zS}z=vB8+8?^Uz)Ov6vRi+~ZX*7TQTqwQa|OXHpU3tf#8B!};ljCN?EWD8j5a za*)lS;hX6;o;|5HIHzR}9JhbAJs!-8Jx;JEvw+Av3FT^kRaR2$6b=8Wa|NwuK^ z2*g>_IDO=#+OS;bb!|LxQf-)BUf0I6C)I|0<@IB^L)m&3vW)8fg?P+N?K(K_IjJ@@ zD>MaY4l%mi%)D2a)v6L60pQkF7T!}kysp|$glV#M?Da8QQw<^ZPcR!Rnqh~7Q6qvR zbeOfaV*-=W{~@g^M@(+qME{t(CIvGgU>)n*S^+5)ntRh=bVtyVlnkztw!yNrVXhLZ z_PoOl^uZ^(#Ht$tqNgK#fQ5pR-g%-n2vXwdOi9iB<(FVuL7>zg_D>3Dx)Tkw-h;-e z(aP)gzCVc=sf_D(f7u$^5goK0mQ#CjgQ^^f&o%N};btN6$XhKf%QMkU7%@oO{c*vBs3DNDbC9bQOx>!u@1t@+-_@4tU0?V zPKc<=OGQYL&3Z9e2jLlsvC3R^g8Wuht@R+x*6S&$!;AuasUM_r(R(1bY5Fqo8*?*ayazva&u*b$d5H&NCMK zH1+8W1yL~)V^1x|K*#t}6G0)&!UR)cKg&Jv>C+k8fOwK0VB&=`@$>KydeEL=f<$3v znyYadReX>9pxvy~`oMi^8JNnA_2n-k3X3|SVVQ7EN@$pdNXGKn_%H!wfvSox)OMOY zQr~V>BIfwvhd^8W22%{GPd}YIEt|h9Wq!MV_KL;=tCY2`22`81WuiLha4r}rr!#o` zQC+aOt=?IBQk?+)9(ioDA_Qxb#YT9;hX|M@e)P{^1V!*Izg>wq<&#NU5hW^-$4V__ zzbe;G2Vg-0ijt0`-bo-MUqi`0tihRJ!LUk*qYf)Q7f#6f(@8!|O1BkVN@@W}d*K{= zVU&n#gHR%s?ya2?Tz#KJ;ATel7Xep^M-{kzKKwNYTxD+7!0lUTp#rz}V&Jj>iXtic zmrOd_CiX=Zol{0aCp*;jITgYj`uajgU)>4tmT2Z%O~0mq#$+%A2%nV4Ri7?Fw=(E1 zC<8M+qYx-txxVP=3o7p*B;$0rM00sBopvt^dx*O3=cee#*Pv?j>x+K&p$v}1+3UOW z#G{;Y$&__vy+bWjYujh}2jX?XW$VI8U&I5#qQ8ygPJNSyIE!VF%#5H{AHi_W2)Z_c zUK|1CVWSrrfkb&0a0B`Hd&#!FmU7B2)1_p*2vHgXW>(rK z}OD zWLQ?dr+C(vlQC4Ip*)2{=4t$d2@oS*uInEBxHSBeUc=9M0vEYEtxWhH4HDgP_t=wo zCK5~>p2RX;_I~j2;i<;e)MHamPOumii~e3jhUNQ9wuu>8g&i*}$ve64_#K_Gwidu7 znQ01mTm0RcI9^=#H33%q1LH7C_Y3geQDp zy)|-OUe9^DyDix#l%lp=k~?x{k}Mtl%%}eJ_kQ*Rzf^qNaNsz#5M-dgAuhW- z;ZdQ=p-=aY<(u889SI9ct%E}lo@of-Zq+ervAD-AmPC$Yp}sll&0*%_Vfp3?UQO8UtU*M-s-dUvWCu(m4rl&Hq5Bv&pMDDdOaO%5mj?`268(s*7kyf#IOkWql#VYja6Qy>Cwx*h)RbPuB zg6mzQ9N_Bnl3;mIEWnW5EO>r^`S^`aGQQC=O|cO9#(YAtGPO9_2WC-nf|XD^dq+Pa zROr;$2BTqqiLd~ZooiT_qnV)(z5cUpCg8Dc)<3d7P2#Z-U{L1E-J%^kHXk(_2F5Vt zFOb`Rr%^v3A9=^mVf&6IP4q!LL_``f_}iw+MbbT1Cx;0W)nHho434*EY&zw$$j9;? z!B5*9VcKQl*74a25*Mh#fnm0UH32n9=KP>h$lT_X0|kuAJ^Nv139jM}dh5-lOnMLi zyaQBA{VgNoh**ELLPt{{W{#TN5G=AbR*B>y>{RC%=jNiXxOw+iZyi9Z{sm-D+|iCcpj#^IB`6oYw+~ zCcU}3p*bHIOZicYOa6FTMZ*-6YK9?@{-eow(}%;bt3FW2M013WtA(W4b8I20+ca{a zls!BeBp)*S2!Q%nKnR$RBnF(l*AgK!^ep!US`DEl~fwkUC5iI@#r(FsLZQ3Go$7HY&=ezVH}N2@#fM zQJU^p2S1}u70j~fvCUJ30i8pm@u4ueZ1G1%=yv;rY;D`cT8@)7DurjlIHBpwHcrJi zPI#P|+yaHi{wQEV%iLlAK1hOPBMt(g{kc{F2R=WG7MP|Mi68wI_g6JiSFQ2gEC8!Q zqRsxtPR+V}1~CL3^}&t6j$Wt6e}%y6dnB5>@_?B!=!X*WWnnKlknx4EH(y(OGl-*F?GULl(F#ex`5!`tOx1*egtW#EgXw+0V2@N3%pnOr;Sz zUi#N_g~KU6160t#{>E?=+AKPts)qAB9MAgnEoht3MJM9plTv0CU_b9jqy!)?X};HCbbMvp&OvEjmwRS+#FG6q&&i>LxdO&A-GC*dXgQbME6SB zL5Br4_Ohd6FC{xB#!+^B37mC>)T9LPEcG|COr2?LCO^eL)8f=F`RC;kCyQd~C}!rz zmPhLOrxGV2i-T0)l-ctOWe*C)4^Z7K3?hk5>5O;=9!C{QMEH zTRdlhd+-!l#*Q)kCnvx%xlYR5fM@F3tmJN7uRxKg%alZ>hp={~#Qp)WZW+DJ+T2@$ z=;ijv;kw)!tL+5GteMz{VL+Vr(MIH7;~dQU0EB%l z4<^}#W@5sgn^x84ZK&(DkqtS13#S?|NU9CEIQhXcVf4oUSMa~^SRL7Gs^SvB(;#f7 z0TrqSP8tC$Jkx;f-z-om;Bfmg8)iN)?0SJSjkZG}Wg^VX70IXtk+?M$5YTD$JEnaC z){U6_Aq5_(gs;fw58t|J3;el4zR^>g7;JY_7InUz75#$~QIb(hAzl$iv9ryx|5#iI zO<0AeB5amG!J+lz-brAWmcd^TQ`#4W71YPCE*kO~xEXy+gwpYIuN6VgRdaIM<&nd_ z=S$rcwh=?IHtzjiVLEAte0^+)IR$zT2HDFt`jpy)w+do65`jc5Hn`BDJ+J6FWAvr^ z$`Ac8tBjO>+#G$Fwf^5USJpjMmBRFzn;>7c z{fqZExIrzGv^9cys!~~oEWaCROHD`b0h9u;yoE@ zB-sKE!0?06G5o=ymF<+v__8>(Rq%+BA?$b_(SsAsBdp>wQ-Df2@qVrqPkr#?n0N#% z!n``n%Qkv&zk|t^__;ctPv;-mX9Sq7k(GlA!xWZTIhkXw8?th=pNwUkkd-66?~GYF z-d3vRopJddy>AYf=0v|&0TaS8wUR{kRB@msZL5z$)5vzh0rgJCP@vuefT!9gX@U`9 zXWjE?iczW|0TUxhpgGTMXCFj5KIBb)cuiSoSuW2I1wV& z9Ghv8O~AN^WFV6g@N>DZi-+)sS2J9sX3#b|msRo@!9SxvdQ?QF-PuW(Xja(nkNRv( z7>+@pnj)Gy7rT}*HQ%B<`rR$9?{DHS->HgIYdPT0rl8=#zeOFLn?0lZ zkn*{jasLblbUdziF~sCSuwG-MJ_&w9aK##Oy1pO)09;r#XqVnOVmPZv{Y&|e+Bd8A zBwJcBZ*fUzTKtY7D~h(2Bs=DfATxwZhl@2iBb7;MB^(l@5mx%*8L?{I@u1m~4L{`Z zX`2PIMCoT3x8JfLi{>6k3Bc8|ekk$4yux2Y;houoDLscqWC&>soX>P7?8ZXYlQ6u! zzw}P_XpbzFo__DkN+Pa;-3J(pt)Pz1%kJi08tE=w>EURGa5l1FxD$6z#>`ufkW)IZ z=7|<#!Dtj!j0LME@NgGwf@tm1elBk}QIO>s+;`RLetb`@MO_sBkyh=_tYizZa_ z5}c4Z!IhUDO#q1Hu@K2@kT@MG!ia~!$8du7x{Mwd$H0X1vvubB5wpB$aTf&(TkgN= z(D1^vjZp56W{M|2j>z0sS$85vc&rF9r;j|4ff>V;%nCJ$#ox^{p0aKzrN;qfGMZfe z&a}aIHQH!Lxaj9;WAQL)X3<7K(6Rpd>AO8wWXuwBP|2(*GKnf(h(<{^rPEBh-i3JS zUtADmSom5@%#)4f*5E@ZLerD-j;`O7#;xIXmQK^ZOB@L6m<3^7Sn!4m8)M<1fo5!8 zK8E3uTr8dZ(uW?%?NJtmrdzK65}q)2UZTj~u}>Jh=qEE2E+TwsL<&M?d|}MMC%C%q zt3F;7ISslf0tBR#GnLIZi}(fqg>Z$(BJf@$pf3%$>Zww<@&*nJ7)B!at zX~#HH%k+arLx$3vI1+2l0^QD+q4fy5F@4kzT0W-?k)$o)Qaq@06!;r?Fpgh{h^)vh zjEF&F%@9T`nXrm!ygW=8B1!9XN5zCf+(ryoa+8iLV_<#Lc0Kp`_pYsStnBC!sT}el zSWSI}PAMxE!cyTY2po{ovcMYlD=>?2*>S7Vid6<|mJAfZokHJs-9!qf;s>`W(4RTd zeEPph^nY_nf8{qApJ{StmiT_z2onf?W9@x2xbWtXtM;=g&~tqzWy*+OKGKiXb#h?K zBW?G;Eid%KSFL-!yw{g_Am8?wBqjSJ_1q~DWVvxe$v6)q3hW_3%3+>)Dn}GtGqnup z`dyD#O=eJC|7G-6yZn=fyVS0k|J5RGG&&c`j|uXC#FUKO=Ama`7Bemzp01zbaY7BI z<%2%v19XZWbOUP@=EFO_C2mObVCXTDK_u|&=qqrEq6$a~VGL})rO zYTa5=%YT- zZ;;{9+8x5g~|9HCpwmND#me2t# zHL8V=t5;OHd!w=4ZDYHq8rxic@V{lj8;$C-;yPdIk7KD!U(F00nVGJ*4;72R zB4&Gw%{t`S5??rc2;cN`Q61c$Sw@E=TG_w`h;h)2+BUfoaYJGtCl{7Vo2Jz1st{CKc@yq;Bg`aP=}r`6z& zEF;e)UH7N{s9{=AOM#@&%({4|fZSnM?r5d`(9+&NlQ%Fpwd69Ay%kc?Y$UU}Mo@=p zL(9UEWpNn&8yjvY014%qG8I8Ugyuk%jH-$_Z@T0z(Quh z9^D8FZxI&$by-uXqC&kXAjyAVs-Px<9vp76Qq-JwFDPEQ7B!N+gl`Kr3H+TLJ>=U= z)5BITJVcsjOw*;B?7lp75z6LGcBko5!zVt8k>;t5Nb^=<^O}-0`ZDa?_3lWlG&U|B zzS#?Js=WjA>rtqs9%>}iXJ^n#8&!yGdLk<^$R3)s9rvkhQAX(;M;Qb%OCg$&VW)Fws<0mQ`>{0ZAViQ0gi(fB!i+8YJej zJ_t|==gSiW*hn~QK>$CO)ZCE>omLYT!;&YE`_sxTWx77eS1!c*|8%&>1Kxv^<+hDg zlFSewoR&Cq7Cja$d@7w+Mr4$Z)N1kn?4SCh2CNdjfDm6|MMQqHS%5jTkfIbVsHMOE z_-N6bTK2bKYs?0(%u$?4lawgQS|1$SEp~lvVArNHMZ6!TxPIv+@P$iL!lanYZRC74 z@=awU)Lo}-!KS2DIa;^NwIXVBo34xJX1D4}di4=q$#>PFi$Z8xl+iKLT9e3jYug9a ziP>}rC+m}UFkBO7Nk1*&!s5xeWHAxl7lBo?I;UDn;am&Bst@?Fg?cs0Mw6l9*7Nn% z$vg%4m{%2W>XOla)T{?Op7?By?g&LymCn>p3!X;_Q<1u@(h@z7 zh=EwlO11SHePWB^(fzReQb|&y!T+;=>W^BmNObRJBehbH>qG9Z43b2xf1Fy)Hb{s< zL>B98kA^U|Cs}DO+wT-6&kAgBzG@_I8p#W3J!QN^*ftSk_ORpuE;aw^`y~%9gxJwG zrreY`2VFwAIi^u4jp~K)Uxk}X8Jxwx1W7w0M9BU>zDRQyao)fgo9kO4A^Lc&B3qTp zii&U72DIBH+P%7@-4xv`3A9LMDS?EwRZB8tBI~8kNL;YeszpBhI9A|lHqprcLdFi5 zJ#&3b3SkoUhKv%^k#N!%J+e^c!Ryw*lO>;3kHAwY zLRDvu8hz^9r|b+WIW016#Tsv7ph8Yf_h??KN9YmeTKFogq86kTvva>}Ejl zPn*WI4_Z}x5=|Rv$8%-8qt0XQampAi*H~0;1~dwVNH9;LFXSf&qn}Z`LhqS57BO3TK0UnD_%_gwt|RZ~<9coR z9moeI+|P?MTtxAs_Un;bcotE-^v544!nmJgmyCuCJMBHjEKwIIzKfRNKb_>>k|e(r%4?ZwrXaxNiI*mj@iLw=ke z<9~ea5GTLrwsCd>W&M>x`2qi-kO$cPCKo7}8?qjrQt|=O=K$SPK$ni5sGuYI1sPCU z8o_F&Lue+O)bb|r3|Z|Z&usEMvx!Z~LPE(iM{S`v@Qg6+CB>fta|+z=sdp69?~_7U zu+rW!QKihqqPeZ>iv}jy&faJWs0A?zhWDr)+h6Z#e9BBW1zn$R>E{87n;iQuF>PKw z8|oBG%MSnx-w0uAutt`;U$!l@n;e;0wit4DqAe*D8>twf2#RI9DfmfkH7wi1a{@!E zV@+$xo;sbXX~kl?N~<9rs604G+GGUc8lrUC*U{QLMH$|D%FtUy8}JE1L33Jc3dh#! z=yxMmJ*F%El#PICv4DmH?NRd%%%tPJ#5>}Dx13e&~CP&8RO>KX9|zn zY+AsQ7cm89;B93T%>h)V@I_$jPXmWfJwN$m{?o^QZEaQi7oIxKHAX>|L*6_fE5(p**G;!(`5$ z?L$Vbqa0>lOP%ScB{m@GG<`NA6R1-Hrs2ffK&W5tM25)Xs@a}3!xLUg<5~a;=L&$u zGa1Esi6VrC5sw;u8N{9$HuTJYg~OiJxG|IiYKwhTqM#})H29@BH^3h2yNeQdAECEF z9cO-omePxG_*tRF3i)+oIMqjXmDI+d7x%e)jv|io_{``v4%QyX+m;kzvVX%^wasC$ zK4ERW{CMe9z9xbTTD%~c7$xq9RQ=rS2@wudS{~DiCxh3u8ea+xZa(O2XO4WJ;#PL%+r*H*)C3tX_!M( zn5XgOUeoD1sDVg;j;XFOqMf{EHUk?t!<69Ndujs5!#j2M8i15MqQ(=+17+)0H)KH9 ziw3K^Wn$`J+BKW$NjYH}Z`qCZ#V^P;>r?_N)x@H;HyYmi@pTNFayq^tNtTLRmcZ6( zp-fd$twttG;G>p3P3N*tIl2dXg$ViFX}0m(jJQ3OJKdhjoreEptlMSobUWrw)2J8} ztERPD+(S#J=AOkR(dKnS&hC}$x4Z*s*jXncOo?6&YaulKqL>B;?8U9cX~yOpEbw|x z5LpnkX)y@aqF*xYIz7!B%Vnz#ieOmj=go3iw%cuS0tY(2V5%<#)7=v97gl}JfhVl` zW_q5R_lxRFO{U(53V<1wZU%!R>Go6s!%Mj^Z@!2N;lkJQ-uO)4jY&!J&I{l{A#lp2 zesM;oPE1HfPl*f#<_P?a*>`OIz*f>gqF# zhnG6H9MOx;t?G&g+;7!A<@9_f_f+TZ{9BJ4IilmOIYCRB%#MuTq8_$XJ#ZU)&~4Sj zmRb*6YCUWzd!Q-bgK(i$Pn`&W>SEWd{SaBnx>amdIFKhJn`4SHC`lu`eNF_v8A@aq z5Qbr#-mIS^uLxZ?+|5b2dmZ&sX#ez za7qO#eDoKp=l=FRYy5jobn)DA`~3~^cVSZp8zacJc!{^KYcdI(1L<9byR6pz`Zvx4 zU*wd+TW@}dvT?7~>@@eq2jTwWRsnE+1ay9PfL9LH^y#N<(4Vln=azNn2EkBT11P*R zd;AEXzOH|1bwEdT)@hNs^fjr@jsPv%>jnqtklMAM0y;abA#Qx&WC|U}^0WX*`Uk4U zrp_z*pLB#p;{KByZ=1QX_bFIuS!0r%+!y{jG@VrE-zGfw=ilnipMNXM<$Uzxk9?=M zw$o-ju9X9qQqMZsZv7|g(&6AtE}Yg{uE68kSv7OQT}Y-?4{4gulf*rn-RB3?IW*`JQUegO_cu%HMEDBeac8MlaJ6jCLpC{WV7)HWK9iC5dQ!9fjx)$kf+e zNX53ZJiAOsbdnu25vG@aN*3R4qQ& zsV=yH2^DqK(cpyF@O7k`LFEic0mtlh5>&X$C5AbpNW+~*;r(?KmWX}g*QXH6(D2Mc z92(!J=)4hdxVR%$Jt(lU`d8}J(V=FZ?1CGkLD+#XkXACNpOoQ~QLGiC-!UY%%Mr}S zq#1TIiklt-<#pcI0?)5>lB#0;7d zVY$AXKW0drsjBNptUmugrcKWt1J^Qc?vM^1OtW~>LaSi!XttEt$*f&=59pSjut>f5 zs!K$1?&J1)7#Kh+95nfcVM~mOpRETmD->Xk0>eU*)&A)7!##J!K6jL8s~thna~~qg zD1`}Mv~?o4QZ@$+onMFcxoZ^?>p6~M%%$$^&Q7(S>5kehcRL+6(Q4ycP%rUkA~ljZY*tuC8e~#xJ~qKx2Jgzl`&1iv;x=rTjQI`M>#=l-U2qn(WgJ)r zDq5>QCXySASZ97;w+FD07|)Fo|3EtBqXwI#wl#i6puy)z8-Omcc&Z=%yG)u(hPS34 zb9dy!NS4=;;pGlmPoPB6v0Ze$v4v`nb;3I`nqFPqQFDU~BXF46jDD^h+d~|Xp9McSIUGfXz3)@A= z!?5NB)196032@gg6?h!5y`iLE1rus6#2EVKx{eK5vZC0ivlD%OATIb|aHU)tw%~)+ z)`E`?^raYE>1zu<9K#DKC>R%fbgB{SKB~il5ACQ9mbhH-;Sr|}_e+y9wKf5f5>t#i^=UCI0TJ&( zG1Ged)FEA%aST#l%D)K&!*ftzdI7~RjrhJaG<^rajrmF$*XS(KW;rwzW_4~eU2_<- zPldx#mzCgwTC?R!`@S7ItHv1Ewo1#b9W z%}=12yqbI&KCoDzJAnoD&WA2hOV+7N%K&))G#=Rm$Z&10udK-2&#Y|s)zyYM$%La= z`W^k1u-8A{&Ifk#Lxs(TSM8onfFg4fX^+vQwaK(^;?-o4dYu7{LJ9|Bq!Yl1n){46 z;WOtiZFDDnsnmg(&2lqzSn|MD;D>Sp`Y0Mcy2@GP1NX{(%Aw)raNd9!PZ~tV-jn+_d z8o*^oGY}J8=8*rJR~w`Eh@J*}15M*r{aKu6CyNEY7xtPHW6ydzG&~1jC4B3m91lDw zi>gfE)YVjtCn+zpH3A`lEZ@(5$Z_X4A8z3mu*-Kvn! z%(tz3&Kk!|yN2#pwQn1Z+{RVbwWo9FnJw}`1D)fpPhGNw*Y(_8zr0q>w81}7T)fmT zd{j@vInMOd_RJ4L_(2h|Di@u9%|(Z-15v^EW5t3ZqBua5mH)|mo(AIL9$@Y(%4Tj- z4pB+34cwgIY&G#gJwT~DUI%D1B0l}Goj&j=qH#vPqJ_NgoboPH-yV=lCn&V#!;J1# z?rA$$CFU)sDuAQHXymY=KD@G4KxXs_Nl4OvgXt=hlq?98lztOP87q1tY7K_WX+!W2 zgYqL`o~06T@cnZum$CBHaO`jy<&_!)av9Oa%rdjl-$;ce{h!IJdQWqtYjE)>b;pOH z+EnH6WQ%VV=g}W?oV&Yx(XAjQILEnrn8`|cAac%ueso)Z!1g40uetYL@k0MK?LF!n zdJDJj6?{6UOup&)_@-Cboz6?X$nF$s#pLjID|hFsHcdY8!$2L~SDxV(BL+Bs%V%b` zfNqcEK!A(*sNl;;wzT5g04zQhDWmy?=|RjL(+_(t z|DPJsVO^trNC1e^%%4SiSQ6{`3+gHagn34&?|DvJLIq*qCwvf!Q?1<>QHjS`FQ*Mo zf*@4j-4dO?jHVmC8IQ5C)VLMjK}&iFBsxdV6>g-v^DeOFUvH-w4?LUYwwbB46`F+(8O_&UCARfq|*1IVhM?<#B{C62NHit8m6e!0sp0sXPH8iY_Fv{+F9L8@V27ItIoo8?ANfM?kHX(?Tojs9PW$Qk}! z5#Bvx?;2C@){^k@*7vDmd+Oz?--VvIyX@t{^vf*Ne9T^Mi!UvfvW^}8vY8F46U&dH z`6~04ur+V=X_?_F(qChkrUjkgbL3a-p7G^DF0dfZDP({x&0)9gEAWE0eCt`C`z{_# zAB~s#Z|`6icy6vCjyozg!6BCyFj*LG zZV}|0ioV2o@z70^k+^LnwvZ*J3px~hsrSffQ!+Y~n&mWPBw=Lf)k&dG(oB$9rFBX1 zNWv7PE7}sT9(}=w`eYDiNa5lEB(kQ3l_=#w*gSF+Sux~f9ywZr6e1Q7vw?=ewPy$# z*z+#;0|wazUM3iFUJd##@B%%U6N1>wAp|wSn|4C+Z-pQ}Uc}>6lNQ=S3rr)Z`vM5U z*A*!UglG=c5rR5uJ&OpkJuQ5fC?E*`JRpdy=^BEDbp!#VAxQejtHFpM)UmkixVTIh zmEN*P(X!-NmS$NkE`e71G&XbsW!|d~f(D((#9SYYfn?2tF)9-kp(IwC&umV1puoeq z$cCsAb3YJ#0rHGsf`lx@d*Q*rl5OHX3c#~cp6>%bu~?KFfy&!H9h7T zz2agXqkJ-|0k1Y$-4G7JCL9PN^>I`iOOYPjFO2dbI#GsJwED$jnU8y$z9Ar`!cL=;xsT(8{dKc@GlA!6avLZ-%uJsarGyh>BM4(2*74q4F{n`A)TEh z?w>PxMnM(!Lo;S+CEOe(nlnwbfztV+l*XJUc8Y~`|JlHeVLY^CwI?2(T9!n z;(@6bQ1LaXSQS47SHW~^*?9kGp88L#TFhLbSjM82M0n*jX;P9ae+Ujw{VJRf`{N$s z9NJ()X?DwVqh(n&+wYhkPZ)j@41shrgp)bOJ_ps$B&qG9W7QH<}{h^S_oe5F1xJ zYMf~rW7|vJY`4xHBM^~J!NOE7z`wnMUxE#gJGkr&LDPl;1cr8DA6=q#mV4xDyRm!L zNEMTxZqtBxdY`T_Ec`23m8(;mEk()z-Mneiy)G^4lO)ZKB=Zb^!m?YK9dUr%J{Ctb zIcgZ&2USeQ(8Xv{R;Uh+!J(PFe51*cIJZ7In$y*JH1%@#w0=^Qmy@FMZo{Q3GZ?ri zl8F;sy87}l<589qi7Kv&U3b7DIlLE^u27<3^=kdn6=>9y*gbeuB$oR!^IfEVEb$vw zVqs2+??O~VYr4Gz9I}LEo2r0f6z$#D>A@JQ04;1>Ovj|P8;^s4h>aU+Phj^ zMLxqPhgmwq*yhLrc`9-3+*CEW9QxL+tycAXw!tJRdOGNk3*WsBnPt@N;cZC&@sjiq zSQh)Bt*^wi@zHKvo(yDlGE4wsM4%B50%OjOn`Er6Yt^OIYt>Z@o3A$fVV`o#iCWS; zJR^%cbU%2<-H#;KyXU|9U*Dm)^~&}83!dc)Gy_4~>s2RYYF;qd0s{e1yOFA*^F zp8GO)>_XiO8pcCGYHn%`R($?hSZ!KMO-7F45R`ITXq^$8I}s5@S0YEz!BOrIjG-cw zFjyQOana^^HkOrV9Z`s*jV36T*Vk~5engyr{8e#7*?EGh@`|bDzqLHHj`dw=!x<*k z6KPD|cC#3owPqT`canKuYfI~SiYDVGwEAx$YU){wnWR`tzMzlRun*LVQU3;?XA1VMzy{Kx{EBQ5Ye?S zV*;J^TL4kP;Ag4>03PBMua{6Wj)ktmC;oIu;uilYjAPX z?>vB2Quir)((q6EzuT|ucNGekD9rv>qzgNn@fgcA?{u>Gqkgr6F58G^YDu=al7uvf|sTi4g)cswTinPY8+h)6o8 z&~Yn7?21A$YBJmXZ(A9y!_@zyhL6FduFpCz3MX@8Y{FRbC2gjE-3oL|4{EC1W|rd~ z_#{-3YNgJErLfl*{KG*r6q0^y8^cpYX;RPgNSj$va==GM63J+~U{TQaN`bOB5hma% zc*P|XiWbMdcc1eK+R6CmsNvnDmM6d$5F$TG9(zxe3udC6o#h zbx>=bAZxOZ=M-kzgB@6w8chSZ^v1(4HZ84A2VR@C%rG>T9iSz*mV5A5gcTGXNzg@8 zF-^6Ene(SBgB8XPwoMIdqAWB0JQ+#~=4jmwJn05&nsW2V1J^IRM?U!~U+&-kKEIeF zs?MLh_rS9IlfM7)p}YC%pmgaTg?7Wg_!+_OT|9B&5zh#&Ga>%j{z% zscCbuOZR`T%MLPMp1@$ZBIhI@)KvU6iDp~`&t@wQL8G8NJ2|Ry9#|m9Shpx&-@>PN zv~p(J(munSlNv8zW!jQ1TIZzJ1un@22s|uzLDG{aL7wuxH0#cC@Bdj{kE08IPB)*< zNAES&Xkq=-eee@{y3_r&T|bn$ANoZ-__@p%v*c@d$YzH4_rRh#P6Ix2Uzy_A|BiR@ zUYWIWifD%DLH)+)Heo#JeisG^;%IETZaHfyU@*8DS`KCx_3XkCF5QQaY z0?yLc$aJ4faAW1~aM2#~0j^YkoZ{fHDy2H86)NM6MFm7lSseF?twztu%)xLpAD-M9p6FvCECi7OO(GG#Y&w>P zL8%6(+q}C;x;CLz1q*tXsSRAjTr{9Q+60swP`PwJKoBt?)TY%F`z(lil{;!6#Mlzq?6_c+Rgd7je=QB_v)ViCMyNLnvuGv}1 zYQ{?b8+i1*ys6}@o4*MFC~W5c?{jj+lqw8k1PYZxAhDKKVr%M=)Iinn&UU-=o>+J6ojRj1oa>9VN`-gVb!qR-9VY7dnXafRJ! zAKF{&PJxFv*`0zV7g2Q={&|@fVc-`nzWL2i!T>B2L;J|41`t3D*%%rU;}?kc-*ZAB zdT<1y2S*^T2WK9hYF!2(0xATA$GK%`@bPL7(H$p-G>T|T6Q zH2V%M&{WUy$nb6a{75Q<7*1?ct9Y3!6QA<_6WLT2ceaC`SFJlQ$h3-E{dKT^2oQ}X z&6s!ud^UYYk=N4tY;&7s#?ce;pB91>KTPMRv^`CdV!^wjzRr{;_;BYnmVdU@JS$cf$IMTx^z@bRILhPzi$c zA`3ieTgQ3?o>_}P+qCHfcO4I4s(s7810%6dkJ9Lj6k4`p0MqGigpJE+A=A!)WkcRL ziHL^qgh2M29nnY!dSNdyl9v0(6}^+vKJLGkiiERo-pAYh7bFYz3m^M&{en$+*E(3f z9um#>^TGn3R?dQXm-QA{+w^tTtObJXwymvRWYLOjKIopF+eryS1ZwCS3S6bIf<-rf zQQYMfup+PpV=fshMnAAqS?SyrX@3(eJe6qF|1qDp!uiekVI5F;>2r~reDl@x_-s@ja8z-qbcU8ALX52d_8@PkSv@M=>m z<1B_)H8|Zt|0kPiF9xM6HjBu}b{oTqzoZhZBSmnajG~@ODu=q_K^@MAa?yQ5AIp$% za*rphGR&h2dDKLRwCZ|xvYn(FxRMQv$PD`k!K=)$(U(XVy5~nx&)O%5_OZv|>hr zN(~KgoPorcq2YAAf{y_U`2d>wyFKdY}$4Y z5ll&<0Qmjx;P}a(URzBFJEGyu7%D(6u=IJN%j@DleH1o6NhN@!3S8hmvGrmCG; zZNrf|#*P`=#g5Bf&?WQ&xdAsrn=sSzu?ko}%$nkevfV1gm@;D?wP+Oc&od%x6$>{5 z3-=H|dLYOv7S5emSY9YB+!L|2bCV&^gmO40J!j`y_KZDjJ9y7E-Q6DrIpxYXEBHPg zl%!eGzmZR%uz5yLdt~s;nV`DfwZQXV(rcKxxLw$$L||wKq`3hN0y#Eu1!aC2n>EmD z5yIYezBJ8n>`vcWXoeOLjwh09VHI3$#(tr?ws!0+FV-I9kE0=YC*9?_rbM(SC(4NV zfMP&Q7N!o+^4fA`>jk zgq@fin(};dc+!8+9rs)BShlSj z5t5>yvs?Jb-~zI5owT-*s_~oea1XzO8Gu&rSk~#i2^Ci{o>&Z2oBC?OLi{C^s}G{N zU$Z6i@W1F!)aUk=39^H!J?&rEaYjH!#jM%mv4{o#T@tR zYUteTKHZaZa1TjfDBy;>X9&ZfvlhcFenB!*Rr~C0wOB>`4`pI&1=CeLJon&`>;f4! zqS>!WAF$p61R<%xAh2GMlR73|?A{%4EQ&oe!G>M5tr%THv~umMi9!V3rQ}=b9ho~g z+2l@L9&eUG+lym&2o_vj%`V>dkiNXbu3{D-uV582&}sB$u!;)0PK@2=HPm9JL5ee(a2_a5+36;a>t zE!(pRn-J20yGsa3NbiIq8#>a2(1WCHAU$Lgnh695ih_cQf`U?1LH^p`)AT)Im$vs!_FbkPNGnC4a?7 zLgG2hN6oH|5wM|-Jdq`D?=6`D*|n@(NXZgt+|Yx!*t~AEwac1YXEPBya`JJiAh2c3 zAgr^mR})ytyo$bm(ZkqTMg2bzX0~r{>?v#6d>PDaT-Ym&|s^VGUd5eU2BG08basr*bO!CDxODPD& z6FRN_S?DjRmj|x=7mYxb!NCljP|1)#v?sRziIxvx7EMp8yPmMB)K3c!bRi(Q1yCP? zQ4^Q(MPpxvo`bc@4!7>Y<5`LT&P6Si~)N!VC2pEY|9@6mk{dvHTLaPjO1OqL-Cc#3uvQBJ&hfy5FCW9 zeozi9zcoz=BzSmJs{w*zCL4^=`+SfXQdlWrt+IGFL?%MiDw33J3s{5I0x@ZcM}Xvq z6~*vnghH#QPy`kwv(Ys^-CHYktaelYlzCm2e6EQ?6wq@RsZytn%@st-h-9WnBBTwZ z97cVZ;3j!&#v&iqa2c^)mZX7!9Z8y?tI>2q84=NS~xdKI12g6g7jTndwi{@Thg3rc( z&}7jYs);bWKyZ}+6fimisSGyAZCTf$z^g%z9UU*T6hV)Sa4zVPEdzjN2qGXtS9b%E zb!svYVcKYrH>?1F)GN%XceNYG9IJs!5JrqGfQDn<+(2VFGsq(;0~l*BGqh6Ew;3V( zbW$KD<3sI{IMkSdAe4b1l*Tk1vmSXX6o<>lX&wu&Y1S~j=1jBtA_^%Gpm7k1tg6sr zDFYe^Sxb5~gdko-EzoDCmDoZ^^rVRG<Zk zy$8|OU8eWbyf`b)7djq{1GE^*OA2ERml+1$=!ii^tZ2Mg1tAkzMRXFDth2n46HPBc zh~q^=0vURtw0Ihf$e54TXG5@3RnYJfD_wCZLF9ltq2bU2=z;2JN{>;DvMzuYF5)~z z_%ZrrQbMLX07j+;YP@*>B)1t^kUa%e@WKLS5*m;xB*WRq0Ge$F`3ZJrgbAW*1YvXr zuRw+?IxJfX^dwG_>}J|E1*%3BXx9|-A}q;_4l{;X-8n_X=?anY24+QH0oJu?88;KR z16!)Mta!*FFe+am1VfEhLufXM@jJHf=ui#7$Bee?!L*uqex(6DFlckR0qfR$yzHxJ zt%5zY*{bsv+zoD5`CaXDTEqbY)i{btk$?)gU$N1spHf?oIVzg;BC#4sWTMhmAdv}~ zJGto65~14tTVU{%ML}7FW^76iV@gEkxUliH4SmXR9P56QDn$5dC2%mCNHW3^g_I7 z^^8j#1~(UnfvPxU(MTeO41!ALDG>v&ED-}pA_g#t*cmkj9T9I!@NOy*C0QD>GMWiQ z$Rl&tWTOWt z^CgstI9UEFCc=F2bNf-~ld}WYo$c@k*i$O2Oa2MJpWCfGCl&E;{)9naXMba8-dMv1G)ZB z@!|XDlFj!@lI^eahN?TMg0`7-bMXhT0i0mIPwA(D6ZG4iiAF;uKM!Gt05-lyfU0g` zX8dodTTsvbUsJaXP`CUrOh0=&^efle(7@&z5*V_X&P08Jy^*GlT+`ydE#kCH)gou2 zMbMtyIjWkahr;=9=w4Dd+bTix?*X(|qNS4Pu9l)U+E1`;jv-AI&VTOfR)XjYqjyq- z=!0qS7MiiP{J92C+$U@B=-Qi*lqO^4kr z(A=z6S4FdhRBX}(NtRjAO(`n2g;jJig zVlxEks)QzaTPU;@5~*xkD5O>>kuui$MEuw;=iGju$bzvj7 zJyD$)!WK~r%*#|&lI-l0vPH3^$D#f%Jx(54O6{S0&`MvL#@p3IK7jX0d&5YaCOnZL zERZxa+mf+bj=o549Adet3p$y0DT9rfT%@2K@>Hyb>{zHUhDliCO5+gA1)4XbF@_l} z!HbS;Zff5ErP0<{*=B+PJF}_009M^(@5;PDswZyhs;}5kS zKiKBHux=?!$l@h@cq>LaWDTRYoC70uYH(}+U|Useb~w}x##FM|(ZOm>Y<4(sY!r%V zVzWaDip>ta27sj6>_A<#u>lrntgQiKlRb-8vKp9y1((vnATOD_^9=?JpUh;z!ladC zz}Xb6NiZ@Ap)m5oj0GV{lX@1EV^bkYCMFgRGZsjP%vc~AcQ`X+u?R3@Q3RN=nnh4c zfEkM-Xj(*&%RrEz1YzoXv`r6FN9hjKj82P_#H_iJ*A|;@5veJH2ebBg>w?iTw^P*?tEyw|Uy{;1xa@Z<2Ag-(+uim%J+t4j zn6mv&iN@@Ada~cyC}%o4flS>G(!LhO)V-FzVd`FOggmA2)ik=mNZf7eZjwwfb-R

}#v3k_XZ2i}v4e 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

tK8xBHzz~-x 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%0AO%)!J+$woFT~v>#J;4g*cWsui)d#sfetnq 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 C{}|u^ diff --git a/runtime/near-wallet-contract/res/wallet_contract.wasm b/runtime/near-wallet-contract/res/wallet_contract.wasm index 2d543deef9b4bd494f2d538bae8348fd2bc0128b..9fbe3020a6deaa3520c6187b181973ebe5425596 100755 GIT binary patch literal 346523 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%0D(k!Iwg!sf)B->Os_31R1 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%0D;udz8x2e^g!FPUqmUbdNI?a{=z?pq;; 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 delta 37990 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"] +version.workspace = true +authors.workspace = true +edition.workspace = true +rust-version.workspace = true +description = "A placeholder implementation of the Wallet Contract." +repository.workspace = true +license.workspace = true publish = false -edition = "2021" + +[lints] +workspace = true [lib] crate-type = ["cdylib"] [dependencies] -base64 = "0.21" -serde_json = "1" -near-sdk = "4.1.1" - -[profile.release] -codegen-units = 1 -# Tell `rustc` to optimize for small code size. -opt-level = "z" -strip = true -lto = true -debug = false -panic = "abort" -rpath = false -debug-assertions = false -incremental = false - -[workspace] -members = [] +base64.workspace = true +hex.workspace = true +serde_json.workspace = true +near-sdk.workspace = true +rlp.workspace = true [features] nightly = [] -latest_protocol = [] diff --git a/runtime/near-wallet-contract/wallet-contract/src/lib.rs b/runtime/near-wallet-contract/wallet-contract/src/lib.rs index aced207aadf..3954e1ff523 100644 --- a/runtime/near-wallet-contract/wallet-contract/src/lib.rs +++ b/runtime/near-wallet-contract/wallet-contract/src/lib.rs @@ -1,18 +1,50 @@ //! Temporary implementation of the Wallet Contract. //! See https://github.com/near/NEPs/issues/518. //! Must not use in production! - // TODO(eth-implicit) Change to a real Wallet Contract implementation. + +use hex; use near_sdk::borsh::{self, BorshDeserialize, BorshSerialize}; -use near_sdk::{near_bindgen, AccountId, Promise, Balance}; +use near_sdk::{env, near_bindgen, AccountId, Promise}; +use rlp::Rlp; #[near_bindgen] #[derive(Default, BorshDeserialize, BorshSerialize)] -pub struct WalletContract { } +pub struct WalletContract {} #[near_bindgen] impl WalletContract { - pub fn transfer(&self, to: AccountId, amount: Balance){ - Promise::new(to).transfer(amount); - } + pub fn execute_rlp(&self, target: AccountId, rlp_transaction: Vec) { + let rlp = Rlp::new(&rlp_transaction); + + let to: String = match rlp.val_at(0) { + Ok(to) => to, + _ => env::panic_str("Missing `to` field in RLP-encoded transaction."), + }; + if target.to_string() != to { + env::panic_str("`target` equals the transaction's `To` address."); + } + + let value_bytes: Vec = match rlp.val_at(1) { + Ok(value_bytes) => value_bytes, + _ => env::panic_str("Missing `value` field in RLP-encoded transaction."), + }; + let value = u128::from_be_bytes( + value_bytes.try_into().expect("Incorrect `value` field in RLP-encoded transaction."), + ); + + let signer_public_key_bytes: Vec = match rlp.val_at(2) { + Ok(signer_public_key_bytes) => signer_public_key_bytes, + _ => env::panic_str("Signature extraction failed for RLP-encoded transaction."), + }; + + let hash = env::keccak256(&signer_public_key_bytes); + let signer_address = format!("0x{}", hex::encode(&hash[12..32])); + + if signer_address != env::current_account_id().to_string() { + env::panic_str("Public key does not match the Wallet Contract address."); + } + + Promise::new(target).transfer(value); + } } diff --git a/runtime/runtime/src/actions.rs b/runtime/runtime/src/actions.rs index 7d311601b9a..84cee3e3a15 100644 --- a/runtime/runtime/src/actions.rs +++ b/runtime/runtime/src/actions.rs @@ -759,7 +759,7 @@ fn receipt_required_gas(apply_state: &ApplyState, receipt: &Receipt) -> Result