From 5277a5063e733e8bc668ab6e657727588e1ae2bd Mon Sep 17 00:00:00 2001 From: vobradovich Date: Mon, 19 Aug 2024 13:19:08 +0200 Subject: [PATCH 1/3] change branch, fix gtest --- Cargo.lock | 1443 +++++++++++++++++------- Cargo.toml | 14 +- examples/demo/app/tests/fixture/mod.rs | 4 + examples/demo/app/tests/gtest.rs | 5 +- rs/src/gtest/calls.rs | 31 +- 5 files changed, 1054 insertions(+), 443 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 476dae7d..d8f9103f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -15,8 +15,7 @@ dependencies = [ [[package]] name = "actor-system-error" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1eb5258a94e99e07bab9a07541505f5d02d492c1de06b115b662f1a794ce37b7" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "derive_more", ] @@ -214,6 +213,321 @@ version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d301b3b94cb4b2f23d7917810addbbaff90738e0ca2be692bd027e70d7e0330c" +[[package]] +name = "aquamarine" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1da02abba9f9063d786eab1509833ebb2fac0f966862ca59439c76b9c566760" +dependencies = [ + "include_dir", + "itertools 0.10.5", + "proc-macro-error", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ark-bls12-377" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb00293ba84f51ce3bd026bd0de55899c4e68f0a39a5728cebae3a73ffdc0a4f" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-std", +] + +[[package]] +name = "ark-bls12-377-ext" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "20c7021f180a0cbea0380eba97c2af3c57074cdaffe0eef7e840e1c9f2841e55" +dependencies = [ + "ark-bls12-377", + "ark-ec", + "ark-models-ext", + "ark-std", +] + +[[package]] +name = "ark-bls12-381" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c775f0d12169cba7aae4caeb547bb6a50781c7449a8aa53793827c9ec4abf488" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-serialize", + "ark-std", +] + +[[package]] +name = "ark-bls12-381-ext" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1dc4b3d08f19e8ec06e949712f95b8361e43f1391d94f65e4234df03480631c" +dependencies = [ + "ark-bls12-381", + "ark-ec", + "ark-ff", + "ark-models-ext", + "ark-serialize", + "ark-std", +] + +[[package]] +name = "ark-bw6-761" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e0605daf0cc5aa2034b78d008aaf159f56901d92a52ee4f6ecdfdac4f426700" +dependencies = [ + "ark-bls12-377", + "ark-ec", + "ark-ff", + "ark-std", +] + +[[package]] +name = "ark-bw6-761-ext" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ccee5fba47266f460067588ee1bf070a9c760bf2050c1c509982c5719aadb4f2" +dependencies = [ + "ark-bw6-761", + "ark-ec", + "ark-ff", + "ark-models-ext", + "ark-std", +] + +[[package]] +name = "ark-ec" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "defd9a439d56ac24968cca0571f598a61bc8c55f71d50a89cda591cb750670ba" +dependencies = [ + "ark-ff", + "ark-poly", + "ark-serialize", + "ark-std", + "derivative", + "hashbrown 0.13.2", + "itertools 0.10.5", + "num-traits", + "rayon", + "zeroize", +] + +[[package]] +name = "ark-ed-on-bls12-377" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b10d901b9ac4b38f9c32beacedfadcdd64e46f8d7f8e88c1ae1060022cf6f6c6" +dependencies = [ + "ark-bls12-377", + "ark-ec", + "ark-ff", + "ark-std", +] + +[[package]] +name = "ark-ed-on-bls12-377-ext" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "524a4fb7540df2e1a8c2e67a83ba1d1e6c3947f4f9342cc2359fc2e789ad731d" +dependencies = [ + "ark-ec", + "ark-ed-on-bls12-377", + "ark-ff", + "ark-models-ext", + "ark-std", +] + +[[package]] +name = "ark-ed-on-bls12-381-bandersnatch" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9cde0f2aa063a2a5c28d39b47761aa102bda7c13c84fc118a61b87c7b2f785c" +dependencies = [ + "ark-bls12-381", + "ark-ec", + "ark-ff", + "ark-std", +] + +[[package]] +name = "ark-ed-on-bls12-381-bandersnatch-ext" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d15185f1acb49a07ff8cbe5f11a1adc5a93b19e211e325d826ae98e98e124346" +dependencies = [ + "ark-ec", + "ark-ed-on-bls12-381-bandersnatch", + "ark-ff", + "ark-models-ext", + "ark-std", +] + +[[package]] +name = "ark-ff" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec847af850f44ad29048935519032c33da8aa03340876d351dfab5660d2966ba" +dependencies = [ + "ark-ff-asm", + "ark-ff-macros", + "ark-serialize", + "ark-std", + "derivative", + "digest 0.10.7", + "itertools 0.10.5", + "num-bigint", + "num-traits", + "paste", + "rustc_version", + "zeroize", +] + +[[package]] +name = "ark-ff-asm" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ed4aa4fe255d0bc6d79373f7e31d2ea147bcf486cba1be5ba7ea85abdb92348" +dependencies = [ + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ark-ff-macros" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7abe79b0e4288889c4574159ab790824d0033b9fdcb2a112a3182fac2e514565" +dependencies = [ + "num-bigint", + "num-traits", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ark-models-ext" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e9eab5d4b5ff2f228b763d38442adc9b084b0a465409b059fac5c2308835ec2" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-serialize", + "ark-std", + "derivative", +] + +[[package]] +name = "ark-poly" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d320bfc44ee185d899ccbadfa8bc31aab923ce1558716e1997a1e74057fe86bf" +dependencies = [ + "ark-ff", + "ark-serialize", + "ark-std", + "derivative", + "hashbrown 0.13.2", +] + +[[package]] +name = "ark-scale" +version = "0.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51bd73bb6ddb72630987d37fa963e99196896c0d0ea81b7c894567e74a2f83af" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-serialize", + "ark-std", + "parity-scale-codec", + "scale-info", +] + +[[package]] +name = "ark-scale" +version = "0.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f69c00b3b529be29528a6f2fd5fa7b1790f8bed81b9cdca17e326538545a179" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-serialize", + "ark-std", + "parity-scale-codec", + "scale-info", +] + +[[package]] +name = "ark-secret-scalar" +version = "0.0.2" +source = "git+https://github.com/w3f/ring-vrf?rev=cbc342e#cbc342e95d3cbcd3c5ba8d45af7200eb58e63502" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-serialize", + "ark-std", + "ark-transcript", + "digest 0.10.7", + "rand_core 0.6.4", + "zeroize", +] + +[[package]] +name = "ark-serialize" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" +dependencies = [ + "ark-serialize-derive", + "ark-std", + "digest 0.10.7", + "num-bigint", +] + +[[package]] +name = "ark-serialize-derive" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae3281bc6d0fd7e549af32b52511e1302185bd688fd3359fa36423346ff682ea" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ark-std" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" +dependencies = [ + "num-traits", + "rand 0.8.5", + "rayon", +] + +[[package]] +name = "ark-transcript" +version = "0.0.2" +source = "git+https://github.com/w3f/ring-vrf?rev=cbc342e#cbc342e95d3cbcd3c5ba8d45af7200eb58e63502" +dependencies = [ + "ark-ff", + "ark-serialize", + "ark-std", + "digest 0.10.7", + "rand_core 0.6.4", + "sha3", +] + [[package]] name = "array-bytes" version = "6.2.3" @@ -479,6 +793,29 @@ dependencies = [ "rustc-demangle", ] +[[package]] +name = "bandersnatch_vrfs" +version = "0.0.3" +source = "git+https://github.com/w3f/ring-vrf?rev=cbc342e#cbc342e95d3cbcd3c5ba8d45af7200eb58e63502" +dependencies = [ + "ark-bls12-381", + "ark-ec", + "ark-ed-on-bls12-381-bandersnatch", + "ark-ff", + "ark-serialize", + "ark-std", + "dleq_vrf", + "fflonk", + "merlin 3.0.0", + "rand_chacha 0.3.1", + "rand_core 0.6.4", + "ring 0.1.0", + "sha2 0.10.8", + "sp-ark-bls12-381", + "sp-ark-ed-on-bls12-381-bandersnatch", + "zeroize", +] + [[package]] name = "base16ct" version = "0.2.0" @@ -540,6 +877,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "93f2635620bf0b9d4576eb7bb9a38a55df78bd1205d26fa994b25911a69f212f" dependencies = [ "bitcoin_hashes", + "rand 0.7.3", + "rand_core 0.5.1", + "serde", + "unicode-normalization", ] [[package]] @@ -694,12 +1035,6 @@ dependencies = [ "serde", ] -[[package]] -name = "bs58" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "771fe0050b883fcc3ea2359b1a96bcfbc090b7116eae7c3c512c7a083fdf23d3" - [[package]] name = "bs58" version = "0.5.1" @@ -1040,6 +1375,28 @@ dependencies = [ "windows-sys 0.48.0", ] +[[package]] +name = "common" +version = "0.1.0" +source = "git+https://github.com/w3f/ring-proof#665f5f51af5734c7b6d90b985dd6861d4c5b4752" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-poly", + "ark-serialize", + "ark-std", + "fflonk", + "getrandom_or_panic", + "merlin 3.0.0", + "rand_chacha 0.3.1", +] + +[[package]] +name = "common-path" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2382f75942f4b3be3690fe4f86365e9c853c1587d6ee58212cebf6e2a9ccd101" + [[package]] name = "concurrent-queue" version = "2.5.0" @@ -1120,6 +1477,12 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f7144d30dcf0fafbce74250a3963025d8d52177934239851c917d29f1df280c2" +[[package]] +name = "constcat" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd7e35aee659887cbfb97aaf227ac12cad1a9d7c71e55ff3376839ed4e282d08" + [[package]] name = "convert_case" version = "0.4.0" @@ -1151,25 +1514,6 @@ version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" -[[package]] -name = "core-processor" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2288511615ff82c7c5b076599993689eed5e3cd5949aaddab2d4ed5cc1b33583" -dependencies = [ - "actor-system-error", - "derive_more", - "gear-core", - "gear-core-backend", - "gear-core-errors", - "gear-lazy-pages-common", - "gear-wasm-instrument", - "gsys", - "log", - "parity-scale-codec", - "scale-info", -] - [[package]] name = "corosensei" version = "0.1.4" @@ -1631,6 +1975,17 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "derive-syn-parse" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d65d7ce8132b7c0e54497a4d9a55a1c2a0912a0d786cf894472ba818fba45762" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.74", +] + [[package]] name = "derive_builder" version = "0.12.0" @@ -1780,12 +2135,56 @@ dependencies = [ "winapi", ] -[[package]] -name = "doc-comment" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10" - +[[package]] +name = "dleq_vrf" +version = "0.0.2" +source = "git+https://github.com/w3f/ring-vrf?rev=cbc342e#cbc342e95d3cbcd3c5ba8d45af7200eb58e63502" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-scale 0.0.11", + "ark-secret-scalar", + "ark-serialize", + "ark-std", + "ark-transcript", + "arrayvec 0.7.4", + "rand_core 0.6.4", + "zeroize", +] + +[[package]] +name = "doc-comment" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10" + +[[package]] +name = "docify" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43a2f138ad521dc4a2ced1a4576148a6a610b4c5923933b062a263130a6802ce" +dependencies = [ + "docify_macros", +] + +[[package]] +name = "docify_macros" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a081e51fb188742f5a7a1164ad752121abcb22874b21e2c3b0dd040c515fdad" +dependencies = [ + "common-path", + "derive-syn-parse 0.2.0", + "once_cell", + "proc-macro2", + "quote", + "regex", + "syn 2.0.74", + "termcolor", + "toml", + "walkdir", +] + [[package]] name = "document-features" version = "0.2.10" @@ -1870,28 +2269,31 @@ dependencies = [ "digest 0.10.7", "elliptic-curve", "rfc6979", - "signature 2.2.0", + "signature", "spki", ] [[package]] name = "ed25519" -version = "1.5.3" +version = "2.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91cff35c70bba8a626e3185d8cd48cc11b5437e1a5bcd15b9b5fa3c64b6dfee7" +checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53" dependencies = [ - "signature 1.6.4", + "pkcs8", + "signature", ] [[package]] name = "ed25519-dalek" -version = "1.0.1" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c762bae6dcaf24c4c84667b8579785430908723d5c889f469d76a41d59cc7a9d" +checksum = "4a3daa8e81a3963a60642bcc1f90a670680bd4a77535faa384e9d1c79d620871" dependencies = [ - "curve25519-dalek 3.2.0", + "curve25519-dalek 4.1.3", "ed25519", - "sha2 0.9.9", + "serde", + "sha2 0.10.8", + "subtle", "zeroize", ] @@ -2181,6 +2583,19 @@ dependencies = [ "subtle", ] +[[package]] +name = "fflonk" +version = "0.1.0" +source = "git+https://github.com/w3f/fflonk#1e854f35e9a65d08b11a86291405cdc95baa0a35" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-poly", + "ark-serialize", + "ark-std", + "merlin 3.0.0", +] + [[package]] name = "fiat-crypto" version = "0.2.9" @@ -2283,11 +2698,13 @@ dependencies = [ [[package]] name = "frame-support" -version = "22.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12ab435a28c0b92be45e871a20faae7307a5f1153168aed11076892511b97332" +version = "4.0.0-dev" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ + "aquamarine", + "array-bytes", "bitflags 1.3.2", + "docify", "environmental", "frame-metadata 16.0.0", "frame-support-procedural", @@ -2299,32 +2716,35 @@ dependencies = [ "paste", "scale-info", "serde", + "serde_json", "smallvec", "sp-api", "sp-arithmetic", "sp-core", "sp-core-hashing-proc-macro", - "sp-debug-derive", + "sp-debug-derive 8.0.0", + "sp-genesis-builder", "sp-inherents", "sp-io", + "sp-metadata-ir", "sp-runtime", "sp-staking", "sp-state-machine", - "sp-std 9.0.0", - "sp-tracing 11.0.0", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", + "sp-tracing 10.0.0", "sp-weights", + "static_assertions", "tt-call", ] [[package]] name = "frame-support-procedural" -version = "17.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3515d87fdbf82fa3e5a03b4318ee897c3b2adda928625146dd7d33d52bc2978" +version = "4.0.0-dev" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "Inflector", "cfg-expr", - "derive-syn-parse", + "derive-syn-parse 0.1.5", "expander", "frame-support-procedural-tools", "itertools 0.10.5", @@ -2332,14 +2752,14 @@ dependencies = [ "proc-macro-warning", "proc-macro2", "quote", + "sp-core-hashing 9.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", "syn 2.0.74", ] [[package]] name = "frame-support-procedural-tools" -version = "6.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "072beafb884cd1c046188c64d593cacb6860314f50478a3713438cc56bee42de" +version = "4.0.0-dev" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "frame-support-procedural-tools-derive", "proc-macro-crate 1.3.1", @@ -2350,9 +2770,8 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools-derive" -version = "7.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c3562da4b7b8e24189036c58d459b260e10c8b7af2dd180b7869ae29bb66277" +version = "3.0.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "proc-macro2", "quote", @@ -2361,9 +2780,8 @@ dependencies = [ [[package]] name = "frame-system" -version = "22.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c5104921b9e4e8ffee5251caf7d28defa4e97080554b0e57f93a72b1ec8b915" +version = "4.0.0-dev" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "cfg-if", "frame-support", @@ -2374,7 +2792,7 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-std 9.0.0", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", "sp-version", "sp-weights", ] @@ -2544,8 +2962,7 @@ dependencies = [ [[package]] name = "galloc" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7021443741e4bfcd99d37fa6c321b205d7c696b2084fd3e10cf79f89fda6a48" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "gear-dlmalloc", ] @@ -2553,8 +2970,7 @@ dependencies = [ [[package]] name = "gclient" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8976c82b9a942921aad9829bd434f066fb7af5c0ec08f9840e9f57d6a05eb86" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "anyhow", "async-trait", @@ -2575,8 +2991,7 @@ dependencies = [ [[package]] name = "gcore" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0bdb11c2fe9c5e92615a7ea4b188408bfbe557c47809c7adeefc018efdf707d" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "gear-core-errors", "gear-stack-buffer", @@ -2588,8 +3003,7 @@ dependencies = [ [[package]] name = "gear-common" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a409f727f630385f9bf74311855b2e0799995bba51cda69ef235d42240974e34" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "derive_more", "enum-iterator 1.5.0", @@ -2605,14 +3019,13 @@ dependencies = [ "sp-core", "sp-io", "sp-runtime", - "sp-std 9.0.0", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", ] [[package]] name = "gear-common-codegen" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16bb9f537b64855446386f8c4cb86ecba2b64425e142a16663eca8bf97aa783e" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "quote", "syn 2.0.74", @@ -2621,8 +3034,7 @@ dependencies = [ [[package]] name = "gear-core" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c68bf85cb337a1e7fbe0042318114f00a5868b2a803e34eb693f415558c19f7" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "blake2", "byteorder", @@ -2648,8 +3060,7 @@ dependencies = [ [[package]] name = "gear-core-backend" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0c195e4130570329dd79a50bac136611561797bf482aed026ce8764f980ae60" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "actor-system-error", "blake2", @@ -2668,8 +3079,7 @@ dependencies = [ [[package]] name = "gear-core-errors" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a77d479f7b3d05e9a071990f9c593af793dc7bbb2f2f6bd6f3f390c996ffe8b" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "derive_more", "enum-iterator 1.5.0", @@ -2677,6 +3087,24 @@ dependencies = [ "serde", ] +[[package]] +name = "gear-core-processor" +version = "1.5.0" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +dependencies = [ + "actor-system-error", + "derive_more", + "gear-core", + "gear-core-backend", + "gear-core-errors", + "gear-lazy-pages-common", + "gear-wasm-instrument", + "gsys", + "log", + "parity-scale-codec", + "scale-info", +] + [[package]] name = "gear-dlmalloc" version = "0.2.0" @@ -2693,8 +3121,7 @@ dependencies = [ [[package]] name = "gear-lazy-pages" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c0fafc7d13b103247457b167d5e01a7710fb64f37a8a6e229b641c2cd306b1d" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "cfg-if", "derive_more", @@ -2715,8 +3142,7 @@ dependencies = [ [[package]] name = "gear-lazy-pages-common" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46e24529e9096ecfe329c2beed807e8f4edceb0a398f1db08ba9295fafe1342c" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "gear-core", "num_enum", @@ -2726,20 +3152,19 @@ dependencies = [ [[package]] name = "gear-lazy-pages-native-interface" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df8b5fe33f33a1e63d11f8191738c1aab5ea850bc717f8b8d71bb80092d233ee" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "gear-core", "gear-lazy-pages", "gear-lazy-pages-common", "gear-wasm-instrument", + "log", ] [[package]] name = "gear-node-wrapper" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33f6d65a5b0fe34acfb5aeec131ce0249cb8429415c72f1eee6a9d0f1d206337" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "anyhow", "rand 0.8.5", @@ -2761,43 +3186,40 @@ dependencies = [ [[package]] name = "gear-sandbox" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42a11eada83003e5d51ec0a63ab834161ff0eed9ff98efd774e72095e059d3e9" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "gear-sandbox-env", "gear-sandbox-interface", - "gwasmi", "log", "parity-scale-codec", "sp-core", - "sp-std 9.0.0", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", "sp-wasm-interface-common", + "wasmi 0.30.0 (git+https://github.com/gear-tech/wasmi?branch=gear-v0.30.0)", ] [[package]] name = "gear-sandbox-env" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b8e85693d331cd75effed01ecaeccc6ae28e137e454b020dc341829c9c74e3e" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "parity-scale-codec", - "sp-debug-derive", - "sp-std 9.0.0", + "sp-debug-derive 8.0.0", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", "sp-wasm-interface-common", ] [[package]] name = "gear-sandbox-host" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f32c58ae124e317637cbd9061b1025d9af61525edc3d807c19cad60706f6dd42" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "defer", "environmental", "gear-sandbox-env", - "gp-allocator", "log", "parity-scale-codec", + "sp-allocator", "sp-wasm-interface-common", "tempfile", "thiserror", @@ -2811,38 +3233,34 @@ dependencies = [ [[package]] name = "gear-sandbox-interface" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7df54d27cbe4c7778236c788c01fa30072af4f8040f1dfcd864a431402ab61e8" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "gear-sandbox-host", - "gp-runtime-interface", - "gp-wasm-interface", "log", "parity-scale-codec", + "sp-runtime-interface 17.0.0", + "sp-wasm-interface 14.0.0", ] [[package]] name = "gear-ss58" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4325383bd3d43aaa5d50b608ed7e5044110b5ccf91df351edb66ee4462f61f1f" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "blake2", - "bs58 0.5.1", + "bs58", "hex", ] [[package]] name = "gear-stack-buffer" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3860391a8c1c273786958b5076a406d0ecd8e73636eb4161a6c3e1ea548ab9b" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" [[package]] name = "gear-utils" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ca1c5b08aa64916b9719f821ef61f52d262548ec5e5a7d9d42cf6b035fa4e04" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "env_logger 0.10.2", "gear-core", @@ -2863,17 +3281,16 @@ checksum = "bbfbfa701dc65e683fcd2fb24f046bcef22634acbdf47ad14724637dc39ad05b" [[package]] name = "gear-wasm-builder" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae5fe1f1a0f39747995883565c05f1b39935b83c0f8fb3d9e8a1763c4a83ec60" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "anyhow", "cargo_metadata", "chrono", - "colored", "dirs 4.0.0", "gear-core", "gear-pwasm-utils", "gear-wasm-instrument", + "gear-wasm-optimizer", "gmeta", "log", "pathdiff", @@ -2881,21 +3298,33 @@ dependencies = [ "rustc_version", "thiserror", "toml", - "wasmparser-nostd", - "which", ] [[package]] name = "gear-wasm-instrument" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8446dc4b4dc7a1fc30f1c4bd1a0e7bcee7d5e5f9d1edd1f99d96b73a4ff8cc4" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "derive_more", "enum-iterator 1.5.0", "gwasm-instrument", ] +[[package]] +name = "gear-wasm-optimizer" +version = "1.5.0" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +dependencies = [ + "anyhow", + "colored", + "gear-pwasm-utils", + "gear-wasm-instrument", + "log", + "regex", + "wasmparser-nostd", + "which", +] + [[package]] name = "genco" version = "0.17.9" @@ -2968,6 +3397,7 @@ version = "0.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6ea1015b5a70616b688dc230cfe50c8af89d972cb132d5a622814d29773b10b9" dependencies = [ + "rand 0.8.5", "rand_core 0.6.4", ] @@ -3287,8 +3717,7 @@ dependencies = [ [[package]] name = "gmeta" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90b03d2f25e0172da8087b074599254d29501cdf6f20e2f62fc7804fad618bea" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "blake2", "derive_more", @@ -3296,71 +3725,10 @@ dependencies = [ "scale-info", ] -[[package]] -name = "gp-allocator" -version = "4.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93cfb4525b5362966a1971125ff8f9825e6a511403635dccf883273d20c43bdf" -dependencies = [ - "log", - "parity-scale-codec", - "sp-wasm-interface-common", - "thiserror", -] - -[[package]] -name = "gp-runtime-interface" -version = "18.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8dfb3786bf8fe51099c67dfe7c9a925fe0bfb78ffe938aa07b598995ee48d0e3" -dependencies = [ - "bytes", - "gp-runtime-interface-proc-macro", - "gp-wasm-interface", - "impl-trait-for-tuples", - "parity-scale-codec", - "primitive-types", - "sp-externalities", - "sp-std 9.0.0", - "sp-storage", - "sp-tracing 10.0.0", - "static_assertions", -] - -[[package]] -name = "gp-runtime-interface-proc-macro" -version = "12.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1e4d907f86db64e8b9d9af0b5adfd59e62b4023fd88511e13d62028ed101f2c" -dependencies = [ - "Inflector", - "proc-macro-crate 1.3.1", - "proc-macro2", - "quote", - "syn 2.0.74", -] - -[[package]] -name = "gp-wasm-interface" -version = "15.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de334e40147f969276463ad04d0ddfe519aebb6254832ea0637a300c6d637c11" -dependencies = [ - "anyhow", - "gp-allocator", - "impl-trait-for-tuples", - "log", - "parity-scale-codec", - "sp-std 9.0.0", - "sp-wasm-interface-common", - "wasmtime", -] - [[package]] name = "gprimitives" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68d4985924d3c23a78cbc70d1bb4f0b01aa3a4ea95609b15434eb1a487dfbb15" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "derive_more", "gear-ss58", @@ -3384,8 +3752,7 @@ dependencies = [ [[package]] name = "gsdk" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8878b48ac8ae1ad6e8ed4be81b34485220cf743e0bf51a8e07b11bd8e1f37d36" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "anyhow", "base64 0.21.7", @@ -3416,8 +3783,7 @@ dependencies = [ [[package]] name = "gsdk-codegen" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88249fd15fb5fd9dd00c5037cc8afd41a57d93a7fcdc2b004f346b1070617ded" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "proc-macro2", "quote", @@ -3427,8 +3793,7 @@ dependencies = [ [[package]] name = "gstd" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1d0f71187a65f4af14b03ceb0d5b0c1de87174ba77478496cc5bd744d096200" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "arrayvec 0.7.4", "const_format", @@ -3446,8 +3811,7 @@ dependencies = [ [[package]] name = "gstd-codegen" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c89587bbe369ed78ae2b228a4ac4a92349946cd5305dbb9b8b321c2e85bb452" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "gprimitives", "proc-macro2", @@ -3458,24 +3822,22 @@ dependencies = [ [[package]] name = "gsys" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2c857620fd28f327ce1fa479ec1b473523e7e636201a71f11865e36055e34fc" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" [[package]] name = "gtest" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21ef2bae5647ecdc875ac90b8c6ac1d4549041b10149bb7af37a6f4403242e1a" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "cargo_toml", "colored", - "core-processor", "derive_more", "env_logger 0.10.2", "etc", "gear-common", "gear-core", "gear-core-errors", + "gear-core-processor", "gear-lazy-pages", "gear-lazy-pages-common", "gear-lazy-pages-native-interface", @@ -3499,33 +3861,6 @@ dependencies = [ "gear-wasm", ] -[[package]] -name = "gwasmi" -version = "0.30.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "540bef71ad072d770140dc3f47f6bcc2b2b0492aa6a3ff236a13a7cd9427c58b" -dependencies = [ - "gwasmi_core", - "intx", - "smallvec", - "spin", - "wasmi_arena", - "wasmparser-nostd", -] - -[[package]] -name = "gwasmi_core" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47443d9a0eaa456c80525cebb42178fc47690fee77f9729eeece6ff70906fdcf" -dependencies = [ - "downcast-rs", - "libm", - "num-traits", - "paste", - "region", -] - [[package]] name = "h2" version = "0.3.26" @@ -3853,6 +4188,25 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "include_dir" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "923d117408f1e49d914f1a379a309cffe4f18c05cf4e3d12e613a15fc81bd0dd" +dependencies = [ + "include_dir_macros", +] + +[[package]] +name = "include_dir_macros" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cab85a7ed0bd5f0e76d93846e0147172bed2e2d3f859bcc33a8d9699cad1a75" +dependencies = [ + "proc-macro2", + "quote", +] + [[package]] name = "indexmap" version = "1.9.3" @@ -4562,9 +4916,9 @@ dependencies = [ [[package]] name = "macro_magic" -version = "0.4.2" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aee866bfee30d2d7e83835a4574aad5b45adba4cc807f2a3bbba974e5d4383c9" +checksum = "cc33f9f0351468d26fbc53d9ce00a096c8522ecb42f19b50f34f2c422f76d21d" dependencies = [ "macro_magic_core", "macro_magic_macros", @@ -4574,12 +4928,12 @@ dependencies = [ [[package]] name = "macro_magic_core" -version = "0.4.2" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e766a20fd9c72bab3e1e64ed63f36bd08410e75803813df210d1ce297d7ad00" +checksum = "1687dc887e42f352865a393acae7cf79d98fab6351cde1f58e9e057da89bf150" dependencies = [ "const-random", - "derive-syn-parse", + "derive-syn-parse 0.2.0", "macro_magic_core_macros", "proc-macro2", "quote", @@ -4588,9 +4942,9 @@ dependencies = [ [[package]] name = "macro_magic_core_macros" -version = "0.4.3" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d710e1214dffbab3b5dacb21475dde7d6ed84c69ff722b3a47a782668d44fbac" +checksum = "b02abfe41815b5bd98dbd4260173db2c116dda171dc0fe7838cb206333b83308" dependencies = [ "proc-macro2", "quote", @@ -4599,9 +4953,9 @@ dependencies = [ [[package]] name = "macro_magic_macros" -version = "0.4.2" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8fb85ec1620619edf2984a7693497d4ec88a9665d8b87e942856884c92dbf2a" +checksum = "73ea28ee64b88876bf45277ed9a5817c1817df061a74f2b988971a12570e5869" dependencies = [ "macro_magic_core", "quote", @@ -4617,6 +4971,15 @@ dependencies = [ "regex-automata 0.1.10", ] +[[package]] +name = "matchers" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" +dependencies = [ + "regex-automata 0.1.10", +] + [[package]] name = "memchr" version = "2.7.4" @@ -4886,6 +5249,16 @@ dependencies = [ "windows-sys 0.59.0", ] +[[package]] +name = "nu-ansi-term" +version = "0.46.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" +dependencies = [ + "overload", + "winapi", +] + [[package]] name = "num-bigint" version = "0.4.6" @@ -4989,8 +5362,7 @@ checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" [[package]] name = "numerated" version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef64a6c05dfdaec4c4b01f22d618c5dec9ec3f6a6611076d2d7b3fb63549f356" +source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" dependencies = [ "derive_more", "num-traits", @@ -5071,6 +5443,12 @@ dependencies = [ "windows-sys 0.59.0", ] +[[package]] +name = "overload" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" + [[package]] name = "page_size" version = "0.6.0" @@ -5114,6 +5492,11 @@ version = "0.45.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e1ad0aff30c1da14b1254fcb2af73e1fa9a28670e584a626f53a369d0e157304" +[[package]] +name = "parity-wasm" +version = "0.45.0" +source = "git+https://github.com/gear-tech/parity-wasm?branch=v0.45.0-sign-ext#bad3e1ec78f655f3eec5a0c9c12a3546c8c9d432" + [[package]] name = "parking" version = "2.2.0" @@ -5188,15 +5571,6 @@ dependencies = [ "crypto-mac 0.11.1", ] -[[package]] -name = "pbkdf2" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917" -dependencies = [ - "digest 0.10.7", -] - [[package]] name = "pbkdf2" version = "0.12.2" @@ -5335,6 +5709,43 @@ version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec" +[[package]] +name = "polkavm-common" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d9428a5cfcc85c5d7b9fc4b6a18c4b802d0173d768182a51cc7751640f08b92" + +[[package]] +name = "polkavm-derive" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae8c4bea6f3e11cd89bb18bcdddac10bd9a24015399bd1c485ad68a985a19606" +dependencies = [ + "polkavm-derive-impl-macro", +] + +[[package]] +name = "polkavm-derive-impl" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c4fdfc49717fb9a196e74a5d28e0bc764eb394a2c803eb11133a31ac996c60c" +dependencies = [ + "polkavm-common", + "proc-macro2", + "quote", + "syn 2.0.74", +] + +[[package]] +name = "polkavm-derive-impl-macro" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ba81f7b5faac81e528eb6158a6f3c9e0bb1008e0ffa19653bc8dea925ecb429" +dependencies = [ + "polkavm-derive-impl", + "syn 2.0.74", +] + [[package]] name = "polling" version = "2.8.0" @@ -5510,9 +5921,9 @@ dependencies = [ [[package]] name = "proc-macro-warning" -version = "0.4.2" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d1eaa7fa0aa1929ffdf7eeb6eac234dde6268914a14ad44d23521ab6a9b258e" +checksum = "834da187cfe638ae8abb0203f0b33e5ccdb02a28e7199f2f47b3e2754f50edca" dependencies = [ "proc-macro2", "quote", @@ -5854,6 +6265,23 @@ dependencies = [ "syn 2.0.74", ] +[[package]] +name = "ring" +version = "0.1.0" +source = "git+https://github.com/w3f/ring-proof#665f5f51af5734c7b6d90b985dd6861d4c5b4752" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-poly", + "ark-serialize", + "ark-std", + "arrayvec 0.7.4", + "blake2", + "common", + "fflonk", + "merlin 3.0.0", +] + [[package]] name = "ring" version = "0.17.8" @@ -6018,7 +6446,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e" dependencies = [ "log", - "ring", + "ring 0.17.8", "rustls-webpki", "sct", ] @@ -6050,7 +6478,7 @@ version = "0.101.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" dependencies = [ - "ring", + "ring 0.17.8", "untrusted", ] @@ -6413,7 +6841,7 @@ version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" dependencies = [ - "ring", + "ring 0.17.8", "untrusted", ] @@ -6685,13 +7113,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1" dependencies = [ "libc", -] - -[[package]] -name = "signature" -version = "1.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c" +] [[package]] name = "signature" @@ -6782,7 +7204,7 @@ dependencies = [ "base64 0.21.7", "bip39", "blake2-rfc", - "bs58 0.5.1", + "bs58", "crossbeam-queue", "derive_more", "ed25519-zebra", @@ -6819,7 +7241,7 @@ dependencies = [ "soketto", "tiny-keccak", "twox-hash", - "wasmi 0.30.0", + "wasmi 0.30.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] @@ -6902,11 +7324,21 @@ dependencies = [ "sha-1", ] +[[package]] +name = "sp-allocator" +version = "4.1.0-dev" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" +dependencies = [ + "log", + "parity-scale-codec", + "sp-wasm-interface-common", + "thiserror", +] + [[package]] name = "sp-api" -version = "20.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1aa63dcdd3fb081a894189f83115dd683be1339a919cd7d3f98f145d1870626c" +version = "4.0.0-dev" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "hash-db", "log", @@ -6914,11 +7346,11 @@ dependencies = [ "scale-info", "sp-api-proc-macro", "sp-core", - "sp-externalities", + "sp-externalities 0.19.0", "sp-metadata-ir", "sp-runtime", "sp-state-machine", - "sp-std 9.0.0", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", "sp-trie", "sp-version", "thiserror", @@ -6926,9 +7358,8 @@ dependencies = [ [[package]] name = "sp-api-proc-macro" -version = "9.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a062dfff051064bfa1837566b74d00a49050b36e3887b2283ab667cef4f3a85e" +version = "4.0.0-dev" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "Inflector", "blake2", @@ -6941,50 +7372,68 @@ dependencies = [ [[package]] name = "sp-application-crypto" -version = "24.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b49d62089ef6fdd52a6f90f670d533ccb365235258cf517dbd5bd571febcfbd" +version = "23.0.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "parity-scale-codec", "scale-info", "serde", "sp-core", "sp-io", - "sp-std 9.0.0", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", ] [[package]] name = "sp-arithmetic" -version = "17.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0241327405688cac3fcc29114fd35f99224e321daa37e19920e50e4b2fdd0645" +version = "16.0.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "integer-sqrt", "num-traits", "parity-scale-codec", "scale-info", "serde", - "sp-std 9.0.0", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", "static_assertions", ] +[[package]] +name = "sp-ark-bls12-381" +version = "0.4.2" +source = "git+https://github.com/paritytech/arkworks-substrate#caa2eed74beb885dd07c7db5f916f2281dad818f" +dependencies = [ + "ark-bls12-381-ext", + "sp-crypto-ec-utils", +] + +[[package]] +name = "sp-ark-ed-on-bls12-381-bandersnatch" +version = "0.4.2" +source = "git+https://github.com/paritytech/arkworks-substrate#caa2eed74beb885dd07c7db5f916f2281dad818f" +dependencies = [ + "ark-ed-on-bls12-381-bandersnatch-ext", + "sp-crypto-ec-utils", +] + [[package]] name = "sp-core" -version = "22.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0de478e02efd547693b33ad02515e09933d5b69b7f3036fa890b92e50fd9dfc" +version = "21.0.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "array-bytes", + "bandersnatch_vrfs", + "bip39", "bitflags 1.3.2", "blake2", "bounded-collections", - "bs58 0.4.0", + "bs58", "dyn-clonable", "ed25519-zebra", "futures", "hash-db", "hash256-std-hasher", "impl-serde", + "itertools 0.10.5", "lazy_static", "libsecp256k1", "log", @@ -7000,17 +7449,18 @@ dependencies = [ "secp256k1", "secrecy", "serde", - "sp-core-hashing 10.0.0", - "sp-debug-derive", - "sp-externalities", - "sp-runtime-interface", - "sp-std 9.0.0", - "sp-storage", + "sp-allocator", + "sp-core-hashing 9.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", + "sp-debug-derive 8.0.0", + "sp-externalities 0.19.0", + "sp-runtime-interface 17.0.0", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", + "sp-storage 13.0.0", "ss58-registry", "substrate-bip39", "thiserror", - "tiny-bip39", "tracing", + "w3f-bls", "zeroize", ] @@ -7025,15 +7475,14 @@ dependencies = [ "digest 0.10.7", "sha2 0.10.8", "sha3", - "sp-std 8.0.0", + "sp-std 8.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "twox-hash", ] [[package]] name = "sp-core-hashing" -version = "10.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e360755a2706a76886d58776665cad0db793dece3c7d390455b28e8a1efd6285" +version = "9.0.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "blake2b_simd", "byteorder", @@ -7045,20 +7494,48 @@ dependencies = [ [[package]] name = "sp-core-hashing-proc-macro" -version = "10.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8dc707d9f5bf155d584900783e328cb3dc79c950f898a18a8f24066f41f040a5" +version = "9.0.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "quote", - "sp-core-hashing 10.0.0", + "sp-core-hashing 9.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", "syn 2.0.74", ] +[[package]] +name = "sp-crypto-ec-utils" +version = "0.10.0" +source = "git+https://github.com/paritytech/polkadot-sdk#3fe22d17c4904c5ae016034b6ec2c335464b4165" +dependencies = [ + "ark-bls12-377", + "ark-bls12-377-ext", + "ark-bls12-381", + "ark-bls12-381-ext", + "ark-bw6-761", + "ark-bw6-761-ext", + "ark-ec", + "ark-ed-on-bls12-377", + "ark-ed-on-bls12-377-ext", + "ark-ed-on-bls12-381-bandersnatch", + "ark-ed-on-bls12-381-bandersnatch-ext", + "ark-scale 0.0.12", + "sp-runtime-interface 24.0.0", +] + [[package]] name = "sp-debug-derive" -version = "9.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f12dae7cf6c1e825d13ffd4ce16bd9309db7c539929d0302b4443ed451a9f4e5" +version = "8.0.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.74", +] + +[[package]] +name = "sp-debug-derive" +version = "14.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk#3fe22d17c4904c5ae016034b6ec2c335464b4165" dependencies = [ "proc-macro2", "quote", @@ -7067,39 +7544,56 @@ dependencies = [ [[package]] name = "sp-externalities" -version = "0.20.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3313e2c5f2523b06062e541dff9961bde88ad5a28861621dc7b7b47a32bb0f7c" +version = "0.19.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" +dependencies = [ + "environmental", + "parity-scale-codec", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", + "sp-storage 13.0.0", +] + +[[package]] +name = "sp-externalities" +version = "0.25.0" +source = "git+https://github.com/paritytech/polkadot-sdk#3fe22d17c4904c5ae016034b6ec2c335464b4165" dependencies = [ "environmental", "parity-scale-codec", - "sp-std 9.0.0", - "sp-storage", + "sp-storage 19.0.0", +] + +[[package]] +name = "sp-genesis-builder" +version = "0.1.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" +dependencies = [ + "serde_json", + "sp-api", + "sp-runtime", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", ] [[package]] name = "sp-inherents" -version = "20.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30fe27930fbcc1ddf8e73446c65b2696f3544adeb30d1f5171d360e5c7072c9c" +version = "4.0.0-dev" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "async-trait", "impl-trait-for-tuples", "parity-scale-codec", "scale-info", "sp-runtime", - "sp-std 9.0.0", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", "thiserror", ] [[package]] name = "sp-io" -version = "24.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff6194309bfe055d93177c6c9d2ed4c7b66040617cf3003a15e509c432cf3b62" +version = "23.0.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "bytes", - "ed25519", "ed25519-dalek", "libsecp256k1", "log", @@ -7107,12 +7601,12 @@ dependencies = [ "rustversion", "secp256k1", "sp-core", - "sp-externalities", + "sp-externalities 0.19.0", "sp-keystore", - "sp-runtime-interface", + "sp-runtime-interface 17.0.0", "sp-state-machine", - "sp-std 9.0.0", - "sp-tracing 11.0.0", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", + "sp-tracing 10.0.0", "sp-trie", "tracing", "tracing-core", @@ -7120,34 +7614,31 @@ dependencies = [ [[package]] name = "sp-keystore" -version = "0.28.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6eda1d2572a15340927a9f7db75ffe74366b645eaf9212015b4a96ad8e9d4c46" +version = "0.27.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "parity-scale-codec", "parking_lot", "sp-core", - "sp-externalities", + "sp-externalities 0.19.0", "thiserror", ] [[package]] name = "sp-metadata-ir" version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0369e75e418bcfdeede4acb92563ef2d514ad0e7d81c350ba9ae98841a237f3c" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "frame-metadata 16.0.0", "parity-scale-codec", "scale-info", - "sp-std 9.0.0", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", ] [[package]] name = "sp-panic-handler" -version = "9.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57c67eb0a0d11d3017ef43c975068ba76c7b0e83aca1ee3d68ba0ce270ecebe7" +version = "8.0.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "backtrace", "lazy_static", @@ -7156,9 +7647,8 @@ dependencies = [ [[package]] name = "sp-runtime" -version = "25.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d056e4cccf36a45be5d471b47c09e8be91b825f1d8352f20aa01f9f693176e7" +version = "24.0.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "either", "hash256-std-hasher", @@ -7173,34 +7663,51 @@ dependencies = [ "sp-arithmetic", "sp-core", "sp-io", - "sp-std 9.0.0", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", "sp-weights", ] [[package]] name = "sp-runtime-interface" -version = "18.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf9781c72848efe6750116eb96edaeb105ee7e0bd7f38a4e46371bf810b3db7b" +version = "17.0.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" +dependencies = [ + "bytes", + "impl-trait-for-tuples", + "parity-scale-codec", + "primitive-types", + "sp-externalities 0.19.0", + "sp-runtime-interface-proc-macro 11.0.0", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", + "sp-storage 13.0.0", + "sp-tracing 10.0.0", + "sp-wasm-interface 14.0.0", + "static_assertions", +] + +[[package]] +name = "sp-runtime-interface" +version = "24.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk#3fe22d17c4904c5ae016034b6ec2c335464b4165" dependencies = [ "bytes", "impl-trait-for-tuples", "parity-scale-codec", + "polkavm-derive", "primitive-types", - "sp-externalities", - "sp-runtime-interface-proc-macro", - "sp-std 9.0.0", - "sp-storage", - "sp-tracing 11.0.0", - "sp-wasm-interface", + "sp-externalities 0.25.0", + "sp-runtime-interface-proc-macro 17.0.0", + "sp-std 14.0.0", + "sp-storage 19.0.0", + "sp-tracing 16.0.0", + "sp-wasm-interface 20.0.0", "static_assertions", ] [[package]] name = "sp-runtime-interface-proc-macro" -version = "12.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7402572a08aa1ae421ea5bab10918764b0ae72301b27710913e5d804862f2448" +version = "11.0.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "Inflector", "proc-macro-crate 1.3.1", @@ -7209,11 +7716,23 @@ dependencies = [ "syn 2.0.74", ] +[[package]] +name = "sp-runtime-interface-proc-macro" +version = "17.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk#3fe22d17c4904c5ae016034b6ec2c335464b4165" +dependencies = [ + "Inflector", + "expander", + "proc-macro-crate 3.1.0", + "proc-macro2", + "quote", + "syn 2.0.74", +] + [[package]] name = "sp-staking" -version = "20.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4883e5d0a533009175746e3c35d44aa031805064153749baefd6cac915e70ba5" +version = "4.0.0-dev" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "impl-trait-for-tuples", "parity-scale-codec", @@ -7221,14 +7740,13 @@ dependencies = [ "serde", "sp-core", "sp-runtime", - "sp-std 9.0.0", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", ] [[package]] name = "sp-state-machine" -version = "0.29.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2e84d8ed3acc6aed5a3d5cfd500fb5b99c1e299c86086b2fe82c3e4be93178f" +version = "0.28.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "hash-db", "log", @@ -7237,9 +7755,9 @@ dependencies = [ "rand 0.8.5", "smallvec", "sp-core", - "sp-externalities", + "sp-externalities 0.19.0", "sp-panic-handler", - "sp-std 9.0.0", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", "sp-trie", "thiserror", "tracing", @@ -7254,55 +7772,66 @@ checksum = "53458e3c57df53698b3401ec0934bea8e8cfce034816873c0b0abbd83d7bac0d" [[package]] name = "sp-std" -version = "9.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d5bbc9339227d1b6a9b7ccd9b2920c818653d40eef1512f1e2e824d72e7a336" +version = "8.0.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" [[package]] -name = "sp-storage" +name = "sp-std" version = "14.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a21245c3a7799ff6d3f1f159b496f9ac72eb32cd6fe68c6f73013155289aa9f1" +source = "git+https://github.com/paritytech/polkadot-sdk#3fe22d17c4904c5ae016034b6ec2c335464b4165" + +[[package]] +name = "sp-storage" +version = "13.0.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" +dependencies = [ + "impl-serde", + "parity-scale-codec", + "ref-cast", + "serde", + "sp-debug-derive 8.0.0", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", +] + +[[package]] +name = "sp-storage" +version = "19.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk#3fe22d17c4904c5ae016034b6ec2c335464b4165" dependencies = [ "impl-serde", "parity-scale-codec", "ref-cast", "serde", - "sp-debug-derive", - "sp-std 9.0.0", + "sp-debug-derive 14.0.0", ] [[package]] name = "sp-tracing" version = "10.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "357f7591980dd58305956d32f8f6646d0a8ea9ea0e7e868e46f53b68ddf00cec" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "parity-scale-codec", - "sp-std 8.0.0", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", "tracing", "tracing-core", - "tracing-subscriber", + "tracing-subscriber 0.2.25", ] [[package]] name = "sp-tracing" -version = "11.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f5ba26db1f7513d5975970d1ba1f0580d7a1b8da8c86ea3f9f0f8dbe2cfa96e" +version = "16.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk#3fe22d17c4904c5ae016034b6ec2c335464b4165" dependencies = [ "parity-scale-codec", - "sp-std 9.0.0", "tracing", "tracing-core", - "tracing-subscriber", + "tracing-subscriber 0.3.18", ] [[package]] name = "sp-trie" -version = "23.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf63ea90ffb5d61048d8fb2fac669114dac198fc2739e913e615f0fd2c36c3e7" +version = "22.0.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "ahash 0.8.11", "hash-db", @@ -7312,10 +7841,11 @@ dependencies = [ "nohash-hasher", "parity-scale-codec", "parking_lot", + "rand 0.8.5", "scale-info", "schnellru", "sp-core", - "sp-std 9.0.0", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", "thiserror", "tracing", "trie-db", @@ -7324,27 +7854,25 @@ dependencies = [ [[package]] name = "sp-version" -version = "23.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccae066042a53a83017a2afeee2fd608efa42b564c1a44ea1260d5a2c264ac66" +version = "22.0.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" 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-core-hashing-proc-macro", "sp-runtime", - "sp-std 9.0.0", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", "sp-version-proc-macro", "thiserror", ] [[package]] name = "sp-version-proc-macro" -version = "9.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07e569853a50ad02a4b45640e7b96206bcb4569bb85ce7cdf8754a207fcfba54" +version = "8.0.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "parity-scale-codec", "proc-macro2", @@ -7354,34 +7882,43 @@ dependencies = [ [[package]] name = "sp-wasm-interface" -version = "15.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d07945f592d2792632e6f030108769757e928a0fd78cf8659c9c210a5e341e55" +version = "14.0.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "anyhow", "impl-trait-for-tuples", "log", "parity-scale-codec", - "sp-std 9.0.0", + "sp-allocator", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", + "sp-wasm-interface-common", "wasmtime", ] +[[package]] +name = "sp-wasm-interface" +version = "20.0.0" +source = "git+https://github.com/paritytech/polkadot-sdk#3fe22d17c4904c5ae016034b6ec2c335464b4165" +dependencies = [ + "impl-trait-for-tuples", + "log", + "parity-scale-codec", +] + [[package]] name = "sp-wasm-interface-common" -version = "15.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03223ee788e1490f6341eb5b76501f83abf931fa8b5d83b5f49a4fecaf83f4ae" +version = "7.0.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "parity-scale-codec", - "sp-std 9.0.0", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", "wasmi 0.13.2", ] [[package]] name = "sp-weights" -version = "21.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b7699b853471c2eb5dc06ea1d8ea847bfa1415371218ebb4c86325c9d0232bc" +version = "20.0.0" +source = "git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0#09bdd2a6953d057ae360ec3ef6ec735f9306cc04" dependencies = [ "parity-scale-codec", "scale-info", @@ -7389,8 +7926,8 @@ dependencies = [ "smallvec", "sp-arithmetic", "sp-core", - "sp-debug-derive", - "sp-std 9.0.0", + "sp-debug-derive 8.0.0", + "sp-std 8.0.0 (git+https://github.com/gear-tech/polkadot-sdk.git?branch=gear-v1.4.0)", ] [[package]] @@ -7517,7 +8054,7 @@ dependencies = [ "scale-value", "serde", "serde_json", - "sp-core-hashing 9.0.0", + "sp-core-hashing 9.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "subxt-lightclient", "subxt-macro", "subxt-metadata", @@ -7583,7 +8120,7 @@ dependencies = [ "frame-metadata 16.0.0", "parity-scale-codec", "scale-info", - "sp-core-hashing 9.0.0", + "sp-core-hashing 9.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "thiserror", ] @@ -7799,25 +8336,6 @@ dependencies = [ "time-core", ] -[[package]] -name = "tiny-bip39" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62cc94d358b5a1e84a5cb9109f559aa3c4d634d2b1b4de3d0fa4adc7c78e2861" -dependencies = [ - "anyhow", - "hmac 0.12.1", - "once_cell", - "pbkdf2 0.11.0", - "rand 0.8.5", - "rustc-hash", - "sha2 0.10.8", - "thiserror", - "unicode-normalization", - "wasm-bindgen", - "zeroize", -] - [[package]] name = "tiny-keccak" version = "2.0.2" @@ -8034,6 +8552,17 @@ dependencies = [ "tracing-core", ] +[[package]] +name = "tracing-log" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3" +dependencies = [ + "log", + "once_cell", + "tracing-core", +] + [[package]] name = "tracing-serde" version = "0.1.3" @@ -8053,7 +8582,7 @@ dependencies = [ "ansi_term", "chrono", "lazy_static", - "matchers", + "matchers 0.0.1", "regex", "serde", "serde_json", @@ -8062,15 +8591,34 @@ dependencies = [ "thread_local", "tracing", "tracing-core", - "tracing-log", + "tracing-log 0.1.4", "tracing-serde", ] +[[package]] +name = "tracing-subscriber" +version = "0.3.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b" +dependencies = [ + "matchers 0.1.0", + "nu-ansi-term", + "once_cell", + "regex", + "sharded-slab", + "smallvec", + "thread_local", + "time", + "tracing", + "tracing-core", + "tracing-log 0.2.0", +] + [[package]] name = "trie-db" -version = "0.27.1" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "767abe6ffed88a1889671a102c2861ae742726f52e0a5a425b92c9fbfa7e9c85" +checksum = "ff28e0f815c2fea41ebddf148e008b077d2faddb026c9555b29696114d602642" dependencies = [ "hash-db", "hashbrown 0.13.2", @@ -8179,9 +8727,9 @@ checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" [[package]] name = "unicode-normalization" -version = "0.1.23" +version = "0.1.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5" +checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" dependencies = [ "tinyvec", ] @@ -8268,6 +8816,30 @@ version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" +[[package]] +name = "w3f-bls" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c5da5fa2c6afa2c9158eaa7cd9aee249765eb32b5fb0c63ad8b9e79336a47ec" +dependencies = [ + "ark-bls12-377", + "ark-bls12-381", + "ark-ec", + "ark-ff", + "ark-serialize", + "ark-serialize-derive", + "arrayref", + "constcat", + "digest 0.10.7", + "rand 0.8.5", + "rand_chacha 0.3.1", + "rand_core 0.6.4", + "sha2 0.10.8", + "sha3", + "thiserror", + "zeroize", +] + [[package]] name = "wabt" version = "0.10.0" @@ -8586,10 +9158,9 @@ dependencies = [ [[package]] name = "wasmi" version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06c326c93fbf86419608361a2c925a31754cf109da1b8b55737070b4d6669422" +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", ] @@ -8603,20 +9174,37 @@ dependencies = [ "intx", "smallvec", "spin", - "wasmi_arena", - "wasmi_core 0.12.0", + "wasmi_arena 0.4.1", + "wasmi_core 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", + "wasmparser-nostd", +] + +[[package]] +name = "wasmi" +version = "0.30.0" +source = "git+https://github.com/gear-tech/wasmi?branch=gear-v0.30.0#c8b0be9c2012e0478959a59074fd953a942782bc" +dependencies = [ + "intx", + "smallvec", + "spin", + "wasmi_arena 0.4.0", + "wasmi_core 0.12.0 (git+https://github.com/gear-tech/wasmi?branch=gear-v0.30.0)", "wasmparser-nostd", ] [[package]] name = "wasmi-validation" version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91ff416ad1ff0c42e5a926ed5d5fab74c0f098749aa0ad8b2a34b982ce0e867b" +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]] +name = "wasmi_arena" +version = "0.4.0" +source = "git+https://github.com/gear-tech/wasmi?branch=gear-v0.30.0#c8b0be9c2012e0478959a59074fd953a942782bc" + [[package]] name = "wasmi_arena" version = "0.4.1" @@ -8626,8 +9214,7 @@ checksum = "104a7f73be44570cac297b3035d76b169d6599637631cf37a1703326a0727073" [[package]] name = "wasmi_core" version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57d20cb3c59b788653d99541c646c561c9dd26506f25c0cebfe810659c54c6d7" +source = "git+https://github.com/gear-tech/wasmi?branch=v0.13.2-sign-ext#3a0b1022377919e62aadf4d78b762abd1c3e9a04" dependencies = [ "downcast-rs", "libm", @@ -8649,6 +9236,18 @@ dependencies = [ "paste", ] +[[package]] +name = "wasmi_core" +version = "0.12.0" +source = "git+https://github.com/gear-tech/wasmi?branch=gear-v0.30.0#c8b0be9c2012e0478959a59074fd953a942782bc" +dependencies = [ + "downcast-rs", + "libm", + "num-traits", + "paste", + "region", +] + [[package]] name = "wasmparser" version = "0.102.0" diff --git a/Cargo.toml b/Cargo.toml index baebd470..184b7823 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -39,12 +39,14 @@ sails-idl-gen = { path = "rs/idl-gen" } sails-rename = { package = "sails-rs", path = "rs" } # Gear deps -gclient = "=1.5.0" -gear-core-errors = "=1.5.0" -gprimitives = { version = "=1.5.0", features = ["codec"] } -gstd = "=1.5.0" -gtest = "=1.5.0" -gwasm-builder = { package = "gear-wasm-builder", version = "=1.5.0" } +gclient = { git = "https://github.com/gear-tech/gear", branch = "vo/gsdk_voucher" } +gear-core-errors = { git = "https://github.com/gear-tech/gear", branch = "vo/gsdk_voucher" } +gprimitives = { git = "https://github.com/gear-tech/gear", branch = "vo/gsdk_voucher", features = [ + "codec", +] } +gstd = { git = "https://github.com/gear-tech/gear", branch = "vo/gsdk_voucher" } +gtest = { git = "https://github.com/gear-tech/gear", branch = "vo/gsdk_voucher" } +gwasm-builder = { package = "gear-wasm-builder", git = "https://github.com/gear-tech/gear", branch = "vo/gsdk_voucher" } # Other deps in alphabetical order anyhow = "1" diff --git a/examples/demo/app/tests/fixture/mod.rs b/examples/demo/app/tests/fixture/mod.rs index b605200f..7cb5b3d1 100644 --- a/examples/demo/app/tests/fixture/mod.rs +++ b/examples/demo/app/tests/fixture/mod.rs @@ -69,4 +69,8 @@ impl Fixture { pub(crate) fn references_client(&self) -> References { References::new(self.program_space.clone()) } + + pub(crate) fn run_next_block(&self) -> gtest::BlockRunResult { + self.program_space.system().run_next_block() + } } diff --git a/examples/demo/app/tests/gtest.rs b/examples/demo/app/tests/gtest.rs index 4d76e4d1..04880345 100644 --- a/examples/demo/app/tests/gtest.rs +++ b/examples/demo/app/tests/gtest.rs @@ -164,12 +164,13 @@ async fn ping_pong_works() { // and send/receive bytes using `gtest` native means let ping_call_payload = ping_pong::io::Ping::encode_call("ping".into()); - let run_result = demo_program.send_bytes(fixture.admin_id(), ping_call_payload); + let message_id = demo_program.send_bytes(fixture.admin_id(), ping_call_payload); + let run_result = fixture.run_next_block(); let reply_log_record = run_result .log() .iter() - .find(|entry| entry.reply_to() == Some(run_result.sent_message_id())) + .find(|entry| entry.reply_to() == Some(message_id)) .unwrap(); let ping_reply_payload = reply_log_record.payload(); diff --git a/rs/src/gtest/calls.rs b/rs/src/gtest/calls.rs index 6bbbd3cc..3ab7aadc 100644 --- a/rs/src/gtest/calls.rs +++ b/rs/src/gtest/calls.rs @@ -11,7 +11,7 @@ use futures::{ Stream, }; use gear_core_errors::{ReplyCode, SuccessReplyReason}; -use gtest::{Program, RunResult, System}; +use gtest::{BlockRunResult, Program, System}; type EventSender = UnboundedSender<(ActorId, Vec)>; @@ -67,11 +67,11 @@ impl GTestRemoting { } impl GTestRemoting { - fn extract_reply(run_result: &RunResult) -> Result> { + fn extract_reply(run_result: &BlockRunResult, message_id: MessageId) -> Result> { let mut reply_iter = run_result .log() .iter() - .filter(|entry| entry.reply_to() == Some(run_result.sent_message_id())); + .filter(|entry| entry.reply_to() == Some(message_id)); let reply = reply_iter.next().ok_or(RtlError::ReplyIsMissing)?; if reply_iter.next().is_some() { Err(RtlError::ReplyIsAmbiguous)? @@ -86,7 +86,7 @@ impl GTestRemoting { Ok(reply.payload().to_vec()) } - fn extract_and_send_events(run_result: &RunResult, senders: &mut Vec) { + fn extract_and_send_events(run_result: &BlockRunResult, senders: &mut Vec) { let events: Vec<(ActorId, Vec)> = run_result .log() .iter() @@ -108,19 +108,21 @@ impl GTestRemoting { gas_limit: Option, value: ValueUnit, args: GTestArgs, - ) -> Result { + ) -> Result<(BlockRunResult, MessageId)> { let gas_limit = gas_limit.unwrap_or(gtest::constants::GAS_ALLOWANCE); let program = self .system .get_program(target.as_ref()) .ok_or(RtlError::ProgramIsNotFound)?; let actor_id = args.actor_id.unwrap_or(self.actor_id); - Ok(program.send_bytes_with_gas( + let message_id = program.send_bytes_with_gas( actor_id.as_ref(), payload.as_ref().to_vec(), gas_limit, value, - )) + ); + let run_result = self.system.run_next_block(); + Ok((run_result, message_id)) } } @@ -144,14 +146,15 @@ impl Remoting for GTestRemoting { let program_id = gtest::calculate_program_id(code_id, salt.as_ref(), None); let program = Program::from_binary_with_id(&self.system, program_id, code); let actor_id = args.actor_id.unwrap_or(self.actor_id); - let run_result = program.send_bytes_with_gas( + let message_id = program.send_bytes_with_gas( actor_id.as_ref(), payload.as_ref().to_vec(), gas_limit, value, ); + let run_result = self.system.run_next_block(); Ok(async move { - let reply = Self::extract_reply(&run_result)?; + let reply = Self::extract_reply(&run_result, message_id)?; Ok((program_id, reply)) }) } @@ -164,9 +167,10 @@ impl Remoting for GTestRemoting { value: ValueUnit, args: GTestArgs, ) -> Result>>> { - let run_result = self.send_and_get_result(target, payload, gas_limit, value, args)?; + let (run_result, message_id) = + self.send_and_get_result(target, payload, gas_limit, value, args)?; Self::extract_and_send_events(&run_result, self.event_senders.borrow_mut().as_mut()); - Ok(async move { Self::extract_reply(&run_result) }) + Ok(async move { Self::extract_reply(&run_result, message_id) }) } async fn query( @@ -177,8 +181,9 @@ impl Remoting for GTestRemoting { value: ValueUnit, args: GTestArgs, ) -> Result> { - let run_result = self.send_and_get_result(target, payload, gas_limit, value, args)?; - Self::extract_reply(&run_result) + let (run_result, message_id) = + self.send_and_get_result(target, payload, gas_limit, value, args)?; + Self::extract_reply(&run_result, message_id) } } From fb7744b67b6248d59d3adfaf08bc3bc83180dff2 Mon Sep 17 00:00:00 2001 From: vobradovich Date: Mon, 19 Aug 2024 15:50:08 +0200 Subject: [PATCH 2/3] send_message_bytes_with_voucher, test --- Cargo.lock | 67 ++++++++++++++--------------- Cargo.toml | 12 +++--- examples/demo/app/tests/gclient.rs | 69 +++++++++++++++++++++++++++++- rs/src/gsdk/calls.rs | 30 ++++++++++--- 4 files changed, 131 insertions(+), 47 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index d8f9103f..9cff6251 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -15,7 +15,7 @@ dependencies = [ [[package]] name = "actor-system-error" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "derive_more", ] @@ -2962,7 +2962,7 @@ dependencies = [ [[package]] name = "galloc" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "gear-dlmalloc", ] @@ -2970,7 +2970,7 @@ dependencies = [ [[package]] name = "gclient" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "anyhow", "async-trait", @@ -2991,19 +2991,18 @@ dependencies = [ [[package]] name = "gcore" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "gear-core-errors", "gear-stack-buffer", "gprimitives", "gsys", - "parity-scale-codec", ] [[package]] name = "gear-common" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "derive_more", "enum-iterator 1.5.0", @@ -3025,7 +3024,7 @@ dependencies = [ [[package]] name = "gear-common-codegen" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "quote", "syn 2.0.74", @@ -3034,7 +3033,7 @@ dependencies = [ [[package]] name = "gear-core" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "blake2", "byteorder", @@ -3060,7 +3059,7 @@ dependencies = [ [[package]] name = "gear-core-backend" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "actor-system-error", "blake2", @@ -3079,7 +3078,7 @@ dependencies = [ [[package]] name = "gear-core-errors" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "derive_more", "enum-iterator 1.5.0", @@ -3090,7 +3089,7 @@ dependencies = [ [[package]] name = "gear-core-processor" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "actor-system-error", "derive_more", @@ -3121,7 +3120,7 @@ dependencies = [ [[package]] name = "gear-lazy-pages" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "cfg-if", "derive_more", @@ -3142,7 +3141,7 @@ dependencies = [ [[package]] name = "gear-lazy-pages-common" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "gear-core", "num_enum", @@ -3152,7 +3151,7 @@ dependencies = [ [[package]] name = "gear-lazy-pages-native-interface" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "gear-core", "gear-lazy-pages", @@ -3164,7 +3163,7 @@ dependencies = [ [[package]] name = "gear-node-wrapper" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "anyhow", "rand 0.8.5", @@ -3186,7 +3185,7 @@ dependencies = [ [[package]] name = "gear-sandbox" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "gear-sandbox-env", "gear-sandbox-interface", @@ -3201,7 +3200,7 @@ dependencies = [ [[package]] name = "gear-sandbox-env" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "parity-scale-codec", "sp-debug-derive 8.0.0", @@ -3212,7 +3211,7 @@ dependencies = [ [[package]] name = "gear-sandbox-host" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "defer", "environmental", @@ -3233,7 +3232,7 @@ dependencies = [ [[package]] name = "gear-sandbox-interface" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "gear-sandbox-host", "log", @@ -3245,7 +3244,7 @@ dependencies = [ [[package]] name = "gear-ss58" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "blake2", "bs58", @@ -3255,12 +3254,12 @@ dependencies = [ [[package]] name = "gear-stack-buffer" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" [[package]] name = "gear-utils" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "env_logger 0.10.2", "gear-core", @@ -3281,7 +3280,7 @@ checksum = "bbfbfa701dc65e683fcd2fb24f046bcef22634acbdf47ad14724637dc39ad05b" [[package]] name = "gear-wasm-builder" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "anyhow", "cargo_metadata", @@ -3303,7 +3302,7 @@ dependencies = [ [[package]] name = "gear-wasm-instrument" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "derive_more", "enum-iterator 1.5.0", @@ -3313,7 +3312,7 @@ dependencies = [ [[package]] name = "gear-wasm-optimizer" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "anyhow", "colored", @@ -3717,7 +3716,7 @@ dependencies = [ [[package]] name = "gmeta" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "blake2", "derive_more", @@ -3728,7 +3727,7 @@ dependencies = [ [[package]] name = "gprimitives" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "derive_more", "gear-ss58", @@ -3752,7 +3751,7 @@ dependencies = [ [[package]] name = "gsdk" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "anyhow", "base64 0.21.7", @@ -3783,7 +3782,7 @@ dependencies = [ [[package]] name = "gsdk-codegen" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "proc-macro2", "quote", @@ -3793,7 +3792,7 @@ dependencies = [ [[package]] name = "gstd" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "arrayvec 0.7.4", "const_format", @@ -3811,7 +3810,7 @@ dependencies = [ [[package]] name = "gstd-codegen" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "gprimitives", "proc-macro2", @@ -3822,12 +3821,12 @@ dependencies = [ [[package]] name = "gsys" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" [[package]] name = "gtest" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "cargo_toml", "colored", @@ -5362,7 +5361,7 @@ checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" [[package]] name = "numerated" version = "1.5.0" -source = "git+https://github.com/gear-tech/gear?branch=vo/gsdk_voucher#c3b51ce97b4e2da5c8e6eef95098c6f408ad4550" +source = "git+https://github.com/gear-tech/gear#d4cbed005a169ba58e279f32ca3350552f626380" dependencies = [ "derive_more", "num-traits", diff --git a/Cargo.toml b/Cargo.toml index 184b7823..5b6e39d2 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -39,14 +39,14 @@ sails-idl-gen = { path = "rs/idl-gen" } sails-rename = { package = "sails-rs", path = "rs" } # Gear deps -gclient = { git = "https://github.com/gear-tech/gear", branch = "vo/gsdk_voucher" } -gear-core-errors = { git = "https://github.com/gear-tech/gear", branch = "vo/gsdk_voucher" } -gprimitives = { git = "https://github.com/gear-tech/gear", branch = "vo/gsdk_voucher", features = [ +gclient = { git = "https://github.com/gear-tech/gear" } +gear-core-errors = { git = "https://github.com/gear-tech/gear" } +gprimitives = { git = "https://github.com/gear-tech/gear", features = [ "codec", ] } -gstd = { git = "https://github.com/gear-tech/gear", branch = "vo/gsdk_voucher" } -gtest = { git = "https://github.com/gear-tech/gear", branch = "vo/gsdk_voucher" } -gwasm-builder = { package = "gear-wasm-builder", git = "https://github.com/gear-tech/gear", branch = "vo/gsdk_voucher" } +gstd = { git = "https://github.com/gear-tech/gear" } +gtest = { git = "https://github.com/gear-tech/gear" } +gwasm-builder = { package = "gear-wasm-builder", git = "https://github.com/gear-tech/gear" } # Other deps in alphabetical order anyhow = "1" diff --git a/examples/demo/app/tests/gclient.rs b/examples/demo/app/tests/gclient.rs index 8c8e49f0..98193955 100644 --- a/examples/demo/app/tests/gclient.rs +++ b/examples/demo/app/tests/gclient.rs @@ -124,7 +124,7 @@ async fn ping_pong_works() { ping_call_payload, Some(gas_limit), 0, - GSdkArgs, + GSdkArgs::default(), ) .await .unwrap() @@ -232,6 +232,73 @@ async fn counter_query_not_enough_gas() { )); } +#[tokio::test] +#[ignore = "requires run gear node on GEAR_PATH"] +async fn counter_add_with_voucher() { + // Arrange + + let (remoting, demo_code_id, gas_limit) = spin_up_node_with_demo_code().await; + + let demo_factory = demo_client::DemoFactory::new(remoting.clone()); + + // Use generated client code for activating Demo program + // using the `new` constructor and the `send_recv` method + let demo_program_id = demo_factory + .new(Some(42), None) + .with_gas_limit(gas_limit) + .send_recv(demo_code_id, "123") + .await + .unwrap(); + + let mut counter_client = demo_client::Counter::new(remoting.clone()); + // Listen to Counter events + let mut counter_listener = demo_client::counter::events::listener(remoting.clone()); + let mut counter_events = counter_listener.listen().await.unwrap(); + + let actor_id = ActorId::try_from(remoting.api().account_id().encode().as_ref()) + .expect("failed to create actor id"); + let voucher_initial_balance = 100_000_000_000_000; + // Issue voucher + let (voucher_id, ..) = remoting + .api() + .issue_voucher(actor_id, voucher_initial_balance, None, true, 100) + .await + .expect("failed to issue voucher"); + + let initial_balance = remoting + .api() + .free_balance(actor_id) + .await + .expect("failed to get balance"); + + // Act + + // Use generated client code for calling Counter service + // using the `send_recv` method + let result = counter_client + .add(10) + .with_gas_limit(gas_limit) + .with_args(GSdkArgs::default().with_voucher(voucher_id, true)) + .send_recv(demo_program_id) + .await + .unwrap(); + + // Asert + + let event = counter_events.next().await.unwrap(); + + assert_eq!(result, 52); + assert_eq!((demo_program_id, CounterEvents::Added(10)), event); + + let balance = remoting + .api() + .free_balance(actor_id) + .await + .expect("failed to get balance"); + // account balance remain unchanged + assert_eq!(initial_balance, balance); +} + async fn spin_up_node_with_demo_code() -> (GSdkRemoting, CodeId, GasUnit) { let gear_path = option_env!("GEAR_PATH"); if gear_path.is_none() { diff --git a/rs/src/gsdk/calls.rs b/rs/src/gsdk/calls.rs index ac6cfb6c..41e9f992 100644 --- a/rs/src/gsdk/calls.rs +++ b/rs/src/gsdk/calls.rs @@ -6,12 +6,24 @@ use crate::{ }; use core::future::Future; use futures::{stream, Stream, StreamExt}; -use gclient::metadata::runtime_types::gear_core::message::user::UserMessage as GenUserMessage; +use gclient::metadata::runtime_types::{ + gear_core::message::user::UserMessage as GenUserMessage, + pallet_gear_voucher::internal::VoucherId, +}; use gclient::{ext::sp_core::ByteArray, EventProcessor, GearApi}; use gear_core_errors::ReplyCode; #[derive(Debug, Default)] -pub struct GSdkArgs; +pub struct GSdkArgs { + voucher: Option<(VoucherId, bool)>, +} + +impl GSdkArgs { + pub fn with_voucher(mut self, voucher_id: VoucherId, keep_alive: bool) -> Self { + self.voucher = Some((voucher_id, keep_alive)); + self + } +} #[derive(Clone)] pub struct GSdkRemoting { @@ -80,7 +92,7 @@ impl Remoting for GSdkRemoting { payload: impl AsRef<[u8]>, gas_limit: Option, value: ValueUnit, - _args: GSdkArgs, + args: GSdkArgs, ) -> Result>>> { let api = self.api; // Calculate gas amount if it is not explicitly set @@ -95,9 +107,15 @@ impl Remoting for GSdkRemoting { }; let mut listener = api.subscribe().await?; - let (message_id, ..) = api - .send_message_bytes(target, payload, gas_limit, value) - .await?; + let (message_id, ..) = if let Some((voucher_id, keep_alive)) = args.voucher { + api.send_message_bytes_with_voucher( + voucher_id, target, payload, gas_limit, value, keep_alive, + ) + .await? + } else { + api.send_message_bytes(target, payload, gas_limit, value) + .await? + }; Ok(async move { let (_, result, _) = listener.reply_bytes_on(message_id).await?; From dd15a9d32f9050246c8dd6f7a32a787f5e8cadaf Mon Sep 17 00:00:00 2001 From: vobradovich Date: Mon, 19 Aug 2024 17:41:32 +0200 Subject: [PATCH 3/3] fix rmrk-resource tests --- .../rmrk/resource/wasm/tests/resources.rs | 24 ++++++++++++------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/examples/rmrk/resource/wasm/tests/resources.rs b/examples/rmrk/resource/wasm/tests/resources.rs index 7ae66ae3..c89d37e0 100644 --- a/examples/rmrk/resource/wasm/tests/resources.rs +++ b/examples/rmrk/resource/wasm/tests/resources.rs @@ -1,6 +1,6 @@ use crate::resource_client::traits::RmrkResource; use core::cell::OnceCell; -use gtest::{Program, RunResult}; +use gtest::{BlockRunResult, Program}; use rmrk_catalog::services::parts::{FixedPart, Part}; use rmrk_resource_app::services::{ errors::{Error as ResourceStorageError, Result as ResourceStorageResult}, @@ -295,6 +295,10 @@ impl<'a> Fixture<'a> { } } + fn run_next_block(&self) -> BlockRunResult { + self.program_space.system().run_next_block() + } + fn program_space(&self) -> >estRemoting { &self.program_space } @@ -364,7 +368,7 @@ impl<'a> Fixture<'a> { actor_id: u64, resource_id: ResourceId, resource: &Resource, - ) -> RunResult { + ) -> BlockRunResult { let program = self.resource_program_for_sync(); let encoded_request = [ resources::RESOURCE_SERVICE_NAME.encode(), @@ -373,7 +377,8 @@ impl<'a> Fixture<'a> { resource.encode(), ] .concat(); - program.send_bytes(actor_id, encoded_request) + let _message_id = program.send_bytes(actor_id, encoded_request); + self.run_next_block() } async fn add_resource_async( @@ -423,7 +428,7 @@ impl<'a> Fixture<'a> { actor_id: u64, resource_id: ResourceId, part_id: PartId, - ) -> RunResult { + ) -> BlockRunResult { let program = self.resource_program_for_sync(); let encoded_request = [ resources::RESOURCE_SERVICE_NAME.encode(), @@ -432,7 +437,8 @@ impl<'a> Fixture<'a> { part_id.encode(), ] .concat(); - program.send_bytes(actor_id, encoded_request) + let _message_id = program.send_bytes(actor_id, encoded_request); + self.run_next_block() } async fn add_part_to_resource_via_client( @@ -465,7 +471,8 @@ impl<'a> Fixture<'a> { resource_id.encode(), ] .concat(); - let run_result = program.send_bytes(actor_id, encoded_request); + let _message_id = program.send_bytes(actor_id, encoded_request); + let run_result = self.run_next_block(); run_result .log() .iter() @@ -496,7 +503,7 @@ impl<'a> Fixture<'a> { .await } - fn add_parts(&'a self, actor_id: u64, parts: &BTreeMap) -> RunResult { + fn add_parts(&'a self, actor_id: u64, parts: &BTreeMap) -> BlockRunResult { let program = self.catalog_program(); let encoded_request = [ catalog::CATALOG_SERVICE_NAME.encode(), @@ -504,6 +511,7 @@ impl<'a> Fixture<'a> { parts.encode(), ] .concat(); - program.send_bytes(actor_id, encoded_request) + let _message_id = program.send_bytes(actor_id, encoded_request); + self.run_next_block() } }