diff --git a/.cargo/config.toml b/.cargo/config.toml index bb42f7a5..ecd07e3d 100644 --- a/.cargo/config.toml +++ b/.cargo/config.toml @@ -30,69 +30,64 @@ jmt = { git = "https://github.com/penumbra-zone/jmt. [patch.crates-io.sov-modules-api] # path = "vendor/sovereign-sdk/module-system/sov-modules-api" git = "ssh://git@github.com/informalsystems/sovereign-sdk-wip.git" -rev = "50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +rev = "fc1552b44acddc2674a783cd11f301a8b79cc4f3" [patch.crates-io.sov-state] # path = "vendor/sovereign-sdk/module-system/sov-state" git = "ssh://git@github.com/informalsystems/sovereign-sdk-wip.git" -rev = "50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +rev = "fc1552b44acddc2674a783cd11f301a8b79cc4f3" [patch.crates-io.sov-bank] # path = "vendor/sovereign-sdk/module-system/module-implementations/sov-bank" git = "ssh://git@github.com/informalsystems/sovereign-sdk-wip.git" -rev = "50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +rev = "fc1552b44acddc2674a783cd11f301a8b79cc4f3" [patch.crates-io.sov-sequencer-registry] # path = "vendor/sovereign-sdk/module-system/module-implementations/sov-sequencer-registry" git = "ssh://git@github.com/informalsystems/sovereign-sdk-wip.git" -rev = "50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +rev = "fc1552b44acddc2674a783cd11f301a8b79cc4f3" [patch.crates-io.sov-db] # path = "vendor/sovereign-sdk/full-node/sov-db" git = "ssh://git@github.com/informalsystems/sovereign-sdk-wip.git" -rev = "50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +rev = "fc1552b44acddc2674a783cd11f301a8b79cc4f3" [patch.crates-io.sov-rollup-interface] # path = "vendor/sovereign-sdk/rollup-interface" git = "ssh://git@github.com/informalsystems/sovereign-sdk-wip.git" -rev = "50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +rev = "fc1552b44acddc2674a783cd11f301a8b79cc4f3" [patch.crates-io.sov-mock-zkvm] # path = "vendor/sovereign-sdk/adapters/mock-zkvm" git = "ssh://git@github.com/informalsystems/sovereign-sdk-wip.git" -rev = "50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +rev = "fc1552b44acddc2674a783cd11f301a8b79cc4f3" [patch.crates-io.sov-prover-storage-manager] # path = "vendor/sovereign-sdk/full-node/sov-prover-storage-manager" git = "ssh://git@github.com/informalsystems/sovereign-sdk-wip.git" -rev = "50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +rev = "fc1552b44acddc2674a783cd11f301a8b79cc4f3" [patch.crates-io.sov-kernels] # path = "vendor/sovereign-sdk/module-system/sov-kernels" git = "ssh://git@github.com/informalsystems/sovereign-sdk-wip.git" -rev = "50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" - -[patch.crates-io.sov-modules-core] -# path = "vendor/sovereign-sdk/module-system/sov-modules-core" -git = "ssh://git@github.com/informalsystems/sovereign-sdk-wip.git" -rev = "50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +rev = "fc1552b44acddc2674a783cd11f301a8b79cc4f3" [patch.crates-io.sov-celestia-adapter] # path = "vendor/sovereign-sdk/adapters/celestia" git = "ssh://git@github.com/informalsystems/sovereign-sdk-wip.git" -rev = "50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +rev = "fc1552b44acddc2674a783cd11f301a8b79cc4f3" [patch.crates-io.sov-mock-da] # path = "vendor/sovereign-sdk/adapters/mock-da" git = "ssh://git@github.com/informalsystems/sovereign-sdk-wip.git" -rev = "50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +rev = "fc1552b44acddc2674a783cd11f301a8b79cc4f3" [patch.crates-io.const-rollup-config] # path = "vendor/sovereign-sdk/examples/const-rollup-config" git = "ssh://git@github.com/informalsystems/sovereign-sdk-wip.git" -rev = "50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +rev = "fc1552b44acddc2674a783cd11f301a8b79cc4f3" [patch.crates-io.sov-chain-state] # path = "vendor/sovereign-sdk/module-system/module-implementations/sov-chain-state" git = "ssh://git@github.com/informalsystems/sovereign-sdk-wip.git" -rev = "50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +rev = "fc1552b44acddc2674a783cd11f301a8b79cc4f3" diff --git a/.github/workflows/risc0-check.yml b/.github/workflows/risc0-check.yml index 321454f8..2de2974d 100644 --- a/.github/workflows/risc0-check.yml +++ b/.github/workflows/risc0-check.yml @@ -38,7 +38,7 @@ jobs: with: tool: cargo-risczero@0.20 - name: Install risc0-zkvm toolchain - run: cargo risczero install --version v2024-02-08.1 + run: cargo risczero install --version v2024-04-22.0 # for rust 1.77 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Check Risc0 compatibility diff --git a/.github/workflows/rust.yml b/.github/workflows/rust.yml index e7d594fd..bd0d5abf 100644 --- a/.github/workflows/rust.yml +++ b/.github/workflows/rust.yml @@ -25,7 +25,7 @@ env: RUST_BACKTRACE: short CARGO_NET_RETRY: 10 RUSTUP_MAX_RETRIES: 10 - MSRV: 1.75.0 + MSRV: 1.77 jobs: cleanup-runs: diff --git a/Cargo.lock b/Cargo.lock index 4ef6430d..916c58f8 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -69,14 +69,29 @@ dependencies = [ [[package]] name = "alloy-rlp" -version = "0.3.4" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d58d9f5da7b40e9bfff0b7e7816700be4019db97d4b6359fe7f94a9e22e42ac" +checksum = "b155716bab55763c95ba212806cf43d05bcc70e5f35b02bad20cf5ec7fe11fed" dependencies = [ "arrayvec", "bytes", ] +[[package]] +name = "android-tzdata" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" + +[[package]] +name = "android_system_properties" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" +dependencies = [ + "libc", +] + [[package]] name = "anstream" version = "0.6.14" @@ -128,9 +143,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.83" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25bdb32cbbdce2b519a9cd7df3a678443100e265d5e25ca763b7572a5104f5f3" +checksum = "b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da" [[package]] name = "argh" @@ -151,7 +166,7 @@ dependencies = [ "argh_shared", "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -409,6 +424,19 @@ version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" +[[package]] +name = "async-compression" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c90a406b4495d129f00461241616194cb8a032c8d1c53c657f0961d5f8e0498" +dependencies = [ + "flate2", + "futures-core", + "memchr", + "pin-project-lite", + "tokio", +] + [[package]] name = "async-lock" version = "2.8.0" @@ -437,7 +465,7 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -448,7 +476,7 @@ checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -459,7 +487,7 @@ checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -484,12 +512,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf" dependencies = [ "async-trait", - "axum-core", + "axum-core 0.3.4", "bitflags 1.3.2", "bytes", "futures-util", "http 0.2.12", - "http-body", + "http-body 0.4.6", "hyper", "itoa", "matchit", @@ -499,7 +527,37 @@ dependencies = [ "pin-project-lite", "rustversion", "serde", - "sync_wrapper", + "sync_wrapper 0.1.2", + "tower", + "tower-layer", + "tower-service", +] + +[[package]] +name = "axum" +version = "0.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a6c9af12842a67734c9a2e355436e5d03b22383ed60cf13cd0c18fbfe3dcbcf" +dependencies = [ + "async-trait", + "axum-core 0.4.3", + "bytes", + "futures-util", + "http 1.1.0", + "http-body 1.0.0", + "http-body-util", + "itoa", + "matchit", + "memchr", + "mime", + "percent-encoding", + "pin-project-lite", + "rustversion", + "serde", + "serde_json", + "serde_path_to_error", + "serde_urlencoded", + "sync_wrapper 1.0.1", "tower", "tower-layer", "tower-service", @@ -515,13 +573,33 @@ dependencies = [ "bytes", "futures-util", "http 0.2.12", - "http-body", + "http-body 0.4.6", "mime", "rustversion", "tower-layer", "tower-service", ] +[[package]] +name = "axum-core" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a15c63fd72d41492dc4f497196f5da1fb04fb7529e631d73630d1b491e47a2e3" +dependencies = [ + "async-trait", + "bytes", + "futures-util", + "http 1.1.0", + "http-body 1.0.0", + "http-body-util", + "mime", + "pin-project-lite", + "rustversion", + "sync_wrapper 0.1.2", + "tower-layer", + "tower-service", +] + [[package]] name = "backtrace" version = "0.3.71" @@ -561,6 +639,12 @@ version = "0.21.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" +[[package]] +name = "base64" +version = "0.22.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" + [[package]] name = "base64ct" version = "1.6.0" @@ -581,7 +665,7 @@ dependencies = [ "serde_derive", "tendermint-rpc", "tokio", - "toml 0.8.12", + "toml 0.8.13", "tonic", "tonic-reflection", "tower-abci", @@ -708,7 +792,7 @@ dependencies = [ "regex", "rustc-hash", "shlex", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -914,9 +998,9 @@ dependencies = [ [[package]] name = "bytemuck" -version = "1.15.0" +version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d6d68c57235a3a081186990eca2867354726650f42f7516ca50c28d6281fd15" +checksum = "78834c15cb5d5efe3452d58b1e8ba890dd62d21907f867f383358198e56ebca5" dependencies = [ "bytemuck_derive", ] @@ -929,7 +1013,7 @@ checksum = "4da9a32f3fed317401fa3c862968128267c3106685286e15d5aaa3d7389c2f60" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -960,9 +1044,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.97" +version = "1.0.98" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "099a5357d84c4c61eb35fc8eafa9a79a902c2f76911e5747ced4e032edd8d9b4" +checksum = "41c270e7540d725e65ac7f1b212ac8ce349719624d7bcff99f8e2e488e8cf03f" dependencies = [ "jobserver", "libc", @@ -990,7 +1074,7 @@ dependencies = [ "async-trait", "celestia-types", "http 0.2.12", - "jsonrpsee", + "jsonrpsee 0.20.3", "serde", "thiserror", "tracing", @@ -1034,6 +1118,19 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +[[package]] +name = "chrono" +version = "0.4.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" +dependencies = [ + "android-tzdata", + "iana-time-zone", + "num-traits", + "serde", + "windows-targets 0.52.5", +] + [[package]] name = "cid" version = "0.10.1" @@ -1077,7 +1174,7 @@ dependencies = [ "anstream", "anstyle", "clap_lex", - "strsim", + "strsim 0.11.1", "terminal_size", ] @@ -1090,7 +1187,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -1130,7 +1227,7 @@ checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" [[package]] name = "const-rollup-config" version = "0.3.0" -source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=50a866c0dccf974c035cbaf3ca289b0e4a29fcc9#50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=fc1552b44acddc2674a783cd11f301a8b79cc4f3#fc1552b44acddc2674a783cd11f301a8b79cc4f3" [[package]] name = "const_format" @@ -1164,6 +1261,15 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" +[[package]] +name = "convert_case" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" +dependencies = [ + "unicode-segmentation", +] + [[package]] name = "core-foundation" version = "0.9.4" @@ -1235,9 +1341,9 @@ dependencies = [ [[package]] name = "cosmwasm-crypto" -version = "1.5.4" +version = "1.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6b4c3f9c4616d6413d4b5fc4c270a4cc32a374b9be08671e80e1a019f805d8f" +checksum = "dd50718a2b6830ce9eb5d465de5a018a12e71729d66b70807ce97e6dd14f931d" dependencies = [ "digest 0.10.7", "ecdsa", @@ -1249,18 +1355,18 @@ dependencies = [ [[package]] name = "cosmwasm-derive" -version = "1.5.4" +version = "1.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c586ced10c3b00e809ee664a895025a024f60d65d34fe4c09daed4a4db68a3f3" +checksum = "242e98e7a231c122e08f300d9db3262d1007b51758a8732cd6210b3e9faa4f3a" dependencies = [ "syn 1.0.109", ] [[package]] name = "cosmwasm-schema" -version = "1.5.4" +version = "1.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8467874827d384c131955ff6f4d47d02e72a956a08eb3c0ff24f8c903a5517b4" +checksum = "7879036156092ad1c22fe0d7316efc5a5eceec2bc3906462a2560215f2a2f929" dependencies = [ "cosmwasm-schema-derive", "schemars", @@ -1271,9 +1377,9 @@ dependencies = [ [[package]] name = "cosmwasm-schema-derive" -version = "1.5.4" +version = "1.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6db85d98ac80922aef465e564d5b21fa9cfac5058cb62df7f116c3682337393" +checksum = "0bb57855fbfc83327f8445ae0d413b1a05ac0d68c396ab4d122b2abd7bb82cb6" dependencies = [ "proc-macro2", "quote", @@ -1282,9 +1388,9 @@ dependencies = [ [[package]] name = "cosmwasm-std" -version = "1.5.4" +version = "1.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "712fe58f39d55c812f7b2c84e097cdede3a39d520f89b6dc3153837e31741927" +checksum = "78c1556156fdf892a55cced6115968b961eaaadd6f724a2c2cb7d1e168e32dd3" dependencies = [ "base64 0.21.7", "bech32 0.9.1", @@ -1304,9 +1410,9 @@ dependencies = [ [[package]] name = "cosmwasm-vm" -version = "1.5.4" +version = "1.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "faf59efc75d03bb757612998e6b839675bff844871a7c9ec9f52ad4093f665cd" +checksum = "9897b46059d68ade608fbdcec33e02b0de0ca4b32ee787a83b8a3eb31b754c85" dependencies = [ "bitflags 1.3.2", "bytecheck", @@ -1430,9 +1536,9 @@ checksum = "393bc73c451830ff8dbb3a07f61843d6cb41a084f9996319917c0b291ed785bb" [[package]] name = "crc32fast" -version = "1.4.0" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa" +checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" dependencies = [ "cfg-if", ] @@ -1467,9 +1573,9 @@ dependencies = [ [[package]] name = "crossbeam-utils" -version = "0.8.19" +version = "0.8.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345" +checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" [[package]] name = "crunchy" @@ -1537,7 +1643,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -1555,36 +1661,72 @@ dependencies = [ [[package]] name = "darling" -version = "0.20.8" +version = "0.14.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54e36fcd13ed84ffdfda6f5be89b31287cbb80c439841fe69e04841435464391" +checksum = "7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850" dependencies = [ - "darling_core", - "darling_macro", + "darling_core 0.14.4", + "darling_macro 0.14.4", +] + +[[package]] +name = "darling" +version = "0.20.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83b2eb4d90d12bdda5ed17de686c2acb4c57914f8f921b8da7e112b5a36f3fe1" +dependencies = [ + "darling_core 0.20.9", + "darling_macro 0.20.9", ] [[package]] name = "darling_core" -version = "0.20.8" +version = "0.14.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c2cf1c23a687a1feeb728783b993c4e1ad83d99f351801977dd809b48d0a70f" +checksum = "109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0" dependencies = [ "fnv", "ident_case", "proc-macro2", "quote", - "syn 2.0.61", + "strsim 0.10.0", + "syn 1.0.109", +] + +[[package]] +name = "darling_core" +version = "0.20.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "622687fe0bac72a04e5599029151f5796111b90f1baaa9b544d807a5e31cd120" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim 0.11.1", + "syn 2.0.65", ] [[package]] name = "darling_macro" -version = "0.20.8" +version = "0.14.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a668eda54683121533a393014d8692171709ff57a7d61f187b6e782719f8933f" +checksum = "a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e" dependencies = [ - "darling_core", + "darling_core 0.14.4", "quote", - "syn 2.0.61", + "syn 1.0.109", +] + +[[package]] +name = "darling_macro" +version = "0.20.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "733cabb43482b1a1b53eee8583c2b9e8684d592215ea83efd305dd31bc2f0178" +dependencies = [ + "darling_core 0.20.9", + "quote", + "syn 2.0.65", ] [[package]] @@ -1641,6 +1783,9 @@ name = "deranged" version = "0.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" +dependencies = [ + "serde", +] [[package]] name = "derivative" @@ -1659,7 +1804,7 @@ version = "0.99.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" dependencies = [ - "convert_case", + "convert_case 0.4.0", "proc-macro2", "quote", "rustc_version 0.4.0", @@ -1716,7 +1861,7 @@ checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -1841,9 +1986,9 @@ dependencies = [ [[package]] name = "either" -version = "1.11.0" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a47c1c47d2f5964e29c61246e81db715514cd532db6b5116a25ea3c03d6780a2" +checksum = "3dca9240753cf90908d7e4aac30f630662b02aebaa1b58a3cadabdb23385b58b" [[package]] name = "elf" @@ -1908,7 +2053,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -1926,10 +2071,10 @@ version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e08b6c6ab82d70f08844964ba10c7babb716de2ecaeab9be5717918a5177d3af" dependencies = [ - "darling", + "darling 0.20.9", "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -1940,18 +2085,19 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] name = "erased-serde" -version = "0.4.4" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b73807008a3c7f171cc40312f37d95ef0396e048b5848d775f54b1a4dd4a0d3" +checksum = "24e2389d65ab4fab27dc2a5de7b191e1f6617d1f1c8855c0dc569c94a4cbb18d" dependencies = [ "serde", + "typeid", ] [[package]] name = "errno" -version = "0.3.8" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" +checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" dependencies = [ "libc", "windows-sys 0.52.0", @@ -2033,9 +2179,9 @@ dependencies = [ [[package]] name = "fiat-crypto" -version = "0.2.8" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38793c55593b33412e3ae40c2c9781ffaa6f438f6f8c10f24e71846fbd7ae01e" +checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" [[package]] name = "fixed-hash" @@ -2158,7 +2304,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -2263,9 +2409,9 @@ checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" [[package]] name = "gloo-net" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ac9e8288ae2c632fa9f8657ac70bfe38a1530f345282d7ba66a1f70b72b7dc4" +checksum = "43aaa242d1239a8822c15c645f02166398da4f8b5c4bae795c1f5b44e9eee173" dependencies = [ "futures-channel", "futures-core", @@ -2460,6 +2606,29 @@ dependencies = [ "pin-project-lite", ] +[[package]] +name = "http-body" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1cac85db508abc24a2e48553ba12a996e87244a0395ce011e62b37158745d643" +dependencies = [ + "bytes", + "http 1.1.0", +] + +[[package]] +name = "http-body-util" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0475f8b2ac86659c21b64320d5d653f9efe42acd2a4e560073ec61a155a34f1d" +dependencies = [ + "bytes", + "futures-core", + "http 1.1.0", + "http-body 1.0.0", + "pin-project-lite", +] + [[package]] name = "httparse" version = "1.8.0" @@ -2490,7 +2659,7 @@ dependencies = [ "futures-util", "h2", "http 0.2.12", - "http-body", + "http-body 0.4.6", "httparse", "httpdate", "itoa", @@ -2512,10 +2681,10 @@ dependencies = [ "http 0.2.12", "hyper", "log", - "rustls", - "rustls-native-certs", + "rustls 0.21.12", + "rustls-native-certs 0.6.3", "tokio", - "tokio-rustls", + "tokio-rustls 0.24.1", ] [[package]] @@ -2530,6 +2699,29 @@ dependencies = [ "tokio-io-timeout", ] +[[package]] +name = "iana-time-zone" +version = "0.1.60" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "wasm-bindgen", + "windows-core", +] + +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +dependencies = [ + "cc", +] + [[package]] name = "ibc" version = "0.51.0" @@ -2971,7 +3163,7 @@ source = "git+https://github.com/cosmos/ibc-rs.git?rev=d5e3887770#d5e3887770d357 dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -3122,6 +3314,7 @@ checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" dependencies = [ "autocfg", "hashbrown 0.12.3", + "serde", ] [[package]] @@ -3132,6 +3325,7 @@ checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26" dependencies = [ "equivalent", "hashbrown 0.14.5", + "serde", ] [[package]] @@ -3158,9 +3352,9 @@ dependencies = [ [[package]] name = "instant" -version = "0.1.12" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" +checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222" dependencies = [ "cfg-if", "js-sys", @@ -3255,14 +3449,28 @@ version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "affdc52f7596ccb2d7645231fc6163bb314630c989b64998f3699a28b4d5d4dc" dependencies = [ - "jsonrpsee-client-transport", - "jsonrpsee-core", - "jsonrpsee-http-client", - "jsonrpsee-proc-macros", + "jsonrpsee-core 0.20.3", + "jsonrpsee-http-client 0.20.3", + "jsonrpsee-proc-macros 0.20.3", + "jsonrpsee-types 0.20.3", + "jsonrpsee-ws-client 0.20.3", + "tracing", +] + +[[package]] +name = "jsonrpsee" +version = "0.22.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfdb12a2381ea5b2e68c3469ec604a007b367778cdb14d09612c8069ebd616ad" +dependencies = [ + "jsonrpsee-client-transport 0.22.5", + "jsonrpsee-core 0.22.5", + "jsonrpsee-http-client 0.22.5", + "jsonrpsee-proc-macros 0.22.5", "jsonrpsee-server", - "jsonrpsee-types", + "jsonrpsee-types 0.22.5", "jsonrpsee-wasm-client", - "jsonrpsee-ws-client", + "jsonrpsee-ws-client 0.22.5", "tokio", "tracing", ] @@ -3272,22 +3480,43 @@ name = "jsonrpsee-client-transport" version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b5b005c793122d03217da09af68ba9383363caa950b90d3436106df8cabce935" +dependencies = [ + "futures-util", + "http 0.2.12", + "jsonrpsee-core 0.20.3", + "pin-project", + "rustls-native-certs 0.6.3", + "soketto", + "thiserror", + "tokio", + "tokio-rustls 0.24.1", + "tokio-util 0.7.11", + "tracing", + "url", +] + +[[package]] +name = "jsonrpsee-client-transport" +version = "0.22.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4978087a58c3ab02efc5b07c5e5e2803024536106fd5506f558db172c889b3aa" dependencies = [ "futures-channel", "futures-util", "gloo-net", "http 0.2.12", - "jsonrpsee-core", + "jsonrpsee-core 0.22.5", "pin-project", - "rustls-native-certs", + "rustls-native-certs 0.7.0", + "rustls-pki-types", "soketto", "thiserror", "tokio", - "tokio-rustls", + "tokio-rustls 0.25.0", "tokio-util 0.7.11", "tracing", "url", - "webpki-roots", + "webpki-roots 0.26.1", ] [[package]] @@ -3303,15 +3532,37 @@ dependencies = [ "futures-timer", "futures-util", "hyper", - "jsonrpsee-types", + "jsonrpsee-types 0.20.3", + "rustc-hash", + "serde", + "serde_json", + "thiserror", + "tokio", + "tracing", +] + +[[package]] +name = "jsonrpsee-core" +version = "0.22.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4b257e1ec385e07b0255dde0b933f948b5c8b8c28d42afda9587c3a967b896d" +dependencies = [ + "anyhow", + "async-trait", + "beef", + "futures-timer", + "futures-util", + "hyper", + "jsonrpsee-types 0.22.5", "parking_lot", + "pin-project", "rand", "rustc-hash", "serde", "serde_json", - "soketto", "thiserror", "tokio", + "tokio-stream", "tracing", "wasm-bindgen-futures", ] @@ -3325,8 +3576,28 @@ dependencies = [ "async-trait", "hyper", "hyper-rustls", - "jsonrpsee-core", - "jsonrpsee-types", + "jsonrpsee-core 0.20.3", + "jsonrpsee-types 0.20.3", + "serde", + "serde_json", + "thiserror", + "tokio", + "tower", + "tracing", + "url", +] + +[[package]] +name = "jsonrpsee-http-client" +version = "0.22.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ccf93fc4a0bfe05d851d37d7c32b7f370fe94336b52a2f0efc5f1981895c2e5" +dependencies = [ + "async-trait", + "hyper", + "hyper-rustls", + "jsonrpsee-core 0.22.5", + "jsonrpsee-types 0.22.5", "serde", "serde_json", "thiserror", @@ -3349,17 +3620,31 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "jsonrpsee-proc-macros" +version = "0.22.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d0bb047e79a143b32ea03974a6bf59b62c2a4c5f5d42a381c907a8bbb3f75c0" +dependencies = [ + "heck 0.4.1", + "proc-macro-crate 3.1.0", + "proc-macro2", + "quote", + "syn 2.0.65", +] + [[package]] name = "jsonrpsee-server" -version = "0.20.3" +version = "0.22.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82c39a00449c9ef3f50b84fc00fc4acba20ef8f559f07902244abf4c15c5ab9c" +checksum = "12d8b6a9674422a8572e0b0abb12feeb3f2aeda86528c80d0350c2bd0923ab41" dependencies = [ "futures-util", "http 0.2.12", "hyper", - "jsonrpsee-core", - "jsonrpsee-types", + "jsonrpsee-core 0.22.5", + "jsonrpsee-types 0.22.5", + "pin-project", "route-recognizer", "serde", "serde_json", @@ -3386,15 +3671,28 @@ dependencies = [ "tracing", ] +[[package]] +name = "jsonrpsee-types" +version = "0.22.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "150d6168405890a7a3231a3c74843f58b8959471f6df76078db2619ddee1d07d" +dependencies = [ + "anyhow", + "beef", + "serde", + "serde_json", + "thiserror", +] + [[package]] name = "jsonrpsee-wasm-client" -version = "0.20.3" +version = "0.22.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c7cbb3447cf14fd4d2f407c3cc96e6c9634d5440aa1fbed868a31f3c02b27f0" +checksum = "f448d8eacd945cc17b6c0b42c361531ca36a962ee186342a97cdb8fca679cd77" dependencies = [ - "jsonrpsee-client-transport", - "jsonrpsee-core", - "jsonrpsee-types", + "jsonrpsee-client-transport 0.22.5", + "jsonrpsee-core 0.22.5", + "jsonrpsee-types 0.22.5", ] [[package]] @@ -3404,9 +3702,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bca9cb3933ccae417eb6b08c3448eb1cb46e39834e5b503e395e5e5bd08546c0" dependencies = [ "http 0.2.12", - "jsonrpsee-client-transport", - "jsonrpsee-core", - "jsonrpsee-types", + "jsonrpsee-client-transport 0.20.3", + "jsonrpsee-core 0.20.3", + "jsonrpsee-types 0.20.3", + "url", +] + +[[package]] +name = "jsonrpsee-ws-client" +version = "0.22.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58b9db2dfd5bb1194b0ce921504df9ceae210a345bc2f6c5a61432089bbab070" +dependencies = [ + "http 0.2.12", + "jsonrpsee-client-transport 0.22.5", + "jsonrpsee-core 0.22.5", + "jsonrpsee-types 0.22.5", "url", ] @@ -3453,7 +3764,7 @@ dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -3476,9 +3787,9 @@ checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" [[package]] name = "libc" -version = "0.2.154" +version = "0.2.155" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae743338b92ff9146ce83992f766a31066a91a8c84a45e0e9f21e7cf6de6d346" +checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c" [[package]] name = "libloading" @@ -3535,9 +3846,9 @@ dependencies = [ [[package]] name = "linux-raw-sys" -version = "0.4.13" +version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" +checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" [[package]] name = "lock_api" @@ -3655,9 +3966,9 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.7.2" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7" +checksum = "87dfd01fe195c66b572b37921ad8803d010623c0aca821bea2302239d155cdae" dependencies = [ "adler", ] @@ -3795,9 +4106,9 @@ dependencies = [ [[package]] name = "num-complex" -version = "0.4.5" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23c6602fda94a57c990fe0df199a035d83576b496aa29f4e634a8ac6004e68a6" +checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" dependencies = [ "num-traits", ] @@ -3821,7 +4132,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -3896,9 +4207,9 @@ checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" [[package]] name = "parity-scale-codec" -version = "3.6.9" +version = "3.6.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "881331e34fa842a2fb61cc2db9643a8fedc615e47cfcc52597d1af0db9a7e8fe" +checksum = "306800abfa29c7f16596b5970a588435e3d5b3149683d00c12b699cc19f895ee" dependencies = [ "arrayvec", "bitvec", @@ -3910,11 +4221,11 @@ dependencies = [ [[package]] name = "parity-scale-codec-derive" -version = "3.6.9" +version = "3.6.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be30eaf4b0a9fba5336683b38de57bb86d179a35862ba6bfcf57625d006bde5b" +checksum = "d830939c76d294956402033aee57a6da7b438f2294eb94864c37b0569053a42c" dependencies = [ - "proc-macro-crate 2.0.0", + "proc-macro-crate 3.1.0", "proc-macro2", "quote", "syn 1.0.109", @@ -4001,9 +4312,9 @@ dependencies = [ [[package]] name = "petgraph" -version = "0.6.4" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1d3afd2628e69da2be385eb6f2fd57c8ac7977ceeff6dc166ff1657b0e386a9" +checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" dependencies = [ "fixedbitset", "indexmap 2.2.6", @@ -4026,7 +4337,7 @@ checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -4086,7 +4397,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5f12335488a2f3b0a83b14edad48dca9879ce89b2edd10e80237e4e852dd645e" dependencies = [ "proc-macro2", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -4122,11 +4433,11 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "2.0.0" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e8366a6159044a37876a2b9817124296703c586a5c92e2c53751fa06d8d43e8" +checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284" dependencies = [ - "toml_edit 0.20.7", + "toml_edit 0.21.1", ] [[package]] @@ -4155,9 +4466,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.82" +version = "1.0.83" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ad3d49ab951a01fbaafe34f2ec74122942fe18a3f9814c3268f1bb72042131b" +checksum = "0b33eb56c327dec362a9e55b3ad14f9d2f0904fb5a5b03b513ab5465399e9f43" dependencies = [ "unicode-ident", ] @@ -4210,9 +4521,9 @@ dependencies = [ [[package]] name = "prost" -version = "0.12.4" +version = "0.12.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0f5d036824e4761737860779c906171497f6d55681139d8312388f8fe398922" +checksum = "deb1435c188b76130da55f17a466d252ff7b1418b2ad3e037d127b94e3411f29" dependencies = [ "bytes", "prost-derive", @@ -4220,9 +4531,9 @@ dependencies = [ [[package]] name = "prost-build" -version = "0.12.4" +version = "0.12.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80b776a1b2dc779f5ee0641f8ade0125bc1298dd41a9a0c16d8bd57b42d222b1" +checksum = "22505a5c94da8e3b7c2996394d1c933236c4d743e81a410bcca4e6989fc066a4" dependencies = [ "bytes", "heck 0.5.0", @@ -4235,28 +4546,28 @@ dependencies = [ "prost", "prost-types", "regex", - "syn 2.0.61", + "syn 2.0.65", "tempfile", ] [[package]] name = "prost-derive" -version = "0.12.4" +version = "0.12.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19de2de2a00075bf566bee3bd4db014b11587e84184d3f7a791bc17f1a8e9e48" +checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1" dependencies = [ "anyhow", "itertools 0.12.1", "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] name = "prost-types" -version = "0.12.4" +version = "0.12.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3235c33eb02c1f1e212abdbe34c78b264b038fb58ca612664343271e36e55ffe" +checksum = "9091c90b0a32608e984ff2fa4091273cbdd755d54935c51d520887f4a1dbd5b0" dependencies = [ "prost", ] @@ -4498,7 +4809,7 @@ dependencies = [ "futures-util", "h2", "http 0.2.12", - "http-body", + "http-body 0.4.6", "hyper", "hyper-rustls", "ipnet", @@ -4508,22 +4819,22 @@ dependencies = [ "once_cell", "percent-encoding", "pin-project-lite", - "rustls", - "rustls-native-certs", - "rustls-pemfile", + "rustls 0.21.12", + "rustls-native-certs 0.6.3", + "rustls-pemfile 1.0.4", "serde", "serde_json", "serde_urlencoded", - "sync_wrapper", + "sync_wrapper 0.1.2", "system-configuration", "tokio", - "tokio-rustls", + "tokio-rustls 0.24.1", "tower-service", "url", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", - "webpki-roots", + "webpki-roots 0.25.4", "winreg", ] @@ -4801,7 +5112,7 @@ dependencies = [ [[package]] name = "rockbound" version = "1.0.0" -source = "git+https://github.com/sovereign-Labs/rockbound?tag=v2.0.1#110936ac9d9cace77344e557ea384cb7eaa64a2a" +source = "git+https://github.com/sovereign-Labs/rockbound?rev=6febf63f61bc775324b96dc1d1a0290b8a3d9e41#6febf63f61bc775324b96dc1d1a0290b8a3d9e41" dependencies = [ "anyhow", "byteorder", @@ -4927,10 +5238,24 @@ checksum = "3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e" dependencies = [ "log", "ring", - "rustls-webpki", + "rustls-webpki 0.101.7", "sct", ] +[[package]] +name = "rustls" +version = "0.22.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf4ef73721ac7bcd79b2b315da7779d8fc09718c6b3d2d1b2d94850eb8c18432" +dependencies = [ + "log", + "ring", + "rustls-pki-types", + "rustls-webpki 0.102.4", + "subtle", + "zeroize", +] + [[package]] name = "rustls-native-certs" version = "0.6.3" @@ -4938,7 +5263,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00" dependencies = [ "openssl-probe", - "rustls-pemfile", + "rustls-pemfile 1.0.4", + "schannel", + "security-framework", +] + +[[package]] +name = "rustls-native-certs" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f1fb85efa936c42c6d5fc28d2629bb51e4b2f4b8a5211e297d599cc5a093792" +dependencies = [ + "openssl-probe", + "rustls-pemfile 2.1.2", + "rustls-pki-types", "schannel", "security-framework", ] @@ -4952,6 +5290,22 @@ dependencies = [ "base64 0.21.7", ] +[[package]] +name = "rustls-pemfile" +version = "2.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29993a25686778eb88d4189742cd713c9bce943bc54251a33509dc63cbacf73d" +dependencies = [ + "base64 0.22.1", + "rustls-pki-types", +] + +[[package]] +name = "rustls-pki-types" +version = "1.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "976295e77ce332211c0d24d92c0e83e50f5c5f046d11082cea19f3df13a3562d" + [[package]] name = "rustls-webpki" version = "0.101.7" @@ -4962,11 +5316,22 @@ dependencies = [ "untrusted", ] +[[package]] +name = "rustls-webpki" +version = "0.102.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff448f7e92e913c4b7d4c6d8e4540a1724b319b4152b8aef6d4cf8339712b33e" +dependencies = [ + "ring", + "rustls-pki-types", + "untrusted", +] + [[package]] name = "rustversion" -version = "1.0.16" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "092474d1a01ea8278f69e6a358998405fae5b8b963ddaeb2b0b04a128bf1dfb0" +checksum = "955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6" [[package]] name = "rusty-fork" @@ -5008,9 +5373,9 @@ dependencies = [ [[package]] name = "scale-info" -version = "2.11.2" +version = "2.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c453e59a955f81fb62ee5d596b450383d699f152d350e9d23a0db2adb78e4c0" +checksum = "eca070c12893629e2cc820a9761bedf6ce1dcddc9852984d1dc734b8bd9bd024" dependencies = [ "cfg-if", "derive_more", @@ -5020,11 +5385,11 @@ dependencies = [ [[package]] name = "scale-info-derive" -version = "2.11.2" +version = "2.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18cf6c6447f813ef19eb450e985bcce6705f9ce7660db221b59093d15c79c4b7" +checksum = "2d35494501194174bda522a32605929eefc9ecf7e0a326c26db1fdd85881eb62" dependencies = [ - "proc-macro-crate 1.1.3", + "proc-macro-crate 3.1.0", "proc-macro2", "quote", "syn 1.0.109", @@ -5041,9 +5406,9 @@ dependencies = [ [[package]] name = "schemars" -version = "0.8.19" +version = "0.8.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc6e7ed6919cb46507fb01ff1654309219f62b4d603822501b0b80d42f6f21ef" +checksum = "b0218ceea14babe24a4a5836f86ade86c1effbc198164e619194cb5069187e29" dependencies = [ "dyn-clone", "schemars_derive", @@ -5053,14 +5418,14 @@ dependencies = [ [[package]] name = "schemars_derive" -version = "0.8.19" +version = "0.8.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "185f2b7aa7e02d418e453790dde16890256bbd2bcd04b7dc5348811052b53f49" +checksum = "3ed5a1ccce8ff962e31a165d41f6e2a2dd1245099dc4d594f5574a86cd90f4d3" dependencies = [ "proc-macro2", "quote", "serde_derive_internals", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -5166,9 +5531,9 @@ checksum = "f638d531eccd6e23b980caf34876660d38e265409d8e99b397ab71eb3612fad0" [[package]] name = "serde" -version = "1.0.200" +version = "1.0.202" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddc6f9cc94d67c0e21aaf7eda3a010fd3af78ebf6e096aa6e2e13c79749cce4f" +checksum = "226b61a0d411b2ba5ff6d7f73a476ac4f8bb900373459cd00fab8512828ba395" dependencies = [ "serde_derive", ] @@ -5222,37 +5587,47 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.200" +version = "1.0.202" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "856f046b9400cee3c8c94ed572ecdb752444c24528c035cd35882aad6f492bcb" +checksum = "6048858004bcff69094cd972ed40a32500f153bd3be9f716b2eed2e8217c4838" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] name = "serde_derive_internals" -version = "0.29.0" +version = "0.29.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "330f01ce65a3a5fe59a60c82f3c9a024b573b8a6e875bd233fe5f934e71d54e3" +checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] name = "serde_json" -version = "1.0.116" +version = "1.0.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813" +checksum = "455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3" dependencies = [ "itoa", "ryu", "serde", ] +[[package]] +name = "serde_path_to_error" +version = "0.1.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af99884400da37c88f5e9146b7f1fd0fbcae8f6eec4e9da38b67d05486f814a6" +dependencies = [ + "itoa", + "serde", +] + [[package]] name = "serde_repr" version = "0.1.19" @@ -5261,14 +5636,14 @@ checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] name = "serde_spanned" -version = "0.6.5" +version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1" +checksum = "79e674e01f999af37c49f70a6ede167a8a60b2503e56c5599532a65baa5969a0" dependencies = [ "serde", ] @@ -5285,6 +5660,37 @@ dependencies = [ "serde", ] +[[package]] +name = "serde_with" +version = "3.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ad483d2ab0149d5a5ebcd9972a3852711e0153d863bf5a5d0391d28883c4a20" +dependencies = [ + "base64 0.22.1", + "chrono", + "hex", + "indexmap 1.9.3", + "indexmap 2.2.6", + "schemars", + "serde", + "serde_derive", + "serde_json", + "serde_with_macros", + "time", +] + +[[package]] +name = "serde_with_macros" +version = "3.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "65569b702f41443e8bc8bbb1c5779bd0450bbe723b56198980e80ec45780bce2" +dependencies = [ + "darling 0.20.9", + "proc-macro2", + "quote", + "syn 2.0.65", +] + [[package]] name = "sha-1" version = "0.9.8" @@ -5438,16 +5844,14 @@ dependencies = [ [[package]] name = "sov-bank" version = "0.3.0" -source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=50a866c0dccf974c035cbaf3ca289b0e4a29fcc9#50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=fc1552b44acddc2674a783cd11f301a8b79cc4f3#fc1552b44acddc2674a783cd11f301a8b79cc4f3" dependencies = [ "anyhow", "bech32 0.11.0", "borsh", - "clap", - "jsonrpsee", + "jsonrpsee 0.22.5", "schemars", "serde", - "serde_json", "sov-modules-api", "sov-state", "thiserror", @@ -5457,17 +5861,12 @@ dependencies = [ [[package]] name = "sov-blob-storage" version = "0.3.0" -source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=50a866c0dccf974c035cbaf3ca289b0e4a29fcc9#50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=fc1552b44acddc2674a783cd11f301a8b79cc4f3#fc1552b44acddc2674a783cd11f301a8b79cc4f3" dependencies = [ "anyhow", - "bincode", "borsh", - "clap", "hex", - "jsonrpsee", - "schemars", "serde", - "serde_json", "sov-chain-state", "sov-modules-api", "sov-sequencer-registry", @@ -5478,7 +5877,7 @@ dependencies = [ [[package]] name = "sov-celestia-adapter" version = "0.3.0" -source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=50a866c0dccf974c035cbaf3ca289b0e4a29fcc9#50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=fc1552b44acddc2674a783cd11f301a8b79cc4f3#fc1552b44acddc2674a783cd11f301a8b79cc4f3" dependencies = [ "anyhow", "async-trait", @@ -5489,7 +5888,7 @@ dependencies = [ "celestia-types", "futures", "hex", - "jsonrpsee", + "jsonrpsee 0.20.3", "nmt-rs", "prost", "serde", @@ -5560,14 +5959,13 @@ dependencies = [ [[package]] name = "sov-chain-state" version = "0.3.0" -source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=50a866c0dccf974c035cbaf3ca289b0e4a29fcc9#50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=fc1552b44acddc2674a783cd11f301a8b79cc4f3#fc1552b44acddc2674a783cd11f301a8b79cc4f3" dependencies = [ "anyhow", "borsh", "derivative", - "jsonrpsee", + "jsonrpsee 0.22.5", "serde", - "serde_json", "sov-modules-api", "sov-state", "thiserror", @@ -5597,7 +5995,7 @@ dependencies = [ "borsh", "ibc-app-transfer", "ibc-core", - "jsonrpsee", + "jsonrpsee 0.22.5", "prost", "schemars", "serde", @@ -5607,8 +6005,8 @@ dependencies = [ "sov-ibc", "sov-mock-da", "sov-modules-api", - "sov-modules-core", "sov-rollup-interface", + "sov-state", "tendermint 0.34.1", "thiserror", "uint", @@ -5617,7 +6015,7 @@ dependencies = [ [[package]] name = "sov-db" version = "0.3.0" -source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=50a866c0dccf974c035cbaf3ca289b0e4a29fcc9#50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=fc1552b44acddc2674a783cd11f301a8b79cc4f3#fc1552b44acddc2674a783cd11f301a8b79cc4f3" dependencies = [ "anyhow", "async-trait", @@ -5646,7 +6044,7 @@ dependencies = [ "ibc-client-tendermint", "ibc-core", "ibc-query", - "jsonrpsee", + "jsonrpsee 0.22.5", "prost", "schemars", "serde", @@ -5700,7 +6098,7 @@ dependencies = [ "tendermint-testgen", "test-log", "tokio", - "toml 0.8.12", + "toml 0.8.13", "tower", "tower-abci", "tracing", @@ -5740,7 +6138,7 @@ dependencies = [ "derive_more", "ibc-app-transfer", "ibc-core", - "jsonrpsee", + "jsonrpsee 0.22.5", "prost", "schemars", "serde", @@ -5755,20 +6153,19 @@ dependencies = [ [[package]] name = "sov-kernels" version = "0.3.0" -source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=50a866c0dccf974c035cbaf3ca289b0e4a29fcc9#50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=fc1552b44acddc2674a783cd11f301a8b79cc4f3#fc1552b44acddc2674a783cd11f301a8b79cc4f3" dependencies = [ "anyhow", "sov-blob-storage", "sov-chain-state", "sov-modules-api", - "sov-modules-core", "sov-state", ] [[package]] name = "sov-mock-da" version = "0.3.0" -source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=50a866c0dccf974c035cbaf3ca289b0e4a29fcc9#50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=fc1552b44acddc2674a783cd11f301a8b79cc4f3#fc1552b44acddc2674a783cd11f301a8b79cc4f3" dependencies = [ "anyhow", "async-trait", @@ -5788,7 +6185,7 @@ dependencies = [ [[package]] name = "sov-mock-zkvm" version = "0.3.0" -source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=50a866c0dccf974c035cbaf3ca289b0e4a29fcc9#50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=fc1552b44acddc2674a783cd11f301a8b79cc4f3#fc1552b44acddc2674a783cd11f301a8b79cc4f3" dependencies = [ "anyhow", "bincode", @@ -5806,67 +6203,47 @@ dependencies = [ [[package]] name = "sov-modules-api" version = "0.3.0" -source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=50a866c0dccf974c035cbaf3ca289b0e4a29fcc9#50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=fc1552b44acddc2674a783cd11f301a8b79cc4f3#fc1552b44acddc2674a783cd11f301a8b79cc4f3" dependencies = [ "anyhow", + "async-trait", + "axum 0.7.5", "bech32 0.11.0", "borsh", "clap", + "derivative", "derive_more", "hex", - "jsonrpsee", - "rand", + "jsonrpsee 0.22.5", "schemars", "serde", "serde_json", "sha2 0.10.8", - "sov-modules-core", + "sov-db", "sov-modules-macros", + "sov-rest-utils", "sov-rollup-interface", "sov-state", "thiserror", + "tokio", "tracing", ] -[[package]] -name = "sov-modules-core" -version = "0.3.0" -source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=50a866c0dccf974c035cbaf3ca289b0e4a29fcc9#50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" -dependencies = [ - "anyhow", - "async-trait", - "bech32 0.11.0", - "borsh", - "derivative", - "derive_more", - "digest 0.10.7", - "hex", - "jmt", - "proptest", - "schemars", - "serde", - "serde_json", - "sha2 0.10.8", - "sov-db", - "sov-rollup-interface", - "thiserror", -] - [[package]] name = "sov-modules-macros" version = "0.3.0" -source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=50a866c0dccf974c035cbaf3ca289b0e4a29fcc9#50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=fc1552b44acddc2674a783cd11f301a8b79cc4f3#fc1552b44acddc2674a783cd11f301a8b79cc4f3" dependencies = [ "anyhow", "bech32 0.11.0", "blake2", - "borsh", + "convert_case 0.6.0", + "darling 0.14.4", + "derive_more", "hex", - "jsonrpsee", "prettier-please", "proc-macro2", "quote", - "schemars", "serde_json", "syn 1.0.109", ] @@ -5874,7 +6251,7 @@ dependencies = [ [[package]] name = "sov-prover-storage-manager" version = "0.3.0" -source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=50a866c0dccf974c035cbaf3ca289b0e4a29fcc9#50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=fc1552b44acddc2674a783cd11f301a8b79cc4f3#fc1552b44acddc2674a783cd11f301a8b79cc4f3" dependencies = [ "anyhow", "rockbound", @@ -5884,24 +6261,39 @@ dependencies = [ "tracing", ] +[[package]] +name = "sov-rest-utils" +version = "0.3.0" +source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=fc1552b44acddc2674a783cd11f301a8b79cc4f3#fc1552b44acddc2674a783cd11f301a8b79cc4f3" +dependencies = [ + "anyhow", + "axum 0.7.5", + "derive_more", + "hex", + "serde", + "serde_json", + "serde_urlencoded", + "serde_with", + "tower", + "tower-http", + "tower-request-id", + "tracing", +] + [[package]] name = "sov-rollup-interface" version = "0.3.0" -source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=50a866c0dccf974c035cbaf3ca289b0e4a29fcc9#50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=fc1552b44acddc2674a783cd11f301a8b79cc4f3#fc1552b44acddc2674a783cd11f301a8b79cc4f3" dependencies = [ "anyhow", "async-trait", "borsh", "bytes", - "derivative", "digest 0.10.7", "futures", "hex", - "proptest", "schemars", "serde", - "serde_json", - "sha2 0.10.8", "thiserror", "tokio", ] @@ -5909,16 +6301,14 @@ dependencies = [ [[package]] name = "sov-sequencer-registry" version = "0.3.0" -source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=50a866c0dccf974c035cbaf3ca289b0e4a29fcc9#50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=fc1552b44acddc2674a783cd11f301a8b79cc4f3#fc1552b44acddc2674a783cd11f301a8b79cc4f3" dependencies = [ "anyhow", "borsh", - "clap", - "jsonrpsee", + "jsonrpsee 0.22.5", "risc0-cycle-utils", "schemars", "serde", - "serde_json", "sov-bank", "sov-modules-api", "sov-state", @@ -5929,7 +6319,7 @@ dependencies = [ [[package]] name = "sov-state" version = "0.3.0" -source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=50a866c0dccf974c035cbaf3ca289b0e4a29fcc9#50a866c0dccf974c035cbaf3ca289b0e4a29fcc9" +source = "git+ssh://git@github.com/informalsystems/sovereign-sdk-wip.git?rev=fc1552b44acddc2674a783cd11f301a8b79cc4f3#fc1552b44acddc2674a783cd11f301a8b79cc4f3" dependencies = [ "anyhow", "bcs", @@ -5939,12 +6329,9 @@ dependencies = [ "jmt", "serde", "serde-big-array", - "serde_json", "sha2 0.10.8", "sov-db", - "sov-modules-core", "sov-rollup-interface", - "thiserror", ] [[package]] @@ -5975,6 +6362,12 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" +[[package]] +name = "strsim" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" + [[package]] name = "strsim" version = "0.11.1" @@ -6015,9 +6408,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.61" +version = "2.0.65" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c993ed8ccba56ae856363b1845da7266a7cb78e1d146c8a32d54b45a8b831fc9" +checksum = "d2863d96a84c6439701d7a38f9de935ec562c8832cc55d1dde0f513b52fad106" dependencies = [ "proc-macro2", "quote", @@ -6030,6 +6423,12 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" +[[package]] +name = "sync_wrapper" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394" + [[package]] name = "synstructure" version = "0.12.6" @@ -6286,27 +6685,27 @@ checksum = "5999e24eaa32083191ba4e425deb75cdf25efefabe5aaccb7446dd0d4122a3f5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] name = "thiserror" -version = "1.0.60" +version = "1.0.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "579e9083ca58dd9dcf91a9923bb9054071b9ebbd800b342194c9feb0ee89fc18" +checksum = "c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.60" +version = "1.0.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2470041c06ec3ac1ab38d0356a6119054dedaea53e12fbefc0de730a1c08524" +checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -6326,6 +6725,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "426f806f4089c493dcac0d24c29c01e2c38baf8e30f1b716ee37e83d200b18fe" dependencies = [ "deranged", + "itoa", "serde", "time-core", "time-macros", @@ -6398,7 +6798,7 @@ checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -6407,7 +6807,18 @@ version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" dependencies = [ - "rustls", + "rustls 0.21.12", + "tokio", +] + +[[package]] +name = "tokio-rustls" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "775e0c0f0adb3a2f22a00c4745d728b479985fc15ee7ca6a2608388c5569860f" +dependencies = [ + "rustls 0.22.4", + "rustls-pki-types", "tokio", ] @@ -6420,6 +6831,7 @@ dependencies = [ "futures-core", "pin-project-lite", "tokio", + "tokio-util 0.7.11", ] [[package]] @@ -6461,30 +6873,30 @@ dependencies = [ [[package]] name = "toml" -version = "0.8.12" +version = "0.8.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9dd1545e8208b4a5af1aa9bbd0b4cf7e9ea08fabc5d0a5c67fcaafa17433aa3" +checksum = "a4e43f8cc456c9704c851ae29c67e17ef65d2c30017c17a9765b89c382dc8bba" dependencies = [ "serde", "serde_spanned", "toml_datetime", - "toml_edit 0.22.12", + "toml_edit 0.22.13", ] [[package]] name = "toml_datetime" -version = "0.6.5" +version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1" +checksum = "4badfd56924ae69bcc9039335b2e017639ce3f9b001c393c1b2d1ef846ce2cbf" dependencies = [ "serde", ] [[package]] name = "toml_edit" -version = "0.20.7" +version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70f427fce4d84c72b5b732388bf4a9f4531b53f74e2887e3ecb2481f68f66d81" +checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1" dependencies = [ "indexmap 2.2.6", "toml_datetime", @@ -6493,9 +6905,9 @@ dependencies = [ [[package]] name = "toml_edit" -version = "0.22.12" +version = "0.22.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3328d4f68a705b2a4498da1d580585d39a6510f98318a2cec3018a7ec61ddef" +checksum = "c127785850e8c20836d49732ae6abfa47616e60bf9d9f57c43c250361a9db96c" dependencies = [ "indexmap 2.2.6", "serde", @@ -6512,12 +6924,12 @@ checksum = "d560933a0de61cf715926b9cac824d4c883c2c43142f787595e48280c40a1d0e" dependencies = [ "async-stream", "async-trait", - "axum", + "axum 0.6.20", "base64 0.21.7", "bytes", "h2", "http 0.2.12", - "http-body", + "http-body 0.4.6", "hyper", "hyper-timeout", "percent-encoding", @@ -6541,7 +6953,7 @@ dependencies = [ "proc-macro2", "prost-build", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -6597,12 +7009,45 @@ dependencies = [ "tracing", ] +[[package]] +name = "tower-http" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e9cd434a998747dd2c4276bc96ee2e0c7a2eadf3cae88e52be55a05fa9053f5" +dependencies = [ + "async-compression", + "bitflags 2.5.0", + "bytes", + "futures-core", + "http 1.1.0", + "http-body 1.0.0", + "http-body-util", + "pin-project-lite", + "tokio", + "tokio-util 0.7.11", + "tower-layer", + "tower-service", + "tracing", +] + [[package]] name = "tower-layer" version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" +[[package]] +name = "tower-request-id" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "357a1f99dd439c1aa9ebbaf9c6431b41c05a26bf137e9e92879941bdac5cb66d" +dependencies = [ + "http 1.1.0", + "tower-layer", + "tower-service", + "ulid", +] + [[package]] name = "tower-service" version = "0.3.2" @@ -6629,7 +7074,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -6713,9 +7158,15 @@ checksum = "1f718dfaf347dcb5b983bfc87608144b0bad87970aebcbea5ce44d2a30c08e63" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] +[[package]] +name = "typeid" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "059d83cc991e7a42fc37bd50941885db0888e34209f8cfd9aab07ddec03bc9cf" + [[package]] name = "typenum" version = "1.17.0" @@ -6743,7 +7194,7 @@ checksum = "ac73887f47b9312552aa90ef477927ff014d63d1920ca8037c6c1951eab64bb1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -6764,6 +7215,17 @@ dependencies = [ "static_assertions", ] +[[package]] +name = "ulid" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34778c17965aa2a08913b57e1f34db9b4a63f5de31768b55bf20d2795f921259" +dependencies = [ + "getrandom", + "rand", + "web-time", +] + [[package]] name = "unarray" version = "0.1.4" @@ -6791,6 +7253,12 @@ dependencies = [ "tinyvec", ] +[[package]] +name = "unicode-segmentation" +version = "1.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202" + [[package]] name = "unicode-xid" version = "0.2.4" @@ -6905,7 +7373,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", "wasm-bindgen-shared", ] @@ -6962,7 +7430,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -6995,7 +7463,7 @@ checksum = "b7f89739351a2e03cb94beb799d47fb2cac01759b40ec441f7de39b00cbf7ef0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -7179,12 +7647,31 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "web-time" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + [[package]] name = "webpki-roots" version = "0.25.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" +[[package]] +name = "webpki-roots" +version = "0.26.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b3de34ae270483955a94f4b21bdaaeb83d508bb84a01435f393818edb0012009" +dependencies = [ + "rustls-pki-types", +] + [[package]] name = "winapi" version = "0.3.9" @@ -7216,6 +7703,15 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" +[[package]] +name = "windows-core" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" +dependencies = [ + "windows-targets 0.52.5", +] + [[package]] name = "windows-sys" version = "0.33.0" @@ -7452,7 +7948,7 @@ checksum = "15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] @@ -7472,7 +7968,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.61", + "syn 2.0.65", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index b3f5d941..dfd88e42 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -22,7 +22,7 @@ exclude = [ version = "0.1.0" license = "MIT OR Apache-2.0" edition = "2021" -rust-version = "1.75" +rust-version = "1.77" publish = false authors = ["Informal Systems "] repository = "https://github.com/informalsystems/sovereign-ibc" @@ -55,7 +55,7 @@ derive_more = { version = "0.99.11", features = ["from", "try_into"] } digest = "0.10.6" hex = "0.4.3" jmt = { version = "0.9.0" } -jsonrpsee = { version = "0.20.1", features = ["jsonrpsee-types", "macros", "client", "server"] } +jsonrpsee = { version = "0.22.5", features = ["jsonrpsee-types", "macros", "client", "server"] } prost = { version = "0.12", default-features = false } prost-build = { version = "0.12", default-features = false } sha2 = { version = "0.10.6", default-features = false } @@ -96,7 +96,6 @@ sov-bank = { version = "0.3.0" } sov-celestia-adapter = { version = "0.3.0" } sov-mock-da = { version = "0.3.0" } sov-modules-api = { version = "0.3.0" } -sov-modules-core = { version = "0.3.0" } sov-state = { version = "0.3.0" } sov-rollup-interface = { version = "0.3.0" } diff --git a/README.md b/README.md index 7d97ced5..a7a0a074 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ [![Build Status][build-image]][build-link] [![Apache 2.0 Licensed][license-image]][license-link] -![Rust 1.75+][rustc-image] +![Rust 1.77+][rustc-image] @@ -33,4 +33,4 @@ git submodule update --init [build-link]: https://github.com/informalsystems/sovereign-ibc/actions?query=workflow%3ARust [license-image]: https://img.shields.io/badge/license-Apache2.0-blue.svg [license-link]: https://github.com/informalsystems/sovereign-ibc/blob/main/LICENSE -[rustc-image]: https://img.shields.io/badge/rustc-1.75+-blue.svg \ No newline at end of file +[rustc-image]: https://img.shields.io/badge/rustc-1.77+-blue.svg \ No newline at end of file diff --git a/flake.lock b/flake.lock index 982ff02f..96faa50b 100644 --- a/flake.lock +++ b/flake.lock @@ -38,11 +38,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1715037484, - "narHash": "sha256-OUt8xQFmBU96Hmm4T9tOWTu4oCswCzoVl+pxSq/kiFc=", + "lastModified": 1716358718, + "narHash": "sha256-NQbegJb2ZZnAqp2EJhWwTf6DrZXSpA6xZCEq+RGV1r0=", "owner": "nixos", "repo": "nixpkgs", - "rev": "ad7efee13e0d216bf29992311536fce1d3eefbef", + "rev": "3f316d2a50699a78afe5e77ca486ad553169061e", "type": "github" }, "original": { @@ -82,11 +82,11 @@ "nixpkgs": "nixpkgs_2" }, "locked": { - "lastModified": 1715048276, - "narHash": "sha256-SqWSTvCjNBBnV/WIQdaxVi5V9H3VJ7cOJAxPQdR1TBY=", + "lastModified": 1716430594, + "narHash": "sha256-vdVzaGD5p+KG7XHepIeX5rUPmdzEcF2w6rhqfr0SNkI=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "b037d65c988421b54024e62691eace4f2fe623bc", + "rev": "ee0db3aeebafeaada2b98d076de6d314b4c8682e", "type": "github" }, "original": { @@ -98,16 +98,16 @@ "sovereign-sdk-src": { "flake": false, "locked": { - "lastModified": 1715076804, - "narHash": "sha256-Fq7aqO0imLbech5BthxSDU6AmWRKjH/4Zpom9knIEeM=", + "lastModified": 1716382491, + "narHash": "sha256-5TRCQIAdfqudXS+y2sNz9KP87aSDXaevOf8p4CgJrUo=", "ref": "refs/heads/nightly", - "rev": "50a866c0dccf974c035cbaf3ca289b0e4a29fcc9", - "revCount": 997, + "rev": "fc1552b44acddc2674a783cd11f301a8b79cc4f3", + "revCount": 1060, "type": "git", "url": "ssh://git@github.com/informalsystems/sovereign-sdk-wip" }, "original": { - "rev": "50a866c0dccf974c035cbaf3ca289b0e4a29fcc9", + "rev": "fc1552b44acddc2674a783cd11f301a8b79cc4f3", "type": "git", "url": "ssh://git@github.com/informalsystems/sovereign-sdk-wip" } diff --git a/flake.nix b/flake.nix index a94d00c4..45931df1 100644 --- a/flake.nix +++ b/flake.nix @@ -8,7 +8,7 @@ sovereign-sdk-src = { flake = false; - url = git+ssh://git@github.com/informalsystems/sovereign-sdk-wip?rev=50a866c0dccf974c035cbaf3ca289b0e4a29fcc9; + url = git+ssh://git@github.com/informalsystems/sovereign-sdk-wip?rev=fc1552b44acddc2674a783cd11f301a8b79cc4f3; }; }; diff --git a/mocks/Cargo.toml b/mocks/Cargo.toml index 78bd4408..5476c075 100644 --- a/mocks/Cargo.toml +++ b/mocks/Cargo.toml @@ -66,7 +66,7 @@ test-log = { version = "0.2.14", default-features = false, features tracing-subscriber = { version = "0.3", default-features = false, features = ["env-filter", "fmt"] } [features] -default = ["mock-da"] +default = ["mock-da", "sov-modules-api/test-utils"] native = [ "sov-bank/native", "sov-ibc/native", diff --git a/mocks/src/relayer/builder.rs b/mocks/src/relayer/builder.rs index 38ee0b29..4d899069 100644 --- a/mocks/src/relayer/builder.rs +++ b/mocks/src/relayer/builder.rs @@ -8,8 +8,8 @@ use sov_consensus_state_tracker::HasConsensusState; #[cfg(feature = "mock-da")] use sov_consensus_state_tracker::MockDaService; use sov_mock_da::MockFee; -use sov_modules_api::{Context, Spec, WorkingSet}; -use sov_prover_storage_manager::new_orphan_storage; +use sov_modules_api::{Spec, WorkingSet}; +use sov_prover_storage_manager::SimpleStorageManager; use sov_rollup_interface::services::da::DaService; use sov_state::{MerkleProofSpec, ProverStorage}; use tracing::info; @@ -23,7 +23,7 @@ use crate::configs::{DefaultSpec, TestSetupConfig}; use crate::cosmos::{dummy_signer, CosmosBuilder, MockTendermint}; use crate::relayer::handle::{Handle, QueryReq, QueryResp}; use crate::relayer::relay::MockRelayer; -use crate::sovereign::{MockRollup, Runtime, DEFAULT_INIT_HEIGHT}; +use crate::sovereign::{MockRollup, Runtime}; #[derive(Clone)] pub struct RelayerBuilder @@ -84,18 +84,14 @@ where { let runtime = Runtime::default(); - let sender_address = self.setup_cfg.get_relayer_address(); - - let rollup_ctx = Context::new(sender_address.clone(), sender_address, DEFAULT_INIT_HEIGHT); - let tmpdir = tempfile::tempdir().unwrap(); - let prover_storage = new_orphan_storage(tmpdir.path()).unwrap(); + let storage_manager = SimpleStorageManager::new(tmpdir.path()); let mut rollup = MockRollup::new( runtime, - prover_storage, - rollup_ctx, + storage_manager, + self.setup_cfg.get_relayer_address(), MockTendermint::builder() .chain_id(self.setup_cfg.da_chain_id.clone()) .build(), diff --git a/mocks/src/sovereign/manual.rs b/mocks/src/sovereign/manual.rs index 323b54eb..7d168581 100644 --- a/mocks/src/sovereign/manual.rs +++ b/mocks/src/sovereign/manual.rs @@ -43,9 +43,9 @@ where .begin_slot(StateCheckpoint::new(self.prover_storage())) .await; - let mut working_set = checkpoint.to_revertable(Default::default()); + let mut working_set = checkpoint.to_revertable_unmetered(); - let mut ibc_ctx: IbcContext<'_, S> = self.ibc_ctx(&mut working_set); + let mut ibc_ctx: IbcContext<'_, S, _> = self.ibc_ctx(&mut working_set); let client_counter = ibc_ctx.client_counter().unwrap(); @@ -78,7 +78,7 @@ where .begin_slot(StateCheckpoint::new(self.prover_storage())) .await; - let mut working_set = checkpoint.to_revertable(Default::default()); + let mut working_set = checkpoint.to_revertable_unmetered(); let mut ibc_ctx = self.ibc_ctx(&mut working_set); @@ -110,7 +110,7 @@ where .begin_slot(StateCheckpoint::new(self.prover_storage())) .await; - let mut working_set = checkpoint.to_revertable(Default::default()); + let mut working_set = checkpoint.to_revertable_unmetered(); let mut ibc_ctx = self.ibc_ctx(&mut working_set); @@ -149,7 +149,7 @@ where .begin_slot(StateCheckpoint::new(self.prover_storage())) .await; - let mut working_set = checkpoint.to_revertable(Default::default()); + let mut working_set = checkpoint.to_revertable_unmetered(); let mut ibc_ctx = self.ibc_ctx(&mut working_set); @@ -173,7 +173,7 @@ where .begin_slot(StateCheckpoint::new(self.prover_storage())) .await; - let mut working_set = checkpoint.to_revertable(Default::default()); + let mut working_set = checkpoint.to_revertable_unmetered(); let mut ibc_ctx = self.ibc_ctx(&mut working_set); @@ -197,7 +197,7 @@ where .begin_slot(StateCheckpoint::new(self.prover_storage())) .await; - let mut working_set = checkpoint.to_revertable(Default::default()); + let mut working_set = checkpoint.to_revertable_unmetered(); let mut ibc_ctx = self.ibc_ctx(&mut working_set); diff --git a/mocks/src/sovereign/rollup.rs b/mocks/src/sovereign/rollup.rs index cc215f4c..34a11772 100644 --- a/mocks/src/sovereign/rollup.rs +++ b/mocks/src/sovereign/rollup.rs @@ -15,7 +15,8 @@ use sov_ibc::call::CallMessage as IbcCallMessage; use sov_ibc::context::IbcContext; use sov_kernels::basic::BasicKernel; use sov_mock_da::MockFee; -use sov_modules_api::{Context, Spec, WorkingSet}; +use sov_modules_api::{Spec, WorkingSet}; +use sov_prover_storage_manager::SimpleStorageManager; use sov_rollup_interface::services::da::DaService; use sov_state::{MerkleProofSpec, ProverStorage, Storage}; @@ -38,9 +39,9 @@ where kernel: ConsensusStateTracker, S, Da::Spec>, runtime: Runtime, da_service: Da, - prover_storage: ProverStorage

, + pub(crate) storage_manager: Arc>>, pub(crate) da_core: MockTendermint, - pub(crate) rollup_ctx: Arc>>, + pub(crate) relayer_address: S::Address, pub(crate) state_root: Arc as Storage>::Root>>>, pub(crate) mempool: Arc>>, } @@ -55,8 +56,8 @@ where { pub fn new( runtime: Runtime, - prover_storage: ProverStorage

, - rollup_ctx: Context, + storage_manager: SimpleStorageManager

, + relayer_address: S::Address, da_core: MockTendermint, da_service: Da, ) -> Self { @@ -64,9 +65,9 @@ where kernel: ConsensusStateTracker::default(), runtime, da_service, - prover_storage, + storage_manager: Arc::new(Mutex::new(storage_manager)), da_core, - rollup_ctx: Arc::new(Mutex::new(rollup_ctx)), + relayer_address, state_root: Arc::new(Mutex::new(vec![])), mempool: Arc::new(Mutex::new(vec![])), } @@ -88,12 +89,8 @@ where &self.da_service } - pub fn rollup_ctx(&self) -> Context { - self.rollup_ctx.acquire_mutex().clone() - } - pub fn prover_storage(&self) -> ProverStorage

{ - self.prover_storage.clone() + self.storage_manager.acquire_mutex().create_storage() } /// Returns the state root at a given rollup height (slot number) @@ -104,11 +101,14 @@ where .cloned() } - pub fn mempool(&self) -> Vec> { - self.mempool.acquire_mutex().clone() + pub fn consume_mempool(&self) -> Vec> { + self.mempool.acquire_mutex().drain(..).collect() } - pub fn ibc_ctx<'a>(&'a self, working_set: &'a mut WorkingSet) -> IbcContext<'a, S> { + pub fn ibc_ctx<'a>( + &'a self, + working_set: &'a mut WorkingSet, + ) -> IbcContext<'a, S, WorkingSet> { let shared_working_set = Rc::new(RefCell::new(working_set)); IbcContext::new(&self.runtime.ibc, shared_working_set.clone()) @@ -182,10 +182,6 @@ where state_roots.push(state_root); } - - pub(crate) fn resolve_ctx(&mut self, sender: S::Address, height: u64) { - *self.rollup_ctx.acquire_mutex() = Context::new(sender.clone(), sender, height); - } } impl Clone for RuntimeCall { diff --git a/mocks/src/sovereign/runner.rs b/mocks/src/sovereign/runner.rs index 61b32144..bfcea743 100644 --- a/mocks/src/sovereign/runner.rs +++ b/mocks/src/sovereign/runner.rs @@ -5,7 +5,7 @@ use sov_consensus_state_tracker::HasConsensusState; use sov_mock_da::MockFee; use sov_modules_api::runtime::capabilities::{Kernel, KernelSlotHooks}; use sov_modules_api::{ - CallResponse, DispatchCall, Gas, GasMeter, Genesis, KernelWorkingSet, SlotData, Spec, + CallResponse, Context, DispatchCall, Gas, Genesis, KernelWorkingSet, SlotData, Spec, StateCheckpoint, }; use sov_rollup_interface::da::BlockHeaderTrait; @@ -40,7 +40,7 @@ where .genesis(&setup_cfg.kernel_genesis_config(), &mut kernel_working_set) .unwrap(); - let mut working_set = checkpoint.to_revertable(Default::default()); + let mut working_set = checkpoint.to_revertable_unmetered(); self.runtime() .genesis(&setup_cfg.runtime_genesis_config(), &mut working_set) @@ -104,26 +104,28 @@ where let visible_slot = kernel_working_set.virtual_slot(); - let mut working_set = checkpoint.to_revertable(GasMeter::default()); + let mut working_set = checkpoint.to_revertable_unmetered(); - let rollup_ctx = self.rollup_ctx(); - - // Resets the sender address to the address of the relayer - self.resolve_ctx(rollup_ctx.sender().clone(), visible_slot); + // create the Rollup context dynamically + // using the relayer address and the visible slot + let rollup_ctx = Context::new( + self.relayer_address.clone(), + Default::default(), + self.relayer_address.clone(), + visible_slot, + ); - for m in self.mempool() { + for m in self.consume_mempool() { // NOTE: on failures, we silently ignore the message and continue as // it is in the real-case scenarios self.runtime() - .dispatch_call(m.clone(), &mut working_set, &self.rollup_ctx()) + .dispatch_call(m.clone(), &mut working_set, &rollup_ctx) .unwrap_or_else(|e| { info!("rollup: error executing message: {e:?}"); CallResponse::default() }); } - *self.mempool.acquire_mutex() = vec![]; - working_set.checkpoint().0 } @@ -138,7 +140,9 @@ where state_update.add_accessory_items(accessory_delta.freeze()); - self.prover_storage().commit(&state_update); + let change_set = self.prover_storage().materialize_changes(&state_update); + + self.storage_manager.acquire_mutex().commit(change_set); self.push_state_root(root_hash); } diff --git a/modules/sov-consensus-state-tracker/Cargo.toml b/modules/sov-consensus-state-tracker/Cargo.toml index e296baa5..ea3e1919 100644 --- a/modules/sov-consensus-state-tracker/Cargo.toml +++ b/modules/sov-consensus-state-tracker/Cargo.toml @@ -33,7 +33,7 @@ tendermint = { workspace = true } # Temporary dependency used for implemen sov-mock-da = { workspace = true, features = ["native"], optional = true } sov-celestia-adapter = { workspace = true, features = ["native"], optional = true } sov-modules-api = { workspace = true } -sov-modules-core = { workspace = true } +sov-state = { workspace = true } sov-rollup-interface = { workspace = true } sov-ibc = { path = "../sov-ibc" } sov-celestia-client = { path = "../../clients/sov-celestia" } @@ -44,7 +44,7 @@ mock-da = ["native", "sov-mock-da"] celestia-da = ["native", "sov-celestia-adapter"] native = [ "sov-modules-api/native", - "sov-modules-core/native", + "sov-state/native", "sov-rollup-interface/native", "sov-ibc/native", ] diff --git a/modules/sov-consensus-state-tracker/src/lib.rs b/modules/sov-consensus-state-tracker/src/lib.rs index 7522286c..bd616727 100644 --- a/modules/sov-consensus-state-tracker/src/lib.rs +++ b/modules/sov-consensus-state-tracker/src/lib.rs @@ -10,10 +10,10 @@ use ibc_core::client::types::Height; pub use mock_da::*; use sov_celestia_client::consensus_state::ConsensusState as HostConsensusState; use sov_ibc::context::HOST_REVISION_NUMBER; +use sov_modules_api::kernel_state::BootstrapWorkingSet; use sov_modules_api::runtime::capabilities::{BatchSelector, Kernel, KernelSlotHooks}; use sov_modules_api::{DaSpec, Gas, KernelModule, KernelWorkingSet, Spec, StateCheckpoint}; -use sov_modules_core::kernel_state::BootstrapWorkingSet; -use sov_modules_core::Storage; +use sov_state::Storage; /// Implement HasConsensusState for all DaSpecs that you wish to support, and /// extract the consensus state from the header. diff --git a/modules/sov-ibc-transfer/src/context.rs b/modules/sov-ibc-transfer/src/context.rs index ce2837ca..71f1df90 100644 --- a/modules/sov-ibc-transfer/src/context.rs +++ b/modules/sov-ibc-transfer/src/context.rs @@ -23,7 +23,7 @@ use ibc_core::primitives::Signer; use ibc_core::router::module::Module; use ibc_core::router::types::module::ModuleExtras; use sov_bank::{Coins, IntoPayable, Payable, TokenId}; -use sov_modules_api::{Context, ModuleId, Spec, WorkingSet}; +use sov_modules_api::{Context, ModuleId, Spec, TxState}; use uint::FromDecStrErr; use super::IbcTransfer; @@ -42,17 +42,17 @@ const MAXIMUM_MEMO_LENGTH: usize = 32768; // 1 << 15 /// because we only get the `WorkingSet` at call-time from the Sovereign SDK, /// which must be passed to `TokenTransferValidationContext` methods through /// the `self` argument. -pub struct IbcTransferContext<'ws, S: Spec> { +pub struct IbcTransferContext<'ws, S: Spec, TS: TxState> { pub ibc_transfer: IbcTransfer, pub sdk_context: Context, - pub working_set: Rc>>, + pub working_set: Rc>, } -impl<'ws, S: Spec> IbcTransferContext<'ws, S> { +impl<'ws, S: Spec, TS: TxState> IbcTransferContext<'ws, S, TS> { pub fn new( ibc_transfer: IbcTransfer, sdk_context: Context, - working_set: Rc>>, + working_set: Rc>, ) -> Self { Self { ibc_transfer, @@ -209,7 +209,7 @@ impl<'ws, S: Spec> IbcTransferContext<'ws, S> { minter_address, vec![self.ibc_transfer.id.to_payable()], self.ibc_transfer.id.to_payable(), - &mut self.working_set.borrow_mut(), + *self.working_set.borrow_mut(), ) .map_err(|err| TokenTransferError::Other(err.to_string()))?; @@ -245,9 +245,10 @@ impl<'ws, S: Spec> IbcTransferContext<'ws, S> { } } -impl<'ws, S> core::fmt::Debug for IbcTransferContext<'ws, S> +impl<'ws, S, TS> core::fmt::Debug for IbcTransferContext<'ws, S, TS> where S: Spec, + TS: TxState, { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { f.debug_struct("TransferContext") @@ -256,9 +257,10 @@ where } } -impl<'ws, S> TokenTransferValidationContext for IbcTransferContext<'ws, S> +impl<'ws, S, TS> TokenTransferValidationContext for IbcTransferContext<'ws, S, TS> where S: Spec, + TS: TxState, { type AccountId = Address; @@ -362,7 +364,9 @@ where } } -impl<'ws, S: Spec> TokenTransferExecutionContext for IbcTransferContext<'ws, S> { +impl<'ws, S: Spec, TS: TxState> TokenTransferExecutionContext + for IbcTransferContext<'ws, S, TS> +{ /// This is called in a `recv_packet()` in the case where we are NOT the /// token source. fn mint_coins_execute( @@ -389,7 +393,7 @@ impl<'ws, S: Spec> TokenTransferExecutionContext for IbcTransferContext<'ws, S> &sdk_coins, &account.address, self.ibc_transfer.id.to_payable(), - &mut self.working_set.borrow_mut(), + *self.working_set.borrow_mut(), ) .map_err(|err| TokenTransferError::Other(err.to_string()))?; @@ -416,11 +420,7 @@ impl<'ws, S: Spec> TokenTransferExecutionContext for IbcTransferContext<'ws, S> self.ibc_transfer .bank - .burn( - sdk_coins, - &account.address, - &mut self.working_set.borrow_mut(), - ) + .burn(sdk_coins, &account.address, *self.working_set.borrow_mut()) .map_err(|err| TokenTransferError::Other(err.to_string()))?; Ok(()) @@ -505,7 +505,7 @@ impl TryFrom for Address { } } -impl<'ws, S: Spec> Module for IbcTransferContext<'ws, S> { +impl<'ws, S: Spec, TS: TxState> Module for IbcTransferContext<'ws, S, TS> { fn on_chan_open_init_validate( &self, order: Order, diff --git a/modules/sov-ibc-transfer/src/genesis.rs b/modules/sov-ibc-transfer/src/genesis.rs index 4a3580df..b0a729ad 100644 --- a/modules/sov-ibc-transfer/src/genesis.rs +++ b/modules/sov-ibc-transfer/src/genesis.rs @@ -1,5 +1,5 @@ use anyhow::Result; -use sov_modules_api::{Module, Spec, WorkingSet}; +use sov_modules_api::{GenesisState, Module, Spec}; use super::IbcTransfer; @@ -7,7 +7,7 @@ impl IbcTransfer { pub(crate) fn init_module( &self, _config: &::Config, - _working_set: &mut WorkingSet, + _working_set: &mut impl GenesisState, ) -> Result<()> { Ok(()) } diff --git a/modules/sov-ibc-transfer/src/lib.rs b/modules/sov-ibc-transfer/src/lib.rs index dea3618e..3166bae6 100644 --- a/modules/sov-ibc-transfer/src/lib.rs +++ b/modules/sov-ibc-transfer/src/lib.rs @@ -7,7 +7,9 @@ use ibc_core::handler::types::events::IbcEvent; use ibc_core::host::types::identifiers::{ChannelId, PortId}; use serde::{Deserialize, Serialize}; use sov_bank::TokenId; -use sov_modules_api::{Context, Error, Module, ModuleId, ModuleInfo, Spec, StateMap, WorkingSet}; +use sov_modules_api::{ + Context, Error, GenesisState, Module, ModuleId, ModuleInfo, Spec, StateMap, TxState, +}; #[cfg(feature = "native")] mod rpc; @@ -17,7 +19,6 @@ pub use rpc::*; #[derive(Debug, Clone, Serialize, Deserialize, Eq, PartialEq)] pub struct TransferConfig {} -#[cfg_attr(feature = "native", derive(sov_modules_api::ModuleCallJsonSchema))] #[derive(ModuleInfo, Clone)] pub struct IbcTransfer { /// Id of the module. @@ -58,7 +59,11 @@ impl Module for IbcTransfer { type Event = IbcEvent; - fn genesis(&self, config: &Self::Config, working_set: &mut WorkingSet) -> Result<(), Error> { + fn genesis( + &self, + config: &Self::Config, + working_set: &mut impl GenesisState, + ) -> Result<(), Error> { Ok(self.init_module(config, working_set)?) } @@ -66,7 +71,7 @@ impl Module for IbcTransfer { &self, _msg: Self::CallMessage, _context: &Context, - _working_set: &mut WorkingSet, + _working_set: &mut impl TxState, ) -> Result { Err(Error::ModuleError(anyhow!( "Cannot call sov-ibc-transfer; use sov-ibc instead" diff --git a/modules/sov-ibc/src/call.rs b/modules/sov-ibc/src/call.rs index 995ccfe0..788b99f8 100644 --- a/modules/sov-ibc/src/call.rs +++ b/modules/sov-ibc/src/call.rs @@ -9,7 +9,7 @@ use ibc_core::entrypoint::dispatch; use ibc_core::handler::types::msgs::MsgEnvelope; use ibc_core::primitives::proto::Any; use sov_ibc_transfer::context::IbcTransferContext; -use sov_modules_api::{CallResponse, Context, Spec, WorkingSet}; +use sov_modules_api::{CallResponse, Context, Spec, TxState}; use tracing::info; use crate::context::IbcContext; @@ -34,7 +34,7 @@ impl Ibc { &self, msg: Any, context: Context, - working_set: &mut WorkingSet, + working_set: &mut impl TxState, ) -> Result { let msg_envelope = MsgEnvelope::try_from(msg).map_err(|e| { anyhow::anyhow!("Failed to convert Any to MsgEnvelope: {}", e.to_string()) @@ -67,7 +67,7 @@ impl Ibc { &self, msg_transfer: MsgTransfer, context: Context, - working_set: &mut WorkingSet, + working_set: &mut impl TxState, ) -> Result { info!( "Processing IBC transfer message: {:?} at visible_slot_number: {:?}", diff --git a/modules/sov-ibc/src/clients/context.rs b/modules/sov-ibc/src/clients/context.rs index 06e041e4..6591e3cb 100644 --- a/modules/sov-ibc/src/clients/context.rs +++ b/modules/sov-ibc/src/clients/context.rs @@ -6,12 +6,12 @@ use ibc_core::host::types::identifiers::ClientId; use ibc_core::host::types::path::{ClientConsensusStatePath, ClientStatePath}; use ibc_core::host::ValidationContext; use ibc_core::primitives::Timestamp; -use sov_modules_api::Spec; +use sov_modules_api::{Spec, TxState}; use super::{AnyClientState, AnyConsensusState}; use crate::context::IbcContext; -impl<'a, S: Spec> ClientValidationContext for IbcContext<'a, S> { +impl<'a, S: Spec, TS: TxState> ClientValidationContext for IbcContext<'a, S, TS> { type ClientStateRef = AnyClientState; type ConsensusStateRef = AnyConsensusState; @@ -70,7 +70,7 @@ impl<'a, S: Spec> ClientValidationContext for IbcContext<'a, S> { } } -impl<'a, S: Spec> ClientExecutionContext for IbcContext<'a, S> { +impl<'a, S: Spec, TS: TxState> ClientExecutionContext for IbcContext<'a, S, TS> { type ClientStateMut = AnyClientState; fn store_client_state( @@ -144,7 +144,7 @@ impl<'a, S: Spec> ClientExecutionContext for IbcContext<'a, S> { } } -impl<'a, S: Spec> ExtClientValidationContext for IbcContext<'a, S> { +impl<'a, S: Spec, TS: TxState> ExtClientValidationContext for IbcContext<'a, S, TS> { fn host_timestamp(&self) -> Result { ::host_timestamp(self) } @@ -179,8 +179,8 @@ impl<'a, S: Spec> ExtClientValidationContext for IbcContext<'a, S> { } } -fn next_consensus_state( - ctx: &IbcContext<'_, S>, +fn next_consensus_state>( + ctx: &IbcContext<'_, S, TS>, client_id: &ClientId, height: &Height, ) -> Result, ContextError> { @@ -238,8 +238,8 @@ fn next_consensus_state( Ok(None) } -fn prev_consensus_state( - ctx: &IbcContext<'_, S>, +fn prev_consensus_state>( + ctx: &IbcContext<'_, S, TS>, client_id: &ClientId, height: &Height, ) -> Result, ContextError> { diff --git a/modules/sov-ibc/src/clients/mod.rs b/modules/sov-ibc/src/clients/mod.rs index 610bd722..ac432f97 100644 --- a/modules/sov-ibc/src/clients/mod.rs +++ b/modules/sov-ibc/src/clients/mod.rs @@ -25,7 +25,7 @@ use sov_celestia_client::types::client_state::{ use sov_celestia_client::types::consensus_state::{ SovTmConsensusState, SOV_TENDERMINT_CONSENSUS_STATE_TYPE_URL, }; -use sov_modules_api::Spec; +use sov_modules_api::{Spec, TxState}; use crate::context::IbcContext; @@ -166,13 +166,14 @@ impl ClientStateCommon for AnyClientState { } } -impl<'a, S> ClientStateExecution> for AnyClientState +impl<'a, S, TS> ClientStateExecution> for AnyClientState where S: Spec, + TS: TxState, { fn initialise( &self, - ctx: &mut IbcContext<'a, S>, + ctx: &mut IbcContext<'a, S, TS>, client_id: &ClientId, consensus_state: Any, ) -> Result<(), ClientError> { @@ -184,7 +185,7 @@ where fn update_state( &self, - ctx: &mut IbcContext<'a, S>, + ctx: &mut IbcContext<'a, S, TS>, client_id: &ClientId, header: Any, ) -> Result, ClientError> { @@ -196,7 +197,7 @@ where fn update_state_on_misbehaviour( &self, - ctx: &mut IbcContext<'a, S>, + ctx: &mut IbcContext<'a, S, TS>, client_id: &ClientId, client_message: Any, ) -> Result<(), ClientError> { @@ -212,7 +213,7 @@ where fn update_state_on_upgrade( &self, - ctx: &mut IbcContext<'a, S>, + ctx: &mut IbcContext<'a, S, TS>, client_id: &ClientId, upgraded_client_state: Any, upgraded_consensus_state: Any, @@ -235,7 +236,7 @@ where fn update_on_recovery( &self, - ctx: &mut IbcContext<'a, S>, + ctx: &mut IbcContext<'a, S, TS>, subject_client_id: &ClientId, substitute_client_state: Any, ) -> Result<(), ClientError> { @@ -250,13 +251,14 @@ where } } -impl<'a, S> ClientStateValidation> for AnyClientState +impl<'a, S, TS> ClientStateValidation> for AnyClientState where S: Spec, + TS: TxState, { fn verify_client_message( &self, - ctx: &IbcContext<'a, S>, + ctx: &IbcContext<'a, S, TS>, client_id: &ClientId, client_message: Any, ) -> Result<(), ClientError> { @@ -272,7 +274,7 @@ where fn check_for_misbehaviour( &self, - ctx: &IbcContext<'a, S>, + ctx: &IbcContext<'a, S, TS>, client_id: &ClientId, client_message: Any, ) -> Result { @@ -286,7 +288,11 @@ where } } - fn status(&self, ctx: &IbcContext<'a, S>, client_id: &ClientId) -> Result { + fn status( + &self, + ctx: &IbcContext<'a, S, TS>, + client_id: &ClientId, + ) -> Result { match self { AnyClientState::Tendermint(cs) => cs.status(ctx, client_id), AnyClientState::Sovereign(cs) => cs.status(ctx, client_id), @@ -295,7 +301,7 @@ where fn check_substitute( &self, - ctx: &IbcContext<'a, S>, + ctx: &IbcContext<'a, S, TS>, substitute_client_state: Any, ) -> Result<(), ClientError> { match self { diff --git a/modules/sov-ibc/src/codec.rs b/modules/sov-ibc/src/codec.rs index 56c5204f..9080e6a3 100644 --- a/modules/sov-ibc/src/codec.rs +++ b/modules/sov-ibc/src/codec.rs @@ -6,7 +6,7 @@ use ibc_core::channel::types::commitment::{AcknowledgementCommitment, PacketComm use ibc_core::primitives::proto::Protobuf; use prost::Message; use sov_state::codec::BorshCodec; -use sov_state::storage::{StateCodec, StateItemDecoder, StateItemEncoder}; +use sov_state::{StateCodec, StateItemDecoder, StateItemEncoder}; #[derive(Default, Clone)] pub struct ProtobufCodec { @@ -43,7 +43,10 @@ where } } -impl StateCodec for ProtobufCodec { +impl StateCodec for ProtobufCodec +where + Raw: Default + Clone + Send + Sync + 'static, +{ type KeyCodec = BorshCodec; type ValueCodec = Self; diff --git a/modules/sov-ibc/src/context.rs b/modules/sov-ibc/src/context.rs index 7c445fde..87d3420f 100644 --- a/modules/sov-ibc/src/context.rs +++ b/modules/sov-ibc/src/context.rs @@ -22,7 +22,7 @@ use ibc_core::host::{ExecutionContext, ValidationContext}; use ibc_core::primitives::{Signer, Timestamp}; use sov_celestia_client::client_state::{ClientState as HostClientState, ClientState}; use sov_celestia_client::consensus_state::{ConsensusState as HostConsensusState, ConsensusState}; -use sov_modules_api::{EventEmitter, ModuleInfo, Spec, WorkingSet}; +use sov_modules_api::{EventEmitter, ModuleInfo, Spec, TxState}; use sov_state::Prefix; use crate::event::auxiliary_packet_events; @@ -32,22 +32,21 @@ use crate::Ibc; pub const HOST_REVISION_NUMBER: u64 = 0; #[derive(Clone)] -pub struct IbcContext<'a, S> +pub struct IbcContext<'a, S, TS> where S: Spec, + TS: TxState, { pub ibc: &'a Ibc, - pub working_set: Rc>>, + pub working_set: Rc>, } -impl<'a, S> IbcContext<'a, S> +impl<'a, S, TS> IbcContext<'a, S, TS> where S: Spec, + TS: TxState, { - pub fn new( - ibc: &'a Ibc, - working_set: Rc>>, - ) -> IbcContext<'a, S> { + pub fn new(ibc: &'a Ibc, working_set: Rc>) -> IbcContext<'a, S, TS> { IbcContext { ibc, working_set } } @@ -99,9 +98,10 @@ where } } -impl<'a, S> ValidationContext for IbcContext<'a, S> +impl<'a, S, TS> ValidationContext for IbcContext<'a, S, TS> where S: Spec, + TS: TxState, { type V = Self; type HostClientState = ClientState; @@ -190,7 +190,7 @@ where fn commitment_prefix(&self) -> CommitmentPrefix { let module_prefix: Prefix = self.ibc.prefix().into(); - let module_prefix_vec = module_prefix.as_aligned_vec().clone().into_inner(); + let module_prefix_vec = module_prefix.as_ref().to_vec(); CommitmentPrefix::try_from(module_prefix_vec).expect("never fails as prefix is not empty") } @@ -332,9 +332,10 @@ where } } -impl<'a, S> ExecutionContext for IbcContext<'a, S> +impl<'a, S, TS> ExecutionContext for IbcContext<'a, S, TS> where S: Spec, + TS: TxState, { type E = Self; diff --git a/modules/sov-ibc/src/genesis.rs b/modules/sov-ibc/src/genesis.rs index 4f8ca92b..8024d6a3 100644 --- a/modules/sov-ibc/src/genesis.rs +++ b/modules/sov-ibc/src/genesis.rs @@ -1,5 +1,5 @@ use anyhow::Result; -use sov_modules_api::{Module, Spec, WorkingSet}; +use sov_modules_api::{GenesisState, Module, Spec}; use crate::Ibc; @@ -7,7 +7,7 @@ impl Ibc { pub(crate) fn init_module( &self, _config: &::Config, - working_set: &mut WorkingSet, + working_set: &mut impl GenesisState, ) -> Result<()> { self.client_counter.set(&0, working_set); self.connection_counter.set(&0, working_set); diff --git a/modules/sov-ibc/src/lib.rs b/modules/sov-ibc/src/lib.rs index 5e08a90e..907199b2 100644 --- a/modules/sov-ibc/src/lib.rs +++ b/modules/sov-ibc/src/lib.rs @@ -34,7 +34,8 @@ use sov_celestia_client::client_state::ClientState as HostClientState; use sov_celestia_client::consensus_state::ConsensusState as HostConsensusState; use sov_ibc_transfer::IbcTransfer; use sov_modules_api::{ - Context, Error, ModuleId, ModuleInfo, Spec, StateMap, StateValue, StateVec, WorkingSet, + Context, Error, GenesisState, ModuleId, ModuleInfo, Spec, StateMap, StateValue, StateVec, + TxState, }; #[derive(Debug, Clone, Serialize, Deserialize, Eq, PartialEq)] @@ -47,7 +48,6 @@ pub struct ExampleModuleConfig {} /// module naming convention used throughout the codebase, ensuring created /// prefixes by modules are in harmony. #[derive(ModuleInfo, Clone)] -#[cfg_attr(feature = "native", derive(sov_modules_api::ModuleCallJsonSchema))] pub struct Ibc { #[id] pub id: ModuleId, @@ -142,7 +142,11 @@ impl sov_modules_api::Module for Ibc { type Event = IbcEvent; - fn genesis(&self, config: &Self::Config, working_set: &mut WorkingSet) -> Result<(), Error> { + fn genesis( + &self, + config: &Self::Config, + working_set: &mut impl GenesisState, + ) -> Result<(), Error> { Ok(self.init_module(config, working_set)?) } @@ -150,7 +154,7 @@ impl sov_modules_api::Module for Ibc { &self, msg: Self::CallMessage, context: &Context, - working_set: &mut WorkingSet, + working_set: &mut impl TxState, ) -> Result { match msg { call::CallMessage::Core(msg_envelope) => { diff --git a/modules/sov-ibc/src/router.rs b/modules/sov-ibc/src/router.rs index d3f3ea71..c041a647 100644 --- a/modules/sov-ibc/src/router.rs +++ b/modules/sov-ibc/src/router.rs @@ -7,20 +7,20 @@ use ibc_core::router::module::Module; use ibc_core::router::router::Router; use ibc_core::router::types::module::ModuleId; use sov_ibc_transfer::context::IbcTransferContext; -use sov_modules_api::{Context, Spec, WorkingSet}; +use sov_modules_api::{Context, Spec, TxState}; use crate::Ibc; -pub struct IbcRouter<'ws, S: Spec> { - pub transfer_ctx: IbcTransferContext<'ws, S>, +pub struct IbcRouter<'ws, S: Spec, TS: TxState> { + pub transfer_ctx: IbcTransferContext<'ws, S, TS>, } -impl<'ws, S: Spec> IbcRouter<'ws, S> { +impl<'ws, S: Spec, TS: TxState> IbcRouter<'ws, S, TS> { pub fn new( ibc_mod: &Ibc, sdk_context: Context, - working_set: Rc>>, - ) -> IbcRouter<'ws, S> { + working_set: Rc>, + ) -> IbcRouter<'ws, S, TS> { IbcRouter { transfer_ctx: IbcTransferContext::new( ibc_mod.transfer.clone(), @@ -31,7 +31,7 @@ impl<'ws, S: Spec> IbcRouter<'ws, S> { } } -impl<'ws, S: Spec> Router for IbcRouter<'ws, S> { +impl<'ws, S: Spec, TS: TxState> Router for IbcRouter<'ws, S, TS> { fn get_route(&self, module_id: &ModuleId) -> Option<&dyn Module> { if *module_id == ModuleId::new(MODULE_ID_STR.to_string()) { Some(&self.transfer_ctx) diff --git a/modules/sov-ibc/src/rpc/context.rs b/modules/sov-ibc/src/rpc/context.rs index d7ecec88..22c62d21 100644 --- a/modules/sov-ibc/src/rpc/context.rs +++ b/modules/sov-ibc/src/rpc/context.rs @@ -19,12 +19,12 @@ use ibc_query::core::context::{ProvableContext, QueryContext}; use jsonrpsee::core::RpcResult; use sov_celestia_client::client_state::ClientState as HostClientState; use sov_celestia_client::consensus_state::ConsensusState as HostConsensusState; -use sov_modules_api::Spec; +use sov_modules_api::{Spec, WorkingSet}; use crate::context::IbcContext; use crate::helpers::StorageValue; -impl<'a, S> IbcContext<'a, S> +impl<'a, S> IbcContext<'a, S, WorkingSet> where S: Spec, { @@ -249,7 +249,7 @@ where } } -impl<'a, S> ProvableContext for IbcContext<'a, S> +impl<'a, S> ProvableContext for IbcContext<'a, S, WorkingSet> where S: Spec, { @@ -332,7 +332,7 @@ where } } -impl<'a, S> QueryContext for IbcContext<'a, S> +impl<'a, S> QueryContext for IbcContext<'a, S, WorkingSet> where S: Spec, { diff --git a/modules/sov-ibc/src/rpc/helpers.rs b/modules/sov-ibc/src/rpc/helpers.rs index 512c39dc..5d424623 100644 --- a/modules/sov-ibc/src/rpc/helpers.rs +++ b/modules/sov-ibc/src/rpc/helpers.rs @@ -7,7 +7,7 @@ use ibc_core::host::ValidationContext; use jsonrpsee::core::RpcResult; use sov_ibc_transfer::to_jsonrpsee_error; use sov_modules_api::{Spec, StateMap, WorkingSet}; -use sov_state::storage::{StateCodec, StateItemCodec, StateItemDecoder}; +use sov_state::{StateCodec, StateItemCodec, StateItemDecoder}; use crate::context::IbcContext; use crate::Ibc; diff --git a/nix/sov-celestia-cw.nix b/nix/sov-celestia-cw.nix index a9729c8d..8e6339f1 100644 --- a/nix/sov-celestia-cw.nix +++ b/nix/sov-celestia-cw.nix @@ -73,7 +73,7 @@ let "jmt-0.9.0" = "sha256-pq1v6FXS//6Dh+fdysQIVp+RVLHdXrW5aDx3263O1rs="; "nmt-rs-0.1.0" = "sha256-jcHbqyIKk8ZDDjSz+ot5YDxROOnrpM4TRmNFVfNniwU="; "risc0-cycle-utils-0.3.0" = "sha256-5dA62v1eqfyZBny4s3YlC2Tty7Yfd/OAVGfTlLBgypk="; - "rockbound-1.0.0" = "sha256-xTaeBndRb/bYe+tySChDKsh4f9pywAExsdgJExCQiy8="; + "rockbound-1.0.0" = "sha256-aDrNegRfsSwiNw4XLsE4rpUYDZn2N59UJbGZ6mpY180="; "tendermint-0.32.0" = "sha256-FtY7a+hBvQryATrs3mykCWFRe8ABTT6cuf5oh9IBElQ="; }; }; diff --git a/rust-toolchain.toml b/rust-toolchain.toml index b1f52442..07f11777 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,5 +1,5 @@ [toolchain] -channel = "1.75" +channel = "1.77" components = [ "rustfmt", "rust-src", "clippy" ] profile = "minimal" targets = [