From c48ce60dd3f1ce4155accbcc20864879acee26c1 Mon Sep 17 00:00:00 2001 From: crypto523 Date: Wed, 27 Sep 2023 23:52:00 +0300 Subject: [PATCH] fuel-vm nostd update (#1367) Addresses breaking fuel-vm changes from https://github.com/FuelLabs/fuel-vm/pull/582, https://github.com/FuelLabs/fuel-vm/pull/578, https://github.com/FuelLabs/fuel-vm/pull/588 and https://github.com/FuelLabs/fuel-vm/pull/587. Waiting for a new fuel-vm release. --------- Co-authored-by: Green Baneling --- CHANGELOG.md | 1 + Cargo.lock | 732 +++++++++--------- Cargo.toml | 4 +- benches/benches/block_target_gas.rs | 21 +- benches/src/lib.rs | 2 +- bin/e2e-test-client/src/test_context.rs | 2 +- crates/client/src/client.rs | 2 +- crates/client/src/client/schema/tx.rs | 2 +- crates/database/src/lib.rs | 2 +- crates/fuel-core/src/database/balances.rs | 8 +- crates/fuel-core/src/database/block.rs | 6 +- crates/fuel-core/src/database/state.rs | 8 +- crates/fuel-core/src/executor.rs | 27 +- crates/fuel-core/src/schema/dap.rs | 31 +- crates/fuel-core/src/schema/tx/types.rs | 2 +- .../txpool/src/transaction_selector.rs | 7 +- crates/services/txpool/src/txpool.rs | 12 +- crates/services/txpool/src/txpool/tests.rs | 4 +- crates/storage/src/lib.rs | 14 +- crates/types/src/blockchain/header.rs | 2 +- crates/types/src/services/executor.rs | 24 +- tests/tests/coins.rs | 4 +- tests/tests/contract.rs | 2 +- tests/tests/messages/relayer.rs | 2 +- tests/tests/relayer.rs | 2 +- tests/tests/trigger_integration/interval.rs | 2 +- tests/tests/tx/tx_pointer.rs | 6 +- 27 files changed, 497 insertions(+), 434 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f9a357d5..3950f7fc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -53,6 +53,7 @@ Description of the upcoming release here. - [#1290](https://github.com/FuelLabs/fuel-core/pull/1290): Standardize CLI args to use `-` instead of `_`. - [#1279](https://github.com/FuelLabs/fuel-core/pull/1279): Added a new CLI flag to enable the Relayer service `--enable-relayer`, and disabled the Relayer service by default. When supplying the `--enable-relayer` flag, the `--relayer` argument becomes mandatory, and omitting it is an error. Similarly, providing a `--relayer` argument without the `--enable-relayer` flag is an error. Lastly, providing the `--keypair` or `--network` arguments will also produce an error if the `--enable-p2p` flag is not set. - [#1262](https://github.com/FuelLabs/fuel-core/pull/1262): The `ConsensusParameters` aggregates all configuration data related to the consensus. It contains many fields that are segregated by the usage. The API of some functions was affected to use lesser types instead the whole `ConsensusParameters`. It is a huge breaking change requiring repetitively monotonically updating all places that use the `ConsensusParameters`. But during updating, consider that maybe you can use lesser types. Usage of them may simplify signatures of methods and make them more user-friendly and transparent. +- [#1367](https://github.com/FuelLabs/fuel-core/pull/1367): Update to the latest version of fuel-vm. ### Removed diff --git a/Cargo.lock b/Cargo.lock index ceb8421b..e590271c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -112,9 +112,9 @@ dependencies = [ [[package]] name = "aes-gcm" -version = "0.10.2" +version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "209b47e8954a928e1d72e86eca7000ebb6655fe1436d33eefc2201cad027e237" +checksum = "831010a0f742e1209b3bcea8fab6a8e149051ba6099432c8cb2cc117dec3ead1" dependencies = [ "aead 0.5.2", "aes 0.8.3", @@ -168,18 +168,18 @@ dependencies = [ [[package]] name = "aho-corasick" -version = "1.0.4" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6748e8def348ed4d14996fa801f4122cd763fff530258cdc03f64b25f89d3a5a" +checksum = "ea5d730647d4fadd988536d06fecce94b7b4f2a7efdae548f1cf4b63205518ab" dependencies = [ "memchr", ] [[package]] -name = "android-tzdata" -version = "0.1.1" +name = "allocator-api2" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" +checksum = "0942ffc6dcaadf03badf6e6a2d0228460359d5e34b57ccdc720b7382dfbd5ec5" [[package]] name = "anes" @@ -189,24 +189,23 @@ checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299" [[package]] name = "anstream" -version = "0.3.2" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163" +checksum = "b1f58811cfac344940f1a400b6e6231ce35171f614f26439e80f8c1465c5cc0c" dependencies = [ "anstyle", "anstyle-parse", "anstyle-query", "anstyle-wincon", "colorchoice", - "is-terminal", "utf8parse", ] [[package]] name = "anstyle" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15c4c2c83f81532e5845a733998b6971faca23490340a418e9b72a3ec9de12ea" +checksum = "b84bf0a05bbb2a83e5eb6fa36bb6e87baa08193c35ff52bbf6b38d8af2890e46" [[package]] name = "anstyle-parse" @@ -228,9 +227,9 @@ dependencies = [ [[package]] name = "anstyle-wincon" -version = "1.0.2" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c677ab05e09154296dd37acecd46420c17b9713e8366facafa8fc0885167cf4c" +checksum = "58f54d10c6dfa51283a066ceab3ec1ab78d13fae00aa49243a45e4571fb79dfd" dependencies = [ "anstyle", "windows-sys 0.48.0", @@ -348,7 +347,7 @@ dependencies = [ "anstyle", "bstr", "doc-comment", - "predicates 3.0.3", + "predicates 3.0.4", "predicates-core", "predicates-tree", "wait-timeout", @@ -381,7 +380,7 @@ dependencies = [ "multer", "num-traits", "once_cell", - "pin-project-lite 0.2.12", + "pin-project-lite 0.2.13", "regex", "serde", "serde_json", @@ -470,7 +469,7 @@ checksum = "cd56dd203fef61ac097dd65721a419ddccb106b2d2b70ba60a6b529f03961a51" dependencies = [ "async-stream-impl", "futures-core", - "pin-project-lite 0.2.12", + "pin-project-lite 0.2.13", ] [[package]] @@ -481,7 +480,7 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.37", ] [[package]] @@ -492,7 +491,7 @@ checksum = "bc00ceb34980c03614e35a3a4e218276a0a824e911d07651cd0d858a51e8c0f0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.37", ] [[package]] @@ -516,7 +515,7 @@ dependencies = [ "futures-sink", "futures-util", "memchr", - "pin-project-lite 0.2.12", + "pin-project-lite 0.2.13", ] [[package]] @@ -530,9 +529,9 @@ dependencies = [ [[package]] name = "atomic-waker" -version = "1.1.1" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1181e1e0d1fce796a03db1ae795d67167da795f9cf4a39c37589e85ef57f26d3" +checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" [[package]] name = "atty" @@ -594,7 +593,7 @@ dependencies = [ "memchr", "mime", "percent-encoding", - "pin-project-lite 0.2.12", + "pin-project-lite 0.2.13", "serde", "serde_json", "serde_urlencoded", @@ -685,9 +684,9 @@ checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" [[package]] name = "base64" -version = "0.21.2" +version = "0.21.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "604178f6c5c21f02dc555784810edfb88d34ac2c73b2eae109655649ee73ce3d" +checksum = "9ba43ea6f343b788c8764558649e08df62f86c6ef251fdaeb1ffd010a9ae50a2" [[package]] name = "base64ct" @@ -728,13 +727,13 @@ dependencies = [ "lazy_static", "lazycell", "peeking_take_while", - "prettyplease 0.2.12", + "prettyplease 0.2.15", "proc-macro2", "quote", "regex", "rustc-hash", "shlex", - "syn 2.0.29", + "syn 2.0.37", ] [[package]] @@ -850,12 +849,6 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8d696c370c750c948ada61c69a0ee2cbbb9c50b1019ddb86d9317157a99c2cae" -[[package]] -name = "borrown" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "008b57b368e638ed60664350ea4f2f3647a0192173478df2736cc255a025a796" - [[package]] name = "bs58" version = "0.4.0" @@ -868,26 +861,26 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f5353f36341f7451062466f0b755b96ac3a9547e4d7f6b70d603fc721a7d7896" dependencies = [ - "sha2 0.10.7", + "sha2 0.10.8", "tinyvec", ] [[package]] name = "bstr" -version = "1.6.0" +version = "1.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6798148dccfbff0fae41c7574d2fa8f1ef3492fba0face179de5d8d447d67b05" +checksum = "4c2f7349907b712260e64b0afe2f84692af14a454be26187d9df565c7f69266a" dependencies = [ "memchr", - "regex-automata 0.3.6", + "regex-automata 0.3.8", "serde", ] [[package]] name = "bumpalo" -version = "3.13.0" +version = "3.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1" +checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" [[package]] name = "byte-slice-cast" @@ -909,9 +902,9 @@ checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" [[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" dependencies = [ "serde", ] @@ -1028,11 +1021,10 @@ dependencies = [ [[package]] name = "chrono" -version = "0.4.26" +version = "0.4.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec837a71355b28f6556dbd569b37b3f363091c0bd4b2e735674521b4c5fd9bc5" +checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38" dependencies = [ - "android-tzdata", "num-traits", ] @@ -1121,24 +1113,23 @@ dependencies = [ [[package]] name = "clap" -version = "4.3.24" +version = "4.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb690e81c7840c0d7aade59f242ea3b41b9bc27bcd5997890e7702ae4b32e487" +checksum = "824956d0dca8334758a5b7f7e50518d66ea319330cbceedcf76905c2f6ab30e3" dependencies = [ "clap_builder", - "clap_derive 4.3.12", - "once_cell", + "clap_derive 4.4.2", ] [[package]] name = "clap_builder" -version = "4.3.24" +version = "4.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ed2e96bc16d8d740f6f48d663eddf4b8a0983e79210fd55479b7bcd0a69860e" +checksum = "122ec64120a49b4563ccaedcbea7818d069ed8e9aa6d829b82d8a4128936b2ab" dependencies = [ "anstream", "anstyle", - "clap_lex 0.5.0", + "clap_lex 0.5.1", "strsim", ] @@ -1157,14 +1148,14 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.3.12" +version = "4.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54a9bb5758fc5dfe728d1019941681eccaf0cf8a4189b692a0ee2f2ecf90a050" +checksum = "0862016ff20d69b84ef8247369fabf5c008a7417002411897d40ee1f4532b873" dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.37", ] [[package]] @@ -1178,9 +1169,9 @@ dependencies = [ [[package]] name = "clap_lex" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b" +checksum = "cd7cc57abe963c6d3b9d8be5b06ba7c8957a930305ca90304f24ef040aa6f961" [[package]] name = "cobs" @@ -1203,7 +1194,7 @@ dependencies = [ "k256 0.11.6", "lazy_static", "serde", - "sha2 0.10.7", + "sha2 0.10.8", "thiserror", ] @@ -1219,7 +1210,7 @@ dependencies = [ "hmac 0.12.1", "k256 0.13.1", "serde", - "sha2 0.10.7", + "sha2 0.10.8", "thiserror", ] @@ -1236,7 +1227,7 @@ dependencies = [ "hmac 0.12.1", "pbkdf2 0.11.0", "rand 0.8.5", - "sha2 0.10.7", + "sha2 0.10.8", "thiserror", ] @@ -1252,7 +1243,7 @@ dependencies = [ "once_cell", "pbkdf2 0.12.2", "rand 0.8.5", - "sha2 0.10.7", + "sha2 0.10.8", "thiserror", ] @@ -1272,7 +1263,7 @@ dependencies = [ "ripemd", "serde", "serde_derive", - "sha2 0.10.7", + "sha2 0.10.8", "sha3", "thiserror", ] @@ -1283,7 +1274,7 @@ version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5286a0843c21f8367f7be734f89df9b822e0321d8bcce8d6e735aadff7d74979" dependencies = [ - "base64 0.21.2", + "base64 0.21.4", "bech32 0.9.1", "bs58 0.5.0", "digest 0.10.7", @@ -1292,7 +1283,7 @@ dependencies = [ "ripemd", "serde", "serde_derive", - "sha2 0.10.7", + "sha2 0.10.8", "sha3", "thiserror", ] @@ -1318,9 +1309,9 @@ dependencies = [ [[package]] name = "concurrent-queue" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62ec6771ecfa0762d24683ee5a32ad78487a3d3afdc0fb8cae19d2c5deb50b7c" +checksum = "f057a694a54f12365049b0958a1685bb52d567f5593b355fbf685838e873d400" dependencies = [ "crossbeam-utils", ] @@ -1491,11 +1482,11 @@ dependencies = [ "anes", "cast", "ciborium", - "clap 4.3.24", + "clap 4.4.5", "criterion-plot", "futures", "is-terminal", - "itertools", + "itertools 0.10.5", "num-traits", "once_cell", "oorandom", @@ -1517,7 +1508,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1" dependencies = [ "cast", - "itertools", + "itertools 0.10.5", ] [[package]] @@ -1589,9 +1580,9 @@ dependencies = [ [[package]] name = "crypto-bigint" -version = "0.5.2" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf4c2f4e1afd912bc40bfd6fed5d9dc1f288e0ba01bfcc835cc5bc3eb13efe15" +checksum = "740fe28e594155f10cfc383984cbefd529d7396050557148f79cb0f621204124" dependencies = [ "generic-array 0.14.7", "rand_core 0.6.4", @@ -1669,11 +1660,11 @@ dependencies = [ [[package]] name = "ctrlc" -version = "3.4.0" +version = "3.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a011bbe2c35ce9c1f143b7af6f94f29a167beb4cd1d29e6740ce836f723120e" +checksum = "82e95fbd621905b854affdc67943b043a0fbb6ed7385fd5a25650d19a8a6cfdf" dependencies = [ - "nix 0.26.2", + "nix 0.27.1", "windows-sys 0.48.0", ] @@ -1692,9 +1683,9 @@ dependencies = [ [[package]] name = "curve25519-dalek" -version = "4.0.0" +version = "4.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f711ade317dd348950a9910f81c5947e3d8907ebd2b83f76203ff1807e6a2bc2" +checksum = "e89b8c6a2e4b1f45971ad09761aafb85514a84744b67a95e32c3cc1352d1f65c" dependencies = [ "cfg-if", "cpufeatures", @@ -1715,7 +1706,7 @@ checksum = "83fdaf97f4804dcebfa5862639bc9ce4121e82140bec2a987ac5140294865b5b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.37", ] [[package]] @@ -2037,7 +2028,7 @@ checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.37", ] [[package]] @@ -2135,11 +2126,11 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7277392b266383ef8396db7fdeb1e77b6c52fed775f5df15bb24f35b72156980" dependencies = [ - "curve25519-dalek 4.0.0", + "curve25519-dalek 4.1.1", "ed25519 2.2.2", "rand_core 0.6.4", "serde", - "sha2 0.10.7", + "sha2 0.10.8", "zeroize", ] @@ -2178,7 +2169,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "968405c8fdc9b3bf4df0a6638858cc0b52462836ab6b1c87377785dd09cf1c0b" dependencies = [ "base16ct 0.2.0", - "crypto-bigint 0.5.2", + "crypto-bigint 0.5.3", "digest 0.10.7", "ff 0.13.0", "generic-array 0.14.7", @@ -2190,6 +2181,12 @@ dependencies = [ "zeroize", ] +[[package]] +name = "embedded-io" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef1a6892d9eef45c8fa6b9e0086428a2cca8491aca8f787c534a3d6d0bcb3ced" + [[package]] name = "encode_unicode" version = "0.3.6" @@ -2234,7 +2231,7 @@ checksum = "eecf8589574ce9b895052fa12d69af7a233f99e6107f5cb8dd1044f2a17bfdcb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.37", ] [[package]] @@ -2245,9 +2242,9 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "errno" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b30f669a7961ef1631673d2766cc92f52d64f7ef354d4fe0ddfd30ed52f0f4f" +checksum = "136526188508e25c6fef639d7927dfb3e0e3084488bf202267829cf7fc23dbdd" dependencies = [ "errno-dragonfly", "libc", @@ -2280,7 +2277,7 @@ dependencies = [ "scrypt", "serde", "serde_json", - "sha2 0.10.7", + "sha2 0.10.8", "sha3", "thiserror", "uuid 0.8.2", @@ -2545,15 +2542,15 @@ dependencies = [ "ethers-core", "hex", "rand 0.8.5", - "sha2 0.10.7", + "sha2 0.10.8", "thiserror", ] [[package]] name = "ethnum" -version = "1.3.2" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0198b9d0078e0f30dedc7acbb21c974e838fc8fae3ee170128658a98cb2c1c04" +checksum = "6c8ff382b2fa527fb7fb06eeebfc5bbb3f17e3cc6b9d70b006c41daa8824adac" [[package]] name = "event-listener" @@ -2603,9 +2600,9 @@ dependencies = [ [[package]] name = "fastrand" -version = "2.0.0" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6999dc1837253364c2ebb0704ba97994bd874e8f195d665c50b7548f6ea92764" +checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" [[package]] name = "ff" @@ -2629,9 +2626,9 @@ dependencies = [ [[package]] name = "fiat-crypto" -version = "0.1.20" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e825f6987101665dea6ec934c09ec6d721de7bc1bf92248e1d5810c8cd636b77" +checksum = "d0870c84016d4b481be5c9f323c24f65e31e901ae618f0e80f4308fb00de1d2d" [[package]] name = "findshlibs" @@ -2706,9 +2703,9 @@ checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa" [[package]] name = "fuel-asm" -version = "0.37.0" +version = "0.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe3bb19d130cae1b52bf46be4bdc3e8ef7180bd1edb552498521341d6a46ebff" +checksum = "04b475eaa2b92b9b616c736974785bb25bd0babd9baa13b450bd618dc092ea6c" dependencies = [ "bitflags 1.3.2", "fuel-types", @@ -2725,7 +2722,7 @@ dependencies = [ "async-graphql", "async-trait", "axum", - "clap 4.3.24", + "clap 4.4.5", "derive_more", "enum-iterator", "fuel-core-chain-config", @@ -2747,7 +2744,7 @@ dependencies = [ "futures", "hex", "hyper", - "itertools", + "itertools 0.10.5", "mockall", "parking_lot 0.12.1", "postcard", @@ -2776,7 +2773,7 @@ version = "0.0.0" dependencies = [ "anyhow", "async-trait", - "clap 4.3.24", + "clap 4.4.5", "criterion", "ctrlc", "ed25519-dalek 1.0.1", @@ -2810,7 +2807,7 @@ name = "fuel-core-bin" version = "0.20.4" dependencies = [ "anyhow", - "clap 4.3.24", + "clap 4.4.5", "const_format", "dirs", "dotenvy", @@ -2838,7 +2835,7 @@ dependencies = [ "fuel-core-types", "hex", "insta", - "itertools", + "itertools 0.10.5", "postcard", "rand 0.8.5", "serde", @@ -2860,7 +2857,7 @@ dependencies = [ "hex", "hyper-rustls 0.24.1", "insta", - "itertools", + "itertools 0.10.5", "reqwest", "schemafy_lib", "serde", @@ -2874,7 +2871,7 @@ dependencies = [ name = "fuel-core-client-bin" version = "0.20.4" dependencies = [ - "clap 4.3.24", + "clap 4.4.5", "fuel-core-client", "fuel-core-types", "serde_json", @@ -2961,7 +2958,7 @@ name = "fuel-core-keygen" version = "0.20.4" dependencies = [ "anyhow", - "clap 4.3.24", + "clap 4.4.5", "fuel-core-types", "libp2p-core 0.38.0", "serde_json", @@ -2973,7 +2970,7 @@ version = "0.20.4" dependencies = [ "axum", "once_cell", - "pin-project-lite 0.2.12", + "pin-project-lite 0.2.13", "prometheus-client 0.18.1", "prometheus-client 0.20.0", "tokio", @@ -3016,7 +3013,7 @@ dependencies = [ "rand 0.8.5", "serde", "serde_with", - "sha2 0.10.7", + "sha2 0.10.8", "thiserror", "tokio", "tracing", @@ -3149,7 +3146,7 @@ dependencies = [ "futures", "hyper", "insta", - "itertools", + "itertools 0.10.5", "rand 0.8.5", "reqwest", "rstest", @@ -3183,7 +3180,7 @@ dependencies = [ "fuel-core-txpool", "fuel-core-types", "futures", - "itertools", + "itertools 0.10.5", "mockall", "parking_lot 0.12.1", "proptest", @@ -3211,71 +3208,72 @@ dependencies = [ [[package]] name = "fuel-crypto" -version = "0.37.0" +version = "0.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21ff085e978bf0bcc94733853a59856083accf4685b436d81c53f092afa24324" +checksum = "931a77cda5b2732ae538b0945e28dc6a57979f2c2b4cb601515956c48d3bb44a" dependencies = [ - "borrown", "coins-bip32 0.8.7", "coins-bip39 0.8.7", "ecdsa 0.16.8", "ed25519-dalek 2.0.0", "fuel-types", + "k256 0.13.1", "lazy_static", "p256 0.13.2", "rand 0.8.5", "secp256k1", "serde", - "sha2 0.10.7", + "sha2 0.10.8", "zeroize", ] [[package]] name = "fuel-derive" -version = "0.37.0" +version = "0.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "125d226cf182f812ff104bd6315c15b2ed452a5953052c20493455e3d9dddffb" +checksum = "8c8b467951f6f2b0f61eff3cd8c308b2652a7c908c60d2cf55eaf588dcd44e1c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.37", "synstructure 0.13.0", ] [[package]] name = "fuel-merkle" -version = "0.37.0" +version = "0.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8aef206a98a380615bf711dc6b4b7328dac4002c4df278f8a43d3d16c2bfa330" +checksum = "3af06dfe8d1f1e9fcab1b61462c505073807d40b012994b66f346c19068e7272" dependencies = [ + "derive_more", "digest 0.10.7", "fuel-storage", "hashbrown 0.13.2", "hex", - "sha2 0.10.7", - "thiserror", + "sha2 0.10.8", ] [[package]] name = "fuel-storage" -version = "0.37.0" +version = "0.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a8e7a3bd721e8556c319af4c0e88d1f82ec54a48fa1b9136603f2fb0bb6ceb9" +checksum = "ed39a799d7a158b60cf862b8ba3cd354488f124f1b51c3929c9f8cb6c3021e2a" [[package]] name = "fuel-tx" -version = "0.37.0" +version = "0.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97e75c84495162671e29ef72d961c4ca06b4f62c77949e525f8d19003a3012e2" +checksum = "ce5f316e3566f337869e6522c27abda5c606298c27913d93e1150b54636fc743" dependencies = [ "derivative", + "derive_more", "fuel-asm", "fuel-crypto", "fuel-merkle", "fuel-types", - "itertools", + "hashbrown 0.14.0", + "itertools 0.10.5", "num-integer", - "num_enum", "rand 0.8.5", "serde", "serde_json", @@ -3285,9 +3283,9 @@ dependencies = [ [[package]] name = "fuel-types" -version = "0.37.0" +version = "0.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9963e48971e652a8da3626424c6d77e6b1117559149d5aa323df9ada6080baa5" +checksum = "f2cb2c79b8274965438b10342a841d80eb69cca539c1439ec66dbc567c603be2" dependencies = [ "fuel-derive", "hex", @@ -3297,14 +3295,15 @@ dependencies = [ [[package]] name = "fuel-vm" -version = "0.37.0" +version = "0.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5d48c0c0f8381efde94d53050e08f0caed7fa91b687347c5f65efcb26367264" +checksum = "b65764050e16b8f41a0bd777f6c00593e676296cbadfff0f5d1b6f195935ff1b" dependencies = [ "anyhow", "async-trait", "bitflags 1.3.2", "derivative", + "derive_more", "ethnum", "fuel-asm", "fuel-crypto", @@ -3312,15 +3311,18 @@ dependencies = [ "fuel-storage", "fuel-tx", "fuel-types", - "itertools", + "hashbrown 0.14.0", + "itertools 0.10.5", + "libm", "paste", + "percent-encoding", "primitive-types", "rand 0.8.5", "serde", "sha3", "static_assertions", + "strum", "tai64", - "thiserror", ] [[package]] @@ -3389,7 +3391,7 @@ dependencies = [ "futures-io", "memchr", "parking", - "pin-project-lite 0.2.12", + "pin-project-lite 0.2.13", "waker-fn", ] @@ -3411,7 +3413,7 @@ checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.37", ] [[package]] @@ -3421,8 +3423,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d2411eed028cdf8c8034eaf21f9915f956b6c3abec4d4c7949ee67f0721127bd" dependencies = [ "futures-io", - "rustls 0.20.8", - "webpki 0.22.0", + "rustls 0.20.9", + "webpki 0.22.1", ] [[package]] @@ -3456,7 +3458,7 @@ dependencies = [ "futures-sink", "futures-task", "memchr", - "pin-project-lite 0.2.12", + "pin-project-lite 0.2.13", "pin-utils", "slab", ] @@ -3635,6 +3637,11 @@ name = "hashbrown" version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a" +dependencies = [ + "ahash 0.8.3", + "allocator-api2", + "serde", +] [[package]] name = "hashers" @@ -3676,9 +3683,9 @@ dependencies = [ [[package]] name = "hermit-abi" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b" +checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7" [[package]] name = "hex" @@ -3744,6 +3751,15 @@ dependencies = [ "hmac 0.8.1", ] +[[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 = "hostname" version = "0.3.1" @@ -3774,7 +3790,7 @@ checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" dependencies = [ "bytes", "http", - "pin-project-lite 0.2.12", + "pin-project-lite 0.2.13", ] [[package]] @@ -3827,7 +3843,7 @@ dependencies = [ "httparse", "httpdate", "itoa", - "pin-project-lite 0.2.12", + "pin-project-lite 0.2.13", "socket2 0.4.9", "tokio", "tower-service", @@ -3862,7 +3878,7 @@ dependencies = [ "http", "hyper", "log", - "rustls 0.21.6", + "rustls 0.21.7", "rustls-native-certs 0.6.3", "tokio", "tokio-rustls 0.24.1", @@ -3876,7 +3892,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1" dependencies = [ "hyper", - "pin-project-lite 0.2.12", + "pin-project-lite 0.2.13", "tokio", "tokio-io-timeout", ] @@ -4023,9 +4039,9 @@ dependencies = [ [[package]] name = "insta" -version = "1.31.0" +version = "1.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0770b0a3d4c70567f0d58331f3088b0e4c4f56c9b8d764efe654b4a5d46de3a" +checksum = "a3e02c584f4595792d09509a94cdb92a3cef7592b1eb2d9877ee6f527062d0ea" dependencies = [ "console", "lazy_static", @@ -4071,7 +4087,7 @@ version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2" dependencies = [ - "hermit-abi 0.3.2", + "hermit-abi 0.3.3", "libc", "windows-sys 0.48.0", ] @@ -4088,7 +4104,7 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b58db92f96b720de98181bbbe63c831e87005ab460c1bf306eb2622b4707997f" dependencies = [ - "socket2 0.5.3", + "socket2 0.5.4", "widestring", "windows-sys 0.48.0", "winreg", @@ -4106,8 +4122,8 @@ version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b" dependencies = [ - "hermit-abi 0.3.2", - "rustix 0.38.8", + "hermit-abi 0.3.3", + "rustix 0.38.14", "windows-sys 0.48.0", ] @@ -4120,6 +4136,15 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" +dependencies = [ + "either", +] + [[package]] name = "itoa" version = "1.0.9" @@ -4159,7 +4184,7 @@ dependencies = [ "cfg-if", "ecdsa 0.14.8", "elliptic-curve 0.12.3", - "sha2 0.10.7", + "sha2 0.10.8", "sha3", ] @@ -4173,7 +4198,7 @@ dependencies = [ "ecdsa 0.16.8", "elliptic-curve 0.13.5", "once_cell", - "sha2 0.10.7", + "sha2 0.10.8", "signature 2.1.0", ] @@ -4200,9 +4225,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "libc" -version = "0.2.147" +version = "0.2.148" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3" +checksum = "9cdc71e17332e86d2e1d38c1f99edcb6288ee11b815fb1a4b049eaa2114d369b" [[package]] name = "libflate" @@ -4300,7 +4325,7 @@ dependencies = [ "rand 0.8.5", "rw-stream-sink", "sec1 0.3.0", - "sha2 0.10.7", + "sha2 0.10.8", "smallvec", "thiserror", "unsigned-varint", @@ -4373,7 +4398,7 @@ dependencies = [ "prost-codec", "rand 0.8.5", "regex", - "sha2 0.10.7", + "sha2 0.10.8", "smallvec", "thiserror", "unsigned-varint", @@ -4414,7 +4439,7 @@ dependencies = [ "multihash 0.17.0", "quick-protobuf", "rand 0.8.5", - "sha2 0.10.7", + "sha2 0.10.8", "thiserror", "zeroize", ] @@ -4439,7 +4464,7 @@ dependencies = [ "prost", "prost-build", "rand 0.8.5", - "sha2 0.10.7", + "sha2 0.10.8", "smallvec", "thiserror", "uint", @@ -4514,7 +4539,7 @@ dependencies = [ "prost", "prost-build", "rand 0.8.5", - "sha2 0.10.7", + "sha2 0.10.8", "snow", "static_assertions", "thiserror", @@ -4537,7 +4562,7 @@ dependencies = [ "once_cell", "quick-protobuf", "rand 0.8.5", - "sha2 0.10.7", + "sha2 0.10.8", "snow", "static_assertions", "thiserror", @@ -4562,7 +4587,7 @@ dependencies = [ "parking_lot 0.12.1", "quinn-proto", "rand 0.8.5", - "rustls 0.20.8", + "rustls 0.20.9", "thiserror", "tokio", ] @@ -4646,9 +4671,9 @@ dependencies = [ "libp2p-identity", "rcgen 0.10.0", "ring", - "rustls 0.20.8", + "rustls 0.20.9", "thiserror", - "webpki 0.22.0", + "webpki 0.22.1", "x509-parser 0.14.0", "yasna", ] @@ -4787,7 +4812,7 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6d8de370f98a6cb8a4606618e53e802f93b094ddec0f96988eaec2c27e6e9ce7" dependencies = [ - "clap 4.3.24", + "clap 4.4.5", "termcolor", "threadpool", ] @@ -4817,9 +4842,9 @@ checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" [[package]] name = "linux-raw-sys" -version = "0.4.5" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57bcfdad1b858c2db7c38303a6d2ad4dfaf5eb53dfeb0910128b2c26d6158503" +checksum = "1a9bad9f94746442c783ca431b22403b519cd7fbeed0533fdd6328b2f2212128" [[package]] name = "lock_api" @@ -4894,18 +4919,19 @@ checksum = "73cbba799671b762df5a175adf59ce145165747bb891505c43d09aefbbf38beb" [[package]] name = "md-5" -version = "0.10.5" +version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6365506850d44bff6e2fbcb5176cf63650e48bd45ef2fe2665ae1570e0f4b9ca" +checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf" dependencies = [ + "cfg-if", "digest 0.10.7", ] [[package]] name = "memchr" -version = "2.5.0" +version = "2.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" +checksum = "8f232d6ef707e1956a43342693d2a31e72989554d58299d7a88738cc95b0d35c" [[package]] name = "memmap2" @@ -5068,7 +5094,7 @@ dependencies = [ "core2", "digest 0.10.7", "multihash-derive", - "sha2 0.10.7", + "sha2 0.10.8", "unsigned-varint", ] @@ -5081,7 +5107,7 @@ dependencies = [ "core2", "digest 0.10.7", "multihash-derive", - "sha2 0.10.7", + "sha2 0.10.8", "unsigned-varint", ] @@ -5209,14 +5235,24 @@ dependencies = [ [[package]] name = "nix" -version = "0.26.2" +version = "0.26.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfdda3d196821d6af13126e40375cdf7da646a96114af134d5f417a9a1dc8e1a" +checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b" dependencies = [ "bitflags 1.3.2", "cfg-if", "libc", - "static_assertions", +] + +[[package]] +name = "nix" +version = "0.27.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053" +dependencies = [ + "bitflags 2.4.0", + "cfg-if", + "libc", ] [[package]] @@ -5288,36 +5324,15 @@ version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" dependencies = [ - "hermit-abi 0.3.2", + "hermit-abi 0.3.3", "libc", ] -[[package]] -name = "num_enum" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70bf6736f74634d299d00086f02986875b3c2d924781a6a2cb6c201e73da0ceb" -dependencies = [ - "num_enum_derive", -] - -[[package]] -name = "num_enum_derive" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56ea360eafe1022f7cc56cd7b869ed57330fb2453d0c7831d99b74c65d2f5597" -dependencies = [ - "proc-macro-crate", - "proc-macro2", - "quote", - "syn 2.0.29", -] - [[package]] name = "object" -version = "0.32.0" +version = "0.32.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77ac5bbd07aea88c60a577a1ce218075ffd59208b2d7ca97adf9bfc5aeb21ebe" +checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0" dependencies = [ "memchr", ] @@ -5415,7 +5430,7 @@ checksum = "51f44edd08f51e2ade572f141051021c5af22677e42b7dd28a88155151c33594" dependencies = [ "ecdsa 0.14.8", "elliptic-curve 0.12.3", - "sha2 0.10.7", + "sha2 0.10.8", ] [[package]] @@ -5427,7 +5442,7 @@ dependencies = [ "ecdsa 0.16.8", "elliptic-curve 0.13.5", "primeorder", - "sha2 0.10.7", + "sha2 0.10.8", ] [[package]] @@ -5438,14 +5453,14 @@ checksum = "dfc8c5bf642dde52bb9e87c0ecd8ca5a76faac2eeed98dedb7c717997e1080aa" dependencies = [ "ecdsa 0.14.8", "elliptic-curve 0.12.3", - "sha2 0.10.7", + "sha2 0.10.8", ] [[package]] name = "parity-scale-codec" -version = "3.6.4" +version = "3.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd8e946cc0cc711189c0b0249fb8b599cbeeab9784d83c415719368bb8d4ac64" +checksum = "0dec8a8073036902368c2cdc0387e85ff9a37054d7e7c98e592145e0c92cd4fb" dependencies = [ "arrayvec", "bitvec 1.0.1", @@ -5457,9 +5472,9 @@ dependencies = [ [[package]] name = "parity-scale-codec-derive" -version = "3.6.4" +version = "3.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a296c3079b5fefbc499e1de58dc26c09b1b9a5952d26694ee89f04a43ebbb3e" +checksum = "312270ee71e1cd70289dacf597cab7b207aa107d2f28191c2ae45b2ece18a260" dependencies = [ "proc-macro-crate", "proc-macro2", @@ -5469,9 +5484,9 @@ dependencies = [ [[package]] name = "parking" -version = "2.1.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14f2252c834a40ed9bb5422029649578e63aa341ac401f74e719dd1afda8394e" +checksum = "e52c774a4c39359c1d1c52e43f73dd91a75a614652c825408eec30c95a9b2067" [[package]] name = "parking_lot" @@ -5547,7 +5562,7 @@ dependencies = [ "digest 0.10.7", "hmac 0.12.1", "password-hash", - "sha2 0.10.7", + "sha2 0.10.8", ] [[package]] @@ -5592,10 +5607,11 @@ checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" [[package]] name = "pest" -version = "2.7.2" +version = "2.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1acb4a4365a13f749a93f1a094a7805e5cfa0955373a9de860d962eaa3a5fe5a" +checksum = "c022f1e7b65d6a24c0dbbd5fb344c66881bc01f3e5ae74a1c8100f2f985d98a4" dependencies = [ + "memchr", "thiserror", "ucd-trie", ] @@ -5637,7 +5653,7 @@ checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.37", ] [[package]] @@ -5648,9 +5664,9 @@ checksum = "257b64915a082f7811703966789728173279bdebb956b143dbcd23f6f970a777" [[package]] name = "pin-project-lite" -version = "0.2.12" +version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12cc1b0bf1727a77a54b6654e7b5f1af8604923edc8b81885f8ec92f9e3f0a05" +checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" [[package]] name = "pin-utils" @@ -5686,9 +5702,9 @@ checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964" [[package]] name = "platforms" -version = "3.0.2" +version = "3.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3d7ddaed09e0eb771a79ab0fd64609ba0afb0a8366421957936ad14cbd13630" +checksum = "4503fa043bf02cee09a9582e9554b4c6403b2ef55e4612e96561d294419429f8" [[package]] name = "plotters" @@ -5730,7 +5746,7 @@ dependencies = [ "concurrent-queue", "libc", "log", - "pin-project-lite 0.2.12", + "pin-project-lite 0.2.13", "windows-sys 0.48.0", ] @@ -5771,11 +5787,12 @@ dependencies = [ [[package]] name = "postcard" -version = "1.0.6" +version = "1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9ee729232311d3cd113749948b689627618133b1c5012b77342c1950b25eaeb" +checksum = "a55c51ee6c0db07e68448e336cf8ea4131a620edefebf9893e759b2d793420f8" dependencies = [ "cobs", + "embedded-io", "heapless", "serde", ] @@ -5791,7 +5808,7 @@ dependencies = [ "findshlibs", "libc", "log", - "nix 0.26.2", + "nix 0.26.4", "once_cell", "parking_lot 0.12.1", "smallvec", @@ -5814,7 +5831,7 @@ checksum = "59230a63c37f3e18569bdb90e4a89cbf5bf8b06fea0b84e65ea10cc4df47addd" dependencies = [ "difflib", "float-cmp", - "itertools", + "itertools 0.10.5", "normalize-line-endings", "predicates-core", "regex", @@ -5822,13 +5839,13 @@ dependencies = [ [[package]] name = "predicates" -version = "3.0.3" +version = "3.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09963355b9f467184c04017ced4a2ba2d75cbcb4e7462690d388233253d4b1a9" +checksum = "6dfc28575c2e3f19cb3c73b93af36460ae898d426eba6fc15b9bd2a5220758a0" dependencies = [ "anstyle", "difflib", - "itertools", + "itertools 0.11.0", "predicates-core", ] @@ -5860,12 +5877,12 @@ dependencies = [ [[package]] name = "prettyplease" -version = "0.2.12" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c64d9ba0963cdcea2e1b2230fbae2bab30eb25a174be395c41e764bfb65dd62" +checksum = "ae005bd773ab59b4725093fd7df83fd7892f7d8eafb48dbd7de6e024e4215f9d" dependencies = [ "proc-macro2", - "syn 2.0.29", + "syn 2.0.37", ] [[package]] @@ -5927,9 +5944,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.66" +version = "1.0.67" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9" +checksum = "3d433d9f1a3e8c1263d9456598b16fec66f4acc9a74dacffd35c7bb09b3a1328" dependencies = [ "unicode-ident", ] @@ -5966,7 +5983,7 @@ checksum = "440f724eba9f6996b75d63681b0a92b06947f1457076d503a4d2e2c8f56442b8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.37", ] [[package]] @@ -6018,7 +6035,7 @@ checksum = "119533552c9a7ffacc21e099c24a0ac8bb19c2a2a3f363de84cd9b844feab270" dependencies = [ "bytes", "heck", - "itertools", + "itertools 0.10.5", "lazy_static", "log", "multimap", @@ -6052,7 +6069,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5d2d8d10f3c6ded6da8b05b5fb3b8a5082514344d56c9f871412d29b4e075b4" dependencies = [ "anyhow", - "itertools", + "itertools 0.10.5", "proc-macro2", "quote", "syn 1.0.109", @@ -6154,20 +6171,20 @@ dependencies = [ [[package]] name = "quinn-proto" -version = "0.9.4" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f31999cfc7927c4e212e60fd50934ab40e8e8bfd2d493d6095d2d306bc0764d9" +checksum = "c956be1b23f4261676aed05a0046e204e8a6836e50203902683a718af0797989" dependencies = [ "bytes", "rand 0.8.5", "ring", "rustc-hash", - "rustls 0.20.8", + "rustls 0.20.9", "slab", "thiserror", "tinyvec", "tracing", - "webpki 0.22.0", + "webpki 0.22.1", ] [[package]] @@ -6273,9 +6290,9 @@ dependencies = [ [[package]] name = "rayon" -version = "1.7.0" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d2df5196e37bcc87abebc0053e20787d73847bb33134a69841207dd0a47f03b" +checksum = "9c27db03db7734835b3f53954b534c91069375ce6ccaa2e065441e07d9b6cdb1" dependencies = [ "either", "rayon-core", @@ -6283,14 +6300,12 @@ dependencies = [ [[package]] name = "rayon-core" -version = "1.11.0" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b8f95bd6966f5c87776639160a66bd8ab9895d9d4ab01ddba9fc60661aebe8d" +checksum = "5ce3fb6ad83f861aac485e76e1985cd109d9a3713802152be56c3b1f0e0658ed" dependencies = [ - "crossbeam-channel", "crossbeam-deque", "crossbeam-utils", - "num_cpus", ] [[package]] @@ -6349,14 +6364,14 @@ dependencies = [ [[package]] name = "regex" -version = "1.9.3" +version = "1.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81bc1d4caf89fac26a70747fe603c130093b53c773888797a6329091246d651a" +checksum = "697061221ea1b4a94a624f67d0ae2bfe4e22b8a17b6a192afb11046542cc8c47" dependencies = [ "aho-corasick", "memchr", - "regex-automata 0.3.6", - "regex-syntax 0.7.4", + "regex-automata 0.3.8", + "regex-syntax 0.7.5", ] [[package]] @@ -6370,13 +6385,13 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.3.6" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fed1ceff11a1dddaee50c9dc8e4938bd106e9d89ae372f192311e7da498e3b69" +checksum = "c2f401f4955220693b56f8ec66ee9c78abffd8d1c4f23dc41a23839eb88f0795" dependencies = [ "aho-corasick", "memchr", - "regex-syntax 0.7.4", + "regex-syntax 0.7.5", ] [[package]] @@ -6387,9 +6402,9 @@ checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" [[package]] name = "regex-syntax" -version = "0.7.4" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5ea92a5b6195c6ef2a0295ea818b312502c6fc94dde986c5553242e18fd4ce2" +checksum = "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da" [[package]] name = "reqwest" @@ -6397,7 +6412,7 @@ version = "0.11.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3e9ad3fe7488d7e34558a2033d45a0c90b72d97b4f80705666fea71472e2e6a1" dependencies = [ - "base64 0.21.2", + "base64 0.21.4", "bytes", "cookie", "cookie_store", @@ -6415,8 +6430,8 @@ dependencies = [ "mime", "once_cell", "percent-encoding", - "pin-project-lite 0.2.12", - "rustls 0.21.6", + "pin-project-lite 0.2.13", + "rustls 0.21.7", "rustls-pemfile", "serde", "serde_json", @@ -6641,14 +6656,14 @@ dependencies = [ [[package]] name = "rustix" -version = "0.38.8" +version = "0.38.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19ed4fa021d81c8392ce04db050a3da9a60299050b7ae1cf482d862b54a7218f" +checksum = "747c788e9ce8e92b12cd485c49ddf90723550b654b32508f979b71a7b1ecda4f" dependencies = [ "bitflags 2.4.0", "errno", "libc", - "linux-raw-sys 0.4.5", + "linux-raw-sys 0.4.7", "windows-sys 0.48.0", ] @@ -6667,25 +6682,25 @@ dependencies = [ [[package]] name = "rustls" -version = "0.20.8" +version = "0.20.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fff78fc74d175294f4e83b28343315ffcfb114b156f0185e9741cb5570f50e2f" +checksum = "1b80e3dec595989ea8510028f30c408a4630db12c9cbb8de34203b89d6577e99" dependencies = [ "log", "ring", "sct 0.7.0", - "webpki 0.22.0", + "webpki 0.22.1", ] [[package]] name = "rustls" -version = "0.21.6" +version = "0.21.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d1feddffcfcc0b33f5c6ce9a29e341e4cd59c3f78e7ee45f4a40c038b1d6cbb" +checksum = "cd8d6c9f025a446bc4d18ad9632e69aec8f287aa84499ee335599fabd20c3fd8" dependencies = [ "log", "ring", - "rustls-webpki 0.101.4", + "rustls-webpki 0.101.6", "sct 0.7.0", ] @@ -6719,14 +6734,14 @@ version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2d3987094b1d07b653b7dfdc3f70ce9a1da9c51ac18c1b06b662e4f9a0e9f4b2" dependencies = [ - "base64 0.21.2", + "base64 0.21.4", ] [[package]] name = "rustls-webpki" -version = "0.100.2" +version = "0.100.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e98ff011474fa39949b7e5c0428f9b4937eda7da7848bbb947786b7be0b27dab" +checksum = "5f6a5fc258f1c1276dfe3016516945546e2d5383911efc0fc4f1cdc5df3a4ae3" dependencies = [ "ring", "untrusted", @@ -6734,9 +6749,9 @@ dependencies = [ [[package]] name = "rustls-webpki" -version = "0.101.4" +version = "0.101.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d93931baf2d282fff8d3a532bbfd7653f734643161b87e3e01e59a04439bf0d" +checksum = "3c7d5dece342910d9ba34d259310cae3e0154b873b35408b787b59bce53d34fe" dependencies = [ "ring", "untrusted", @@ -6869,7 +6884,7 @@ dependencies = [ "hmac 0.12.1", "pbkdf2 0.11.0", "salsa20", - "sha2 0.10.7", + "sha2 0.10.8", ] [[package]] @@ -6985,9 +7000,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.18" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0293b4b29daaf487284529cc2f5675b8e57c61f70167ba415a463651fd6a918" +checksum = "ad977052201c6de01a8ef2aa3378c4bd23217a056337d1d6da40468d267a4fb0" dependencies = [ "serde", ] @@ -7000,9 +7015,9 @@ checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73" [[package]] name = "serde" -version = "1.0.186" +version = "1.0.188" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f5db24220c009de9bd45e69fb2938f4b6d2df856aa9304ce377b3180f83b7c1" +checksum = "cf9e0fcba69a370eed61bcf2b728575f726b50b55cba78064753d708ddc7549e" dependencies = [ "serde_derive", ] @@ -7019,20 +7034,20 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.186" +version = "1.0.188" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ad697f7e0b65af4983a4ce8f56ed5b357e8d3c36651bf6a7e13639c17b8e670" +checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.37", ] [[package]] name = "serde_json" -version = "1.0.105" +version = "1.0.107" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "693151e1ac27563d6dbcec9dee9fbd5da8539b20fa14ad3752b2e6d363ace360" +checksum = "6b420ce6e3d8bd882e9b243c6eed35dbc9a6110c9769e74b584e0d68d1f20c65" dependencies = [ "itoa", "ryu", @@ -7112,9 +7127,9 @@ dependencies = [ [[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", "cpufeatures", @@ -7148,9 +7163,9 @@ dependencies = [ [[package]] name = "sha2" -version = "0.10.7" +version = "0.10.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "479fb9d862239e610720565ca91403019f2f00410f1864c5aa7479b950a76ed8" +checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" dependencies = [ "cfg-if", "cpufeatures", @@ -7178,9 +7193,9 @@ dependencies = [ [[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-registry" @@ -7228,9 +7243,9 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.11.0" +version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9" +checksum = "942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a" [[package]] name = "snow" @@ -7241,11 +7256,11 @@ dependencies = [ "aes-gcm 0.9.4", "blake2", "chacha20poly1305", - "curve25519-dalek 4.0.0", + "curve25519-dalek 4.1.1", "rand_core 0.6.4", "ring", "rustc_version", - "sha2 0.10.7", + "sha2 0.10.8", "subtle", ] @@ -7261,9 +7276,9 @@ dependencies = [ [[package]] name = "socket2" -version = "0.5.3" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2538b18701741680e0322a2302176d3253a35388e2e62f172f64f4f16605f877" +checksum = "4031e820eb552adee9295814c0ced9e5cf38ddf1e8b7d566d6de8e2538ea989e" dependencies = [ "libc", "windows-sys 0.48.0", @@ -7347,7 +7362,7 @@ dependencies = [ "proc-macro2", "quote", "structmeta-derive", - "syn 2.0.29", + "syn 2.0.37", ] [[package]] @@ -7358,7 +7373,7 @@ checksum = "a60bcaff7397072dca0017d1db428e30d5002e00b6847703e2e42005c95fbe00" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.37", ] [[package]] @@ -7419,9 +7434,9 @@ checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601" [[package]] name = "symbolic-common" -version = "12.4.0" +version = "12.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e0e9bc48b3852f36a84f8d0da275d50cb3c2b88b59b9ec35fdd8b7fa239e37d" +checksum = "fac08504d60cf5bdffeb8a6a028f1a4868a5da1098bb19eb46239440039163fb" dependencies = [ "debugid", "memmap2", @@ -7431,9 +7446,9 @@ dependencies = [ [[package]] name = "symbolic-demangle" -version = "12.4.0" +version = "12.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "691e53bdc0702aba3a5abc2cffff89346fcbd4050748883c7e2f714b33a69045" +checksum = "8b212728d4f6c527c1d50d6169e715f6e02d849811843c13e366d8ca6d0cf5c4" dependencies = [ "cpp_demangle", "rustc-demangle", @@ -7453,9 +7468,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.29" +version = "2.0.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c324c494eba9d92503e6f1ef2e6df781e78f6a7705a0202d9801b198807d518a" +checksum = "7303ef2c05cd654186cb250d29049a24840ca25d2747c25c0381c8d9e2f582e8" dependencies = [ "proc-macro2", "quote", @@ -7488,7 +7503,7 @@ checksum = "285ba80e733fac80aa4270fbcdf83772a79b80aa35c97075320abfee4a915b06" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.37", "unicode-xid", ] @@ -7535,17 +7550,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cb94d2f3cc536af71caac6b6fcebf65860b347e7ce0cc9ebe8f70d3e521054ef" dependencies = [ "cfg-if", - "fastrand 2.0.0", + "fastrand 2.0.1", "redox_syscall 0.3.5", - "rustix 0.38.8", + "rustix 0.38.14", "windows-sys 0.48.0", ] [[package]] name = "termcolor" -version = "1.2.0" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6" +checksum = "6093bad37da69aab9d123a8091e4be0aa4a03e4d601ec641c327398315f62b64" dependencies = [ "winapi-util", ] @@ -7587,7 +7602,7 @@ dependencies = [ "proc-macro2", "quote", "structmeta", - "syn 2.0.29", + "syn 2.0.37", ] [[package]] @@ -7598,22 +7613,22 @@ checksum = "222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d" [[package]] name = "thiserror" -version = "1.0.47" +version = "1.0.49" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97a802ec30afc17eee47b2855fc72e0c4cd62be9b4efe6591edde0ec5bd68d8f" +checksum = "1177e8c6d7ede7afde3585fd2513e611227efd6481bd78d2e82ba1ce16557ed4" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.47" +version = "1.0.49" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bb623b56e39ab7dcd4b1b98bb6c8f8d907ed255b18de254088016b27a8ee19b" +checksum = "10712f02019e9288794769fba95cd6847df9874d49d871d062172f9dd41bc4cc" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.37", ] [[package]] @@ -7657,9 +7672,9 @@ dependencies = [ [[package]] name = "time" -version = "0.3.27" +version = "0.3.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bb39ee79a6d8de55f48f2293a830e040392f1c5f16e336bdd1788cd0aadce07" +checksum = "426f806f4089c493dcac0d24c29c01e2c38baf8e30f1b716ee37e83d200b18fe" dependencies = [ "deranged", "itoa", @@ -7670,15 +7685,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.13" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "733d258752e9303d392b94b75230d07b0b9c489350c69b851fc6c065fde3e8f9" +checksum = "4ad70d68dba9e1f8aceda7aa6711965dfec1cac869f311a51bd08b3a2ccbce20" dependencies = [ "time-core", ] @@ -7729,9 +7744,9 @@ dependencies = [ "mio", "num_cpus", "parking_lot 0.12.1", - "pin-project-lite 0.2.12", + "pin-project-lite 0.2.13", "signal-hook-registry", - "socket2 0.5.3", + "socket2 0.5.4", "tokio-macros", "windows-sys 0.48.0", ] @@ -7742,7 +7757,7 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "30b74022ada614a1b4834de765f9bb43877f910cc8ce4be40e89042c9223a8bf" dependencies = [ - "pin-project-lite 0.2.12", + "pin-project-lite 0.2.13", "tokio", ] @@ -7754,7 +7769,7 @@ checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.37", ] [[package]] @@ -7784,9 +7799,9 @@ version = "0.23.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c43ee83903113e03984cb9e5cebe6c04a5116269e900e3ddba8f068a62adda59" dependencies = [ - "rustls 0.20.8", + "rustls 0.20.9", "tokio", - "webpki 0.22.0", + "webpki 0.22.1", ] [[package]] @@ -7795,7 +7810,7 @@ version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" dependencies = [ - "rustls 0.21.6", + "rustls 0.21.7", "tokio", ] @@ -7806,7 +7821,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842" dependencies = [ "futures-core", - "pin-project-lite 0.2.12", + "pin-project-lite 0.2.13", "tokio", "tokio-util", ] @@ -7819,25 +7834,25 @@ checksum = "f714dd15bead90401d77e04243611caec13726c2408afd5b31901dfcdcb3b181" dependencies = [ "futures-util", "log", - "rustls 0.20.8", + "rustls 0.20.9", "tokio", "tokio-rustls 0.23.4", "tungstenite", - "webpki 0.22.0", + "webpki 0.22.1", "webpki-roots 0.22.6", ] [[package]] name = "tokio-util" -version = "0.7.8" +version = "0.7.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "806fe8c2c87eccc8b3267cbae29ed3ab2d0bd37fca70ab622e46aaa9375ddb7d" +checksum = "1d68074620f57a0b21594d9735eb2e98ab38b17f80d3fcb189fca266771ca60d" dependencies = [ "bytes", "futures-core", "futures-io", "futures-sink", - "pin-project-lite 0.2.12", + "pin-project-lite 0.2.13", "tokio", "tracing", ] @@ -7860,7 +7875,7 @@ dependencies = [ "futures-core", "futures-util", "pin-project", - "pin-project-lite 0.2.12", + "pin-project-lite 0.2.13", "tokio", "tower-layer", "tower-service", @@ -7880,7 +7895,7 @@ dependencies = [ "http", "http-body", "http-range-header", - "pin-project-lite 0.2.12", + "pin-project-lite 0.2.13", "tower", "tower-layer", "tower-service", @@ -7907,7 +7922,7 @@ checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" dependencies = [ "cfg-if", "log", - "pin-project-lite 0.2.12", + "pin-project-lite 0.2.13", "tracing-attributes", "tracing-core", ] @@ -7931,7 +7946,7 @@ checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.37", ] [[package]] @@ -8063,12 +8078,12 @@ dependencies = [ "httparse", "log", "rand 0.8.5", - "rustls 0.20.8", + "rustls 0.20.9", "sha-1 0.10.1", "thiserror", "url", "utf-8", - "webpki 0.22.0", + "webpki 0.22.1", ] [[package]] @@ -8092,9 +8107,9 @@ dependencies = [ [[package]] name = "typenum" -version = "1.16.0" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba" +checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" [[package]] name = "ucd-trie" @@ -8128,9 +8143,9 @@ checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460" [[package]] name = "unicode-ident" -version = "1.0.11" +version = "1.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c" +checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" [[package]] name = "unicode-normalization" @@ -8190,9 +8205,9 @@ checksum = "f28467d3e1d3c6586d8f25fa243f544f5800fec42d97032474e17222c2b75cfa" [[package]] name = "unsigned-varint" -version = "0.7.1" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d86a8dc7f45e4c1b0d30e43038c38f274e77af056aa5f74b93c2cf9eb3c1c836" +checksum = "6889a77d49f1f013504cec6bf97a2c730394adedaeb1deb5ea08949a50541105" dependencies = [ "asynchronous-codec", "bytes", @@ -8208,9 +8223,9 @@ checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" [[package]] name = "url" -version = "2.4.0" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50bff7831e19200a85b17131d085c25d7811bc4e186efdaf54bbd132994a88cb" +checksum = "143b538f18257fac9cad154828a57c6bf5157e1aa604d4816b5995bf6de87ae5" dependencies = [ "form_urlencoded", "idna 0.4.0", @@ -8292,15 +8307,15 @@ dependencies = [ [[package]] name = "waker-fn" -version = "1.1.0" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca" +checksum = "f3c4517f54858c779bbcbf228f4fca63d121bf85fbecb2dc578cdf4a39395690" [[package]] name = "walkdir" -version = "2.3.3" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698" +checksum = "d71d857dc86794ca4c280d616f7da00d2dbfd8cd788846559a6813e6aa4b54ee" dependencies = [ "same-file", "winapi-util", @@ -8348,7 +8363,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.37", "wasm-bindgen-shared", ] @@ -8382,7 +8397,7 @@ checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.37", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -8430,9 +8445,9 @@ dependencies = [ [[package]] name = "webpki" -version = "0.22.0" +version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f095d78192e208183081cc07bc5515ef55216397af48b873e5edcd72637fa1bd" +checksum = "f0e74f82d49d545ad128049b7e88f6576df2da6b02e9ce565c6f533be576957e" dependencies = [ "ring", "untrusted", @@ -8444,7 +8459,7 @@ version = "0.22.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b6c71e40d7d2c34a5106301fb632274ca37242cd0c9d3e64dbece371a40a2d87" dependencies = [ - "webpki 0.22.0", + "webpki 0.22.1", ] [[package]] @@ -8453,7 +8468,7 @@ version = "0.23.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b03058f88386e5ff5310d9111d53f48b17d732b401aeb83a8d5190f2ac459338" dependencies = [ - "rustls-webpki 0.100.2", + "rustls-webpki 0.100.3", ] [[package]] @@ -8485,7 +8500,7 @@ dependencies = [ "sdp", "serde", "serde_json", - "sha2 0.10.7", + "sha2 0.10.8", "stun", "thiserror", "time", @@ -8525,7 +8540,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c4a00f4242f2db33307347bd5be53263c52a0331c96c14292118c9a6bb48d267" dependencies = [ "aes 0.6.0", - "aes-gcm 0.10.2", + "aes-gcm 0.10.3", "async-trait", "bincode", "block-modes", @@ -8547,7 +8562,7 @@ dependencies = [ "sec1 0.3.0", "serde", "sha1", - "sha2 0.10.7", + "sha2 0.10.8", "signature 1.6.4", "subtle", "thiserror", @@ -8672,13 +8687,14 @@ dependencies = [ [[package]] name = "which" -version = "4.4.0" +version = "4.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2441c784c52b289a054b7201fc93253e288f094e2f4be9058343127c4226a269" +checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" dependencies = [ "either", - "libc", + "home", "once_cell", + "rustix 0.38.14", ] [[package]] @@ -8705,9 +8721,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", ] @@ -8948,7 +8964,7 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fb66477291e7e8d2b0ff1bcb900bf29489a9692816d79874bea351e7a8b6de96" dependencies = [ - "curve25519-dalek 4.0.0", + "curve25519-dalek 4.1.1", "rand_core 0.6.4", "serde", "zeroize", @@ -8995,7 +9011,7 @@ dependencies = [ name = "xtask" version = "0.0.0" dependencies = [ - "clap 4.3.24", + "clap 4.4.5", "fuel-core", ] @@ -9048,5 +9064,5 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.29", + "syn 2.0.37", ] diff --git a/Cargo.toml b/Cargo.toml index 09ab1ab6..656d6318 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -75,7 +75,7 @@ fuel-core-tests = { version = "0.0.0", path = "./tests" } fuel-core-xtask = { version = "0.0.0", path = "./xtask" } # Fuel dependencies -fuel-vm-private = { version = "0.37.0", package = "fuel-vm" } +fuel-vm-private = { version = "0.38.0", package = "fuel-vm" } # Common dependencies anyhow = "1.0" @@ -112,5 +112,3 @@ itertools = "0.10" insta = "1.8" tempfile = "3.4" tikv-jemallocator = "0.5" - - diff --git a/benches/benches/block_target_gas.rs b/benches/benches/block_target_gas.rs index a186af98..0a378230 100644 --- a/benches/benches/block_target_gas.rs +++ b/benches/benches/block_target_gas.rs @@ -75,7 +75,7 @@ fn run( .gas_limit(TARGET_BLOCK_GAS_LIMIT - BASE) .gas_price(1) .add_unsigned_coin_input( - rng.gen(), + SecretKey::random(&mut rng), rng.gen(), u64::MAX, AssetId::BASE, @@ -181,7 +181,12 @@ fn block_target_gas(c: &mut Criterion) { op::jmpb(RegId::ZERO, 0), ] .to_vec(), - vec![], + ecr1_signature + .as_ref() + .iter() + .chain(message.as_ref()) + .copied() + .collect(), ); let ed19_keypair = @@ -207,11 +212,19 @@ fn block_target_gas(c: &mut Criterion) { op::movi(0x10, ed25519_dalek::PUBLIC_KEY_LENGTH.try_into().unwrap()), op::aloc(0x10), op::move_(0x11, RegId::HP), - op::ed19(0x10, 0x11, 0x12), + op::ed19(0x20, 0x21, 0x22), op::jmpb(RegId::ZERO, 0), ] .to_vec(), - vec![], + ed19_keypair + .public + .as_ref() + .as_ref() + .iter() + .chain(ed19_signature.as_ref()) + .chain(message.as_ref()) + .copied() + .collect(), ); // The test is supper long because we don't use `DependentCost` for k256 opcode diff --git a/benches/src/lib.rs b/benches/src/lib.rs index 550cfe84..63af7614 100644 --- a/benches/src/lib.rs +++ b/benches/src/lib.rs @@ -423,7 +423,7 @@ impl TryFrom for VmBenchPrepared { let PrepareCall { ra, rb, rc, rd } = p; vm.prepare_call(ra, rb, rc, rd) - .map_err(|e| io::Error::new(io::ErrorKind::Other, e))?; + .map_err(|e| io::Error::new(io::ErrorKind::Other, e.to_string()))?; for instruction in post_call { vm.instruction(instruction).unwrap(); } diff --git a/bin/e2e-test-client/src/test_context.rs b/bin/e2e-test-client/src/test_context.rs index a2c14e8d..a8241115 100644 --- a/bin/e2e-test-client/src/test_context.rs +++ b/bin/e2e-test-client/src/test_context.rs @@ -32,7 +32,7 @@ use fuel_core_types::{ UtxoId, }, fuel_types::{ - canonical::SerializedSize, + canonical::Serialize, Address, AssetId, }, diff --git a/crates/client/src/client.rs b/crates/client/src/client.rs index 682314e1..aa6c2123 100644 --- a/crates/client/src/client.rs +++ b/crates/client/src/client.rs @@ -46,7 +46,7 @@ use fuel_core_types::{ }, fuel_types, fuel_types::{ - canonical::SerializedSize, + canonical::Serialize, BlockHeight, Nonce, }, diff --git a/crates/client/src/client/schema/tx.rs b/crates/client/src/client/schema/tx.rs index 35d14d44..64776d2a 100644 --- a/crates/client/src/client/schema/tx.rs +++ b/crates/client/src/client/schema/tx.rs @@ -319,7 +319,7 @@ pub struct AllReceipts { pub mod tests { use super::*; use crate::client::schema::Bytes; - use fuel_core_types::fuel_types::canonical::SerializedSize; + use fuel_core_types::fuel_types::canonical::Serialize; #[test] fn transparent_transaction_by_id_query_gql_output() { diff --git a/crates/database/src/lib.rs b/crates/database/src/lib.rs index 3d9bfffa..2cf3ce23 100644 --- a/crates/database/src/lib.rs +++ b/crates/database/src/lib.rs @@ -61,7 +61,7 @@ impl From for Error { impl From for ExecutorError { fn from(e: Error) -> Self { - ExecutorError::StorageError(Box::new(StorageError::from(e))) + ExecutorError::StorageError(anyhow::anyhow!(StorageError::from(e))) } } diff --git a/crates/fuel-core/src/database/balances.rs b/crates/fuel-core/src/database/balances.rs index 7e920409..8832e768 100644 --- a/crates/fuel-core/src/database/balances.rs +++ b/crates/fuel-core/src/database/balances.rs @@ -83,13 +83,13 @@ impl StorageMutate for Database { let storage = self.borrow_mut(); let mut tree: MerkleTree = MerkleTree::load(storage, &root) - .map_err(|err| StorageError::Other(err.into()))?; + .map_err(|err| StorageError::Other(anyhow::anyhow!("{err:?}")))?; let asset_id = *key.asset_id().deref(); // Update the contact's key-value dataset. The key is the asset id and the // value the Word tree.update(MerkleTreeKey::new(asset_id), value.to_be_bytes().as_slice()) - .map_err(|err| StorageError::Other(err.into()))?; + .map_err(|err| StorageError::Other(anyhow::anyhow!("{err:?}")))?; // Generate new metadata for the updated tree let root = tree.root(); @@ -119,13 +119,13 @@ impl StorageMutate for Database { let storage = self.borrow_mut(); let mut tree: MerkleTree = MerkleTree::load(storage, &root) - .map_err(|err| StorageError::Other(err.into()))?; + .map_err(|err| StorageError::Other(anyhow::anyhow!("{err:?}")))?; let asset_id = *key.asset_id().deref(); // Update the contract's key-value dataset. The key is the asset id and // the value is the Word tree.delete(MerkleTreeKey::new(asset_id)) - .map_err(|err| StorageError::Other(err.into()))?; + .map_err(|err| StorageError::Other(anyhow::anyhow!("{err:?}")))?; let root = tree.root(); if root == *sparse::empty_sum() { diff --git a/crates/fuel-core/src/database/block.rs b/crates/fuel-core/src/database/block.rs index 9ae0ea1c..74198364 100644 --- a/crates/fuel-core/src/database/block.rs +++ b/crates/fuel-core/src/database/block.rs @@ -90,7 +90,7 @@ impl StorageMutate for Database { let storage = self.borrow_mut(); let mut tree: MerkleTree = MerkleTree::load(storage, prev_metadata.version) - .map_err(|err| StorageError::Other(err.into()))?; + .map_err(|err| StorageError::Other(anyhow::anyhow!(err)))?; let data = key.as_slice(); tree.push(data)?; @@ -273,12 +273,12 @@ impl Database { let storage = self; let tree: MerkleTree = MerkleTree::load(storage, commit_merkle_metadata.version) - .map_err(|err| StorageError::Other(err.into()))?; + .map_err(|err| StorageError::Other(anyhow::anyhow!(err)))?; let proof_index = message_merkle_metadata.version - 1; let (_, proof_set) = tree .prove(proof_index) - .map_err(|err| StorageError::Other(err.into()))?; + .map_err(|err| StorageError::Other(anyhow::anyhow!(err)))?; Ok(MerkleProof { proof_set, diff --git a/crates/fuel-core/src/database/state.rs b/crates/fuel-core/src/database/state.rs index fd70357a..295a97c2 100644 --- a/crates/fuel-core/src/database/state.rs +++ b/crates/fuel-core/src/database/state.rs @@ -82,13 +82,13 @@ impl StorageMutate for Database { let storage = self.borrow_mut(); let mut tree: MerkleTree = MerkleTree::load(storage, &root) - .map_err(|err| StorageError::Other(err.into()))?; + .map_err(|err| StorageError::Other(anyhow::anyhow!("{err:?}")))?; let state_key = *key.state_key().deref(); // Update the contract's key-value dataset. The key is the state key and // the value is the 32 bytes tree.update(MerkleTreeKey::new(state_key), value.as_slice()) - .map_err(|err| StorageError::Other(err.into()))?; + .map_err(|err| StorageError::Other(anyhow::anyhow!("{err:?}")))?; // Generate new metadata for the updated tree let root = tree.root(); @@ -118,13 +118,13 @@ impl StorageMutate for Database { let storage = self.borrow_mut(); let mut tree: MerkleTree = MerkleTree::load(storage, &root) - .map_err(|err| StorageError::Other(err.into()))?; + .map_err(|err| StorageError::Other(anyhow::anyhow!("{err:?}")))?; let state_key = *key.state_key().deref(); // Update the contract's key-value dataset. The key is the state key and // the value is the 32 bytes tree.delete(MerkleTreeKey::new(state_key)) - .map_err(|err| StorageError::Other(err.into()))?; + .map_err(|err| StorageError::Other(anyhow::anyhow!("{err:?}")))?; let root = tree.root(); if root == *sparse::empty_sum() { diff --git a/crates/fuel-core/src/executor.rs b/crates/fuel-core/src/executor.rs index 93fc3bba..75dd8119 100644 --- a/crates/fuel-core/src/executor.rs +++ b/crates/fuel-core/src/executor.rs @@ -79,7 +79,7 @@ use fuel_core_types::{ UtxoId, }, fuel_types::{ - canonical::SerializedSize, + canonical::Serialize, BlockHeight, MessageId, }, @@ -102,6 +102,7 @@ use fuel_core_types::{ state::StateTransition, Backtrace as FuelBacktrace, Interpreter, + InterpreterError, }, services::{ block_producer::Components, @@ -843,7 +844,7 @@ where let vm_result: StateTransition<_> = vm .transact(checked_tx.clone()) .map_err(|error| ExecutorError::VmExecution { - error, + error: InterpreterError::Storage(anyhow::anyhow!(error)), transaction_id: tx_id, })? .into(); @@ -2387,7 +2388,7 @@ mod tests { let gas_price = 1; let tx = TransactionBuilder::script(vec![], vec![]) .add_unsigned_coin_input( - rng.gen(), + SecretKey::random(&mut rng), rng.gen(), rng.gen(), rng.gen(), @@ -3692,7 +3693,13 @@ mod tests { /// Helper to build transactions and a message in it for some of the message tests fn make_tx_and_message(rng: &mut StdRng, da_height: u64) -> (Transaction, Message) { let tx = TransactionBuilder::script(vec![], vec![]) - .add_unsigned_message_input(rng.gen(), rng.gen(), rng.gen(), 1000, vec![]) + .add_unsigned_message_input( + SecretKey::random(rng), + rng.gen(), + rng.gen(), + 1000, + vec![], + ) .finalize(); let message = message_from_input(&tx.inputs()[0], da_height); @@ -3758,9 +3765,9 @@ mod tests { let tx = TransactionBuilder::script(vec![], vec![]) // Add `Input::MessageCoin` - .add_unsigned_message_input(rng.gen(), rng.gen(), rng.gen(), amount, vec![]) + .add_unsigned_message_input(SecretKey::random(&mut rng), rng.gen(), rng.gen(), amount, vec![]) // Add `Input::MessageData` - .add_unsigned_message_input(rng.gen(), rng.gen(), rng.gen(), amount, vec![0xff; 10]) + .add_unsigned_message_input(SecretKey::random(&mut rng), rng.gen(), rng.gen(), amount, vec![0xff; 10]) .add_output(Output::change(to, amount + amount, AssetId::BASE)) .finalize(); let tx_id = tx.id(&ChainId::default()); @@ -3821,9 +3828,9 @@ mod tests { let script = vec![op::ret(1)].into_iter().collect(); let tx = TransactionBuilder::script(script, vec![]) // Add `Input::MessageCoin` - .add_unsigned_message_input(rng.gen(), rng.gen(), rng.gen(), amount, vec![]) + .add_unsigned_message_input(SecretKey::random(&mut rng), rng.gen(), rng.gen(), amount, vec![]) // Add `Input::MessageData` - .add_unsigned_message_input(rng.gen(), rng.gen(), rng.gen(), amount, vec![0xff; 10]) + .add_unsigned_message_input(SecretKey::random(&mut rng), rng.gen(), rng.gen(), amount, vec![0xff; 10]) .add_output(Output::change(to, amount + amount, AssetId::BASE)) .finalize(); let tx_id = tx.id(&ChainId::default()); @@ -4072,7 +4079,7 @@ mod tests { let tx = TransactionBuilder::script(script.into_iter().collect(), vec![]) .gas_limit(10000) .add_unsigned_coin_input( - rng.gen(), + SecretKey::random(&mut rng), rng.gen(), 1000, base_asset_id, @@ -4150,7 +4157,7 @@ mod tests { let tx = TransactionBuilder::script(script.into_iter().collect(), vec![]) .gas_limit(10000) .add_unsigned_coin_input( - rng.gen(), + SecretKey::random(&mut rng), rng.gen(), 1000, base_asset_id, diff --git a/crates/fuel-core/src/schema/dap.rs b/crates/fuel-core/src/schema/dap.rs index 54b00998..d8f27ffc 100644 --- a/crates/fuel-core/src/schema/dap.rs +++ b/crates/fuel-core/src/schema/dap.rs @@ -100,8 +100,9 @@ impl ConcreteStorage { let vm_database = Self::vm_database(&storage)?; let tx = Self::dummy_tx(); - let checked_tx = - tx.into_checked_basic(vm_database.block_height()?, &self.params)?; + let checked_tx = tx + .into_checked_basic(vm_database.block_height()?, &self.params) + .map_err(|e| anyhow::anyhow!(e))?; self.tx .get_mut(&id) .map(|tx| tx.extend_from_slice(txs)) @@ -110,7 +111,7 @@ impl ConcreteStorage { }); let mut vm = Interpreter::with_storage(vm_database, (&self.params).into()); - vm.transact(checked_tx)?; + vm.transact(checked_tx).map_err(|e| anyhow::anyhow!(e))?; self.vm.insert(id.clone(), vm); self.db.insert(id.clone(), storage); @@ -132,33 +133,27 @@ impl ConcreteStorage { .cloned() .unwrap_or(Self::dummy_tx()); - let checked_tx = - tx.into_checked_basic(vm_database.block_height()?, &self.params)?; + let checked_tx = tx + .into_checked_basic(vm_database.block_height()?, &self.params) + .map_err(|e| anyhow::anyhow!(e))?; let mut vm = Interpreter::with_storage(vm_database, (&self.params).into()); - vm.transact(checked_tx)?; + vm.transact(checked_tx).map_err(|e| anyhow::anyhow!(e))?; self.vm.insert(id.clone(), vm).ok_or_else(|| { - InterpreterError::Io(io::Error::new( - io::ErrorKind::NotFound, - "The VM instance was not found", - )) + io::Error::new(io::ErrorKind::NotFound, "The VM instance was not found") })?; self.db.insert(id.clone(), storage); Ok(()) } - pub fn exec(&mut self, id: &ID, op: Instruction) -> Result<(), InterpreterError> { + pub fn exec(&mut self, id: &ID, op: Instruction) -> anyhow::Result<()> { self.vm .get_mut(id) .map(|vm| vm.instruction(op)) - .transpose()? + .transpose() + .map_err(|e| anyhow::anyhow!(e))? .map(|_| ()) - .ok_or_else(|| { - InterpreterError::Io(io::Error::new( - io::ErrorKind::NotFound, - "The VM instance was not found", - )) - }) + .ok_or_else(|| anyhow::anyhow!("The VM instance was not found")) } fn vm_database(storage: &DatabaseTransaction) -> anyhow::Result { diff --git a/crates/fuel-core/src/schema/tx/types.rs b/crates/fuel-core/src/schema/tx/types.rs index 136a4d08..0e1278f2 100644 --- a/crates/fuel-core/src/schema/tx/types.rs +++ b/crates/fuel-core/src/schema/tx/types.rs @@ -61,7 +61,7 @@ use fuel_core_types::{ Chargeable, Executable, }, - fuel_types::canonical::SerializedSize, + fuel_types::canonical::Serialize, fuel_vm::ProgramState as VmProgramState, services::{ txpool, diff --git a/crates/services/txpool/src/transaction_selector.rs b/crates/services/txpool/src/transaction_selector.rs index ce9fcc90..508b6418 100644 --- a/crates/services/txpool/src/transaction_selector.rs +++ b/crates/services/txpool/src/transaction_selector.rs @@ -52,7 +52,10 @@ mod tests { Output, TransactionBuilder, }, - fuel_vm::checked_transaction::builder::TransactionBuilderExt, + fuel_vm::{ + checked_transaction::builder::TransactionBuilderExt, + SecretKey, + }, }; use itertools::Itertools; use std::sync::Arc; @@ -85,7 +88,7 @@ mod tests { .gas_price(tx_gas.price) .gas_limit(tx_gas.limit) .add_unsigned_coin_input( - rng.gen(), + SecretKey::random(&mut rng), rng.gen(), 1_000_000, Default::default(), diff --git a/crates/services/txpool/src/txpool.rs b/crates/services/txpool/src/txpool.rs index 411de068..00d56748 100644 --- a/crates/services/txpool/src/txpool.rs +++ b/crates/services/txpool/src/txpool.rs @@ -392,20 +392,24 @@ pub async fn check_single_tx( let consensus_params = &config.chain_config.consensus_parameters; let tx = tx - .into_checked_basic(current_height, consensus_params)? - .check_signatures(&consensus_params.chain_id)?; + .into_checked_basic(current_height, consensus_params) + .map_err(|e| anyhow::anyhow!("{e:?}"))? + .check_signatures(&consensus_params.chain_id) + .map_err(|e| anyhow::anyhow!("{e:?}"))?; let tx = tx .check_predicates_async::(&CheckPredicateParams::from( consensus_params, )) - .await?; + .await + .map_err(|e| anyhow::anyhow!("{e:?}"))?; debug_assert!(tx.checks().contains(Checks::All)); tx } else { - tx.into_checked_basic(current_height, &config.chain_config.consensus_parameters)? + tx.into_checked_basic(current_height, &config.chain_config.consensus_parameters) + .map_err(|e| anyhow::anyhow!("{e:?}"))? }; Ok(tx) diff --git a/crates/services/txpool/src/txpool/tests.rs b/crates/services/txpool/src/txpool/tests.rs index a33f6f55..dc858a33 100644 --- a/crates/services/txpool/src/txpool/tests.rs +++ b/crates/services/txpool/src/txpool/tests.rs @@ -1005,8 +1005,8 @@ async fn predicates_with_incorrect_owner_fails() { .expect_err("Transaction should be err, got ok"); assert!( - err.to_string().contains("InputPredicateOwner"), - "unexpected error: {err}", + format!("{err:?}").contains("InputPredicateOwner"), + "unexpected error: {err:?}", ) } diff --git a/crates/storage/src/lib.rs b/crates/storage/src/lib.rs index b7a86f6c..771d40d7 100644 --- a/crates/storage/src/lib.rs +++ b/crates/storage/src/lib.rs @@ -60,7 +60,19 @@ impl From for std::io::Error { impl From for ExecutorError { fn from(e: Error) -> Self { - ExecutorError::StorageError(Box::new(e)) + ExecutorError::StorageError(anyhow::anyhow!(e)) + } +} + +impl From for fuel_vm_private::prelude::InterpreterError { + fn from(e: Error) -> Self { + fuel_vm_private::prelude::InterpreterError::Storage(e) + } +} + +impl From for fuel_vm_private::prelude::RuntimeError { + fn from(e: Error) -> Self { + fuel_vm_private::prelude::RuntimeError::Storage(e) } } diff --git a/crates/types/src/blockchain/header.rs b/crates/types/src/blockchain/header.rs index b449359a..fb5e3a86 100644 --- a/crates/types/src/blockchain/header.rs +++ b/crates/types/src/blockchain/header.rs @@ -12,7 +12,7 @@ use crate::{ fuel_merkle, fuel_tx::Transaction, fuel_types::{ - canonical::SerializedSize, + canonical::Serialize, BlockHeight, Bytes32, MessageId, diff --git a/crates/types/src/services/executor.rs b/crates/types/src/services/executor.rs index 2b2d0fd0..00d29aac 100644 --- a/crates/types/src/services/executor.rs +++ b/crates/types/src/services/executor.rs @@ -266,16 +266,18 @@ pub enum Error { // TODO: Replace with `fuel_core_storage::Error` when execution error will live in the // `fuel-core-executor`. #[error("got error during work with storage {0}")] - StorageError(Box), + StorageError(anyhow::Error), #[error("got error during work with relayer {0}")] RelayerError(Box), #[error("Transaction({transaction_id:#x}) execution error: {error:?}")] VmExecution { - error: InterpreterError, + // TODO: Replace with `fuel_core_storage::Error` when execution error will live in the + // `fuel-core-executor`. + error: InterpreterError, transaction_id: Bytes32, }, - #[error(transparent)] - InvalidTransaction(#[from] CheckError), + #[error("{0:?}")] + InvalidTransaction(CheckError), #[error("Execution error with backtrace")] Backtrace(Box), #[error("Transaction doesn't match expected result: {transaction_id:#x}")] @@ -298,6 +300,12 @@ impl From for Error { } } +impl From for Error { + fn from(e: CheckError) -> Self { + Self::InvalidTransaction(e) + } +} + #[allow(missing_docs)] #[derive(thiserror::Error, Debug)] #[non_exhaustive] @@ -335,5 +343,11 @@ pub enum TransactionValidityError { )] InvalidPredicate(TxId), #[error("Transaction validity: {0:#?}")] - Validation(#[from] CheckError), + Validation(CheckError), +} + +impl From for TransactionValidityError { + fn from(e: CheckError) -> Self { + Self::Validation(e) + } } diff --git a/tests/tests/coins.rs b/tests/tests/coins.rs index 4cec5902..819ee0e7 100644 --- a/tests/tests/coins.rs +++ b/tests/tests/coins.rs @@ -93,7 +93,7 @@ mod coin { let mut rng = StdRng::seed_from_u64(1234); let asset_id_a: AssetId = rng.gen(); let asset_id_b: AssetId = rng.gen(); - let secret_key: SecretKey = rng.gen(); + let secret_key: SecretKey = SecretKey::random(&mut rng); let pk = secret_key.public_key(); let owner = Input::owner(&pk); let context = setup(owner, asset_id_a, asset_id_b).await; @@ -344,7 +344,7 @@ mod message_coin { async fn excludes_spent_coins() { let mut rng = StdRng::seed_from_u64(1234); - let secret_key: SecretKey = rng.gen(); + let secret_key: SecretKey = SecretKey::random(&mut rng); let pk = secret_key.public_key(); let owner = Input::owner(&pk); let (base_asset_id, context) = setup(owner).await; diff --git a/tests/tests/contract.rs b/tests/tests/contract.rs index 551a8cb4..16b0994b 100644 --- a/tests/tests/contract.rs +++ b/tests/tests/contract.rs @@ -18,7 +18,7 @@ use fuel_core_types::{ fuel_asm::*, fuel_tx::*, fuel_types::{ - canonical::SerializedSize, + canonical::Serialize, ChainId, }, fuel_vm::*, diff --git a/tests/tests/messages/relayer.rs b/tests/tests/messages/relayer.rs index 87d5039e..e203dfba 100644 --- a/tests/tests/messages/relayer.rs +++ b/tests/tests/messages/relayer.rs @@ -10,7 +10,7 @@ use rand::{ async fn can_submit_genesis_message() { let mut rng = StdRng::seed_from_u64(1234); - let secret_key: SecretKey = rng.gen(); + let secret_key: SecretKey = SecretKey::random(&mut rng); let pk = secret_key.public_key(); let msg1 = MessageConfig { diff --git a/tests/tests/relayer.rs b/tests/tests/relayer.rs index 81d60b04..f8709043 100644 --- a/tests/tests/relayer.rs +++ b/tests/tests/relayer.rs @@ -131,7 +131,7 @@ async fn messages_are_spendable_after_relayer_is_synced() { let contract_address = relayer_config.eth_v2_listening_contracts[0]; // setup a real spendable message - let secret_key: SecretKey = rng.gen(); + let secret_key: SecretKey = SecretKey::random(&mut rng); let pk = secret_key.public_key(); let recipient = Input::owner(&pk); let sender = Address::zeroed(); diff --git a/tests/tests/trigger_integration/interval.rs b/tests/tests/trigger_integration/interval.rs index 6557e329..5e54d71b 100644 --- a/tests/tests/trigger_integration/interval.rs +++ b/tests/tests/trigger_integration/interval.rs @@ -116,7 +116,7 @@ async fn poa_interval_produces_nonempty_blocks_at_correct_rate() { vec![], ) .add_unsigned_coin_input( - rng.gen(), + SecretKey::random(&mut rng), rng.gen(), rng.gen(), rng.gen(), diff --git a/tests/tests/tx/tx_pointer.rs b/tests/tests/tx/tx_pointer.rs index 55e6ca64..bd1c84b8 100644 --- a/tests/tests/tx/tx_pointer.rs +++ b/tests/tests/tx/tx_pointer.rs @@ -46,7 +46,7 @@ async fn tx_pointer_set_from_genesis_for_coin_and_contract_inputs() { // setup genesis coin let coin_tx_pointer = TxPointer::new(starting_block, rng.gen()); let coin_utxo_id: UtxoId = rng.gen(); - let secret_key: SecretKey = rng.gen(); + let secret_key: SecretKey = SecretKey::random(&mut rng); let owner = Input::owner(&secret_key.public_key()); let amount = 1000; @@ -116,7 +116,7 @@ async fn tx_pointer_set_from_previous_block() { // setup genesis coin let coin_utxo_id: UtxoId = rng.gen(); - let secret_key: SecretKey = rng.gen(); + let secret_key: SecretKey = SecretKey::random(&mut rng); let owner = Input::owner(&secret_key.public_key()); let amount = 1000; @@ -191,7 +191,7 @@ async fn tx_pointer_unset_when_utxo_validation_disabled() { test_builder.starting_block = Some(block_height.into()); test_builder.utxo_validation = false; - let secret_key: SecretKey = rng.gen(); + let secret_key: SecretKey = SecretKey::random(&mut rng); let script = script_tx(secret_key, 1000, Default::default(), contract_id, rng.gen()); let TestContext {