From cdb30e4d5888955bbc6f1b2517271426aedb82db Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Fri, 22 Nov 2024 13:46:40 +0100 Subject: [PATCH 01/26] Multi value --- pallets/gear/src/tests.rs | 41 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/pallets/gear/src/tests.rs b/pallets/gear/src/tests.rs index 8feccac9a9d..bf5853ddcc0 100644 --- a/pallets/gear/src/tests.rs +++ b/pallets/gear/src/tests.rs @@ -15832,6 +15832,47 @@ fn use_big_memory() { }); } +#[test] +fn multi_value() { + const WAT: &str = r#" +(module + (import "env" "memory" (memory 1)) + (export "init" (func $init)) + (func $init + i32.const 0xfe + i64.const 0xef + call $a + drop + drop + ) + (func $a (param i32 i64) (result i32 i64) + local.get 0 + local.get 1 + ) +) + "#; + + init_logger(); + new_test_ext().execute_with(|| { + let pid = Gear::upload_program( + RuntimeOrigin::signed(USER_1), + ProgramCodeKind::Custom(WAT).to_bytes(), + DEFAULT_SALT.to_vec(), + EMPTY_PAYLOAD.to_vec(), + 500_000_000_u64, + 0, + false, + ) + .map(|_| get_last_program_id()) + .unwrap(); + let mid = get_last_message_id(); + + run_to_next_block(None); + + assert!(Gear::is_terminated(pid)); + }); +} + pub(crate) mod utils { #![allow(unused)] From 46c8b0f513cf63e488861c825170cc9252b10ac9 Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Thu, 28 Nov 2024 18:09:14 +0100 Subject: [PATCH 02/26] Enable `multivalue` proposal for some libs --- Cargo.lock | 2 ++ pallets/gear/src/tests.rs | 3 +-- utils/wasm-instrument/Cargo.toml | 5 +++++ 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 316d978a531..7e0af942394 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -6517,7 +6517,9 @@ version = "1.7.0" dependencies = [ "derive_more 0.99.18", "enum-iterator 1.5.0", + "gear-wasm", "gwasm-instrument", + "parity-wasm", "wasmparser-nostd", "wat", ] diff --git a/pallets/gear/src/tests.rs b/pallets/gear/src/tests.rs index bf5853ddcc0..ea6a5f98dda 100644 --- a/pallets/gear/src/tests.rs +++ b/pallets/gear/src/tests.rs @@ -15865,11 +15865,10 @@ fn multi_value() { ) .map(|_| get_last_program_id()) .unwrap(); - let mid = get_last_message_id(); run_to_next_block(None); - assert!(Gear::is_terminated(pid)); + assert!(!Gear::is_terminated(pid)); }); } diff --git a/utils/wasm-instrument/Cargo.toml b/utils/wasm-instrument/Cargo.toml index 29980941751..050e80ab410 100644 --- a/utils/wasm-instrument/Cargo.toml +++ b/utils/wasm-instrument/Cargo.toml @@ -17,6 +17,10 @@ gwasm-instrument = { workspace = true, features = ["sign_ext"] } derive_more.workspace = true enum-iterator.workspace = true +# TODO: move in a proper place +parity-wasm = { workspace = true, features = ["sign_ext", "multi_value"] } +gear-wasm = { version = "0.45.1", default-features = false, features = ["sign_ext", "multi_value"] } + [dev-dependencies] wasmparser.workspace = true wat.workspace = true @@ -26,4 +30,5 @@ default = ["std"] std = [ "gwasm-instrument/std", "wasmparser/std", + "gear-wasm/std", ] From cc44b16fedd00f0f06fd476bcce99d145f3807c6 Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Thu, 28 Nov 2024 18:44:02 +0100 Subject: [PATCH 03/26] Temporary enable cranelift in embedded executor --- Cargo.lock | 1425 ++++++++++++---------- gcli/src/meta/executor.rs | 6 +- sandbox/sandbox/Cargo.toml | 2 +- sandbox/sandbox/src/embedded_executor.rs | 2 +- utils/wasm-instrument/Cargo.toml | 2 + 5 files changed, 799 insertions(+), 638 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 7e0af942394..7e6b3ba432a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -34,7 +34,7 @@ version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" dependencies = [ - "gimli 0.28.0", + "gimli 0.28.1", ] [[package]] @@ -43,6 +43,12 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" +[[package]] +name = "adler2" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" + [[package]] name = "aead" version = "0.4.3" @@ -113,17 +119,6 @@ dependencies = [ "subtle 2.6.1", ] -[[package]] -name = "ahash" -version = "0.7.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" -dependencies = [ - "getrandom", - "once_cell", - "version_check", -] - [[package]] name = "ahash" version = "0.8.11" @@ -221,7 +216,7 @@ dependencies = [ "alloy-transport", "futures", "futures-util", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -327,7 +322,7 @@ dependencies = [ "alloy-sol-types", "serde", "serde_json", - "thiserror", + "thiserror 1.0.62", "tracing", ] @@ -349,7 +344,7 @@ dependencies = [ "async-trait", "auto_impl", "futures-utils-wasm", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -377,7 +372,7 @@ dependencies = [ "rand", "serde_json", "tempfile", - "thiserror", + "thiserror 1.0.62", "tracing", "url", ] @@ -443,7 +438,7 @@ dependencies = [ "reqwest", "serde", "serde_json", - "thiserror", + "thiserror 1.0.62", "tokio", "tracing", "url", @@ -487,7 +482,7 @@ checksum = "8037e03c7f462a063f28daec9fda285a9a89da003c552f8637a80b9c8fd96241" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -551,7 +546,7 @@ dependencies = [ "alloy-rpc-types-engine", "serde", "serde_with", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -611,7 +606,7 @@ dependencies = [ "auto_impl", "elliptic-curve", "k256", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -627,7 +622,7 @@ dependencies = [ "async-trait", "k256", "rand", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -641,7 +636,7 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -658,7 +653,7 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", "syn-solidity", "tiny-keccak", ] @@ -676,7 +671,7 @@ dependencies = [ "proc-macro2", "quote", "serde_json", - "syn 2.0.71", + "syn 2.0.89", "syn-solidity", ] @@ -715,7 +710,7 @@ dependencies = [ "futures-utils-wasm", "serde", "serde_json", - "thiserror", + "thiserror 1.0.62", "tokio", "tower 0.5.1", "tracing", @@ -853,7 +848,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -1223,7 +1218,7 @@ dependencies = [ "nom", "num-traits", "rusticata-macros", - "thiserror", + "thiserror 1.0.62", "time", ] @@ -1239,7 +1234,7 @@ dependencies = [ "nom", "num-traits", "rusticata-macros", - "thiserror", + "thiserror 1.0.62", "time", ] @@ -1263,7 +1258,7 @@ checksum = "7378575ff571966e99a744addeff0bff98b8ada0dedf1956d59e634db95eaac1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", "synstructure 0.13.1", ] @@ -1286,7 +1281,7 @@ checksum = "7b18050c2cd6fe86c3a76584ef5e0baf286d038cda203eb6223df2cc413565f7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -1447,7 +1442,7 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -1487,7 +1482,7 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -1504,7 +1499,7 @@ checksum = "6e0c28dcc82d7c8ead5cb13beb15405b57b8546e93215673ff8ca0349a028107" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -1564,7 +1559,7 @@ checksum = "99e1aca718ea7b89985790c94aad72d77533063fe00bc497bb79a7c2dae6a661" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -1597,7 +1592,7 @@ checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -1616,7 +1611,7 @@ dependencies = [ "cc", "cfg-if", "libc", - "miniz_oxide", + "miniz_oxide 0.7.1", "object 0.32.2", "rustc-demangle", ] @@ -1714,7 +1709,27 @@ dependencies = [ "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.71", + "syn 2.0.89", +] + +[[package]] +name = "bindgen" +version = "0.70.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f" +dependencies = [ + "bitflags 2.5.0", + "cexpr", + "clang-sys", + "itertools 0.10.5", + "log", + "prettyplease 0.2.15", + "proc-macro2", + "quote", + "regex", + "rustc-hash 1.1.0", + "shlex", + "syn 2.0.89", ] [[package]] @@ -1990,8 +2005,20 @@ version = "0.6.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b6372023ac861f6e6dc89c8344a8f398fb42aaba2b5dbc649ca0c0e9dbcb627" dependencies = [ - "bytecheck_derive", - "ptr_meta", + "bytecheck_derive 0.6.11", + "ptr_meta 0.1.4", + "simdutf8", +] + +[[package]] +name = "bytecheck" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50c8f430744b23b54ad15161fcbc22d82a29b73eacbe425fea23ec822600bc6f" +dependencies = [ + "bytecheck_derive 0.8.0", + "ptr_meta 0.3.0", + "rancor", "simdutf8", ] @@ -2006,6 +2033,17 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "bytecheck_derive" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "523363cbe1df49b68215efdf500b103ac3b0fb4836aed6d15689a076eadb8fff" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.89", +] + [[package]] name = "bytecount" version = "0.6.3" @@ -2034,12 +2072,13 @@ dependencies = [ ] [[package]] -name = "bytesize" -version = "1.3.0" +name = "bzip2" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3e368af43e418a04d52505cf3dbc23dda4e3407ae2fa99fd0e4f308ce546acc" +checksum = "bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8" dependencies = [ - "serde", + "bzip2-sys", + "libc", ] [[package]] @@ -2159,7 +2198,7 @@ dependencies = [ "semver 1.0.18", "serde", "serde_json", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -2173,7 +2212,7 @@ dependencies = [ "semver 1.0.18", "serde", "serde_json", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -2442,7 +2481,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -2693,15 +2732,15 @@ dependencies = [ [[package]] name = "corosensei" -version = "0.1.4" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80128832c58ea9cbd041d2a759ec449224487b2c1e400453d99d244eead87a8e" +checksum = "ad067b451c08956709f8762dba86e049c124ea52858e3ab8d076ba2892caa437" dependencies = [ "autocfg", "cfg-if", "libc", "scopeguard", - "windows-sys 0.33.0", + "windows-sys 0.59.0", ] [[package]] @@ -2728,9 +2767,24 @@ version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1277fbfa94bc82c8ec4af2ded3e639d49ca5f7f3c7eeab2c66accd135ece4e70" dependencies = [ - "cranelift-entity", + "cranelift-entity 0.95.1", ] +[[package]] +name = "cranelift-bforest" +version = "0.110.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "305d51c180ebdc46ef61bc60c54ae6512db3bc9a05842a1f1e762e45977019ab" +dependencies = [ + "cranelift-entity 0.110.2", +] + +[[package]] +name = "cranelift-bitset" +version = "0.110.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "690d8ae6c73748e5ce3d8fe59034dceadb8823e6c8994ba324141c5eae909b0e" + [[package]] name = "cranelift-codegen" version = "0.95.1" @@ -2738,11 +2792,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c6e8c31ad3b2270e9aeec38723888fe1b0ace3bea2b06b3f749ccf46661d3220" dependencies = [ "bumpalo", - "cranelift-bforest", - "cranelift-codegen-meta", - "cranelift-codegen-shared", - "cranelift-entity", - "cranelift-isle", + "cranelift-bforest 0.95.1", + "cranelift-codegen-meta 0.95.1", + "cranelift-codegen-shared 0.95.1", + "cranelift-entity 0.95.1", + "cranelift-isle 0.95.1", "gimli 0.27.3", "hashbrown 0.13.2", "log", @@ -2751,13 +2805,45 @@ dependencies = [ "target-lexicon", ] +[[package]] +name = "cranelift-codegen" +version = "0.110.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd7ca95e831c18d1356da783765c344207cbdffea91e13e47fa9327dbb2e0719" +dependencies = [ + "bumpalo", + "cranelift-bforest 0.110.2", + "cranelift-bitset", + "cranelift-codegen-meta 0.110.3", + "cranelift-codegen-shared 0.110.3", + "cranelift-control", + "cranelift-entity 0.110.2", + "cranelift-isle 0.110.2", + "gimli 0.28.1", + "hashbrown 0.14.5", + "log", + "regalloc2 0.9.3", + "rustc-hash 1.1.0", + "smallvec", + "target-lexicon", +] + [[package]] name = "cranelift-codegen-meta" version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c8ac5ac30d62b2d66f12651f6b606dbdfd9c2cfd0908de6b387560a277c5c9da" dependencies = [ - "cranelift-codegen-shared", + "cranelift-codegen-shared 0.95.1", +] + +[[package]] +name = "cranelift-codegen-meta" +version = "0.110.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0a2d2ab65e6cbf91f81781d8da65ec2005510f18300eff21a99526ed6785863" +dependencies = [ + "cranelift-codegen-shared 0.110.3", ] [[package]] @@ -2766,6 +2852,21 @@ version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dd82b8b376247834b59ed9bdc0ddeb50f517452827d4a11bccf5937b213748b8" +[[package]] +name = "cranelift-codegen-shared" +version = "0.110.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "efcff860573cf3db9ae98fbd949240d78b319df686cc306872e7fab60e9c84d7" + +[[package]] +name = "cranelift-control" +version = "0.110.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69d70e5b75c2d5541ef80a99966ccd97aaa54d2a6af19ea31759a28538e1685a" +dependencies = [ + "arbitrary", +] + [[package]] name = "cranelift-entity" version = "0.95.1" @@ -2775,13 +2876,34 @@ dependencies = [ "serde", ] +[[package]] +name = "cranelift-entity" +version = "0.110.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a48cb0a194c9ba82fec35a1e492055388d89b2e3c03dee9dcf2488892be8004d" +dependencies = [ + "cranelift-bitset", +] + [[package]] name = "cranelift-frontend" version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "64a25d9d0a0ae3079c463c34115ec59507b4707175454f0eee0891e83e30e82d" dependencies = [ - "cranelift-codegen", + "cranelift-codegen 0.95.1", + "log", + "smallvec", + "target-lexicon", +] + +[[package]] +name = "cranelift-frontend" +version = "0.110.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8327afc6c1c05f4be62fefce5b439fa83521c65363a322e86ea32c85e7ceaf64" +dependencies = [ + "cranelift-codegen 0.110.2", "log", "smallvec", "target-lexicon", @@ -2793,13 +2915,19 @@ version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "80de6a7d0486e4acbd5f9f87ec49912bf4c8fb6aea00087b989685460d4469ba" +[[package]] +name = "cranelift-isle" +version = "0.110.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56b08621c00321efcfa3eee6a3179adc009e21ea8d24ca7adc3c326184bc3f48" + [[package]] name = "cranelift-native" version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bb6b03e0e03801c4b3fd8ce0758a94750c07a44e7944cc0ffbf0d3f2e7c79b00" dependencies = [ - "cranelift-codegen", + "cranelift-codegen 0.95.1", "libc", "target-lexicon", ] @@ -2810,9 +2938,9 @@ version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ff3220489a3d928ad91e59dd7aeaa8b3de18afb554a6211213673a71c90737ac" dependencies = [ - "cranelift-codegen", - "cranelift-entity", - "cranelift-frontend", + "cranelift-codegen 0.95.1", + "cranelift-entity 0.95.1", + "cranelift-frontend 0.95.1", "itertools 0.10.5", "log", "smallvec", @@ -2852,9 +2980,9 @@ checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" [[package]] name = "crc32fast" -version = "1.3.2" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" +checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" dependencies = [ "cfg-if", ] @@ -2905,12 +3033,9 @@ dependencies = [ [[package]] name = "crossbeam-utils" -version = "0.8.16" +version = "0.8.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294" -dependencies = [ - "cfg-if", -] +checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" [[package]] name = "crunchy" @@ -3013,7 +3138,7 @@ checksum = "83fdaf97f4804dcebfa5862639bc9ce4121e82140bec2a987ac5140294865b5b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -3040,7 +3165,7 @@ dependencies = [ "proc-macro2", "quote", "scratch", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -3057,7 +3182,7 @@ checksum = "50c49547d73ba8dcfd4ad7325d64c6d5391ff4224d498fc39a6f3f49825a530d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -3105,7 +3230,7 @@ dependencies = [ "proc-macro2", "quote", "strsim 0.11.1", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -3127,7 +3252,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ "darling_core 0.20.10", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -3189,6 +3314,12 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "930c7171c8df9fb1782bdf9b918ed9ed2d33d1d22300abb754f9085bc48bf8e8" +[[package]] +name = "deflate64" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da692b8d1080ea3045efaab14434d40468c3d8657e42abddfffca87b428f4c1b" + [[package]] name = "demo-async" version = "0.1.0" @@ -3882,7 +4013,7 @@ checksum = "d65d7ce8132b7c0e54497a4d9a55a1c2a0912a0d786cf894472ba818fba45762" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -3893,7 +4024,7 @@ checksum = "62d671cc41a825ebabc75757b62d3d168c577f9149b2d49ece1dad1f72119d25" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -3904,38 +4035,7 @@ checksum = "67e77553c4162a157adbf834ebae5b415acbecbeafc7a74b0e886657506a7611" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", -] - -[[package]] -name = "derive_builder" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d67778784b508018359cbc8696edb3db78160bab2c2a28ba7f56ef6932997f8" -dependencies = [ - "derive_builder_macro", -] - -[[package]] -name = "derive_builder_core" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c11bdc11a0c47bc7d37d582b5285da6849c96681023680b906673c5707af7b0f" -dependencies = [ - "darling 0.14.4", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "derive_builder_macro" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebcda35c7a396850a55ffeac740804b40ffec779b98fffbb1738f4033f0ee79e" -dependencies = [ - "derive_builder_core", - "syn 1.0.109", + "syn 2.0.89", ] [[package]] @@ -3948,7 +4048,7 @@ dependencies = [ "proc-macro2", "quote", "rustc_version 0.4.0", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -3968,7 +4068,7 @@ checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", "unicode-xid", ] @@ -4078,13 +4178,13 @@ dependencies = [ [[package]] name = "displaydoc" -version = "0.2.4" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" +checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -4114,7 +4214,7 @@ dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.71", + "syn 2.0.89", "termcolor", "toml 0.8.14", "walkdir", @@ -4314,7 +4414,7 @@ dependencies = [ "heck 0.4.1", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -4354,7 +4454,7 @@ checksum = "03cdc46ec28bd728e67540c528013c6a10eb69a02eb31078a1bda695438cbfb8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -4395,7 +4495,7 @@ checksum = "5e9a1f9f7d83e59740248a6e14ecf93929ade55027844dfcea78beafccc15745" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -4416,7 +4516,7 @@ dependencies = [ "darling 0.20.10", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -4618,7 +4718,7 @@ dependencies = [ "gprimitives", "log", "parity-scale-codec", - "parity-wasm", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand", "sp-allocator", "sp-wasm-interface 21.0.1 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", @@ -4634,7 +4734,7 @@ dependencies = [ "hyper 0.14.31", "log", "prometheus", - "thiserror", + "thiserror 1.0.62", "tokio", ] @@ -4659,7 +4759,6 @@ dependencies = [ "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "tokio", "tower 0.4.13", - "tower-http", ] [[package]] @@ -4818,7 +4917,7 @@ dependencies = [ "fs-err", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -4887,7 +4986,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e182f7dbc2ef73d9ef67351c5fbbea084729c48362d3ce9dd44c28e32e277fe5" dependencies = [ "libc", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -4980,12 +5079,12 @@ checksum = "cda653ca797810c02f7ca4b804b40b8b95ae046eb989d356bce17919a8c25499" [[package]] name = "flate2" -version = "1.0.27" +version = "1.0.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6c98ee8095e9d1dcbf2fcc6d95acccb90d1c81db1e44725c6a984b1dbdfb010" +checksum = "c936bfdafb507ebbf50b8074c54fa31c5be9a1e7e5f467dd659697041407d07c" dependencies = [ "crc32fast", - "miniz_oxide", + "miniz_oxide 0.8.0", ] [[package]] @@ -5048,7 +5147,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8835f84f38484cc86f110a805655697908257fb9a7af005234060891557198e9" dependencies = [ "nonempty 0.7.0", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -5127,7 +5226,7 @@ dependencies = [ "sp-storage 21.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-trie 37.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-wasm-interface 21.0.1 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror", + "thiserror 1.0.62", "thousands", ] @@ -5139,7 +5238,7 @@ dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -5294,7 +5393,7 @@ dependencies = [ "proc-macro2", "quote", "sp-crypto-hashing 0.1.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -5306,7 +5405,7 @@ dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -5316,7 +5415,7 @@ source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -5560,7 +5659,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -5724,7 +5823,7 @@ dependencies = [ "reqwest", "scale-info", "serde", - "thiserror", + "thiserror 1.0.62", "tokio", "toml 0.8.14", "url", @@ -5776,7 +5875,7 @@ dependencies = [ "log", "parity-scale-codec", "subxt", - "thiserror", + "thiserror 1.0.62", "tokio", "url", "wabt", @@ -5865,7 +5964,7 @@ dependencies = [ "hex", "log", "rand", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -5932,7 +6031,7 @@ name = "gear-common-codegen" version = "1.7.0" dependencies = [ "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -5963,7 +6062,7 @@ dependencies = [ "scale-info", "serde", "wabt", - "wasmparser-nostd", + "wasmparser 0.220.0", ] [[package]] @@ -6110,7 +6209,7 @@ dependencies = [ "rand", "reqwest", "subxt", - "thiserror", + "thiserror 1.0.62", "tokio", "tracing", "tracing-appender", @@ -6308,7 +6407,7 @@ dependencies = [ "sp-allocator", "sp-wasm-interface-common", "tempfile", - "thiserror", + "thiserror 1.0.62", "wasmer", "wasmer-types", "wasmi 0.38.0", @@ -6450,7 +6549,7 @@ dependencies = [ "parity-scale-codec", "sp-consensus-babe", "subxt", - "thiserror", + "thiserror 1.0.62", "tokio", ] @@ -6475,11 +6574,11 @@ dependencies = [ "gmeta", "itertools 0.13.0", "log", - "parity-wasm", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", "pathdiff", "regex", "rustc_version 0.4.0", - "thiserror", + "thiserror 1.0.62", "toml 0.8.14", "wabt", ] @@ -6504,9 +6603,9 @@ dependencies = [ "nonempty 0.8.1", "proptest", "rand", - "thiserror", + "thiserror 1.0.62", "wasm-smith", - "wasmparser-nostd", + "wasmparser 0.220.0", "wasmprinter", "wat", ] @@ -6519,8 +6618,8 @@ dependencies = [ "enum-iterator 1.5.0", "gear-wasm", "gwasm-instrument", - "parity-wasm", - "wasmparser-nostd", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "wasmparser 0.220.0", "wat", ] @@ -6538,7 +6637,7 @@ dependencies = [ "wabt", "wasm-opt", "wasmer", - "wasmparser-nostd", + "wasmparser 0.220.0", "which", ] @@ -6574,7 +6673,7 @@ dependencies = [ "quote", "serde", "serde_json", - "syn 2.0.71", + "syn 2.0.89", "tabled", "vara-runtime", ] @@ -6679,17 +6778,6 @@ dependencies = [ "polyval 0.6.2", ] -[[package]] -name = "gimli" -version = "0.26.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22030e2c5a68ec659fde1e949a745124b48e6fa8b045b7ed5bd1fe4ccc5c4e5d" -dependencies = [ - "fallible-iterator 0.2.0", - "indexmap 1.9.3", - "stable_deref_trait", -] - [[package]] name = "gimli" version = "0.27.3" @@ -6703,11 +6791,12 @@ dependencies = [ [[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.6.0", "stable_deref_trait", ] @@ -6762,7 +6851,7 @@ dependencies = [ "proc-macro2", "quote", "scale-info", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -6861,7 +6950,7 @@ dependencies = [ "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", "subxt", - "thiserror", + "thiserror 1.0.62", "tokio", ] @@ -6883,7 +6972,7 @@ dependencies = [ "scale-info", "sp-io 38.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "subxt-codegen", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -6892,7 +6981,7 @@ version = "1.7.0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -6922,7 +7011,7 @@ dependencies = [ "gstd", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", "trybuild", ] @@ -7010,12 +7099,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "half" -version = "1.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b43ede17f21864e81be2fa654110bf1e793774238d86ef8555c37e6519c0403" - [[package]] name = "handlebars" version = "5.1.2" @@ -7027,7 +7110,7 @@ dependencies = [ "pest_derive", "serde", "serde_json", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -7050,9 +7133,6 @@ name = "hashbrown" version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" -dependencies = [ - "ahash 0.7.8", -] [[package]] name = "hashbrown" @@ -7060,7 +7140,7 @@ version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" dependencies = [ - "ahash 0.8.11", + "ahash", ] [[package]] @@ -7069,7 +7149,7 @@ version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" dependencies = [ - "ahash 0.8.11", + "ahash", "allocator-api2", "serde", ] @@ -7093,6 +7173,16 @@ dependencies = [ "hashbrown 0.14.5", ] +[[package]] +name = "hdrhistogram" +version = "7.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "765c9198f173dd59ce26ff9f95ef0aafd0a0fe01fb9d72841bc5066a4c06511d" +dependencies = [ + "byteorder", + "num-traits", +] + [[package]] name = "headers" version = "0.3.9" @@ -7207,7 +7297,7 @@ dependencies = [ "once_cell", "rand", "socket2 0.5.7", - "thiserror", + "thiserror 1.0.62", "tinyvec", "tokio", "tracing", @@ -7230,7 +7320,7 @@ dependencies = [ "rand", "resolv-conf", "smallvec", - "thiserror", + "thiserror 1.0.62", "tokio", "tracing", ] @@ -7858,7 +7948,7 @@ dependencies = [ "combine", "jni-sys", "log", - "thiserror", + "thiserror 1.0.62", "walkdir", ] @@ -7938,7 +8028,7 @@ dependencies = [ "rustls-native-certs 0.7.2", "rustls-pki-types", "soketto 0.7.1", - "thiserror", + "thiserror 1.0.62", "tokio", "tokio-rustls 0.25.0", "tokio-util", @@ -7961,7 +8051,7 @@ dependencies = [ "rustls-pki-types", "rustls-platform-verifier", "soketto 0.8.0", - "thiserror", + "thiserror 1.0.62", "tokio", "tokio-rustls 0.26.0", "tokio-util", @@ -7984,7 +8074,7 @@ dependencies = [ "rustls-pki-types", "rustls-platform-verifier", "soketto 0.8.0", - "thiserror", + "thiserror 1.0.62", "tokio", "tokio-rustls 0.26.0", "tokio-util", @@ -8009,7 +8099,7 @@ dependencies = [ "rustc-hash 1.1.0", "serde", "serde_json", - "thiserror", + "thiserror 1.0.62", "tokio", "tokio-stream", "tracing", @@ -8031,7 +8121,7 @@ dependencies = [ "rustc-hash 1.1.0", "serde", "serde_json", - "thiserror", + "thiserror 1.0.62", "tokio", "tokio-stream", "tracing", @@ -8057,7 +8147,7 @@ dependencies = [ "rustc-hash 2.0.0", "serde", "serde_json", - "thiserror", + "thiserror 1.0.62", "tokio", "tokio-stream", "tracing", @@ -8076,7 +8166,7 @@ dependencies = [ "jsonrpsee-types 0.22.5", "serde", "serde_json", - "thiserror", + "thiserror 1.0.62", "tokio", "tower 0.4.13", "tracing", @@ -8101,7 +8191,7 @@ dependencies = [ "rustls-platform-verifier", "serde", "serde_json", - "thiserror", + "thiserror 1.0.62", "tokio", "tower 0.4.13", "tracing", @@ -8118,7 +8208,7 @@ dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -8140,7 +8230,7 @@ dependencies = [ "serde", "serde_json", "soketto 0.8.0", - "thiserror", + "thiserror 1.0.62", "tokio", "tokio-stream", "tokio-util", @@ -8158,7 +8248,7 @@ dependencies = [ "beef", "serde", "serde_json", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -8171,7 +8261,7 @@ dependencies = [ "http 1.1.0", "serde", "serde_json", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -8183,7 +8273,7 @@ dependencies = [ "http 1.1.0", "serde", "serde_json", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -8352,9 +8442,9 @@ checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" [[package]] name = "libc" -version = "0.2.158" +version = "0.2.166" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439" +checksum = "c2ccc108bbc0b1331bd061864e7cd823c0cab660bbe6970e66e2c0614decde36" [[package]] name = "libc-print" @@ -8450,7 +8540,7 @@ dependencies = [ "multiaddr 0.18.1", "pin-project", "rw-stream-sink 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -8485,7 +8575,7 @@ dependencies = [ "multiaddr 0.18.1", "pin-project", "rw-stream-sink 0.4.0 (git+https://github.com/gear-tech/rust-libp2p?branch=al/v0.54.1-patches)", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -8557,7 +8647,7 @@ dependencies = [ "rand", "rw-stream-sink 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec", - "thiserror", + "thiserror 1.0.62", "unsigned-varint 0.7.2", "void", ] @@ -8582,7 +8672,7 @@ dependencies = [ "rand", "rw-stream-sink 0.4.0 (git+https://github.com/gear-tech/rust-libp2p?branch=al/v0.54.1-patches)", "smallvec", - "thiserror", + "thiserror 1.0.62", "tracing", "unsigned-varint 0.8.0", "void", @@ -8669,7 +8759,7 @@ dependencies = [ "quick-protobuf", "quick-protobuf-codec 0.2.0", "smallvec", - "thiserror", + "thiserror 1.0.62", "void", ] @@ -8690,7 +8780,7 @@ dependencies = [ "quick-protobuf", "quick-protobuf-codec 0.3.1", "smallvec", - "thiserror", + "thiserror 1.0.62", "tracing", "void", ] @@ -8710,7 +8800,7 @@ dependencies = [ "quick-protobuf", "rand", "sha2 0.10.8", - "thiserror", + "thiserror 1.0.62", "tracing", "zeroize", ] @@ -8738,7 +8828,7 @@ dependencies = [ "rand", "sha2 0.10.8", "smallvec", - "thiserror", + "thiserror 1.0.62", "uint", "unsigned-varint 0.7.2", "void", @@ -8765,7 +8855,7 @@ dependencies = [ "rand", "sha2 0.10.8", "smallvec", - "thiserror", + "thiserror 1.0.62", "tracing", "uint", "void", @@ -8868,7 +8958,7 @@ dependencies = [ "sha2 0.10.8", "snow", "static_assertions", - "thiserror", + "thiserror 1.0.62", "x25519-dalek", "zeroize", ] @@ -8943,7 +9033,7 @@ dependencies = [ "ring 0.16.20", "rustls 0.21.7", "socket2 0.5.7", - "thiserror", + "thiserror 1.0.62", "tokio", ] @@ -8965,7 +9055,7 @@ dependencies = [ "ring 0.17.8", "rustls 0.23.10", "socket2 0.5.7", - "thiserror", + "thiserror 1.0.62", "tokio", "tracing", ] @@ -9063,7 +9153,7 @@ dependencies = [ "proc-macro-warning 0.4.2", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -9074,7 +9164,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -9142,7 +9232,7 @@ dependencies = [ "ring 0.16.20", "rustls 0.21.7", "rustls-webpki 0.101.4", - "thiserror", + "thiserror 1.0.62", "x509-parser 0.15.1", "yasna", ] @@ -9160,7 +9250,7 @@ dependencies = [ "ring 0.17.8", "rustls 0.23.10", "rustls-webpki 0.101.4", - "thiserror", + "thiserror 1.0.62", "x509-parser 0.16.0", "yasna", ] @@ -9226,7 +9316,7 @@ dependencies = [ "pin-project-lite", "rw-stream-sink 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "soketto 0.8.0", - "thiserror", + "thiserror 1.0.62", "url", "webpki-roots 0.25.2", ] @@ -9240,7 +9330,7 @@ dependencies = [ "futures", "libp2p-core 0.40.1", "log", - "thiserror", + "thiserror 1.0.62", "yamux 0.12.1", ] @@ -9252,7 +9342,7 @@ dependencies = [ "either", "futures", "libp2p-core 0.42.0", - "thiserror", + "thiserror 1.0.62", "tracing", "yamux 0.12.1", "yamux 0.13.3", @@ -9264,7 +9354,7 @@ version = "0.11.0+8.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3386f101bcb4bd252d8e9d2fb41ec3b0862a15a62b478c355b2982efa469e3e" dependencies = [ - "bindgen", + "bindgen 0.65.1", "bzip2-sys", "cc", "glob 0.3.1", @@ -9448,7 +9538,7 @@ dependencies = [ "socket2 0.5.7", "static_assertions", "str0m", - "thiserror", + "thiserror 1.0.62", "tokio", "tokio-stream", "tokio-tungstenite 0.20.1", @@ -9481,6 +9571,12 @@ dependencies = [ "scopeguard", ] +[[package]] +name = "lockfree-object-pool" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9374ef4228402d4b7e403e5838cb880d9ee663314b0a900d5a6aabf0c213552e" + [[package]] name = "log" version = "0.4.22" @@ -9538,6 +9634,27 @@ dependencies = [ "libc", ] +[[package]] +name = "lzma-rs" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "297e814c836ae64db86b36cf2a557ba54368d03f6afcd7d947c266692f71115e" +dependencies = [ + "byteorder", + "crc", +] + +[[package]] +name = "lzma-sys" +version = "0.1.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27" +dependencies = [ + "cc", + "libc", + "pkg-config", +] + [[package]] name = "mach" version = "0.3.2" @@ -9565,7 +9682,7 @@ dependencies = [ "macro_magic_core", "macro_magic_macros", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -9579,7 +9696,7 @@ dependencies = [ "macro_magic_core_macros", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -9590,7 +9707,7 @@ checksum = "b02abfe41815b5bd98dbd4260173db2c116dda171dc0fe7838cb206333b83308" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -9601,7 +9718,7 @@ checksum = "73ea28ee64b88876bf45277ed9a5817c1817df061a74f2b988971a12570e5869" dependencies = [ "macro_magic_core", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -9643,9 +9760,9 @@ dependencies = [ [[package]] name = "memchr" -version = "2.7.2" +version = "2.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" +checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" [[package]] name = "memfd" @@ -9800,6 +9917,15 @@ dependencies = [ "adler", ] +[[package]] +name = "miniz_oxide" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1" +dependencies = [ + "adler2", +] + [[package]] name = "mio" version = "0.8.9" @@ -9832,7 +9958,7 @@ dependencies = [ "rand_chacha", "rand_distr", "subtle 2.6.1", - "thiserror", + "thiserror 1.0.62", "zeroize", ] @@ -9887,7 +10013,7 @@ dependencies = [ "cfg-if", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -10042,6 +10168,26 @@ dependencies = [ "unsigned-varint 0.8.0", ] +[[package]] +name = "munge" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64142d38c84badf60abf06ff9bd80ad2174306a5b11bd4706535090a30a419df" +dependencies = [ + "munge_macro", +] + +[[package]] +name = "munge_macro" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bb5c1d8184f13f7d0ccbeeca0def2f9a181bce2624302793005f5ca8aa62e5e" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.89", +] + [[package]] name = "nacl" version = "0.5.3" @@ -10150,7 +10296,7 @@ dependencies = [ "anyhow", "byteorder", "paste", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -10164,7 +10310,7 @@ dependencies = [ "log", "netlink-packet-core", "netlink-sys", - "thiserror", + "thiserror 1.0.62", "tokio", ] @@ -10189,7 +10335,7 @@ checksum = "a4a43439bf756eed340bdf8feba761e2d50c7d47175d87545cd5cbe4a137c4d1" dependencies = [ "cc", "libc", - "thiserror", + "thiserror 1.0.62", "winapi", ] @@ -10460,7 +10606,7 @@ checksum = "96667db765a921f7b295ffee8b60472b686a51d4f21c2ee4ffdb94c7013b65a6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -10471,7 +10617,7 @@ checksum = "681030a937600a36906c185595136d26abfebb4aa9c65701cefcaf8578bb982b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -10511,7 +10657,12 @@ version = "0.32.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" dependencies = [ + "crc32fast", + "flate2", + "hashbrown 0.14.5", + "indexmap 2.6.0", "memchr", + "ruzstd", ] [[package]] @@ -10573,7 +10724,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -11126,7 +11277,7 @@ dependencies = [ "pallet-gear-scheduler", "pallet-timestamp", "parity-scale-codec", - "parity-wasm", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", "primitive-types", "scale-info", "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", @@ -11184,7 +11335,7 @@ dependencies = [ "pallet-timestamp", "pallet-transaction-payment", "parity-scale-codec", - "parity-wasm", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", "primitive-types", "scale-info", "sp-io 38.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", @@ -11199,7 +11350,7 @@ version = "1.7.0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -11355,7 +11506,7 @@ dependencies = [ "log", "pallet-balances", "parity-scale-codec", - "parity-wasm", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", "primitive-types", "scale-info", "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", @@ -11835,6 +11986,12 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "parity-wasm" +version = "0.45.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1ad0aff30c1da14b1254fcb2af73e1fa9a28670e584a626f53a369d0e157304" + [[package]] name = "parity-wasm" version = "0.45.0" @@ -11936,6 +12093,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2" dependencies = [ "digest 0.10.7", + "hmac 0.12.1", "password-hash", ] @@ -11976,7 +12134,7 @@ version = "2.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1acb4a4365a13f749a93f1a094a7805e5cfa0955373a9de860d962eaa3a5fe5a" dependencies = [ - "thiserror", + "thiserror 1.0.62", "ucd-trie", ] @@ -12000,7 +12158,7 @@ dependencies = [ "pest_meta", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -12051,7 +12209,7 @@ checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -12142,7 +12300,7 @@ dependencies = [ "polkavm-common", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -12152,7 +12310,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8ba81f7b5faac81e528eb6158a6f3c9e0bb1008e0ffa19653bc8dea925ecb429" dependencies = [ "polkavm-derive-impl", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -12161,7 +12319,7 @@ version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c7be503e60cf56c0eb785f90aaba4b583b36bff00e93997d93fef97f9553c39" dependencies = [ - "gimli 0.28.0", + "gimli 0.28.1", "hashbrown 0.14.5", "log", "object 0.32.2", @@ -12337,7 +12495,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ae005bd773ab59b4725093fd7df83fd7892f7d8eafb48dbd7de6e024e4215f9d" dependencies = [ "proc-macro2", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -12368,7 +12526,7 @@ version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e17d47ce914bf4de440332250b0edd23ce48c005f59fab39d3335866b114f11a" dependencies = [ - "thiserror", + "thiserror 1.0.62", "toml 0.5.11", ] @@ -12424,7 +12582,7 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -12435,7 +12593,7 @@ checksum = "3d1eaa7fa0aa1929ffdf7eeb6eac234dde6268914a14ad44d23521ab6a9b258e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -12446,14 +12604,14 @@ checksum = "834da187cfe638ae8abb0203f0b33e5ccdb02a28e7199f2f47b3e2754f50edca" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] name = "proc-macro2" -version = "1.0.85" +version = "1.0.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22244ce15aa966053a896d1accb3a6e68469b97c7f33f284b99f0d576879fc23" +checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0" dependencies = [ "unicode-ident", ] @@ -12469,7 +12627,7 @@ dependencies = [ "lazy_static", "memchr", "parking_lot 0.12.3", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -12504,7 +12662,7 @@ checksum = "440f724eba9f6996b75d63681b0a92b06947f1457076d503a4d2e2c8f56442b8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -12586,7 +12744,7 @@ dependencies = [ "prost 0.12.6", "prost-types 0.12.6", "regex", - "syn 2.0.71", + "syn 2.0.89", "tempfile", ] @@ -12613,7 +12771,7 @@ dependencies = [ "itertools 0.12.1", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -12649,7 +12807,16 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0738ccf7ea06b608c10564b31debd4f5bc5e197fc8bfe088f68ae5ce81e7a4f1" dependencies = [ - "ptr_meta_derive", + "ptr_meta_derive 0.1.4", +] + +[[package]] +name = "ptr_meta" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe9e76f66d3f9606f44e45598d155cb13ecf09f4a28199e48daf8c8fc937ea90" +dependencies = [ + "ptr_meta_derive 0.3.0", ] [[package]] @@ -12663,6 +12830,17 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "ptr_meta_derive" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca414edb151b4c8d125c12566ab0d74dc9cdba36fb80eb7b848c15f495fd32d1" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.89", +] + [[package]] name = "pulldown-cmark" version = "0.8.0" @@ -12713,7 +12891,7 @@ dependencies = [ "asynchronous-codec 0.6.2", "bytes", "quick-protobuf", - "thiserror", + "thiserror 1.0.62", "unsigned-varint 0.7.2", ] @@ -12725,7 +12903,7 @@ dependencies = [ "asynchronous-codec 0.7.0", "bytes", "quick-protobuf", - "thiserror", + "thiserror 1.0.62", "unsigned-varint 0.8.0", ] @@ -12751,7 +12929,7 @@ dependencies = [ "quinn-udp 0.3.2", "rustc-hash 1.1.0", "rustls 0.20.8", - "thiserror", + "thiserror 1.0.62", "tokio", "tracing", "webpki", @@ -12770,7 +12948,7 @@ dependencies = [ "quinn-udp 0.4.1", "rustc-hash 1.1.0", "rustls 0.21.7", - "thiserror", + "thiserror 1.0.62", "tokio", "tracing", ] @@ -12788,7 +12966,7 @@ dependencies = [ "quinn-udp 0.5.2", "rustc-hash 1.1.0", "rustls 0.23.10", - "thiserror", + "thiserror 1.0.62", "tokio", "tracing", ] @@ -12805,7 +12983,7 @@ dependencies = [ "rustc-hash 1.1.0", "rustls 0.20.8", "slab", - "thiserror", + "thiserror 1.0.62", "tinyvec", "tracing", "webpki", @@ -12823,7 +13001,7 @@ dependencies = [ "rustc-hash 1.1.0", "rustls 0.21.7", "slab", - "thiserror", + "thiserror 1.0.62", "tinyvec", "tracing", ] @@ -12840,7 +13018,7 @@ dependencies = [ "rustc-hash 1.1.0", "rustls 0.23.10", "slab", - "thiserror", + "thiserror 1.0.62", "tinyvec", "tracing", ] @@ -12899,6 +13077,15 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" +[[package]] +name = "rancor" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "caf5f7161924b9d1cea0e4cabc97c372cea92b5f927fc13c6bca67157a0ad947" +dependencies = [ + "ptr_meta 0.3.0", +] + [[package]] name = "rand" version = "0.8.5" @@ -13028,7 +13215,7 @@ dependencies = [ "futures", "jsonrpsee 0.23.2", "serde_json", - "thiserror", + "thiserror 1.0.62", "tokio", "tracing", ] @@ -13068,7 +13255,7 @@ checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b" dependencies = [ "getrandom", "redox_syscall 0.2.16", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -13088,7 +13275,7 @@ checksum = "bcc303e793d3734489387d205e9b186fac9c6cfacedd98cbb2e8a5943595f3e6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -13190,11 +13377,11 @@ dependencies = [ [[package]] name = "rend" -version = "0.4.0" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "581008d2099240d37fb08d77ad713bcaec2c4d89d50b5b21a8bb1996bbab68ab" +checksum = "a35e8a6bf28cd121053a66aa2e6a2e3eaffad4a60012179f0e864aa5ffeff215" dependencies = [ - "bytecheck", + "bytecheck 0.8.0", ] [[package]] @@ -13294,31 +13481,32 @@ dependencies = [ [[package]] name = "rkyv" -version = "0.7.42" +version = "0.8.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0200c8230b013893c0b2d6213d6ec64ed2b9be2e0e016682b7224ff82cff5c58" +checksum = "b11a153aec4a6ab60795f8ebe2923c597b16b05bb1504377451e705ef1a45323" dependencies = [ - "bitvec", - "bytecheck", - "hashbrown 0.12.3", - "indexmap 1.9.3", - "ptr_meta", + "bytecheck 0.8.0", + "bytes", + "hashbrown 0.15.0", + "indexmap 2.6.0", + "munge", + "ptr_meta 0.3.0", + "rancor", "rend", "rkyv_derive", - "seahash", "tinyvec", "uuid", ] [[package]] name = "rkyv_derive" -version = "0.7.42" +version = "0.8.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2e06b915b5c230a17d7a736d1e2e63ee753c256a8614ef3f5147b13a4f5541d" +checksum = "beb382a4d9f53bd5c0be86b10d8179c3f8a14c30bf774ff77096ed6581e35981" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.89", ] [[package]] @@ -13369,7 +13557,7 @@ dependencies = [ "netlink-packet-route", "netlink-proto", "nix 0.24.3", - "thiserror", + "thiserror 1.0.62", "tokio", ] @@ -13785,7 +13973,7 @@ dependencies = [ "log", "sp-core 34.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "sp-wasm-interface 21.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -13815,7 +14003,7 @@ dependencies = [ "sp-keystore 0.40.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", "substrate-prometheus-endpoint", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -13868,7 +14056,7 @@ dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -13908,7 +14096,7 @@ dependencies = [ "sp-panic-handler 13.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", "sp-version 37.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror", + "thiserror 1.0.62", "tokio", ] @@ -13986,7 +14174,7 @@ dependencies = [ "sp-runtime 39.0.1", "sp-state-machine 0.43.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "substrate-prometheus-endpoint", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -14022,7 +14210,7 @@ dependencies = [ "sp-keystore 0.40.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", "substrate-prometheus-endpoint", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -14044,7 +14232,7 @@ dependencies = [ "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-keystore 0.40.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -14065,7 +14253,7 @@ name = "sc-consensus-grandpa" version = "0.30.0" source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409#2686925248a9b8b6a45c10014db48b35671d473b" dependencies = [ - "ahash 0.8.11", + "ahash", "array-bytes", "async-trait", "dyn-clone", @@ -14101,7 +14289,7 @@ dependencies = [ "sp-keystore 0.40.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", "substrate-prometheus-endpoint", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -14121,7 +14309,7 @@ dependencies = [ "sp-blockchain", "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -14205,7 +14393,7 @@ dependencies = [ "sc-allocator", "sp-maybe-compressed-blob 11.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "sp-wasm-interface 21.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "thiserror", + "thiserror 1.0.62", "wasm-instrument", ] @@ -14218,7 +14406,7 @@ dependencies = [ "sp-allocator", "sp-maybe-compressed-blob 11.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-wasm-interface 21.0.1 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror", + "thiserror 1.0.62", "wasm-instrument", ] @@ -14310,7 +14498,7 @@ dependencies = [ "sp-application-crypto 38.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-keystore 0.40.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -14339,7 +14527,7 @@ dependencies = [ "sp-keystore 0.40.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-mixnet", "sp-runtime 39.0.1", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -14384,7 +14572,7 @@ dependencies = [ "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", "substrate-prometheus-endpoint", - "thiserror", + "thiserror 1.0.62", "tokio", "tokio-stream", "unsigned-varint 0.7.2", @@ -14416,7 +14604,7 @@ name = "sc-network-gossip" version = "0.45.0" source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409#2686925248a9b8b6a45c10014db48b35671d473b" dependencies = [ - "ahash 0.8.11", + "ahash", "futures", "futures-timer", "log", @@ -14448,7 +14636,7 @@ dependencies = [ "sp-blockchain", "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -14483,7 +14671,7 @@ dependencies = [ "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", "substrate-prometheus-endpoint", - "thiserror", + "thiserror 1.0.62", "tokio", "tokio-stream", ] @@ -14520,7 +14708,7 @@ dependencies = [ "multiaddr 0.18.1", "multihash 0.19.1", "rand", - "thiserror", + "thiserror 1.0.62", "zeroize", ] @@ -14616,7 +14804,7 @@ dependencies = [ "sp-rpc", "sp-runtime 39.0.1", "sp-version 37.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -14670,7 +14858,7 @@ dependencies = [ "sp-rpc", "sp-runtime 39.0.1", "sp-version 37.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror", + "thiserror 1.0.62", "tokio", "tokio-stream", ] @@ -14733,7 +14921,7 @@ dependencies = [ "static_init", "substrate-prometheus-endpoint", "tempfile", - "thiserror", + "thiserror 1.0.62", "tokio", "tracing", "tracing-futures", @@ -14766,7 +14954,7 @@ dependencies = [ "serde_json", "sp-blockchain", "sp-runtime 39.0.1", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -14806,7 +14994,7 @@ dependencies = [ "sc-utils", "serde", "serde_json", - "thiserror", + "thiserror 1.0.62", "wasm-timer", ] @@ -14833,7 +15021,7 @@ dependencies = [ "sp-rpc", "sp-runtime 39.0.1", "sp-tracing 17.0.1 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror", + "thiserror 1.0.62", "tracing", "tracing-log", "tracing-subscriber", @@ -14847,7 +15035,7 @@ dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -14874,7 +15062,7 @@ dependencies = [ "sp-tracing 17.0.1 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-transaction-pool", "substrate-prometheus-endpoint", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -14890,7 +15078,7 @@ dependencies = [ "sp-blockchain", "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -15020,8 +15208,8 @@ dependencies = [ "proc-macro2", "quote", "scale-info", - "syn 2.0.71", - "thiserror", + "syn 2.0.89", + "thiserror 1.0.62", ] [[package]] @@ -15054,38 +15242,13 @@ dependencies = [ "windows-sys 0.48.0", ] -[[package]] -name = "schemars" -version = "0.8.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09c024468a378b7e36765cd36702b7a90cc3cba11654f6685c8f233408e89e92" -dependencies = [ - "dyn-clone", - "schemars_derive", - "serde", - "serde_json", - "url", -] - -[[package]] -name = "schemars_derive" -version = "0.8.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1eee588578aff73f856ab961cd2f79e36bc45d7ded33a7562adba4667aecc0e" -dependencies = [ - "proc-macro2", - "quote", - "serde_derive_internals", - "syn 2.0.71", -] - [[package]] name = "schnellru" version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c9a8ef13a93c54d20580de1e5c413e624e53121d42fc7e2c11d10ef7f8b02367" dependencies = [ - "ahash 0.8.11", + "ahash", "cfg-if", "hashbrown 0.13.2", ] @@ -15149,15 +15312,9 @@ dependencies = [ "log", "rand", "slab", - "thiserror", + "thiserror 1.0.62", ] -[[package]] -name = "seahash" -version = "4.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b" - [[package]] name = "sec1" version = "0.7.3" @@ -15347,16 +15504,6 @@ dependencies = [ "serde", ] -[[package]] -name = "serde_cbor" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2bef2ebfde456fb76bbcf9f59315333decc4fda0b2b44b420243c11e0f5ec1f5" -dependencies = [ - "half", - "serde", -] - [[package]] name = "serde_derive" version = "1.0.210" @@ -15365,18 +15512,7 @@ checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", -] - -[[package]] -name = "serde_derive_internals" -version = "0.29.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -15399,7 +15535,7 @@ checksum = "8725e1dfadb3a50f7e5ce0b1a540466f6ed3fe7a0fca2ac2b8b831d31316bd00" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -15450,20 +15586,7 @@ dependencies = [ "darling 0.20.10", "proc-macro2", "quote", - "syn 2.0.71", -] - -[[package]] -name = "serde_yaml" -version = "0.9.34+deprecated" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" -dependencies = [ - "indexmap 2.6.0", - "itoa", - "ryu", - "serde", - "unsafe-libyaml", + "syn 2.0.89", ] [[package]] @@ -15622,6 +15745,12 @@ dependencies = [ "wide", ] +[[package]] +name = "simd-adler32" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" + [[package]] name = "simdutf8" version = "0.1.4" @@ -15866,7 +15995,7 @@ dependencies = [ "log", "parity-scale-codec", "sp-wasm-interface-common", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -15889,7 +16018,7 @@ dependencies = [ "sp-state-machine 0.43.0 (registry+https://github.com/rust-lang/crates.io-index)", "sp-trie 37.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "sp-version 37.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -15911,7 +16040,7 @@ dependencies = [ "sp-state-machine 0.43.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-trie 37.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-version 37.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -15926,7 +16055,7 @@ dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -15940,7 +16069,7 @@ dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -16035,7 +16164,7 @@ dependencies = [ "sp-database", "sp-runtime 39.0.1", "sp-state-machine 0.43.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror", + "thiserror 1.0.62", "tracing", ] @@ -16051,7 +16180,7 @@ dependencies = [ "sp-inherents", "sp-runtime 39.0.1", "sp-state-machine 0.43.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -16141,7 +16270,7 @@ dependencies = [ "sp-storage 21.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "ss58-registry", "substrate-bip39 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", - "thiserror", + "thiserror 1.0.62", "tracing", "w3f-bls", "zeroize", @@ -16187,7 +16316,7 @@ dependencies = [ "sp-storage 21.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "ss58-registry", "substrate-bip39 0.6.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror", + "thiserror 1.0.62", "tracing", "w3f-bls", "zeroize", @@ -16248,7 +16377,7 @@ checksum = "b85d0f1f1e44bd8617eb2a48203ee854981229e3e79e6f468c7175d5fd37489b" dependencies = [ "quote", "sp-crypto-hashing 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -16258,7 +16387,7 @@ source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot dependencies = [ "quote", "sp-crypto-hashing 0.1.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -16278,7 +16407,7 @@ checksum = "48d09fa0a5f7299fb81ee25ae3853d26200f7a348148aed6de76be905c007dbe" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -16288,7 +16417,7 @@ source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -16334,7 +16463,7 @@ dependencies = [ "parity-scale-codec", "scale-info", "sp-runtime 39.0.1", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -16429,7 +16558,7 @@ version = "11.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0c768c11afbe698a090386876911da4236af199cd38a5866748df4d8628aeff" dependencies = [ - "thiserror", + "thiserror 1.0.62", "zstd 0.12.4", ] @@ -16438,7 +16567,7 @@ name = "sp-maybe-compressed-blob" version = "11.0.0" source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409#2686925248a9b8b6a45c10014db48b35671d473b" dependencies = [ - "thiserror", + "thiserror 1.0.62", "zstd 0.12.4", ] @@ -16631,7 +16760,7 @@ dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -16644,7 +16773,7 @@ dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -16690,7 +16819,7 @@ dependencies = [ "sp-externalities 0.29.0 (registry+https://github.com/rust-lang/crates.io-index)", "sp-panic-handler 13.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "sp-trie 37.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "thiserror", + "thiserror 1.0.62", "tracing", "trie-db", ] @@ -16710,7 +16839,7 @@ dependencies = [ "sp-externalities 0.29.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-panic-handler 13.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-trie 37.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror", + "thiserror 1.0.62", "tracing", "trie-db", ] @@ -16735,7 +16864,7 @@ dependencies = [ "sp-externalities 0.29.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", "sp-runtime-interface 28.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror", + "thiserror 1.0.62", "x25519-dalek", ] @@ -16784,7 +16913,7 @@ dependencies = [ "parity-scale-codec", "sp-inherents", "sp-runtime 39.0.1", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -16839,7 +16968,7 @@ version = "37.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6282aef9f4b6ecd95a67a45bcdb67a71f4a4155c09a53c10add4ffe823db18cd" dependencies = [ - "ahash 0.8.11", + "ahash", "hash-db", "lazy_static", "memory-db", @@ -16851,7 +16980,7 @@ dependencies = [ "schnellru", "sp-core 34.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "sp-externalities 0.29.0 (registry+https://github.com/rust-lang/crates.io-index)", - "thiserror", + "thiserror 1.0.62", "tracing", "trie-db", "trie-root", @@ -16862,7 +16991,7 @@ name = "sp-trie" version = "37.0.0" source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409#2686925248a9b8b6a45c10014db48b35671d473b" dependencies = [ - "ahash 0.8.11", + "ahash", "hash-db", "lazy_static", "memory-db", @@ -16874,7 +17003,7 @@ dependencies = [ "schnellru", "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-externalities 0.29.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror", + "thiserror 1.0.62", "tracing", "trie-db", "trie-root", @@ -16888,14 +17017,14 @@ checksum = "d521a405707b5be561367cd3d442ff67588993de24062ce3adefcf8437ee9fe1" dependencies = [ "impl-serde", "parity-scale-codec", - "parity-wasm", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", "scale-info", "serde", "sp-crypto-hashing-proc-macro 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "sp-runtime 39.0.2", "sp-std 14.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "sp-version-proc-macro 14.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -16905,14 +17034,14 @@ source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot dependencies = [ "impl-serde", "parity-scale-codec", - "parity-wasm", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", "scale-info", "serde", "sp-crypto-hashing-proc-macro 0.1.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", "sp-std 14.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-version-proc-macro 14.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror", + "thiserror 1.0.62", ] [[package]] @@ -16924,7 +17053,7 @@ dependencies = [ "parity-scale-codec", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -16935,7 +17064,7 @@ dependencies = [ "parity-scale-codec", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -17135,7 +17264,7 @@ dependencies = [ "sctp-proto", "serde", "sha-1 0.10.1", - "thiserror", + "thiserror 1.0.62", "tracing", ] @@ -17239,7 +17368,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -17252,7 +17381,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -17315,7 +17444,7 @@ dependencies = [ "hyper-util", "log", "prometheus", - "thiserror", + "thiserror 1.0.62", "tokio", ] @@ -17391,7 +17520,7 @@ dependencies = [ "jobserver", "merkleized-metadata", "parity-scale-codec", - "parity-wasm", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", "polkavm-linker", "sc-executor 0.40.1 (registry+https://github.com/rust-lang/crates.io-index)", "sp-core 34.0.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -17448,7 +17577,7 @@ dependencies = [ "subxt-lightclient", "subxt-macro", "subxt-metadata", - "thiserror", + "thiserror 1.0.62", "tokio-util", "tracing", "url", @@ -17470,8 +17599,8 @@ dependencies = [ "scale-info", "scale-typegen", "subxt-metadata", - "syn 2.0.71", - "thiserror", + "syn 2.0.89", + "thiserror 1.0.62", "tokio", ] @@ -17513,7 +17642,7 @@ dependencies = [ "serde", "serde_json", "smoldot-light", - "thiserror", + "thiserror 1.0.62", "tokio", "tokio-stream", "tracing", @@ -17531,7 +17660,7 @@ dependencies = [ "quote", "scale-typegen", "subxt-codegen", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -17560,9 +17689,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.71" +version = "2.0.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b146dcf730474b4bcd16c311627b31ede9ab149045db4d6088b3becaea046462" +checksum = "44d46482f1c1c87acd84dea20c1bf5ebff4c757009ed6bf19cfd36fb10e92c4e" dependencies = [ "proc-macro2", "quote", @@ -17578,7 +17707,7 @@ dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -17616,7 +17745,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -17672,9 +17801,9 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "tar" -version = "0.4.41" +version = "0.4.43" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb797dad5fb5b76fcf519e702f4a589483b5ef06567f160c392832c1f5e44909" +checksum = "c65998313f8e17d0d553d28f91a0df93e4dbbbf770279c7bc21ca0f09ea1a1f6" dependencies = [ "filetime", "libc", @@ -17755,7 +17884,16 @@ version = "1.0.62" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f2675633b1499176c2dff06b0856a27976a8f9d436737b4cf4f312d4d91d8bbb" dependencies = [ - "thiserror-impl", + "thiserror-impl 1.0.62", +] + +[[package]] +name = "thiserror" +version = "2.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c006c85c7651b3cf2ada4584faa36773bd07bac24acfb39f3c431b36d7e667aa" +dependencies = [ + "thiserror-impl 2.0.3", ] [[package]] @@ -17766,7 +17904,18 @@ checksum = "d20468752b09f49e909e55a5d338caa8bedf615594e9d80bc4c565d30faf798c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", +] + +[[package]] +name = "thiserror-impl" +version = "2.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f077553d607adc1caf65430528a576c757a71ed73944b66ebb58ef2bbd243568" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.89", ] [[package]] @@ -17886,7 +18035,7 @@ checksum = "5f5ae998a069d4b5aba8ee9dad856af7d520c3699e6159b185c2acd48155d39a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -18021,18 +18170,6 @@ dependencies = [ "serde", ] -[[package]] -name = "toml" -version = "0.7.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd79e69d3b627db300ff956027cc6c3798cef26d22526befdfcd12feeb6d2257" -dependencies = [ - "serde", - "serde_spanned", - "toml_datetime", - "toml_edit 0.19.15", -] - [[package]] name = "toml" version = "0.8.14" @@ -18054,19 +18191,6 @@ dependencies = [ "serde", ] -[[package]] -name = "toml_edit" -version = "0.19.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" -dependencies = [ - "indexmap 2.6.0", - "serde", - "serde_spanned", - "toml_datetime", - "winnow 0.5.15", -] - [[package]] name = "toml_edit" version = "0.21.1" @@ -18099,9 +18223,14 @@ checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" dependencies = [ "futures-core", "futures-util", + "hdrhistogram", + "indexmap 1.9.3", "pin-project", "pin-project-lite", + "rand", + "slab", "tokio", + "tokio-util", "tower-layer", "tower-service", "tracing", @@ -18168,7 +18297,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3566e8ce28cc0a3fe42519fc80e6b4c943cc4c8cef275620eb8dac2d3d4e06cf" dependencies = [ "crossbeam-channel", - "thiserror", + "thiserror 1.0.62", "time", "tracing-subscriber", ] @@ -18181,7 +18310,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -18298,7 +18427,7 @@ dependencies = [ "rand", "smallvec", "socket2 0.4.9", - "thiserror", + "thiserror 1.0.62", "tinyvec", "tokio", "tracing", @@ -18323,7 +18452,7 @@ dependencies = [ "once_cell", "rand", "smallvec", - "thiserror", + "thiserror 1.0.62", "tinyvec", "tokio", "tracing", @@ -18345,7 +18474,7 @@ dependencies = [ "rand", "resolv-conf", "smallvec", - "thiserror", + "thiserror 1.0.62", "tokio", "tracing", "trust-dns-proto 0.23.2", @@ -18393,7 +18522,7 @@ dependencies = [ "rand", "rustls 0.21.7", "sha1", - "thiserror", + "thiserror 1.0.62", "url", "utf-8", ] @@ -18414,7 +18543,7 @@ dependencies = [ "rustls 0.23.10", "rustls-pki-types", "sha1", - "thiserror", + "thiserror 1.0.62", "utf-8", ] @@ -18537,12 +18666,6 @@ dependencies = [ "subtle 2.6.1", ] -[[package]] -name = "unsafe-libyaml" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861" - [[package]] name = "unsigned-varint" version = "0.7.2" @@ -18577,6 +18700,22 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" +[[package]] +name = "ureq" +version = "2.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b74fc6b57825be3373f7054754755f03ac3a8f5d70015ccad699ba2029956f4a" +dependencies = [ + "base64 0.22.1", + "flate2", + "log", + "once_cell", + "rustls 0.23.10", + "rustls-pki-types", + "url", + "webpki-roots 0.26.3", +] + [[package]] name = "url" version = "2.5.2" @@ -18759,7 +18898,7 @@ dependencies = [ "rand_core", "sha2 0.10.8", "sha3", - "thiserror", + "thiserror 1.0.62", "zeroize", ] @@ -18878,7 +19017,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", "wasm-bindgen-shared", ] @@ -18912,7 +19051,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -18934,8 +19073,9 @@ dependencies = [ [[package]] name = "wasm-encoder" -version = "0.35.0" -source = "git+https://github.com/gear-tech/wasm-tools.git?branch=gear-stable#ffe9abee63ad640c051d50515cedee7f67f31884" +version = "0.220.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebf48234b389415b226a4daef6562933d38c7b28a8b8f64c5c4130dad1561ab7" dependencies = [ "leb128", ] @@ -18946,15 +19086,16 @@ version = "0.1.0" dependencies = [ "clap 4.5.13", "hex", - "parity-wasm", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "wasm-instrument" version = "0.4.0" -source = "git+https://github.com/gear-tech/wasm-instrument?branch=v0.4.0-sign-ext#e57b713873d4364e41ed495893a2f06a80cca5ab" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a47ecb37b9734d1085eaa5ae1a81e60801fd8c28d4cabdd8aedb982021918bc" dependencies = [ - "parity-wasm", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -18968,7 +19109,7 @@ dependencies = [ "strum 0.24.1", "strum_macros 0.24.3", "tempfile", - "thiserror", + "thiserror 1.0.62", "wasm-opt-cxx-sys", "wasm-opt-sys", ] @@ -19005,20 +19146,21 @@ dependencies = [ "env_logger", "gear-wasm-builder", "log", - "parity-wasm", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "wasm-smith" -version = "0.12.21" -source = "git+https://github.com/gear-tech/wasm-tools.git?branch=gear-stable#ffe9abee63ad640c051d50515cedee7f67f31884" +version = "0.220.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f7d273cf1df3c10f9067cb48796d1a6d1daa3ceb99c3f07d822e5bdeefb34f9" dependencies = [ + "anyhow", "arbitrary", "flagset", "indexmap 2.6.0", "leb128", - "wasm-encoder 0.35.0", - "wasmparser 0.115.0", + "wasm-encoder 0.220.0", ] [[package]] @@ -19038,13 +19180,14 @@ dependencies = [ [[package]] name = "wasmer" -version = "4.3.5" +version = "5.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3a6e0f73e5ae361fe64db607eaf4ab2381d88ad2c1b0bb8cf254cf35d894687" +checksum = "9817a0dd105a992d9f3e8831370acddbdf3848e5357086a569dc4fb07c2aa57d" dependencies = [ + "bindgen 0.70.1", "bytes", "cfg-if", - "derivative", + "cmake", "indexmap 1.9.3", "js-sys", "more-asserts", @@ -19052,35 +19195,40 @@ dependencies = [ "serde", "serde-wasm-bindgen", "shared-buffer", + "tar", "target-lexicon", - "thiserror", + "thiserror 1.0.62", "tracing", + "ureq", "wasm-bindgen", "wasmer-compiler", + "wasmer-compiler-cranelift", "wasmer-compiler-singlepass", "wasmer-derive", "wasmer-types", "wasmer-vm", - "winapi", + "windows-sys 0.59.0", + "xz", + "zip", ] [[package]] name = "wasmer-cache" -version = "4.3.5" +version = "5.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79fd0889f8844b7c70b8ee8fbf1d1f6ccff99399c6f3d3627048cde04b1ac493" +checksum = "f83d5afd20189716fca5e4933c1b255dcd82db86b51a0f8ae040c29821a68349" dependencies = [ "blake3", "hex", - "thiserror", + "thiserror 1.0.62", "wasmer", ] [[package]] name = "wasmer-compiler" -version = "4.3.5" +version = "5.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb1e7c79507f5d55f1afd99984717e8380440cd98e13d542e4d00661f986f2d4" +checksum = "0261d34a6f61d666e4f954254cf486371117db3e8a875767c5e3f21e45eb43aa" dependencies = [ "backtrace", "bytes", @@ -19090,32 +19238,54 @@ dependencies = [ "lazy_static", "leb128", "libc", - "memmap2 0.5.10", + "memmap2 0.6.2", "more-asserts", + "object 0.32.2", "region", "rkyv", "self_cell", "shared-buffer", "smallvec", - "thiserror", + "target-lexicon", + "thiserror 1.0.62", "wasmer-types", "wasmer-vm", - "wasmparser 0.121.2", - "winapi", + "wasmparser 0.216.0", + "windows-sys 0.59.0", "xxhash-rust", ] +[[package]] +name = "wasmer-compiler-cranelift" +version = "5.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fdc984c651c29e30ec4f6da82ca472b9d2dd50dfe4c9edd84628e59f876ea2d0" +dependencies = [ + "cranelift-codegen 0.110.2", + "cranelift-entity 0.110.2", + "cranelift-frontend 0.110.2", + "gimli 0.28.1", + "itertools 0.12.1", + "more-asserts", + "rayon", + "smallvec", + "target-lexicon", + "tracing", + "wasmer-compiler", + "wasmer-types", +] + [[package]] name = "wasmer-compiler-singlepass" -version = "4.3.5" +version = "5.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc490f011e855eb5e31475ff3e9efa83840cc0ed2f8322dfaca18627df0a9f3c" +checksum = "49e697fde8463279e337e24fe1508c1e593866f805f8107762119139daa5300e" dependencies = [ "byteorder", "dynasm", "dynasmrt", "enumset", - "gimli 0.26.2", + "gimli 0.28.1", "lazy_static", "more-asserts", "rayon", @@ -19124,35 +19294,13 @@ dependencies = [ "wasmer-types", ] -[[package]] -name = "wasmer-config" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54a0f70c177b1c5062cfe0f5308c3317751796fef9403c22a0cd7b4cacd4ccd8" -dependencies = [ - "anyhow", - "bytesize", - "derive_builder", - "hex", - "indexmap 2.6.0", - "schemars", - "semver 1.0.18", - "serde", - "serde_cbor", - "serde_json", - "serde_yaml", - "thiserror", - "toml 0.8.14", - "url", -] - [[package]] name = "wasmer-derive" -version = "4.3.5" +version = "5.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac6b0b0580cfa1fc7ad58cca3626a742f2b2e5ccd51cfc5de43e8edb0d1daa4c" +checksum = "7a2e5a149301403084c3198b68cd635b7f210e8d26f533218a7a68b6d20b441e" dependencies = [ - "proc-macro-error", + "proc-macro-error2", "proc-macro2", "quote", "syn 1.0.109", @@ -19160,41 +19308,39 @@ dependencies = [ [[package]] name = "wasmer-types" -version = "4.3.5" +version = "5.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "576442cc3d302ca215fd40aa7826a078571dca7eaa773d8cdedca14a2ec7c9a1" +checksum = "d09f305bc775871b551c5907facaadc8e7ddc0845b0ccd18ccb2c046d0f9b7f0" dependencies = [ - "bytecheck", + "bytecheck 0.6.11", "enum-iterator 0.7.0", "enumset", "getrandom", "hex", - "indexmap 1.9.3", + "indexmap 2.6.0", "more-asserts", "rkyv", "sha2 0.10.8", "target-lexicon", - "thiserror", - "webc", + "thiserror 1.0.62", "xxhash-rust", ] [[package]] name = "wasmer-vm" -version = "4.3.5" +version = "5.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6483035d1df84a978cd6c6a35878e913dc8ec6311f8712548a922a75e87957ba" +checksum = "0ab1b03c3cb791e94f63a44377fe35936496d35230d8219a36af11b090940c99" dependencies = [ "backtrace", "cc", "cfg-if", "corosensei", "crossbeam-queue", - "dashmap 5.5.3", - "derivative", + "dashmap 6.0.1", "enum-iterator 0.7.0", "fnv", - "indexmap 1.9.3", + "indexmap 2.6.0", "lazy_static", "libc", "mach2", @@ -19202,9 +19348,9 @@ dependencies = [ "more-asserts", "region", "scopeguard", - "thiserror", + "thiserror 1.0.62", "wasmer-types", - "winapi", + "windows-sys 0.59.0", ] [[package]] @@ -19212,7 +19358,7 @@ name = "wasmi" version = "0.13.2" source = "git+https://github.com/gear-tech/wasmi?branch=v0.13.2-sign-ext#3a0b1022377919e62aadf4d78b762abd1c3e9a04" dependencies = [ - "parity-wasm", + "parity-wasm 0.45.0 (git+https://github.com/gear-tech/parity-wasm?branch=v0.45.0-sign-ext)", "wasmi-validation", "wasmi_core 0.2.1", ] @@ -19251,7 +19397,7 @@ name = "wasmi-validation" version = "0.5.0" source = "git+https://github.com/gear-tech/wasmi?branch=v0.13.2-sign-ext#3a0b1022377919e62aadf4d78b762abd1c3e9a04" dependencies = [ - "parity-wasm", + "parity-wasm 0.45.0 (git+https://github.com/gear-tech/parity-wasm?branch=v0.45.0-sign-ext)", ] [[package]] @@ -19266,7 +19412,7 @@ version = "0.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0d0fd5f4f2c4fe0c98554bb7293108ed2b1d0c124dce0974f999de7d517d37bc" dependencies = [ - "ahash 0.8.11", + "ahash", "hashbrown 0.14.5", "string-interner", ] @@ -19329,8 +19475,9 @@ dependencies = [ [[package]] name = "wasmparser" -version = "0.115.0" -source = "git+https://github.com/gear-tech/wasm-tools.git?branch=gear-stable#ffe9abee63ad640c051d50515cedee7f67f31884" +version = "0.118.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77f1154f1ab868e2a01d9834a805faca7bf8b50d041b4ca714d005d0dab1c50c" dependencies = [ "indexmap 2.6.0", "semver 1.0.18", @@ -19338,19 +19485,22 @@ dependencies = [ [[package]] name = "wasmparser" -version = "0.118.2" +version = "0.216.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77f1154f1ab868e2a01d9834a805faca7bf8b50d041b4ca714d005d0dab1c50c" +checksum = "bcdee6bea3619d311fb4b299721e89a986c3470f804b6d534340e412589028e3" dependencies = [ + "ahash", + "bitflags 2.5.0", + "hashbrown 0.14.5", "indexmap 2.6.0", "semver 1.0.18", ] [[package]] name = "wasmparser" -version = "0.121.2" +version = "0.220.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dbe55c8f9d0dbd25d9447a5a889ff90c0cc3feaa7395310d3d826b2c703eaab" +checksum = "e246c2772ce3ebc83f89a2d4487ac5794cad6c309b2071818a88c7db7c36d87b" dependencies = [ "bitflags 2.5.0", "indexmap 2.6.0", @@ -19465,16 +19615,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b1cefde0cce8cb700b1b21b6298a3837dba46521affd7b8c38a9ee2c869eee04" dependencies = [ "anyhow", - "cranelift-codegen", - "cranelift-entity", - "cranelift-frontend", + "cranelift-codegen 0.95.1", + "cranelift-entity 0.95.1", + "cranelift-frontend 0.95.1", "cranelift-native", "cranelift-wasm", "gimli 0.27.3", "log", "object 0.30.4", "target-lexicon", - "thiserror", + "thiserror 1.0.62", "wasmparser 0.102.0", "wasmtime-cranelift-shared", "wasmtime-environ", @@ -19487,7 +19637,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cd041e382ef5aea1b9fc78442394f1a4f6d676ce457e7076ca4cb3f397882f8b" dependencies = [ "anyhow", - "cranelift-codegen", + "cranelift-codegen 0.95.1", "cranelift-native", "gimli 0.27.3", "object 0.30.4", @@ -19502,14 +19652,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a990198cee4197423045235bf89d3359e69bd2ea031005f4c2d901125955c949" dependencies = [ "anyhow", - "cranelift-entity", + "cranelift-entity 0.95.1", "gimli 0.27.3", "indexmap 1.9.3", "log", "object 0.30.4", "serde", "target-lexicon", - "thiserror", + "thiserror 1.0.62", "wasmparser 0.102.0", "wasmtime-types", ] @@ -19605,9 +19755,9 @@ version = "8.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a4f6fffd2a1011887d57f07654dd112791e872e3ff4a2e626aee8059ee17f06f" dependencies = [ - "cranelift-entity", + "cranelift-entity 0.95.1", "serde", - "thiserror", + "thiserror 1.0.62", "wasmparser 0.102.0", ] @@ -19663,35 +19813,6 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "webc" -version = "6.0.0-rc1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1fc686c7b43c9bc630a499f6ae1f0a4c4bd656576a53ae8a147b0cc9bc983ad" -dependencies = [ - "anyhow", - "base64 0.21.7", - "bytes", - "cfg-if", - "document-features", - "flate2", - "indexmap 1.9.3", - "libc", - "once_cell", - "semver 1.0.18", - "serde", - "serde_cbor", - "serde_json", - "sha2 0.10.8", - "shared-buffer", - "tar", - "tempfile", - "thiserror", - "toml 0.7.8", - "url", - "wasmer-config", -] - [[package]] name = "webpki" version = "0.22.4" @@ -19846,7 +19967,7 @@ checksum = "2bbd5b46c938e506ecbce286b6628a02171d56153ba733b6c741fc627ec9579b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -19857,7 +19978,7 @@ checksum = "053c4c462dc91d3b1504c6fe5a726dd15e216ba718e84a0e46a88fbe5ded3515" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -19890,19 +20011,6 @@ dependencies = [ "windows-targets 0.52.6", ] -[[package]] -name = "windows-sys" -version = "0.33.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43dbb096663629518eb1dfa72d80243ca5a6aca764cae62a2df70af760a9be75" -dependencies = [ - "windows_aarch64_msvc 0.33.0", - "windows_i686_gnu 0.33.0", - "windows_i686_msvc 0.33.0", - "windows_x86_64_gnu 0.33.0", - "windows_x86_64_msvc 0.33.0", -] - [[package]] name = "windows-sys" version = "0.42.0" @@ -20018,12 +20126,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" -[[package]] -name = "windows_aarch64_msvc" -version = "0.33.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd761fd3eb9ab8cc1ed81e56e567f02dd82c4c837e48ac3b2181b9ffc5060807" - [[package]] name = "windows_aarch64_msvc" version = "0.42.2" @@ -20042,12 +20144,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" -[[package]] -name = "windows_i686_gnu" -version = "0.33.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cab0cf703a96bab2dc0c02c0fa748491294bf9b7feb27e1f4f96340f208ada0e" - [[package]] name = "windows_i686_gnu" version = "0.42.2" @@ -20072,12 +20168,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" -[[package]] -name = "windows_i686_msvc" -version = "0.33.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8cfdbe89cc9ad7ce618ba34abc34bbb6c36d99e96cae2245b7943cd75ee773d0" - [[package]] name = "windows_i686_msvc" version = "0.42.2" @@ -20096,12 +20186,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" -[[package]] -name = "windows_x86_64_gnu" -version = "0.33.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4dd9b0c0e9ece7bb22e84d70d01b71c6d6248b81a3c60d11869451b4cb24784" - [[package]] name = "windows_x86_64_gnu" version = "0.42.2" @@ -20138,12 +20222,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" -[[package]] -name = "windows_x86_64_msvc" -version = "0.33.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff1e4aa646495048ec7f3ffddc411e1d829c026a2ec62b39da15c1055e406eaa" - [[package]] name = "windows_x86_64_msvc" version = "0.42.2" @@ -20218,7 +20296,7 @@ dependencies = [ "pharos", "rustc_version 0.4.0", "send_wrapper", - "thiserror", + "thiserror 1.0.62", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", @@ -20258,7 +20336,7 @@ dependencies = [ "nom", "oid-registry 0.6.1", "rusticata-macros", - "thiserror", + "thiserror 1.0.62", "time", ] @@ -20275,7 +20353,7 @@ dependencies = [ "nom", "oid-registry 0.7.0", "rusticata-macros", - "thiserror", + "thiserror 1.0.62", "time", ] @@ -20311,6 +20389,24 @@ version = "0.8.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "63658493314859b4dfdf3fb8c1defd61587839def09582db50b8a4e93afca6bb" +[[package]] +name = "xz" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c887690ff2a2e233e8e49633461521f98ec57fbff9d59a884c9a4f04ec1da34" +dependencies = [ + "xz2", +] + +[[package]] +name = "xz2" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "388c44dc09d76f1536602ead6d325eb532f5c122f17782bd57fb47baeeb767e2" +dependencies = [ + "lzma-sys", +] + [[package]] name = "yamux" version = "0.12.1" @@ -20415,7 +20511,7 @@ checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", ] [[package]] @@ -20435,7 +20531,50 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.71", + "syn 2.0.89", +] + +[[package]] +name = "zip" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "99d52293fc86ea7cf13971b3bb81eb21683636e7ae24c729cdaf1b7c4157a352" +dependencies = [ + "aes 0.8.4", + "arbitrary", + "bzip2", + "constant_time_eq 0.3.1", + "crc32fast", + "crossbeam-utils", + "deflate64", + "displaydoc", + "flate2", + "hmac 0.12.1", + "indexmap 2.6.0", + "lzma-rs", + "memchr", + "pbkdf2", + "rand", + "sha1", + "thiserror 2.0.3", + "time", + "zeroize", + "zopfli", + "zstd 0.13.2", +] + +[[package]] +name = "zopfli" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5019f391bac5cf252e93bbcc53d039ffd62c7bfb7c150414d61369afe57e946" +dependencies = [ + "bumpalo", + "crc32fast", + "lockfree-object-pool", + "log", + "once_cell", + "simd-adler32", ] [[package]] @@ -20456,6 +20595,15 @@ dependencies = [ "zstd-safe 6.0.6", ] +[[package]] +name = "zstd" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcf2b778a664581e31e389454a7072dab1647606d44f7feea22cd5abb9c9f3f9" +dependencies = [ + "zstd-safe 7.2.1", +] + [[package]] name = "zstd-safe" version = "5.0.2+zstd.1.5.2" @@ -20476,6 +20624,15 @@ dependencies = [ "zstd-sys", ] +[[package]] +name = "zstd-safe" +version = "7.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54a3ab4db68cea366acc5c897c7b4d4d1b8994a9cd6e6f841f8964566a419059" +dependencies = [ + "zstd-sys", +] + [[package]] name = "zstd-sys" version = "2.0.10+zstd.1.5.6" diff --git a/gcli/src/meta/executor.rs b/gcli/src/meta/executor.rs index 30151506c11..15df66fea62 100644 --- a/gcli/src/meta/executor.rs +++ b/gcli/src/meta/executor.rs @@ -21,7 +21,9 @@ //! is because they are for the on-chain environment data. use anyhow::{anyhow, Context, Result}; -use wasmer::{Engine, FunctionEnv, Imports, Instance, Memory, MemoryType, Module, Store}; +use wasmer::{ + Engine, FunctionEnv, Imports, Instance, Memory, MemoryType, Module, Singlepass, Store, +}; /// HostState for the WASM executor #[derive(Default)] @@ -37,7 +39,7 @@ pub fn call_metadata(wasm: &[u8]) -> Result> { /// Executes the WASM code. fn execute(wasm: &[u8], method: &str) -> Result> { - let engine = Engine::default(); + let engine = Engine::from(Singlepass::default()); let module = Module::new(&engine, wasm).unwrap(); let mut store = Store::new(engine); diff --git a/sandbox/sandbox/Cargo.toml b/sandbox/sandbox/Cargo.toml index 57f5fa61b36..1d74f0b7ae9 100644 --- a/sandbox/sandbox/Cargo.toml +++ b/sandbox/sandbox/Cargo.toml @@ -17,7 +17,7 @@ targets = ["x86_64-unknown-linux-gnu"] [dependencies] codec.workspace = true log.workspace = true -wasmer = { workspace = true, optional = true } +wasmer = { workspace = true, optional = true, features = ["cranelift"] } wasmer-types = { workspace = true, optional = true } wasmer-vm = { workspace = true, optional = true } wasmer-compiler = { workspace = true, optional = true } diff --git a/sandbox/sandbox/src/embedded_executor.rs b/sandbox/sandbox/src/embedded_executor.rs index 92fec1d85f3..b4ca8451b8a 100644 --- a/sandbox/sandbox/src/embedded_executor.rs +++ b/sandbox/sandbox/src/embedded_executor.rs @@ -204,7 +204,7 @@ impl Store { impl SandboxStore for Store { fn new(state: T) -> Self { - let mut engine = Engine::from(wasmer::Singlepass::new()); + let mut engine = Engine::from(wasmer::Cranelift::new()); let tunables = CustomTunables::for_target(engine.target()) // make stack size bigger for fuzzer .with_wasm_stack_size(16 * 1024 * 1024); diff --git a/utils/wasm-instrument/Cargo.toml b/utils/wasm-instrument/Cargo.toml index 050e80ab410..31513c4fb38 100644 --- a/utils/wasm-instrument/Cargo.toml +++ b/utils/wasm-instrument/Cargo.toml @@ -18,7 +18,9 @@ derive_more.workspace = true enum-iterator.workspace = true # TODO: move in a proper place +# parity-wasm parity-wasm = { workspace = true, features = ["sign_ext", "multi_value"] } +# parity-wasm gear-wasm = { version = "0.45.1", default-features = false, features = ["sign_ext", "multi_value"] } [dev-dependencies] From e2c8398f91965c4eca8d003d06b6c787908843ef Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Thu, 28 Nov 2024 19:04:18 +0100 Subject: [PATCH 04/26] Add multivalue bench check --- pallets/gear/src/benchmarking/code.rs | 6 +-- pallets/gear/src/benchmarking/mod.rs | 7 ++- pallets/gear/src/benchmarking/tests/mod.rs | 51 ++++++++++++++++++++++ 3 files changed, 60 insertions(+), 4 deletions(-) diff --git a/pallets/gear/src/benchmarking/code.rs b/pallets/gear/src/benchmarking/code.rs index b7030653c4b..0d148788c57 100644 --- a/pallets/gear/src/benchmarking/code.rs +++ b/pallets/gear/src/benchmarking/code.rs @@ -90,7 +90,7 @@ pub struct ModuleDefinition { pub aux_body: Option, /// The amount of I64 arguments the aux function should have. pub aux_arg_num: u32, - pub aux_res: Option, + pub aux_res: Vec, /// Create a table containing function pointers. pub table: Option, /// Create a type section with the specified amount of types. @@ -231,8 +231,8 @@ where for _ in 0..def.aux_arg_num { signature = signature.with_param(ValueType::I64); } - if let Some(res) = def.aux_res { - signature = signature.with_result(res); + for ty in def.aux_res { + signature = signature.with_result(ty); } program = signature.build().with_body(body).build(); } diff --git a/pallets/gear/src/benchmarking/mod.rs b/pallets/gear/src/benchmarking/mod.rs index f565967b93b..a8ffe889e72 100644 --- a/pallets/gear/src/benchmarking/mod.rs +++ b/pallets/gear/src/benchmarking/mod.rs @@ -326,6 +326,11 @@ benchmarks! { tests::check_stack_overflow::(); }: {} + #[extra] + check_wasm_proposals { + tests::wasm_multivalue_proposal::(); + }: {} + #[extra] check_lazy_pages_all { tests::lazy_pages::lazy_pages_charging::(); @@ -1769,7 +1774,7 @@ benchmarks! { let r in 0 .. INSTR_BENCHMARK_BATCHES; let mut sbox = Sandbox::from(&WasmModule::::from(ModuleDefinition { aux_body: Some(body::from_instructions(vec![Instruction::I64Const(0x7ffffffff3ffffff)])), - aux_res: Some(ValueType::I64), + aux_res: vec![ValueType::I64], handle_body: Some(body::repeated(r * INSTR_BENCHMARK_BATCH_SIZE, &[ Instruction::Call(OFFSET_AUX), Instruction::Drop, diff --git a/pallets/gear/src/benchmarking/tests/mod.rs b/pallets/gear/src/benchmarking/tests/mod.rs index 639fb5a2dcf..2514e9d55ab 100644 --- a/pallets/gear/src/benchmarking/tests/mod.rs +++ b/pallets/gear/src/benchmarking/tests/mod.rs @@ -81,3 +81,54 @@ where )) ); } + +pub fn wasm_multivalue_proposal() +where + T: Config, + T::AccountId: Origin, +{ + let aux_instrs = vec![Instruction::GetLocal(0), Instruction::GetLocal(1)]; + + let init_instrs = vec![ + Instruction::I64Const(0), + Instruction::I64Const(1), + Instruction::Call(OFFSET_AUX), + Instruction::Drop, + Instruction::Drop, + ]; + + let module: WasmModule = ModuleDefinition { + memory: Some(ImportedMemory::new(DEFAULT_MEM_SIZE)), + init_body: Some(body::from_instructions(init_instrs)), + aux_body: Some(body::from_instructions(aux_instrs)), + aux_arg_num: 2, + aux_res: vec![ValueType::I64, ValueType::I64], + ..Default::default() + } + .into(); + + let source = benchmarking::account("instantiator", 0, 0); + let exec = common_utils::prepare_exec::( + source, + HandleKind::Init(module.code), + Default::default(), + Default::default(), + ) + .unwrap(); + + let dispatch = + core_processor::process::(&exec.block_config, exec.context, exec.random_data) + .unwrap() + .into_iter() + .find_map(|note| match note { + JournalNote::SendDispatch { dispatch, .. } => Some(dispatch), + _ => None, + }) + .unwrap(); + + let code = dispatch + .reply_details() + .expect("reply details") + .to_reply_code(); + assert_eq!(code, ReplyCode::Success(SuccessReplyReason::Auto)); +} From 22ba0f15a55172094465d0bc3f07f74ba2f9abdb Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Thu, 28 Nov 2024 21:11:50 +0100 Subject: [PATCH 05/26] Add bench for `call_indirect` results --- Cargo.lock | 3 +-- Cargo.toml | 2 ++ core/src/gas_metering/rules.rs | 1 + pallets/gear/src/benchmarking/code.rs | 3 +++ pallets/gear/src/benchmarking/mod.rs | 22 ++++++++++++++++++++++ pallets/gear/src/schedule.rs | 24 ++++++++++++++++++++---- pallets/gear/src/weights.rs | 21 +++++++++++++++++++++ runtime/vara/src/tests.rs | 1 + runtime/vara/src/weights/pallet_gear.rs | 21 +++++++++++++++++++++ utils/regression-analysis/src/main.rs | 1 + 10 files changed, 93 insertions(+), 6 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 7e6b3ba432a..b957a6fff2b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -19092,8 +19092,7 @@ dependencies = [ [[package]] name = "wasm-instrument" version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a47ecb37b9734d1085eaa5ae1a81e60801fd8c28d4cabdd8aedb982021918bc" +source = "git+https://github.com/gear-tech/wasm-instrument?branch=v0.4.0-sign-ext#e57b713873d4364e41ed495893a2f06a80cca5ab" dependencies = [ "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", ] diff --git a/Cargo.toml b/Cargo.toml index 71a23839950..34af0a6060c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -599,3 +599,5 @@ blake3 = { git = "https://github.com/gear-tech/BLAKE3", branch = "clang-cl-cross # TODO: remove after https://github.com/pepyakin/wabt-rs/pull/84 wabt = { git = "https://github.com/gear-tech/wabt-rs", branch = "al-win-crt" } + +wasm-instrument = { version = "0.4.0", git = "https://github.com/gear-tech/wasm-instrument", branch = "v0.4.0-sign-ext" } diff --git a/core/src/gas_metering/rules.rs b/core/src/gas_metering/rules.rs index c2a6a5b2275..703c01b273c 100644 --- a/core/src/gas_metering/rules.rs +++ b/core/src/gas_metering/rules.rs @@ -240,6 +240,7 @@ impl<'a> Rules for ScheduleRules<'a> { GetGlobal(_) => w.global_get, SetGlobal(_) => w.global_set, CurrentMemory(_) => w.memory_current, + // TODO: update CallIndirect(idx, _) => *self.params.get(idx as usize).unwrap_or(&max_params), BrTable(ref data) => w .br_table diff --git a/pallets/gear/src/benchmarking/code.rs b/pallets/gear/src/benchmarking/code.rs index 0d148788c57..f2bfc02732f 100644 --- a/pallets/gear/src/benchmarking/code.rs +++ b/pallets/gear/src/benchmarking/code.rs @@ -634,6 +634,8 @@ pub mod body { /// Insert a SetGlobal with a random offset in [low, high). /// (low, high) RandomSetGlobal(u32, u32), + /// Insert the specified amount of Drop. + DropRepeated(usize), } pub fn write_access_all_pages_instrs( @@ -726,6 +728,7 @@ pub mod body { DynInstr::RandomSetGlobal(low, high) => { vec![Instruction::SetGlobal(rng.gen_range(*low..*high))] } + DynInstr::DropRepeated(num) => vec![Instruction::Drop; *num], }); head.extend(instr_iter); head diff --git a/pallets/gear/src/benchmarking/mod.rs b/pallets/gear/src/benchmarking/mod.rs index a8ffe889e72..6f9875a1429 100644 --- a/pallets/gear/src/benchmarking/mod.rs +++ b/pallets/gear/src/benchmarking/mod.rs @@ -1845,6 +1845,28 @@ benchmarks! { sbox.invoke(); } + instr_call_indirect_per_result { + let r in 0 .. T::Schedule::get().limits.results; + let num_elements = T::Schedule::get().limits.table_size; + let mut sbox = Sandbox::from(&WasmModule::::from(ModuleDefinition { + aux_body: Some(body::repeated_dyn(r, vec![RandomI64(0, num_elements as i64)])), + aux_res: vec![ValueType::I64; r as usize], + handle_body: Some(body::repeated_dyn(INSTR_BENCHMARK_BATCH_SIZE, vec![ + RandomI32(0, num_elements as i32), + Regular(Instruction::CallIndirect(r.min(1), 0)), // aux signature: 1 or 0 + DropRepeated(r as usize), + ])), + table: Some(TableSegment { + num_elements, + function_index: OFFSET_AUX, + init_elements: Default::default(), + }), + .. Default::default() + })); + }: { + sbox.invoke(); + } + // w_per_local = w_bench instr_call_per_local { let l in 0 .. T::Schedule::get().limits.locals; diff --git a/pallets/gear/src/schedule.rs b/pallets/gear/src/schedule.rs index 33f1672ef6a..a6c3a55f069 100644 --- a/pallets/gear/src/schedule.rs +++ b/pallets/gear/src/schedule.rs @@ -190,6 +190,9 @@ pub struct Limits { /// the costs of the instructions that cause them (call, call_indirect). pub parameters: u32, + /// Maximum numbers of parameters a function can have. + pub results: u32, + /// Maximum number of memory pages allowed for a program. pub memory_pages: u16, @@ -275,6 +278,7 @@ pub struct InstructionWeights { pub call: u32, pub call_indirect: u32, pub call_indirect_per_param: u32, + pub call_indirect_per_result: u32, pub call_per_local: u32, pub local_get: u32, pub local_set: u32, @@ -831,6 +835,7 @@ impl Default for Limits { globals: 256, locals: 1024, parameters: 128, + results: 128, memory_pages: MAX_WASM_PAGES_AMOUNT, // 4k function pointers (This is in count not bytes). table_size: 4096, @@ -878,6 +883,7 @@ impl Default for InstructionWeights { call: cost_instr::(W::::instr_call, 2), call_indirect: cost_instr::(W::::instr_call_indirect, 1), call_indirect_per_param: cost_instr::(W::::instr_call_indirect_per_param, 1), + call_indirect_per_result: cost_instr::(W::::instr_call_indirect_per_result, 1), call_per_local: cost_instr::(W::::instr_call_per_local, 1), local_get: cost_instr::(W::::instr_local_get, 0), local_set: cost_instr::(W::::instr_local_set, 1), @@ -1401,7 +1407,7 @@ impl From> for InstantiationCosts { struct ScheduleRules<'a, T: Config> { schedule: &'a Schedule, - params: Vec, + funcs: Vec<(u32, u32)>, } impl<'a, T: Config> Rules for ScheduleRules<'a, T> { @@ -1411,6 +1417,7 @@ impl<'a, T: Config> Rules for ScheduleRules<'a, T> { let w = &self.schedule.instruction_weights; let max_params = self.schedule.limits.parameters; + let max_results = self.schedule.limits.results; let weight = match *instruction { End | Unreachable | Return | Else | Block(_) | Loop(_) | Nop | Drop => 0, @@ -1440,7 +1447,16 @@ impl<'a, T: Config> Rules for ScheduleRules<'a, T> { GetGlobal(_) => w.global_get, SetGlobal(_) => w.global_set, CurrentMemory(_) => w.memory_current, - CallIndirect(idx, _) => *self.params.get(idx as usize).unwrap_or(&max_params), + CallIndirect(idx, _) => { + let (params, results) = self + .funcs + .get(idx as usize) + .copied() + .unwrap_or((max_params, max_results)); + w.call_indirect + .saturating_add(w.call_indirect_per_param.saturating_sub(params)) + .saturating_add(w.call_indirect_per_result.saturating_sub(results)) + } BrTable(ref data) => w .br_table .saturating_add(w.br_table_per_entry.saturating_mul(data.table.len() as u32)), @@ -1532,13 +1548,13 @@ impl Schedule { pub fn rules(&self, module: &Module) -> impl Rules + '_ { ScheduleRules { schedule: self, - params: module + funcs: module .type_section() .iter() .flat_map(|section| section.types()) .map(|func| { let Type::Function(func) = func; - func.params().len() as u32 + (func.params().len() as u32, func.results().len() as u32) }) .collect(), } diff --git a/pallets/gear/src/weights.rs b/pallets/gear/src/weights.rs index b7b8fe10972..260e7925550 100644 --- a/pallets/gear/src/weights.rs +++ b/pallets/gear/src/weights.rs @@ -147,6 +147,7 @@ pub trait WeightInfo { fn instr_call(r: u32, ) -> Weight; fn instr_call_indirect(r: u32, ) -> Weight; fn instr_call_indirect_per_param(p: u32, ) -> Weight; + fn instr_call_indirect_per_result(r: u32, ) -> Weight; fn instr_call_per_local(l: u32, ) -> Weight; fn instr_local_get(r: u32, ) -> Weight; fn instr_local_set(r: u32, ) -> Weight; @@ -1372,6 +1373,16 @@ impl WeightInfo for SubstrateWeight { // Standard Error: 10_999 .saturating_add(Weight::from_parts(685_687 * 110 / 100 /* Adjust slope weight by 10 percent (Patched by script) */, 0).saturating_mul(p.into())) } + /// The range of component `r` is `[0, 128]`. + fn instr_call_indirect_per_result(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 10_000_000 picoseconds. + Weight::from_parts(8_845_563, 0) + // Standard Error: 2_496 + .saturating_add(Weight::from_parts(652_462, 0).saturating_mul(r.into())) + } /// The range of component `l` is `[0, 1024]`. fn instr_call_per_local(_l: u32, ) -> Weight { // Proof Size summary in bytes: @@ -3313,6 +3324,16 @@ impl WeightInfo for () { // Standard Error: 10_999 .saturating_add(Weight::from_parts(685_687 * 110 / 100 /* Adjust slope weight by 10 percent (Patched by script) */, 0).saturating_mul(p.into())) } + /// The range of component `r` is `[0, 128]`. + fn instr_call_indirect_per_result(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 10_000_000 picoseconds. + Weight::from_parts(8_845_563, 0) + // Standard Error: 2_496 + .saturating_add(Weight::from_parts(652_462, 0).saturating_mul(r.into())) + } /// The range of component `l` is `[0, 1024]`. fn instr_call_per_local(_l: u32, ) -> Weight { // Proof Size summary in bytes: diff --git a/runtime/vara/src/tests.rs b/runtime/vara/src/tests.rs index 0e3b5b50360..725f775d910 100644 --- a/runtime/vara/src/tests.rs +++ b/runtime/vara/src/tests.rs @@ -146,6 +146,7 @@ fn instruction_weights_heuristics_test() { call_per_local: 0, call_indirect: 22_100, call_indirect_per_param: 1_000, + call_indirect_per_result: 1_000, local_get: 900, local_set: 1_900, diff --git a/runtime/vara/src/weights/pallet_gear.rs b/runtime/vara/src/weights/pallet_gear.rs index 43150ed2677..1d3000e4f8b 100644 --- a/runtime/vara/src/weights/pallet_gear.rs +++ b/runtime/vara/src/weights/pallet_gear.rs @@ -147,6 +147,7 @@ pub trait WeightInfo { fn instr_call(r: u32, ) -> Weight; fn instr_call_indirect(r: u32, ) -> Weight; fn instr_call_indirect_per_param(p: u32, ) -> Weight; + fn instr_call_indirect_per_result(r: u32, ) -> Weight; fn instr_call_per_local(l: u32, ) -> Weight; fn instr_local_get(r: u32, ) -> Weight; fn instr_local_set(r: u32, ) -> Weight; @@ -1372,6 +1373,16 @@ impl pallet_gear::WeightInfo for SubstrateWeight { // Standard Error: 10_999 .saturating_add(Weight::from_parts(685_687 * 110 / 100 /* Adjust slope weight by 10 percent (Patched by script) */, 0).saturating_mul(p.into())) } + /// The range of component `r` is `[0, 128]`. + fn instr_call_indirect_per_result(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 10_000_000 picoseconds. + Weight::from_parts(8_845_563, 0) + // Standard Error: 2_496 + .saturating_add(Weight::from_parts(652_462, 0).saturating_mul(r.into())) + } /// The range of component `l` is `[0, 1024]`. fn instr_call_per_local(_l: u32, ) -> Weight { // Proof Size summary in bytes: @@ -3313,6 +3324,16 @@ impl WeightInfo for () { // Standard Error: 10_999 .saturating_add(Weight::from_parts(685_687 * 110 / 100 /* Adjust slope weight by 10 percent (Patched by script) */, 0).saturating_mul(p.into())) } + /// The range of component `r` is `[0, 128]`. + fn instr_call_indirect_per_result(r: u32, ) -> Weight { + // Proof Size summary in bytes: + // Measured: `0` + // Estimated: `0` + // Minimum execution time: 10_000_000 picoseconds. + Weight::from_parts(8_845_563, 0) + // Standard Error: 2_496 + .saturating_add(Weight::from_parts(652_462, 0).saturating_mul(r.into())) + } /// The range of component `l` is `[0, 1024]`. fn instr_call_per_local(_l: u32, ) -> Weight { // Proof Size summary in bytes: diff --git a/utils/regression-analysis/src/main.rs b/utils/regression-analysis/src/main.rs index 772c4953ee5..28aaaf3c306 100644 --- a/utils/regression-analysis/src/main.rs +++ b/utils/regression-analysis/src/main.rs @@ -399,6 +399,7 @@ fn weights(kind: WeightsKind, input_file: PathBuf, output_file: PathBuf) { call, call_indirect, call_indirect_per_param, + call_indirect_per_result, call_per_local, local_get, local_set, From 0cbd424e754b4e4abced12e213f495f9cc1879a9 Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Thu, 28 Nov 2024 21:16:31 +0100 Subject: [PATCH 06/26] Update `gear_core::gas_metering` --- core/src/gas_metering/rules.rs | 19 ++++++++++++++----- core/src/gas_metering/schedule.rs | 5 +++++ 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/core/src/gas_metering/rules.rs b/core/src/gas_metering/rules.rs index 703c01b273c..7c4973419ad 100644 --- a/core/src/gas_metering/rules.rs +++ b/core/src/gas_metering/rules.rs @@ -183,7 +183,7 @@ impl Rules for CustomConstantCostRules { /// This type provides real gas cost of instructions on pallet-gear. pub struct ScheduleRules<'a> { schedule: &'a Schedule, - params: Vec, + funcs: Vec<(u32, u32)>, } impl Schedule { @@ -191,13 +191,13 @@ impl Schedule { pub fn rules(&self, module: &Module) -> impl Rules + '_ { ScheduleRules { schedule: self, - params: module + funcs: module .type_section() .iter() .flat_map(|section| section.types()) .map(|func| { let Type::Function(func) = func; - func.params().len() as u32 + (func.params().len() as u32, func.results().len() as u32) }) .collect(), } @@ -211,6 +211,7 @@ impl<'a> Rules for ScheduleRules<'a> { let w = &self.schedule.instruction_weights; let max_params = self.schedule.limits.parameters; + let max_results = self.schedule.limits.results; let weight = match *instruction { End | Unreachable | Return | Else | Block(_) | Loop(_) | Nop | Drop => 0, @@ -240,8 +241,16 @@ impl<'a> Rules for ScheduleRules<'a> { GetGlobal(_) => w.global_get, SetGlobal(_) => w.global_set, CurrentMemory(_) => w.memory_current, - // TODO: update - CallIndirect(idx, _) => *self.params.get(idx as usize).unwrap_or(&max_params), + CallIndirect(idx, _) => { + let (params, results) = self + .funcs + .get(idx as usize) + .copied() + .unwrap_or((max_params, max_results)); + w.call_indirect + .saturating_add(w.call_indirect_per_param.saturating_sub(params)) + .saturating_add(w.call_indirect_per_result.saturating_sub(results)) + } BrTable(ref data) => w .br_table .saturating_add(w.br_table_per_entry.saturating_mul(data.table.len() as u32)), diff --git a/core/src/gas_metering/schedule.rs b/core/src/gas_metering/schedule.rs index 997b9e89a72..ad83c613200 100644 --- a/core/src/gas_metering/schedule.rs +++ b/core/src/gas_metering/schedule.rs @@ -117,6 +117,8 @@ pub struct Limits { #[doc = " is not weight metered its costs must be static (via this limit) and included in"] #[doc = " the costs of the instructions that cause them (call, call_indirect)."] pub parameters: u32, + #[doc = " Maximum numbers of parameters a function can have."] + pub results: u32, #[doc = " Maximum number of memory pages allowed for a program."] pub memory_pages: u16, #[doc = " Maximum number of elements allowed in a table."] @@ -150,6 +152,7 @@ impl Default for Limits { globals: 256, locals: 1024, parameters: 128, + results: 128, memory_pages: 32768, table_size: 4096, table_number: 100, @@ -212,6 +215,7 @@ pub struct InstructionWeights { pub call: u32, pub call_indirect: u32, pub call_indirect_per_param: u32, + pub call_indirect_per_result: u32, pub call_per_local: u32, pub local_get: u32, pub local_set: u32, @@ -305,6 +309,7 @@ impl Default for InstructionWeights { call: 5506, call_indirect: 24900, call_indirect_per_param: 1308, + call_indirect_per_result: 1104, call_per_local: 0, local_get: 714, local_set: 1386, From c14e8e23980204b0b8fd0b027c4a5a305726f95b Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Fri, 6 Dec 2024 17:52:26 +0100 Subject: [PATCH 07/26] Update cargo files --- Cargo.lock | 1017 +++++++++++++++++++--------------------------------- Cargo.toml | 2 - 2 files changed, 377 insertions(+), 642 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index b957a6fff2b..f04d5cf65ba 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -43,12 +43,6 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" -[[package]] -name = "adler2" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" - [[package]] name = "aead" version = "0.4.3" @@ -119,6 +113,17 @@ dependencies = [ "subtle 2.6.1", ] +[[package]] +name = "ahash" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" +dependencies = [ + "getrandom", + "once_cell", + "version_check", +] + [[package]] name = "ahash" version = "0.8.11" @@ -216,7 +221,7 @@ dependencies = [ "alloy-transport", "futures", "futures-util", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -322,7 +327,7 @@ dependencies = [ "alloy-sol-types", "serde", "serde_json", - "thiserror 1.0.62", + "thiserror", "tracing", ] @@ -344,7 +349,7 @@ dependencies = [ "async-trait", "auto_impl", "futures-utils-wasm", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -372,7 +377,7 @@ dependencies = [ "rand", "serde_json", "tempfile", - "thiserror 1.0.62", + "thiserror", "tracing", "url", ] @@ -438,7 +443,7 @@ dependencies = [ "reqwest", "serde", "serde_json", - "thiserror 1.0.62", + "thiserror", "tokio", "tracing", "url", @@ -546,7 +551,7 @@ dependencies = [ "alloy-rpc-types-engine", "serde", "serde_with", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -606,7 +611,7 @@ dependencies = [ "auto_impl", "elliptic-curve", "k256", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -622,7 +627,7 @@ dependencies = [ "async-trait", "k256", "rand", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -710,7 +715,7 @@ dependencies = [ "futures-utils-wasm", "serde", "serde_json", - "thiserror 1.0.62", + "thiserror", "tokio", "tower 0.5.1", "tracing", @@ -1218,7 +1223,7 @@ dependencies = [ "nom", "num-traits", "rusticata-macros", - "thiserror 1.0.62", + "thiserror", "time", ] @@ -1234,7 +1239,7 @@ dependencies = [ "nom", "num-traits", "rusticata-macros", - "thiserror 1.0.62", + "thiserror", "time", ] @@ -1611,7 +1616,7 @@ dependencies = [ "cc", "cfg-if", "libc", - "miniz_oxide 0.7.1", + "miniz_oxide", "object 0.32.2", "rustc-demangle", ] @@ -1712,26 +1717,6 @@ dependencies = [ "syn 2.0.89", ] -[[package]] -name = "bindgen" -version = "0.70.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f" -dependencies = [ - "bitflags 2.5.0", - "cexpr", - "clang-sys", - "itertools 0.10.5", - "log", - "prettyplease 0.2.15", - "proc-macro2", - "quote", - "regex", - "rustc-hash 1.1.0", - "shlex", - "syn 2.0.89", -] - [[package]] name = "bip39" version = "2.0.0" @@ -2005,20 +1990,8 @@ version = "0.6.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b6372023ac861f6e6dc89c8344a8f398fb42aaba2b5dbc649ca0c0e9dbcb627" dependencies = [ - "bytecheck_derive 0.6.11", - "ptr_meta 0.1.4", - "simdutf8", -] - -[[package]] -name = "bytecheck" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50c8f430744b23b54ad15161fcbc22d82a29b73eacbe425fea23ec822600bc6f" -dependencies = [ - "bytecheck_derive 0.8.0", - "ptr_meta 0.3.0", - "rancor", + "bytecheck_derive", + "ptr_meta", "simdutf8", ] @@ -2033,17 +2006,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "bytecheck_derive" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "523363cbe1df49b68215efdf500b103ac3b0fb4836aed6d15689a076eadb8fff" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.89", -] - [[package]] name = "bytecount" version = "0.6.3" @@ -2071,16 +2033,6 @@ dependencies = [ "serde", ] -[[package]] -name = "bzip2" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8" -dependencies = [ - "bzip2-sys", - "libc", -] - [[package]] name = "bzip2-sys" version = "0.1.11+1.0.8" @@ -2198,7 +2150,7 @@ dependencies = [ "semver 1.0.18", "serde", "serde_json", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -2212,7 +2164,7 @@ dependencies = [ "semver 1.0.18", "serde", "serde_json", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -2732,15 +2684,15 @@ dependencies = [ [[package]] name = "corosensei" -version = "0.2.1" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad067b451c08956709f8762dba86e049c124ea52858e3ab8d076ba2892caa437" +checksum = "80128832c58ea9cbd041d2a759ec449224487b2c1e400453d99d244eead87a8e" dependencies = [ "autocfg", "cfg-if", "libc", "scopeguard", - "windows-sys 0.59.0", + "windows-sys 0.33.0", ] [[package]] @@ -2763,27 +2715,42 @@ dependencies = [ [[package]] name = "cranelift-bforest" -version = "0.95.1" +version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1277fbfa94bc82c8ec4af2ded3e639d49ca5f7f3c7eeab2c66accd135ece4e70" +checksum = "2a2ab4512dfd3a6f4be184403a195f76e81a8a9f9e6c898e19d2dc3ce20e0115" dependencies = [ - "cranelift-entity 0.95.1", + "cranelift-entity 0.91.1", ] [[package]] name = "cranelift-bforest" -version = "0.110.2" +version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "305d51c180ebdc46ef61bc60c54ae6512db3bc9a05842a1f1e762e45977019ab" +checksum = "1277fbfa94bc82c8ec4af2ded3e639d49ca5f7f3c7eeab2c66accd135ece4e70" dependencies = [ - "cranelift-entity 0.110.2", + "cranelift-entity 0.95.1", ] [[package]] -name = "cranelift-bitset" -version = "0.110.3" +name = "cranelift-codegen" +version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "690d8ae6c73748e5ce3d8fe59034dceadb8823e6c8994ba324141c5eae909b0e" +checksum = "98b022ed2a5913a38839dfbafe6cf135342661293b08049843362df4301261dc" +dependencies = [ + "arrayvec 0.7.4", + "bumpalo", + "cranelift-bforest 0.91.1", + "cranelift-codegen-meta 0.91.1", + "cranelift-codegen-shared 0.91.1", + "cranelift-egraph", + "cranelift-entity 0.91.1", + "cranelift-isle 0.91.1", + "gimli 0.26.2", + "log", + "regalloc2 0.5.1", + "smallvec", + "target-lexicon", +] [[package]] name = "cranelift-codegen" @@ -2806,26 +2773,12 @@ dependencies = [ ] [[package]] -name = "cranelift-codegen" -version = "0.110.2" +name = "cranelift-codegen-meta" +version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd7ca95e831c18d1356da783765c344207cbdffea91e13e47fa9327dbb2e0719" +checksum = "639307b45434ad112a98f8300c0f0ab085cbefcd767efcdef9ef19d4c0756e74" dependencies = [ - "bumpalo", - "cranelift-bforest 0.110.2", - "cranelift-bitset", - "cranelift-codegen-meta 0.110.3", - "cranelift-codegen-shared 0.110.3", - "cranelift-control", - "cranelift-entity 0.110.2", - "cranelift-isle 0.110.2", - "gimli 0.28.1", - "hashbrown 0.14.5", - "log", - "regalloc2 0.9.3", - "rustc-hash 1.1.0", - "smallvec", - "target-lexicon", + "cranelift-codegen-shared 0.91.1", ] [[package]] @@ -2838,13 +2791,10 @@ dependencies = [ ] [[package]] -name = "cranelift-codegen-meta" -version = "0.110.3" +name = "cranelift-codegen-shared" +version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0a2d2ab65e6cbf91f81781d8da65ec2005510f18300eff21a99526ed6785863" -dependencies = [ - "cranelift-codegen-shared 0.110.3", -] +checksum = "278e52e29c53fcf32431ef08406c295699a70306d05a0715c5b1bf50e33a9ab7" [[package]] name = "cranelift-codegen-shared" @@ -2853,45 +2803,41 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dd82b8b376247834b59ed9bdc0ddeb50f517452827d4a11bccf5937b213748b8" [[package]] -name = "cranelift-codegen-shared" -version = "0.110.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efcff860573cf3db9ae98fbd949240d78b319df686cc306872e7fab60e9c84d7" - -[[package]] -name = "cranelift-control" -version = "0.110.3" +name = "cranelift-egraph" +version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69d70e5b75c2d5541ef80a99966ccd97aaa54d2a6af19ea31759a28538e1685a" +checksum = "624b54323b06e675293939311943ba82d323bb340468ce1889be5da7932c8d73" dependencies = [ - "arbitrary", + "cranelift-entity 0.91.1", + "fxhash", + "hashbrown 0.12.3", + "indexmap 1.9.3", + "log", + "smallvec", ] [[package]] name = "cranelift-entity" -version = "0.95.1" +version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40099d38061b37e505e63f89bab52199037a72b931ad4868d9089ff7268660b0" -dependencies = [ - "serde", -] +checksum = "9a59bcbca89c3f1b70b93ab3cbba5e5e0cbf3e63dadb23c7525cb142e21a9d4c" [[package]] name = "cranelift-entity" -version = "0.110.2" +version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a48cb0a194c9ba82fec35a1e492055388d89b2e3c03dee9dcf2488892be8004d" +checksum = "40099d38061b37e505e63f89bab52199037a72b931ad4868d9089ff7268660b0" dependencies = [ - "cranelift-bitset", + "serde", ] [[package]] name = "cranelift-frontend" -version = "0.95.1" +version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64a25d9d0a0ae3079c463c34115ec59507b4707175454f0eee0891e83e30e82d" +checksum = "0d70abacb8cfef3dc8ff7e8836e9c1d70f7967dfdac824a4cd5e30223415aca6" dependencies = [ - "cranelift-codegen 0.95.1", + "cranelift-codegen 0.91.1", "log", "smallvec", "target-lexicon", @@ -2899,11 +2845,11 @@ dependencies = [ [[package]] name = "cranelift-frontend" -version = "0.110.2" +version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8327afc6c1c05f4be62fefce5b439fa83521c65363a322e86ea32c85e7ceaf64" +checksum = "64a25d9d0a0ae3079c463c34115ec59507b4707175454f0eee0891e83e30e82d" dependencies = [ - "cranelift-codegen 0.110.2", + "cranelift-codegen 0.95.1", "log", "smallvec", "target-lexicon", @@ -2911,15 +2857,15 @@ dependencies = [ [[package]] name = "cranelift-isle" -version = "0.95.1" +version = "0.91.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80de6a7d0486e4acbd5f9f87ec49912bf4c8fb6aea00087b989685460d4469ba" +checksum = "393bc73c451830ff8dbb3a07f61843d6cb41a084f9996319917c0b291ed785bb" [[package]] name = "cranelift-isle" -version = "0.110.2" +version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56b08621c00321efcfa3eee6a3179adc009e21ea8d24ca7adc3c326184bc3f48" +checksum = "80de6a7d0486e4acbd5f9f87ec49912bf4c8fb6aea00087b989685460d4469ba" [[package]] name = "cranelift-native" @@ -3314,12 +3260,6 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "930c7171c8df9fb1782bdf9b918ed9ed2d33d1d22300abb754f9085bc48bf8e8" -[[package]] -name = "deflate64" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da692b8d1080ea3045efaab14434d40468c3d8657e42abddfffca87b428f4c1b" - [[package]] name = "demo-async" version = "0.1.0" @@ -4718,7 +4658,7 @@ dependencies = [ "gprimitives", "log", "parity-scale-codec", - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-wasm", "rand", "sp-allocator", "sp-wasm-interface 21.0.1 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", @@ -4734,7 +4674,7 @@ dependencies = [ "hyper 0.14.31", "log", "prometheus", - "thiserror 1.0.62", + "thiserror", "tokio", ] @@ -4759,6 +4699,7 @@ dependencies = [ "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "tokio", "tower 0.4.13", + "tower-http", ] [[package]] @@ -4986,7 +4927,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e182f7dbc2ef73d9ef67351c5fbbea084729c48362d3ce9dd44c28e32e277fe5" dependencies = [ "libc", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -5077,16 +5018,6 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cda653ca797810c02f7ca4b804b40b8b95ae046eb989d356bce17919a8c25499" -[[package]] -name = "flate2" -version = "1.0.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c936bfdafb507ebbf50b8074c54fa31c5be9a1e7e5f467dd659697041407d07c" -dependencies = [ - "crc32fast", - "miniz_oxide 0.8.0", -] - [[package]] name = "float-cmp" version = "0.9.0" @@ -5147,7 +5078,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8835f84f38484cc86f110a805655697908257fb9a7af005234060891557198e9" dependencies = [ "nonempty 0.7.0", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -5226,7 +5157,7 @@ dependencies = [ "sp-storage 21.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-trie 37.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-wasm-interface 21.0.1 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror 1.0.62", + "thiserror", "thousands", ] @@ -5823,7 +5754,7 @@ dependencies = [ "reqwest", "scale-info", "serde", - "thiserror 1.0.62", + "thiserror", "tokio", "toml 0.8.14", "url", @@ -5875,7 +5806,7 @@ dependencies = [ "log", "parity-scale-codec", "subxt", - "thiserror 1.0.62", + "thiserror", "tokio", "url", "wabt", @@ -5964,7 +5895,7 @@ dependencies = [ "hex", "log", "rand", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -6062,7 +5993,7 @@ dependencies = [ "scale-info", "serde", "wabt", - "wasmparser 0.220.0", + "wasmparser-nostd", ] [[package]] @@ -6209,7 +6140,7 @@ dependencies = [ "rand", "reqwest", "subxt", - "thiserror 1.0.62", + "thiserror", "tokio", "tracing", "tracing-appender", @@ -6407,7 +6338,7 @@ dependencies = [ "sp-allocator", "sp-wasm-interface-common", "tempfile", - "thiserror 1.0.62", + "thiserror", "wasmer", "wasmer-types", "wasmi 0.38.0", @@ -6549,7 +6480,7 @@ dependencies = [ "parity-scale-codec", "sp-consensus-babe", "subxt", - "thiserror 1.0.62", + "thiserror", "tokio", ] @@ -6574,11 +6505,11 @@ dependencies = [ "gmeta", "itertools 0.13.0", "log", - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-wasm", "pathdiff", "regex", "rustc_version 0.4.0", - "thiserror 1.0.62", + "thiserror", "toml 0.8.14", "wabt", ] @@ -6603,9 +6534,9 @@ dependencies = [ "nonempty 0.8.1", "proptest", "rand", - "thiserror 1.0.62", + "thiserror", "wasm-smith", - "wasmparser 0.220.0", + "wasmparser-nostd", "wasmprinter", "wat", ] @@ -6618,8 +6549,8 @@ dependencies = [ "enum-iterator 1.5.0", "gear-wasm", "gwasm-instrument", - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", - "wasmparser 0.220.0", + "parity-wasm", + "wasmparser-nostd", "wat", ] @@ -6637,7 +6568,7 @@ dependencies = [ "wabt", "wasm-opt", "wasmer", - "wasmparser 0.220.0", + "wasmparser-nostd", "which", ] @@ -6778,6 +6709,17 @@ dependencies = [ "polyval 0.6.2", ] +[[package]] +name = "gimli" +version = "0.26.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22030e2c5a68ec659fde1e949a745124b48e6fa8b045b7ed5bd1fe4ccc5c4e5d" +dependencies = [ + "fallible-iterator 0.2.0", + "indexmap 1.9.3", + "stable_deref_trait", +] + [[package]] name = "gimli" version = "0.27.3" @@ -6796,7 +6738,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" dependencies = [ "fallible-iterator 0.3.0", - "indexmap 2.6.0", "stable_deref_trait", ] @@ -6950,7 +6891,7 @@ dependencies = [ "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", "subxt", - "thiserror 1.0.62", + "thiserror", "tokio", ] @@ -7110,7 +7051,7 @@ dependencies = [ "pest_derive", "serde", "serde_json", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -7133,6 +7074,9 @@ name = "hashbrown" version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" +dependencies = [ + "ahash 0.7.8", +] [[package]] name = "hashbrown" @@ -7140,7 +7084,7 @@ version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" dependencies = [ - "ahash", + "ahash 0.8.11", ] [[package]] @@ -7149,7 +7093,7 @@ version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" dependencies = [ - "ahash", + "ahash 0.8.11", "allocator-api2", "serde", ] @@ -7173,16 +7117,6 @@ dependencies = [ "hashbrown 0.14.5", ] -[[package]] -name = "hdrhistogram" -version = "7.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "765c9198f173dd59ce26ff9f95ef0aafd0a0fe01fb9d72841bc5066a4c06511d" -dependencies = [ - "byteorder", - "num-traits", -] - [[package]] name = "headers" version = "0.3.9" @@ -7297,7 +7231,7 @@ dependencies = [ "once_cell", "rand", "socket2 0.5.7", - "thiserror 1.0.62", + "thiserror", "tinyvec", "tokio", "tracing", @@ -7320,7 +7254,7 @@ dependencies = [ "rand", "resolv-conf", "smallvec", - "thiserror 1.0.62", + "thiserror", "tokio", "tracing", ] @@ -7948,7 +7882,7 @@ dependencies = [ "combine", "jni-sys", "log", - "thiserror 1.0.62", + "thiserror", "walkdir", ] @@ -8028,7 +7962,7 @@ dependencies = [ "rustls-native-certs 0.7.2", "rustls-pki-types", "soketto 0.7.1", - "thiserror 1.0.62", + "thiserror", "tokio", "tokio-rustls 0.25.0", "tokio-util", @@ -8051,7 +7985,7 @@ dependencies = [ "rustls-pki-types", "rustls-platform-verifier", "soketto 0.8.0", - "thiserror 1.0.62", + "thiserror", "tokio", "tokio-rustls 0.26.0", "tokio-util", @@ -8074,7 +8008,7 @@ dependencies = [ "rustls-pki-types", "rustls-platform-verifier", "soketto 0.8.0", - "thiserror 1.0.62", + "thiserror", "tokio", "tokio-rustls 0.26.0", "tokio-util", @@ -8099,7 +8033,7 @@ dependencies = [ "rustc-hash 1.1.0", "serde", "serde_json", - "thiserror 1.0.62", + "thiserror", "tokio", "tokio-stream", "tracing", @@ -8121,7 +8055,7 @@ dependencies = [ "rustc-hash 1.1.0", "serde", "serde_json", - "thiserror 1.0.62", + "thiserror", "tokio", "tokio-stream", "tracing", @@ -8147,7 +8081,7 @@ dependencies = [ "rustc-hash 2.0.0", "serde", "serde_json", - "thiserror 1.0.62", + "thiserror", "tokio", "tokio-stream", "tracing", @@ -8166,7 +8100,7 @@ dependencies = [ "jsonrpsee-types 0.22.5", "serde", "serde_json", - "thiserror 1.0.62", + "thiserror", "tokio", "tower 0.4.13", "tracing", @@ -8191,7 +8125,7 @@ dependencies = [ "rustls-platform-verifier", "serde", "serde_json", - "thiserror 1.0.62", + "thiserror", "tokio", "tower 0.4.13", "tracing", @@ -8230,7 +8164,7 @@ dependencies = [ "serde", "serde_json", "soketto 0.8.0", - "thiserror 1.0.62", + "thiserror", "tokio", "tokio-stream", "tokio-util", @@ -8248,7 +8182,7 @@ dependencies = [ "beef", "serde", "serde_json", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -8261,7 +8195,7 @@ dependencies = [ "http 1.1.0", "serde", "serde_json", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -8273,7 +8207,7 @@ dependencies = [ "http 1.1.0", "serde", "serde_json", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -8540,7 +8474,7 @@ dependencies = [ "multiaddr 0.18.1", "pin-project", "rw-stream-sink 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -8575,7 +8509,7 @@ dependencies = [ "multiaddr 0.18.1", "pin-project", "rw-stream-sink 0.4.0 (git+https://github.com/gear-tech/rust-libp2p?branch=al/v0.54.1-patches)", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -8647,7 +8581,7 @@ dependencies = [ "rand", "rw-stream-sink 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "smallvec", - "thiserror 1.0.62", + "thiserror", "unsigned-varint 0.7.2", "void", ] @@ -8672,7 +8606,7 @@ dependencies = [ "rand", "rw-stream-sink 0.4.0 (git+https://github.com/gear-tech/rust-libp2p?branch=al/v0.54.1-patches)", "smallvec", - "thiserror 1.0.62", + "thiserror", "tracing", "unsigned-varint 0.8.0", "void", @@ -8759,7 +8693,7 @@ dependencies = [ "quick-protobuf", "quick-protobuf-codec 0.2.0", "smallvec", - "thiserror 1.0.62", + "thiserror", "void", ] @@ -8780,7 +8714,7 @@ dependencies = [ "quick-protobuf", "quick-protobuf-codec 0.3.1", "smallvec", - "thiserror 1.0.62", + "thiserror", "tracing", "void", ] @@ -8800,7 +8734,7 @@ dependencies = [ "quick-protobuf", "rand", "sha2 0.10.8", - "thiserror 1.0.62", + "thiserror", "tracing", "zeroize", ] @@ -8828,7 +8762,7 @@ dependencies = [ "rand", "sha2 0.10.8", "smallvec", - "thiserror 1.0.62", + "thiserror", "uint", "unsigned-varint 0.7.2", "void", @@ -8855,7 +8789,7 @@ dependencies = [ "rand", "sha2 0.10.8", "smallvec", - "thiserror 1.0.62", + "thiserror", "tracing", "uint", "void", @@ -8958,7 +8892,7 @@ dependencies = [ "sha2 0.10.8", "snow", "static_assertions", - "thiserror 1.0.62", + "thiserror", "x25519-dalek", "zeroize", ] @@ -9033,7 +8967,7 @@ dependencies = [ "ring 0.16.20", "rustls 0.21.7", "socket2 0.5.7", - "thiserror 1.0.62", + "thiserror", "tokio", ] @@ -9055,7 +8989,7 @@ dependencies = [ "ring 0.17.8", "rustls 0.23.10", "socket2 0.5.7", - "thiserror 1.0.62", + "thiserror", "tokio", "tracing", ] @@ -9232,7 +9166,7 @@ dependencies = [ "ring 0.16.20", "rustls 0.21.7", "rustls-webpki 0.101.4", - "thiserror 1.0.62", + "thiserror", "x509-parser 0.15.1", "yasna", ] @@ -9250,7 +9184,7 @@ dependencies = [ "ring 0.17.8", "rustls 0.23.10", "rustls-webpki 0.101.4", - "thiserror 1.0.62", + "thiserror", "x509-parser 0.16.0", "yasna", ] @@ -9316,7 +9250,7 @@ dependencies = [ "pin-project-lite", "rw-stream-sink 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "soketto 0.8.0", - "thiserror 1.0.62", + "thiserror", "url", "webpki-roots 0.25.2", ] @@ -9330,7 +9264,7 @@ dependencies = [ "futures", "libp2p-core 0.40.1", "log", - "thiserror 1.0.62", + "thiserror", "yamux 0.12.1", ] @@ -9342,7 +9276,7 @@ dependencies = [ "either", "futures", "libp2p-core 0.42.0", - "thiserror 1.0.62", + "thiserror", "tracing", "yamux 0.12.1", "yamux 0.13.3", @@ -9354,7 +9288,7 @@ version = "0.11.0+8.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3386f101bcb4bd252d8e9d2fb41ec3b0862a15a62b478c355b2982efa469e3e" dependencies = [ - "bindgen 0.65.1", + "bindgen", "bzip2-sys", "cc", "glob 0.3.1", @@ -9538,7 +9472,7 @@ dependencies = [ "socket2 0.5.7", "static_assertions", "str0m", - "thiserror 1.0.62", + "thiserror", "tokio", "tokio-stream", "tokio-tungstenite 0.20.1", @@ -9571,12 +9505,6 @@ dependencies = [ "scopeguard", ] -[[package]] -name = "lockfree-object-pool" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9374ef4228402d4b7e403e5838cb880d9ee663314b0a900d5a6aabf0c213552e" - [[package]] name = "log" version = "0.4.22" @@ -9634,27 +9562,6 @@ dependencies = [ "libc", ] -[[package]] -name = "lzma-rs" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "297e814c836ae64db86b36cf2a557ba54368d03f6afcd7d947c266692f71115e" -dependencies = [ - "byteorder", - "crc", -] - -[[package]] -name = "lzma-sys" -version = "0.1.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27" -dependencies = [ - "cc", - "libc", - "pkg-config", -] - [[package]] name = "mach" version = "0.3.2" @@ -9917,15 +9824,6 @@ dependencies = [ "adler", ] -[[package]] -name = "miniz_oxide" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1" -dependencies = [ - "adler2", -] - [[package]] name = "mio" version = "0.8.9" @@ -9958,7 +9856,7 @@ dependencies = [ "rand_chacha", "rand_distr", "subtle 2.6.1", - "thiserror 1.0.62", + "thiserror", "zeroize", ] @@ -10168,26 +10066,6 @@ dependencies = [ "unsigned-varint 0.8.0", ] -[[package]] -name = "munge" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64142d38c84badf60abf06ff9bd80ad2174306a5b11bd4706535090a30a419df" -dependencies = [ - "munge_macro", -] - -[[package]] -name = "munge_macro" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bb5c1d8184f13f7d0ccbeeca0def2f9a181bce2624302793005f5ca8aa62e5e" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.89", -] - [[package]] name = "nacl" version = "0.5.3" @@ -10296,7 +10174,7 @@ dependencies = [ "anyhow", "byteorder", "paste", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -10310,7 +10188,7 @@ dependencies = [ "log", "netlink-packet-core", "netlink-sys", - "thiserror 1.0.62", + "thiserror", "tokio", ] @@ -10335,7 +10213,7 @@ checksum = "a4a43439bf756eed340bdf8feba761e2d50c7d47175d87545cd5cbe4a137c4d1" dependencies = [ "cc", "libc", - "thiserror 1.0.62", + "thiserror", "winapi", ] @@ -10657,12 +10535,7 @@ version = "0.32.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" dependencies = [ - "crc32fast", - "flate2", - "hashbrown 0.14.5", - "indexmap 2.6.0", "memchr", - "ruzstd", ] [[package]] @@ -11277,7 +11150,7 @@ dependencies = [ "pallet-gear-scheduler", "pallet-timestamp", "parity-scale-codec", - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-wasm", "primitive-types", "scale-info", "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", @@ -11335,7 +11208,7 @@ dependencies = [ "pallet-timestamp", "pallet-transaction-payment", "parity-scale-codec", - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-wasm", "primitive-types", "scale-info", "sp-io 38.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", @@ -11506,7 +11379,7 @@ dependencies = [ "log", "pallet-balances", "parity-scale-codec", - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-wasm", "primitive-types", "scale-info", "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", @@ -11986,12 +11859,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "parity-wasm" -version = "0.45.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1ad0aff30c1da14b1254fcb2af73e1fa9a28670e584a626f53a369d0e157304" - [[package]] name = "parity-wasm" version = "0.45.0" @@ -12093,7 +11960,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2" dependencies = [ "digest 0.10.7", - "hmac 0.12.1", "password-hash", ] @@ -12134,7 +12000,7 @@ version = "2.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1acb4a4365a13f749a93f1a094a7805e5cfa0955373a9de860d962eaa3a5fe5a" dependencies = [ - "thiserror 1.0.62", + "thiserror", "ucd-trie", ] @@ -12526,7 +12392,7 @@ version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e17d47ce914bf4de440332250b0edd23ce48c005f59fab39d3335866b114f11a" dependencies = [ - "thiserror 1.0.62", + "thiserror", "toml 0.5.11", ] @@ -12627,7 +12493,7 @@ dependencies = [ "lazy_static", "memchr", "parking_lot 0.12.3", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -12807,16 +12673,7 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0738ccf7ea06b608c10564b31debd4f5bc5e197fc8bfe088f68ae5ce81e7a4f1" dependencies = [ - "ptr_meta_derive 0.1.4", -] - -[[package]] -name = "ptr_meta" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe9e76f66d3f9606f44e45598d155cb13ecf09f4a28199e48daf8c8fc937ea90" -dependencies = [ - "ptr_meta_derive 0.3.0", + "ptr_meta_derive", ] [[package]] @@ -12830,17 +12687,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "ptr_meta_derive" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca414edb151b4c8d125c12566ab0d74dc9cdba36fb80eb7b848c15f495fd32d1" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.89", -] - [[package]] name = "pulldown-cmark" version = "0.8.0" @@ -12891,7 +12737,7 @@ dependencies = [ "asynchronous-codec 0.6.2", "bytes", "quick-protobuf", - "thiserror 1.0.62", + "thiserror", "unsigned-varint 0.7.2", ] @@ -12903,7 +12749,7 @@ dependencies = [ "asynchronous-codec 0.7.0", "bytes", "quick-protobuf", - "thiserror 1.0.62", + "thiserror", "unsigned-varint 0.8.0", ] @@ -12929,7 +12775,7 @@ dependencies = [ "quinn-udp 0.3.2", "rustc-hash 1.1.0", "rustls 0.20.8", - "thiserror 1.0.62", + "thiserror", "tokio", "tracing", "webpki", @@ -12948,7 +12794,7 @@ dependencies = [ "quinn-udp 0.4.1", "rustc-hash 1.1.0", "rustls 0.21.7", - "thiserror 1.0.62", + "thiserror", "tokio", "tracing", ] @@ -12966,7 +12812,7 @@ dependencies = [ "quinn-udp 0.5.2", "rustc-hash 1.1.0", "rustls 0.23.10", - "thiserror 1.0.62", + "thiserror", "tokio", "tracing", ] @@ -12983,7 +12829,7 @@ dependencies = [ "rustc-hash 1.1.0", "rustls 0.20.8", "slab", - "thiserror 1.0.62", + "thiserror", "tinyvec", "tracing", "webpki", @@ -13001,7 +12847,7 @@ dependencies = [ "rustc-hash 1.1.0", "rustls 0.21.7", "slab", - "thiserror 1.0.62", + "thiserror", "tinyvec", "tracing", ] @@ -13018,7 +12864,7 @@ dependencies = [ "rustc-hash 1.1.0", "rustls 0.23.10", "slab", - "thiserror 1.0.62", + "thiserror", "tinyvec", "tracing", ] @@ -13077,15 +12923,6 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" -[[package]] -name = "rancor" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "caf5f7161924b9d1cea0e4cabc97c372cea92b5f927fc13c6bca67157a0ad947" -dependencies = [ - "ptr_meta 0.3.0", -] - [[package]] name = "rand" version = "0.8.5" @@ -13215,7 +13052,7 @@ dependencies = [ "futures", "jsonrpsee 0.23.2", "serde_json", - "thiserror 1.0.62", + "thiserror", "tokio", "tracing", ] @@ -13255,7 +13092,7 @@ checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b" dependencies = [ "getrandom", "redox_syscall 0.2.16", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -13278,6 +13115,18 @@ dependencies = [ "syn 2.0.89", ] +[[package]] +name = "regalloc2" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "300d4fbfb40c1c66a78ba3ddd41c1110247cf52f97b87d0f2fc9209bd49b030c" +dependencies = [ + "fxhash", + "log", + "slice-group-by", + "smallvec", +] + [[package]] name = "regalloc2" version = "0.6.1" @@ -13377,11 +13226,11 @@ dependencies = [ [[package]] name = "rend" -version = "0.5.2" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a35e8a6bf28cd121053a66aa2e6a2e3eaffad4a60012179f0e864aa5ffeff215" +checksum = "71fe3824f5629716b1589be05dacd749f6aa084c87e00e016714a8cdfccc997c" dependencies = [ - "bytecheck 0.8.0", + "bytecheck", ] [[package]] @@ -13481,32 +13330,32 @@ dependencies = [ [[package]] name = "rkyv" -version = "0.8.9" +version = "0.7.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b11a153aec4a6ab60795f8ebe2923c597b16b05bb1504377451e705ef1a45323" +checksum = "9008cd6385b9e161d8229e1f6549dd23c3d022f132a2ea37ac3a10ac4935779b" dependencies = [ - "bytecheck 0.8.0", + "bitvec", + "bytecheck", "bytes", - "hashbrown 0.15.0", - "indexmap 2.6.0", - "munge", - "ptr_meta 0.3.0", - "rancor", + "hashbrown 0.12.3", + "indexmap 1.9.3", + "ptr_meta", "rend", "rkyv_derive", + "seahash", "tinyvec", "uuid", ] [[package]] name = "rkyv_derive" -version = "0.8.9" +version = "0.7.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "beb382a4d9f53bd5c0be86b10d8179c3f8a14c30bf774ff77096ed6581e35981" +checksum = "503d1d27590a2b0a3a4ca4c94755aa2875657196ecbf401a42eff41d7de532c0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 1.0.109", ] [[package]] @@ -13557,7 +13406,7 @@ dependencies = [ "netlink-packet-route", "netlink-proto", "nix 0.24.3", - "thiserror 1.0.62", + "thiserror", "tokio", ] @@ -13973,7 +13822,7 @@ dependencies = [ "log", "sp-core 34.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "sp-wasm-interface 21.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -14003,7 +13852,7 @@ dependencies = [ "sp-keystore 0.40.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", "substrate-prometheus-endpoint", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -14096,7 +13945,7 @@ dependencies = [ "sp-panic-handler 13.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", "sp-version 37.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror 1.0.62", + "thiserror", "tokio", ] @@ -14174,7 +14023,7 @@ dependencies = [ "sp-runtime 39.0.1", "sp-state-machine 0.43.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "substrate-prometheus-endpoint", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -14210,7 +14059,7 @@ dependencies = [ "sp-keystore 0.40.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", "substrate-prometheus-endpoint", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -14232,7 +14081,7 @@ dependencies = [ "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-keystore 0.40.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -14253,7 +14102,7 @@ name = "sc-consensus-grandpa" version = "0.30.0" source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409#2686925248a9b8b6a45c10014db48b35671d473b" dependencies = [ - "ahash", + "ahash 0.8.11", "array-bytes", "async-trait", "dyn-clone", @@ -14289,7 +14138,7 @@ dependencies = [ "sp-keystore 0.40.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", "substrate-prometheus-endpoint", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -14309,7 +14158,7 @@ dependencies = [ "sp-blockchain", "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -14393,7 +14242,7 @@ dependencies = [ "sc-allocator", "sp-maybe-compressed-blob 11.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "sp-wasm-interface 21.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "thiserror 1.0.62", + "thiserror", "wasm-instrument", ] @@ -14406,7 +14255,7 @@ dependencies = [ "sp-allocator", "sp-maybe-compressed-blob 11.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-wasm-interface 21.0.1 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror 1.0.62", + "thiserror", "wasm-instrument", ] @@ -14498,7 +14347,7 @@ dependencies = [ "sp-application-crypto 38.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-keystore 0.40.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -14527,7 +14376,7 @@ dependencies = [ "sp-keystore 0.40.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-mixnet", "sp-runtime 39.0.1", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -14572,7 +14421,7 @@ dependencies = [ "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", "substrate-prometheus-endpoint", - "thiserror 1.0.62", + "thiserror", "tokio", "tokio-stream", "unsigned-varint 0.7.2", @@ -14604,7 +14453,7 @@ name = "sc-network-gossip" version = "0.45.0" source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409#2686925248a9b8b6a45c10014db48b35671d473b" dependencies = [ - "ahash", + "ahash 0.8.11", "futures", "futures-timer", "log", @@ -14636,7 +14485,7 @@ dependencies = [ "sp-blockchain", "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -14671,7 +14520,7 @@ dependencies = [ "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", "substrate-prometheus-endpoint", - "thiserror 1.0.62", + "thiserror", "tokio", "tokio-stream", ] @@ -14708,7 +14557,7 @@ dependencies = [ "multiaddr 0.18.1", "multihash 0.19.1", "rand", - "thiserror 1.0.62", + "thiserror", "zeroize", ] @@ -14804,7 +14653,7 @@ dependencies = [ "sp-rpc", "sp-runtime 39.0.1", "sp-version 37.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -14858,7 +14707,7 @@ dependencies = [ "sp-rpc", "sp-runtime 39.0.1", "sp-version 37.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror 1.0.62", + "thiserror", "tokio", "tokio-stream", ] @@ -14921,7 +14770,7 @@ dependencies = [ "static_init", "substrate-prometheus-endpoint", "tempfile", - "thiserror 1.0.62", + "thiserror", "tokio", "tracing", "tracing-futures", @@ -14954,7 +14803,7 @@ dependencies = [ "serde_json", "sp-blockchain", "sp-runtime 39.0.1", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -14994,7 +14843,7 @@ dependencies = [ "sc-utils", "serde", "serde_json", - "thiserror 1.0.62", + "thiserror", "wasm-timer", ] @@ -15021,7 +14870,7 @@ dependencies = [ "sp-rpc", "sp-runtime 39.0.1", "sp-tracing 17.0.1 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror 1.0.62", + "thiserror", "tracing", "tracing-log", "tracing-subscriber", @@ -15062,7 +14911,7 @@ dependencies = [ "sp-tracing 17.0.1 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-transaction-pool", "substrate-prometheus-endpoint", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -15078,7 +14927,7 @@ dependencies = [ "sp-blockchain", "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -15209,7 +15058,7 @@ dependencies = [ "quote", "scale-info", "syn 2.0.89", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -15248,7 +15097,7 @@ version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c9a8ef13a93c54d20580de1e5c413e624e53121d42fc7e2c11d10ef7f8b02367" dependencies = [ - "ahash", + "ahash 0.8.11", "cfg-if", "hashbrown 0.13.2", ] @@ -15312,9 +15161,15 @@ dependencies = [ "log", "rand", "slab", - "thiserror 1.0.62", + "thiserror", ] +[[package]] +name = "seahash" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b" + [[package]] name = "sec1" version = "0.7.3" @@ -15745,12 +15600,6 @@ dependencies = [ "wide", ] -[[package]] -name = "simd-adler32" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" - [[package]] name = "simdutf8" version = "0.1.4" @@ -15995,7 +15844,7 @@ dependencies = [ "log", "parity-scale-codec", "sp-wasm-interface-common", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -16018,7 +15867,7 @@ dependencies = [ "sp-state-machine 0.43.0 (registry+https://github.com/rust-lang/crates.io-index)", "sp-trie 37.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "sp-version 37.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -16040,7 +15889,7 @@ dependencies = [ "sp-state-machine 0.43.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-trie 37.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-version 37.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -16164,7 +16013,7 @@ dependencies = [ "sp-database", "sp-runtime 39.0.1", "sp-state-machine 0.43.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror 1.0.62", + "thiserror", "tracing", ] @@ -16180,7 +16029,7 @@ dependencies = [ "sp-inherents", "sp-runtime 39.0.1", "sp-state-machine 0.43.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -16270,7 +16119,7 @@ dependencies = [ "sp-storage 21.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "ss58-registry", "substrate-bip39 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", - "thiserror 1.0.62", + "thiserror", "tracing", "w3f-bls", "zeroize", @@ -16316,7 +16165,7 @@ dependencies = [ "sp-storage 21.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "ss58-registry", "substrate-bip39 0.6.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror 1.0.62", + "thiserror", "tracing", "w3f-bls", "zeroize", @@ -16463,7 +16312,7 @@ dependencies = [ "parity-scale-codec", "scale-info", "sp-runtime 39.0.1", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -16558,7 +16407,7 @@ version = "11.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0c768c11afbe698a090386876911da4236af199cd38a5866748df4d8628aeff" dependencies = [ - "thiserror 1.0.62", + "thiserror", "zstd 0.12.4", ] @@ -16567,7 +16416,7 @@ name = "sp-maybe-compressed-blob" version = "11.0.0" source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409#2686925248a9b8b6a45c10014db48b35671d473b" dependencies = [ - "thiserror 1.0.62", + "thiserror", "zstd 0.12.4", ] @@ -16819,7 +16668,7 @@ dependencies = [ "sp-externalities 0.29.0 (registry+https://github.com/rust-lang/crates.io-index)", "sp-panic-handler 13.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "sp-trie 37.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "thiserror 1.0.62", + "thiserror", "tracing", "trie-db", ] @@ -16839,7 +16688,7 @@ dependencies = [ "sp-externalities 0.29.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-panic-handler 13.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-trie 37.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror 1.0.62", + "thiserror", "tracing", "trie-db", ] @@ -16864,7 +16713,7 @@ dependencies = [ "sp-externalities 0.29.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", "sp-runtime-interface 28.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror 1.0.62", + "thiserror", "x25519-dalek", ] @@ -16913,7 +16762,7 @@ dependencies = [ "parity-scale-codec", "sp-inherents", "sp-runtime 39.0.1", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -16968,7 +16817,7 @@ version = "37.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6282aef9f4b6ecd95a67a45bcdb67a71f4a4155c09a53c10add4ffe823db18cd" dependencies = [ - "ahash", + "ahash 0.8.11", "hash-db", "lazy_static", "memory-db", @@ -16980,7 +16829,7 @@ dependencies = [ "schnellru", "sp-core 34.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "sp-externalities 0.29.0 (registry+https://github.com/rust-lang/crates.io-index)", - "thiserror 1.0.62", + "thiserror", "tracing", "trie-db", "trie-root", @@ -16991,7 +16840,7 @@ name = "sp-trie" version = "37.0.0" source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409#2686925248a9b8b6a45c10014db48b35671d473b" dependencies = [ - "ahash", + "ahash 0.8.11", "hash-db", "lazy_static", "memory-db", @@ -17003,7 +16852,7 @@ dependencies = [ "schnellru", "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-externalities 0.29.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror 1.0.62", + "thiserror", "tracing", "trie-db", "trie-root", @@ -17017,14 +16866,14 @@ checksum = "d521a405707b5be561367cd3d442ff67588993de24062ce3adefcf8437ee9fe1" dependencies = [ "impl-serde", "parity-scale-codec", - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-wasm", "scale-info", "serde", "sp-crypto-hashing-proc-macro 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "sp-runtime 39.0.2", "sp-std 14.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "sp-version-proc-macro 14.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -17034,14 +16883,14 @@ source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot dependencies = [ "impl-serde", "parity-scale-codec", - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-wasm", "scale-info", "serde", "sp-crypto-hashing-proc-macro 0.1.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-runtime 39.0.1", "sp-std 14.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "sp-version-proc-macro 14.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "thiserror 1.0.62", + "thiserror", ] [[package]] @@ -17264,7 +17113,7 @@ dependencies = [ "sctp-proto", "serde", "sha-1 0.10.1", - "thiserror 1.0.62", + "thiserror", "tracing", ] @@ -17444,7 +17293,7 @@ dependencies = [ "hyper-util", "log", "prometheus", - "thiserror 1.0.62", + "thiserror", "tokio", ] @@ -17520,7 +17369,7 @@ dependencies = [ "jobserver", "merkleized-metadata", "parity-scale-codec", - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-wasm", "polkavm-linker", "sc-executor 0.40.1 (registry+https://github.com/rust-lang/crates.io-index)", "sp-core 34.0.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -17577,7 +17426,7 @@ dependencies = [ "subxt-lightclient", "subxt-macro", "subxt-metadata", - "thiserror 1.0.62", + "thiserror", "tokio-util", "tracing", "url", @@ -17600,7 +17449,7 @@ dependencies = [ "scale-typegen", "subxt-metadata", "syn 2.0.89", - "thiserror 1.0.62", + "thiserror", "tokio", ] @@ -17642,7 +17491,7 @@ dependencies = [ "serde", "serde_json", "smoldot-light", - "thiserror 1.0.62", + "thiserror", "tokio", "tokio-stream", "tracing", @@ -17799,17 +17648,6 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" -[[package]] -name = "tar" -version = "0.4.43" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c65998313f8e17d0d553d28f91a0df93e4dbbbf770279c7bc21ca0f09ea1a1f6" -dependencies = [ - "filetime", - "libc", - "xattr", -] - [[package]] name = "target-lexicon" version = "0.12.14" @@ -17884,16 +17722,7 @@ version = "1.0.62" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f2675633b1499176c2dff06b0856a27976a8f9d436737b4cf4f312d4d91d8bbb" dependencies = [ - "thiserror-impl 1.0.62", -] - -[[package]] -name = "thiserror" -version = "2.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c006c85c7651b3cf2ada4584faa36773bd07bac24acfb39f3c431b36d7e667aa" -dependencies = [ - "thiserror-impl 2.0.3", + "thiserror-impl", ] [[package]] @@ -17907,17 +17736,6 @@ dependencies = [ "syn 2.0.89", ] -[[package]] -name = "thiserror-impl" -version = "2.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f077553d607adc1caf65430528a576c757a71ed73944b66ebb58ef2bbd243568" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.89", -] - [[package]] name = "thousands" version = "0.2.0" @@ -18223,14 +18041,9 @@ checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" dependencies = [ "futures-core", "futures-util", - "hdrhistogram", - "indexmap 1.9.3", "pin-project", "pin-project-lite", - "rand", - "slab", "tokio", - "tokio-util", "tower-layer", "tower-service", "tracing", @@ -18297,7 +18110,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3566e8ce28cc0a3fe42519fc80e6b4c943cc4c8cef275620eb8dac2d3d4e06cf" dependencies = [ "crossbeam-channel", - "thiserror 1.0.62", + "thiserror", "time", "tracing-subscriber", ] @@ -18427,7 +18240,7 @@ dependencies = [ "rand", "smallvec", "socket2 0.4.9", - "thiserror 1.0.62", + "thiserror", "tinyvec", "tokio", "tracing", @@ -18452,7 +18265,7 @@ dependencies = [ "once_cell", "rand", "smallvec", - "thiserror 1.0.62", + "thiserror", "tinyvec", "tokio", "tracing", @@ -18474,7 +18287,7 @@ dependencies = [ "rand", "resolv-conf", "smallvec", - "thiserror 1.0.62", + "thiserror", "tokio", "tracing", "trust-dns-proto 0.23.2", @@ -18522,7 +18335,7 @@ dependencies = [ "rand", "rustls 0.21.7", "sha1", - "thiserror 1.0.62", + "thiserror", "url", "utf-8", ] @@ -18543,7 +18356,7 @@ dependencies = [ "rustls 0.23.10", "rustls-pki-types", "sha1", - "thiserror 1.0.62", + "thiserror", "utf-8", ] @@ -18700,22 +18513,6 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" -[[package]] -name = "ureq" -version = "2.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b74fc6b57825be3373f7054754755f03ac3a8f5d70015ccad699ba2029956f4a" -dependencies = [ - "base64 0.22.1", - "flate2", - "log", - "once_cell", - "rustls 0.23.10", - "rustls-pki-types", - "url", - "webpki-roots 0.26.3", -] - [[package]] name = "url" version = "2.5.2" @@ -18898,7 +18695,7 @@ dependencies = [ "rand_core", "sha2 0.10.8", "sha3", - "thiserror 1.0.62", + "thiserror", "zeroize", ] @@ -19073,9 +18870,8 @@ dependencies = [ [[package]] name = "wasm-encoder" -version = "0.220.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebf48234b389415b226a4daef6562933d38c7b28a8b8f64c5c4130dad1561ab7" +version = "0.35.0" +source = "git+https://github.com/gear-tech/wasm-tools.git?branch=gear-stable#ffe9abee63ad640c051d50515cedee7f67f31884" dependencies = [ "leb128", ] @@ -19086,7 +18882,7 @@ version = "0.1.0" dependencies = [ "clap 4.5.13", "hex", - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-wasm", ] [[package]] @@ -19094,7 +18890,7 @@ name = "wasm-instrument" version = "0.4.0" source = "git+https://github.com/gear-tech/wasm-instrument?branch=v0.4.0-sign-ext#e57b713873d4364e41ed495893a2f06a80cca5ab" dependencies = [ - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-wasm", ] [[package]] @@ -19108,7 +18904,7 @@ dependencies = [ "strum 0.24.1", "strum_macros 0.24.3", "tempfile", - "thiserror 1.0.62", + "thiserror", "wasm-opt-cxx-sys", "wasm-opt-sys", ] @@ -19145,21 +18941,20 @@ dependencies = [ "env_logger", "gear-wasm-builder", "log", - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-wasm", ] [[package]] name = "wasm-smith" -version = "0.220.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f7d273cf1df3c10f9067cb48796d1a6d1daa3ceb99c3f07d822e5bdeefb34f9" +version = "0.12.21" +source = "git+https://github.com/gear-tech/wasm-tools.git?branch=gear-stable#ffe9abee63ad640c051d50515cedee7f67f31884" dependencies = [ - "anyhow", "arbitrary", "flagset", "indexmap 2.6.0", "leb128", - "wasm-encoder 0.220.0", + "wasm-encoder 0.35.0", + "wasmparser 0.115.0", ] [[package]] @@ -19179,14 +18974,13 @@ dependencies = [ [[package]] name = "wasmer" -version = "5.0.2" +version = "4.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9817a0dd105a992d9f3e8831370acddbdf3848e5357086a569dc4fb07c2aa57d" +checksum = "2d920d06243e9f456c336c428a34560357dedf59d9febaae14f1995ac120cff6" dependencies = [ - "bindgen 0.70.1", "bytes", "cfg-if", - "cmake", + "derivative", "indexmap 1.9.3", "js-sys", "more-asserts", @@ -19194,11 +18988,9 @@ dependencies = [ "serde", "serde-wasm-bindgen", "shared-buffer", - "tar", "target-lexicon", - "thiserror 1.0.62", + "thiserror", "tracing", - "ureq", "wasm-bindgen", "wasmer-compiler", "wasmer-compiler-cranelift", @@ -19207,27 +18999,25 @@ dependencies = [ "wasmer-types", "wasmer-vm", "windows-sys 0.59.0", - "xz", - "zip", ] [[package]] name = "wasmer-cache" -version = "5.0.2" +version = "4.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f83d5afd20189716fca5e4933c1b255dcd82db86b51a0f8ae040c29821a68349" +checksum = "4e2aa507d7ab1d7f6038f60ca107bc4629c5dbf3a0e18427091b7576b0ffbbd9" dependencies = [ "blake3", "hex", - "thiserror 1.0.62", + "thiserror", "wasmer", ] [[package]] name = "wasmer-compiler" -version = "5.0.2" +version = "4.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0261d34a6f61d666e4f954254cf486371117db3e8a875767c5e3f21e45eb43aa" +checksum = "0e01832173aa52345e480965f18c638a8a5a9e5e4d85a48675bdf1964147dc7f" dependencies = [ "backtrace", "bytes", @@ -19239,32 +19029,29 @@ dependencies = [ "libc", "memmap2 0.6.2", "more-asserts", - "object 0.32.2", "region", "rkyv", "self_cell", "shared-buffer", "smallvec", - "target-lexicon", - "thiserror 1.0.62", + "thiserror", "wasmer-types", "wasmer-vm", - "wasmparser 0.216.0", + "wasmparser 0.121.2", "windows-sys 0.59.0", "xxhash-rust", ] [[package]] name = "wasmer-compiler-cranelift" -version = "5.0.2" +version = "4.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdc984c651c29e30ec4f6da82ca472b9d2dd50dfe4c9edd84628e59f876ea2d0" +checksum = "1c1618f53b492cf6649beeb372930e376e0f52d9842c0c5eb5aa2b548251dab6" dependencies = [ - "cranelift-codegen 0.110.2", - "cranelift-entity 0.110.2", - "cranelift-frontend 0.110.2", - "gimli 0.28.1", - "itertools 0.12.1", + "cranelift-codegen 0.91.1", + "cranelift-entity 0.91.1", + "cranelift-frontend 0.91.1", + "gimli 0.26.2", "more-asserts", "rayon", "smallvec", @@ -19276,15 +19063,15 @@ dependencies = [ [[package]] name = "wasmer-compiler-singlepass" -version = "5.0.2" +version = "4.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49e697fde8463279e337e24fe1508c1e593866f805f8107762119139daa5300e" +checksum = "a2b111c55d0b8a30dba67afe8766c56b53f0055653f0bb14b1a337056263ae48" dependencies = [ "byteorder", "dynasm", "dynasmrt", "enumset", - "gimli 0.28.1", + "gimli 0.26.2", "lazy_static", "more-asserts", "rayon", @@ -19295,11 +19082,11 @@ dependencies = [ [[package]] name = "wasmer-derive" -version = "5.0.2" +version = "4.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a2e5a149301403084c3198b68cd635b7f210e8d26f533218a7a68b6d20b441e" +checksum = "9c5875633aea92153b6a561cb07363785ca9e07792ca6cd7c1cc371761001d8f" dependencies = [ - "proc-macro-error2", + "proc-macro-error", "proc-macro2", "quote", "syn 1.0.109", @@ -19307,29 +19094,29 @@ dependencies = [ [[package]] name = "wasmer-types" -version = "5.0.2" +version = "4.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d09f305bc775871b551c5907facaadc8e7ddc0845b0ccd18ccb2c046d0f9b7f0" +checksum = "8fb32f0d231b591e4c8a65e81d4647fa3180496d71a123d4948dba8551bba9c2" dependencies = [ - "bytecheck 0.6.11", + "bytecheck", "enum-iterator 0.7.0", "enumset", "getrandom", "hex", - "indexmap 2.6.0", + "indexmap 1.9.3", "more-asserts", "rkyv", "sha2 0.10.8", "target-lexicon", - "thiserror 1.0.62", + "thiserror", "xxhash-rust", ] [[package]] name = "wasmer-vm" -version = "5.0.2" +version = "4.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ab1b03c3cb791e94f63a44377fe35936496d35230d8219a36af11b090940c99" +checksum = "e38e9301f5bb9f18da9cda4002d74d2cb6ac1f36dcf919fd77f91fca321fb1e5" dependencies = [ "backtrace", "cc", @@ -19337,9 +19124,10 @@ dependencies = [ "corosensei", "crossbeam-queue", "dashmap 6.0.1", + "derivative", "enum-iterator 0.7.0", "fnv", - "indexmap 2.6.0", + "indexmap 1.9.3", "lazy_static", "libc", "mach2", @@ -19347,7 +19135,7 @@ dependencies = [ "more-asserts", "region", "scopeguard", - "thiserror 1.0.62", + "thiserror", "wasmer-types", "windows-sys 0.59.0", ] @@ -19357,7 +19145,7 @@ name = "wasmi" version = "0.13.2" source = "git+https://github.com/gear-tech/wasmi?branch=v0.13.2-sign-ext#3a0b1022377919e62aadf4d78b762abd1c3e9a04" dependencies = [ - "parity-wasm 0.45.0 (git+https://github.com/gear-tech/parity-wasm?branch=v0.45.0-sign-ext)", + "parity-wasm", "wasmi-validation", "wasmi_core 0.2.1", ] @@ -19396,7 +19184,7 @@ name = "wasmi-validation" version = "0.5.0" source = "git+https://github.com/gear-tech/wasmi?branch=v0.13.2-sign-ext#3a0b1022377919e62aadf4d78b762abd1c3e9a04" dependencies = [ - "parity-wasm 0.45.0 (git+https://github.com/gear-tech/parity-wasm?branch=v0.45.0-sign-ext)", + "parity-wasm", ] [[package]] @@ -19411,7 +19199,7 @@ version = "0.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0d0fd5f4f2c4fe0c98554bb7293108ed2b1d0c124dce0974f999de7d517d37bc" dependencies = [ - "ahash", + "ahash 0.8.11", "hashbrown 0.14.5", "string-interner", ] @@ -19474,9 +19262,8 @@ dependencies = [ [[package]] name = "wasmparser" -version = "0.118.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77f1154f1ab868e2a01d9834a805faca7bf8b50d041b4ca714d005d0dab1c50c" +version = "0.115.0" +source = "git+https://github.com/gear-tech/wasm-tools.git?branch=gear-stable#ffe9abee63ad640c051d50515cedee7f67f31884" dependencies = [ "indexmap 2.6.0", "semver 1.0.18", @@ -19484,22 +19271,19 @@ dependencies = [ [[package]] name = "wasmparser" -version = "0.216.0" +version = "0.118.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bcdee6bea3619d311fb4b299721e89a986c3470f804b6d534340e412589028e3" +checksum = "77f1154f1ab868e2a01d9834a805faca7bf8b50d041b4ca714d005d0dab1c50c" dependencies = [ - "ahash", - "bitflags 2.5.0", - "hashbrown 0.14.5", "indexmap 2.6.0", "semver 1.0.18", ] [[package]] name = "wasmparser" -version = "0.220.0" +version = "0.121.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e246c2772ce3ebc83f89a2d4487ac5794cad6c309b2071818a88c7db7c36d87b" +checksum = "9dbe55c8f9d0dbd25d9447a5a889ff90c0cc3feaa7395310d3d826b2c703eaab" dependencies = [ "bitflags 2.5.0", "indexmap 2.6.0", @@ -19623,7 +19407,7 @@ dependencies = [ "log", "object 0.30.4", "target-lexicon", - "thiserror 1.0.62", + "thiserror", "wasmparser 0.102.0", "wasmtime-cranelift-shared", "wasmtime-environ", @@ -19658,7 +19442,7 @@ dependencies = [ "object 0.30.4", "serde", "target-lexicon", - "thiserror 1.0.62", + "thiserror", "wasmparser 0.102.0", "wasmtime-types", ] @@ -19756,7 +19540,7 @@ checksum = "a4f6fffd2a1011887d57f07654dd112791e872e3ff4a2e626aee8059ee17f06f" dependencies = [ "cranelift-entity 0.95.1", "serde", - "thiserror 1.0.62", + "thiserror", "wasmparser 0.102.0", ] @@ -20010,6 +19794,19 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "windows-sys" +version = "0.33.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43dbb096663629518eb1dfa72d80243ca5a6aca764cae62a2df70af760a9be75" +dependencies = [ + "windows_aarch64_msvc 0.33.0", + "windows_i686_gnu 0.33.0", + "windows_i686_msvc 0.33.0", + "windows_x86_64_gnu 0.33.0", + "windows_x86_64_msvc 0.33.0", +] + [[package]] name = "windows-sys" version = "0.42.0" @@ -20125,6 +19922,12 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" +[[package]] +name = "windows_aarch64_msvc" +version = "0.33.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd761fd3eb9ab8cc1ed81e56e567f02dd82c4c837e48ac3b2181b9ffc5060807" + [[package]] name = "windows_aarch64_msvc" version = "0.42.2" @@ -20143,6 +19946,12 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" +[[package]] +name = "windows_i686_gnu" +version = "0.33.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cab0cf703a96bab2dc0c02c0fa748491294bf9b7feb27e1f4f96340f208ada0e" + [[package]] name = "windows_i686_gnu" version = "0.42.2" @@ -20167,6 +19976,12 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" +[[package]] +name = "windows_i686_msvc" +version = "0.33.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8cfdbe89cc9ad7ce618ba34abc34bbb6c36d99e96cae2245b7943cd75ee773d0" + [[package]] name = "windows_i686_msvc" version = "0.42.2" @@ -20185,6 +20000,12 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" +[[package]] +name = "windows_x86_64_gnu" +version = "0.33.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4dd9b0c0e9ece7bb22e84d70d01b71c6d6248b81a3c60d11869451b4cb24784" + [[package]] name = "windows_x86_64_gnu" version = "0.42.2" @@ -20221,6 +20042,12 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" +[[package]] +name = "windows_x86_64_msvc" +version = "0.33.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff1e4aa646495048ec7f3ffddc411e1d829c026a2ec62b39da15c1055e406eaa" + [[package]] name = "windows_x86_64_msvc" version = "0.42.2" @@ -20295,7 +20122,7 @@ dependencies = [ "pharos", "rustc_version 0.4.0", "send_wrapper", - "thiserror 1.0.62", + "thiserror", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", @@ -20335,7 +20162,7 @@ dependencies = [ "nom", "oid-registry 0.6.1", "rusticata-macros", - "thiserror 1.0.62", + "thiserror", "time", ] @@ -20352,21 +20179,10 @@ dependencies = [ "nom", "oid-registry 0.7.0", "rusticata-macros", - "thiserror 1.0.62", + "thiserror", "time", ] -[[package]] -name = "xattr" -version = "1.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8da84f1a25939b27f6820d92aed108f83ff920fdf11a7b19366c27c4cda81d4f" -dependencies = [ - "libc", - "linux-raw-sys 0.4.14", - "rustix 0.38.37", -] - [[package]] name = "xml-rs" version = "0.8.20" @@ -20388,24 +20204,6 @@ version = "0.8.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "63658493314859b4dfdf3fb8c1defd61587839def09582db50b8a4e93afca6bb" -[[package]] -name = "xz" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c887690ff2a2e233e8e49633461521f98ec57fbff9d59a884c9a4f04ec1da34" -dependencies = [ - "xz2", -] - -[[package]] -name = "xz2" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "388c44dc09d76f1536602ead6d325eb532f5c122f17782bd57fb47baeeb767e2" -dependencies = [ - "lzma-sys", -] - [[package]] name = "yamux" version = "0.12.1" @@ -20533,49 +20331,6 @@ dependencies = [ "syn 2.0.89", ] -[[package]] -name = "zip" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99d52293fc86ea7cf13971b3bb81eb21683636e7ae24c729cdaf1b7c4157a352" -dependencies = [ - "aes 0.8.4", - "arbitrary", - "bzip2", - "constant_time_eq 0.3.1", - "crc32fast", - "crossbeam-utils", - "deflate64", - "displaydoc", - "flate2", - "hmac 0.12.1", - "indexmap 2.6.0", - "lzma-rs", - "memchr", - "pbkdf2", - "rand", - "sha1", - "thiserror 2.0.3", - "time", - "zeroize", - "zopfli", - "zstd 0.13.2", -] - -[[package]] -name = "zopfli" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5019f391bac5cf252e93bbcc53d039ffd62c7bfb7c150414d61369afe57e946" -dependencies = [ - "bumpalo", - "crc32fast", - "lockfree-object-pool", - "log", - "once_cell", - "simd-adler32", -] - [[package]] name = "zstd" version = "0.11.2+zstd.1.5.2" @@ -20594,15 +20349,6 @@ dependencies = [ "zstd-safe 6.0.6", ] -[[package]] -name = "zstd" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcf2b778a664581e31e389454a7072dab1647606d44f7feea22cd5abb9c9f3f9" -dependencies = [ - "zstd-safe 7.2.1", -] - [[package]] name = "zstd-safe" version = "5.0.2+zstd.1.5.2" @@ -20623,15 +20369,6 @@ dependencies = [ "zstd-sys", ] -[[package]] -name = "zstd-safe" -version = "7.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54a3ab4db68cea366acc5c897c7b4d4d1b8994a9cd6e6f841f8964566a419059" -dependencies = [ - "zstd-sys", -] - [[package]] name = "zstd-sys" version = "2.0.10+zstd.1.5.6" diff --git a/Cargo.toml b/Cargo.toml index 34af0a6060c..71a23839950 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -599,5 +599,3 @@ blake3 = { git = "https://github.com/gear-tech/BLAKE3", branch = "clang-cl-cross # TODO: remove after https://github.com/pepyakin/wabt-rs/pull/84 wabt = { git = "https://github.com/gear-tech/wabt-rs", branch = "al-win-crt" } - -wasm-instrument = { version = "0.4.0", git = "https://github.com/gear-tech/wasm-instrument", branch = "v0.4.0-sign-ext" } From 9342e3a4358351403c5b4b4b46ce0e62a4d40a69 Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Thu, 21 Nov 2024 01:04:00 +0100 Subject: [PATCH 08/26] Update wasmparser --- Cargo.lock | 692 +++++++++++++++----------- Cargo.toml | 2 +- utils/wasm-optimizer/src/stack_end.rs | 13 +- 3 files changed, 421 insertions(+), 286 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f04d5cf65ba..f872b4905c4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -34,7 +34,7 @@ version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" dependencies = [ - "gimli 0.28.1", + "gimli 0.28.0", ] [[package]] @@ -487,7 +487,7 @@ checksum = "8037e03c7f462a063f28daec9fda285a9a89da003c552f8637a80b9c8fd96241" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -641,7 +641,7 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -658,7 +658,7 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", "syn-solidity", "tiny-keccak", ] @@ -676,7 +676,7 @@ dependencies = [ "proc-macro2", "quote", "serde_json", - "syn 2.0.89", + "syn 2.0.71", "syn-solidity", ] @@ -853,7 +853,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -1263,7 +1263,7 @@ checksum = "7378575ff571966e99a744addeff0bff98b8ada0dedf1956d59e634db95eaac1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", "synstructure 0.13.1", ] @@ -1286,7 +1286,7 @@ checksum = "7b18050c2cd6fe86c3a76584ef5e0baf286d038cda203eb6223df2cc413565f7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -1447,7 +1447,7 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -1487,7 +1487,7 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -1504,7 +1504,7 @@ checksum = "6e0c28dcc82d7c8ead5cb13beb15405b57b8546e93215673ff8ca0349a028107" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -1564,7 +1564,7 @@ checksum = "99e1aca718ea7b89985790c94aad72d77533063fe00bc497bb79a7c2dae6a661" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -1597,7 +1597,7 @@ checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -1714,7 +1714,7 @@ dependencies = [ "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -2033,6 +2033,15 @@ dependencies = [ "serde", ] +[[package]] +name = "bytesize" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a3e368af43e418a04d52505cf3dbc23dda4e3407ae2fa99fd0e4f308ce546acc" +dependencies = [ + "serde", +] + [[package]] name = "bzip2-sys" version = "0.1.11+1.0.8" @@ -2433,7 +2442,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -2713,43 +2722,13 @@ dependencies = [ "libc", ] -[[package]] -name = "cranelift-bforest" -version = "0.91.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a2ab4512dfd3a6f4be184403a195f76e81a8a9f9e6c898e19d2dc3ce20e0115" -dependencies = [ - "cranelift-entity 0.91.1", -] - [[package]] name = "cranelift-bforest" version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1277fbfa94bc82c8ec4af2ded3e639d49ca5f7f3c7eeab2c66accd135ece4e70" dependencies = [ - "cranelift-entity 0.95.1", -] - -[[package]] -name = "cranelift-codegen" -version = "0.91.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98b022ed2a5913a38839dfbafe6cf135342661293b08049843362df4301261dc" -dependencies = [ - "arrayvec 0.7.4", - "bumpalo", - "cranelift-bforest 0.91.1", - "cranelift-codegen-meta 0.91.1", - "cranelift-codegen-shared 0.91.1", - "cranelift-egraph", - "cranelift-entity 0.91.1", - "cranelift-isle 0.91.1", - "gimli 0.26.2", - "log", - "regalloc2 0.5.1", - "smallvec", - "target-lexicon", + "cranelift-entity", ] [[package]] @@ -2759,11 +2738,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c6e8c31ad3b2270e9aeec38723888fe1b0ace3bea2b06b3f749ccf46661d3220" dependencies = [ "bumpalo", - "cranelift-bforest 0.95.1", - "cranelift-codegen-meta 0.95.1", - "cranelift-codegen-shared 0.95.1", - "cranelift-entity 0.95.1", - "cranelift-isle 0.95.1", + "cranelift-bforest", + "cranelift-codegen-meta", + "cranelift-codegen-shared", + "cranelift-entity", + "cranelift-isle", "gimli 0.27.3", "hashbrown 0.13.2", "log", @@ -2772,56 +2751,21 @@ dependencies = [ "target-lexicon", ] -[[package]] -name = "cranelift-codegen-meta" -version = "0.91.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "639307b45434ad112a98f8300c0f0ab085cbefcd767efcdef9ef19d4c0756e74" -dependencies = [ - "cranelift-codegen-shared 0.91.1", -] - [[package]] name = "cranelift-codegen-meta" version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c8ac5ac30d62b2d66f12651f6b606dbdfd9c2cfd0908de6b387560a277c5c9da" dependencies = [ - "cranelift-codegen-shared 0.95.1", + "cranelift-codegen-shared", ] -[[package]] -name = "cranelift-codegen-shared" -version = "0.91.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "278e52e29c53fcf32431ef08406c295699a70306d05a0715c5b1bf50e33a9ab7" - [[package]] name = "cranelift-codegen-shared" version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dd82b8b376247834b59ed9bdc0ddeb50f517452827d4a11bccf5937b213748b8" -[[package]] -name = "cranelift-egraph" -version = "0.91.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "624b54323b06e675293939311943ba82d323bb340468ce1889be5da7932c8d73" -dependencies = [ - "cranelift-entity 0.91.1", - "fxhash", - "hashbrown 0.12.3", - "indexmap 1.9.3", - "log", - "smallvec", -] - -[[package]] -name = "cranelift-entity" -version = "0.91.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a59bcbca89c3f1b70b93ab3cbba5e5e0cbf3e63dadb23c7525cb142e21a9d4c" - [[package]] name = "cranelift-entity" version = "0.95.1" @@ -2831,36 +2775,18 @@ dependencies = [ "serde", ] -[[package]] -name = "cranelift-frontend" -version = "0.91.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d70abacb8cfef3dc8ff7e8836e9c1d70f7967dfdac824a4cd5e30223415aca6" -dependencies = [ - "cranelift-codegen 0.91.1", - "log", - "smallvec", - "target-lexicon", -] - [[package]] name = "cranelift-frontend" version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "64a25d9d0a0ae3079c463c34115ec59507b4707175454f0eee0891e83e30e82d" dependencies = [ - "cranelift-codegen 0.95.1", + "cranelift-codegen", "log", "smallvec", "target-lexicon", ] -[[package]] -name = "cranelift-isle" -version = "0.91.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "393bc73c451830ff8dbb3a07f61843d6cb41a084f9996319917c0b291ed785bb" - [[package]] name = "cranelift-isle" version = "0.95.1" @@ -2873,7 +2799,7 @@ version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bb6b03e0e03801c4b3fd8ce0758a94750c07a44e7944cc0ffbf0d3f2e7c79b00" dependencies = [ - "cranelift-codegen 0.95.1", + "cranelift-codegen", "libc", "target-lexicon", ] @@ -2884,9 +2810,9 @@ version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ff3220489a3d928ad91e59dd7aeaa8b3de18afb554a6211213673a71c90737ac" dependencies = [ - "cranelift-codegen 0.95.1", - "cranelift-entity 0.95.1", - "cranelift-frontend 0.95.1", + "cranelift-codegen", + "cranelift-entity", + "cranelift-frontend", "itertools 0.10.5", "log", "smallvec", @@ -2926,9 +2852,9 @@ checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" [[package]] name = "crc32fast" -version = "1.4.2" +version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" +checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d" dependencies = [ "cfg-if", ] @@ -2979,9 +2905,12 @@ dependencies = [ [[package]] name = "crossbeam-utils" -version = "0.8.20" +version = "0.8.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" +checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294" +dependencies = [ + "cfg-if", +] [[package]] name = "crunchy" @@ -3084,7 +3013,7 @@ checksum = "83fdaf97f4804dcebfa5862639bc9ce4121e82140bec2a987ac5140294865b5b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -3111,7 +3040,7 @@ dependencies = [ "proc-macro2", "quote", "scratch", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -3128,7 +3057,7 @@ checksum = "50c49547d73ba8dcfd4ad7325d64c6d5391ff4224d498fc39a6f3f49825a530d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -3176,7 +3105,7 @@ dependencies = [ "proc-macro2", "quote", "strsim 0.11.1", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -3198,7 +3127,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ "darling_core 0.20.10", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -3953,7 +3882,7 @@ checksum = "d65d7ce8132b7c0e54497a4d9a55a1c2a0912a0d786cf894472ba818fba45762" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -3964,7 +3893,7 @@ checksum = "62d671cc41a825ebabc75757b62d3d168c577f9149b2d49ece1dad1f72119d25" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -3975,7 +3904,38 @@ checksum = "67e77553c4162a157adbf834ebae5b415acbecbeafc7a74b0e886657506a7611" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", +] + +[[package]] +name = "derive_builder" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d67778784b508018359cbc8696edb3db78160bab2c2a28ba7f56ef6932997f8" +dependencies = [ + "derive_builder_macro", +] + +[[package]] +name = "derive_builder_core" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c11bdc11a0c47bc7d37d582b5285da6849c96681023680b906673c5707af7b0f" +dependencies = [ + "darling 0.14.4", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "derive_builder_macro" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebcda35c7a396850a55ffeac740804b40ffec779b98fffbb1738f4033f0ee79e" +dependencies = [ + "derive_builder_core", + "syn 1.0.109", ] [[package]] @@ -3988,7 +3948,7 @@ dependencies = [ "proc-macro2", "quote", "rustc_version 0.4.0", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -4008,7 +3968,7 @@ checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", "unicode-xid", ] @@ -4118,13 +4078,13 @@ dependencies = [ [[package]] name = "displaydoc" -version = "0.2.5" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" +checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -4154,7 +4114,7 @@ dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.89", + "syn 2.0.71", "termcolor", "toml 0.8.14", "walkdir", @@ -4354,7 +4314,7 @@ dependencies = [ "heck 0.4.1", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -4394,7 +4354,7 @@ checksum = "03cdc46ec28bd728e67540c528013c6a10eb69a02eb31078a1bda695438cbfb8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -4435,7 +4395,7 @@ checksum = "5e9a1f9f7d83e59740248a6e14ecf93929ade55027844dfcea78beafccc15745" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -4456,7 +4416,7 @@ dependencies = [ "darling 0.20.10", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -4699,7 +4659,6 @@ dependencies = [ "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "tokio", "tower 0.4.13", - "tower-http", ] [[package]] @@ -4858,7 +4817,7 @@ dependencies = [ "fs-err", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -5018,6 +4977,16 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cda653ca797810c02f7ca4b804b40b8b95ae046eb989d356bce17919a8c25499" +[[package]] +name = "flate2" +version = "1.0.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6c98ee8095e9d1dcbf2fcc6d95acccb90d1c81db1e44725c6a984b1dbdfb010" +dependencies = [ + "crc32fast", + "miniz_oxide", +] + [[package]] name = "float-cmp" version = "0.9.0" @@ -5169,7 +5138,7 @@ dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -5324,7 +5293,7 @@ dependencies = [ "proc-macro2", "quote", "sp-crypto-hashing 0.1.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -5336,7 +5305,7 @@ dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -5346,7 +5315,7 @@ source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -5590,7 +5559,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -5962,7 +5931,7 @@ name = "gear-common-codegen" version = "1.7.0" dependencies = [ "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -5993,7 +5962,7 @@ dependencies = [ "scale-info", "serde", "wabt", - "wasmparser-nostd", + "wasmparser 0.220.0", ] [[package]] @@ -6536,7 +6505,7 @@ dependencies = [ "rand", "thiserror", "wasm-smith", - "wasmparser-nostd", + "wasmparser 0.220.0", "wasmprinter", "wat", ] @@ -6547,10 +6516,8 @@ version = "1.7.0" dependencies = [ "derive_more 0.99.18", "enum-iterator 1.5.0", - "gear-wasm", "gwasm-instrument", - "parity-wasm", - "wasmparser-nostd", + "wasmparser 0.220.0", "wat", ] @@ -6568,7 +6535,7 @@ dependencies = [ "wabt", "wasm-opt", "wasmer", - "wasmparser-nostd", + "wasmparser 0.220.0", "which", ] @@ -6604,7 +6571,7 @@ dependencies = [ "quote", "serde", "serde_json", - "syn 2.0.89", + "syn 2.0.71", "tabled", "vara-runtime", ] @@ -6733,9 +6700,9 @@ dependencies = [ [[package]] name = "gimli" -version = "0.28.1" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" +checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" dependencies = [ "fallible-iterator 0.3.0", "stable_deref_trait", @@ -6792,7 +6759,7 @@ dependencies = [ "proc-macro2", "quote", "scale-info", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -6913,7 +6880,7 @@ dependencies = [ "scale-info", "sp-io 38.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "subxt-codegen", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -6922,7 +6889,7 @@ version = "1.7.0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -6952,7 +6919,7 @@ dependencies = [ "gstd", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", "trybuild", ] @@ -7040,6 +7007,12 @@ dependencies = [ "tracing", ] +[[package]] +name = "half" +version = "1.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b43ede17f21864e81be2fa654110bf1e793774238d86ef8555c37e6519c0403" + [[package]] name = "handlebars" version = "5.1.2" @@ -7117,6 +7090,16 @@ dependencies = [ "hashbrown 0.14.5", ] +[[package]] +name = "hdrhistogram" +version = "7.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "765c9198f173dd59ce26ff9f95ef0aafd0a0fe01fb9d72841bc5066a4c06511d" +dependencies = [ + "byteorder", + "num-traits", +] + [[package]] name = "headers" version = "0.3.9" @@ -8142,7 +8125,7 @@ dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -8376,9 +8359,9 @@ checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" [[package]] name = "libc" -version = "0.2.166" +version = "0.2.158" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2ccc108bbc0b1331bd061864e7cd823c0cab660bbe6970e66e2c0614decde36" +checksum = "d8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439" [[package]] name = "libc-print" @@ -9087,7 +9070,7 @@ dependencies = [ "proc-macro-warning 0.4.2", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -9098,7 +9081,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -9589,7 +9572,7 @@ dependencies = [ "macro_magic_core", "macro_magic_macros", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -9603,7 +9586,7 @@ dependencies = [ "macro_magic_core_macros", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -9614,7 +9597,7 @@ checksum = "b02abfe41815b5bd98dbd4260173db2c116dda171dc0fe7838cb206333b83308" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -9625,7 +9608,7 @@ checksum = "73ea28ee64b88876bf45277ed9a5817c1817df061a74f2b988971a12570e5869" dependencies = [ "macro_magic_core", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -9667,9 +9650,9 @@ dependencies = [ [[package]] name = "memchr" -version = "2.7.4" +version = "2.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" +checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" [[package]] name = "memfd" @@ -9911,7 +9894,7 @@ dependencies = [ "cfg-if", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -10484,7 +10467,7 @@ checksum = "96667db765a921f7b295ffee8b60472b686a51d4f21c2ee4ffdb94c7013b65a6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -10495,7 +10478,7 @@ checksum = "681030a937600a36906c185595136d26abfebb4aa9c65701cefcaf8578bb982b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -10597,7 +10580,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -11223,7 +11206,7 @@ version = "1.7.0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -12024,7 +12007,7 @@ dependencies = [ "pest_meta", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -12075,7 +12058,7 @@ checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -12166,7 +12149,7 @@ dependencies = [ "polkavm-common", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -12176,7 +12159,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8ba81f7b5faac81e528eb6158a6f3c9e0bb1008e0ffa19653bc8dea925ecb429" dependencies = [ "polkavm-derive-impl", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -12185,7 +12168,7 @@ version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c7be503e60cf56c0eb785f90aaba4b583b36bff00e93997d93fef97f9553c39" dependencies = [ - "gimli 0.28.1", + "gimli 0.28.0", "hashbrown 0.14.5", "log", "object 0.32.2", @@ -12361,7 +12344,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ae005bd773ab59b4725093fd7df83fd7892f7d8eafb48dbd7de6e024e4215f9d" dependencies = [ "proc-macro2", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -12448,7 +12431,7 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -12459,7 +12442,7 @@ checksum = "3d1eaa7fa0aa1929ffdf7eeb6eac234dde6268914a14ad44d23521ab6a9b258e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -12470,14 +12453,14 @@ checksum = "834da187cfe638ae8abb0203f0b33e5ccdb02a28e7199f2f47b3e2754f50edca" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] name = "proc-macro2" -version = "1.0.92" +version = "1.0.85" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0" +checksum = "22244ce15aa966053a896d1accb3a6e68469b97c7f33f284b99f0d576879fc23" dependencies = [ "unicode-ident", ] @@ -12528,7 +12511,7 @@ checksum = "440f724eba9f6996b75d63681b0a92b06947f1457076d503a4d2e2c8f56442b8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -12610,7 +12593,7 @@ dependencies = [ "prost 0.12.6", "prost-types 0.12.6", "regex", - "syn 2.0.89", + "syn 2.0.71", "tempfile", ] @@ -12637,7 +12620,7 @@ dependencies = [ "itertools 0.12.1", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -13112,19 +13095,7 @@ checksum = "bcc303e793d3734489387d205e9b186fac9c6cfacedd98cbb2e8a5943595f3e6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", -] - -[[package]] -name = "regalloc2" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "300d4fbfb40c1c66a78ba3ddd41c1110247cf52f97b87d0f2fc9209bd49b030c" -dependencies = [ - "fxhash", - "log", - "slice-group-by", - "smallvec", + "syn 2.0.71", ] [[package]] @@ -13226,9 +13197,9 @@ dependencies = [ [[package]] name = "rend" -version = "0.4.2" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71fe3824f5629716b1589be05dacd749f6aa084c87e00e016714a8cdfccc997c" +checksum = "581008d2099240d37fb08d77ad713bcaec2c4d89d50b5b21a8bb1996bbab68ab" dependencies = [ "bytecheck", ] @@ -13330,13 +13301,12 @@ dependencies = [ [[package]] name = "rkyv" -version = "0.7.45" +version = "0.7.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9008cd6385b9e161d8229e1f6549dd23c3d022f132a2ea37ac3a10ac4935779b" +checksum = "0200c8230b013893c0b2d6213d6ec64ed2b9be2e0e016682b7224ff82cff5c58" dependencies = [ "bitvec", "bytecheck", - "bytes", "hashbrown 0.12.3", "indexmap 1.9.3", "ptr_meta", @@ -13349,9 +13319,9 @@ dependencies = [ [[package]] name = "rkyv_derive" -version = "0.7.45" +version = "0.7.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "503d1d27590a2b0a3a4ca4c94755aa2875657196ecbf401a42eff41d7de532c0" +checksum = "b2e06b915b5c230a17d7a736d1e2e63ee753c256a8614ef3f5147b13a4f5541d" dependencies = [ "proc-macro2", "quote", @@ -13905,7 +13875,7 @@ dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -14884,7 +14854,7 @@ dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -15057,7 +15027,7 @@ dependencies = [ "proc-macro2", "quote", "scale-info", - "syn 2.0.89", + "syn 2.0.71", "thiserror", ] @@ -15091,6 +15061,31 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "schemars" +version = "0.8.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09c024468a378b7e36765cd36702b7a90cc3cba11654f6685c8f233408e89e92" +dependencies = [ + "dyn-clone", + "schemars_derive", + "serde", + "serde_json", + "url", +] + +[[package]] +name = "schemars_derive" +version = "0.8.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1eee588578aff73f856ab961cd2f79e36bc45d7ded33a7562adba4667aecc0e" +dependencies = [ + "proc-macro2", + "quote", + "serde_derive_internals", + "syn 2.0.71", +] + [[package]] name = "schnellru" version = "0.2.3" @@ -15359,6 +15354,16 @@ dependencies = [ "serde", ] +[[package]] +name = "serde_cbor" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2bef2ebfde456fb76bbcf9f59315333decc4fda0b2b44b420243c11e0f5ec1f5" +dependencies = [ + "half", + "serde", +] + [[package]] name = "serde_derive" version = "1.0.210" @@ -15367,7 +15372,18 @@ checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", +] + +[[package]] +name = "serde_derive_internals" +version = "0.29.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.71", ] [[package]] @@ -15390,7 +15406,7 @@ checksum = "8725e1dfadb3a50f7e5ce0b1a540466f6ed3fe7a0fca2ac2b8b831d31316bd00" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -15441,7 +15457,20 @@ dependencies = [ "darling 0.20.10", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", +] + +[[package]] +name = "serde_yaml" +version = "0.9.34+deprecated" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" +dependencies = [ + "indexmap 2.6.0", + "itoa", + "ryu", + "serde", + "unsafe-libyaml", ] [[package]] @@ -15904,7 +15933,7 @@ dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -15918,7 +15947,7 @@ dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -16226,7 +16255,7 @@ checksum = "b85d0f1f1e44bd8617eb2a48203ee854981229e3e79e6f468c7175d5fd37489b" dependencies = [ "quote", "sp-crypto-hashing 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -16236,7 +16265,7 @@ source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot dependencies = [ "quote", "sp-crypto-hashing 0.1.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -16256,7 +16285,7 @@ checksum = "48d09fa0a5f7299fb81ee25ae3853d26200f7a348148aed6de76be905c007dbe" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -16266,7 +16295,7 @@ source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -16609,7 +16638,7 @@ dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -16622,7 +16651,7 @@ dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -16902,7 +16931,7 @@ dependencies = [ "parity-scale-codec", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -16913,7 +16942,7 @@ dependencies = [ "parity-scale-codec", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -17217,7 +17246,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -17230,7 +17259,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -17448,7 +17477,7 @@ dependencies = [ "scale-info", "scale-typegen", "subxt-metadata", - "syn 2.0.89", + "syn 2.0.71", "thiserror", "tokio", ] @@ -17509,7 +17538,7 @@ dependencies = [ "quote", "scale-typegen", "subxt-codegen", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -17538,9 +17567,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.89" +version = "2.0.71" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44d46482f1c1c87acd84dea20c1bf5ebff4c757009ed6bf19cfd36fb10e92c4e" +checksum = "b146dcf730474b4bcd16c311627b31ede9ab149045db4d6088b3becaea046462" dependencies = [ "proc-macro2", "quote", @@ -17556,7 +17585,7 @@ dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -17594,7 +17623,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -17648,6 +17677,17 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" +[[package]] +name = "tar" +version = "0.4.41" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb797dad5fb5b76fcf519e702f4a589483b5ef06567f160c392832c1f5e44909" +dependencies = [ + "filetime", + "libc", + "xattr", +] + [[package]] name = "target-lexicon" version = "0.12.14" @@ -17733,7 +17773,7 @@ checksum = "d20468752b09f49e909e55a5d338caa8bedf615594e9d80bc4c565d30faf798c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -17853,7 +17893,7 @@ checksum = "5f5ae998a069d4b5aba8ee9dad856af7d520c3699e6159b185c2acd48155d39a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -17988,6 +18028,18 @@ dependencies = [ "serde", ] +[[package]] +name = "toml" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dd79e69d3b627db300ff956027cc6c3798cef26d22526befdfcd12feeb6d2257" +dependencies = [ + "serde", + "serde_spanned", + "toml_datetime", + "toml_edit 0.19.15", +] + [[package]] name = "toml" version = "0.8.14" @@ -18009,6 +18061,19 @@ dependencies = [ "serde", ] +[[package]] +name = "toml_edit" +version = "0.19.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" +dependencies = [ + "indexmap 2.6.0", + "serde", + "serde_spanned", + "toml_datetime", + "winnow 0.5.15", +] + [[package]] name = "toml_edit" version = "0.21.1" @@ -18041,9 +18106,14 @@ checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" dependencies = [ "futures-core", "futures-util", + "hdrhistogram", + "indexmap 1.9.3", "pin-project", "pin-project-lite", + "rand", + "slab", "tokio", + "tokio-util", "tower-layer", "tower-service", "tracing", @@ -18123,7 +18193,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -18479,6 +18549,12 @@ dependencies = [ "subtle 2.6.1", ] +[[package]] +name = "unsafe-libyaml" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861" + [[package]] name = "unsigned-varint" version = "0.7.2" @@ -18814,7 +18890,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", "wasm-bindgen-shared", ] @@ -18848,7 +18924,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -18974,9 +19050,9 @@ dependencies = [ [[package]] name = "wasmer" -version = "4.4.0" +version = "4.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d920d06243e9f456c336c428a34560357dedf59d9febaae14f1995ac120cff6" +checksum = "c3a6e0f73e5ae361fe64db607eaf4ab2381d88ad2c1b0bb8cf254cf35d894687" dependencies = [ "bytes", "cfg-if", @@ -18993,19 +19069,18 @@ dependencies = [ "tracing", "wasm-bindgen", "wasmer-compiler", - "wasmer-compiler-cranelift", "wasmer-compiler-singlepass", "wasmer-derive", "wasmer-types", "wasmer-vm", - "windows-sys 0.59.0", + "winapi", ] [[package]] name = "wasmer-cache" -version = "4.4.0" +version = "4.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e2aa507d7ab1d7f6038f60ca107bc4629c5dbf3a0e18427091b7576b0ffbbd9" +checksum = "79fd0889f8844b7c70b8ee8fbf1d1f6ccff99399c6f3d3627048cde04b1ac493" dependencies = [ "blake3", "hex", @@ -19015,9 +19090,9 @@ dependencies = [ [[package]] name = "wasmer-compiler" -version = "4.4.0" +version = "4.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e01832173aa52345e480965f18c638a8a5a9e5e4d85a48675bdf1964147dc7f" +checksum = "cb1e7c79507f5d55f1afd99984717e8380440cd98e13d542e4d00661f986f2d4" dependencies = [ "backtrace", "bytes", @@ -19027,7 +19102,7 @@ dependencies = [ "lazy_static", "leb128", "libc", - "memmap2 0.6.2", + "memmap2 0.5.10", "more-asserts", "region", "rkyv", @@ -19038,34 +19113,15 @@ dependencies = [ "wasmer-types", "wasmer-vm", "wasmparser 0.121.2", - "windows-sys 0.59.0", + "winapi", "xxhash-rust", ] -[[package]] -name = "wasmer-compiler-cranelift" -version = "4.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c1618f53b492cf6649beeb372930e376e0f52d9842c0c5eb5aa2b548251dab6" -dependencies = [ - "cranelift-codegen 0.91.1", - "cranelift-entity 0.91.1", - "cranelift-frontend 0.91.1", - "gimli 0.26.2", - "more-asserts", - "rayon", - "smallvec", - "target-lexicon", - "tracing", - "wasmer-compiler", - "wasmer-types", -] - [[package]] name = "wasmer-compiler-singlepass" -version = "4.4.0" +version = "4.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2b111c55d0b8a30dba67afe8766c56b53f0055653f0bb14b1a337056263ae48" +checksum = "cc490f011e855eb5e31475ff3e9efa83840cc0ed2f8322dfaca18627df0a9f3c" dependencies = [ "byteorder", "dynasm", @@ -19080,11 +19136,33 @@ dependencies = [ "wasmer-types", ] +[[package]] +name = "wasmer-config" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54a0f70c177b1c5062cfe0f5308c3317751796fef9403c22a0cd7b4cacd4ccd8" +dependencies = [ + "anyhow", + "bytesize", + "derive_builder", + "hex", + "indexmap 2.6.0", + "schemars", + "semver 1.0.18", + "serde", + "serde_cbor", + "serde_json", + "serde_yaml", + "thiserror", + "toml 0.8.14", + "url", +] + [[package]] name = "wasmer-derive" -version = "4.4.0" +version = "4.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c5875633aea92153b6a561cb07363785ca9e07792ca6cd7c1cc371761001d8f" +checksum = "ac6b0b0580cfa1fc7ad58cca3626a742f2b2e5ccd51cfc5de43e8edb0d1daa4c" dependencies = [ "proc-macro-error", "proc-macro2", @@ -19094,9 +19172,9 @@ dependencies = [ [[package]] name = "wasmer-types" -version = "4.4.0" +version = "4.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fb32f0d231b591e4c8a65e81d4647fa3180496d71a123d4948dba8551bba9c2" +checksum = "576442cc3d302ca215fd40aa7826a078571dca7eaa773d8cdedca14a2ec7c9a1" dependencies = [ "bytecheck", "enum-iterator 0.7.0", @@ -19109,21 +19187,22 @@ dependencies = [ "sha2 0.10.8", "target-lexicon", "thiserror", + "webc", "xxhash-rust", ] [[package]] name = "wasmer-vm" -version = "4.4.0" +version = "4.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e38e9301f5bb9f18da9cda4002d74d2cb6ac1f36dcf919fd77f91fca321fb1e5" +checksum = "6483035d1df84a978cd6c6a35878e913dc8ec6311f8712548a922a75e87957ba" dependencies = [ "backtrace", "cc", "cfg-if", "corosensei", "crossbeam-queue", - "dashmap 6.0.1", + "dashmap 5.5.3", "derivative", "enum-iterator 0.7.0", "fnv", @@ -19137,7 +19216,7 @@ dependencies = [ "scopeguard", "thiserror", "wasmer-types", - "windows-sys 0.59.0", + "winapi", ] [[package]] @@ -19290,6 +19369,17 @@ dependencies = [ "semver 1.0.18", ] +[[package]] +name = "wasmparser" +version = "0.220.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e246c2772ce3ebc83f89a2d4487ac5794cad6c309b2071818a88c7db7c36d87b" +dependencies = [ + "bitflags 2.5.0", + "indexmap 2.6.0", + "semver 1.0.18", +] + [[package]] name = "wasmparser-nostd" version = "0.100.2" @@ -19398,9 +19488,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b1cefde0cce8cb700b1b21b6298a3837dba46521affd7b8c38a9ee2c869eee04" dependencies = [ "anyhow", - "cranelift-codegen 0.95.1", - "cranelift-entity 0.95.1", - "cranelift-frontend 0.95.1", + "cranelift-codegen", + "cranelift-entity", + "cranelift-frontend", "cranelift-native", "cranelift-wasm", "gimli 0.27.3", @@ -19420,7 +19510,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cd041e382ef5aea1b9fc78442394f1a4f6d676ce457e7076ca4cb3f397882f8b" dependencies = [ "anyhow", - "cranelift-codegen 0.95.1", + "cranelift-codegen", "cranelift-native", "gimli 0.27.3", "object 0.30.4", @@ -19435,7 +19525,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a990198cee4197423045235bf89d3359e69bd2ea031005f4c2d901125955c949" dependencies = [ "anyhow", - "cranelift-entity 0.95.1", + "cranelift-entity", "gimli 0.27.3", "indexmap 1.9.3", "log", @@ -19538,7 +19628,7 @@ version = "8.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a4f6fffd2a1011887d57f07654dd112791e872e3ff4a2e626aee8059ee17f06f" dependencies = [ - "cranelift-entity 0.95.1", + "cranelift-entity", "serde", "thiserror", "wasmparser 0.102.0", @@ -19596,6 +19686,35 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "webc" +version = "6.0.0-rc1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1fc686c7b43c9bc630a499f6ae1f0a4c4bd656576a53ae8a147b0cc9bc983ad" +dependencies = [ + "anyhow", + "base64 0.21.7", + "bytes", + "cfg-if", + "document-features", + "flate2", + "indexmap 1.9.3", + "libc", + "once_cell", + "semver 1.0.18", + "serde", + "serde_cbor", + "serde_json", + "sha2 0.10.8", + "shared-buffer", + "tar", + "tempfile", + "thiserror", + "toml 0.7.8", + "url", + "wasmer-config", +] + [[package]] name = "webpki" version = "0.22.4" @@ -19750,7 +19869,7 @@ checksum = "2bbd5b46c938e506ecbce286b6628a02171d56153ba733b6c741fc627ec9579b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -19761,7 +19880,7 @@ checksum = "053c4c462dc91d3b1504c6fe5a726dd15e216ba718e84a0e46a88fbe5ded3515" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -20183,6 +20302,17 @@ dependencies = [ "time", ] +[[package]] +name = "xattr" +version = "1.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8da84f1a25939b27f6820d92aed108f83ff920fdf11a7b19366c27c4cda81d4f" +dependencies = [ + "libc", + "linux-raw-sys 0.4.14", + "rustix 0.38.37", +] + [[package]] name = "xml-rs" version = "0.8.20" @@ -20308,7 +20438,7 @@ checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] @@ -20328,7 +20458,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.89", + "syn 2.0.71", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 71a23839950..52eae764c97 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -186,7 +186,7 @@ wasmer-vm = "4.3.4" wasmer-compiler = "4.3.4" gear-wasmer-cache = { path = "utils/gear-wasmer-cache" } wasmtime = "8.0.1" -wasmparser = { package = "wasmparser-nostd", version = "0.100.1", default-features = false } +wasmparser = { version = "0.220", default-features = false, features = ["validate"] } which = "4.4.2" winapi = "0.3.9" paste = "1.0" diff --git a/utils/wasm-optimizer/src/stack_end.rs b/utils/wasm-optimizer/src/stack_end.rs index 414ab0837d7..501b40c5806 100644 --- a/utils/wasm-optimizer/src/stack_end.rs +++ b/utils/wasm-optimizer/src/stack_end.rs @@ -270,17 +270,22 @@ pub fn move_mut_globals_to_static(module: &mut Module) -> Result<(), &'static st } fn get_global_index(module_bytes: &[u8], name_predicate: impl Fn(&str) -> bool) -> Option { - use wasmparser::{Name, NameSectionReader, Parser, Payload}; + use wasmparser::{KnownCustom, Name, Parser, Payload}; Parser::new(0) .parse_all(module_bytes) .filter_map(|p| p.ok()) .filter_map(|section| match section { - Payload::CustomSection(r) if r.name() == "name" => { - Some(NameSectionReader::new(r.data(), r.data_offset())) - } + Payload::CustomSection(r) => Some(r), _ => None, }) + .filter_map(|r| { + if let KnownCustom::Name(r) = r.as_known() { + Some(r) + } else { + None + } + }) .flatten() .filter_map(|name| match name { Ok(Name::Global(m)) => Some(m), From a342a7d0b98fc09c66804d36e3258115031ef6c5 Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Thu, 21 Nov 2024 01:39:02 +0100 Subject: [PATCH 09/26] Update wasm-smith --- Cargo.lock | 23 +++------ Cargo.toml | 2 +- utils/wasm-gen/src/config/module.rs | 76 ++++++++++++++++------------- 3 files changed, 52 insertions(+), 49 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f872b4905c4..97f74d1a725 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -18946,8 +18946,9 @@ dependencies = [ [[package]] name = "wasm-encoder" -version = "0.35.0" -source = "git+https://github.com/gear-tech/wasm-tools.git?branch=gear-stable#ffe9abee63ad640c051d50515cedee7f67f31884" +version = "0.220.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebf48234b389415b226a4daef6562933d38c7b28a8b8f64c5c4130dad1561ab7" dependencies = [ "leb128", ] @@ -19022,15 +19023,16 @@ dependencies = [ [[package]] name = "wasm-smith" -version = "0.12.21" -source = "git+https://github.com/gear-tech/wasm-tools.git?branch=gear-stable#ffe9abee63ad640c051d50515cedee7f67f31884" +version = "0.220.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f7d273cf1df3c10f9067cb48796d1a6d1daa3ceb99c3f07d822e5bdeefb34f9" dependencies = [ + "anyhow", "arbitrary", "flagset", "indexmap 2.6.0", "leb128", - "wasm-encoder 0.35.0", - "wasmparser 0.115.0", + "wasm-encoder 0.220.0", ] [[package]] @@ -19339,15 +19341,6 @@ dependencies = [ "url", ] -[[package]] -name = "wasmparser" -version = "0.115.0" -source = "git+https://github.com/gear-tech/wasm-tools.git?branch=gear-stable#ffe9abee63ad640c051d50515cedee7f67f31884" -dependencies = [ - "indexmap 2.6.0", - "semver 1.0.18", -] - [[package]] name = "wasmparser" version = "0.118.2" diff --git a/Cargo.toml b/Cargo.toml index 52eae764c97..fee6bcdb196 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -289,7 +289,6 @@ runtime-primitives = { package = "gear-runtime-primitives", path = "runtime/prim service = { package = "gear-service", path = "node/service", default-features = false } testing = { package = "gear-node-testing", path = "node/testing" } vara-runtime = { path = "runtime/vara", default-features = false } -wasm-smith = { version = "0.12.21", git = "https://github.com/gear-tech/wasm-tools.git", branch = "gear-stable" } # ethexe deps ethexe-cli = { path = "ethexe/cli", default-features = false } @@ -553,6 +552,7 @@ smallvec = "1.13.2" # utils/node-wrappe fs4 = "0.11.1" # utils/gear-wasmer-cache bytes = "1.8.0" # utils/gear-wasmer-cache loom = "0.7.2" # utils/gear-wasmer-cache +wasm-smith = "0.220.0" # utils/wasm-gen [profile.dev.package.corosensei] opt-level = 3 diff --git a/utils/wasm-gen/src/config/module.rs b/utils/wasm-gen/src/config/module.rs index b0a523941b0..6c877601838 100644 --- a/utils/wasm-gen/src/config/module.rs +++ b/utils/wasm-gen/src/config/module.rs @@ -18,29 +18,30 @@ //! Config entities related to generating plain wasm module using `wasm-smith`. //! -//! We don't give access to [`wasm_smith::SwarmConfig`] directly, but with several adaptors, +//! We don't give access to [`wasm_smith::Config`] directly, but with several adaptors, //! because valid wasm module is not always valid gear module. So, some configurational variables //! can be arbitrary, but some must be constantly set. That's implemented with [`ArbitraryParams`] //! and [`ConstantParams`]. -use crate::MemoryLayout; use arbitrary::{Arbitrary, Result, Unstructured}; use std::num::NonZero; -use wasm_smith::{InstructionKind::*, InstructionKinds, SwarmConfig}; +use wasm_smith::{Config, InstructionKind::*, InstructionKinds, MemoryOffsetChoices}; pub use wasm_smith::InstructionKind; +const WASM_PAGE_SIZE: u64 = 0x10_000; + /// Wasm module generation config. /// -/// This config wraps the [`wasm_smith::SwarmConfig`]. That's to make it +/// This config wraps the [`wasm_smith::Config`]. That's to make it /// easy creating a configuration, which is custom, from one side, and, /// from another side, results in generating valid gear wasm modules. #[derive(Debug, Clone)] -pub struct WasmModuleConfig(SwarmConfig); +pub struct WasmModuleConfig(Config); impl WasmModuleConfig { /// Unwrap the inner `wasm-smith` config. - pub fn into_inner(self) -> SwarmConfig { + pub fn into_inner(self) -> Config { self.0 } } @@ -74,16 +75,14 @@ impl From<(SelectableParams, ArbitraryParams)> for WasmModuleConfig { tail_call_enabled, relaxed_simd_enabled, saturating_float_to_int_enabled, - sign_extension_enabled, + sign_extension_ops_enabled, simd_enabled, - float_enabled, - memory_grow_enabled, + allow_floats, max_data_segments, min_data_segments, max_types, min_types, memory_offset_choices, - reserved_memory_size, } = ConstantParams::default(); let SelectableParams { @@ -126,7 +125,7 @@ impl From<(SelectableParams, ArbitraryParams)> for WasmModuleConfig { let allowed_instructions = InstructionKinds::new(&allowed_instructions); - Self(SwarmConfig { + Self(Config { allow_start_export, available_imports, bulk_memory_enabled, @@ -134,6 +133,9 @@ impl From<(SelectableParams, ArbitraryParams)> for WasmModuleConfig { disallow_traps, exceptions_enabled, export_everything, + gc_enabled: false, + custom_page_sizes_enabled: false, + generate_custom_sections: false, max_aliases, max_components, max_data_segments, @@ -146,7 +148,9 @@ impl From<(SelectableParams, ArbitraryParams)> for WasmModuleConfig { max_instances, max_instructions, max_memories, - max_memory_pages, + max_memory32_bytes: max_memory_pages * WASM_PAGE_SIZE, + // we don't support 64-bit WASM + max_memory64_bytes: 0, max_modules, max_nesting_depth, max_tables, @@ -156,7 +160,11 @@ impl From<(SelectableParams, ArbitraryParams)> for WasmModuleConfig { max_values, memory64_enabled, memory_max_size_required, - memory_offset_choices, + memory_offset_choices: MemoryOffsetChoices( + memory_offset_choices.0, + memory_offset_choices.1, + memory_offset_choices.2, + ), min_data_segments, min_element_segments, min_elements, @@ -171,18 +179,22 @@ impl From<(SelectableParams, ArbitraryParams)> for WasmModuleConfig { min_uleb_size, multi_value_enabled, reference_types_enabled, - reserved_memory_size, tail_call_enabled, relaxed_simd_enabled, saturating_float_to_int_enabled, - sign_extension_enabled, + sign_extension_ops_enabled, + shared_everything_threads_enabled: false, simd_enabled, - float_enabled, threads_enabled, + allow_invalid_funcs: false, + wide_arithmetic_enabled: false, allowed_instructions, max_table_elements, table_max_size_required, - memory_grow_enabled, + // do not export anything to pass our checks + exports: Some(Vec::new()), + allow_floats, + extended_const_enabled: false, }) } } @@ -190,7 +202,7 @@ impl From<(SelectableParams, ArbitraryParams)> for WasmModuleConfig { /// Arbitrary wasm module generation params. /// /// These are params that are allowed to be randomly set. -/// All of them are later used to instantiate `wasm_smith::SwarmConfig`. +/// All of them are later used to instantiate `wasm_smith::Config`. #[derive(Debug, Clone)] pub struct ArbitraryParams { available_imports: Option>, @@ -215,15 +227,15 @@ pub struct ArbitraryParams { min_tags: usize, min_uleb_size: u8, threads_enabled: bool, - max_table_elements: u32, + max_table_elements: u64, table_max_size_required: bool, max_memory_pages: u64, } impl Arbitrary<'_> for ArbitraryParams { fn arbitrary(u: &mut Unstructured<'_>) -> Result { - let random_swarm = u.arbitrary()?; - let SwarmConfig { + let random_config = u.arbitrary()?; + let Config { available_imports, canonicalize_nans, export_everything, @@ -248,9 +260,9 @@ impl Arbitrary<'_> for ArbitraryParams { threads_enabled, max_table_elements, table_max_size_required, - max_memory_pages, + max_memory32_bytes, .. - } = random_swarm; + } = random_config; Ok(ArbitraryParams { available_imports, @@ -277,14 +289,14 @@ impl Arbitrary<'_> for ArbitraryParams { threads_enabled, max_table_elements, table_max_size_required, - max_memory_pages, + max_memory_pages: max_memory32_bytes / WASM_PAGE_SIZE, }) } } /// Constant wasm module generation params. /// -/// Wraps params, which are used to create `wasm_smith::SwarmConfig`, but they +/// Wraps params, which are used to create `wasm_smith::Config`, but they /// must have pre-defined values to make `wasm-smith` generate valid gear modules. pub struct ConstantParams { allow_start_export: bool, @@ -307,34 +319,31 @@ pub struct ConstantParams { tail_call_enabled: bool, relaxed_simd_enabled: bool, saturating_float_to_int_enabled: bool, - sign_extension_enabled: bool, + sign_extension_ops_enabled: bool, simd_enabled: bool, - float_enabled: bool, - memory_grow_enabled: bool, + allow_floats: bool, min_types: usize, memory_offset_choices: (u32, u32, u32), - reserved_memory_size: Option, } impl Default for ConstantParams { fn default() -> Self { ConstantParams { bulk_memory_enabled: false, - sign_extension_enabled: false, + sign_extension_ops_enabled: false, saturating_float_to_int_enabled: false, reference_types_enabled: false, tail_call_enabled: false, // This is related to reference_types_enabled. max_tables: 1, simd_enabled: false, - float_enabled: false, + allow_floats: false, relaxed_simd_enabled: false, exceptions_enabled: false, memory64_enabled: false, disallow_traps: true, allow_start_export: false, multi_value_enabled: false, - memory_grow_enabled: false, min_memories: 0, max_memories: 1, min_exports: 0, @@ -346,7 +355,8 @@ impl Default for ConstantParams { max_types: 100, min_types: 5, memory_offset_choices: (75, 25, 0), - reserved_memory_size: Some(MemoryLayout::RESERVED_MEMORY_SIZE as u64), + // TODO: revert + //reserved_memory_size: Some(MemoryLayout::RESERVED_MEMORY_SIZE as u64), } } } From 775a4d04589d010442d106f63a29db3c65bf3e3b Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Thu, 21 Nov 2024 01:48:48 +0100 Subject: [PATCH 10/26] Remove unused `wasmi-validation` patch --- Cargo.toml | 1 - 1 file changed, 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index fee6bcdb196..a22957a4e3e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -590,7 +590,6 @@ debug = true # sp-io = { version = "38.0.0", git = "https://github.com/gear-tech/polkadot-sdk.git", branch = "gear-polkadot-stable2409" } # sp-application-crypto = { version = "38.0.0", git = "https://github.com/gear-tech/polkadot-sdk.git", branch = "gear-polkadot-stable2409" } parity-wasm = { version = "0.45.0", git = "https://github.com/gear-tech/parity-wasm", branch = "v0.45.0-sign-ext" } -wasmi-validation = { version = "0.5.0", git = "https://github.com/gear-tech/wasmi", branch = "v0.13.2-sign-ext" } # wasm-instrument = { version = "0.3.0", git = "https://github.com/gear-tech/wasm-instrument", branch = "v0.3.0-sign-ext" } wasm-instrument = { version = "0.4.0", git = "https://github.com/gear-tech/wasm-instrument", branch = "v0.4.0-sign-ext" } From c180557635ddaddf2612a9378b6fd5ed64771992 Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Thu, 21 Nov 2024 15:43:54 +0100 Subject: [PATCH 11/26] Remove `parity-wasm` & `wasm-instrument` patch --- Cargo.lock | 35 +++++++++++++++++++++-------------- Cargo.toml | 3 --- 2 files changed, 21 insertions(+), 17 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 97f74d1a725..0fd999a15aa 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4618,7 +4618,7 @@ dependencies = [ "gprimitives", "log", "parity-scale-codec", - "parity-wasm", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", "rand", "sp-allocator", "sp-wasm-interface 21.0.1 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", @@ -6474,7 +6474,7 @@ dependencies = [ "gmeta", "itertools 0.13.0", "log", - "parity-wasm", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", "pathdiff", "regex", "rustc_version 0.4.0", @@ -11133,7 +11133,7 @@ dependencies = [ "pallet-gear-scheduler", "pallet-timestamp", "parity-scale-codec", - "parity-wasm", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", "primitive-types", "scale-info", "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", @@ -11191,7 +11191,7 @@ dependencies = [ "pallet-timestamp", "pallet-transaction-payment", "parity-scale-codec", - "parity-wasm", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", "primitive-types", "scale-info", "sp-io 38.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", @@ -11362,7 +11362,7 @@ dependencies = [ "log", "pallet-balances", "parity-scale-codec", - "parity-wasm", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", "primitive-types", "scale-info", "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", @@ -11842,6 +11842,12 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "parity-wasm" +version = "0.45.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e1ad0aff30c1da14b1254fcb2af73e1fa9a28670e584a626f53a369d0e157304" + [[package]] name = "parity-wasm" version = "0.45.0" @@ -16895,7 +16901,7 @@ checksum = "d521a405707b5be561367cd3d442ff67588993de24062ce3adefcf8437ee9fe1" dependencies = [ "impl-serde", "parity-scale-codec", - "parity-wasm", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", "scale-info", "serde", "sp-crypto-hashing-proc-macro 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -16912,7 +16918,7 @@ source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot dependencies = [ "impl-serde", "parity-scale-codec", - "parity-wasm", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", "scale-info", "serde", "sp-crypto-hashing-proc-macro 0.1.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", @@ -17398,7 +17404,7 @@ dependencies = [ "jobserver", "merkleized-metadata", "parity-scale-codec", - "parity-wasm", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", "polkavm-linker", "sc-executor 0.40.1 (registry+https://github.com/rust-lang/crates.io-index)", "sp-core 34.0.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -18959,15 +18965,16 @@ version = "0.1.0" dependencies = [ "clap 4.5.13", "hex", - "parity-wasm", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "wasm-instrument" version = "0.4.0" -source = "git+https://github.com/gear-tech/wasm-instrument?branch=v0.4.0-sign-ext#e57b713873d4364e41ed495893a2f06a80cca5ab" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a47ecb37b9734d1085eaa5ae1a81e60801fd8c28d4cabdd8aedb982021918bc" dependencies = [ - "parity-wasm", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -19018,7 +19025,7 @@ dependencies = [ "env_logger", "gear-wasm-builder", "log", - "parity-wasm", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -19226,7 +19233,7 @@ name = "wasmi" version = "0.13.2" source = "git+https://github.com/gear-tech/wasmi?branch=v0.13.2-sign-ext#3a0b1022377919e62aadf4d78b762abd1c3e9a04" dependencies = [ - "parity-wasm", + "parity-wasm 0.45.0 (git+https://github.com/gear-tech/parity-wasm?branch=v0.45.0-sign-ext)", "wasmi-validation", "wasmi_core 0.2.1", ] @@ -19265,7 +19272,7 @@ name = "wasmi-validation" version = "0.5.0" source = "git+https://github.com/gear-tech/wasmi?branch=v0.13.2-sign-ext#3a0b1022377919e62aadf4d78b762abd1c3e9a04" dependencies = [ - "parity-wasm", + "parity-wasm 0.45.0 (git+https://github.com/gear-tech/parity-wasm?branch=v0.45.0-sign-ext)", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index a22957a4e3e..4201fe6361f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -589,9 +589,6 @@ debug = true [patch.crates-io] # sp-io = { version = "38.0.0", git = "https://github.com/gear-tech/polkadot-sdk.git", branch = "gear-polkadot-stable2409" } # sp-application-crypto = { version = "38.0.0", git = "https://github.com/gear-tech/polkadot-sdk.git", branch = "gear-polkadot-stable2409" } -parity-wasm = { version = "0.45.0", git = "https://github.com/gear-tech/parity-wasm", branch = "v0.45.0-sign-ext" } -# wasm-instrument = { version = "0.3.0", git = "https://github.com/gear-tech/wasm-instrument", branch = "v0.3.0-sign-ext" } -wasm-instrument = { version = "0.4.0", git = "https://github.com/gear-tech/wasm-instrument", branch = "v0.4.0-sign-ext" } # TODO: remove after https://github.com/BLAKE3-team/BLAKE3/pull/230 blake3 = { git = "https://github.com/gear-tech/BLAKE3", branch = "clang-cl-cross-compilation-v1.5.4" } From e496cb70bad9ab463e8905d9d184d823c3fab3f1 Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Fri, 6 Dec 2024 18:06:03 +0100 Subject: [PATCH 12/26] Update cargo files --- Cargo.lock | 169 ++++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 136 insertions(+), 33 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 0fd999a15aa..4de4f3df6b4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2722,13 +2722,43 @@ dependencies = [ "libc", ] +[[package]] +name = "cranelift-bforest" +version = "0.91.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a2ab4512dfd3a6f4be184403a195f76e81a8a9f9e6c898e19d2dc3ce20e0115" +dependencies = [ + "cranelift-entity 0.91.1", +] + [[package]] name = "cranelift-bforest" version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1277fbfa94bc82c8ec4af2ded3e639d49ca5f7f3c7eeab2c66accd135ece4e70" dependencies = [ - "cranelift-entity", + "cranelift-entity 0.95.1", +] + +[[package]] +name = "cranelift-codegen" +version = "0.91.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "98b022ed2a5913a38839dfbafe6cf135342661293b08049843362df4301261dc" +dependencies = [ + "arrayvec 0.7.4", + "bumpalo", + "cranelift-bforest 0.91.1", + "cranelift-codegen-meta 0.91.1", + "cranelift-codegen-shared 0.91.1", + "cranelift-egraph", + "cranelift-entity 0.91.1", + "cranelift-isle 0.91.1", + "gimli 0.26.2", + "log", + "regalloc2 0.5.1", + "smallvec", + "target-lexicon", ] [[package]] @@ -2738,11 +2768,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c6e8c31ad3b2270e9aeec38723888fe1b0ace3bea2b06b3f749ccf46661d3220" dependencies = [ "bumpalo", - "cranelift-bforest", - "cranelift-codegen-meta", - "cranelift-codegen-shared", - "cranelift-entity", - "cranelift-isle", + "cranelift-bforest 0.95.1", + "cranelift-codegen-meta 0.95.1", + "cranelift-codegen-shared 0.95.1", + "cranelift-entity 0.95.1", + "cranelift-isle 0.95.1", "gimli 0.27.3", "hashbrown 0.13.2", "log", @@ -2751,21 +2781,56 @@ dependencies = [ "target-lexicon", ] +[[package]] +name = "cranelift-codegen-meta" +version = "0.91.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "639307b45434ad112a98f8300c0f0ab085cbefcd767efcdef9ef19d4c0756e74" +dependencies = [ + "cranelift-codegen-shared 0.91.1", +] + [[package]] name = "cranelift-codegen-meta" version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c8ac5ac30d62b2d66f12651f6b606dbdfd9c2cfd0908de6b387560a277c5c9da" dependencies = [ - "cranelift-codegen-shared", + "cranelift-codegen-shared 0.95.1", ] +[[package]] +name = "cranelift-codegen-shared" +version = "0.91.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "278e52e29c53fcf32431ef08406c295699a70306d05a0715c5b1bf50e33a9ab7" + [[package]] name = "cranelift-codegen-shared" version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dd82b8b376247834b59ed9bdc0ddeb50f517452827d4a11bccf5937b213748b8" +[[package]] +name = "cranelift-egraph" +version = "0.91.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "624b54323b06e675293939311943ba82d323bb340468ce1889be5da7932c8d73" +dependencies = [ + "cranelift-entity 0.91.1", + "fxhash", + "hashbrown 0.12.3", + "indexmap 1.9.3", + "log", + "smallvec", +] + +[[package]] +name = "cranelift-entity" +version = "0.91.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a59bcbca89c3f1b70b93ab3cbba5e5e0cbf3e63dadb23c7525cb142e21a9d4c" + [[package]] name = "cranelift-entity" version = "0.95.1" @@ -2775,18 +2840,36 @@ dependencies = [ "serde", ] +[[package]] +name = "cranelift-frontend" +version = "0.91.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d70abacb8cfef3dc8ff7e8836e9c1d70f7967dfdac824a4cd5e30223415aca6" +dependencies = [ + "cranelift-codegen 0.91.1", + "log", + "smallvec", + "target-lexicon", +] + [[package]] name = "cranelift-frontend" version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "64a25d9d0a0ae3079c463c34115ec59507b4707175454f0eee0891e83e30e82d" dependencies = [ - "cranelift-codegen", + "cranelift-codegen 0.95.1", "log", "smallvec", "target-lexicon", ] +[[package]] +name = "cranelift-isle" +version = "0.91.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "393bc73c451830ff8dbb3a07f61843d6cb41a084f9996319917c0b291ed785bb" + [[package]] name = "cranelift-isle" version = "0.95.1" @@ -2799,7 +2882,7 @@ version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bb6b03e0e03801c4b3fd8ce0758a94750c07a44e7944cc0ffbf0d3f2e7c79b00" dependencies = [ - "cranelift-codegen", + "cranelift-codegen 0.95.1", "libc", "target-lexicon", ] @@ -2810,9 +2893,9 @@ version = "0.95.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ff3220489a3d928ad91e59dd7aeaa8b3de18afb554a6211213673a71c90737ac" dependencies = [ - "cranelift-codegen", - "cranelift-entity", - "cranelift-frontend", + "cranelift-codegen 0.95.1", + "cranelift-entity 0.95.1", + "cranelift-frontend 0.95.1", "itertools 0.10.5", "log", "smallvec", @@ -4659,6 +4742,7 @@ dependencies = [ "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", "tokio", "tower 0.4.13", + "tower-http", ] [[package]] @@ -6516,7 +6600,9 @@ version = "1.7.0" dependencies = [ "derive_more 0.99.18", "enum-iterator 1.5.0", + "gear-wasm", "gwasm-instrument", + "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", "wasmparser 0.220.0", "wat", ] @@ -7090,16 +7176,6 @@ dependencies = [ "hashbrown 0.14.5", ] -[[package]] -name = "hdrhistogram" -version = "7.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "765c9198f173dd59ce26ff9f95ef0aafd0a0fe01fb9d72841bc5066a4c06511d" -dependencies = [ - "byteorder", - "num-traits", -] - [[package]] name = "headers" version = "0.3.9" @@ -13104,6 +13180,18 @@ dependencies = [ "syn 2.0.71", ] +[[package]] +name = "regalloc2" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "300d4fbfb40c1c66a78ba3ddd41c1110247cf52f97b87d0f2fc9209bd49b030c" +dependencies = [ + "fxhash", + "log", + "slice-group-by", + "smallvec", +] + [[package]] name = "regalloc2" version = "0.6.1" @@ -18112,14 +18200,9 @@ checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" dependencies = [ "futures-core", "futures-util", - "hdrhistogram", - "indexmap 1.9.3", "pin-project", "pin-project-lite", - "rand", - "slab", "tokio", - "tokio-util", "tower-layer", "tower-service", "tracing", @@ -19078,6 +19161,7 @@ dependencies = [ "tracing", "wasm-bindgen", "wasmer-compiler", + "wasmer-compiler-cranelift", "wasmer-compiler-singlepass", "wasmer-derive", "wasmer-types", @@ -19126,6 +19210,25 @@ dependencies = [ "xxhash-rust", ] +[[package]] +name = "wasmer-compiler-cranelift" +version = "4.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f3352014573750327646a690d32774312b0e8b7920e7e8ba00c0449eac18390" +dependencies = [ + "cranelift-codegen 0.91.1", + "cranelift-entity 0.91.1", + "cranelift-frontend 0.91.1", + "gimli 0.26.2", + "more-asserts", + "rayon", + "smallvec", + "target-lexicon", + "tracing", + "wasmer-compiler", + "wasmer-types", +] + [[package]] name = "wasmer-compiler-singlepass" version = "4.3.5" @@ -19488,9 +19591,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b1cefde0cce8cb700b1b21b6298a3837dba46521affd7b8c38a9ee2c869eee04" dependencies = [ "anyhow", - "cranelift-codegen", - "cranelift-entity", - "cranelift-frontend", + "cranelift-codegen 0.95.1", + "cranelift-entity 0.95.1", + "cranelift-frontend 0.95.1", "cranelift-native", "cranelift-wasm", "gimli 0.27.3", @@ -19510,7 +19613,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cd041e382ef5aea1b9fc78442394f1a4f6d676ce457e7076ca4cb3f397882f8b" dependencies = [ "anyhow", - "cranelift-codegen", + "cranelift-codegen 0.95.1", "cranelift-native", "gimli 0.27.3", "object 0.30.4", @@ -19525,7 +19628,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a990198cee4197423045235bf89d3359e69bd2ea031005f4c2d901125955c949" dependencies = [ "anyhow", - "cranelift-entity", + "cranelift-entity 0.95.1", "gimli 0.27.3", "indexmap 1.9.3", "log", @@ -19628,7 +19731,7 @@ version = "8.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a4f6fffd2a1011887d57f07654dd112791e872e3ff4a2e626aee8059ee17f06f" dependencies = [ - "cranelift-entity", + "cranelift-entity 0.95.1", "serde", "thiserror", "wasmparser 0.102.0", From f88219e2fa860e86037401e8cf81e9813d9ed739 Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Fri, 6 Dec 2024 23:20:32 +0100 Subject: [PATCH 13/26] Formalize deps --- Cargo.lock | 4 +--- Cargo.toml | 3 +++ utils/wasm-instrument/Cargo.toml | 6 ++---- 3 files changed, 6 insertions(+), 7 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 4de4f3df6b4..cce6b9d0c12 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -6602,7 +6602,6 @@ dependencies = [ "enum-iterator 1.5.0", "gear-wasm", "gwasm-instrument", - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", "wasmparser 0.220.0", "wat", ] @@ -19054,8 +19053,7 @@ dependencies = [ [[package]] name = "wasm-instrument" version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a47ecb37b9734d1085eaa5ae1a81e60801fd8c28d4cabdd8aedb982021918bc" +source = "git+https://github.com/gear-tech/wasm-instrument?branch=v0.4.0-sign-ext#e57b713873d4364e41ed495893a2f06a80cca5ab" dependencies = [ "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", ] diff --git a/Cargo.toml b/Cargo.toml index 4201fe6361f..215b38f9f76 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -590,6 +590,9 @@ debug = true # sp-io = { version = "38.0.0", git = "https://github.com/gear-tech/polkadot-sdk.git", branch = "gear-polkadot-stable2409" } # sp-application-crypto = { version = "38.0.0", git = "https://github.com/gear-tech/polkadot-sdk.git", branch = "gear-polkadot-stable2409" } +# this patched dependecy forces its `sign_ext` feature to be used by Substrate dependencies +wasm-instrument = { version = "0.4.0", git = "https://github.com/gear-tech/wasm-instrument", branch = "v0.4.0-sign-ext" } + # TODO: remove after https://github.com/BLAKE3-team/BLAKE3/pull/230 blake3 = { git = "https://github.com/gear-tech/BLAKE3", branch = "clang-cl-cross-compilation-v1.5.4" } diff --git a/utils/wasm-instrument/Cargo.toml b/utils/wasm-instrument/Cargo.toml index 31513c4fb38..e05cd631283 100644 --- a/utils/wasm-instrument/Cargo.toml +++ b/utils/wasm-instrument/Cargo.toml @@ -17,10 +17,8 @@ gwasm-instrument = { workspace = true, features = ["sign_ext"] } derive_more.workspace = true enum-iterator.workspace = true -# TODO: move in a proper place -# parity-wasm -parity-wasm = { workspace = true, features = ["sign_ext", "multi_value"] } -# parity-wasm +# TODO: remove when tooling is updated +# forcely enable features in transitive dependencies like `gwasm-instrument` gear-wasm = { version = "0.45.1", default-features = false, features = ["sign_ext", "multi_value"] } [dev-dependencies] From 463c28c048940d577929607ccbb86abbd8a04952 Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Fri, 6 Dec 2024 23:21:17 +0100 Subject: [PATCH 14/26] Revert "Multi value" This reverts commit cdb30e4d --- pallets/gear/src/tests.rs | 40 --------------------------------------- 1 file changed, 40 deletions(-) diff --git a/pallets/gear/src/tests.rs b/pallets/gear/src/tests.rs index ea6a5f98dda..8feccac9a9d 100644 --- a/pallets/gear/src/tests.rs +++ b/pallets/gear/src/tests.rs @@ -15832,46 +15832,6 @@ fn use_big_memory() { }); } -#[test] -fn multi_value() { - const WAT: &str = r#" -(module - (import "env" "memory" (memory 1)) - (export "init" (func $init)) - (func $init - i32.const 0xfe - i64.const 0xef - call $a - drop - drop - ) - (func $a (param i32 i64) (result i32 i64) - local.get 0 - local.get 1 - ) -) - "#; - - init_logger(); - new_test_ext().execute_with(|| { - let pid = Gear::upload_program( - RuntimeOrigin::signed(USER_1), - ProgramCodeKind::Custom(WAT).to_bytes(), - DEFAULT_SALT.to_vec(), - EMPTY_PAYLOAD.to_vec(), - 500_000_000_u64, - 0, - false, - ) - .map(|_| get_last_program_id()) - .unwrap(); - - run_to_next_block(None); - - assert!(!Gear::is_terminated(pid)); - }); -} - pub(crate) mod utils { #![allow(unused)] From 2335df562c055b67e55c4d895afeb9ea55ab71e0 Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Fri, 6 Dec 2024 23:23:04 +0100 Subject: [PATCH 15/26] Revert "Remove unused `wasmi-validation` patch" This reverts commit 775a4d04 --- Cargo.toml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 215b38f9f76..ad63375b1ee 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -590,7 +590,8 @@ debug = true # sp-io = { version = "38.0.0", git = "https://github.com/gear-tech/polkadot-sdk.git", branch = "gear-polkadot-stable2409" } # sp-application-crypto = { version = "38.0.0", git = "https://github.com/gear-tech/polkadot-sdk.git", branch = "gear-polkadot-stable2409" } -# this patched dependecy forces its `sign_ext` feature to be used by Substrate dependencies +# these patched dependecies force their `sign_ext` feature to be used by Substrate dependencies +wasmi-validation = { version = "0.5.0", git = "https://github.com/gear-tech/wasmi", branch = "v0.13.2-sign-ext" } wasm-instrument = { version = "0.4.0", git = "https://github.com/gear-tech/wasm-instrument", branch = "v0.4.0-sign-ext" } # TODO: remove after https://github.com/BLAKE3-team/BLAKE3/pull/230 From 8739595cbef1ab0a76371578b6b43b784cba0259 Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Fri, 6 Dec 2024 23:43:46 +0100 Subject: [PATCH 16/26] Enable cranelift via `cfg` --- .github/workflows/build.yml | 4 ++++ sandbox/sandbox/Cargo.toml | 10 +++++++++- sandbox/sandbox/src/embedded_executor.rs | 7 ++++++- 3 files changed, 19 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 2dd97611788..9eb4fff6de9 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -123,6 +123,10 @@ jobs: run: | # fast benchmark tests before long run cargo test -p "pallet-*" --features runtime-benchmarks,runtime-benchmarks-checkers --locked ${{ matrix.profiles.flags }} bench + # check `multivalue` proposal works + RUSTFLAGS="--cfg force_wasmer_cranelift_i_know_what_i_do" \ + cargo test -p pallet-gear --features runtime-benchmarks,runtime-benchmarks-checkers --locked ${{ matrix.profiles.flags }} \ + benchmarking::bench_check_wasm_proposals -- --exact - name: "Test: Benchmarks in WASM" # unoptimized benchmarks take a few hours to run diff --git a/sandbox/sandbox/Cargo.toml b/sandbox/sandbox/Cargo.toml index 1d74f0b7ae9..34769582c40 100644 --- a/sandbox/sandbox/Cargo.toml +++ b/sandbox/sandbox/Cargo.toml @@ -14,10 +14,12 @@ rust-version.workspace = true [package.metadata.docs.rs] targets = ["x86_64-unknown-linux-gnu"] +[lints.rust] +unexpected_cfgs = { level = "warn", check-cfg = ['cfg(force_wasmer_cranelift_i_know_what_i_do)'] } + [dependencies] codec.workspace = true log.workspace = true -wasmer = { workspace = true, optional = true, features = ["cranelift"] } wasmer-types = { workspace = true, optional = true } wasmer-vm = { workspace = true, optional = true } wasmer-compiler = { workspace = true, optional = true } @@ -28,6 +30,12 @@ sp-wasm-interface-common.workspace = true gear-sandbox-interface.workspace = true gear-sandbox-env.workspace = true +[target.'cfg(not(force_wasmer_cranelift_i_know_what_i_do))'.dependencies] +wasmer = { workspace = true, optional = true } + +[target.'cfg(force_wasmer_cranelift_i_know_what_i_do)'.dependencies] +wasmer = { workspace = true, optional = true, features = ["cranelift"] } + [dev-dependencies] assert_matches = "1.3.0" wat = "1.0" diff --git a/sandbox/sandbox/src/embedded_executor.rs b/sandbox/sandbox/src/embedded_executor.rs index b4ca8451b8a..0fe01e5ad4c 100644 --- a/sandbox/sandbox/src/embedded_executor.rs +++ b/sandbox/sandbox/src/embedded_executor.rs @@ -204,7 +204,12 @@ impl Store { impl SandboxStore for Store { fn new(state: T) -> Self { - let mut engine = Engine::from(wasmer::Cranelift::new()); + #[cfg(force_wasmer_cranelift_i_know_what_i_do)] + let compiler = wasmer::Cranelift::new(); + #[cfg(not(force_wasmer_cranelift_i_know_what_i_do))] + let compiler = wasmer::Singlepass::new(); + + let mut engine = Engine::from(compiler); let tunables = CustomTunables::for_target(engine.target()) // make stack size bigger for fuzzer .with_wasm_stack_size(16 * 1024 * 1024); From c215f146c6c99f0c33cda2244f1f6cc338e609a2 Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Fri, 6 Dec 2024 23:46:23 +0100 Subject: [PATCH 17/26] Remove redundant bench tests --- .github/workflows/build.yml | 2 +- pallets/gear/src/benchmarking/mod.rs | 5 --- pallets/gear/src/benchmarking/tests/mod.rs | 51 ---------------------- 3 files changed, 1 insertion(+), 57 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 9eb4fff6de9..f5f25ca7338 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -126,7 +126,7 @@ jobs: # check `multivalue` proposal works RUSTFLAGS="--cfg force_wasmer_cranelift_i_know_what_i_do" \ cargo test -p pallet-gear --features runtime-benchmarks,runtime-benchmarks-checkers --locked ${{ matrix.profiles.flags }} \ - benchmarking::bench_check_wasm_proposals -- --exact + benchmarking::bench_instr_call_indirect_per_result -- --exact - name: "Test: Benchmarks in WASM" # unoptimized benchmarks take a few hours to run diff --git a/pallets/gear/src/benchmarking/mod.rs b/pallets/gear/src/benchmarking/mod.rs index 6f9875a1429..7e93bed2951 100644 --- a/pallets/gear/src/benchmarking/mod.rs +++ b/pallets/gear/src/benchmarking/mod.rs @@ -326,11 +326,6 @@ benchmarks! { tests::check_stack_overflow::(); }: {} - #[extra] - check_wasm_proposals { - tests::wasm_multivalue_proposal::(); - }: {} - #[extra] check_lazy_pages_all { tests::lazy_pages::lazy_pages_charging::(); diff --git a/pallets/gear/src/benchmarking/tests/mod.rs b/pallets/gear/src/benchmarking/tests/mod.rs index 2514e9d55ab..639fb5a2dcf 100644 --- a/pallets/gear/src/benchmarking/tests/mod.rs +++ b/pallets/gear/src/benchmarking/tests/mod.rs @@ -81,54 +81,3 @@ where )) ); } - -pub fn wasm_multivalue_proposal() -where - T: Config, - T::AccountId: Origin, -{ - let aux_instrs = vec![Instruction::GetLocal(0), Instruction::GetLocal(1)]; - - let init_instrs = vec![ - Instruction::I64Const(0), - Instruction::I64Const(1), - Instruction::Call(OFFSET_AUX), - Instruction::Drop, - Instruction::Drop, - ]; - - let module: WasmModule = ModuleDefinition { - memory: Some(ImportedMemory::new(DEFAULT_MEM_SIZE)), - init_body: Some(body::from_instructions(init_instrs)), - aux_body: Some(body::from_instructions(aux_instrs)), - aux_arg_num: 2, - aux_res: vec![ValueType::I64, ValueType::I64], - ..Default::default() - } - .into(); - - let source = benchmarking::account("instantiator", 0, 0); - let exec = common_utils::prepare_exec::( - source, - HandleKind::Init(module.code), - Default::default(), - Default::default(), - ) - .unwrap(); - - let dispatch = - core_processor::process::(&exec.block_config, exec.context, exec.random_data) - .unwrap() - .into_iter() - .find_map(|note| match note { - JournalNote::SendDispatch { dispatch, .. } => Some(dispatch), - _ => None, - }) - .unwrap(); - - let code = dispatch - .reply_details() - .expect("reply details") - .to_reply_code(); - assert_eq!(code, ReplyCode::Success(SuccessReplyReason::Auto)); -} From fcb188ec369f3170d2938d52d64c844d44a03350 Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Fri, 6 Dec 2024 23:49:17 +0100 Subject: [PATCH 18/26] Fix `call_indirect` weight calculation --- core/src/gas_metering/rules.rs | 4 ++-- pallets/gear/src/schedule.rs | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/core/src/gas_metering/rules.rs b/core/src/gas_metering/rules.rs index 7c4973419ad..b41d65a5da1 100644 --- a/core/src/gas_metering/rules.rs +++ b/core/src/gas_metering/rules.rs @@ -248,8 +248,8 @@ impl<'a> Rules for ScheduleRules<'a> { .copied() .unwrap_or((max_params, max_results)); w.call_indirect - .saturating_add(w.call_indirect_per_param.saturating_sub(params)) - .saturating_add(w.call_indirect_per_result.saturating_sub(results)) + .saturating_add(w.call_indirect_per_param.saturating_mul(params)) + .saturating_add(w.call_indirect_per_result.saturating_mul(results)) } BrTable(ref data) => w .br_table diff --git a/pallets/gear/src/schedule.rs b/pallets/gear/src/schedule.rs index a6c3a55f069..f1e20841406 100644 --- a/pallets/gear/src/schedule.rs +++ b/pallets/gear/src/schedule.rs @@ -1454,8 +1454,8 @@ impl<'a, T: Config> Rules for ScheduleRules<'a, T> { .copied() .unwrap_or((max_params, max_results)); w.call_indirect - .saturating_add(w.call_indirect_per_param.saturating_sub(params)) - .saturating_add(w.call_indirect_per_result.saturating_sub(results)) + .saturating_add(w.call_indirect_per_param.saturating_mul(params)) + .saturating_add(w.call_indirect_per_result.saturating_mul(results)) } BrTable(ref data) => w .br_table From 4ad2bd47db33ae39e45946c1fbc0a3eab0760270 Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Fri, 6 Dec 2024 23:50:54 +0100 Subject: [PATCH 19/26] Revert "Update wasm-smith" This reverts commit a342a7d0b98fc09c66804d36e3258115031ef6c5. --- Cargo.lock | 23 ++++++--- Cargo.toml | 2 +- utils/wasm-gen/src/config/module.rs | 76 +++++++++++++---------------- 3 files changed, 49 insertions(+), 52 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index cce6b9d0c12..272f0055410 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -19034,9 +19034,8 @@ dependencies = [ [[package]] name = "wasm-encoder" -version = "0.220.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebf48234b389415b226a4daef6562933d38c7b28a8b8f64c5c4130dad1561ab7" +version = "0.35.0" +source = "git+https://github.com/gear-tech/wasm-tools.git?branch=gear-stable#ffe9abee63ad640c051d50515cedee7f67f31884" dependencies = [ "leb128", ] @@ -19111,16 +19110,15 @@ dependencies = [ [[package]] name = "wasm-smith" -version = "0.220.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f7d273cf1df3c10f9067cb48796d1a6d1daa3ceb99c3f07d822e5bdeefb34f9" +version = "0.12.21" +source = "git+https://github.com/gear-tech/wasm-tools.git?branch=gear-stable#ffe9abee63ad640c051d50515cedee7f67f31884" dependencies = [ - "anyhow", "arbitrary", "flagset", "indexmap 2.6.0", "leb128", - "wasm-encoder 0.220.0", + "wasm-encoder 0.35.0", + "wasmparser 0.115.0", ] [[package]] @@ -19449,6 +19447,15 @@ dependencies = [ "url", ] +[[package]] +name = "wasmparser" +version = "0.115.0" +source = "git+https://github.com/gear-tech/wasm-tools.git?branch=gear-stable#ffe9abee63ad640c051d50515cedee7f67f31884" +dependencies = [ + "indexmap 2.6.0", + "semver 1.0.18", +] + [[package]] name = "wasmparser" version = "0.118.2" diff --git a/Cargo.toml b/Cargo.toml index ad63375b1ee..b59bf979402 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -289,6 +289,7 @@ runtime-primitives = { package = "gear-runtime-primitives", path = "runtime/prim service = { package = "gear-service", path = "node/service", default-features = false } testing = { package = "gear-node-testing", path = "node/testing" } vara-runtime = { path = "runtime/vara", default-features = false } +wasm-smith = { version = "0.12.21", git = "https://github.com/gear-tech/wasm-tools.git", branch = "gear-stable" } # ethexe deps ethexe-cli = { path = "ethexe/cli", default-features = false } @@ -552,7 +553,6 @@ smallvec = "1.13.2" # utils/node-wrappe fs4 = "0.11.1" # utils/gear-wasmer-cache bytes = "1.8.0" # utils/gear-wasmer-cache loom = "0.7.2" # utils/gear-wasmer-cache -wasm-smith = "0.220.0" # utils/wasm-gen [profile.dev.package.corosensei] opt-level = 3 diff --git a/utils/wasm-gen/src/config/module.rs b/utils/wasm-gen/src/config/module.rs index 6c877601838..b0a523941b0 100644 --- a/utils/wasm-gen/src/config/module.rs +++ b/utils/wasm-gen/src/config/module.rs @@ -18,30 +18,29 @@ //! Config entities related to generating plain wasm module using `wasm-smith`. //! -//! We don't give access to [`wasm_smith::Config`] directly, but with several adaptors, +//! We don't give access to [`wasm_smith::SwarmConfig`] directly, but with several adaptors, //! because valid wasm module is not always valid gear module. So, some configurational variables //! can be arbitrary, but some must be constantly set. That's implemented with [`ArbitraryParams`] //! and [`ConstantParams`]. +use crate::MemoryLayout; use arbitrary::{Arbitrary, Result, Unstructured}; use std::num::NonZero; -use wasm_smith::{Config, InstructionKind::*, InstructionKinds, MemoryOffsetChoices}; +use wasm_smith::{InstructionKind::*, InstructionKinds, SwarmConfig}; pub use wasm_smith::InstructionKind; -const WASM_PAGE_SIZE: u64 = 0x10_000; - /// Wasm module generation config. /// -/// This config wraps the [`wasm_smith::Config`]. That's to make it +/// This config wraps the [`wasm_smith::SwarmConfig`]. That's to make it /// easy creating a configuration, which is custom, from one side, and, /// from another side, results in generating valid gear wasm modules. #[derive(Debug, Clone)] -pub struct WasmModuleConfig(Config); +pub struct WasmModuleConfig(SwarmConfig); impl WasmModuleConfig { /// Unwrap the inner `wasm-smith` config. - pub fn into_inner(self) -> Config { + pub fn into_inner(self) -> SwarmConfig { self.0 } } @@ -75,14 +74,16 @@ impl From<(SelectableParams, ArbitraryParams)> for WasmModuleConfig { tail_call_enabled, relaxed_simd_enabled, saturating_float_to_int_enabled, - sign_extension_ops_enabled, + sign_extension_enabled, simd_enabled, - allow_floats, + float_enabled, + memory_grow_enabled, max_data_segments, min_data_segments, max_types, min_types, memory_offset_choices, + reserved_memory_size, } = ConstantParams::default(); let SelectableParams { @@ -125,7 +126,7 @@ impl From<(SelectableParams, ArbitraryParams)> for WasmModuleConfig { let allowed_instructions = InstructionKinds::new(&allowed_instructions); - Self(Config { + Self(SwarmConfig { allow_start_export, available_imports, bulk_memory_enabled, @@ -133,9 +134,6 @@ impl From<(SelectableParams, ArbitraryParams)> for WasmModuleConfig { disallow_traps, exceptions_enabled, export_everything, - gc_enabled: false, - custom_page_sizes_enabled: false, - generate_custom_sections: false, max_aliases, max_components, max_data_segments, @@ -148,9 +146,7 @@ impl From<(SelectableParams, ArbitraryParams)> for WasmModuleConfig { max_instances, max_instructions, max_memories, - max_memory32_bytes: max_memory_pages * WASM_PAGE_SIZE, - // we don't support 64-bit WASM - max_memory64_bytes: 0, + max_memory_pages, max_modules, max_nesting_depth, max_tables, @@ -160,11 +156,7 @@ impl From<(SelectableParams, ArbitraryParams)> for WasmModuleConfig { max_values, memory64_enabled, memory_max_size_required, - memory_offset_choices: MemoryOffsetChoices( - memory_offset_choices.0, - memory_offset_choices.1, - memory_offset_choices.2, - ), + memory_offset_choices, min_data_segments, min_element_segments, min_elements, @@ -179,22 +171,18 @@ impl From<(SelectableParams, ArbitraryParams)> for WasmModuleConfig { min_uleb_size, multi_value_enabled, reference_types_enabled, + reserved_memory_size, tail_call_enabled, relaxed_simd_enabled, saturating_float_to_int_enabled, - sign_extension_ops_enabled, - shared_everything_threads_enabled: false, + sign_extension_enabled, simd_enabled, + float_enabled, threads_enabled, - allow_invalid_funcs: false, - wide_arithmetic_enabled: false, allowed_instructions, max_table_elements, table_max_size_required, - // do not export anything to pass our checks - exports: Some(Vec::new()), - allow_floats, - extended_const_enabled: false, + memory_grow_enabled, }) } } @@ -202,7 +190,7 @@ impl From<(SelectableParams, ArbitraryParams)> for WasmModuleConfig { /// Arbitrary wasm module generation params. /// /// These are params that are allowed to be randomly set. -/// All of them are later used to instantiate `wasm_smith::Config`. +/// All of them are later used to instantiate `wasm_smith::SwarmConfig`. #[derive(Debug, Clone)] pub struct ArbitraryParams { available_imports: Option>, @@ -227,15 +215,15 @@ pub struct ArbitraryParams { min_tags: usize, min_uleb_size: u8, threads_enabled: bool, - max_table_elements: u64, + max_table_elements: u32, table_max_size_required: bool, max_memory_pages: u64, } impl Arbitrary<'_> for ArbitraryParams { fn arbitrary(u: &mut Unstructured<'_>) -> Result { - let random_config = u.arbitrary()?; - let Config { + let random_swarm = u.arbitrary()?; + let SwarmConfig { available_imports, canonicalize_nans, export_everything, @@ -260,9 +248,9 @@ impl Arbitrary<'_> for ArbitraryParams { threads_enabled, max_table_elements, table_max_size_required, - max_memory32_bytes, + max_memory_pages, .. - } = random_config; + } = random_swarm; Ok(ArbitraryParams { available_imports, @@ -289,14 +277,14 @@ impl Arbitrary<'_> for ArbitraryParams { threads_enabled, max_table_elements, table_max_size_required, - max_memory_pages: max_memory32_bytes / WASM_PAGE_SIZE, + max_memory_pages, }) } } /// Constant wasm module generation params. /// -/// Wraps params, which are used to create `wasm_smith::Config`, but they +/// Wraps params, which are used to create `wasm_smith::SwarmConfig`, but they /// must have pre-defined values to make `wasm-smith` generate valid gear modules. pub struct ConstantParams { allow_start_export: bool, @@ -319,31 +307,34 @@ pub struct ConstantParams { tail_call_enabled: bool, relaxed_simd_enabled: bool, saturating_float_to_int_enabled: bool, - sign_extension_ops_enabled: bool, + sign_extension_enabled: bool, simd_enabled: bool, - allow_floats: bool, + float_enabled: bool, + memory_grow_enabled: bool, min_types: usize, memory_offset_choices: (u32, u32, u32), + reserved_memory_size: Option, } impl Default for ConstantParams { fn default() -> Self { ConstantParams { bulk_memory_enabled: false, - sign_extension_ops_enabled: false, + sign_extension_enabled: false, saturating_float_to_int_enabled: false, reference_types_enabled: false, tail_call_enabled: false, // This is related to reference_types_enabled. max_tables: 1, simd_enabled: false, - allow_floats: false, + float_enabled: false, relaxed_simd_enabled: false, exceptions_enabled: false, memory64_enabled: false, disallow_traps: true, allow_start_export: false, multi_value_enabled: false, + memory_grow_enabled: false, min_memories: 0, max_memories: 1, min_exports: 0, @@ -355,8 +346,7 @@ impl Default for ConstantParams { max_types: 100, min_types: 5, memory_offset_choices: (75, 25, 0), - // TODO: revert - //reserved_memory_size: Some(MemoryLayout::RESERVED_MEMORY_SIZE as u64), + reserved_memory_size: Some(MemoryLayout::RESERVED_MEMORY_SIZE as u64), } } } From 94b4c70d60833c72aa139fdac00d91cb776bbb47 Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Fri, 6 Dec 2024 23:51:12 +0100 Subject: [PATCH 20/26] Revert "Update wasmparser" This reverts commit 9342e3a4 --- Cargo.toml | 2 +- utils/wasm-optimizer/src/stack_end.rs | 13 ++++--------- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index b59bf979402..d5e1e64e44e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -186,7 +186,7 @@ wasmer-vm = "4.3.4" wasmer-compiler = "4.3.4" gear-wasmer-cache = { path = "utils/gear-wasmer-cache" } wasmtime = "8.0.1" -wasmparser = { version = "0.220", default-features = false, features = ["validate"] } +wasmparser = { package = "wasmparser-nostd", version = "0.100.1", default-features = false } which = "4.4.2" winapi = "0.3.9" paste = "1.0" diff --git a/utils/wasm-optimizer/src/stack_end.rs b/utils/wasm-optimizer/src/stack_end.rs index 501b40c5806..414ab0837d7 100644 --- a/utils/wasm-optimizer/src/stack_end.rs +++ b/utils/wasm-optimizer/src/stack_end.rs @@ -270,21 +270,16 @@ pub fn move_mut_globals_to_static(module: &mut Module) -> Result<(), &'static st } fn get_global_index(module_bytes: &[u8], name_predicate: impl Fn(&str) -> bool) -> Option { - use wasmparser::{KnownCustom, Name, Parser, Payload}; + use wasmparser::{Name, NameSectionReader, Parser, Payload}; Parser::new(0) .parse_all(module_bytes) .filter_map(|p| p.ok()) .filter_map(|section| match section { - Payload::CustomSection(r) => Some(r), - _ => None, - }) - .filter_map(|r| { - if let KnownCustom::Name(r) = r.as_known() { - Some(r) - } else { - None + Payload::CustomSection(r) if r.name() == "name" => { + Some(NameSectionReader::new(r.data(), r.data_offset())) } + _ => None, }) .flatten() .filter_map(|name| match name { From 7adaba399a058360cc09bcca0f4ff61b5a6789f3 Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Fri, 6 Dec 2024 23:52:11 +0100 Subject: [PATCH 21/26] Fix Cargo.lock after reverts --- Cargo.lock | 19 ++++--------------- 1 file changed, 4 insertions(+), 15 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 272f0055410..04f6feec77f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -6046,7 +6046,7 @@ dependencies = [ "scale-info", "serde", "wabt", - "wasmparser 0.220.0", + "wasmparser-nostd", ] [[package]] @@ -6589,7 +6589,7 @@ dependencies = [ "rand", "thiserror", "wasm-smith", - "wasmparser 0.220.0", + "wasmparser-nostd", "wasmprinter", "wat", ] @@ -6602,7 +6602,7 @@ dependencies = [ "enum-iterator 1.5.0", "gear-wasm", "gwasm-instrument", - "wasmparser 0.220.0", + "wasmparser-nostd", "wat", ] @@ -6620,7 +6620,7 @@ dependencies = [ "wabt", "wasm-opt", "wasmer", - "wasmparser 0.220.0", + "wasmparser-nostd", "which", ] @@ -19477,17 +19477,6 @@ dependencies = [ "semver 1.0.18", ] -[[package]] -name = "wasmparser" -version = "0.220.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e246c2772ce3ebc83f89a2d4487ac5794cad6c309b2071818a88c7db7c36d87b" -dependencies = [ - "bitflags 2.5.0", - "indexmap 2.6.0", - "semver 1.0.18", -] - [[package]] name = "wasmparser-nostd" version = "0.100.2" From 77241790eaae55d75eedddfdf819cfd70a9fc5b0 Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Sat, 7 Dec 2024 00:01:23 +0100 Subject: [PATCH 22/26] Revert `parity-wasm` patch --- Cargo.lock | 32 +++++++++++++------------------- Cargo.toml | 1 + 2 files changed, 14 insertions(+), 19 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 04f6feec77f..bb118ec3c99 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4701,7 +4701,7 @@ dependencies = [ "gprimitives", "log", "parity-scale-codec", - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-wasm", "rand", "sp-allocator", "sp-wasm-interface 21.0.1 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", @@ -6558,7 +6558,7 @@ dependencies = [ "gmeta", "itertools 0.13.0", "log", - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-wasm", "pathdiff", "regex", "rustc_version 0.4.0", @@ -11208,7 +11208,7 @@ dependencies = [ "pallet-gear-scheduler", "pallet-timestamp", "parity-scale-codec", - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-wasm", "primitive-types", "scale-info", "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", @@ -11266,7 +11266,7 @@ dependencies = [ "pallet-timestamp", "pallet-transaction-payment", "parity-scale-codec", - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-wasm", "primitive-types", "scale-info", "sp-io 38.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", @@ -11437,7 +11437,7 @@ dependencies = [ "log", "pallet-balances", "parity-scale-codec", - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-wasm", "primitive-types", "scale-info", "sp-core 34.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", @@ -11917,12 +11917,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "parity-wasm" -version = "0.45.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1ad0aff30c1da14b1254fcb2af73e1fa9a28670e584a626f53a369d0e157304" - [[package]] name = "parity-wasm" version = "0.45.0" @@ -16988,7 +16982,7 @@ checksum = "d521a405707b5be561367cd3d442ff67588993de24062ce3adefcf8437ee9fe1" dependencies = [ "impl-serde", "parity-scale-codec", - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-wasm", "scale-info", "serde", "sp-crypto-hashing-proc-macro 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -17005,7 +16999,7 @@ source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot dependencies = [ "impl-serde", "parity-scale-codec", - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-wasm", "scale-info", "serde", "sp-crypto-hashing-proc-macro 0.1.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-polkadot-stable2409)", @@ -17491,7 +17485,7 @@ dependencies = [ "jobserver", "merkleized-metadata", "parity-scale-codec", - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-wasm", "polkavm-linker", "sc-executor 0.40.1 (registry+https://github.com/rust-lang/crates.io-index)", "sp-core 34.0.0 (registry+https://github.com/rust-lang/crates.io-index)", @@ -19046,7 +19040,7 @@ version = "0.1.0" dependencies = [ "clap 4.5.13", "hex", - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-wasm", ] [[package]] @@ -19054,7 +19048,7 @@ name = "wasm-instrument" version = "0.4.0" source = "git+https://github.com/gear-tech/wasm-instrument?branch=v0.4.0-sign-ext#e57b713873d4364e41ed495893a2f06a80cca5ab" dependencies = [ - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-wasm", ] [[package]] @@ -19105,7 +19099,7 @@ dependencies = [ "env_logger", "gear-wasm-builder", "log", - "parity-wasm 0.45.0 (registry+https://github.com/rust-lang/crates.io-index)", + "parity-wasm", ] [[package]] @@ -19332,7 +19326,7 @@ name = "wasmi" version = "0.13.2" source = "git+https://github.com/gear-tech/wasmi?branch=v0.13.2-sign-ext#3a0b1022377919e62aadf4d78b762abd1c3e9a04" dependencies = [ - "parity-wasm 0.45.0 (git+https://github.com/gear-tech/parity-wasm?branch=v0.45.0-sign-ext)", + "parity-wasm", "wasmi-validation", "wasmi_core 0.2.1", ] @@ -19371,7 +19365,7 @@ name = "wasmi-validation" version = "0.5.0" source = "git+https://github.com/gear-tech/wasmi?branch=v0.13.2-sign-ext#3a0b1022377919e62aadf4d78b762abd1c3e9a04" dependencies = [ - "parity-wasm 0.45.0 (git+https://github.com/gear-tech/parity-wasm?branch=v0.45.0-sign-ext)", + "parity-wasm", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index d5e1e64e44e..43c857ce82b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -591,6 +591,7 @@ debug = true # sp-application-crypto = { version = "38.0.0", git = "https://github.com/gear-tech/polkadot-sdk.git", branch = "gear-polkadot-stable2409" } # these patched dependecies force their `sign_ext` feature to be used by Substrate dependencies +parity-wasm = { version = "0.45.0", git = "https://github.com/gear-tech/parity-wasm", branch = "v0.45.0-sign-ext" } wasmi-validation = { version = "0.5.0", git = "https://github.com/gear-tech/wasmi", branch = "v0.13.2-sign-ext" } wasm-instrument = { version = "0.4.0", git = "https://github.com/gear-tech/wasm-instrument", branch = "v0.4.0-sign-ext" } From cee77592ea080c3418b6d94f1fa38a08c86f6c53 Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Sat, 7 Dec 2024 00:54:19 +0100 Subject: [PATCH 23/26] Disable bench without cfg --- Cargo.toml | 3 +++ pallets/gear/Cargo.toml | 3 +++ pallets/gear/src/benchmarking/mod.rs | 40 +++++++++++++++++----------- sandbox/sandbox/Cargo.toml | 4 +-- utils/gear-wasmer-cache/Cargo.toml | 4 +-- 5 files changed, 34 insertions(+), 20 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 43c857ce82b..9ac4f586452 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -7,6 +7,9 @@ homepage = "https://gear-tech.io" repository = "https://github.com/gear-tech/gear" rust-version = "1.81" +[workspace.lints.rust] +unexpected_cfgs = { level = "warn", check-cfg = ['cfg(loom)', 'cfg(force_wasmer_cranelift_i_know_what_i_do)'] } + [workspace] resolver = "2" diff --git a/pallets/gear/Cargo.toml b/pallets/gear/Cargo.toml index af9fb543119..02ddd1eef01 100644 --- a/pallets/gear/Cargo.toml +++ b/pallets/gear/Cargo.toml @@ -12,6 +12,9 @@ readme = "README.md" [package.metadata.docs.rs] targets = ["x86_64-unknown-linux-gnu"] +[lints] +workspace = true + [dependencies] parity-scale-codec = { workspace = true, features = ["derive"] } scale-info = { workspace = true, features = ["derive"] } diff --git a/pallets/gear/src/benchmarking/mod.rs b/pallets/gear/src/benchmarking/mod.rs index 7e93bed2951..ad51f33088d 100644 --- a/pallets/gear/src/benchmarking/mod.rs +++ b/pallets/gear/src/benchmarking/mod.rs @@ -1842,23 +1842,31 @@ benchmarks! { instr_call_indirect_per_result { let r in 0 .. T::Schedule::get().limits.results; - let num_elements = T::Schedule::get().limits.table_size; - let mut sbox = Sandbox::from(&WasmModule::::from(ModuleDefinition { - aux_body: Some(body::repeated_dyn(r, vec![RandomI64(0, num_elements as i64)])), - aux_res: vec![ValueType::I64; r as usize], - handle_body: Some(body::repeated_dyn(INSTR_BENCHMARK_BATCH_SIZE, vec![ - RandomI32(0, num_elements as i32), - Regular(Instruction::CallIndirect(r.min(1), 0)), // aux signature: 1 or 0 - DropRepeated(r as usize), - ])), - table: Some(TableSegment { - num_elements, - function_index: OFFSET_AUX, - init_elements: Default::default(), - }), - .. Default::default() - })); + + #[cfg(not(force_wasmer_cranelift_i_know_what_i_do))] + let _ = r; + + #[cfg(force_wasmer_cranelift_i_know_what_i_do)] + let sbox = { + let num_elements = T::Schedule::get().limits.table_size; + Sandbox::from(&WasmModule::::from(ModuleDefinition { + aux_body: Some(body::repeated_dyn(r, vec![RandomI64(0, num_elements as i64)])), + aux_res: vec![ValueType::I64; r as usize], + handle_body: Some(body::repeated_dyn(INSTR_BENCHMARK_BATCH_SIZE, vec![ + RandomI32(0, num_elements as i32), + Regular(Instruction::CallIndirect(r.min(1), 0)), // aux signature: 1 or 0 + DropRepeated(r as usize), + ])), + table: Some(TableSegment { + num_elements, + function_index: OFFSET_AUX, + init_elements: Default::default(), + }), + .. Default::default() + })) + }; }: { + #[cfg(force_wasmer_cranelift_i_know_what_i_do)] sbox.invoke(); } diff --git a/sandbox/sandbox/Cargo.toml b/sandbox/sandbox/Cargo.toml index 34769582c40..caa661601ee 100644 --- a/sandbox/sandbox/Cargo.toml +++ b/sandbox/sandbox/Cargo.toml @@ -14,8 +14,8 @@ rust-version.workspace = true [package.metadata.docs.rs] targets = ["x86_64-unknown-linux-gnu"] -[lints.rust] -unexpected_cfgs = { level = "warn", check-cfg = ['cfg(force_wasmer_cranelift_i_know_what_i_do)'] } +[lints] +workspace = true [dependencies] codec.workspace = true diff --git a/utils/gear-wasmer-cache/Cargo.toml b/utils/gear-wasmer-cache/Cargo.toml index c3ad428c8a2..e6958eca0b9 100644 --- a/utils/gear-wasmer-cache/Cargo.toml +++ b/utils/gear-wasmer-cache/Cargo.toml @@ -8,8 +8,8 @@ homepage.workspace = true repository.workspace = true rust-version.workspace = true -[lints.rust] -unexpected_cfgs = { level = "warn", check-cfg = ['cfg(loom)'] } +[lints] +workspace = true [dependencies] wasmer.workspace = true From 9bbcaf54e6dde1fa7c341e396f0eb107ca2d649f Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Sat, 7 Dec 2024 01:14:26 +0100 Subject: [PATCH 24/26] Update gsdk metadata --- gsdk/src/metadata/generated.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gsdk/src/metadata/generated.rs b/gsdk/src/metadata/generated.rs index 738654544e0..7718ad911f6 100644 --- a/gsdk/src/metadata/generated.rs +++ b/gsdk/src/metadata/generated.rs @@ -3080,6 +3080,7 @@ pub mod runtime_types { pub call: ::core::primitive::u32, pub call_indirect: ::core::primitive::u32, pub call_indirect_per_param: ::core::primitive::u32, + pub call_indirect_per_result: ::core::primitive::u32, pub call_per_local: ::core::primitive::u32, pub local_get: ::core::primitive::u32, pub local_set: ::core::primitive::u32, @@ -3160,6 +3161,7 @@ pub mod runtime_types { pub globals: ::core::primitive::u32, pub locals: ::core::primitive::u32, pub parameters: ::core::primitive::u32, + pub results: ::core::primitive::u32, pub memory_pages: ::core::primitive::u16, pub table_size: ::core::primitive::u32, pub table_number: ::core::primitive::u32, From 2749c0be7aa01801919f0658a7e2031d71f082af Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Sat, 7 Dec 2024 12:52:40 +0100 Subject: [PATCH 25/26] Fix bench --- pallets/gear/src/benchmarking/mod.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pallets/gear/src/benchmarking/mod.rs b/pallets/gear/src/benchmarking/mod.rs index ad51f33088d..45f0958bd11 100644 --- a/pallets/gear/src/benchmarking/mod.rs +++ b/pallets/gear/src/benchmarking/mod.rs @@ -1847,7 +1847,7 @@ benchmarks! { let _ = r; #[cfg(force_wasmer_cranelift_i_know_what_i_do)] - let sbox = { + let mut sbox = { let num_elements = T::Schedule::get().limits.table_size; Sandbox::from(&WasmModule::::from(ModuleDefinition { aux_body: Some(body::repeated_dyn(r, vec![RandomI64(0, num_elements as i64)])), From 22842591c8299fe5830bfd125f6fb2d65b62ccc7 Mon Sep 17 00:00:00 2001 From: Arsenii Lyashenko Date: Sat, 7 Dec 2024 13:34:24 +0100 Subject: [PATCH 26/26] After-merge fixes --- Cargo.toml | 5 +---- pallets/gear/Cargo.toml | 3 --- 2 files changed, 1 insertion(+), 7 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index b01453cea9e..8874d1977fe 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -8,7 +8,7 @@ repository = "https://github.com/gear-tech/gear" rust-version = "1.81" [workspace.lints.rust] -unexpected_cfgs = { level = "warn", check-cfg = ['cfg(loom)', 'cfg(force_wasmer_cranelift_i_know_what_i_do)'] } +unexpected_cfgs = { level = "warn", check-cfg = ['cfg(loom)', 'cfg(fuzz)', 'cfg(force_wasmer_cranelift_i_know_what_i_do)'] } [workspace] resolver = "2" @@ -557,9 +557,6 @@ fs4 = "0.11.1" # utils/gear-wasmer bytes = "1.8.0" # utils/gear-wasmer-cache loom = "0.7.2" # utils/gear-wasmer-cache -[workspace.lints.rust] -unexpected_cfgs = { level = "warn", check-cfg = ['cfg(loom)', 'cfg(fuzz)'] } - [profile.dev.package.corosensei] opt-level = 3 diff --git a/pallets/gear/Cargo.toml b/pallets/gear/Cargo.toml index d1ebdca86c3..7e35290a532 100644 --- a/pallets/gear/Cargo.toml +++ b/pallets/gear/Cargo.toml @@ -9,9 +9,6 @@ homepage.workspace = true repository.workspace = true readme = "README.md" -[lints] -workspace = true - [package.metadata.docs.rs] targets = ["x86_64-unknown-linux-gnu"]