From bb48752769a66b3f4062e275c2d542729459cbee Mon Sep 17 00:00:00 2001 From: dubbelosix Date: Mon, 26 Feb 2024 06:08:49 +0530 Subject: [PATCH 01/12] update to latest nightly commit --- Cargo.lock | 730 +++++++++--------- Cargo.toml | 45 +- .../provers/risc0/guest-celestia/Cargo.lock | 369 ++++++--- .../provers/risc0/guest-celestia/Cargo.toml | 23 +- .../risc0/guest-celestia/src/bin/rollup.rs | 12 +- crates/provers/risc0/guest-mock/Cargo.lock | 581 ++++++++++++-- crates/provers/risc0/guest-mock/Cargo.toml | 23 +- .../risc0/guest-mock/src/bin/mock_da.rs | 31 +- crates/rollup/Cargo.toml | 4 +- crates/rollup/src/celestia_rollup.rs | 23 +- crates/rollup/src/mock_rollup.rs | 34 +- crates/stf/Cargo.toml | 12 +- crates/stf/src/genesis_config.rs | 24 +- crates/stf/src/hooks.rs | 88 +-- crates/stf/src/lib.rs | 8 +- crates/stf/src/runtime.rs | 30 +- 16 files changed, 1327 insertions(+), 710 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index ac045af..432ad35 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -36,9 +36,9 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" [[package]] name = "ahash" -version = "0.8.8" +version = "0.8.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42cd52102d3df161c77a887b608d7a4897d7cc112886a9537b738a887a03aaff" +checksum = "d713b3834d76b85304d4d525563c1276e2e30dc97cc67bfb4585a4a29fc2c89f" dependencies = [ "cfg-if", "once_cell", @@ -67,9 +67,9 @@ dependencies = [ [[package]] name = "anstream" -version = "0.6.11" +version = "0.6.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e2e1ebcb11de5c03c67de28a7df593d32191b44939c482e97702baaaa6ab6a5" +checksum = "96b09b5178381e0874812a9b157f7fe84982617e48f71f4e3235482775e5b540" dependencies = [ "anstyle", "anstyle-parse", @@ -115,9 +115,55 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.79" +version = "1.0.80" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ad32ce52e4161730f7098c077cd2ed6229b5804ccf99e5366be1ab72a98b4e1" + +[[package]] +name = "ark-bn254" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "080e9890a082662b09c1ad45f567faeeb47f22b5fb23895fbe1e651e718e25ca" +checksum = "a22f4561524cd949590d78d7d4c5df8f592430d221f7f3c9497bbafd8972120f" +dependencies = [ + "ark-ec", + "ark-ff 0.4.2", + "ark-std 0.4.0", +] + +[[package]] +name = "ark-crypto-primitives" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f3a13b34da09176a8baba701233fdffbaa7c1b1192ce031a3da4e55ce1f1a56" +dependencies = [ + "ark-ec", + "ark-ff 0.4.2", + "ark-relations", + "ark-serialize 0.4.2", + "ark-snark", + "ark-std 0.4.0", + "blake2", + "derivative", + "digest 0.10.7", + "sha2 0.10.8", +] + +[[package]] +name = "ark-ec" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "defd9a439d56ac24968cca0571f598a61bc8c55f71d50a89cda591cb750670ba" +dependencies = [ + "ark-ff 0.4.2", + "ark-poly", + "ark-serialize 0.4.2", + "ark-std 0.4.0", + "derivative", + "hashbrown 0.13.2", + "itertools 0.10.5", + "num-traits", + "zeroize", +] [[package]] name = "ark-ff" @@ -202,6 +248,46 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "ark-groth16" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "20ceafa83848c3e390f1cbf124bc3193b3e639b3f02009e0e290809a501b95fc" +dependencies = [ + "ark-crypto-primitives", + "ark-ec", + "ark-ff 0.4.2", + "ark-poly", + "ark-relations", + "ark-serialize 0.4.2", + "ark-std 0.4.0", +] + +[[package]] +name = "ark-poly" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d320bfc44ee185d899ccbadfa8bc31aab923ce1558716e1997a1e74057fe86bf" +dependencies = [ + "ark-ff 0.4.2", + "ark-serialize 0.4.2", + "ark-std 0.4.0", + "derivative", + "hashbrown 0.13.2", +] + +[[package]] +name = "ark-relations" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00796b6efc05a3f48225e59cb6a2cda78881e7c390872d5786aaf112f31fb4f0" +dependencies = [ + "ark-ff 0.4.2", + "ark-std 0.4.0", + "tracing", + "tracing-subscriber 0.2.25", +] + [[package]] name = "ark-serialize" version = "0.3.0" @@ -218,11 +304,35 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" dependencies = [ + "ark-serialize-derive", "ark-std 0.4.0", "digest 0.10.7", "num-bigint 0.4.4", ] +[[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-snark" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "84d3cc6833a335bb8a600241889ead68ee89a3cf8448081fb7694c0fe503da63" +dependencies = [ + "ark-ff 0.4.2", + "ark-relations", + "ark-serialize 0.4.2", + "ark-std 0.4.0", +] + [[package]] name = "ark-std" version = "0.3.0" @@ -272,7 +382,7 @@ checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -283,7 +393,7 @@ checksum = "823b8bb275161044e2ac7a25879cb3e2480cb403e3943022c7c769c599b756aa" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -392,7 +502,7 @@ dependencies = [ "regex", "rustc-hash", "shlex", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -461,8 +571,9 @@ dependencies = [ [[package]] name = "bonsai-sdk" -version = "0.5.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d5f0a6b186dce8b2f945bd3ecc5d35a36280400200ed57878c7c3f2aeb01632e" dependencies = [ "reqwest", "serde", @@ -517,9 +628,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.14.0" +version = "3.15.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" +checksum = "8ea184aa71bb362a1157c896979544cc23974e08fd265f29ea96b59f0b4a555b" [[package]] name = "byte-slice-cast" @@ -550,7 +661,7 @@ checksum = "965ab7eb5f8f97d2a083c799f3a1b994fc397b2fe2da5d1da1626ce15a39f2b1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -590,9 +701,9 @@ dependencies = [ [[package]] name = "cargo-platform" -version = "0.1.7" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "694c8807f2ae16faecc43dc17d74b3eb042482789fd0eb64b39a2e04e087053f" +checksum = "e34637b3140142bdf929fb439e8aa4ebad7651ebf7b1080b3930aa16ac1459ff" dependencies = [ "serde", ] @@ -605,7 +716,7 @@ checksum = "4acbb09d9ee8e23699b9634375c72795d095bf268439da88562cf9b501f181fa" dependencies = [ "camino", "cargo-platform", - "semver 1.0.21", + "semver 1.0.22", "serde", "serde_json", ] @@ -618,7 +729,7 @@ checksum = "e7daec1a2a2129eeba1644b220b4647ec537b0b5d4bfd6876fcc5a540056b592" dependencies = [ "camino", "cargo-platform", - "semver 1.0.21", + "semver 1.0.22", "serde", "serde_json", "thiserror", @@ -626,11 +737,10 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.83" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" +checksum = "7f9fa1897e4325be0d68d48df6aa1a71ac2ed4d27723887e7754192705350730" dependencies = [ - "jobserver", "libc", ] @@ -725,9 +835,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.0" +version = "4.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80c21025abd42669a92efc996ef13cfb2c5c627858421ea58d5c3b331a6c134f" +checksum = "c918d541ef2913577a0f9566e9ce27cb35b6df072075769e0b26cb5a554520da" dependencies = [ "clap_builder", "clap_derive", @@ -735,9 +845,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.0" +version = "4.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "458bf1f341769dfcf849846f65dffdf9146daa56bcd2a47cb4e1de9915567c99" +checksum = "9f3e7391dad68afb0c2ede1bf619f579a3dc9c2ec67f089baa397123a2f3d1eb" dependencies = [ "anstream", "anstyle", @@ -754,7 +864,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -911,12 +1021,23 @@ checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" [[package]] name = "crypto-bigint" -version = "0.5.5" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" +checksum = "cf4c2f4e1afd912bc40bfd6fed5d9dc1f288e0ba01bfcc835cc5bc3eb13efe15" dependencies = [ "rand_core", "subtle", + "zeroize", +] + +[[package]] +name = "crypto-bigint" +version = "0.5.2" +source = "git+https://github.com/risc0/RustCrypto-crypto-bigint?tag=v0.5.2-risc0#8b30304277cfe553b51a78a0e693f48bbb059eb3" +dependencies = [ + "getrandom", + "rand_core", + "subtle", ] [[package]] @@ -931,15 +1052,16 @@ dependencies = [ [[package]] name = "curve25519-dalek" -version = "4.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a677b8922c94e01bdbb12126b0bc852f00447528dee1782229af9c720c3f348" +version = "4.1.0" +source = "git+https://github.com/risc0/curve25519-dalek?tag=curve25519-4.1.0-risczero.1#42c4faf7dc3f640a7e3f7e4cbf43e7d5d6d46b67" dependencies = [ "cfg-if", "cpufeatures", + "crypto-bigint 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", "curve25519-dalek-derive", "digest 0.10.7", "fiat-crypto", + "hex", "platforms", "rustc_version 0.4.0", "subtle", @@ -948,13 +1070,12 @@ dependencies = [ [[package]] name = "curve25519-dalek-derive" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" +version = "0.1.0" +source = "git+https://github.com/risc0/curve25519-dalek?tag=curve25519-4.1.0-risczero.1#42c4faf7dc3f640a7e3f7e4cbf43e7d5d6d46b67" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -1153,14 +1274,14 @@ dependencies = [ [[package]] name = "ed25519-dalek" version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7277392b266383ef8396db7fdeb1e77b6c52fed775f5df15bb24f35b72156980" +source = "git+https://github.com/risc0/curve25519-dalek?tag=curve25519-4.1.0-risczero.1#42c4faf7dc3f640a7e3f7e4cbf43e7d5d6d46b67" dependencies = [ "curve25519-dalek", "ed25519", "rand_core", "serde", "sha2 0.10.8", + "subtle", "zeroize", ] @@ -1194,7 +1315,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -1205,9 +1326,9 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "erased-serde" -version = "0.4.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55d05712b2d8d88102bc9868020c9e5c7a1f5527c452b9b97450a1d006140ba7" +checksum = "388979d208a049ffdfb22fa33b9c81942215b940910bccfe258caeb25d125cb3" dependencies = [ "serde", ] @@ -1349,21 +1470,6 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" -[[package]] -name = "foreign-types" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" -dependencies = [ - "foreign-types-shared", -] - -[[package]] -name = "foreign-types-shared" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" - [[package]] name = "form_urlencoded" version = "1.2.1" @@ -1435,7 +1541,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -1452,9 +1558,9 @@ checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" [[package]] name = "futures-timer" -version = "3.0.2" +version = "3.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e64b03909df88034c26dc1547e8970b91f98bdb65165d6a4e9110d94263dbb2c" +checksum = "f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24" dependencies = [ "gloo-timers", "send_wrapper", @@ -1605,9 +1711,9 @@ checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" [[package]] name = "hermit-abi" -version = "0.3.5" +version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0c62115964e08cb8039170eb33c1d0e2388a256930279edca206fff675f82c3" +checksum = "bd5256b483761cd23699d0da46cc6fd2ee3be420bbe6d020ae4a091e70b7e9fd" [[package]] name = "hex" @@ -1661,6 +1767,12 @@ version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" +[[package]] +name = "human-repr" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f58b778a5761513caf593693f8951c97a5b610841e754788400f32102eefdff1" + [[package]] name = "hyper" version = "0.14.28" @@ -1701,19 +1813,6 @@ dependencies = [ "tokio-rustls", ] -[[package]] -name = "hyper-tls" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" -dependencies = [ - "bytes", - "hyper", - "native-tls", - "tokio", - "tokio-native-tls", -] - [[package]] name = "ics23" version = "0.11.1" @@ -1858,15 +1957,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "jobserver" -version = "0.1.28" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab46a6e9526ddef3ae7f787c06f0f2600639ba80ea3eade3d8e670a2230f51d6" -dependencies = [ - "libc", -] - [[package]] name = "js-sys" version = "0.3.68" @@ -2048,9 +2138,9 @@ dependencies = [ [[package]] name = "lazy-regex" -version = "2.5.0" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff63c423c68ea6814b7da9e88ce585f793c87ddd9e78f646970891769c8235d4" +checksum = "5d12be4595afdf58bd19e4a9f4e24187da2a66700786ff660a418e9059937a4c" dependencies = [ "lazy-regex-proc_macros", "once_cell", @@ -2059,14 +2149,14 @@ dependencies = [ [[package]] name = "lazy-regex-proc_macros" -version = "2.4.1" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8edfc11b8f56ce85e207e62ea21557cfa09bb24a8f6b04ae181b086ff8611c22" +checksum = "44bcd58e6c97a7fcbaffcdc95728b393b8d98933bfadad49ed4097845b57ef0b" dependencies = [ "proc-macro2", "quote", "regex", - "syn 1.0.109", + "syn 2.0.50", ] [[package]] @@ -2302,24 +2392,6 @@ version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a" -[[package]] -name = "native-tls" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" -dependencies = [ - "lazy_static", - "libc", - "log", - "openssl", - "openssl-probe", - "openssl-sys", - "schannel", - "security-framework", - "security-framework-sys", - "tempfile", -] - [[package]] name = "ndarray" version = "0.15.6" @@ -2421,7 +2493,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -2476,50 +2548,12 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" -[[package]] -name = "openssl" -version = "0.10.63" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15c9d69dd87a29568d4d017cfe8ec518706046a05184e5aea92d0af890b803c8" -dependencies = [ - "bitflags 2.4.2", - "cfg-if", - "foreign-types", - "libc", - "once_cell", - "openssl-macros", - "openssl-sys", -] - -[[package]] -name = "openssl-macros" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - [[package]] name = "openssl-probe" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" -[[package]] -name = "openssl-sys" -version = "0.9.99" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22e1bf214306098e4832460f797824c05d25aacdf896f64a985fb0fd992454ae" -dependencies = [ - "cc", - "libc", - "pkg-config", - "vcpkg", -] - [[package]] name = "option-ext" version = "0.2.0" @@ -2637,7 +2671,7 @@ checksum = "266c042b60c9c76b8d53061e52b2e0d1116abc57cefc8c5cd671619a56ac3690" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -2664,9 +2698,9 @@ dependencies = [ [[package]] name = "pkg-config" -version = "0.3.29" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2900ede94e305130c13ddd391e0ab7cbaeb783945ae07a279c268cb05109c6cb" +checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec" [[package]] name = "platforms" @@ -2693,7 +2727,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a41cf62165e97c7f814d2221421dbb9afcbcdb0a88068e5ea206e19951c2cbb5" dependencies = [ "proc-macro2", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -2825,7 +2859,7 @@ dependencies = [ "prost", "prost-types", "regex", - "syn 2.0.48", + "syn 2.0.50", "tempfile", "which", ] @@ -2840,7 +2874,7 @@ dependencies = [ "itertools 0.11.0", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -3031,15 +3065,15 @@ dependencies = [ "http", "http-body", "hyper", - "hyper-tls", + "hyper-rustls", "ipnet", "js-sys", "log", "mime", - "native-tls", "once_cell", "percent-encoding", "pin-project-lite", + "rustls", "rustls-pemfile", "serde", "serde_json", @@ -3047,27 +3081,29 @@ dependencies = [ "sync_wrapper", "system-configuration", "tokio", - "tokio-native-tls", + "tokio-rustls", "tower-service", "url", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", + "webpki-roots", "winreg", ] [[package]] name = "ring" -version = "0.17.7" +version = "0.17.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "688c63d65483050968b2a8937f7995f443e27041a0f7700aa59b0822aedebb74" +checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" dependencies = [ "cc", + "cfg-if", "getrandom", "libc", "spin", "untrusted", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] @@ -3081,42 +3117,30 @@ dependencies = [ [[package]] name = "risc0-binfmt" -version = "0.19.1" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "923c85a23cb9a9475b8cd4479ad3a06252604a361626e9ae7dc0dc635af22c22" -dependencies = [ - "anyhow", - "elf", - "log", - "risc0-zkp 0.19.1 (registry+https://github.com/rust-lang/crates.io-index)", - "risc0-zkvm-platform", - "serde", -] - -[[package]] -name = "risc0-binfmt" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +checksum = "9d263c6370d7714d2a634b6d88deb3871d0fad1f9486a9da6d48139c1ac85b26" dependencies = [ "anyhow", "elf", - "log", - "risc0-zkp 0.19.1 (git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix)", + "risc0-zkp", "risc0-zkvm-platform", "serde", + "tracing", ] [[package]] name = "risc0-build" -version = "0.19.1" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e58d4cc25e243e52d1ccd75d357b0aa55081736bf3052c65a823fdf169586843" +checksum = "a636849a58335ebece68161006a53d5590a6698092c3ca8e8a40a7c0aa8a20fb" dependencies = [ "anyhow", + "cargo-platform", "cargo_metadata 0.17.0", "docker-generate", - "risc0-binfmt 0.19.1 (registry+https://github.com/rust-lang/crates.io-index)", - "risc0-zkp 0.19.1 (registry+https://github.com/rust-lang/crates.io-index)", + "risc0-binfmt", + "risc0-zkp", "risc0-zkvm-platform", "serde", "serde_json", @@ -3125,8 +3149,9 @@ dependencies = [ [[package]] name = "risc0-build-kernel" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7fa4cd0e10797e933d0e2056e24e5b15cc0bb324d5dfd44e145048a0029f7af5" dependencies = [ "cc", "directories", @@ -3137,18 +3162,19 @@ dependencies = [ [[package]] name = "risc0-circuit-recursion" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc9835069929a0e7b6b4b34e6a83f08aaa9d34b30023b9ccaf96ddbe20404eba" dependencies = [ "anyhow", "bytemuck", "downloader", - "log", + "hex", "rand", "rayon", "risc0-circuit-recursion-sys", - "risc0-core 0.19.1 (git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix)", - "risc0-zkp 0.19.1 (git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix)", + "risc0-core", + "risc0-zkp", "sha2 0.10.8", "tracing", "zip", @@ -3156,54 +3182,47 @@ dependencies = [ [[package]] name = "risc0-circuit-recursion-sys" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b12fa422928ccae0ca6d39a3bdb784e417c65813f004b258f2113609095358ba" dependencies = [ "glob", "risc0-build-kernel", - "risc0-core 0.19.1 (git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix)", + "risc0-core", ] [[package]] name = "risc0-circuit-rv32im" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb1caa759ab74d08779e062fcf98f5bd34397dfde572516a52369f0ec46db650" dependencies = [ "anyhow", - "log", "rand", "rayon", "risc0-circuit-rv32im-sys", - "risc0-core 0.19.1 (git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix)", - "risc0-zkp 0.19.1 (git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix)", + "risc0-core", + "risc0-zkp", "risc0-zkvm-platform", "tracing", ] [[package]] name = "risc0-circuit-rv32im-sys" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81a88e4b25e30eeb49adab83fe014110bec18e69dd63a47a5f36b00ac48fe373" dependencies = [ "glob", "risc0-build-kernel", - "risc0-core 0.19.1 (git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix)", + "risc0-core", ] [[package]] name = "risc0-core" -version = "0.19.1" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "477e0bb8d2ec0b7955088b521eb596901e652d0faa2ea73bda0b77e05af5c07d" -dependencies = [ - "bytemuck", - "rand_core", -] - -[[package]] -name = "risc0-core" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +checksum = "be79c89bcd18886b376073e3da22f8b7963247a42dce7b49cf3d09853f51641e" dependencies = [ "bytemuck", "rand_core", @@ -3212,7 +3231,7 @@ dependencies = [ [[package]] name = "risc0-cycle-utils" version = "0.3.0" -source = "git+https://github.com/Sovereign-Labs/risc0-cycle-macros.git?rev=0110643f00b#0110643f00b3f779544d87b3d27bf0bec49d5d7a" +source = "git+https://github.com/Sovereign-Labs/risc0-cycle-macros.git?rev=98948b8ee0e3edffcee7f3bd95a9d93c5c0941af#98948b8ee0e3edffcee7f3bd95a9d93c5c0941af" dependencies = [ "bytes", "risc0-zkvm", @@ -3228,37 +3247,19 @@ dependencies = [ [[package]] name = "risc0-sys" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c40caeacec542a0187e44203dd90501edcecf194cad648d590f6b2b0e4e4e5b" dependencies = [ + "cc", "risc0-build-kernel", ] [[package]] name = "risc0-zkp" -version = "0.19.1" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5abb1a0cf847d3f9aed1e563b76c358107e7ba66dbfab28f7144252c990bd82" -dependencies = [ - "anyhow", - "blake2", - "bytemuck", - "digest 0.10.7", - "hex", - "log", - "paste", - "rand_core", - "risc0-core 0.19.1 (registry+https://github.com/rust-lang/crates.io-index)", - "risc0-zkvm-platform", - "serde", - "sha2 0.10.8", - "tracing", -] - -[[package]] -name = "risc0-zkp" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +checksum = "e20a57e04840a5afadebb5d232546245f4fd8bd0e774bd69bf4bf25f8ab90c04" dependencies = [ "anyhow", "blake2", @@ -3267,13 +3268,12 @@ dependencies = [ "ff", "hex", "lazy_static", - "log", "ndarray", "paste", "rand", "rand_core", "rayon", - "risc0-core 0.19.1 (git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix)", + "risc0-core", "risc0-sys", "risc0-zkvm-platform", "serde", @@ -3283,36 +3283,42 @@ dependencies = [ [[package]] name = "risc0-zkvm" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "922588cb4b884b3951316a65581ccdfd1174af93c54093190878366812073329" dependencies = [ "addr2line", "anyhow", + "ark-bn254", + "ark-groth16", + "ark-serialize 0.4.2", "bincode", "bonsai-sdk", "bytemuck", "bytes", "cfg-if", - "crypto-bigint", - "generic-array", + "crypto-bigint 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", + "elf", "getrandom", "hex", + "human-repr", "lazy-regex", - "log", + "num-bigint 0.4.4", "num-derive 0.4.2", "num-traits", "prost", "prost-build", "protobuf-src", "rayon", - "risc0-binfmt 0.19.1 (git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix)", + "risc0-binfmt", "risc0-circuit-recursion", "risc0-circuit-rv32im", - "risc0-core 0.19.1 (git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix)", - "risc0-zkp 0.19.1 (git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix)", + "risc0-core", + "risc0-zkp", "risc0-zkvm-platform", "rrs-lib", - "semver 1.0.21", + "rustc-demangle", + "semver 1.0.22", "serde", "sha2 0.10.8", "tempfile", @@ -3322,8 +3328,9 @@ dependencies = [ [[package]] name = "risc0-zkvm-platform" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc5819c0c3bfd8f20b1226c9d4ca1f342eb3d8385e71211a9383a879643d1dde" dependencies = [ "bytemuck", "getrandom", @@ -3429,7 +3436,7 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" dependencies = [ - "semver 1.0.21", + "semver 1.0.22", ] [[package]] @@ -3501,9 +3508,9 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.16" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c" +checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1" [[package]] name = "same-file" @@ -3603,9 +3610,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.21" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b97ed7a9823b74f99c7742f5336af7be5ecd3eeafcb1507d1fa93347b1d589b0" +checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca" dependencies = [ "serde", ] @@ -3627,9 +3634,9 @@ checksum = "f638d531eccd6e23b980caf34876660d38e265409d8e99b397ab71eb3612fad0" [[package]] name = "serde" -version = "1.0.196" +version = "1.0.197" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "870026e60fa08c69f064aa766c10f10b1d62db9ccd4d0abb206472bee0ce3b32" +checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2" dependencies = [ "serde_derive", ] @@ -3645,13 +3652,13 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.196" +version = "1.0.197" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33c85360c95e7d137454dc81d9a4ed2b8efd8fbe19cee57357b32b9771fccb67" +checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -3667,9 +3674,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.113" +version = "1.0.114" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69801b70b1c3dac963ecb03a364ba0ceda9cf60c71cfe475e99864759c8b8a79" +checksum = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0" dependencies = [ "itoa", "ryu", @@ -3684,7 +3691,7 @@ checksum = "0b2e6b945e9d3df726b65d6ee24060aff8e3533d431f677a9695db04eff9dfdb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -3847,7 +3854,7 @@ dependencies = [ [[package]] name = "sov-accounts" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -3864,7 +3871,7 @@ dependencies = [ [[package]] name = "sov-bank" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -3881,7 +3888,7 @@ dependencies = [ [[package]] name = "sov-blob-storage" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "bincode", @@ -3902,11 +3909,10 @@ dependencies = [ [[package]] name = "sov-celestia-adapter" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "async-trait", - "base64 0.21.7", "bech32", "borsh", "celestia-proto", @@ -3931,7 +3937,7 @@ dependencies = [ [[package]] name = "sov-chain-state" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -3946,34 +3952,36 @@ dependencies = [ [[package]] name = "sov-cli" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", "directories", "hex", "jsonrpsee", - "semver 1.0.21", + "semver 1.0.22", "serde", "serde_json", "sov-accounts", "sov-bank", "sov-modules-api", + "sov-rollup-interface", ] [[package]] name = "sov-db" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "bincode", "borsh", "byteorder", + "hex", "jmt", "rocksdb", "serde", - "serde_json", + "sov-modules-core", "sov-rollup-interface", "sov-schema-db", "tokio", @@ -3982,13 +3990,14 @@ dependencies = [ [[package]] name = "sov-ledger-rpc" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", "futures", "jsonrpsee", "serde", + "serde_json", "sov-modules-api", "sov-rollup-interface", ] @@ -3996,7 +4005,7 @@ dependencies = [ [[package]] name = "sov-mock-da" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "async-trait", @@ -4008,20 +4017,18 @@ dependencies = [ "sha2 0.10.8", "sov-rollup-interface", "tokio", - "tracing", ] [[package]] name = "sov-modules-api" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "bech32", "borsh", "clap", "derive_more", - "ed25519-dalek", "hex", "jsonrpsee", "rand", @@ -4040,7 +4047,7 @@ dependencies = [ [[package]] name = "sov-modules-core" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "bech32", @@ -4050,6 +4057,7 @@ dependencies = [ "digest 0.10.7", "hex", "jmt", + "proptest", "schemars", "serde", "sha2 0.10.8", @@ -4060,7 +4068,7 @@ dependencies = [ [[package]] name = "sov-modules-macros" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -4069,14 +4077,13 @@ dependencies = [ "quote", "schemars", "serde_json", - "sov-modules-core", "syn 1.0.109", ] [[package]] name = "sov-modules-rollup-blueprint" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "async-trait", @@ -4099,7 +4106,7 @@ dependencies = [ [[package]] name = "sov-modules-stf-blueprint" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -4119,7 +4126,7 @@ dependencies = [ [[package]] name = "sov-prover-storage-manager" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "sov-db", @@ -4127,30 +4134,38 @@ dependencies = [ "sov-schema-db", "sov-state", "tracing", - "tracing-subscriber", ] [[package]] name = "sov-risc0-adapter" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "bincode", + "borsh", "bytemuck", + "crypto-bigint 0.5.2 (git+https://github.com/risc0/RustCrypto-crypto-bigint?tag=v0.5.2-risc0)", + "ed25519-dalek", + "hex", + "rand", "risc0-circuit-rv32im", "risc0-cycle-utils", - "risc0-zkp 0.19.1 (registry+https://github.com/rust-lang/crates.io-index)", + "risc0-zkp", "risc0-zkvm", "risc0-zkvm-platform", "serde", + "sha2 0.10.8", + "sov-modules-api", "sov-rollup-interface", + "thiserror", + "tracing", ] [[package]] name = "sov-rollup-interface" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "async-trait", @@ -4159,6 +4174,7 @@ dependencies = [ "digest 0.10.7", "futures", "hex", + "proptest", "serde", "serde_json", "sha2 0.10.8", @@ -4199,13 +4215,13 @@ dependencies = [ "tempfile", "tokio", "tracing", - "tracing-subscriber", + "tracing-subscriber 0.3.18", ] [[package]] name = "sov-schema-db" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "once_cell", @@ -4218,7 +4234,7 @@ dependencies = [ [[package]] name = "sov-sequencer" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -4237,12 +4253,13 @@ dependencies = [ [[package]] name = "sov-sequencer-registry" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", "clap", "jsonrpsee", + "risc0-cycle-utils", "schemars", "serde", "serde_json", @@ -4254,7 +4271,7 @@ dependencies = [ [[package]] name = "sov-state" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "bcs", @@ -4274,7 +4291,7 @@ dependencies = [ [[package]] name = "sov-stf-runner" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "async-trait", @@ -4385,9 +4402,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.48" +version = "2.0.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f" +checksum = "74f1bdc9872430ce9b75da68329d1c1746faf50ffac5f19e02b71e37ff881ffb" dependencies = [ "proc-macro2", "quote", @@ -4520,14 +4537,14 @@ checksum = "a953cb265bef375dae3de6663da4d3804eee9682ea80d8e2542529b73c531c81" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] name = "thread_local" -version = "1.1.7" +version = "1.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152" +checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" dependencies = [ "cfg-if", "once_cell", @@ -4605,17 +4622,7 @@ checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", -] - -[[package]] -name = "tokio-native-tls" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" -dependencies = [ - "native-tls", - "tokio", + "syn 2.0.50", ] [[package]] @@ -4672,7 +4679,7 @@ dependencies = [ "serde", "serde_spanned", "toml_datetime", - "toml_edit 0.22.4", + "toml_edit 0.22.6", ] [[package]] @@ -4692,20 +4699,20 @@ checksum = "70f427fce4d84c72b5b732388bf4a9f4531b53f74e2887e3ecb2481f68f66d81" dependencies = [ "indexmap", "toml_datetime", - "winnow", + "winnow 0.5.40", ] [[package]] name = "toml_edit" -version = "0.22.4" +version = "0.22.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c9ffdf896f8daaabf9b66ba8e77ea1ed5ed0f72821b398aba62352e95062951" +checksum = "2c1b5fd4128cc8d3e0cb74d4ed9a9cc7c7284becd4df68f5f940e1ad123606f6" dependencies = [ "indexmap", "serde", "serde_spanned", "toml_datetime", - "winnow", + "winnow 0.6.2", ] [[package]] @@ -4755,7 +4762,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -4779,6 +4786,15 @@ dependencies = [ "tracing-core", ] +[[package]] +name = "tracing-subscriber" +version = "0.2.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e0d2eaa99c3c2e41547cfa109e910a68ea03823cccad4a0525dcbc9b01e8c71" +dependencies = [ + "tracing-core", +] + [[package]] name = "tracing-subscriber" version = "0.3.18" @@ -4846,7 +4862,7 @@ checksum = "291db8a81af4840c10d636e047cac67664e343be44e24dfdbd1492df9a5d3390" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -4896,9 +4912,9 @@ checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" [[package]] name = "unicode-normalization" -version = "0.1.22" +version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921" +checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5" dependencies = [ "tinyvec", ] @@ -5002,7 +5018,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", "wasm-bindgen-shared", ] @@ -5036,7 +5052,7 @@ checksum = "642f325be6301eb8107a83d12a8ac6c1e1c54345a7ef1a9261962dfefda09e66" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -5069,7 +5085,7 @@ checksum = "a5211b7550606857312bba1d978a8ec75692eae187becc5e680444fffc5e6f89" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -5146,7 +5162,7 @@ version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" dependencies = [ - "windows-targets 0.52.0", + "windows-targets 0.52.3", ] [[package]] @@ -5166,17 +5182,17 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.52.0" +version = "0.52.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" +checksum = "d380ba1dc7187569a8a9e91ed34b8ccfc33123bbacb8c0aed2d1ad7f3ef2dc5f" dependencies = [ - "windows_aarch64_gnullvm 0.52.0", - "windows_aarch64_msvc 0.52.0", - "windows_i686_gnu 0.52.0", - "windows_i686_msvc 0.52.0", - "windows_x86_64_gnu 0.52.0", - "windows_x86_64_gnullvm 0.52.0", - "windows_x86_64_msvc 0.52.0", + "windows_aarch64_gnullvm 0.52.3", + "windows_aarch64_msvc 0.52.3", + "windows_i686_gnu 0.52.3", + "windows_i686_msvc 0.52.3", + "windows_x86_64_gnu 0.52.3", + "windows_x86_64_gnullvm 0.52.3", + "windows_x86_64_msvc 0.52.3", ] [[package]] @@ -5187,9 +5203,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" [[package]] name = "windows_aarch64_gnullvm" -version = "0.52.0" +version = "0.52.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" +checksum = "68e5dcfb9413f53afd9c8f86e56a7b4d86d9a2fa26090ea2dc9e40fba56c6ec6" [[package]] name = "windows_aarch64_msvc" @@ -5199,9 +5215,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" [[package]] name = "windows_aarch64_msvc" -version = "0.52.0" +version = "0.52.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" +checksum = "8dab469ebbc45798319e69eebf92308e541ce46760b49b18c6b3fe5e8965b30f" [[package]] name = "windows_i686_gnu" @@ -5211,9 +5227,9 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" [[package]] name = "windows_i686_gnu" -version = "0.52.0" +version = "0.52.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" +checksum = "2a4e9b6a7cac734a8b4138a4e1044eac3404d8326b6c0f939276560687a033fb" [[package]] name = "windows_i686_msvc" @@ -5223,9 +5239,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" [[package]] name = "windows_i686_msvc" -version = "0.52.0" +version = "0.52.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" +checksum = "28b0ec9c422ca95ff34a78755cfa6ad4a51371da2a5ace67500cf7ca5f232c58" [[package]] name = "windows_x86_64_gnu" @@ -5235,9 +5251,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" [[package]] name = "windows_x86_64_gnu" -version = "0.52.0" +version = "0.52.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" +checksum = "704131571ba93e89d7cd43482277d6632589b18ecf4468f591fbae0a8b101614" [[package]] name = "windows_x86_64_gnullvm" @@ -5247,9 +5263,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" [[package]] name = "windows_x86_64_gnullvm" -version = "0.52.0" +version = "0.52.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" +checksum = "42079295511643151e98d61c38c0acc444e52dd42ab456f7ccfd5152e8ecf21c" [[package]] name = "windows_x86_64_msvc" @@ -5259,9 +5275,9 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" [[package]] name = "windows_x86_64_msvc" -version = "0.52.0" +version = "0.52.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" +checksum = "0770833d60a970638e989b3fa9fd2bb1aaadcf88963d1659fd7d9990196ed2d6" [[package]] name = "winnow" @@ -5272,6 +5288,15 @@ dependencies = [ "memchr", ] +[[package]] +name = "winnow" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a4191c47f15cc3ec71fcb4913cb83d58def65dd3787610213c649283b5ce178" +dependencies = [ + "memchr", +] + [[package]] name = "winreg" version = "0.50.0" @@ -5308,7 +5333,7 @@ checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -5328,7 +5353,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -5340,26 +5365,7 @@ dependencies = [ "byteorder", "crc32fast", "crossbeam-utils", - "zstd", -] - -[[package]] -name = "zstd" -version = "0.11.2+zstd.1.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20cc960326ece64f010d2d2107537f26dc589a6573a316bd5b1dba685fa5fde4" -dependencies = [ - "zstd-safe", -] - -[[package]] -name = "zstd-safe" -version = "5.0.2+zstd.1.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d2a5585e04f9eea4b2a3d1eca508c4dee9592a89ef6f450c11719da0726f4db" -dependencies = [ - "libc", - "zstd-sys", + "flate2", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index ec6a19b..9d5eedd 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -16,24 +16,24 @@ publish = false rust-version = "1.73" [workspace.dependencies] -sov-modules-api = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-state = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-accounts = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-bank = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-ledger-rpc = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-sequencer-registry = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-modules-stf-blueprint = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-modules-rollup-blueprint = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-stf-runner = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-db = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-sequencer = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-rollup-interface = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-risc0-adapter = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-first-read-last-write-cache = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-cli = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-mock-da = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-celestia-adapter = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-prover-storage-manager = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } +sov-modules-api = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-state = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-accounts = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-bank = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-ledger-rpc = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-sequencer-registry = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-modules-stf-blueprint = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-modules-rollup-blueprint = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-stf-runner = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-db = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-sequencer = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-rollup-interface = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-risc0-adapter = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-first-read-last-write-cache = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-cli = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-mock-da = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-celestia-adapter = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-prover-storage-manager = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } stf-starter = { path = "./crates/stf" } @@ -50,11 +50,4 @@ tokio = { version = "1", features = ["full"] } tempfile = "3.5" jsonrpsee = { version = "0.20.1", features = ["jsonrpsee-types"] } -risc0-build = "0.19" - -[patch.crates-io] -# To apply the v0.19 build script downlaod issue hotfix. -risc0-circuit-recursion = { git = "https://github.com/neysofu/risc0-hotfixes", rev = "v0.19.2-hotfix" } -risc0-zkvm = { git = "https://github.com/neysofu/risc0-hotfixes", rev = "v0.19.2-hotfix" } -risc0-zkvm-platform = { git = "https://github.com/neysofu/risc0-hotfixes", rev = "v0.19.2-hotfix" } -risc0-circuit-rv32im = { git = "https://github.com/neysofu/risc0-hotfixes", rev = "v0.19.2-hotfix" } +risc0-build = "0.20" diff --git a/crates/provers/risc0/guest-celestia/Cargo.lock b/crates/provers/risc0/guest-celestia/Cargo.lock index 0453997..15e05c5 100644 --- a/crates/provers/risc0/guest-celestia/Cargo.lock +++ b/crates/provers/risc0/guest-celestia/Cargo.lock @@ -36,9 +36,55 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.79" +version = "1.0.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "080e9890a082662b09c1ad45f567faeeb47f22b5fb23895fbe1e651e718e25ca" +checksum = "5ad32ce52e4161730f7098c077cd2ed6229b5804ccf99e5366be1ab72a98b4e1" + +[[package]] +name = "ark-bn254" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a22f4561524cd949590d78d7d4c5df8f592430d221f7f3c9497bbafd8972120f" +dependencies = [ + "ark-ec", + "ark-ff 0.4.2", + "ark-std 0.4.0", +] + +[[package]] +name = "ark-crypto-primitives" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f3a13b34da09176a8baba701233fdffbaa7c1b1192ce031a3da4e55ce1f1a56" +dependencies = [ + "ark-ec", + "ark-ff 0.4.2", + "ark-relations", + "ark-serialize 0.4.2", + "ark-snark", + "ark-std 0.4.0", + "blake2", + "derivative", + "digest 0.10.7", + "sha2 0.10.8", +] + +[[package]] +name = "ark-ec" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "defd9a439d56ac24968cca0571f598a61bc8c55f71d50a89cda591cb750670ba" +dependencies = [ + "ark-ff 0.4.2", + "ark-poly", + "ark-serialize 0.4.2", + "ark-std 0.4.0", + "derivative", + "hashbrown 0.13.2", + "itertools 0.10.5", + "num-traits", + "zeroize", +] [[package]] name = "ark-ff" @@ -123,6 +169,46 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "ark-groth16" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "20ceafa83848c3e390f1cbf124bc3193b3e639b3f02009e0e290809a501b95fc" +dependencies = [ + "ark-crypto-primitives", + "ark-ec", + "ark-ff 0.4.2", + "ark-poly", + "ark-relations", + "ark-serialize 0.4.2", + "ark-std 0.4.0", +] + +[[package]] +name = "ark-poly" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d320bfc44ee185d899ccbadfa8bc31aab923ce1558716e1997a1e74057fe86bf" +dependencies = [ + "ark-ff 0.4.2", + "ark-serialize 0.4.2", + "ark-std 0.4.0", + "derivative", + "hashbrown 0.13.2", +] + +[[package]] +name = "ark-relations" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00796b6efc05a3f48225e59cb6a2cda78881e7c390872d5786aaf112f31fb4f0" +dependencies = [ + "ark-ff 0.4.2", + "ark-std 0.4.0", + "tracing", + "tracing-subscriber", +] + [[package]] name = "ark-serialize" version = "0.3.0" @@ -139,11 +225,35 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" dependencies = [ + "ark-serialize-derive", "ark-std 0.4.0", "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-snark" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "84d3cc6833a335bb8a600241889ead68ee89a3cf8448081fb7694c0fe503da63" +dependencies = [ + "ark-ff 0.4.2", + "ark-relations", + "ark-serialize 0.4.2", + "ark-std 0.4.0", +] + [[package]] name = "ark-std" version = "0.3.0" @@ -184,7 +294,7 @@ checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -195,7 +305,7 @@ checksum = "823b8bb275161044e2ac7a25879cb3e2480cb403e3943022c7c769c599b756aa" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -353,9 +463,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.14.0" +version = "3.15.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" +checksum = "8ea184aa71bb362a1157c896979544cc23974e08fd265f29ea96b59f0b4a555b" [[package]] name = "byte-slice-cast" @@ -380,7 +490,7 @@ checksum = "965ab7eb5f8f97d2a083c799f3a1b994fc397b2fe2da5d1da1626ce15a39f2b1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -400,12 +510,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.83" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" -dependencies = [ - "libc", -] +checksum = "7f9fa1897e4325be0d68d48df6aa1a71ac2ed4d27723887e7754192705350730" [[package]] name = "celestia-proto" @@ -540,6 +647,7 @@ version = "0.5.2" source = "git+https://github.com/risc0/RustCrypto-crypto-bigint?tag=v0.5.2-risc0#8b30304277cfe553b51a78a0e693f48bbb059eb3" dependencies = [ "getrandom", + "rand_core", "subtle", "zeroize", ] @@ -569,6 +677,7 @@ dependencies = [ "platforms", "rustc_version 0.4.0", "subtle", + "zeroize", ] [[package]] @@ -578,7 +687,7 @@ source = "git+https://github.com/risc0/curve25519-dalek?tag=curve25519-4.1.0-ris dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -730,6 +839,7 @@ dependencies = [ "serde", "sha2 0.10.8", "subtle", + "zeroize", ] [[package]] @@ -753,7 +863,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -841,9 +951,9 @@ checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" [[package]] name = "futures" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23342abe12aba583913b2e62f22225ff9c950774065e4bfb61a19cd9770fec40" +checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" dependencies = [ "futures-channel", "futures-core", @@ -855,9 +965,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2" +checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" dependencies = [ "futures-core", "futures-sink", @@ -865,9 +975,9 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c" +checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" [[package]] name = "futures-io" @@ -889,15 +999,19 @@ checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" [[package]] name = "futures-util" -version = "0.3.28" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533" +checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" dependencies = [ + "futures-channel", "futures-core", + "futures-io", "futures-sink", "futures-task", + "memchr", "pin-project-lite", "pin-utils", + "slab", ] [[package]] @@ -946,9 +1060,9 @@ checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" [[package]] name = "hermit-abi" -version = "0.3.5" +version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0c62115964e08cb8039170eb33c1d0e2388a256930279edca206fff675f82c3" +checksum = "bd5256b483761cd23699d0da46cc6fd2ee3be420bbe6d020ae4a091e70b7e9fd" [[package]] name = "hex" @@ -1233,7 +1347,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -1377,7 +1491,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a41cf62165e97c7f814d2221421dbb9afcbcdb0a88068e5ea206e19951c2cbb5" dependencies = [ "proc-macro2", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -1496,7 +1610,7 @@ dependencies = [ "prost", "prost-types", "regex", - "syn 2.0.48", + "syn 2.0.50", "tempfile", "which", ] @@ -1511,7 +1625,7 @@ dependencies = [ "itertools 0.11.0", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -1617,25 +1731,27 @@ dependencies = [ [[package]] name = "risc0-binfmt" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d263c6370d7714d2a634b6d88deb3871d0fad1f9486a9da6d48139c1ac85b26" dependencies = [ "anyhow", "elf", - "log", "risc0-zkp", "risc0-zkvm-platform", "serde", + "tracing", ] [[package]] name = "risc0-circuit-recursion" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc9835069929a0e7b6b4b34e6a83f08aaa9d34b30023b9ccaf96ddbe20404eba" dependencies = [ "anyhow", "bytemuck", - "log", + "hex", "risc0-core", "risc0-zkp", "tracing", @@ -1643,11 +1759,11 @@ dependencies = [ [[package]] name = "risc0-circuit-rv32im" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb1caa759ab74d08779e062fcf98f5bd34397dfde572516a52369f0ec46db650" dependencies = [ "anyhow", - "log", "risc0-core", "risc0-zkp", "risc0-zkvm-platform", @@ -1656,8 +1772,9 @@ dependencies = [ [[package]] name = "risc0-core" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be79c89bcd18886b376073e3da22f8b7963247a42dce7b49cf3d09853f51641e" dependencies = [ "bytemuck", "rand_core", @@ -1666,7 +1783,7 @@ dependencies = [ [[package]] name = "risc0-cycle-utils" version = "0.3.0" -source = "git+https://github.com/Sovereign-Labs/risc0-cycle-macros.git?rev=0110643f00b#0110643f00b3f779544d87b3d27bf0bec49d5d7a" +source = "git+https://github.com/Sovereign-Labs/risc0-cycle-macros.git?rev=98948b8ee0e3edffcee7f3bd95a9d93c5c0941af#98948b8ee0e3edffcee7f3bd95a9d93c5c0941af" dependencies = [ "bytes", "risc0-zkvm", @@ -1675,15 +1792,15 @@ dependencies = [ [[package]] name = "risc0-zkp" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e20a57e04840a5afadebb5d232546245f4fd8bd0e774bd69bf4bf25f8ab90c04" dependencies = [ "anyhow", "blake2", "bytemuck", "digest 0.10.7", "hex", - "log", "paste", "rand_core", "risc0-core", @@ -1695,15 +1812,19 @@ dependencies = [ [[package]] name = "risc0-zkvm" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "922588cb4b884b3951316a65581ccdfd1174af93c54093190878366812073329" dependencies = [ "anyhow", + "ark-bn254", + "ark-groth16", + "ark-serialize 0.4.2", "bytemuck", "cfg-if", "getrandom", "hex", - "log", + "num-bigint", "num-derive 0.4.2", "num-traits", "risc0-binfmt", @@ -1713,15 +1834,17 @@ dependencies = [ "risc0-zkp", "risc0-zkvm-platform", "rrs-lib", - "semver 1.0.21", + "semver 1.0.22", "serde", + "sha2 0.10.8", "tracing", ] [[package]] name = "risc0-zkvm-platform" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc5819c0c3bfd8f20b1226c9d4ca1f342eb3d8385e71211a9383a879643d1dde" dependencies = [ "bytemuck", "getrandom", @@ -1750,9 +1873,9 @@ dependencies = [ [[package]] name = "ruint" -version = "1.10.1" +version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95294d6e3a6192f3aabf91c38f56505a625aa495533442744185a36d75a790c4" +checksum = "608a5726529f2f0ef81b8fde9873c4bb829d6b5b5ca6be4d97345ddf0749c825" dependencies = [ "alloy-rlp", "ark-ff 0.3.0", @@ -1760,6 +1883,7 @@ dependencies = [ "bytes", "fastrlp", "num-bigint", + "num-traits", "parity-scale-codec", "primitive-types", "proptest", @@ -1798,7 +1922,7 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" dependencies = [ - "semver 1.0.21", + "semver 1.0.22", ] [[package]] @@ -1816,9 +1940,9 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.16" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c" +checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1" [[package]] name = "schemars" @@ -1861,9 +1985,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.21" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b97ed7a9823b74f99c7742f5336af7be5ecd3eeafcb1507d1fa93347b1d589b0" +checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca" [[package]] name = "semver-parser" @@ -1876,9 +2000,9 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.196" +version = "1.0.197" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "870026e60fa08c69f064aa766c10f10b1d62db9ccd4d0abb206472bee0ce3b32" +checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2" dependencies = [ "serde_derive", ] @@ -1894,13 +2018,13 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.196" +version = "1.0.197" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33c85360c95e7d137454dc81d9a4ed2b8efd8fbe19cee57357b32b9771fccb67" +checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -1916,9 +2040,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.113" +version = "1.0.114" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69801b70b1c3dac963ecb03a364ba0ceda9cf60c71cfe475e99864759c8b8a79" +checksum = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0" dependencies = [ "itoa", "ryu", @@ -1933,7 +2057,7 @@ checksum = "0b2e6b945e9d3df726b65d6ee24060aff8e3533d431f677a9695db04eff9dfdb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -1974,11 +2098,23 @@ name = "signature" version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" +dependencies = [ + "rand_core", +] + +[[package]] +name = "slab" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" +dependencies = [ + "autocfg", +] [[package]] name = "sov-accounts" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -1991,7 +2127,7 @@ dependencies = [ [[package]] name = "sov-bank" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -2004,7 +2140,7 @@ dependencies = [ [[package]] name = "sov-blob-storage" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "bincode", @@ -2021,11 +2157,10 @@ dependencies = [ [[package]] name = "sov-celestia-adapter" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "async-trait", - "base64", "bech32", "borsh", "celestia-proto", @@ -2045,7 +2180,7 @@ dependencies = [ [[package]] name = "sov-chain-state" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -2076,7 +2211,7 @@ dependencies = [ [[package]] name = "sov-mock-da" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "async-trait", @@ -2086,19 +2221,17 @@ dependencies = [ "serde", "sha2 0.10.8", "sov-rollup-interface", - "tracing", ] [[package]] name = "sov-modules-api" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "bech32", "borsh", "derive_more", - "ed25519-dalek", "hex", "serde", "sha2 0.10.8", @@ -2113,7 +2246,7 @@ dependencies = [ [[package]] name = "sov-modules-core" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "bech32", @@ -2123,6 +2256,7 @@ dependencies = [ "digest 0.10.7", "hex", "jmt", + "proptest", "schemars", "serde", "sha2 0.10.8", @@ -2133,7 +2267,7 @@ dependencies = [ [[package]] name = "sov-modules-macros" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -2141,14 +2275,13 @@ dependencies = [ "quote", "schemars", "serde_json", - "sov-modules-core", "syn 1.0.109", ] [[package]] name = "sov-modules-stf-blueprint" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -2167,29 +2300,38 @@ dependencies = [ [[package]] name = "sov-risc0-adapter" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "bincode", + "borsh", "bytemuck", + "crypto-bigint", + "ed25519-dalek", + "hex", "risc0-cycle-utils", "risc0-zkvm", "risc0-zkvm-platform", "serde", + "sha2 0.10.8", "sov-rollup-interface", + "thiserror", + "tracing", ] [[package]] name = "sov-rollup-interface" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "async-trait", "borsh", "bytes", "digest 0.10.7", + "futures", "hex", + "proptest", "serde", "serde_json", "sha2 0.10.8", @@ -2199,7 +2341,7 @@ dependencies = [ [[package]] name = "sov-sequencer-registry" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -2212,7 +2354,7 @@ dependencies = [ [[package]] name = "sov-state" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "bcs", @@ -2231,7 +2373,7 @@ dependencies = [ [[package]] name = "sov-stf-runner" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -2312,9 +2454,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.48" +version = "2.0.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f" +checksum = "74f1bdc9872430ce9b75da68329d1c1746faf50ffac5f19e02b71e37ff881ffb" dependencies = [ "proc-macro2", "quote", @@ -2414,7 +2556,7 @@ checksum = "a953cb265bef375dae3de6663da4d3804eee9682ea80d8e2542529b73c531c81" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -2477,6 +2619,7 @@ version = "0.1.40" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" dependencies = [ + "log", "pin-project-lite", "tracing-attributes", "tracing-core", @@ -2490,7 +2633,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -2500,6 +2643,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" dependencies = [ "once_cell", + "valuable", +] + +[[package]] +name = "tracing-subscriber" +version = "0.2.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e0d2eaa99c3c2e41547cfa109e910a68ea03823cccad4a0525dcbc9b01e8c71" +dependencies = [ + "tracing-core", ] [[package]] @@ -2589,7 +2742,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", "wasm-bindgen-shared", ] @@ -2623,7 +2776,7 @@ checksum = "642f325be6301eb8107a83d12a8ac6c1e1c54345a7ef1a9261962dfefda09e66" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -2656,7 +2809,7 @@ checksum = "a5211b7550606857312bba1d978a8ec75692eae187becc5e680444fffc5e6f89" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -2692,9 +2845,9 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.52.0" +version = "0.52.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" +checksum = "d380ba1dc7187569a8a9e91ed34b8ccfc33123bbacb8c0aed2d1ad7f3ef2dc5f" dependencies = [ "windows_aarch64_gnullvm", "windows_aarch64_msvc", @@ -2707,45 +2860,45 @@ dependencies = [ [[package]] name = "windows_aarch64_gnullvm" -version = "0.52.0" +version = "0.52.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" +checksum = "68e5dcfb9413f53afd9c8f86e56a7b4d86d9a2fa26090ea2dc9e40fba56c6ec6" [[package]] name = "windows_aarch64_msvc" -version = "0.52.0" +version = "0.52.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" +checksum = "8dab469ebbc45798319e69eebf92308e541ce46760b49b18c6b3fe5e8965b30f" [[package]] name = "windows_i686_gnu" -version = "0.52.0" +version = "0.52.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" +checksum = "2a4e9b6a7cac734a8b4138a4e1044eac3404d8326b6c0f939276560687a033fb" [[package]] name = "windows_i686_msvc" -version = "0.52.0" +version = "0.52.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" +checksum = "28b0ec9c422ca95ff34a78755cfa6ad4a51371da2a5ace67500cf7ca5f232c58" [[package]] name = "windows_x86_64_gnu" -version = "0.52.0" +version = "0.52.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" +checksum = "704131571ba93e89d7cd43482277d6632589b18ecf4468f591fbae0a8b101614" [[package]] name = "windows_x86_64_gnullvm" -version = "0.52.0" +version = "0.52.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" +checksum = "42079295511643151e98d61c38c0acc444e52dd42ab456f7ccfd5152e8ecf21c" [[package]] name = "windows_x86_64_msvc" -version = "0.52.0" +version = "0.52.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" +checksum = "0770833d60a970638e989b3fa9fd2bb1aaadcf88963d1659fd7d9990196ed2d6" [[package]] name = "winnow" @@ -2782,7 +2935,7 @@ checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -2802,5 +2955,5 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] diff --git a/crates/provers/risc0/guest-celestia/Cargo.toml b/crates/provers/risc0/guest-celestia/Cargo.toml index d83f8a1..75198b9 100644 --- a/crates/provers/risc0/guest-celestia/Cargo.toml +++ b/crates/provers/risc0/guest-celestia/Cargo.toml @@ -11,30 +11,23 @@ anyhow = "1.0.68" ahash = "=0.8.6" # Force ahash to an old version to prevent build issues: https://github.com/risc0/risc0/issues/1406. This can be removed once risc0 updates to rust 1.72 time-macros = "=0.2.15" # Same as above -risc0-zkvm = { version = "0.19", default-features = false, features = ["std"] } -risc0-zkvm-platform = "0.19" +risc0-zkvm = { version = "0.20", default-features = false, features = ["std"] } +risc0-zkvm-platform = "0.20" stf-starter = { path = "../../../stf" } -sov-rollup-interface = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-celestia-adapter = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-modules-api = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-modules-stf-blueprint = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-risc0-adapter = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-state = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } +sov-rollup-interface = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-celestia-adapter = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-modules-api = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-modules-stf-blueprint = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-risc0-adapter = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-state = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } [patch.crates-io] sha2 = { git = "https://github.com/risc0/RustCrypto-hashes", tag = "sha2-v0.10.8-risczero.0" } ed25519-dalek = { git = "https://github.com/risc0/curve25519-dalek", tag = "curve25519-4.1.0-risczero.1" } crypto-bigint = { git = "https://github.com/risc0/RustCrypto-crypto-bigint", tag = "v0.5.2-risc0" } -# Uncomment to apply the v0.19 build script downlaod issue hotfix. -risc0-circuit-recursion = { git = "https://github.com/neysofu/risc0-hotfixes", rev = "v0.19.2-hotfix" } -risc0-zkvm = { git = "https://github.com/neysofu/risc0-hotfixes", rev = "v0.19.2-hotfix" } -risc0-zkvm-platform = { git = "https://github.com/neysofu/risc0-hotfixes", rev = "v0.19.2-hotfix" } -risc0-circuit-rv32im = { git = "https://github.com/neysofu/risc0-hotfixes", rev = "v0.19.2-hotfix" } - - [profile.dev] opt-level = 3 diff --git a/crates/provers/risc0/guest-celestia/src/bin/rollup.rs b/crates/provers/risc0/guest-celestia/src/bin/rollup.rs index f402194..bd84407 100644 --- a/crates/provers/risc0/guest-celestia/src/bin/rollup.rs +++ b/crates/provers/risc0/guest-celestia/src/bin/rollup.rs @@ -4,10 +4,11 @@ use sov_celestia_adapter::types::Namespace; use sov_celestia_adapter::verifier::CelestiaVerifier; -use sov_modules_api::default_context::ZkDefaultContext; +use sov_modules_api::default_spec::ZkDefaultSpec; use sov_modules_stf_blueprint::kernels::basic::BasicKernel; use sov_modules_stf_blueprint::StfBlueprint; use sov_risc0_adapter::guest::Risc0Guest; +use sov_risc0_adapter::Risc0Verifier; use sov_state::ZkStorage; use stf_starter::runtime::Runtime; use stf_starter::StfVerifier; @@ -20,8 +21,13 @@ risc0_zkvm::guest::entry!(main); pub fn main() { let guest = Risc0Guest::new(); let storage = ZkStorage::new(); - let stf: StfBlueprint, BasicKernel<_, _>> = - StfBlueprint::new(); + let stf: StfBlueprint< + ZkDefaultSpec, + _, + Risc0Verifier, + Runtime<_, _>, + BasicKernel<_, _>, + > = StfBlueprint::new(); let stf_verifier = StfVerifier::new( stf, diff --git a/crates/provers/risc0/guest-mock/Cargo.lock b/crates/provers/risc0/guest-mock/Cargo.lock index 33c91ce..1b9f5f5 100644 --- a/crates/provers/risc0/guest-mock/Cargo.lock +++ b/crates/provers/risc0/guest-mock/Cargo.lock @@ -17,9 +17,183 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.79" +version = "1.0.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "080e9890a082662b09c1ad45f567faeeb47f22b5fb23895fbe1e651e718e25ca" +checksum = "5ad32ce52e4161730f7098c077cd2ed6229b5804ccf99e5366be1ab72a98b4e1" + +[[package]] +name = "ark-bn254" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a22f4561524cd949590d78d7d4c5df8f592430d221f7f3c9497bbafd8972120f" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-std", +] + +[[package]] +name = "ark-crypto-primitives" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f3a13b34da09176a8baba701233fdffbaa7c1b1192ce031a3da4e55ce1f1a56" +dependencies = [ + "ark-ec", + "ark-ff", + "ark-relations", + "ark-serialize", + "ark-snark", + "ark-std", + "blake2", + "derivative", + "digest", + "sha2", +] + +[[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", + "itertools 0.10.5", + "num-traits", + "zeroize", +] + +[[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", + "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-groth16" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "20ceafa83848c3e390f1cbf124bc3193b3e639b3f02009e0e290809a501b95fc" +dependencies = [ + "ark-crypto-primitives", + "ark-ec", + "ark-ff", + "ark-poly", + "ark-relations", + "ark-serialize", + "ark-std", +] + +[[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", +] + +[[package]] +name = "ark-relations" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00796b6efc05a3f48225e59cb6a2cda78881e7c390872d5786aaf112f31fb4f0" +dependencies = [ + "ark-ff", + "ark-std", + "tracing", + "tracing-subscriber", +] + +[[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", + "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-snark" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "84d3cc6833a335bb8a600241889ead68ee89a3cf8448081fb7694c0fe503da63" +dependencies = [ + "ark-ff", + "ark-relations", + "ark-serialize", + "ark-std", +] + +[[package]] +name = "ark-std" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" +dependencies = [ + "num-traits", + "rand", +] [[package]] name = "arrayref" @@ -41,7 +215,7 @@ checksum = "c980ee35e870bd1a4d2c8294d4c04d0499e67bca1e4b5cefcc693c2fa00caea9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -56,6 +230,12 @@ version = "0.21.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" +[[package]] +name = "base64ct" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" + [[package]] name = "bcs" version = "0.1.6" @@ -81,6 +261,12 @@ dependencies = [ "serde", ] +[[package]] +name = "bitflags" +version = "2.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf" + [[package]] name = "blake2" version = "0.10.6" @@ -175,7 +361,7 @@ checksum = "965ab7eb5f8f97d2a083c799f3a1b994fc397b2fe2da5d1da1626ce15a39f2b1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -189,12 +375,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.83" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" -dependencies = [ - "libc", -] +checksum = "7f9fa1897e4325be0d68d48df6aa1a71ac2ed4d27723887e7754192705350730" [[package]] name = "cfg-if" @@ -235,6 +418,7 @@ version = "0.5.2" source = "git+https://github.com/risc0/RustCrypto-crypto-bigint?tag=v0.5.2-risc0#8b30304277cfe553b51a78a0e693f48bbb059eb3" dependencies = [ "getrandom", + "rand_core", "subtle", "zeroize", ] @@ -264,6 +448,7 @@ dependencies = [ "platforms", "rustc_version", "subtle", + "zeroize", ] [[package]] @@ -273,7 +458,17 @@ source = "git+https://github.com/risc0/curve25519-dalek?tag=curve25519-4.1.0-ris dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", +] + +[[package]] +name = "der" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fffa369a668c8af7dbf8b5e56c9f744fbd399949ed171606040001947de40b1c" +dependencies = [ + "const-oid", + "zeroize", ] [[package]] @@ -330,6 +525,7 @@ version = "2.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53" dependencies = [ + "pkcs8", "serde", "signature", ] @@ -344,6 +540,7 @@ dependencies = [ "serde", "sha2", "subtle", + "zeroize", ] [[package]] @@ -364,6 +561,71 @@ version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1676f435fc1dadde4d03e43f5d62b259e1ce5f40bd4ffb21db2b42ebe59c1382" +[[package]] +name = "futures" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" +dependencies = [ + "futures-channel", + "futures-core", + "futures-io", + "futures-sink", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-channel" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" +dependencies = [ + "futures-core", + "futures-sink", +] + +[[package]] +name = "futures-core" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" + +[[package]] +name = "futures-io" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" + +[[package]] +name = "futures-sink" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" + +[[package]] +name = "futures-task" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" + +[[package]] +name = "futures-util" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" +dependencies = [ + "futures-channel", + "futures-core", + "futures-io", + "futures-sink", + "futures-task", + "memchr", + "pin-project-lite", + "pin-utils", + "slab", +] + [[package]] name = "generic-array" version = "0.14.7" @@ -415,9 +677,9 @@ dependencies = [ [[package]] name = "hermit-abi" -version = "0.3.5" +version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0c62115964e08cb8039170eb33c1d0e2388a256930279edca206fff675f82c3" +checksum = "bd5256b483761cd23699d0da46cc6fd2ee3be420bbe6d020ae4a091e70b7e9fd" [[package]] name = "hex" @@ -511,6 +773,12 @@ dependencies = [ "cpufeatures", ] +[[package]] +name = "lazy_static" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" + [[package]] name = "libc" version = "0.2.153" @@ -529,12 +797,29 @@ version = "0.4.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" +[[package]] +name = "memchr" +version = "2.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149" + [[package]] name = "mirai-annotations" version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c9be0862c1b3f26a88803c4a49de6889c10e608b3ee9344e6ef5b45fb37ad3d1" +[[package]] +name = "num-bigint" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0" +dependencies = [ + "autocfg", + "num-integer", + "num-traits", +] + [[package]] name = "num-derive" version = "0.3.3" @@ -554,7 +839,16 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", +] + +[[package]] +name = "num-integer" +version = "0.1.46" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" +dependencies = [ + "num-traits", ] [[package]] @@ -564,6 +858,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "da0df0e5185db44f69b44f26786fe401b6c293d1907744beaa7fa62b2e5a517a" dependencies = [ "autocfg", + "libm", ] [[package]] @@ -594,12 +889,34 @@ version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" +[[package]] +name = "pin-utils" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" + +[[package]] +name = "pkcs8" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" +dependencies = [ + "der", + "spki", +] + [[package]] name = "platforms" version = "3.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "626dec3cac7cc0e1577a2ec3fc496277ec2baa084bebad95bb6fdbfae235f84c" +[[package]] +name = "ppv-lite86" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" + [[package]] name = "proc-macro-crate" version = "0.1.5" @@ -618,6 +935,22 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "proptest" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "31b476131c3c86cb68032fdc5cb6d5a1045e3e42d96b69fa599fd77701e1f5bf" +dependencies = [ + "bitflags", + "lazy_static", + "num-traits", + "rand", + "rand_chacha", + "rand_xorshift", + "regex-syntax", + "unarray", +] + [[package]] name = "prost" version = "0.12.3" @@ -638,7 +971,7 @@ dependencies = [ "itertools 0.11.0", "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -650,11 +983,50 @@ dependencies = [ "proc-macro2", ] +[[package]] +name = "rand" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +dependencies = [ + "libc", + "rand_chacha", + "rand_core", +] + +[[package]] +name = "rand_chacha" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" +dependencies = [ + "ppv-lite86", + "rand_core", +] + [[package]] name = "rand_core" version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +dependencies = [ + "getrandom", +] + +[[package]] +name = "rand_xorshift" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" +dependencies = [ + "rand_core", +] + +[[package]] +name = "regex-syntax" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f" [[package]] name = "ripemd" @@ -667,25 +1039,27 @@ dependencies = [ [[package]] name = "risc0-binfmt" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d263c6370d7714d2a634b6d88deb3871d0fad1f9486a9da6d48139c1ac85b26" dependencies = [ "anyhow", "elf", - "log", "risc0-zkp", "risc0-zkvm-platform", "serde", + "tracing", ] [[package]] name = "risc0-circuit-recursion" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc9835069929a0e7b6b4b34e6a83f08aaa9d34b30023b9ccaf96ddbe20404eba" dependencies = [ "anyhow", "bytemuck", - "log", + "hex", "risc0-core", "risc0-zkp", "tracing", @@ -693,11 +1067,11 @@ dependencies = [ [[package]] name = "risc0-circuit-rv32im" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb1caa759ab74d08779e062fcf98f5bd34397dfde572516a52369f0ec46db650" dependencies = [ "anyhow", - "log", "risc0-core", "risc0-zkp", "risc0-zkvm-platform", @@ -706,8 +1080,9 @@ dependencies = [ [[package]] name = "risc0-core" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be79c89bcd18886b376073e3da22f8b7963247a42dce7b49cf3d09853f51641e" dependencies = [ "bytemuck", "rand_core", @@ -716,7 +1091,7 @@ dependencies = [ [[package]] name = "risc0-cycle-utils" version = "0.3.0" -source = "git+https://github.com/Sovereign-Labs/risc0-cycle-macros.git?rev=0110643f00b#0110643f00b3f779544d87b3d27bf0bec49d5d7a" +source = "git+https://github.com/Sovereign-Labs/risc0-cycle-macros.git?rev=98948b8ee0e3edffcee7f3bd95a9d93c5c0941af#98948b8ee0e3edffcee7f3bd95a9d93c5c0941af" dependencies = [ "bytes", "risc0-zkvm", @@ -725,15 +1100,15 @@ dependencies = [ [[package]] name = "risc0-zkp" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e20a57e04840a5afadebb5d232546245f4fd8bd0e774bd69bf4bf25f8ab90c04" dependencies = [ "anyhow", "blake2", "bytemuck", "digest", "hex", - "log", "paste", "rand_core", "risc0-core", @@ -745,15 +1120,19 @@ dependencies = [ [[package]] name = "risc0-zkvm" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "922588cb4b884b3951316a65581ccdfd1174af93c54093190878366812073329" dependencies = [ "anyhow", + "ark-bn254", + "ark-groth16", + "ark-serialize", "bytemuck", "cfg-if", "getrandom", "hex", - "log", + "num-bigint", "num-derive 0.4.2", "num-traits", "risc0-binfmt", @@ -765,13 +1144,15 @@ dependencies = [ "rrs-lib", "semver", "serde", + "sha2", "tracing", ] [[package]] name = "risc0-zkvm-platform" -version = "0.19.1" -source = "git+https://github.com/neysofu/risc0-hotfixes?rev=v0.19.2-hotfix#eccf7b090cf6dd0c95bcfd03a6fdf0fbccefb9d2" +version = "0.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc5819c0c3bfd8f20b1226c9d4ca1f342eb3d8385e71211a9383a879643d1dde" dependencies = [ "bytemuck", "getrandom", @@ -799,9 +1180,9 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.16" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c" +checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1" [[package]] name = "schemars" @@ -829,28 +1210,28 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.21" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b97ed7a9823b74f99c7742f5336af7be5ecd3eeafcb1507d1fa93347b1d589b0" +checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca" [[package]] name = "serde" -version = "1.0.196" +version = "1.0.197" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "870026e60fa08c69f064aa766c10f10b1d62db9ccd4d0abb206472bee0ce3b32" +checksum = "3fb1c873e1b9b056a4dc4c0c198b24c3ffa059243875552b2bd0933b1aee4ce2" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.196" +version = "1.0.197" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33c85360c95e7d137454dc81d9a4ed2b8efd8fbe19cee57357b32b9771fccb67" +checksum = "7eb0b34b42edc17f6b7cac84a52a1c5f0e1bb2227e997ca9011ea3dd34e8610b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -866,9 +1247,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.113" +version = "1.0.114" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69801b70b1c3dac963ecb03a364ba0ceda9cf60c71cfe475e99864759c8b8a79" +checksum = "c5f09b1bd632ef549eaa9f60a1f8de742bdbc698e6cee2095fc84dde5f549ae0" dependencies = [ "itoa", "ryu", @@ -900,11 +1281,23 @@ name = "signature" version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" +dependencies = [ + "rand_core", +] + +[[package]] +name = "slab" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" +dependencies = [ + "autocfg", +] [[package]] name = "sov-accounts" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -917,7 +1310,7 @@ dependencies = [ [[package]] name = "sov-bank" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -930,7 +1323,7 @@ dependencies = [ [[package]] name = "sov-blob-storage" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "bincode", @@ -947,7 +1340,7 @@ dependencies = [ [[package]] name = "sov-chain-state" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -960,7 +1353,7 @@ dependencies = [ [[package]] name = "sov-mock-da" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "async-trait", @@ -970,19 +1363,17 @@ dependencies = [ "serde", "sha2", "sov-rollup-interface", - "tracing", ] [[package]] name = "sov-modules-api" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "bech32", "borsh", "derive_more", - "ed25519-dalek", "hex", "serde", "sha2", @@ -997,7 +1388,7 @@ dependencies = [ [[package]] name = "sov-modules-core" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "bech32", @@ -1007,6 +1398,7 @@ dependencies = [ "digest", "hex", "jmt", + "proptest", "schemars", "serde", "sha2", @@ -1017,7 +1409,7 @@ dependencies = [ [[package]] name = "sov-modules-macros" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -1025,14 +1417,13 @@ dependencies = [ "quote", "schemars", "serde_json", - "sov-modules-core", "syn 1.0.109", ] [[package]] name = "sov-modules-stf-blueprint" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -1051,29 +1442,38 @@ dependencies = [ [[package]] name = "sov-risc0-adapter" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "bincode", + "borsh", "bytemuck", + "crypto-bigint", + "ed25519-dalek", + "hex", "risc0-cycle-utils", "risc0-zkvm", "risc0-zkvm-platform", "serde", + "sha2", "sov-rollup-interface", + "thiserror", + "tracing", ] [[package]] name = "sov-rollup-interface" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "async-trait", "borsh", "bytes", "digest", + "futures", "hex", + "proptest", "serde", "serde_json", "sha2", @@ -1083,7 +1483,7 @@ dependencies = [ [[package]] name = "sov-sequencer-registry" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -1096,7 +1496,7 @@ dependencies = [ [[package]] name = "sov-state" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "bcs", @@ -1115,7 +1515,7 @@ dependencies = [ [[package]] name = "sov-stf-runner" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f#a1d9ed80af46a0ea6e173204ca708c40ce592d3f" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -1126,6 +1526,16 @@ dependencies = [ "sov-rollup-interface", ] +[[package]] +name = "spki" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d" +dependencies = [ + "base64ct", + "der", +] + [[package]] name = "stf-starter" version = "0.3.0" @@ -1165,9 +1575,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.48" +version = "2.0.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f" +checksum = "74f1bdc9872430ce9b75da68329d1c1746faf50ffac5f19e02b71e37ff881ffb" dependencies = [ "proc-macro2", "quote", @@ -1191,7 +1601,7 @@ checksum = "a953cb265bef375dae3de6663da4d3804eee9682ea80d8e2542529b73c531c81" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -1224,6 +1634,7 @@ version = "0.1.40" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" dependencies = [ + "log", "pin-project-lite", "tracing-attributes", "tracing-core", @@ -1237,7 +1648,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -1247,6 +1658,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" dependencies = [ "once_cell", + "valuable", +] + +[[package]] +name = "tracing-subscriber" +version = "0.2.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e0d2eaa99c3c2e41547cfa109e910a68ea03823cccad4a0525dcbc9b01e8c71" +dependencies = [ + "tracing-core", ] [[package]] @@ -1255,12 +1676,24 @@ version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" +[[package]] +name = "unarray" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" + [[package]] name = "unicode-ident" version = "1.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" +[[package]] +name = "valuable" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" + [[package]] name = "version_check" version = "0.9.4" @@ -1290,7 +1723,7 @@ checksum = "9ce1b18ccd8e73a9321186f97e46f9f04b778851177567b1975109d26a08d2a6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.48", + "syn 2.0.50", ] [[package]] @@ -1298,3 +1731,17 @@ name = "zeroize" version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "525b4ec142c6b68a2d10f01f7bbf6755599ca3f81ea53b8431b7dd348f5fdb2d" +dependencies = [ + "zeroize_derive", +] + +[[package]] +name = "zeroize_derive" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.50", +] diff --git a/crates/provers/risc0/guest-mock/Cargo.toml b/crates/provers/risc0/guest-mock/Cargo.toml index f3d2576..daf2413 100644 --- a/crates/provers/risc0/guest-mock/Cargo.toml +++ b/crates/provers/risc0/guest-mock/Cargo.toml @@ -10,18 +10,18 @@ resolver = "2" anyhow = "1.0.68" ahash = "=0.8.6" # Force ahash to an old version to prevent build issues: https://github.com/risc0/risc0/issues/1406. This can be removed once risc0 updates to rust 1.72 time-macros = "=0.2.15" -risc0-zkvm = { version = "0.19", default-features = false, features = ["std"] } -risc0-zkvm-platform = "0.19" +risc0-zkvm = { version = "0.20", default-features = false, features = ["std"] } +risc0-zkvm-platform = "0.20" serde = { version = "1.0.188", features = ["derive", "rc"] } -sov-rollup-interface = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-mock-da = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-modules-stf-blueprint = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-modules-api = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-risc0-adapter = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } -sov-state = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "a1d9ed80af46a0ea6e173204ca708c40ce592d3f" } +sov-rollup-interface = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-mock-da = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-modules-stf-blueprint = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-modules-api = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-risc0-adapter = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-state = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } stf-starter = { path = "../../../stf" } @@ -30,13 +30,6 @@ sha2 = { git = "https://github.com/risc0/RustCrypto-hashes", tag = "sha2-v0.10.8 ed25519-dalek = { git = "https://github.com/risc0/curve25519-dalek", tag = "curve25519-4.1.0-risczero.1" } crypto-bigint = { git = "https://github.com/risc0/RustCrypto-crypto-bigint", tag = "v0.5.2-risc0" } -# Uncomment to apply the v0.19 build script downlaod issue hotfix. -risc0-circuit-recursion = { git = "https://github.com/neysofu/risc0-hotfixes", rev = "v0.19.2-hotfix" } -risc0-zkvm = { git = "https://github.com/neysofu/risc0-hotfixes", rev = "v0.19.2-hotfix" } -risc0-zkvm-platform = { git = "https://github.com/neysofu/risc0-hotfixes", rev = "v0.19.2-hotfix" } -risc0-circuit-rv32im = { git = "https://github.com/neysofu/risc0-hotfixes", rev = "v0.19.2-hotfix" } - - [profile.dev] opt-level = 3 diff --git a/crates/provers/risc0/guest-mock/src/bin/mock_da.rs b/crates/provers/risc0/guest-mock/src/bin/mock_da.rs index 53387cd..7265c4a 100644 --- a/crates/provers/risc0/guest-mock/src/bin/mock_da.rs +++ b/crates/provers/risc0/guest-mock/src/bin/mock_da.rs @@ -3,23 +3,42 @@ //! of the zkvm in order to generate proofs for the rollup. use sov_mock_da::MockDaVerifier; -use sov_modules_api::default_context::ZkDefaultContext; +use sov_modules_api::default_spec::ZkDefaultSpec; use sov_modules_stf_blueprint::kernels::basic::BasicKernel; use sov_modules_stf_blueprint::StfBlueprint; use sov_risc0_adapter::guest::Risc0Guest; use sov_state::ZkStorage; use stf_starter::runtime::Runtime; +use sov_risc0_adapter::Risc0Verifier; use stf_starter::StfVerifier; +#[cfg(feature = "bench")] +fn report_bench_metrics(start_cycles: usize, end_cycles: usize) { + let cycles_per_block = (end_cycles - start_cycles) as u64; + let tuple = ("Cycles per block".to_string(), cycles_per_block); + let mut serialized = Vec::new(); + serialized.extend(tuple.0.as_bytes()); + serialized.push(0); + let size_bytes = tuple.1.to_ne_bytes(); + serialized.extend(&size_bytes); + + // calculate the syscall name. + let cycle_string = String::from("cycle_metrics\0"); + let metrics_syscall_name = + risc0_zkvm_platform::syscall::SyscallName::from_bytes_with_nul(cycle_string.as_ptr()); + + risc0_zkvm::guest::env::send_recv_slice::(metrics_syscall_name, &serialized); +} + risc0_zkvm::guest::entry!(main); pub fn main() { let guest = Risc0Guest::new(); let storage = ZkStorage::new(); #[cfg(feature = "bench")] - let start_cycles = env::get_cycle_count(); + let start_cycles = risc0_zkvm_platform::syscall::sys_cycle_count(); - let stf: StfBlueprint, BasicKernel<_, _>> = + let stf: StfBlueprint, _, _, Runtime<_, _>, BasicKernel<_, _>> = StfBlueprint::new(); let stf_verifier = StfVerifier::new(stf, MockDaVerifier {}); @@ -27,4 +46,10 @@ pub fn main() { stf_verifier .run_block(guest, storage) .expect("Prover must be honest"); + + #[cfg(feature = "bench")] + { + let end_cycles = risc0_zkvm_platform::syscall::sys_cycle_count(); + report_bench_metrics(start_cycles, end_cycles); + } } diff --git a/crates/rollup/Cargo.toml b/crates/rollup/Cargo.toml index 1193de0..0138d72 100644 --- a/crates/rollup/Cargo.toml +++ b/crates/rollup/Cargo.toml @@ -41,9 +41,7 @@ tokio = { workspace = true } risc0-starter = { path = "../provers/risc0" } stf-starter = { path = "../stf", features = ["native"] } - - -sov-risc0-adapter = { workspace = true, features = ["native"] } +sov-risc0-adapter = { workspace = true, features = ["native", "sov-modules"] } # binary dependencies tracing-subscriber = { version = "0.3.17", features = ["env-filter"] } diff --git a/crates/rollup/src/celestia_rollup.rs b/crates/rollup/src/celestia_rollup.rs index 3e63ffb..f59e00d 100644 --- a/crates/rollup/src/celestia_rollup.rs +++ b/crates/rollup/src/celestia_rollup.rs @@ -1,19 +1,21 @@ #![deny(missing_docs)] //! StarterRollup provides a minimal self-contained rollup implementation +use std::sync::{Arc, RwLock}; use async_trait::async_trait; use sov_celestia_adapter::types::Namespace; use sov_celestia_adapter::verifier::{CelestiaSpec, CelestiaVerifier, RollupParams}; use sov_celestia_adapter::{CelestiaConfig, CelestiaService}; -use sov_modules_api::default_context::{DefaultContext, ZkDefaultContext}; use sov_modules_api::Address; +use sov_modules_api::default_spec::{DefaultSpec, ZkDefaultSpec}; use sov_modules_api::Spec; use sov_modules_rollup_blueprint::RollupBlueprint; use sov_modules_stf_blueprint::kernels::basic::BasicKernel; use sov_modules_stf_blueprint::StfBlueprint; use sov_prover_storage_manager::ProverStorageManager; use sov_risc0_adapter::host::Risc0Host; -use sov_rollup_interface::zk::ZkvmHost; +use sov_risc0_adapter::Risc0Verifier; +use sov_rollup_interface::zk::{ZkvmGuest, ZkvmHost}; use sov_state::config::Config as StorageConfig; use sov_state::Storage; use sov_state::{DefaultStorageSpec, ZkStorage}; @@ -40,8 +42,11 @@ impl RollupBlueprint for CelestiaRollup { type DaConfig = CelestiaConfig; type Vm = Risc0Host<'static>; - type ZkContext = ZkDefaultContext; - type NativeContext = DefaultContext; + /// Spec for the Zero Knowledge environment. + type ZkSpec = ZkDefaultSpec; + + /// Spec for the Native environment. + type NativeSpec = DefaultSpec; type StorageManager = ProverStorageManager; type ZkRuntime = Runtime; @@ -52,14 +57,14 @@ impl RollupBlueprint for CelestiaRollup { type ZkKernel = BasicKernel; type ProverService = ParallelProverService< - <::Storage as Storage>::Root, - <::Storage as Storage>::Witness, + <::Storage as Storage>::Root, + <::Storage as Storage>::Witness, Self::DaService, Self::Vm, StfBlueprint< - Self::ZkContext, + Self::ZkSpec, Self::DaSpec, - ::Guest, + <::Guest as ZkvmGuest>::Verifier, Self::ZkRuntime, Self::ZkKernel, >, @@ -67,7 +72,7 @@ impl RollupBlueprint for CelestiaRollup { fn create_rpc_methods( &self, - storage: &::Storage, + storage: Arc::Storage>>, ledger_db: &sov_db::ledger_db::LedgerDB, da_service: &Self::DaService, ) -> Result, anyhow::Error> { diff --git a/crates/rollup/src/mock_rollup.rs b/crates/rollup/src/mock_rollup.rs index 9c0622f..e362ad6 100644 --- a/crates/rollup/src/mock_rollup.rs +++ b/crates/rollup/src/mock_rollup.rs @@ -6,7 +6,7 @@ use std::sync::{Arc, RwLock}; use async_trait::async_trait; use sov_db::ledger_db::LedgerDB; use sov_mock_da::{MockDaConfig, MockDaService, MockDaSpec}; -use sov_modules_api::default_context::{DefaultContext, ZkDefaultContext}; +use sov_modules_api::default_spec::{DefaultSpec, ZkDefaultSpec}; use sov_modules_api::Address; use sov_modules_api::Spec; use sov_modules_rollup_blueprint::RollupBlueprint; @@ -14,7 +14,8 @@ use sov_modules_stf_blueprint::kernels::basic::BasicKernel; use sov_modules_stf_blueprint::StfBlueprint; use sov_prover_storage_manager::ProverStorageManager; use sov_risc0_adapter::host::Risc0Host; -use sov_rollup_interface::zk::ZkvmHost; +use sov_risc0_adapter::Risc0Verifier; +use sov_rollup_interface::zk::{ZkvmGuest, ZkvmHost}; use sov_state::config::Config as StorageConfig; use sov_state::Storage; use sov_state::{DefaultStorageSpec, ZkStorage}; @@ -38,33 +39,34 @@ impl RollupBlueprint for MockRollup { /// The concrete ZkVm used in the rollup. type Vm = Risc0Host<'static>; - /// Context for the Zero Knowledge environment. - type ZkContext = ZkDefaultContext; - /// Context for the ZNative environment. - type NativeContext = DefaultContext; + /// Spec for the Zero Knowledge environment. + type ZkSpec = ZkDefaultSpec; + + /// Spec for the Native environment. + type NativeSpec = DefaultSpec; /// Manager for the native storage lifecycle. type StorageManager = ProverStorageManager; /// Runtime for the Zero Knowledge environment. - type ZkRuntime = Runtime; + type ZkRuntime = Runtime; /// Runtime for the Native environment. - type NativeRuntime = Runtime; + type NativeRuntime = Runtime; /// Kernels. - type NativeKernel = BasicKernel; - type ZkKernel = BasicKernel; + type NativeKernel = BasicKernel; + type ZkKernel = BasicKernel; /// Prover service. type ProverService = ParallelProverService< - <::Storage as Storage>::Root, - <::Storage as Storage>::Witness, + <::Storage as Storage>::Root, + <::Storage as Storage>::Witness, Self::DaService, Self::Vm, StfBlueprint< - Self::ZkContext, + Self::ZkSpec, Self::DaSpec, - ::Guest, + <::Guest as ZkvmGuest>::Verifier, Self::ZkRuntime, Self::ZkKernel, >, @@ -73,7 +75,7 @@ impl RollupBlueprint for MockRollup { /// This function generates RPC methods for the rollup, allowing for extension with custom endpoints. fn create_rpc_methods( &self, - storage: Arc::Storage>>, + storage: Arc::Storage>>, ledger_db: &LedgerDB, da_service: &Self::DaService, ) -> Result, anyhow::Error> { @@ -83,7 +85,7 @@ impl RollupBlueprint for MockRollup { #[allow(unused_mut)] let mut rpc_methods = sov_modules_rollup_blueprint::register_rpc::< Self::NativeRuntime, - Self::NativeContext, + Self::NativeSpec, Self::DaService, >(storage, ledger_db, da_service, sequencer)?; diff --git a/crates/stf/Cargo.toml b/crates/stf/Cargo.toml index d38889c..d23e5d5 100644 --- a/crates/stf/Cargo.toml +++ b/crates/stf/Cargo.toml @@ -28,11 +28,8 @@ jsonrpsee = { workspace = true, features = ["jsonrpsee-types"], optional = true borsh = { workspace = true, features = ["rc", "bytes"] } clap = { workspace = true, features = ["derive"], optional = true } - - - [features] -default = ["serde"] +default = [] native = [ "sov-modules-api/native", "sov-accounts/native", @@ -44,11 +41,4 @@ native = [ "jsonrpsee", "sov-sequencer", "clap", - "serde", -] -serde = [ - "sov-accounts/serde", - "sov-bank/serde", - "sov-modules-api/serde", - "sov-sequencer-registry/serde", ] diff --git a/crates/stf/src/genesis_config.rs b/crates/stf/src/genesis_config.rs index 5b0eb5c..0a5f30a 100644 --- a/crates/stf/src/genesis_config.rs +++ b/crates/stf/src/genesis_config.rs @@ -3,7 +3,7 @@ use std::path::{Path, PathBuf}; use anyhow::{bail, Context as _}; use sov_accounts::AccountConfig; use sov_bank::BankConfig; -use sov_modules_api::{Context, DaSpec}; +use sov_modules_api::{Spec, DaSpec}; use sov_modules_stf_blueprint::Runtime as RuntimeTrait; use sov_sequencer_registry::SequencerConfig; use sov_stf_runner::read_json_file; @@ -37,19 +37,19 @@ impl GenesisPaths { } /// Creates genesis configuration. -pub(crate) fn get_genesis_config( +pub(crate) fn get_genesis_config( genesis_paths: &GenesisPaths, -) -> Result< as RuntimeTrait>::GenesisConfig, anyhow::Error> { +) -> Result< as RuntimeTrait>::GenesisConfig, anyhow::Error> { let genesis_config = create_genesis_config(genesis_paths).context("Unable to read genesis configuration")?; validate_config(genesis_config) } -fn validate_config( - genesis_config: as RuntimeTrait>::GenesisConfig, -) -> Result< as RuntimeTrait>::GenesisConfig, anyhow::Error> { - let token_address = &sov_bank::get_genesis_token_address::( +fn validate_config( + genesis_config: as RuntimeTrait>::GenesisConfig, +) -> Result< as RuntimeTrait>::GenesisConfig, anyhow::Error> { + let token_address = &sov_bank::get_genesis_token_address::( &genesis_config.bank.tokens[0].token_name, genesis_config.bank.tokens[0].salt, ); @@ -70,12 +70,12 @@ fn validate_config( Ok(genesis_config) } -fn create_genesis_config( +fn create_genesis_config( genesis_paths: &GenesisPaths, -) -> anyhow::Result> { - let accounts_config: AccountConfig = read_json_file(&genesis_paths.accounts_genesis_path)?; - let bank_config: BankConfig = read_json_file(&genesis_paths.bank_genesis_path)?; - let sequencer_registry_config: SequencerConfig = +) -> anyhow::Result> { + let accounts_config: AccountConfig = read_json_file(&genesis_paths.accounts_genesis_path)?; + let bank_config: BankConfig = read_json_file(&genesis_paths.bank_genesis_path)?; + let sequencer_registry_config: SequencerConfig = read_json_file(&genesis_paths.sequencer_genesis_path)?; Ok(GenesisConfig::new( diff --git a/crates/stf/src/hooks.rs b/crates/stf/src/hooks.rs index aa0ebca..71c376b 100644 --- a/crates/stf/src/hooks.rs +++ b/crates/stf/src/hooks.rs @@ -12,24 +12,24 @@ use sov_modules_api::runtime::capabilities::{ }; use sov_modules_api::transaction::Transaction; use sov_modules_api::{ - AccessoryStateCheckpoint, BlobReaderTrait, Context, DaSpec, Spec, StateCheckpoint, WorkingSet, + AccessoryStateCheckpoint, BlobReaderTrait, Context, Gas, DaSpec, Spec, StateCheckpoint, WorkingSet, }; use sov_modules_stf_blueprint::SequencerOutcome; use sov_sequencer_registry::SequencerRegistry; use sov_state::Storage; use tracing::info; -impl GasEnforcer for Runtime { +impl GasEnforcer for Runtime { /// The transaction type that the gas enforcer knows how to parse - type Tx = Transaction; + type Tx = Transaction; /// Reserves enough gas for the transaction to be processed, if possible. fn try_reserve_gas( &self, tx: &Self::Tx, - context: &C, - gas_price: &C::GasUnit, - mut state_checkpoint: StateCheckpoint, - ) -> Result, StateCheckpoint> { + context: &Context, + gas_price: &::Price, + mut state_checkpoint: StateCheckpoint, + ) -> Result, StateCheckpoint> { match self .bank .reserve_gas(tx, gas_price, context.sender(), &mut state_checkpoint) @@ -46,25 +46,25 @@ impl GasEnforcer for Runtime { fn refund_remaining_gas( &self, tx: &Self::Tx, - context: &C, - gas_meter: &sov_modules_api::GasMeter, - state_checkpoint: &mut StateCheckpoint, + context: &Context, + gas_meter: &sov_modules_api::GasMeter, + state_checkpoint: &mut StateCheckpoint, ) { self.bank .refund_remaining_gas(tx, gas_meter, context.sender(), state_checkpoint); } } -impl TransactionDeduplicator for Runtime { +impl TransactionDeduplicator for Runtime { /// The transaction type that the deduplicator knows how to parse. - type Tx = Transaction; + type Tx = Transaction; /// Prevents duplicate transactions from running. // TODO(@preston-evans98): Use type system to prevent writing to the `StateCheckpoint` during this check fn check_uniqueness( &self, tx: &Self::Tx, - context: &C, - state_checkpoint: &mut StateCheckpoint, + context: &Context, + state_checkpoint: &mut StateCheckpoint, ) -> Result<(), anyhow::Error> { self.accounts .check_uniqueness(tx, context, state_checkpoint) @@ -75,24 +75,24 @@ impl TransactionDeduplicator for Runtime { &self, tx: &Self::Tx, _sequencer: &Da::Address, - state_checkpoint: &mut StateCheckpoint, + state_checkpoint: &mut StateCheckpoint, ) { self.accounts.mark_tx_attempted(tx, state_checkpoint); } } /// Resolves the context for a transaction. -impl ContextResolver for Runtime { +impl ContextResolver for Runtime { /// The transaction type that the resolver knows how to parse. - type Tx = Transaction; + type Tx = Transaction; /// Resolves the context for a transaction. fn resolve_context( &self, tx: &Self::Tx, sequencer: &Da::Address, height: u64, - working_set: &mut StateCheckpoint, - ) -> C { + working_set: &mut StateCheckpoint, + ) -> Context { // TODO(@preston-evans98): This is a temporary hack to get the sequencer address // This should be resolved by the sequencer registry during blob selection let sequencer = self @@ -100,52 +100,52 @@ impl ContextResolver for Runtime { .resolve_da_address(sequencer, working_set) .ok_or(anyhow::anyhow!("Sequencer was no longer registered by the time of context resolution. This is a bug")).unwrap(); let sender = self.accounts.resolve_sender_address(tx, working_set); - C::new(sender, sequencer, height) + Context::new(sender, sequencer, height) } } -impl TxHooks for Runtime { - type Context = C; +impl TxHooks for Runtime { + type Spec = S; fn pre_dispatch_tx_hook( &self, - _tx: &Transaction, - _working_set: &mut WorkingSet, + _tx: &Transaction, + _working_set: &mut WorkingSet, ) -> anyhow::Result<()> { Ok(()) } fn post_dispatch_tx_hook( &self, - _tx: &Transaction, - _ctx: &C, - _working_set: &mut WorkingSet, + _tx: &Transaction, + _ctx: &Context, + _working_set: &mut WorkingSet, ) -> anyhow::Result<()> { Ok(()) } } -impl ApplyBatchHooks for Runtime { - type Context = C; +impl ApplyBatchHooks for Runtime { + type Spec = S; type BatchResult = - SequencerOutcome<<::BlobTransaction as BlobReaderTrait>::Address>; + SequencerOutcome<<::BlobTransaction as BlobReaderTrait>::Address>; fn begin_batch_hook( &self, batch: &mut BatchWithId, sender: &Da::Address, - working_set: &mut StateCheckpoint, + working_set: &mut StateCheckpoint, ) -> anyhow::Result<()> { // Before executing each batch, check that the sender is registered as a sequencer self.sequencer_registry .begin_batch_hook(batch, sender, working_set) } - fn end_batch_hook(&self, result: Self::BatchResult, state_checkpoint: &mut StateCheckpoint) { + fn end_batch_hook(&self, result: Self::BatchResult, state_checkpoint: &mut StateCheckpoint) { match result { SequencerOutcome::Rewarded(reward) => { // TODO: Process reward here or above. - as ApplyBatchHooks>::end_batch_hook( + as ApplyBatchHooks>::end_batch_hook( &self.sequencer_registry, sov_sequencer_registry::SequencerOutcome::Rewarded { amount: reward }, state_checkpoint, @@ -157,7 +157,7 @@ impl ApplyBatchHooks for Runtime { sequencer_da_address, } => { info!(%sequencer_da_address, ?reason, "Slashing sequencer"); - as ApplyBatchHooks>::end_batch_hook( + as ApplyBatchHooks>::end_batch_hook( &self.sequencer_registry, sov_sequencer_registry::SequencerOutcome::Slashed { sequencer: sequencer_da_address, @@ -167,7 +167,7 @@ impl ApplyBatchHooks for Runtime { } SequencerOutcome::Penalized(amount) => { info!(amount, "Penalizing sequencer"); - as ApplyBatchHooks>::end_batch_hook( + as ApplyBatchHooks>::end_batch_hook( &self.sequencer_registry, sov_sequencer_registry::SequencerOutcome::Penalized { amount }, state_checkpoint, @@ -177,26 +177,26 @@ impl ApplyBatchHooks for Runtime { } } -impl SlotHooks for Runtime { - type Context = C; +impl SlotHooks for Runtime { + type Spec = S; fn begin_slot_hook( &self, - _pre_state_root: &<::Storage as Storage>::Root, - _versioned_working_set: &mut sov_modules_api::VersionedStateReadWriter>, + _pre_state_root: &<::Storage as Storage>::Root, + _versioned_working_set: &mut sov_modules_api::VersionedStateReadWriter>, ) { } - fn end_slot_hook(&self, _working_set: &mut StateCheckpoint) {} + fn end_slot_hook(&self, _working_set: &mut StateCheckpoint) {} } -impl FinalizeHook for Runtime { - type Context = C; +impl FinalizeHook for Runtime { + type Spec = S; fn finalize_hook( &self, - _root_hash: &<::Storage as Storage>::Root, - _accessory_working_set: &mut AccessoryStateCheckpoint, + _root_hash: &<::Storage as Storage>::Root, + _accessory_working_set: &mut AccessoryStateCheckpoint, ) { } } diff --git a/crates/stf/src/lib.rs b/crates/stf/src/lib.rs index f794187..6e9c49e 100644 --- a/crates/stf/src/lib.rs +++ b/crates/stf/src/lib.rs @@ -7,10 +7,14 @@ pub mod runtime; pub use runtime::*; use sov_modules_stf_blueprint::StfBlueprint; use sov_rollup_interface::da::DaVerifier; +use sov_rollup_interface::zk::ZkvmGuest; use sov_stf_runner::verifier::StateTransitionVerifier; /// Alias for StateTransitionVerifier. -pub type StfVerifier = - StateTransitionVerifier::Spec, Vm, RT, K>, DA, Vm>; +pub type StfVerifier = StateTransitionVerifier< + StfBlueprint::Spec, ::Verifier, RT, K>, + DA, + Vm, +>; pub use sov_mock_da::MockDaSpec; diff --git a/crates/stf/src/runtime.rs b/crates/stf/src/runtime.rs index cc22c88..d7fe3bf 100644 --- a/crates/stf/src/runtime.rs +++ b/crates/stf/src/runtime.rs @@ -9,10 +9,8 @@ pub use sov_accounts::{AccountsRpcImpl, AccountsRpcServer}; #[cfg(feature = "native")] pub use sov_bank::{BankRpcImpl, BankRpcServer}; -#[cfg(feature = "native")] -use sov_modules_api::Spec; use sov_modules_api::{macros::DefaultRuntime, Event}; -use sov_modules_api::{Context, DaSpec, DispatchCall, Genesis, MessageCodec}; +use sov_modules_api::{Spec, DaSpec, DispatchCall, Genesis, MessageCodec}; #[cfg(feature = "native")] pub use sov_sequencer_registry::{SequencerRegistryRpcImpl, SequencerRegistryRpcServer}; @@ -55,32 +53,36 @@ use crate::genesis_config::GenesisPaths; sov_modules_api::macros::expose_rpc )] #[derive(Genesis, DispatchCall, Event, MessageCodec, DefaultRuntime)] -#[serialization(borsh::BorshDeserialize, borsh::BorshSerialize)] -#[cfg_attr(feature = "serde", serialization(serde::Serialize, serde::Deserialize))] -pub struct Runtime { +#[serialization( +borsh::BorshDeserialize, +borsh::BorshSerialize, +serde::Serialize, +serde::Deserialize +)] +pub struct Runtime { /// The `accounts` module is responsible for managing user accounts and their nonces - pub accounts: sov_accounts::Accounts, + pub accounts: sov_accounts::Accounts, /// The bank module is responsible for minting, transferring, and burning tokens - pub bank: sov_bank::Bank, + pub bank: sov_bank::Bank, /// The sequencer registry module is responsible for authorizing users to sequencer rollup transactions - pub sequencer_registry: sov_sequencer_registry::SequencerRegistry, + pub sequencer_registry: sov_sequencer_registry::SequencerRegistry, } -impl sov_modules_stf_blueprint::Runtime for Runtime +impl sov_modules_stf_blueprint::Runtime for Runtime where - C: Context, + S: Spec, Da: DaSpec, { - type GenesisConfig = GenesisConfig; + type GenesisConfig = GenesisConfig; #[cfg(feature = "native")] type GenesisPaths = GenesisPaths; #[cfg(feature = "native")] fn rpc_methods( - storage: std::sync::Arc::Storage>>, + storage: std::sync::Arc::Storage>>, ) -> jsonrpsee::RpcModule<()> { - get_rpc_methods::(storage) + get_rpc_methods::(storage) } #[cfg(feature = "native")] From 797adb86a0e51a11ecfa1f75c98d222299aa9e1b Mon Sep 17 00:00:00 2001 From: dubbelosix Date: Mon, 26 Feb 2024 07:30:53 +0530 Subject: [PATCH 02/12] update README with event fetch instructions --- README.md | 36 +++++++++++++++++++++++++++++++----- 1 file changed, 31 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 3e78e03..ed13477 100644 --- a/README.md +++ b/README.md @@ -32,19 +32,31 @@ $ cargo run --bin node $ make test-create-token ``` -#### 5. Wait for the transaction to be submitted. +#### 5. Note the transaction hash from the output of the above command + +```text +Your batch was submitted to the sequencer for publication. Response: "Submitted 1 transactions" +0: 633764b4ac1e0a6259d786e4a2b8b916f16c2c9690359d8b53995fd6d80747cd +``` + +#### 6. Wait for the transaction to be submitted. ```sh,test-ci $ make wait-ten-seconds ``` +#### 7. To get the token address, fetch the events of the transaction hash from #5 +```bash,test-ci +curl -X POST -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","method":"ledger_getEventsByTxnHash","params":["633764b4ac1e0a6259d786e4a2b8b916f16c2c9690359d8b53995fd6d80747cd"],"id":1}' http://127.0.0.1:12345 +{"jsonrpc":"2.0","result":[{"event_value":{"TokenCreated":{"token_address":"sov1zdwj8thgev2u3yyrrlekmvtsz4av4tp3m7dm5mx5peejnesga27svq9m72"}},"module_name":"bank","module_address":"sov1r5glamudyy9ysysfjkwu3wf9cjqs98e47tzc6pxuqlp48phqk36sthwg6h"}],"id":1} +``` -#### 6. Test if token creation succeeded: +#### 8. Test if token creation succeeded: ```sh,test-ci $ make test-bank-supply-of ``` -#### 7. The output of the above script: +#### 9. The output of the above script: ```bash,test-ci,bashtestmd:compare-output $ curl -X POST -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","method":"bank_supplyOf","params":{"token_address":"sov1zdwj8thgev2u3yyrrlekmvtsz4av4tp3m7dm5mx5peejnesga27svq9m72"},"id":1}' http://127.0.0.1:12345 @@ -86,14 +98,28 @@ Using `CELESTIA=1` will enable the client to be built with Celestia support and $ CELESTIA=1 make test-create-token ``` -#### 6. Test if token creation succeeded: +#### 6. Note the transaction hash from the output of the above command + +```text +Your batch was submitted to the sequencer for publication. Response: "Submitted 1 transactions" +0: 633764b4ac1e0a6259d786e4a2b8b916f16c2c9690359d8b53995fd6d80747cd +``` + + +#### 7. To get the token address, fetch the events of the transaction hash from #5 +```bash,test-ci +curl -X POST -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","method":"ledger_getEventsByTxnHash","params":["633764b4ac1e0a6259d786e4a2b8b916f16c2c9690359d8b53995fd6d80747cd"],"id":1}' http://127.0.0.1:12345 +{"jsonrpc":"2.0","result":[{"event_value":{"TokenCreated":{"token_address":"sov1zdwj8thgev2u3yyrrlekmvtsz4av4tp3m7dm5mx5peejnesga27svq9m72"}},"module_name":"bank","module_address":"sov1r5glamudyy9ysysfjkwu3wf9cjqs98e47tzc6pxuqlp48phqk36sthwg6h"}],"id":1} +``` + +#### 8. Test if token creation succeeded: ``` $ make test-bank-supply-of ``` -#### 7. The output of the above script: +#### 9. The output of the above script: ``` $ curl -X POST -H "Content-Type: application/json" -d '{"jsonrpc":"2.0","method":"bank_supplyOf","params":{"token_address":"sov1zdwj8thgev2u3yyrrlekmvtsz4av4tp3m7dm5mx5peejnesga27svq9m72"},"id":1}' http://127.0.0.1:12345 From 178656f72094392520c8a270d57c1fe82f9d9d7a Mon Sep 17 00:00:00 2001 From: dubbelosix Date: Mon, 26 Feb 2024 15:46:31 +0530 Subject: [PATCH 03/12] risc0 toolchain changes to match sovereign-sdk --- .github/workflows/rust.yml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index e317764..5b0ecb4 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -25,10 +25,12 @@ jobs: repo-token: ${{ secrets.GITHUB_TOKEN }} - name: Cache dependencies uses: Swatinem/rust-cache@v2 - - name: Install cargo-risc0 # Risc0 v0.17 and higher require a cargo extension to build the guest code - run: cargo install cargo-risczero + - name: Install cargo-risczero + uses: taiki-e/install-action@v2 + with: + tool: cargo-risczero@0.20 - name: Install risc0-zkvm toolchain # Use the risc0 cargo extension to install the risc0 std library for the current toolchain - run: cargo risczero install + run: cargo risczero install --version v2024-02-08.1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Build From 3507716bc7b60b69b351551993894d2a17b2fc62 Mon Sep 17 00:00:00 2001 From: dubbelosix Date: Mon, 26 Feb 2024 17:37:42 +0530 Subject: [PATCH 04/12] fix tests --- Cargo.lock | 69 +++++++++++++++++++++++++++++++-- Cargo.toml | 1 + crates/rollup/Cargo.toml | 1 + crates/rollup/tests/bank/mod.rs | 25 ++++++------ 4 files changed, 82 insertions(+), 14 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 432ad35..a0dec55 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1058,7 +1058,7 @@ dependencies = [ "cfg-if", "cpufeatures", "crypto-bigint 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", - "curve25519-dalek-derive", + "curve25519-dalek-derive 0.1.0", "digest 0.10.7", "fiat-crypto", "hex", @@ -1068,6 +1068,23 @@ dependencies = [ "zeroize", ] +[[package]] +name = "curve25519-dalek" +version = "4.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0a677b8922c94e01bdbb12126b0bc852f00447528dee1782229af9c720c3f348" +dependencies = [ + "cfg-if", + "cpufeatures", + "curve25519-dalek-derive 0.1.1", + "digest 0.10.7", + "fiat-crypto", + "platforms", + "rustc_version 0.4.0", + "subtle", + "zeroize", +] + [[package]] name = "curve25519-dalek-derive" version = "0.1.0" @@ -1078,6 +1095,17 @@ dependencies = [ "syn 2.0.50", ] +[[package]] +name = "curve25519-dalek-derive" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.50", +] + [[package]] name = "curve25519-dalek-ng" version = "4.1.1" @@ -1276,7 +1304,22 @@ name = "ed25519-dalek" version = "2.0.0" source = "git+https://github.com/risc0/curve25519-dalek?tag=curve25519-4.1.0-risczero.1#42c4faf7dc3f640a7e3f7e4cbf43e7d5d6d46b67" dependencies = [ - "curve25519-dalek", + "curve25519-dalek 4.1.0", + "ed25519", + "rand_core", + "serde", + "sha2 0.10.8", + "subtle", + "zeroize", +] + +[[package]] +name = "ed25519-dalek" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a3daa8e81a3963a60642bcc1f90a670680bd4a77535faa384e9d1c79d620871" +dependencies = [ + "curve25519-dalek 4.1.2", "ed25519", "rand_core", "serde", @@ -4019,6 +4062,25 @@ dependencies = [ "tokio", ] +[[package]] +name = "sov-mock-zkvm" +version = "0.3.0" +source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" +dependencies = [ + "anyhow", + "bincode", + "borsh", + "ed25519-dalek 2.1.1", + "hex", + "rand", + "schemars", + "serde", + "sha2 0.10.8", + "sov-modules-api", + "sov-rollup-interface", + "thiserror", +] + [[package]] name = "sov-modules-api" version = "0.3.0" @@ -4146,7 +4208,7 @@ dependencies = [ "borsh", "bytemuck", "crypto-bigint 0.5.2 (git+https://github.com/risc0/RustCrypto-crypto-bigint?tag=v0.5.2-risc0)", - "ed25519-dalek", + "ed25519-dalek 2.0.0", "hex", "rand", "risc0-circuit-rv32im", @@ -4201,6 +4263,7 @@ dependencies = [ "sov-db", "sov-ledger-rpc", "sov-mock-da", + "sov-mock-zkvm", "sov-modules-api", "sov-modules-rollup-blueprint", "sov-modules-stf-blueprint", diff --git a/Cargo.toml b/Cargo.toml index 9d5eedd..a5c63bc 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -29,6 +29,7 @@ sov-db = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", re sov-sequencer = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } sov-rollup-interface = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } sov-risc0-adapter = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } +sov-mock-zkvm = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } sov-first-read-last-write-cache = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } sov-cli = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } sov-mock-da = { git = "ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git", rev = "5a144d60eefaf9ce166bbfd66324b959aa4ae82b" } diff --git a/crates/rollup/Cargo.toml b/crates/rollup/Cargo.toml index 0138d72..8d7555b 100644 --- a/crates/rollup/Cargo.toml +++ b/crates/rollup/Cargo.toml @@ -48,6 +48,7 @@ tracing-subscriber = { version = "0.3.17", features = ["env-filter"] } [dev-dependencies] tempfile = { workspace = true } +sov-mock-zkvm = { workspace = true, features = ["native", "sov-modules"] } [features] default = ["mock_da"] # set mock_da as the default feature diff --git a/crates/rollup/tests/bank/mod.rs b/crates/rollup/tests/bank/mod.rs index 3d9fa97..f1f74b6 100644 --- a/crates/rollup/tests/bank/mod.rs +++ b/crates/rollup/tests/bank/mod.rs @@ -5,10 +5,8 @@ use borsh::BorshSerialize; use jsonrpsee::core::client::{Subscription, SubscriptionClientT}; use jsonrpsee::rpc_params; use sov_mock_da::MockDaSpec; -use sov_modules_api::default_context::DefaultContext; -use sov_modules_api::default_signature::private_key::DefaultPrivateKey; use sov_modules_api::transaction::Transaction; -use sov_modules_api::{PrivateKey, Spec}; +use sov_modules_api::{PrivateKey, Spec, CryptoSpec}; use sov_modules_stf_blueprint::kernels::basic::BasicKernelGenesisPaths; use sov_sequencer::utils::SimpleClient; use sov_stf_runner::RollupProverConfig; @@ -18,6 +16,9 @@ use stf_starter::RuntimeCall; const TOKEN_SALT: u64 = 0; const TOKEN_NAME: &str = "test_token"; +type DefaultSpec = sov_modules_api::default_spec::DefaultSpec; +type DefaultPrivateKey = <::CryptoSpec as CryptoSpec>::PrivateKey; + #[tokio::test] async fn bank_tx_tests() -> Result<(), anyhow::Error> { let (port_tx, port_rx) = tokio::sync::oneshot::channel(); @@ -46,16 +47,18 @@ async fn bank_tx_tests() -> Result<(), anyhow::Error> { async fn send_test_create_token_tx(rpc_address: SocketAddr) -> Result<(), anyhow::Error> { let key = DefaultPrivateKey::generate(); - let user_address: ::Address = key.to_address(); + let user_address: ::Address = key.to_address(); - let token_address = sov_bank::get_token_address::( + let token_address = sov_bank::get_token_address::( TOKEN_NAME, - user_address.as_ref(), + &user_address, TOKEN_SALT, ); - let msg = RuntimeCall::::bank(sov_bank::CallMessage::< - DefaultContext, + + + let msg = RuntimeCall::::bank(sov_bank::CallMessage::< + DefaultSpec, >::CreateToken { salt: TOKEN_SALT, token_name: TOKEN_NAME.to_string(), @@ -67,8 +70,8 @@ async fn send_test_create_token_tx(rpc_address: SocketAddr) -> Result<(), anyhow let gas_tip = 0; let gas_limit = 0; let nonce = 0; - let max_gas_price = [10_000; 2].into(); - let tx = Transaction::::new_signed_tx( + let max_gas_price = None; + let tx = Transaction::::new_signed_tx( &key, msg.try_to_vec().unwrap(), chain_id, @@ -95,7 +98,7 @@ async fn send_test_create_token_tx(rpc_address: SocketAddr) -> Result<(), anyhow // Wait until the rollup has processed the next slot let _ = slot_processed_subscription.next().await; - let balance_response = sov_bank::BankRpcClient::::balance_of( + let balance_response = sov_bank::BankRpcClient::::balance_of( client.http(), None, user_address, From 91977e3e38bf92baa0539fb2c5bb04a69033d898 Mon Sep 17 00:00:00 2001 From: Soares Chen Date: Fri, 8 Mar 2024 11:51:39 +0100 Subject: [PATCH 05/12] Updating Nix depedency --- .../provers/risc0/guest-celestia/Cargo.lock | 89 ++++++++++++------- .../provers/risc0/guest-celestia/Cargo.toml | 3 + nix/rollup.nix | 15 ++-- 3 files changed, 69 insertions(+), 38 deletions(-) diff --git a/crates/provers/risc0/guest-celestia/Cargo.lock b/crates/provers/risc0/guest-celestia/Cargo.lock index 68ec218..578ce52 100644 --- a/crates/provers/risc0/guest-celestia/Cargo.lock +++ b/crates/provers/risc0/guest-celestia/Cargo.lock @@ -426,6 +426,15 @@ dependencies = [ "hashbrown 0.13.2", ] +[[package]] +name = "borsh" +version = "1.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f58b559fd6448c6e2fd0adb5720cd98a2506594cafa4737ff98c396f3e82f667" +dependencies = [ + "cfg_aliases", +] + [[package]] name = "borsh-derive" version = "0.10.3" @@ -556,6 +565,12 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +[[package]] +name = "cfg_aliases" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" + [[package]] name = "cid" version = "0.10.1" @@ -1105,7 +1120,7 @@ name = "ibc-app-transfer-types" version = "0.50.0" source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" dependencies = [ - "borsh", + "borsh 0.10.3", "derive_more", "displaydoc", "ibc-core", @@ -1186,7 +1201,7 @@ name = "ibc-core-channel-types" version = "0.50.0" source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" dependencies = [ - "borsh", + "borsh 0.10.3", "derive_more", "displaydoc", "ibc-core-client-types", @@ -1236,7 +1251,7 @@ name = "ibc-core-client-types" version = "0.50.0" source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" dependencies = [ - "borsh", + "borsh 0.10.3", "derive_more", "displaydoc", "ibc-core-commitment-types", @@ -1254,7 +1269,7 @@ name = "ibc-core-commitment-types" version = "0.50.0" source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" dependencies = [ - "borsh", + "borsh 0.10.3", "derive_more", "displaydoc", "ibc-primitives", @@ -1282,7 +1297,7 @@ name = "ibc-core-connection-types" version = "0.50.0" source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" dependencies = [ - "borsh", + "borsh 0.10.3", "derive_more", "displaydoc", "ibc-core-client-types", @@ -1316,7 +1331,7 @@ name = "ibc-core-handler-types" version = "0.50.0" source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" dependencies = [ - "borsh", + "borsh 0.10.3", "derive_more", "displaydoc", "ibc-core-channel-types", @@ -1356,7 +1371,7 @@ name = "ibc-core-host-types" version = "0.50.0" source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" dependencies = [ - "borsh", + "borsh 0.10.3", "derive_more", "displaydoc", "ibc-primitives", @@ -1383,7 +1398,7 @@ name = "ibc-core-router-types" version = "0.50.0" source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" dependencies = [ - "borsh", + "borsh 0.10.3", "derive_more", "displaydoc", "ibc-core-host-types", @@ -1410,7 +1425,7 @@ name = "ibc-primitives" version = "0.50.0" source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" dependencies = [ - "borsh", + "borsh 0.10.3", "derive_more", "displaydoc", "ibc-proto", @@ -1427,7 +1442,7 @@ version = "0.41.0" source = "git+https://github.com/cosmos/ibc-proto-rs.git?rev=1b1d7a9#1b1d7a94c012d2e23527c438acb2599833f0153f" dependencies = [ "base64", - "borsh", + "borsh 0.10.3", "bytes", "flex-error", "ics23", @@ -1555,7 +1570,7 @@ version = "0.9.0" source = "git+https://github.com/penumbra-zone/jmt.git?rev=1d007e11cb68aa5ca13e9a5af4a12e6439d5f7b6#1d007e11cb68aa5ca13e9a5af4a12e6439d5f7b6" dependencies = [ "anyhow", - "borsh", + "borsh 0.10.3", "digest 0.10.7", "hashbrown 0.13.2", "hex", @@ -1677,7 +1692,7 @@ name = "nmt-rs" version = "0.1.0" source = "git+https://github.com/Sovereign-Labs/nmt-rs.git?rev=d821332#d821332baa03aea625d23060dc239af57b9121f5" dependencies = [ - "borsh", + "borsh 0.10.3", "bytes", "serde", "sha2 0.10.8", @@ -2141,6 +2156,18 @@ dependencies = [ "rand_core", ] +[[package]] +name = "risc0-cycle-macros" +version = "0.3.0" +source = "git+https://github.com/Sovereign-Labs/risc0-cycle-macros.git?rev=98948b8ee0e3edffcee7f3bd95a9d93c5c0941af#98948b8ee0e3edffcee7f3bd95a9d93c5c0941af" +dependencies = [ + "anyhow", + "borsh 1.3.1", + "proc-macro2", + "quote", + "syn 2.0.52", +] + [[package]] name = "risc0-cycle-utils" version = "0.3.0" @@ -2486,7 +2513,7 @@ name = "sov-accounts" version = "0.3.0" dependencies = [ "anyhow", - "borsh", + "borsh 0.10.3", "serde", "sov-modules-api", "sov-state", @@ -2498,7 +2525,7 @@ name = "sov-bank" version = "0.3.0" dependencies = [ "anyhow", - "borsh", + "borsh 0.10.3", "serde", "sov-modules-api", "sov-state", @@ -2511,7 +2538,7 @@ version = "0.3.0" dependencies = [ "anyhow", "bincode", - "borsh", + "borsh 0.10.3", "hex", "serde", "sov-chain-state", @@ -2528,7 +2555,7 @@ dependencies = [ "anyhow", "async-trait", "bech32", - "borsh", + "borsh 0.10.3", "celestia-proto", "celestia-types", "hex", @@ -2584,7 +2611,7 @@ name = "sov-chain-state" version = "0.3.0" dependencies = [ "anyhow", - "borsh", + "borsh 0.10.3", "serde", "sov-modules-api", "sov-state", @@ -2597,6 +2624,8 @@ version = "0.3.0" dependencies = [ "ahash", "anyhow", + "risc0-cycle-macros", + "risc0-cycle-utils", "risc0-zkvm", "risc0-zkvm-platform", "sov-celestia-adapter", @@ -2617,7 +2646,7 @@ dependencies = [ "ahash", "anyhow", "base64", - "borsh", + "borsh 0.10.3", "derive_more", "ibc-app-transfer", "ibc-client-tendermint", @@ -2642,7 +2671,7 @@ source = "git+https://github.com/informalsystems/sovereign-ibc.git?rev=e67de8#e6 dependencies = [ "anyhow", "base64", - "borsh", + "borsh 0.10.3", "ibc-app-transfer", "ibc-core", "prost", @@ -2660,7 +2689,7 @@ version = "0.3.0" dependencies = [ "anyhow", "async-trait", - "borsh", + "borsh 0.10.3", "bytes", "hex", "serde", @@ -2674,7 +2703,7 @@ version = "0.3.0" dependencies = [ "anyhow", "bech32", - "borsh", + "borsh 0.10.3", "derive_more", "hex", "serde", @@ -2693,7 +2722,7 @@ version = "0.3.0" dependencies = [ "anyhow", "bech32", - "borsh", + "borsh 0.10.3", "derivative", "derive_more", "digest 0.10.7", @@ -2712,7 +2741,7 @@ name = "sov-modules-macros" version = "0.3.0" dependencies = [ "anyhow", - "borsh", + "borsh 0.10.3", "proc-macro2", "quote", "schemars", @@ -2725,7 +2754,7 @@ name = "sov-modules-stf-blueprint" version = "0.3.0" dependencies = [ "anyhow", - "borsh", + "borsh 0.10.3", "hex", "serde", "sov-blob-storage", @@ -2744,7 +2773,7 @@ version = "0.3.0" dependencies = [ "anyhow", "bincode", - "borsh", + "borsh 0.10.3", "bytemuck", "crypto-bigint", "ed25519-dalek", @@ -2765,7 +2794,7 @@ version = "0.3.0" dependencies = [ "anyhow", "async-trait", - "borsh", + "borsh 0.10.3", "bytes", "digest 0.10.7", "futures", @@ -2782,7 +2811,7 @@ name = "sov-sequencer-registry" version = "0.3.0" dependencies = [ "anyhow", - "borsh", + "borsh 0.10.3", "serde", "sov-bank", "sov-modules-api", @@ -2795,7 +2824,7 @@ version = "0.3.0" dependencies = [ "anyhow", "bcs", - "borsh", + "borsh 0.10.3", "derivative", "hex", "jmt", @@ -2812,7 +2841,7 @@ name = "sov-stf-runner" version = "0.3.0" dependencies = [ "anyhow", - "borsh", + "borsh 0.10.3", "hex", "num_cpus", "serde", @@ -2841,7 +2870,7 @@ name = "stf-starter" version = "0.3.0" dependencies = [ "anyhow", - "borsh", + "borsh 0.10.3", "serde", "serde_json", "sov-accounts", diff --git a/crates/provers/risc0/guest-celestia/Cargo.toml b/crates/provers/risc0/guest-celestia/Cargo.toml index be33203..a885302 100644 --- a/crates/provers/risc0/guest-celestia/Cargo.toml +++ b/crates/provers/risc0/guest-celestia/Cargo.toml @@ -23,6 +23,9 @@ sov-modules-stf-blueprint = { path = "../../../../vendor/sovereign-sdk/mod sov-risc0-adapter = { path = "../../../../vendor/sovereign-sdk/adapters/risc0" } sov-state = { path = "../../../../vendor/sovereign-sdk/module-system/sov-state" } +risc0-cycle-macros = { git = "https://github.com/Sovereign-Labs/risc0-cycle-macros.git", rev = "98948b8ee0e3edffcee7f3bd95a9d93c5c0941af" } +risc0-cycle-utils = { git = "https://github.com/Sovereign-Labs/risc0-cycle-macros.git", rev = "98948b8ee0e3edffcee7f3bd95a9d93c5c0941af" } + [patch.crates-io] sha2 = { git = "https://github.com/risc0/RustCrypto-hashes", tag = "sha2-v0.10.8-risczero.0" } ed25519-dalek = { git = "https://github.com/risc0/curve25519-dalek", tag = "curve25519-4.1.0-risczero.1" } diff --git a/nix/rollup.nix b/nix/rollup.nix index 3e4d826..d5f73a4 100644 --- a/nix/rollup.nix +++ b/nix/rollup.nix @@ -86,17 +86,16 @@ let lockFile = ../crates/provers/risc0/guest-celestia/Cargo.lock; outputHashes = { "celestia-proto-0.1.0" = "sha256-iUgrctxdJUyhfrEQ0zoVj5AKIqgj/jQVNli5/K2nxK0="; - "ibc-app-transfer-0.50.0" = "sha256-4pjCPDzjVrNGQ3IBJvptA73Bu8G7QZGubokeuryCB6A="; - "ibc-proto-0.41.0" = "sha256-uUfB6K/WuLb2+OMX8MB2r5ptFsgkF3OVbBWFFMRdlTw="; - "jmt-0.9.0" = "sha256-pq1v6FXS//6Dh+fdysQIVp+RVLHdXrW5aDx3263O1rs="; - "nmt-rs-0.1.0" = "sha256-jcHbqyIKk8ZDDjSz+ot5YDxROOnrpM4TRmNFVfNniwU="; - "tendermint-0.32.0" = "sha256-FtY7a+hBvQryATrs3mykCWFRe8ABTT6cuf5oh9IBElQ="; - "risc0-binfmt-0.19.1" = "sha256-Av3rpNhDny8FroOcn8eyvZcR8hFSNukA7n9impm1HHU="; "crypto-bigint-0.5.2" = "sha256-9rh8z3vwOQ7/mtzVbyADoRWgTzARF/nkhBwfKb7+A6I="; "curve25519-dalek-4.1.0" = "sha256-H8YMea3AIcUn9NGRfataNjCTzCK4NAjo4ZhWuPfT6ts="; - "risc0-cycle-utils-0.3.0" = "sha256-nWDM/GJkpXvlqOzRKKiAZTBVHRqxE54dvkNeJ2SH6UM="; + "ibc-app-transfer-0.50.0" = "sha256-8iWoYw9xX1D/Z+H7IVUP4AoEI4LjL3jzseAOvPBDFbU="; + "ibc-proto-0.41.0" = "sha256-OXqtIFDK5KdYW39EkNGGtfuDvOAMjmxzfnSpm1NWpRc="; + "jmt-0.9.0" = "sha256-pq1v6FXS//6Dh+fdysQIVp+RVLHdXrW5aDx3263O1rs="; + "nmt-rs-0.1.0" = "sha256-jcHbqyIKk8ZDDjSz+ot5YDxROOnrpM4TRmNFVfNniwU="; + "risc0-cycle-utils-0.3.0" = "sha256-tl6TvAUghcJvlnbD1iYH4mHjgSEtNKsAYN9ZZP69pyc="; "sha2-0.10.8" = "sha256-vuFQFlbDXEW+n9+Nx2VeWanggCSd6NZ+GVEDFS9qZ2M="; - "sov-celestia-client-0.1.0" = "sha256-5/k0b1YsO+uSMyaE6qJxZydizEzT0YqrprxyGr6MsjI="; + "sov-celestia-client-0.1.0" = "sha256-5o3GYYXfpcqI5qyCSzIKbYmm/wj2Zs+k+6WoVctvfW0="; + "tendermint-0.32.0" = "sha256-FtY7a+hBvQryATrs3mykCWFRe8ABTT6cuf5oh9IBElQ="; }; }; From c86ba7cb7e49fabd99a8f979aa07bb9164876466 Mon Sep 17 00:00:00 2001 From: Soares Chen Date: Fri, 8 Mar 2024 12:11:15 +0100 Subject: [PATCH 06/12] Vendor risc0-cycle-macros --- .gitmodules | 3 + Cargo.toml | 3 +- .../provers/risc0/guest-celestia/Cargo.lock | 94 +++++++------------ .../provers/risc0/guest-celestia/Cargo.toml | 7 +- flake.lock | 18 ++++ flake.nix | 7 +- nix/rollup.nix | 4 +- vendor/risc0-cycle-macros | 1 + 8 files changed, 71 insertions(+), 66 deletions(-) create mode 160000 vendor/risc0-cycle-macros diff --git a/.gitmodules b/.gitmodules index 1107d2f..970021f 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,6 @@ [submodule "vendor/sovereign-sdk"] path = vendor/sovereign-sdk url = git@github.com:informalsystems/sovereign-sdk-wip.git +[submodule "vendor/risc0-cycle-macros"] + path = vendor/risc0-cycle-macros + url = https://github.com/Sovereign-Labs/risc0-cycle-macros.git diff --git a/Cargo.toml b/Cargo.toml index b0b2723..5f3c8b8 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -8,7 +8,8 @@ members = [ ] exclude = [ - "vendor/sovereign-sdk" + "vendor/sovereign-sdk", + "vendor/risc0-cycle-macros" ] [workspace.package] diff --git a/crates/provers/risc0/guest-celestia/Cargo.lock b/crates/provers/risc0/guest-celestia/Cargo.lock index 578ce52..7592dc1 100644 --- a/crates/provers/risc0/guest-celestia/Cargo.lock +++ b/crates/provers/risc0/guest-celestia/Cargo.lock @@ -426,15 +426,6 @@ dependencies = [ "hashbrown 0.13.2", ] -[[package]] -name = "borsh" -version = "1.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f58b559fd6448c6e2fd0adb5720cd98a2506594cafa4737ff98c396f3e82f667" -dependencies = [ - "cfg_aliases", -] - [[package]] name = "borsh-derive" version = "0.10.3" @@ -565,12 +556,6 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" -[[package]] -name = "cfg_aliases" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" - [[package]] name = "cid" version = "0.10.1" @@ -1120,7 +1105,7 @@ name = "ibc-app-transfer-types" version = "0.50.0" source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" dependencies = [ - "borsh 0.10.3", + "borsh", "derive_more", "displaydoc", "ibc-core", @@ -1201,7 +1186,7 @@ name = "ibc-core-channel-types" version = "0.50.0" source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" dependencies = [ - "borsh 0.10.3", + "borsh", "derive_more", "displaydoc", "ibc-core-client-types", @@ -1251,7 +1236,7 @@ name = "ibc-core-client-types" version = "0.50.0" source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" dependencies = [ - "borsh 0.10.3", + "borsh", "derive_more", "displaydoc", "ibc-core-commitment-types", @@ -1269,7 +1254,7 @@ name = "ibc-core-commitment-types" version = "0.50.0" source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" dependencies = [ - "borsh 0.10.3", + "borsh", "derive_more", "displaydoc", "ibc-primitives", @@ -1297,7 +1282,7 @@ name = "ibc-core-connection-types" version = "0.50.0" source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" dependencies = [ - "borsh 0.10.3", + "borsh", "derive_more", "displaydoc", "ibc-core-client-types", @@ -1331,7 +1316,7 @@ name = "ibc-core-handler-types" version = "0.50.0" source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" dependencies = [ - "borsh 0.10.3", + "borsh", "derive_more", "displaydoc", "ibc-core-channel-types", @@ -1371,7 +1356,7 @@ name = "ibc-core-host-types" version = "0.50.0" source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" dependencies = [ - "borsh 0.10.3", + "borsh", "derive_more", "displaydoc", "ibc-primitives", @@ -1398,7 +1383,7 @@ name = "ibc-core-router-types" version = "0.50.0" source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" dependencies = [ - "borsh 0.10.3", + "borsh", "derive_more", "displaydoc", "ibc-core-host-types", @@ -1425,7 +1410,7 @@ name = "ibc-primitives" version = "0.50.0" source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" dependencies = [ - "borsh 0.10.3", + "borsh", "derive_more", "displaydoc", "ibc-proto", @@ -1442,7 +1427,7 @@ version = "0.41.0" source = "git+https://github.com/cosmos/ibc-proto-rs.git?rev=1b1d7a9#1b1d7a94c012d2e23527c438acb2599833f0153f" dependencies = [ "base64", - "borsh 0.10.3", + "borsh", "bytes", "flex-error", "ics23", @@ -1570,7 +1555,7 @@ version = "0.9.0" source = "git+https://github.com/penumbra-zone/jmt.git?rev=1d007e11cb68aa5ca13e9a5af4a12e6439d5f7b6#1d007e11cb68aa5ca13e9a5af4a12e6439d5f7b6" dependencies = [ "anyhow", - "borsh 0.10.3", + "borsh", "digest 0.10.7", "hashbrown 0.13.2", "hex", @@ -1692,7 +1677,7 @@ name = "nmt-rs" version = "0.1.0" source = "git+https://github.com/Sovereign-Labs/nmt-rs.git?rev=d821332#d821332baa03aea625d23060dc239af57b9121f5" dependencies = [ - "borsh 0.10.3", + "borsh", "bytes", "serde", "sha2 0.10.8", @@ -2156,22 +2141,9 @@ dependencies = [ "rand_core", ] -[[package]] -name = "risc0-cycle-macros" -version = "0.3.0" -source = "git+https://github.com/Sovereign-Labs/risc0-cycle-macros.git?rev=98948b8ee0e3edffcee7f3bd95a9d93c5c0941af#98948b8ee0e3edffcee7f3bd95a9d93c5c0941af" -dependencies = [ - "anyhow", - "borsh 1.3.1", - "proc-macro2", - "quote", - "syn 2.0.52", -] - [[package]] name = "risc0-cycle-utils" version = "0.3.0" -source = "git+https://github.com/Sovereign-Labs/risc0-cycle-macros.git?rev=98948b8ee0e3edffcee7f3bd95a9d93c5c0941af#98948b8ee0e3edffcee7f3bd95a9d93c5c0941af" dependencies = [ "bytes", "risc0-zkvm", @@ -2513,7 +2485,7 @@ name = "sov-accounts" version = "0.3.0" dependencies = [ "anyhow", - "borsh 0.10.3", + "borsh", "serde", "sov-modules-api", "sov-state", @@ -2525,7 +2497,7 @@ name = "sov-bank" version = "0.3.0" dependencies = [ "anyhow", - "borsh 0.10.3", + "borsh", "serde", "sov-modules-api", "sov-state", @@ -2538,7 +2510,7 @@ version = "0.3.0" dependencies = [ "anyhow", "bincode", - "borsh 0.10.3", + "borsh", "hex", "serde", "sov-chain-state", @@ -2555,7 +2527,7 @@ dependencies = [ "anyhow", "async-trait", "bech32", - "borsh 0.10.3", + "borsh", "celestia-proto", "celestia-types", "hex", @@ -2611,7 +2583,7 @@ name = "sov-chain-state" version = "0.3.0" dependencies = [ "anyhow", - "borsh 0.10.3", + "borsh", "serde", "sov-modules-api", "sov-state", @@ -2624,8 +2596,6 @@ version = "0.3.0" dependencies = [ "ahash", "anyhow", - "risc0-cycle-macros", - "risc0-cycle-utils", "risc0-zkvm", "risc0-zkvm-platform", "sov-celestia-adapter", @@ -2646,7 +2616,7 @@ dependencies = [ "ahash", "anyhow", "base64", - "borsh 0.10.3", + "borsh", "derive_more", "ibc-app-transfer", "ibc-client-tendermint", @@ -2671,7 +2641,7 @@ source = "git+https://github.com/informalsystems/sovereign-ibc.git?rev=e67de8#e6 dependencies = [ "anyhow", "base64", - "borsh 0.10.3", + "borsh", "ibc-app-transfer", "ibc-core", "prost", @@ -2689,7 +2659,7 @@ version = "0.3.0" dependencies = [ "anyhow", "async-trait", - "borsh 0.10.3", + "borsh", "bytes", "hex", "serde", @@ -2703,7 +2673,7 @@ version = "0.3.0" dependencies = [ "anyhow", "bech32", - "borsh 0.10.3", + "borsh", "derive_more", "hex", "serde", @@ -2722,7 +2692,7 @@ version = "0.3.0" dependencies = [ "anyhow", "bech32", - "borsh 0.10.3", + "borsh", "derivative", "derive_more", "digest 0.10.7", @@ -2741,7 +2711,7 @@ name = "sov-modules-macros" version = "0.3.0" dependencies = [ "anyhow", - "borsh 0.10.3", + "borsh", "proc-macro2", "quote", "schemars", @@ -2754,7 +2724,7 @@ name = "sov-modules-stf-blueprint" version = "0.3.0" dependencies = [ "anyhow", - "borsh 0.10.3", + "borsh", "hex", "serde", "sov-blob-storage", @@ -2773,7 +2743,7 @@ version = "0.3.0" dependencies = [ "anyhow", "bincode", - "borsh 0.10.3", + "borsh", "bytemuck", "crypto-bigint", "ed25519-dalek", @@ -2794,7 +2764,7 @@ version = "0.3.0" dependencies = [ "anyhow", "async-trait", - "borsh 0.10.3", + "borsh", "bytes", "digest 0.10.7", "futures", @@ -2811,7 +2781,7 @@ name = "sov-sequencer-registry" version = "0.3.0" dependencies = [ "anyhow", - "borsh 0.10.3", + "borsh", "serde", "sov-bank", "sov-modules-api", @@ -2824,7 +2794,7 @@ version = "0.3.0" dependencies = [ "anyhow", "bcs", - "borsh 0.10.3", + "borsh", "derivative", "hex", "jmt", @@ -2841,7 +2811,7 @@ name = "sov-stf-runner" version = "0.3.0" dependencies = [ "anyhow", - "borsh 0.10.3", + "borsh", "hex", "num_cpus", "serde", @@ -2870,7 +2840,7 @@ name = "stf-starter" version = "0.3.0" dependencies = [ "anyhow", - "borsh 0.10.3", + "borsh", "serde", "serde_json", "sov-accounts", @@ -3483,3 +3453,7 @@ dependencies = [ "quote", "syn 2.0.52", ] + +[[patch.unused]] +name = "risc0-cycle-macros" +version = "0.3.0" diff --git a/crates/provers/risc0/guest-celestia/Cargo.toml b/crates/provers/risc0/guest-celestia/Cargo.toml index a885302..752fd96 100644 --- a/crates/provers/risc0/guest-celestia/Cargo.toml +++ b/crates/provers/risc0/guest-celestia/Cargo.toml @@ -23,9 +23,6 @@ sov-modules-stf-blueprint = { path = "../../../../vendor/sovereign-sdk/mod sov-risc0-adapter = { path = "../../../../vendor/sovereign-sdk/adapters/risc0" } sov-state = { path = "../../../../vendor/sovereign-sdk/module-system/sov-state" } -risc0-cycle-macros = { git = "https://github.com/Sovereign-Labs/risc0-cycle-macros.git", rev = "98948b8ee0e3edffcee7f3bd95a9d93c5c0941af" } -risc0-cycle-utils = { git = "https://github.com/Sovereign-Labs/risc0-cycle-macros.git", rev = "98948b8ee0e3edffcee7f3bd95a9d93c5c0941af" } - [patch.crates-io] sha2 = { git = "https://github.com/risc0/RustCrypto-hashes", tag = "sha2-v0.10.8-risczero.0" } ed25519-dalek = { git = "https://github.com/risc0/curve25519-dalek", tag = "curve25519-4.1.0-risczero.1" } @@ -38,6 +35,10 @@ sov-modules-api = { path = "../../../../vendor/sovereign-sdk/module-system/ sov-state = { path = "../../../../vendor/sovereign-sdk/module-system/sov-state" } sov-rollup-interface = { path = "../../../../vendor/sovereign-sdk/rollup-interface" } +[patch.'https://github.com/Sovereign-Labs/risc0-cycle-macros.git'] +risc0-cycle-utils = { path = "../../../../vendor/risc0-cycle-macros/crates/utils" } +risc0-cycle-macros = { path = "../../../../vendor/risc0-cycle-macros/crates/risc0-cycle-macros" } + [profile.release] debug = 1 lto = true diff --git a/flake.lock b/flake.lock index c0a10cf..3ad3786 100644 --- a/flake.lock +++ b/flake.lock @@ -119,6 +119,23 @@ "type": "github" } }, + "risc0-cycle-macros-src": { + "flake": false, + "locked": { + "lastModified": 1707815844, + "narHash": "sha256-tl6TvAUghcJvlnbD1iYH4mHjgSEtNKsAYN9ZZP69pyc=", + "owner": "Sovereign-Labs", + "repo": "risc0-cycle-macros", + "rev": "98948b8ee0e3edffcee7f3bd95a9d93c5c0941af", + "type": "github" + }, + "original": { + "owner": "Sovereign-Labs", + "repo": "risc0-cycle-macros", + "rev": "98948b8ee0e3edffcee7f3bd95a9d93c5c0941af", + "type": "github" + } + }, "root": { "inputs": { "celestia-app-src": "celestia-app-src", @@ -126,6 +143,7 @@ "flake-utils": "flake-utils", "gaia-src": "gaia-src", "nixpkgs": "nixpkgs", + "risc0-cycle-macros-src": "risc0-cycle-macros-src", "rust-overlay": "rust-overlay", "sovereign-sdk-src": "sovereign-sdk-src" } diff --git a/flake.nix b/flake.nix index e14e194..f626975 100644 --- a/flake.nix +++ b/flake.nix @@ -13,6 +13,11 @@ url = git+ssh://git@github.com/informalsystems/sovereign-sdk-wip?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f; }; + risc0-cycle-macros-src = { + flake = false; + url = github:Sovereign-Labs/risc0-cycle-macros?rev=98948b8ee0e3edffcee7f3bd95a9d93c5c0941af; + }; + celestia-app-src = { flake = false; url = github:celestiaorg/celestia-app/v1.3.0; @@ -66,7 +71,7 @@ rollup-packages = import ./nix/rollup.nix { inherit nixpkgs rust-bin risc0-rust; - inherit (inputs) sovereign-sdk-src; + inherit (inputs) sovereign-sdk-src risc0-cycle-macros-src; }; gaia = import ./nix/gaia.nix { diff --git a/nix/rollup.nix b/nix/rollup.nix index d5f73a4..1554614 100644 --- a/nix/rollup.nix +++ b/nix/rollup.nix @@ -3,6 +3,7 @@ , rust-bin , risc0-rust , sovereign-sdk-src +, risc0-cycle-macros-src }: let rollup-guest-src = nixpkgs.stdenv.mkDerivation { @@ -14,6 +15,7 @@ let mkdir -p $out/crates $out/vendor cp -r . $out/crates cp -r ${sovereign-sdk-src} $out/vendor/sovereign-sdk + cp -r ${risc0-cycle-macros-src} $out/vendor/risc0-cycle-macros cp ${../Cargo.toml} $out/Cargo.toml cp ${../constants.json} $out/constants.json ''; @@ -29,6 +31,7 @@ let mkdir -p $out/crates $out/vendor cp -r . $out/crates cp -r ${sovereign-sdk-src} $out/vendor/sovereign-sdk + cp -r ${risc0-cycle-macros-src} $out/vendor/risc0-cycle-macros cp ${../Cargo.toml} $out/Cargo.toml cp ${../Cargo.lock} $out/Cargo.lock cp ${../constants.json} $out/constants.json @@ -92,7 +95,6 @@ let "ibc-proto-0.41.0" = "sha256-OXqtIFDK5KdYW39EkNGGtfuDvOAMjmxzfnSpm1NWpRc="; "jmt-0.9.0" = "sha256-pq1v6FXS//6Dh+fdysQIVp+RVLHdXrW5aDx3263O1rs="; "nmt-rs-0.1.0" = "sha256-jcHbqyIKk8ZDDjSz+ot5YDxROOnrpM4TRmNFVfNniwU="; - "risc0-cycle-utils-0.3.0" = "sha256-tl6TvAUghcJvlnbD1iYH4mHjgSEtNKsAYN9ZZP69pyc="; "sha2-0.10.8" = "sha256-vuFQFlbDXEW+n9+Nx2VeWanggCSd6NZ+GVEDFS9qZ2M="; "sov-celestia-client-0.1.0" = "sha256-5o3GYYXfpcqI5qyCSzIKbYmm/wj2Zs+k+6WoVctvfW0="; "tendermint-0.32.0" = "sha256-FtY7a+hBvQryATrs3mykCWFRe8ABTT6cuf5oh9IBElQ="; diff --git a/vendor/risc0-cycle-macros b/vendor/risc0-cycle-macros new file mode 160000 index 0000000..98948b8 --- /dev/null +++ b/vendor/risc0-cycle-macros @@ -0,0 +1 @@ +Subproject commit 98948b8ee0e3edffcee7f3bd95a9d93c5c0941af From 0b560018819f954b0b64f7a2d1dbafeb8ff44d94 Mon Sep 17 00:00:00 2001 From: Soares Chen Date: Fri, 8 Mar 2024 14:35:17 +0100 Subject: [PATCH 07/12] rollup-guest-celestia Nix build is working --- crates/provers/risc0/guest-celestia/Cargo.toml | 3 +-- crates/stf/Cargo.toml | 4 ++-- crates/stf/src/genesis_config.rs | 2 +- flake.lock | 10 +++++----- flake.nix | 15 ++++++++++++++- 5 files changed, 23 insertions(+), 11 deletions(-) diff --git a/crates/provers/risc0/guest-celestia/Cargo.toml b/crates/provers/risc0/guest-celestia/Cargo.toml index 752fd96..753b42b 100644 --- a/crates/provers/risc0/guest-celestia/Cargo.toml +++ b/crates/provers/risc0/guest-celestia/Cargo.toml @@ -36,8 +36,7 @@ sov-state = { path = "../../../../vendor/sovereign-sdk/module-system/ sov-rollup-interface = { path = "../../../../vendor/sovereign-sdk/rollup-interface" } [patch.'https://github.com/Sovereign-Labs/risc0-cycle-macros.git'] -risc0-cycle-utils = { path = "../../../../vendor/risc0-cycle-macros/crates/utils" } -risc0-cycle-macros = { path = "../../../../vendor/risc0-cycle-macros/crates/risc0-cycle-macros" } +risc0-cycle-utils = { path = "../../../../vendor/risc0-cycle-macros/crates/utils" } [profile.release] debug = 1 diff --git a/crates/stf/Cargo.toml b/crates/stf/Cargo.toml index c370595..2ff9639 100644 --- a/crates/stf/Cargo.toml +++ b/crates/stf/Cargo.toml @@ -13,8 +13,8 @@ sov-modules-api = { workspace = true } sov-state = { workspace = true } sov-accounts = { workspace = true } sov-bank = { workspace = true } -sov-ibc = { workspace = true } -sov-ibc-transfer = { workspace = true } +sov-ibc = { workspace = true, features = ["serde"] } +sov-ibc-transfer = { workspace = true, features = ["serde"] } sov-sequencer-registry = { workspace = true } sov-mock-da = { workspace = true } sov-modules-stf-blueprint = { workspace = true } diff --git a/crates/stf/src/genesis_config.rs b/crates/stf/src/genesis_config.rs index c5b7d9b..73a83ed 100644 --- a/crates/stf/src/genesis_config.rs +++ b/crates/stf/src/genesis_config.rs @@ -5,7 +5,7 @@ use sov_accounts::AccountConfig; use sov_bank::BankConfig; use sov_ibc::ExampleModuleConfig; use sov_ibc_transfer::TransferConfig; -use sov_modules_api::{Context, DaSpec}; +use sov_modules_api::{DaSpec, Spec}; use sov_modules_stf_blueprint::Runtime as RuntimeTrait; use sov_sequencer_registry::SequencerConfig; use sov_stf_runner::read_json_file; diff --git a/flake.lock b/flake.lock index 3ad3786..c8c4c3d 100644 --- a/flake.lock +++ b/flake.lock @@ -170,16 +170,16 @@ "sovereign-sdk-src": { "flake": false, "locked": { - "lastModified": 1707405267, - "narHash": "sha256-Gz4JUsPoJW5t7u7Ahuf5qMkLtQhXbT6ySi6KDSSn8Qs=", + "lastModified": 1708644201, + "narHash": "sha256-NN1uomkyqAxRyXkAvOl809gUhwXJON0WPFe1WZAinMI=", "ref": "refs/heads/nightly", - "rev": "a1d9ed80af46a0ea6e173204ca708c40ce592d3f", - "revCount": 800, + "rev": "5a144d60eefaf9ce166bbfd66324b959aa4ae82b", + "revCount": 818, "type": "git", "url": "ssh://git@github.com/informalsystems/sovereign-sdk-wip" }, "original": { - "rev": "a1d9ed80af46a0ea6e173204ca708c40ce592d3f", + "rev": "5a144d60eefaf9ce166bbfd66324b959aa4ae82b", "type": "git", "url": "ssh://git@github.com/informalsystems/sovereign-sdk-wip" } diff --git a/flake.nix b/flake.nix index f626975..78c8087 100644 --- a/flake.nix +++ b/flake.nix @@ -10,7 +10,7 @@ sovereign-sdk-src = { flake = false; - url = git+ssh://git@github.com/informalsystems/sovereign-sdk-wip?rev=a1d9ed80af46a0ea6e173204ca708c40ce592d3f; + url = git+ssh://git@github.com/informalsystems/sovereign-sdk-wip?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b; }; risc0-cycle-macros-src = { @@ -96,5 +96,18 @@ inherit risc0-rust gaia celestia-app celestia-node; inherit (rollup-packages) rollup rollup-guest-mock rollup-guest-celestia; }; + + devShell = nixpkgs.mkShell { + # nativeBuildInputs = [ + # nixpkgs.zlib + # nixpkgs.stdenv.cc.cc.lib + # nixpkgs.autoPatchelfHook + # nixpkgs.openssl_1_1 + # ]; + LD_LIBRARY_PATH = nixpkgs.lib.makeLibraryPath [ + nixpkgs.openssl_1_1 + nixpkgs.stdenv.cc.cc.lib + ]; + }; }); } From 780c3d83807f74bf5a6e6a0b409222d72deaddae Mon Sep 17 00:00:00 2001 From: Soares Chen Date: Fri, 8 Mar 2024 14:50:51 +0100 Subject: [PATCH 08/12] Nix build is almost working --- Cargo.lock | 1 - Cargo.toml | 3 + crates/provers/risc0/guest-mock/Cargo.lock | 957 ++++++++++++++++++++- crates/provers/risc0/guest-mock/Cargo.toml | 1 + flake.nix | 13 - nix/rollup.nix | 17 +- 6 files changed, 927 insertions(+), 65 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index a50f8f2..8652cc1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3818,7 +3818,6 @@ dependencies = [ [[package]] name = "risc0-cycle-utils" version = "0.3.0" -source = "git+https://github.com/Sovereign-Labs/risc0-cycle-macros.git?rev=98948b8ee0e3edffcee7f3bd95a9d93c5c0941af#98948b8ee0e3edffcee7f3bd95a9d93c5c0941af" dependencies = [ "bytes", "risc0-zkvm", diff --git a/Cargo.toml b/Cargo.toml index 5f3c8b8..37dd69c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -65,3 +65,6 @@ sov-state = { path = "./vendor/sovereign-sdk/module-system/sov-state" sov-bank = { path = "./vendor/sovereign-sdk/module-system/module-implementations/sov-bank" } sov-chain-state = { path = "./vendor/sovereign-sdk/module-system/module-implementations/sov-chain-state" } sov-rollup-interface = { path = "./vendor/sovereign-sdk/rollup-interface" } + +[patch.'https://github.com/Sovereign-Labs/risc0-cycle-macros.git'] +risc0-cycle-utils = { path = "./vendor/risc0-cycle-macros/crates/utils" } diff --git a/crates/provers/risc0/guest-mock/Cargo.lock b/crates/provers/risc0/guest-mock/Cargo.lock index 1b9f5f5..6f024e8 100644 --- a/crates/provers/risc0/guest-mock/Cargo.lock +++ b/crates/provers/risc0/guest-mock/Cargo.lock @@ -46,8 +46,8 @@ dependencies = [ "ark-std", "blake2", "derivative", - "digest", - "sha2", + "digest 0.10.7", + "sha2 0.10.8", ] [[package]] @@ -61,7 +61,7 @@ dependencies = [ "ark-serialize", "ark-std", "derivative", - "hashbrown", + "hashbrown 0.13.2", "itertools 0.10.5", "num-traits", "zeroize", @@ -78,7 +78,7 @@ dependencies = [ "ark-serialize", "ark-std", "derivative", - "digest", + "digest 0.10.7", "itertools 0.10.5", "num-bigint", "num-traits", @@ -135,7 +135,7 @@ dependencies = [ "ark-serialize", "ark-std", "derivative", - "hashbrown", + "hashbrown 0.13.2", ] [[package]] @@ -158,7 +158,7 @@ checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" dependencies = [ "ark-serialize-derive", "ark-std", - "digest", + "digest 0.10.7", "num-bigint", ] @@ -267,13 +267,25 @@ version = "2.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf" +[[package]] +name = "bitvec" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" +dependencies = [ + "funty", + "radium", + "tap", + "wyz", +] + [[package]] name = "blake2" version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe" dependencies = [ - "digest", + "digest 0.10.7", ] [[package]] @@ -289,6 +301,15 @@ dependencies = [ "constant_time_eq", ] +[[package]] +name = "block-buffer" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" +dependencies = [ + "generic-array", +] + [[package]] name = "block-buffer" version = "0.10.4" @@ -306,7 +327,7 @@ checksum = "4114279215a005bc675e386011e594e1d9b800918cea18fcadadcce864a2046b" dependencies = [ "borsh-derive", "bytes", - "hashbrown", + "hashbrown 0.13.2", ] [[package]] @@ -317,7 +338,7 @@ checksum = "0754613691538d51f329cce9af41d7b7ca150bc973056f1156611489475f54f7" dependencies = [ "borsh-derive-internal", "borsh-schema-derive-internal", - "proc-macro-crate", + "proc-macro-crate 0.1.5", "proc-macro2", "syn 1.0.109", ] @@ -344,6 +365,12 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "byte-slice-cast" +version = "1.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c" + [[package]] name = "bytemuck" version = "1.14.3" @@ -364,6 +391,12 @@ dependencies = [ "syn 2.0.50", ] +[[package]] +name = "byteorder" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" + [[package]] name = "bytes" version = "1.5.0" @@ -412,6 +445,12 @@ dependencies = [ "libc", ] +[[package]] +name = "crunchy" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" + [[package]] name = "crypto-bigint" version = "0.5.2" @@ -442,7 +481,7 @@ dependencies = [ "cpufeatures", "crypto-bigint", "curve25519-dalek-derive", - "digest", + "digest 0.10.7", "fiat-crypto", "hex", "platforms", @@ -461,6 +500,19 @@ dependencies = [ "syn 2.0.50", ] +[[package]] +name = "curve25519-dalek-ng" +version = "4.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c359b7249347e46fb28804470d071c921156ad62b3eef5d34e2ba867533dec8" +dependencies = [ + "byteorder", + "digest 0.9.0", + "rand_core", + "subtle-ng", + "zeroize", +] + [[package]] name = "der" version = "0.7.8" @@ -471,6 +523,12 @@ dependencies = [ "zeroize", ] +[[package]] +name = "deranged" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" + [[package]] name = "derivative" version = "2.2.0" @@ -495,18 +553,38 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "digest" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" +dependencies = [ + "generic-array", +] + [[package]] name = "digest" version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ - "block-buffer", + "block-buffer 0.10.4", "const-oid", "crypto-common", "subtle", ] +[[package]] +name = "displaydoc" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.50", +] + [[package]] name = "downcast-rs" version = "1.2.0" @@ -530,6 +608,19 @@ dependencies = [ "signature", ] +[[package]] +name = "ed25519-consensus" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c8465edc8ee7436ffea81d21a019b16676ee3db267aa8d5a8d729581ecf998b" +dependencies = [ + "curve25519-dalek-ng", + "hex", + "rand_core", + "sha2 0.9.9", + "zeroize", +] + [[package]] name = "ed25519-dalek" version = "2.0.0" @@ -538,7 +629,7 @@ dependencies = [ "curve25519-dalek", "ed25519", "serde", - "sha2", + "sha2 0.10.8", "subtle", "zeroize", ] @@ -555,12 +646,56 @@ version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4445909572dbd556c457c849c4ca58623d84b27c8fff1e74b0b4227d8b90d17b" +[[package]] +name = "equivalent" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + +[[package]] +name = "eyre" +version = "0.6.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cd915d99f24784cdc19fd37ef22b97e3ff0ae756c7e492e9fbfe897d61e2aec" +dependencies = [ + "indenter", + "once_cell", +] + [[package]] name = "fiat-crypto" version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1676f435fc1dadde4d03e43f5d62b259e1ce5f40bd4ffb21db2b42ebe59c1382" +[[package]] +name = "fixed-hash" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" +dependencies = [ + "byteorder", + "rand", + "rustc-hex", + "static_assertions", +] + +[[package]] +name = "flex-error" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c606d892c9de11507fa0dcffc116434f94e105d0bbdc4e405b61519464c49d7b" +dependencies = [ + "eyre", + "paste", +] + +[[package]] +name = "funty" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" + [[package]] name = "futures" version = "0.3.30" @@ -675,6 +810,12 @@ dependencies = [ "ahash", ] +[[package]] +name = "hashbrown" +version = "0.14.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604" + [[package]] name = "hermit-abi" version = "0.3.6" @@ -690,6 +831,355 @@ dependencies = [ "serde", ] +[[package]] +name = "ibc-app-transfer" +version = "0.50.0" +source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" +dependencies = [ + "ibc-app-transfer-types", + "ibc-core", + "serde-json-wasm", +] + +[[package]] +name = "ibc-app-transfer-types" +version = "0.50.0" +source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" +dependencies = [ + "borsh", + "derive_more", + "displaydoc", + "ibc-core", + "ibc-proto", + "primitive-types", + "schemars", + "serde", + "uint", +] + +[[package]] +name = "ibc-client-tendermint" +version = "0.50.0" +source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" +dependencies = [ + "derive_more", + "ibc-client-tendermint-types", + "ibc-core-client", + "ibc-core-commitment-types", + "ibc-core-handler-types", + "ibc-core-host", + "ibc-primitives", + "serde", + "tendermint", + "tendermint-light-client-verifier", +] + +[[package]] +name = "ibc-client-tendermint-types" +version = "0.50.0" +source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" +dependencies = [ + "displaydoc", + "ibc-core-client-types", + "ibc-core-commitment-types", + "ibc-core-host-types", + "ibc-primitives", + "ibc-proto", + "serde", + "tendermint", + "tendermint-light-client-verifier", + "tendermint-proto", +] + +[[package]] +name = "ibc-core" +version = "0.50.0" +source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" +dependencies = [ + "ibc-core-channel", + "ibc-core-client", + "ibc-core-commitment-types", + "ibc-core-connection", + "ibc-core-handler", + "ibc-core-host", + "ibc-core-router", + "ibc-derive", + "ibc-primitives", +] + +[[package]] +name = "ibc-core-channel" +version = "0.50.0" +source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" +dependencies = [ + "ibc-core-channel-types", + "ibc-core-client", + "ibc-core-commitment-types", + "ibc-core-connection", + "ibc-core-handler-types", + "ibc-core-host", + "ibc-core-router", + "ibc-primitives", +] + +[[package]] +name = "ibc-core-channel-types" +version = "0.50.0" +source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" +dependencies = [ + "borsh", + "derive_more", + "displaydoc", + "ibc-core-client-types", + "ibc-core-commitment-types", + "ibc-core-connection-types", + "ibc-core-host-types", + "ibc-primitives", + "ibc-proto", + "schemars", + "serde", + "sha2 0.10.8", + "subtle-encoding", + "tendermint", +] + +[[package]] +name = "ibc-core-client" +version = "0.50.0" +source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" +dependencies = [ + "ibc-core-client-context", + "ibc-core-client-types", + "ibc-core-commitment-types", + "ibc-core-handler-types", + "ibc-core-host", + "ibc-primitives", +] + +[[package]] +name = "ibc-core-client-context" +version = "0.50.0" +source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" +dependencies = [ + "derive_more", + "displaydoc", + "ibc-core-client-types", + "ibc-core-commitment-types", + "ibc-core-handler-types", + "ibc-core-host-types", + "ibc-primitives", + "subtle-encoding", + "tendermint", +] + +[[package]] +name = "ibc-core-client-types" +version = "0.50.0" +source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" +dependencies = [ + "borsh", + "derive_more", + "displaydoc", + "ibc-core-commitment-types", + "ibc-core-host-types", + "ibc-primitives", + "ibc-proto", + "schemars", + "serde", + "subtle-encoding", + "tendermint", +] + +[[package]] +name = "ibc-core-commitment-types" +version = "0.50.0" +source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" +dependencies = [ + "borsh", + "derive_more", + "displaydoc", + "ibc-primitives", + "ibc-proto", + "ics23", + "schemars", + "serde", + "subtle-encoding", +] + +[[package]] +name = "ibc-core-connection" +version = "0.50.0" +source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" +dependencies = [ + "ibc-core-client", + "ibc-core-connection-types", + "ibc-core-handler-types", + "ibc-core-host", + "ibc-primitives", +] + +[[package]] +name = "ibc-core-connection-types" +version = "0.50.0" +source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" +dependencies = [ + "borsh", + "derive_more", + "displaydoc", + "ibc-core-client-types", + "ibc-core-commitment-types", + "ibc-core-host-types", + "ibc-primitives", + "ibc-proto", + "schemars", + "serde", + "subtle-encoding", + "tendermint", +] + +[[package]] +name = "ibc-core-handler" +version = "0.50.0" +source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" +dependencies = [ + "ibc-core-channel", + "ibc-core-client", + "ibc-core-commitment-types", + "ibc-core-connection", + "ibc-core-handler-types", + "ibc-core-host", + "ibc-core-router", + "ibc-primitives", +] + +[[package]] +name = "ibc-core-handler-types" +version = "0.50.0" +source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" +dependencies = [ + "borsh", + "derive_more", + "displaydoc", + "ibc-core-channel-types", + "ibc-core-client-types", + "ibc-core-commitment-types", + "ibc-core-connection-types", + "ibc-core-host-types", + "ibc-core-router-types", + "ibc-primitives", + "ibc-proto", + "schemars", + "serde", + "subtle-encoding", + "tendermint", +] + +[[package]] +name = "ibc-core-host" +version = "0.50.0" +source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" +dependencies = [ + "derive_more", + "displaydoc", + "ibc-core-channel-types", + "ibc-core-client-context", + "ibc-core-client-types", + "ibc-core-commitment-types", + "ibc-core-connection-types", + "ibc-core-handler-types", + "ibc-core-host-types", + "ibc-primitives", + "subtle-encoding", +] + +[[package]] +name = "ibc-core-host-types" +version = "0.50.0" +source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" +dependencies = [ + "borsh", + "derive_more", + "displaydoc", + "ibc-primitives", + "schemars", + "serde", +] + +[[package]] +name = "ibc-core-router" +version = "0.50.0" +source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" +dependencies = [ + "derive_more", + "displaydoc", + "ibc-core-channel-types", + "ibc-core-host-types", + "ibc-core-router-types", + "ibc-primitives", + "subtle-encoding", +] + +[[package]] +name = "ibc-core-router-types" +version = "0.50.0" +source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" +dependencies = [ + "borsh", + "derive_more", + "displaydoc", + "ibc-core-host-types", + "ibc-primitives", + "ibc-proto", + "schemars", + "serde", + "subtle-encoding", + "tendermint", +] + +[[package]] +name = "ibc-derive" +version = "0.6.0" +source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.50", +] + +[[package]] +name = "ibc-primitives" +version = "0.50.0" +source = "git+https://github.com/cosmos/ibc-rs.git?rev=4463366e65#4463366e651c0d88dd2fc2923a1b6fff489cae3e" +dependencies = [ + "borsh", + "derive_more", + "displaydoc", + "ibc-proto", + "prost", + "schemars", + "serde", + "tendermint", + "time", +] + +[[package]] +name = "ibc-proto" +version = "0.41.0" +source = "git+https://github.com/cosmos/ibc-proto-rs.git?rev=1b1d7a9#1b1d7a94c012d2e23527c438acb2599833f0153f" +dependencies = [ + "base64", + "borsh", + "bytes", + "flex-error", + "ics23", + "informalsystems-pbjson", + "prost", + "schemars", + "serde", + "subtle-encoding", + "tendermint-proto", +] + [[package]] name = "ics23" version = "0.11.1" @@ -705,10 +1195,55 @@ dependencies = [ "prost", "ripemd", "serde", - "sha2", + "sha2 0.10.8", "sha3", ] +[[package]] +name = "impl-codec" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba6a270039626615617f3f36d15fc827041df3b78c439da2cadfa47455a77f2f" +dependencies = [ + "parity-scale-codec", +] + +[[package]] +name = "impl-serde" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebc88fc67028ae3db0c853baa36269d398d5f45b6982f95549ff5def78c935cd" +dependencies = [ + "serde", +] + +[[package]] +name = "impl-trait-for-tuples" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "indenter" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683" + +[[package]] +name = "indexmap" +version = "2.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b0b929d511467233429c45a44ac1dcaa21ba0f5ba11e4879e6ed28ddb4f9df4" +dependencies = [ + "equivalent", + "hashbrown 0.14.3", +] + [[package]] name = "informalsystems-pbjson" version = "0.7.0" @@ -750,8 +1285,8 @@ source = "git+https://github.com/penumbra-zone/jmt.git?rev=1d007e11cb68aa5ca13e9 dependencies = [ "anyhow", "borsh", - "digest", - "hashbrown", + "digest 0.10.7", + "hashbrown 0.13.2", "hex", "ics23", "itertools 0.10.5", @@ -759,7 +1294,7 @@ dependencies = [ "num-derive 0.3.3", "num-traits", "serde", - "sha2", + "sha2 0.10.8", "thiserror", "tracing", ] @@ -877,6 +1412,38 @@ version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" +[[package]] +name = "opaque-debug" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" + +[[package]] +name = "parity-scale-codec" +version = "3.6.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "881331e34fa842a2fb61cc2db9643a8fedc615e47cfcc52597d1af0db9a7e8fe" +dependencies = [ + "arrayvec", + "bitvec", + "byte-slice-cast", + "impl-trait-for-tuples", + "parity-scale-codec-derive", + "serde", +] + +[[package]] +name = "parity-scale-codec-derive" +version = "3.6.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be30eaf4b0a9fba5336683b38de57bb86d179a35862ba6bfcf57625d006bde5b" +dependencies = [ + "proc-macro-crate 2.0.2", + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "paste" version = "1.0.14" @@ -917,6 +1484,18 @@ version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" +[[package]] +name = "primitive-types" +version = "0.12.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b34d9fd68ae0b74a41b21c03c2f62847aa0ffea044eee893b4c140b37e244e2" +dependencies = [ + "fixed-hash", + "impl-codec", + "impl-serde", + "uint", +] + [[package]] name = "proc-macro-crate" version = "0.1.5" @@ -926,6 +1505,16 @@ dependencies = [ "toml", ] +[[package]] +name = "proc-macro-crate" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b00f26d3400549137f92511a46ac1cd8ce37cb5598a96d382381458b992a5d24" +dependencies = [ + "toml_datetime", + "toml_edit", +] + [[package]] name = "proc-macro2" version = "1.0.78" @@ -974,6 +1563,15 @@ dependencies = [ "syn 2.0.50", ] +[[package]] +name = "prost-types" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "193898f59edcf43c26227dcd4c8427f00d99d61e95dcde58dabd49fa291d470e" +dependencies = [ + "prost", +] + [[package]] name = "quote" version = "1.0.35" @@ -983,6 +1581,12 @@ dependencies = [ "proc-macro2", ] +[[package]] +name = "radium" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" + [[package]] name = "rand" version = "0.8.5" @@ -1034,7 +1638,7 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bd124222d17ad93a644ed9d011a40f4fb64aa54275c08cc216524a9ea82fb09f" dependencies = [ - "digest", + "digest 0.10.7", ] [[package]] @@ -1107,14 +1711,14 @@ dependencies = [ "anyhow", "blake2", "bytemuck", - "digest", + "digest 0.10.7", "hex", "paste", "rand_core", "risc0-core", "risc0-zkvm-platform", "serde", - "sha2", + "sha2 0.10.8", "tracing", ] @@ -1144,7 +1748,7 @@ dependencies = [ "rrs-lib", "semver", "serde", - "sha2", + "sha2 0.10.8", "tracing", ] @@ -1169,6 +1773,12 @@ dependencies = [ "paste", ] +[[package]] +name = "rustc-hex" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e75f6a532d0fd9f7f13144f392b6ad56a32696bfcd9c78f797f16bbb6f072d6" + [[package]] name = "rustc_version" version = "0.4.0" @@ -1223,6 +1833,24 @@ dependencies = [ "serde_derive", ] +[[package]] +name = "serde-json-wasm" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f05da0d153dd4595bdffd5099dc0e9ce425b205ee648eb93437ff7302af8c9a5" +dependencies = [ + "serde", +] + +[[package]] +name = "serde_bytes" +version = "0.11.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b8497c313fd43ab992087548117643f6fcd935cbf36f176ffda0aacf9591734" +dependencies = [ + "serde", +] + [[package]] name = "serde_derive" version = "1.0.197" @@ -1256,6 +1884,30 @@ dependencies = [ "serde", ] +[[package]] +name = "serde_repr" +version = "0.1.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b2e6b945e9d3df726b65d6ee24060aff8e3533d431f677a9695db04eff9dfdb" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.50", +] + +[[package]] +name = "sha2" +version = "0.9.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" +dependencies = [ + "block-buffer 0.9.0", + "cfg-if", + "cpufeatures", + "digest 0.9.0", + "opaque-debug", +] + [[package]] name = "sha2" version = "0.10.8" @@ -1263,7 +1915,7 @@ source = "git+https://github.com/risc0/RustCrypto-hashes?tag=sha2-v0.10.8-riscze dependencies = [ "cfg-if", "cpufeatures", - "digest", + "digest 0.10.7", ] [[package]] @@ -1272,7 +1924,7 @@ version = "0.10.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" dependencies = [ - "digest", + "digest 0.10.7", "keccak", ] @@ -1297,7 +1949,6 @@ dependencies = [ [[package]] name = "sov-accounts" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -1310,7 +1961,6 @@ dependencies = [ [[package]] name = "sov-bank" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -1323,7 +1973,6 @@ dependencies = [ [[package]] name = "sov-blob-storage" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "bincode", @@ -1337,10 +1986,45 @@ dependencies = [ "tracing", ] +[[package]] +name = "sov-celestia-client" +version = "0.1.0" +source = "git+https://github.com/informalsystems/sovereign-ibc.git?rev=e67de8#e67de8b97b2a1ae71f45ed5aeb78d7697e1b4f59" +dependencies = [ + "derive_more", + "ibc-client-tendermint", + "ibc-core", + "ics23", + "prost", + "serde", + "sov-celestia-client-types", + "tendermint", + "tendermint-light-client-verifier", + "tendermint-proto", +] + +[[package]] +name = "sov-celestia-client-types" +version = "0.1.0" +source = "git+https://github.com/informalsystems/sovereign-ibc.git?rev=e67de8#e67de8b97b2a1ae71f45ed5aeb78d7697e1b4f59" +dependencies = [ + "base64", + "bytes", + "derive_more", + "ibc-client-tendermint", + "ibc-core", + "ibc-proto", + "ics23", + "prost", + "serde", + "tendermint", + "tendermint-light-client-verifier", + "tendermint-proto", +] + [[package]] name = "sov-chain-state" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -1350,10 +2034,56 @@ dependencies = [ "tracing", ] +[[package]] +name = "sov-ibc" +version = "0.1.0" +source = "git+https://github.com/informalsystems/sovereign-ibc.git?rev=e67de8#e67de8b97b2a1ae71f45ed5aeb78d7697e1b4f59" +dependencies = [ + "ahash", + "anyhow", + "base64", + "borsh", + "derive_more", + "ibc-app-transfer", + "ibc-client-tendermint", + "ibc-core", + "prost", + "serde", + "serde_json", + "sha2 0.10.8", + "sov-celestia-client", + "sov-chain-state", + "sov-ibc-transfer", + "sov-modules-api", + "sov-rollup-interface", + "sov-state", + "thiserror", + "time", +] + +[[package]] +name = "sov-ibc-transfer" +version = "0.1.0" +source = "git+https://github.com/informalsystems/sovereign-ibc.git?rev=e67de8#e67de8b97b2a1ae71f45ed5aeb78d7697e1b4f59" +dependencies = [ + "anyhow", + "base64", + "borsh", + "ibc-app-transfer", + "ibc-core", + "prost", + "serde", + "serde_json", + "sov-bank", + "sov-modules-api", + "sov-rollup-interface", + "thiserror", + "uint", +] + [[package]] name = "sov-mock-da" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "async-trait", @@ -1361,14 +2091,13 @@ dependencies = [ "bytes", "hex", "serde", - "sha2", + "sha2 0.10.8", "sov-rollup-interface", ] [[package]] name = "sov-modules-api" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "bech32", @@ -1376,7 +2105,7 @@ dependencies = [ "derive_more", "hex", "serde", - "sha2", + "sha2 0.10.8", "sov-modules-core", "sov-modules-macros", "sov-rollup-interface", @@ -1388,20 +2117,19 @@ dependencies = [ [[package]] name = "sov-modules-core" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "bech32", "borsh", "derivative", "derive_more", - "digest", + "digest 0.10.7", "hex", "jmt", "proptest", "schemars", "serde", - "sha2", + "sha2 0.10.8", "sov-rollup-interface", "thiserror", ] @@ -1409,7 +2137,6 @@ dependencies = [ [[package]] name = "sov-modules-macros" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -1423,7 +2150,6 @@ dependencies = [ [[package]] name = "sov-modules-stf-blueprint" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -1442,7 +2168,6 @@ dependencies = [ [[package]] name = "sov-risc0-adapter" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "bincode", @@ -1455,7 +2180,7 @@ dependencies = [ "risc0-zkvm", "risc0-zkvm-platform", "serde", - "sha2", + "sha2 0.10.8", "sov-rollup-interface", "thiserror", "tracing", @@ -1464,26 +2189,24 @@ dependencies = [ [[package]] name = "sov-rollup-interface" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "async-trait", "borsh", "bytes", - "digest", + "digest 0.10.7", "futures", "hex", "proptest", "serde", "serde_json", - "sha2", + "sha2 0.10.8", "thiserror", ] [[package]] name = "sov-sequencer-registry" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -1496,7 +2219,6 @@ dependencies = [ [[package]] name = "sov-state" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "bcs", @@ -1506,7 +2228,7 @@ dependencies = [ "jmt", "serde", "serde_json", - "sha2", + "sha2 0.10.8", "sov-modules-core", "sov-rollup-interface", "thiserror", @@ -1515,7 +2237,6 @@ dependencies = [ [[package]] name = "sov-stf-runner" version = "0.3.0" -source = "git+ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git?rev=5a144d60eefaf9ce166bbfd66324b959aa4ae82b#5a144d60eefaf9ce166bbfd66324b959aa4ae82b" dependencies = [ "anyhow", "borsh", @@ -1536,6 +2257,12 @@ dependencies = [ "der", ] +[[package]] +name = "static_assertions" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" + [[package]] name = "stf-starter" version = "0.3.0" @@ -1546,6 +2273,8 @@ dependencies = [ "serde_json", "sov-accounts", "sov-bank", + "sov-ibc", + "sov-ibc-transfer", "sov-mock-da", "sov-modules-api", "sov-modules-stf-blueprint", @@ -1562,6 +2291,21 @@ version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" +[[package]] +name = "subtle-encoding" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7dcb1ed7b8330c5eed5441052651dd7a12c75e2ed88f2ec024ae1fa3a5e59945" +dependencies = [ + "zeroize", +] + +[[package]] +name = "subtle-ng" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "734676eb262c623cec13c3155096e08d1f8f29adce39ba17948b18dad1e54142" + [[package]] name = "syn" version = "1.0.109" @@ -1584,6 +2328,72 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "tap" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" + +[[package]] +name = "tendermint" +version = "0.34.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "15ab8f0a25d0d2ad49ac615da054d6a76aa6603ff95f7d18bafdd34450a1a04b" +dependencies = [ + "bytes", + "digest 0.10.7", + "ed25519", + "ed25519-consensus", + "flex-error", + "futures", + "num-traits", + "once_cell", + "prost", + "prost-types", + "serde", + "serde_bytes", + "serde_json", + "serde_repr", + "sha2 0.10.8", + "signature", + "subtle", + "subtle-encoding", + "tendermint-proto", + "time", + "zeroize", +] + +[[package]] +name = "tendermint-light-client-verifier" +version = "0.34.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b8090d0eef9ad57b1b913b5e358e26145c86017e87338136509b94383a4af25" +dependencies = [ + "derive_more", + "flex-error", + "serde", + "tendermint", + "time", +] + +[[package]] +name = "tendermint-proto" +version = "0.34.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b797dd3d2beaaee91d2f065e7bdf239dc8d80bba4a183a288bc1279dd5a69a1e" +dependencies = [ + "bytes", + "flex-error", + "num-derive 0.3.3", + "num-traits", + "prost", + "prost-types", + "serde", + "serde_bytes", + "subtle-encoding", + "time", +] + [[package]] name = "thiserror" version = "1.0.57" @@ -1604,6 +2414,18 @@ dependencies = [ "syn 2.0.50", ] +[[package]] +name = "time" +version = "0.3.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "426f806f4089c493dcac0d24c29c01e2c38baf8e30f1b716ee37e83d200b18fe" +dependencies = [ + "deranged", + "serde", + "time-core", + "time-macros", +] + [[package]] name = "time-core" version = "0.1.2" @@ -1628,6 +2450,23 @@ dependencies = [ "serde", ] +[[package]] +name = "toml_datetime" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b" + +[[package]] +name = "toml_edit" +version = "0.20.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "396e4d48bbb2b7554c944bde63101b5ae446cff6ec4a24227428f15eb72ef338" +dependencies = [ + "indexmap", + "toml_datetime", + "winnow", +] + [[package]] name = "tracing" version = "0.1.40" @@ -1676,6 +2515,18 @@ version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" +[[package]] +name = "uint" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76f64bba2c53b04fcab63c01a7d7427eadc821e3bc48c34dc9ba29c501164b52" +dependencies = [ + "byteorder", + "crunchy", + "hex", + "static_assertions", +] + [[package]] name = "unarray" version = "0.1.4" @@ -1706,6 +2557,24 @@ version = "0.11.0+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" +[[package]] +name = "winnow" +version = "0.5.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" +dependencies = [ + "memchr", +] + +[[package]] +name = "wyz" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" +dependencies = [ + "tap", +] + [[package]] name = "zerocopy" version = "0.7.32" diff --git a/crates/provers/risc0/guest-mock/Cargo.toml b/crates/provers/risc0/guest-mock/Cargo.toml index a833cc7..49b0baf 100644 --- a/crates/provers/risc0/guest-mock/Cargo.toml +++ b/crates/provers/risc0/guest-mock/Cargo.toml @@ -36,6 +36,7 @@ sov-chain-state = { path = "../../../../vendor/sovereign-sdk/module-system/ sov-modules-api = { path = "../../../../vendor/sovereign-sdk/module-system/sov-modules-api" } sov-state = { path = "../../../../vendor/sovereign-sdk/module-system/sov-state" } sov-rollup-interface = { path = "../../../../vendor/sovereign-sdk/rollup-interface" } +sov-accounts = { path = "../../../../vendor/sovereign-sdk/module-system/module-implementations/sov-accounts" } [profile.release] debug = 1 diff --git a/flake.nix b/flake.nix index 78c8087..76892f7 100644 --- a/flake.nix +++ b/flake.nix @@ -96,18 +96,5 @@ inherit risc0-rust gaia celestia-app celestia-node; inherit (rollup-packages) rollup rollup-guest-mock rollup-guest-celestia; }; - - devShell = nixpkgs.mkShell { - # nativeBuildInputs = [ - # nixpkgs.zlib - # nixpkgs.stdenv.cc.cc.lib - # nixpkgs.autoPatchelfHook - # nixpkgs.openssl_1_1 - # ]; - LD_LIBRARY_PATH = nixpkgs.lib.makeLibraryPath [ - nixpkgs.openssl_1_1 - nixpkgs.stdenv.cc.cc.lib - ]; - }; }); } diff --git a/nix/rollup.nix b/nix/rollup.nix index 1554614..7c9fd18 100644 --- a/nix/rollup.nix +++ b/nix/rollup.nix @@ -49,11 +49,13 @@ let lockFile = ../crates/provers/risc0/guest-mock/Cargo.lock; outputHashes = { "jmt-0.9.0" = "sha256-pq1v6FXS//6Dh+fdysQIVp+RVLHdXrW5aDx3263O1rs="; - "risc0-binfmt-0.19.1" = "sha256-vBcJIbMMYmWhU/NHMODm+8HxXbF+tBjB/DV4HYwlVo0="; "crypto-bigint-0.5.2" = "sha256-9rh8z3vwOQ7/mtzVbyADoRWgTzARF/nkhBwfKb7+A6I="; "curve25519-dalek-4.1.0" = "sha256-H8YMea3AIcUn9NGRfataNjCTzCK4NAjo4ZhWuPfT6ts="; - "risc0-cycle-utils-0.3.0" = "sha256-nWDM/GJkpXvlqOzRKKiAZTBVHRqxE54dvkNeJ2SH6UM="; "sha2-0.10.8" = "sha256-vuFQFlbDXEW+n9+Nx2VeWanggCSd6NZ+GVEDFS9qZ2M="; + "ibc-app-transfer-0.50.0" = "sha256-8iWoYw9xX1D/Z+H7IVUP4AoEI4LjL3jzseAOvPBDFbU="; + "ibc-proto-0.41.0" = "sha256-OXqtIFDK5KdYW39EkNGGtfuDvOAMjmxzfnSpm1NWpRc="; + "risc0-cycle-utils-0.3.0" = "sha256-tl6TvAUghcJvlnbD1iYH4mHjgSEtNKsAYN9ZZP69pyc="; + "sov-celestia-client-0.1.0" = "sha256-5o3GYYXfpcqI5qyCSzIKbYmm/wj2Zs+k+6WoVctvfW0="; }; }; @@ -136,11 +138,12 @@ let "jmt-0.9.0" = "sha256-pq1v6FXS//6Dh+fdysQIVp+RVLHdXrW5aDx3263O1rs="; "nmt-rs-0.1.0" = "sha256-jcHbqyIKk8ZDDjSz+ot5YDxROOnrpM4TRmNFVfNniwU="; "tendermint-0.32.0" = "sha256-FtY7a+hBvQryATrs3mykCWFRe8ABTT6cuf5oh9IBElQ="; - "bonsai-sdk-0.5.1" = "sha256-vBcJIbMMYmWhU/NHMODm+8HxXbF+tBjB/DV4HYwlVo0="; - "risc0-cycle-utils-0.3.0" = "sha256-nWDM/GJkpXvlqOzRKKiAZTBVHRqxE54dvkNeJ2SH6UM="; - "ibc-0.50.0" = "sha256-4pjCPDzjVrNGQ3IBJvptA73Bu8G7QZGubokeuryCB6A="; - "ibc-proto-0.41.0" = "sha256-uUfB6K/WuLb2+OMX8MB2r5ptFsgkF3OVbBWFFMRdlTw="; - "sov-celestia-client-0.1.0" = "sha256-5/k0b1YsO+uSMyaE6qJxZydizEzT0YqrprxyGr6MsjI="; + "crypto-bigint-0.5.2" = "sha256-9rh8z3vwOQ7/mtzVbyADoRWgTzARF/nkhBwfKb7+A6I="; + "curve25519-dalek-4.1.0" = "sha256-H8YMea3AIcUn9NGRfataNjCTzCK4NAjo4ZhWuPfT6ts="; + "ibc-0.50.0" = "sha256-8iWoYw9xX1D/Z+H7IVUP4AoEI4LjL3jzseAOvPBDFbU="; + "ibc-proto-0.41.0" = "sha256-OXqtIFDK5KdYW39EkNGGtfuDvOAMjmxzfnSpm1NWpRc="; + "risc0-cycle-utils-0.3.0" = "sha256-tl6TvAUghcJvlnbD1iYH4mHjgSEtNKsAYN9ZZP69pyc="; + "sov-celestia-client-0.1.0" = "sha256-5o3GYYXfpcqI5qyCSzIKbYmm/wj2Zs+k+6WoVctvfW0="; }; }; From 433e2e139ed5d681ab37bd762ef9bd3274e5d75e Mon Sep 17 00:00:00 2001 From: Soares Chen Date: Fri, 8 Mar 2024 17:08:55 +0100 Subject: [PATCH 09/12] Nix build is working --- Cargo.lock | 18 ++++-------------- Cargo.toml | 3 +++ crates/rollup/src/celestia_rollup.rs | 10 +++++----- flake.nix | 7 ++++++- nix/rollup.nix | 3 ++- 5 files changed, 20 insertions(+), 21 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 8652cc1..ddc36b6 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1088,17 +1088,6 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" -[[package]] -name = "crypto-bigint" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf4c2f4e1afd912bc40bfd6fed5d9dc1f288e0ba01bfcc835cc5bc3eb13efe15" -dependencies = [ - "rand_core", - "subtle", - "zeroize", -] - [[package]] name = "crypto-bigint" version = "0.5.2" @@ -1107,6 +1096,7 @@ dependencies = [ "getrandom", "rand_core", "subtle", + "zeroize", ] [[package]] @@ -1126,7 +1116,7 @@ source = "git+https://github.com/risc0/curve25519-dalek?tag=curve25519-4.1.0-ris dependencies = [ "cfg-if", "cpufeatures", - "crypto-bigint 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", + "crypto-bigint", "curve25519-dalek-derive 0.1.0", "digest 0.10.7", "fiat-crypto", @@ -3883,7 +3873,7 @@ dependencies = [ "bytemuck", "bytes", "cfg-if", - "crypto-bigint 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", + "crypto-bigint", "elf", "getrandom", "hex", @@ -4836,7 +4826,7 @@ dependencies = [ "bincode", "borsh", "bytemuck", - "crypto-bigint 0.5.2 (git+https://github.com/risc0/RustCrypto-crypto-bigint?tag=v0.5.2-risc0)", + "crypto-bigint", "ed25519-dalek 2.0.0", "hex", "rand", diff --git a/Cargo.toml b/Cargo.toml index 37dd69c..9534a42 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -59,6 +59,9 @@ jsonrpsee = { version = "0.20.1", features = ["jsonrpsee-types"] } risc0-build = "0.20" +[patch.crates-io] +crypto-bigint = { git = "https://github.com/risc0/RustCrypto-crypto-bigint", tag = "v0.5.2-risc0"} + [patch.'ssh://git@github.com/informalsystems/sovereign-sdk-wip.git'] sov-modules-api = { path = "./vendor/sovereign-sdk/module-system/sov-modules-api" } sov-state = { path = "./vendor/sovereign-sdk/module-system/sov-state" } diff --git a/crates/rollup/src/celestia_rollup.rs b/crates/rollup/src/celestia_rollup.rs index a5a5ee2..f9ec3c3 100644 --- a/crates/rollup/src/celestia_rollup.rs +++ b/crates/rollup/src/celestia_rollup.rs @@ -49,12 +49,12 @@ impl RollupBlueprint for CelestiaRollup { type NativeSpec = DefaultSpec; type StorageManager = ProverStorageManager; - type ZkRuntime = Runtime; + type ZkRuntime = Runtime; - type NativeRuntime = Runtime; + type NativeRuntime = Runtime; - type NativeKernel = BasicKernel; - type ZkKernel = BasicKernel; + type NativeKernel = BasicKernel; + type ZkKernel = BasicKernel; type ProverService = ParallelProverService< <::Storage as Storage>::Root, @@ -82,7 +82,7 @@ impl RollupBlueprint for CelestiaRollup { #[allow(unused_mut)] let mut rpc_methods = sov_modules_rollup_blueprint::register_rpc::< Self::NativeRuntime, - Self::NativeContext, + Self::NativeSpec, Self::DaService, >(storage, ledger_db, da_service, sequencer)?; diff --git a/flake.nix b/flake.nix index 76892f7..5868de2 100644 --- a/flake.nix +++ b/flake.nix @@ -65,12 +65,17 @@ sha256 = "sha256:05k8d47zcrascjwwas9pnzg6qz5ambxvfh485flxsn6l7hxq3jf0"; }; + risc0-circuit = builtins.fetchurl { + url = "https://risc0-artifacts.s3.us-west-2.amazonaws.com/zkr/ae5736a42189aec2f04936c3aee4b5441e48b26b4fa1fae28657cf50cdf3cae4.zip"; + sha256 = "sha256:1r6ayg6m1ksphvigm8agdfr4h7j4npjaxhrn97qc5bl946j3cmxf"; + }; + risc0-rust = import ./nix/risc0.nix { inherit nixpkgs rust-bin risc0-rust-tarball; }; rollup-packages = import ./nix/rollup.nix { - inherit nixpkgs rust-bin risc0-rust; + inherit nixpkgs rust-bin risc0-rust risc0-circuit; inherit (inputs) sovereign-sdk-src risc0-cycle-macros-src; }; diff --git a/nix/rollup.nix b/nix/rollup.nix index 7c9fd18..9473867 100644 --- a/nix/rollup.nix +++ b/nix/rollup.nix @@ -4,6 +4,7 @@ , risc0-rust , sovereign-sdk-src , risc0-cycle-macros-src +, risc0-circuit }: let rollup-guest-src = nixpkgs.stdenv.mkDerivation { @@ -142,7 +143,6 @@ let "curve25519-dalek-4.1.0" = "sha256-H8YMea3AIcUn9NGRfataNjCTzCK4NAjo4ZhWuPfT6ts="; "ibc-0.50.0" = "sha256-8iWoYw9xX1D/Z+H7IVUP4AoEI4LjL3jzseAOvPBDFbU="; "ibc-proto-0.41.0" = "sha256-OXqtIFDK5KdYW39EkNGGtfuDvOAMjmxzfnSpm1NWpRc="; - "risc0-cycle-utils-0.3.0" = "sha256-tl6TvAUghcJvlnbD1iYH4mHjgSEtNKsAYN9ZZP69pyc="; "sov-celestia-client-0.1.0" = "sha256-5o3GYYXfpcqI5qyCSzIKbYmm/wj2Zs+k+6WoVctvfW0="; }; }; @@ -155,6 +155,7 @@ let PKG_CONFIG_PATH = "${nixpkgs.openssl.dev}/lib/pkgconfig"; ROLLUP_ELF_PATH = "${rollup-guest-celestia}/rollup"; + RECURSION_SRC_PATH = "${risc0-circuit}"; CONSTANTS_MANIFEST = rollup-src; nativeBuildInputs = [ From f5e754f84ba4ee9fd22b95c385cf9b18410d4cac Mon Sep 17 00:00:00 2001 From: Soares Chen Date: Fri, 8 Mar 2024 17:48:57 +0100 Subject: [PATCH 10/12] Remove use of vendored risc0-cycle-macros --- Cargo.lock | 1 + Cargo.toml | 3 --- crates/provers/risc0/guest-celestia/Cargo.lock | 7 +++---- crates/provers/risc0/guest-celestia/Cargo.toml | 3 --- nix/rollup.nix | 2 ++ 5 files changed, 6 insertions(+), 10 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index ddc36b6..0e98e39 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3808,6 +3808,7 @@ dependencies = [ [[package]] name = "risc0-cycle-utils" version = "0.3.0" +source = "git+https://github.com/Sovereign-Labs/risc0-cycle-macros.git?rev=98948b8ee0e3edffcee7f3bd95a9d93c5c0941af#98948b8ee0e3edffcee7f3bd95a9d93c5c0941af" dependencies = [ "bytes", "risc0-zkvm", diff --git a/Cargo.toml b/Cargo.toml index 9534a42..959e32b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -68,6 +68,3 @@ sov-state = { path = "./vendor/sovereign-sdk/module-system/sov-state" sov-bank = { path = "./vendor/sovereign-sdk/module-system/module-implementations/sov-bank" } sov-chain-state = { path = "./vendor/sovereign-sdk/module-system/module-implementations/sov-chain-state" } sov-rollup-interface = { path = "./vendor/sovereign-sdk/rollup-interface" } - -[patch.'https://github.com/Sovereign-Labs/risc0-cycle-macros.git'] -risc0-cycle-utils = { path = "./vendor/risc0-cycle-macros/crates/utils" } diff --git a/crates/provers/risc0/guest-celestia/Cargo.lock b/crates/provers/risc0/guest-celestia/Cargo.lock index 7592dc1..8ff29a2 100644 --- a/crates/provers/risc0/guest-celestia/Cargo.lock +++ b/crates/provers/risc0/guest-celestia/Cargo.lock @@ -2144,6 +2144,7 @@ dependencies = [ [[package]] name = "risc0-cycle-utils" version = "0.3.0" +source = "git+https://github.com/Sovereign-Labs/risc0-cycle-macros.git?rev=98948b8ee0e3edffcee7f3bd95a9d93c5c0941af#98948b8ee0e3edffcee7f3bd95a9d93c5c0941af" dependencies = [ "bytes", "risc0-zkvm", @@ -2623,6 +2624,7 @@ dependencies = [ "ibc-core", "prost", "serde", + "serde_json", "sha2 0.10.8", "sov-celestia-client", "sov-chain-state", @@ -2646,6 +2648,7 @@ dependencies = [ "ibc-core", "prost", "serde", + "serde_json", "sov-bank", "sov-modules-api", "sov-rollup-interface", @@ -3453,7 +3456,3 @@ dependencies = [ "quote", "syn 2.0.52", ] - -[[patch.unused]] -name = "risc0-cycle-macros" -version = "0.3.0" diff --git a/crates/provers/risc0/guest-celestia/Cargo.toml b/crates/provers/risc0/guest-celestia/Cargo.toml index 753b42b..be33203 100644 --- a/crates/provers/risc0/guest-celestia/Cargo.toml +++ b/crates/provers/risc0/guest-celestia/Cargo.toml @@ -35,9 +35,6 @@ sov-modules-api = { path = "../../../../vendor/sovereign-sdk/module-system/ sov-state = { path = "../../../../vendor/sovereign-sdk/module-system/sov-state" } sov-rollup-interface = { path = "../../../../vendor/sovereign-sdk/rollup-interface" } -[patch.'https://github.com/Sovereign-Labs/risc0-cycle-macros.git'] -risc0-cycle-utils = { path = "../../../../vendor/risc0-cycle-macros/crates/utils" } - [profile.release] debug = 1 lto = true diff --git a/nix/rollup.nix b/nix/rollup.nix index 9473867..eaa7360 100644 --- a/nix/rollup.nix +++ b/nix/rollup.nix @@ -101,6 +101,7 @@ let "sha2-0.10.8" = "sha256-vuFQFlbDXEW+n9+Nx2VeWanggCSd6NZ+GVEDFS9qZ2M="; "sov-celestia-client-0.1.0" = "sha256-5o3GYYXfpcqI5qyCSzIKbYmm/wj2Zs+k+6WoVctvfW0="; "tendermint-0.32.0" = "sha256-FtY7a+hBvQryATrs3mykCWFRe8ABTT6cuf5oh9IBElQ="; + "risc0-cycle-utils-0.3.0" = "sha256-tl6TvAUghcJvlnbD1iYH4mHjgSEtNKsAYN9ZZP69pyc="; }; }; @@ -144,6 +145,7 @@ let "ibc-0.50.0" = "sha256-8iWoYw9xX1D/Z+H7IVUP4AoEI4LjL3jzseAOvPBDFbU="; "ibc-proto-0.41.0" = "sha256-OXqtIFDK5KdYW39EkNGGtfuDvOAMjmxzfnSpm1NWpRc="; "sov-celestia-client-0.1.0" = "sha256-5o3GYYXfpcqI5qyCSzIKbYmm/wj2Zs+k+6WoVctvfW0="; + "risc0-cycle-utils-0.3.0" = "sha256-tl6TvAUghcJvlnbD1iYH4mHjgSEtNKsAYN9ZZP69pyc="; }; }; From df6a5a40611327f7bcd1488e082185c565630966 Mon Sep 17 00:00:00 2001 From: Soares Chen Date: Fri, 8 Mar 2024 17:50:44 +0100 Subject: [PATCH 11/12] Remove risc0-cycle-macros from gitmodules --- .gitmodules | 3 --- 1 file changed, 3 deletions(-) diff --git a/.gitmodules b/.gitmodules index 970021f..1107d2f 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,6 +1,3 @@ [submodule "vendor/sovereign-sdk"] path = vendor/sovereign-sdk url = git@github.com:informalsystems/sovereign-sdk-wip.git -[submodule "vendor/risc0-cycle-macros"] - path = vendor/risc0-cycle-macros - url = https://github.com/Sovereign-Labs/risc0-cycle-macros.git From 5e3e318a4c1bb490a59577c314fb07f9c6dc16cf Mon Sep 17 00:00:00 2001 From: Soares Chen Date: Fri, 8 Mar 2024 17:54:49 +0100 Subject: [PATCH 12/12] Remove risc0-cycle-macros --- vendor/risc0-cycle-macros | 1 - 1 file changed, 1 deletion(-) delete mode 160000 vendor/risc0-cycle-macros diff --git a/vendor/risc0-cycle-macros b/vendor/risc0-cycle-macros deleted file mode 160000 index 98948b8..0000000 --- a/vendor/risc0-cycle-macros +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 98948b8ee0e3edffcee7f3bd95a9d93c5c0941af