diff --git a/Cargo.lock b/Cargo.lock index 077072a..01f30f5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1,6 +1,6 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. -version = 3 +version = 4 [[package]] name = "addchain" @@ -37,7 +37,7 @@ dependencies = [ "cfg-if", "once_cell", "version_check", - "zerocopy", + "zerocopy 0.7.35", ] [[package]] @@ -57,15 +57,15 @@ checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] name = "alloy-chains" -version = "0.1.61" +version = "0.1.63" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a754dbb534198644cb8355b8c23f4aaecf03670fb9409242be1fa1e25897ee9" +checksum = "996564c1782285d4e0299c29b318bc74f24b1d7f456cef3e040810b061ee3256" dependencies = [ "alloy-primitives", "alloy-rlp", "num_enum 0.7.3", "serde", - "strum", + "strum 0.27.1", ] [[package]] @@ -81,7 +81,7 @@ dependencies = [ "alloy-trie", "auto_impl", "c-kzg", - "derive_more", + "derive_more 1.0.0", "serde", "serde_with", ] @@ -110,7 +110,7 @@ dependencies = [ "alloy-rlp", "crc", "serde", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] @@ -126,16 +126,16 @@ dependencies = [ [[package]] name = "alloy-eip7702" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cabf647eb4650c91a9d38cb6f972bb320009e7e9d61765fb688a86f1563b33e8" +checksum = "9b15b13d38b366d01e818fe8e710d4d702ef7499eacd44926a06171dd9585d0c" dependencies = [ "alloy-primitives", "alloy-rlp", - "derive_more", "k256", "serde", "serde_with", + "thiserror 2.0.12", ] [[package]] @@ -152,10 +152,21 @@ dependencies = [ "alloy-serde", "auto_impl", "c-kzg", - "derive_more", + "derive_more 1.0.0", "once_cell", "serde", - "sha2", + "sha2 0.10.8", +] + +[[package]] +name = "alloy-evm" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/evm?rev=04fa394#04fa3947c5694c2d15956bb18a31834b95e0e975" +dependencies = [ + "alloy-consensus", + "alloy-primitives", + "revm", + "revm-optimism", ] [[package]] @@ -171,18 +182,6 @@ dependencies = [ "serde", ] -[[package]] -name = "alloy-json-abi" -version = "0.8.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4012581681b186ba0882007ed873987cc37f86b1b488fe6b91d5efd0b585dc41" -dependencies = [ - "alloy-primitives", - "alloy-sol-type-parser", - "serde", - "serde_json", -] - [[package]] name = "alloy-json-rpc" version = "0.11.1" @@ -193,7 +192,7 @@ dependencies = [ "alloy-sol-types", "serde", "serde_json", - "thiserror 2.0.11", + "thiserror 2.0.12", "tracing", ] @@ -219,7 +218,7 @@ dependencies = [ "futures-utils-wasm", "serde", "serde_json", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] @@ -235,17 +234,28 @@ dependencies = [ "serde", ] +[[package]] +name = "alloy-op-evm" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/evm?rev=04fa394#04fa3947c5694c2d15956bb18a31834b95e0e975" +dependencies = [ + "alloy-evm", + "alloy-primitives", + "revm", + "revm-optimism", +] + [[package]] name = "alloy-primitives" -version = "0.8.21" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "478bedf4d24e71ea48428d1bc278553bd7c6ae07c30ca063beb0b09fe58a9e74" +checksum = "8c66bb6715b7499ea755bde4c96223ae8eb74e05c014ab38b9db602879ffb825" dependencies = [ "alloy-rlp", "bytes", "cfg-if", "const-hex", - "derive_more", + "derive_more 2.0.1", "foldhash", "hashbrown 0.15.2", "indexmap 2.7.1", @@ -254,7 +264,7 @@ dependencies = [ "keccak-asm", "paste", "proptest", - "rand", + "rand 0.8.5", "ruint", "rustc-hash 2.1.1", "serde", @@ -294,7 +304,7 @@ dependencies = [ "reqwest", "serde", "serde_json", - "thiserror 2.0.11", + "thiserror 2.0.12", "tokio", "tracing", "url", @@ -339,7 +349,7 @@ checksum = "a40e1ef334153322fd878d07e86af7a529bcb86b2439525920a88eba87bcf943" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -390,6 +400,20 @@ dependencies = [ "alloy-serde", ] +[[package]] +name = "alloy-rpc-types-engine" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e83dde9fcf1ccb9b815cc0c89bba26bbbbaae5150a53ae624ed0fc63cb3676c1" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "derive_more 1.0.0", + "strum 0.26.3", +] + [[package]] name = "alloy-rpc-types-eth" version = "0.11.1" @@ -407,7 +431,7 @@ dependencies = [ "itertools 0.14.0", "serde", "serde_json", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] @@ -433,7 +457,7 @@ dependencies = [ "either", "elliptic-curve", "k256", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] @@ -448,29 +472,29 @@ dependencies = [ "alloy-signer", "async-trait", "k256", - "rand", - "thiserror 2.0.11", + "rand 0.8.5", + "thiserror 2.0.12", ] [[package]] name = "alloy-sol-macro" -version = "0.8.21" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2708e27f58d747423ae21d31b7a6625159bd8d867470ddd0256f396a68efa11" +checksum = "c7f9c3c7bc1f4e334e5c5fc59ec8dac894973a71b11da09065affc6094025049" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "alloy-sol-macro-expander" -version = "0.8.21" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6b7984d7e085dec382d2c5ef022b533fcdb1fe6129200af30ebf5afddb6a361" +checksum = "46ff7aa715eb2404cb87fa94390d2c5d5addd70d9617e20b2398ee6f48cb21f0" dependencies = [ "alloy-sol-macro-input", "const-hex", @@ -479,47 +503,35 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", "syn-solidity", "tiny-keccak", ] [[package]] name = "alloy-sol-macro-input" -version = "0.8.21" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33d6a9fc4ed1a3c70bdb2357bec3924551c1a59f24e5a04a74472c755b37f87d" +checksum = "6f105fa700140c0cc6e2c3377adef650c389ac57b8ead8318a2e6bd52f1ae841" dependencies = [ "const-hex", "dunce", "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", "syn-solidity", ] -[[package]] -name = "alloy-sol-type-parser" -version = "0.8.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b1b3e9a48a6dd7bb052a111c8d93b5afc7956ed5e2cb4177793dc63bb1d2a36" -dependencies = [ - "serde", - "winnow 0.7.2", -] - [[package]] name = "alloy-sol-types" -version = "0.8.21" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6044800da35c38118fd4b98e18306bd3b91af5dedeb54c1b768cf1b4fb68f549" +checksum = "5f819635439ebb06aa13c96beac9b2e7360c259e90f5160a6848ae0d94d10452" dependencies = [ - "alloy-json-abi", "alloy-primitives", "alloy-sol-macro", "const-hex", - "serde", ] [[package]] @@ -529,11 +541,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a8d762eadce3e9b65eac09879430c6f4fce3736cac3cac123f9b1bf435ddd13" dependencies = [ "alloy-json-rpc", - "base64", + "base64 0.22.1", "futures-utils-wasm", "serde", "serde_json", - "thiserror 2.0.11", + "thiserror 2.0.12", "tokio", "tower 0.5.2", "tracing", @@ -583,7 +595,7 @@ dependencies = [ "alloy-primitives", "alloy-rlp", "arrayvec", - "derive_more", + "derive_more 1.0.0", "nybbles", "serde", "smallvec", @@ -666,9 +678,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.95" +version = "1.0.97" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34ac096ce696dc2fcabef30516bb13c0a68a11d30131d3df6f04711467681b04" +checksum = "dcfed56ad506cb2c684a14971b8861fdc3baaaae314b9e5f9bb532cbe3ba7a4f" [[package]] name = "ark-ff" @@ -781,7 +793,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1df2c09229cbc5a028b1d70e00fdb2acee28b1055dfb5ca73eea49c5a25c4e7c" dependencies = [ "num-traits", - "rand", + "rand 0.8.5", ] [[package]] @@ -791,7 +803,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" dependencies = [ "num-traits", - "rand", + "rand 0.8.5", ] [[package]] @@ -828,18 +840,18 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "async-trait" -version = "0.1.86" +version = "0.1.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "644dd749086bf3771a2fbc5f256fdb982d53f011c7d5d560304eafeecebce79d" +checksum = "d556ec1359574147ec0c4fc5eb525f3f23263a592b1a9c07e0a75b427de55c97" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -877,7 +889,7 @@ checksum = "e12882f59de5360c748c4cbf569a042d5fb0eb515f7bea9c1f470b47f6ffbd73" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -951,7 +963,7 @@ dependencies = [ "getrandom 0.2.15", "instant", "pin-project-lite", - "rand", + "rand 0.8.5", "tokio", ] @@ -977,6 +989,12 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" +[[package]] +name = "base64" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" + [[package]] name = "base64" version = "0.22.1" @@ -1021,29 +1039,45 @@ dependencies = [ "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "bit-set" -version = "0.5.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" +checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3" dependencies = [ "bit-vec", ] [[package]] name = "bit-vec" -version = "0.6.3" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" + +[[package]] +name = "bitcoin-io" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" +checksum = "0b47c4ab7a93edb0c7198c5535ed9b52b63095f4e9b45279c6736cec4b856baf" + +[[package]] +name = "bitcoin_hashes" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb18c03d0db0247e147a21a6faafd5a7eb851c743db062de72018b6b7e8e4d16" +dependencies = [ + "bitcoin-io", + "hex-conservative", +] [[package]] name = "bitflags" -version = "2.8.0" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f68f53c83ab957f72c32642f3868eec03eb974d1fb82e453128456482613d36" +checksum = "5c8214115b7bf84099f1309324e63141d4c5d7cc26862f97a0a857dbefe165bd" dependencies = [ "serde", ] @@ -1081,6 +1115,15 @@ dependencies = [ "constant_time_eq", ] +[[package]] +name = "block-buffer" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" +dependencies = [ + "generic-array 0.14.7", +] + [[package]] name = "block-buffer" version = "0.10.4" @@ -1099,7 +1142,7 @@ dependencies = [ "ff 0.12.1", "group 0.12.1", "pairing 0.22.0", - "rand_core", + "rand_core 0.6.4", "subtle", ] @@ -1123,15 +1166,15 @@ checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" [[package]] name = "byte-slice-cast" -version = "1.2.2" +version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c" +checksum = "7575182f7272186991736b70173b0ea045398f984bf5ebbb3804736ce1330c9d" [[package]] name = "bytemuck" -version = "1.21.0" +version = "1.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef657dfab802224e671f5818e9a4935f9b1957ed18e58292690cc39e7a4092a3" +checksum = "b6b1fc10dbac614ebc03540c9dbd60e83887fda27794998c6528f1782047d540" dependencies = [ "bytemuck_derive", ] @@ -1144,7 +1187,7 @@ checksum = "3fa76293b4f7bb636ab88fd78228235b5248b4d05cc589aed610f954af5d7c7a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -1203,7 +1246,7 @@ checksum = "2d886547e41f740c616ae73108f6eb70afe6d940c7bc697cb30f13daec073037" dependencies = [ "camino", "cargo-platform", - "semver 1.0.25", + "semver 1.0.26", "serde", "serde_json", "thiserror 1.0.69", @@ -1223,16 +1266,16 @@ dependencies = [ "quote", "serde", "serde_json", - "syn 2.0.98", + "syn 2.0.99", "tempfile", "toml", ] [[package]] name = "cc" -version = "1.2.14" +version = "1.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c3d1b2e905a3a7b00a6141adb0e4c0bb941d11caf55349d863942a1cc44e3c9" +checksum = "be714c154be609ec7f5dad223a33bf1482fff90472de28f7362806e6d4832b8c" dependencies = [ "jobserver", "libc", @@ -1262,9 +1305,9 @@ checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" [[package]] name = "chrono" -version = "0.4.39" +version = "0.4.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e36cc9d416881d2e24f9a963be5fb1cd90966419ac844274161d10488b3e825" +checksum = "1a7964611d71df112cb1730f2ee67324fcf4d0fc6606acbbe9bfe06df124637c" dependencies = [ "android-tzdata", "iana-time-zone", @@ -1272,7 +1315,7 @@ dependencies = [ "num-traits", "serde", "wasm-bindgen", - "windows-targets 0.52.6", + "windows-link", ] [[package]] @@ -1288,9 +1331,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.29" +version = "4.5.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8acebd8ad879283633b343856142139f2da2317c96b05b4dd6181c61e2480184" +checksum = "027bb0d98429ae334a8698531da7077bdf906419543a35a55c2cb1b66437d767" dependencies = [ "clap_builder", "clap_derive", @@ -1298,9 +1341,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.29" +version = "4.5.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6ba32cbda51c7e1dfd49acc1457ba1a7dec5b64fe360e828acb13ca8dc9c2f9" +checksum = "5589e0cba072e0f3d23791efac0fd8627b49c829c196a492e88168e6a669d863" dependencies = [ "anstream", "anstyle", @@ -1317,7 +1360,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -1334,9 +1377,9 @@ checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" [[package]] name = "console" -version = "0.15.10" +version = "0.15.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea3c6ecd8059b57859df5c69830340ed3c41d30e3da0c1cbed90a96ac853041b" +checksum = "054ccb5b10f9f2cbf51eb355ca1d05c2d279ce1804688d0db74b4733a5aeafd8" dependencies = [ "encode_unicode", "libc", @@ -1392,9 +1435,9 @@ checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" [[package]] name = "convert_case" -version = "0.6.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" +checksum = "bb402b8d4c85569410425650ce3eddc7d698ed96d39a73f941b08fb63082f1e7" dependencies = [ "unicode-segmentation", ] @@ -1502,7 +1545,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" dependencies = [ "generic-array 0.14.7", - "rand_core", + "rand_core 0.6.4", "subtle", "zeroize", ] @@ -1569,7 +1612,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -1580,7 +1623,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ "darling_core", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -1713,13 +1756,33 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "derive-where" +version = "1.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62d671cc41a825ebabc75757b62d3d168c577f9149b2d49ece1dad1f72119d25" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.99", +] + [[package]] name = "derive_more" version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4a9b99b9cbbe49445b21764dc0625032a89b145a2642e67603e1c936f5458d05" dependencies = [ - "derive_more-impl", + "derive_more-impl 1.0.0", +] + +[[package]] +name = "derive_more" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" +dependencies = [ + "derive_more-impl 2.0.1", ] [[package]] @@ -1727,11 +1790,23 @@ name = "derive_more-impl" version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.99", + "unicode-xid", +] + +[[package]] +name = "derive_more-impl" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", "unicode-xid", ] @@ -1750,7 +1825,7 @@ version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ - "block-buffer", + "block-buffer 0.10.4", "const-oid", "crypto-common", "subtle", @@ -1785,7 +1860,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -1808,7 +1883,7 @@ checksum = "9ac1e888d6830712d565b2f3a974be3200be9296bc1b03db8251a4cbf18a4a34" dependencies = [ "digest 0.10.7", "futures", - "rand", + "rand 0.8.5", "reqwest", "thiserror 1.0.69", "tokio", @@ -1822,9 +1897,9 @@ checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" [[package]] name = "dyn-clone" -version = "1.0.18" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "feeef44e73baff3a26d371801df019877a9866a8c493d315ab00177843314f35" +checksum = "1c7a8fb8a9fbf66c1f703fe16184d10ca0ee9d23be5b4436400408ba54a95005" [[package]] name = "ecdsa" @@ -1842,9 +1917,9 @@ dependencies = [ [[package]] name = "either" -version = "1.13.0" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" +checksum = "b7914353092ddf589ad78f25c5c1c21b7f80b0ff8621e7c814c3485b5306da9d" [[package]] name = "elf" @@ -1867,7 +1942,7 @@ dependencies = [ "hkdf", "pem-rfc7468", "pkcs8", - "rand_core", + "rand_core 0.6.4", "sec1", "serdect", "subtle", @@ -1907,7 +1982,7 @@ checksum = "f282cfdfe92516eb26c2af8589c274c7c17681f5ecc03c18255fe741c6aa64eb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -1918,14 +1993,14 @@ checksum = "2f9ed6b3789237c8a0c1c505af1c7eb2c560df6186f01b098c3a1064ea532f38" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "equivalent" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "errno" @@ -1946,7 +2021,7 @@ dependencies = [ "alloy-rpc-client", "alloy-transport", "alloy-transport-ws", - "base64", + "base64 0.22.1", "clap", "dotenv", "eyre", @@ -2011,7 +2086,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d013fc25338cc558c5c2cfbad646908fb23591e2404481826742b651c9af7160" dependencies = [ "bitvec", - "rand_core", + "rand_core 0.6.4", "subtle", ] @@ -2024,7 +2099,7 @@ dependencies = [ "bitvec", "byteorder", "ff_derive", - "rand_core", + "rand_core 0.6.4", "subtle", ] @@ -2051,7 +2126,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" dependencies = [ "byteorder", - "rand", + "rand 0.8.5", "rustc-hex", "static_assertions", ] @@ -2154,7 +2229,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -2265,7 +2340,7 @@ checksum = "5dfbfb3a6cfbd390d5c9564ab283a0349b9b9fcd46a706c1eb10e0db70bfbac7" dependencies = [ "ff 0.12.1", "memuse", - "rand_core", + "rand_core 0.6.4", "subtle", ] @@ -2276,15 +2351,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" dependencies = [ "ff 0.13.0", - "rand_core", + "rand_core 0.6.4", "subtle", ] [[package]] name = "h2" -version = "0.4.7" +version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccae279728d634d083c00f6099cb58f01cc99c145b84b8be2f6c74618d79922e" +checksum = "5017294ff4bb30944501348f6f8e42e6ad28f42c8bbef7a74029aff064a4e3c2" dependencies = [ "atomic-waker", "bytes", @@ -2318,7 +2393,7 @@ dependencies = [ "ff 0.12.1", "group 0.12.1", "pasta_curves 0.4.1", - "rand_core", + "rand_core 0.6.4", "rayon", ] @@ -2378,6 +2453,15 @@ dependencies = [ "serde", ] +[[package]] +name = "hex-conservative" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5313b072ce3c597065a808dbf612c4c8e8590bdbf8b579508bf7a762c5eae6cd" +dependencies = [ + "arrayvec", +] + [[package]] name = "hex-literal" version = "0.4.1" @@ -2438,9 +2522,9 @@ dependencies = [ [[package]] name = "httparse" -version = "1.10.0" +version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2d708df4e7140240a16cd6ab0ab65c972d7433ab77819ea693fde9c43811e2a" +checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87" [[package]] name = "httpdate" @@ -2673,7 +2757,7 @@ checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -2720,7 +2804,7 @@ checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -2823,9 +2907,9 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.14" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" +checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" [[package]] name = "jobserver" @@ -2856,7 +2940,7 @@ dependencies = [ "bls12_381", "ff 0.12.1", "group 0.12.1", - "rand_core", + "rand_core 0.6.4", "subtle", ] @@ -2871,7 +2955,7 @@ dependencies = [ "hex", "once_cell", "serdect", - "sha2", + "sha2 0.10.8", "signature", "sp1-lib", ] @@ -2903,7 +2987,7 @@ checksum = "6efe7b9aea4a6b9454dc95a67f2de13505f6b4fbea885bc7a5c09bda48a85b18" dependencies = [ "ff 0.13.0", "hex", - "sha2", + "sha2 0.10.8", "sp1_bls12_381", "spin", ] @@ -2919,9 +3003,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.169" +version = "0.2.170" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a" +checksum = "875b3680cb2f8f71bdcf9a30f38d48282f5d3c95cbf9b3fa57269bb5d5c06828" [[package]] name = "libloading" @@ -2949,6 +3033,52 @@ dependencies = [ "libc", ] +[[package]] +name = "libsecp256k1" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95b09eff1b35ed3b33b877ced3a691fc7a481919c7e29c53c906226fcf55e2a1" +dependencies = [ + "arrayref", + "base64 0.13.1", + "digest 0.9.0", + "libsecp256k1-core", + "libsecp256k1-gen-ecmult", + "libsecp256k1-gen-genmult", + "rand 0.8.5", + "serde", + "sha2 0.9.9", +] + +[[package]] +name = "libsecp256k1-core" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5be9b9bb642d8522a44d533eab56c16c738301965504753b03ad1de3425d5451" +dependencies = [ + "crunchy", + "digest 0.9.0", + "subtle", +] + +[[package]] +name = "libsecp256k1-gen-ecmult" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3038c808c55c87e8a172643a7d87187fc6c4174468159cb3090659d55bcb4809" +dependencies = [ + "libsecp256k1-core", +] + +[[package]] +name = "libsecp256k1-gen-genmult" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3db8d6ba2cec9eacc40e6e8ccc98931840301f1006e95647ceb2dd5c3aa06f7c" +dependencies = [ + "libsecp256k1-core", +] + [[package]] name = "linux-raw-sys" version = "0.4.15" @@ -2957,9 +3087,9 @@ checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" [[package]] name = "litemap" -version = "0.7.4" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ee93343901ab17bd981295f2cf0026d4ad018c7c31ba84549a4ddbb47a45104" +checksum = "23fb14cb19457329c82206317a5663005a4d404783dc74f4252769b0d5f42856" [[package]] name = "lock_api" @@ -2973,9 +3103,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.25" +version = "0.4.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04cbf5b083de1c7e0222a7a51dbfdba1cbe1c6ab0b15e29fff3f6c077fd9cd9f" +checksum = "30bde2b3dc3671ae49d8e2e9f044c7c005836e7a023ee57cffa25ab82764bb9e" [[package]] name = "lru" @@ -3022,28 +3152,6 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3d97bbf43eb4f088f8ca469930cde17fa036207c9a5e02ccc5107c4e8b17c964" -[[package]] -name = "metrics" -version = "0.24.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a7deb012b3b2767169ff203fadb4c6b0b82b947512e5eb9e0b78c2e186ad9e3" -dependencies = [ - "ahash", - "portable-atomic", -] - -[[package]] -name = "metrics-derive" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3dbdd96ed57d565ec744cba02862d707acf373c5772d152abae6ec5c4e24f6c" -dependencies = [ - "proc-macro2", - "quote", - "regex", - "syn 2.0.98", -] - [[package]] name = "mime" version = "0.3.17" @@ -3058,9 +3166,9 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.8.4" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3b1c9bd4fe1f0f8b387f6eb9eb3b4a1aa26185e5750efb9140301703f62cd1b" +checksum = "8e3e04debbb59698c15bacbb6d93584a8c0ca9cc3213cb423d31f760d8843ce5" dependencies = [ "adler2", ] @@ -3099,9 +3207,9 @@ dependencies = [ [[package]] name = "native-tls" -version = "0.2.13" +version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dab59f8e050d5df8e4dd87d9206fb6f65a483e20ac9fda365ade4fab353196c" +checksum = "87de3442987e9dbec73158d5c715e7ad9072fda936bb03d19d7fa10e00520f0e" dependencies = [ "libc", "log", @@ -3315,7 +3423,7 @@ checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -3358,26 +3466,26 @@ dependencies = [ [[package]] name = "op-alloy-consensus" -version = "0.10.3" +version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23f7ff02e5f3ba62c8dd5d9a630c818f50147bca7b0d78e89de59ed46b5d02e1" +checksum = "6ed6cad421e41d400667a06df8bd306dd316c3e1fed803df065b1c65d7de6795" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rlp", "alloy-serde", - "derive_more", + "derive_more 1.0.0", "serde", "serde_with", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] name = "op-alloy-network" -version = "0.10.3" +version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eab4dd4e260be40a7ab8debf5300baf1f02f1d2a6e0c1ab5741732d612de7d6e" +checksum = "a21e39c32d786aa8a84792a7e0d47cbb194d4709edc7a8a5241cea2ea4fdab22" dependencies = [ "alloy-consensus", "alloy-network", @@ -3390,9 +3498,9 @@ dependencies = [ [[package]] name = "op-alloy-rpc-types" -version = "0.10.3" +version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ed9af4583c4b3ea93f54092ebfe41172974de2042672e9850500f4d1f99844e" +checksum = "d2f91f1b1202bc5e46ece524b70d1b15b213c4bbf67718c0925cfb7d11fd800c" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3400,17 +3508,23 @@ dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", "alloy-serde", - "derive_more", + "derive_more 1.0.0", "op-alloy-consensus", "serde", "serde_json", ] +[[package]] +name = "opaque-debug" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" + [[package]] name = "openssl" -version = "0.10.70" +version = "0.10.71" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61cfb4e166a8bb8c9b55c500bc2308550148ece889be90f609377e58140f42c6" +checksum = "5e14130c6a98cd258fdcb0fb6d744152343ff729cbfcb28c656a9d12b999fbcd" dependencies = [ "bitflags", "cfg-if", @@ -3429,7 +3543,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -3440,9 +3554,9 @@ checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" [[package]] name = "openssl-sys" -version = "0.9.105" +version = "0.9.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b22d5b84be05a8d6947c7cb71f7c849aa0f112acd4bf51c2a7c1c988ac0a9dc" +checksum = "8bb61ea9811cc39e3c2069f40b8b8e2e70d8569b361f879786cc7ed48b777cdd" dependencies = [ "cc", "libc", @@ -3471,7 +3585,7 @@ dependencies = [ "elliptic-curve", "hex", "primeorder", - "sha2", + "sha2 0.10.8", "sp1-lib", ] @@ -3496,7 +3610,7 @@ dependencies = [ "p3-mds", "p3-poseidon2", "p3-symmetric", - "rand", + "rand 0.8.5", "serde", ] @@ -3511,7 +3625,7 @@ dependencies = [ "p3-field", "p3-poseidon2", "p3-symmetric", - "rand", + "rand 0.8.5", "serde", ] @@ -3566,7 +3680,7 @@ dependencies = [ "num-bigint 0.4.6", "num-traits", "p3-util", - "rand", + "rand 0.8.5", "serde", ] @@ -3624,7 +3738,7 @@ dependencies = [ "p3-field", "p3-maybe-rayon", "p3-util", - "rand", + "rand 0.8.5", "serde", "tracing", ] @@ -3650,7 +3764,7 @@ dependencies = [ "p3-matrix", "p3-symmetric", "p3-util", - "rand", + "rand 0.8.5", ] [[package]] @@ -3680,7 +3794,7 @@ dependencies = [ "p3-field", "p3-mds", "p3-symmetric", - "rand", + "rand 0.8.5", "serde", ] @@ -3766,7 +3880,7 @@ dependencies = [ "proc-macro-crate 3.2.0", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -3802,7 +3916,7 @@ dependencies = [ "ff 0.12.1", "group 0.12.1", "lazy_static", - "rand", + "rand 0.8.5", "static_assertions", "subtle", ] @@ -3817,7 +3931,7 @@ dependencies = [ "ff 0.13.0", "group 0.13.0", "lazy_static", - "rand", + "rand 0.8.5", "static_assertions", "subtle", ] @@ -3856,7 +3970,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b7cafe60d6cf8e62e1b9b2ea516a089c008945bb5a275416789e7db0bc199dc" dependencies = [ "memchr", - "thiserror 2.0.11", + "thiserror 2.0.12", "ucd-trie", ] @@ -3872,22 +3986,22 @@ dependencies = [ [[package]] name = "pin-project" -version = "1.1.9" +version = "1.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfe2e71e1471fe07709406bf725f710b02927c9c54b2b5b2ec0e8087d97c327d" +checksum = "677f1add503faace112b9f1373e43e9e054bfdd22ff1a63c1bc485eaec6a6a8a" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.9" +version = "1.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6e859e6e5bd50440ab63c47e3ebabc90f26251f7c73c3d3e837b74a1cc3fa67" +checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -3914,15 +4028,15 @@ dependencies = [ [[package]] name = "pkg-config" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" +checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" [[package]] name = "portable-atomic" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6" +checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e" [[package]] name = "powerfmt" @@ -3936,17 +4050,17 @@ version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" dependencies = [ - "zerocopy", + "zerocopy 0.7.35", ] [[package]] name = "prettyplease" -version = "0.2.29" +version = "0.2.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6924ced06e1f7dfe3fa48d57b9f74f55d8915f5036121bef647ef4b204895fac" +checksum = "f1ccf34da56fc294e7d4ccf69a85992b7dfb826b7cf57bac6a70bba3494cc08a" dependencies = [ "proc-macro2", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -4006,31 +4120,31 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "proc-macro2" -version = "1.0.93" +version = "1.0.94" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60946a68e5f9d28b0dc1c21bb8a97ee7d018a8b322fa57838ba31cc878e22d99" +checksum = "a31971752e70b8b2686d7e46ec17fb38dad4051d94024c88df49b667caea9c84" dependencies = [ "unicode-ident", ] [[package]] name = "proptest" -version = "1.5.0" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d" +checksum = "14cae93065090804185d3b75f0bf93b8eeda30c7a9b4a33d3bdb3988d6229e50" dependencies = [ "bit-set", "bit-vec", "bitflags", "lazy_static", "num-traits", - "rand", - "rand_chacha", + "rand 0.8.5", + "rand_chacha 0.3.1", "rand_xorshift", "regex-syntax 0.8.5", "rusty-fork", @@ -4058,7 +4172,7 @@ dependencies = [ "itertools 0.14.0", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -4080,7 +4194,7 @@ dependencies = [ "rustc-hash 2.1.1", "rustls", "socket2", - "thiserror 2.0.11", + "thiserror 2.0.12", "tokio", "tracing", ] @@ -4093,13 +4207,13 @@ checksum = "a2fe5ef3495d7d2e377ff17b1a8ce2ee2ec2a18cde8b6ad6619d65d0701c135d" dependencies = [ "bytes", "getrandom 0.2.15", - "rand", + "rand 0.8.5", "ring", "rustc-hash 2.1.1", "rustls", "rustls-pki-types", "slab", - "thiserror 2.0.11", + "thiserror 2.0.12", "tinyvec", "tracing", "web-time", @@ -4107,9 +4221,9 @@ dependencies = [ [[package]] name = "quinn-udp" -version = "0.5.9" +version = "0.5.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c40286217b4ba3a71d644d752e6a0b71f13f1b6a2c5311acfcbe0c2418ed904" +checksum = "e46f3055866785f6b92bc6164b76be02ca8f2eb4b002c0354b28cf4c119e5944" dependencies = [ "cfg_aliases", "libc", @@ -4121,9 +4235,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.38" +version = "1.0.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc" +checksum = "c1f1914ce909e1658d9907913b4b91947430c7d9be598b15a1912935b8c04801" dependencies = [ "proc-macro2", ] @@ -4141,11 +4255,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" dependencies = [ "libc", - "rand_chacha", - "rand_core", + "rand_chacha 0.3.1", + "rand_core 0.6.4", "serde", ] +[[package]] +name = "rand" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3779b94aeb87e8bd4e834cee3650289ee9e0d5677f976ecdb6d219e5f4f6cd94" +dependencies = [ + "rand_chacha 0.9.0", + "rand_core 0.9.3", + "zerocopy 0.8.21", +] + [[package]] name = "rand_chacha" version = "0.3.1" @@ -4153,7 +4278,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" dependencies = [ "ppv-lite86", - "rand_core", + "rand_core 0.6.4", +] + +[[package]] +name = "rand_chacha" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" +dependencies = [ + "ppv-lite86", + "rand_core 0.9.3", ] [[package]] @@ -4165,13 +4300,22 @@ dependencies = [ "getrandom 0.2.15", ] +[[package]] +name = "rand_core" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38" +dependencies = [ + "getrandom 0.3.1", +] + [[package]] name = "rand_xorshift" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" dependencies = [ - "rand_core", + "rand_core 0.6.4", ] [[package]] @@ -4205,9 +4349,9 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.5.8" +version = "0.5.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03a862b389f93e68874fbf580b9de08dd02facb9a788ebadaf4a3fd33cf58834" +checksum = "0b8c0c260b63a8219631167be35e6a988e9554dbd323f8bd08439c8ed1302bd1" dependencies = [ "bitflags", ] @@ -4273,7 +4417,7 @@ version = "0.12.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43e734407157c3c2034e0258f5e4473ddb361b1e85f95a66690d67264d7cd1da" dependencies = [ - "base64", + "base64 0.22.1", "bytes", "encoding_rs", "futures-core", @@ -4336,7 +4480,7 @@ dependencies = [ [[package]] name = "reth-chainspec" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-chains", "alloy-consensus", @@ -4345,7 +4489,7 @@ dependencies = [ "alloy-primitives", "alloy-trie", "auto_impl", - "derive_more", + "derive_more 2.0.1", "reth-ethereum-forks", "reth-network-peers", "reth-primitives-traits", @@ -4355,7 +4499,7 @@ dependencies = [ [[package]] name = "reth-codecs" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4372,31 +4516,31 @@ dependencies = [ [[package]] name = "reth-codecs-derive" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "reth-consensus" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", - "alloy-eips", "alloy-primitives", "auto_impl", - "derive_more", + "reth-execution-types", "reth-primitives-traits", + "thiserror 2.0.12", ] [[package]] name = "reth-consensus-common" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4406,22 +4550,33 @@ dependencies = [ "reth-primitives-traits", ] +[[package]] +name = "reth-db-models" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "reth-primitives-traits", + "serde", +] + [[package]] name = "reth-errors" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "reth-consensus", "reth-execution-errors", "reth-fs-util", "reth-storage-errors", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] name = "reth-ethereum-consensus" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4429,6 +4584,7 @@ dependencies = [ "reth-chainspec", "reth-consensus", "reth-consensus-common", + "reth-execution-types", "reth-primitives", "reth-primitives-traits", "tracing", @@ -4437,7 +4593,7 @@ dependencies = [ [[package]] name = "reth-ethereum-forks" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-chains", "alloy-eip2124", @@ -4452,143 +4608,131 @@ dependencies = [ [[package]] name = "reth-ethereum-primitives" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-evm", "alloy-network", "alloy-primitives", "alloy-rlp", "alloy-rpc-types-eth", "alloy-serde", - "derive_more", + "derive_more 2.0.1", "reth-primitives-traits", "reth-zstd-compressors", - "revm-primitives", - "secp256k1", + "revm-context", + "secp256k1 0.30.0", "serde", ] [[package]] name = "reth-evm" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-evm", "alloy-primitives", "auto_impl", + "derive_more 2.0.1", "futures-util", - "metrics", "reth-chainspec", - "reth-consensus", "reth-consensus-common", - "reth-ethereum-primitives", "reth-execution-errors", "reth-execution-types", - "reth-metrics", "reth-primitives", "reth-primitives-traits", "reth-storage-errors", "revm", - "revm-primitives", + "revm-database", + "revm-optimism", ] [[package]] name = "reth-evm-ethereum" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-evm", "alloy-primitives", "alloy-sol-types", - "derive_more", "reth-chainspec", - "reth-consensus", - "reth-ethereum-consensus", "reth-ethereum-forks", "reth-evm", + "reth-execution-types", "reth-primitives", - "reth-primitives-traits", "revm", - "revm-primitives", ] [[package]] name = "reth-execution-errors" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-eips", + "alloy-evm", "alloy-primitives", "alloy-rlp", "nybbles", "reth-storage-errors", - "thiserror 2.0.11", + "revm-database-interface", + "thiserror 2.0.12", ] [[package]] name = "reth-execution-types" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", + "derive_more 2.0.1", + "reth-ethereum-primitives", "reth-execution-errors", - "reth-primitives", "reth-primitives-traits", - "reth-trie", "reth-trie-common", "revm", - "serde", - "serde_with", + "revm-database", ] [[package]] name = "reth-fs-util" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "serde", "serde_json", - "thiserror 2.0.11", -] - -[[package]] -name = "reth-metrics" -version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" -dependencies = [ - "metrics", - "metrics-derive", + "thiserror 2.0.12", ] [[package]] name = "reth-network-peers" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-primitives", "alloy-rlp", - "secp256k1", "serde_with", - "thiserror 2.0.11", + "thiserror 2.0.12", "url", ] [[package]] name = "reth-optimism-chainspec" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-chains", "alloy-consensus", "alloy-eips", "alloy-genesis", "alloy-primitives", - "derive_more", + "derive_more 2.0.1", "once_cell", "op-alloy-consensus", "op-alloy-rpc-types", @@ -4596,15 +4740,16 @@ dependencies = [ "reth-ethereum-forks", "reth-network-peers", "reth-optimism-forks", + "reth-optimism-primitives", "reth-primitives-traits", "serde_json", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] name = "reth-optimism-consensus" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4614,23 +4759,30 @@ dependencies = [ "reth-chainspec", "reth-consensus", "reth-consensus-common", + "reth-execution-types", "reth-optimism-chainspec", "reth-optimism-forks", "reth-optimism-primitives", - "reth-primitives", "reth-primitives-traits", + "reth-storage-api", + "reth-storage-errors", + "reth-trie-common", + "revm", + "thiserror 2.0.12", "tracing", ] [[package]] name = "reth-optimism-evm" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-evm", + "alloy-op-evm", "alloy-primitives", - "derive_more", + "derive_more 2.0.1", "op-alloy-consensus", "reth-chainspec", "reth-consensus", @@ -4645,51 +4797,52 @@ dependencies = [ "reth-optimism-primitives", "reth-primitives-traits", "revm", + "revm-database", + "revm-optimism", "revm-primitives", - "thiserror 2.0.11", + "thiserror 2.0.12", "tracing", ] [[package]] name = "reth-optimism-forks" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-chains", "alloy-primitives", "auto_impl", "once_cell", "reth-ethereum-forks", - "serde", ] [[package]] name = "reth-optimism-primitives" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-evm", "alloy-primitives", "alloy-rlp", "alloy-rpc-types-eth", - "alloy-serde", "bytes", - "derive_more", + "derive_more 2.0.1", "op-alloy-consensus", - "rand", + "rand 0.8.5", "reth-codecs", "reth-primitives-traits", - "reth-zstd-compressors", - "revm-primitives", - "secp256k1", + "revm-context", + "revm-optimism", + "secp256k1 0.30.0", "serde", ] [[package]] name = "reth-primitives" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "once_cell", @@ -4702,7 +4855,7 @@ dependencies = [ [[package]] name = "reth-primitives-traits" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4712,32 +4865,34 @@ dependencies = [ "alloy-trie", "auto_impl", "bytes", - "derive_more", + "derive_more 2.0.1", "k256", "once_cell", "op-alloy-consensus", "reth-codecs", + "revm-bytecode", "revm-primitives", - "secp256k1", + "revm-state", + "secp256k1 0.30.0", "serde", "serde_with", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] name = "reth-prune-types" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-primitives", - "derive_more", - "thiserror 2.0.11", + "derive_more 2.0.1", + "thiserror 2.0.12", ] [[package]] name = "reth-stages-types" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-primitives", "reth-trie-common", @@ -4746,33 +4901,56 @@ dependencies = [ [[package]] name = "reth-static-file-types" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-primitives", - "derive_more", + "derive_more 2.0.1", "serde", - "strum", + "strum 0.27.1", +] + +[[package]] +name = "reth-storage-api" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rpc-types-engine", + "auto_impl", + "reth-chainspec", + "reth-db-models", + "reth-ethereum-primitives", + "reth-execution-types", + "reth-primitives-traits", + "reth-prune-types", + "reth-stages-types", + "reth-storage-errors", + "reth-trie-common", + "revm-database", ] [[package]] name = "reth-storage-errors" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-eips", "alloy-primitives", "alloy-rlp", - "derive_more", + "derive_more 2.0.1", "reth-primitives-traits", "reth-prune-types", "reth-static-file-types", - "thiserror 2.0.11", + "revm-database-interface", + "thiserror 2.0.12", ] [[package]] name = "reth-tracing" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "clap", "eyre", @@ -4787,7 +4965,7 @@ dependencies = [ [[package]] name = "reth-trie" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4795,43 +4973,38 @@ dependencies = [ "alloy-rlp", "alloy-trie", "auto_impl", - "itertools 0.13.0", + "itertools 0.14.0", "reth-execution-errors", "reth-primitives-traits", "reth-stages-types", "reth-storage-errors", "reth-trie-common", "reth-trie-sparse", - "revm", + "revm-database", "tracing", ] [[package]] name = "reth-trie-common" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-primitives", "alloy-rlp", - "alloy-rpc-types-eth", - "alloy-serde", "alloy-trie", - "bytes", - "derive_more", - "itertools 0.13.0", + "derive_more 2.0.1", + "itertools 0.14.0", "nybbles", "rayon", "reth-primitives-traits", - "revm", - "serde", - "serde_with", + "revm-database", ] [[package]] name = "reth-trie-sparse" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -4840,81 +5013,212 @@ dependencies = [ "reth-tracing", "reth-trie-common", "smallvec", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] name = "reth-zstd-compressors" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "zstd", ] [[package]] name = "revm" -version = "19.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfc5bef3c95fadf3b6a24a253600348380c169ef285f9780a793bb7090c8990d" +version = "20.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "revm-bytecode", + "revm-context", + "revm-context-interface", + "revm-database", + "revm-database-interface", + "revm-handler", + "revm-inspector", + "revm-interpreter", + "revm-precompile", + "revm-primitives", + "revm-specification", + "revm-state", +] + +[[package]] +name = "revm-bytecode" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "bitvec", + "revm-primitives", + "revm-specification", + "serde", +] + +[[package]] +name = "revm-context" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" dependencies = [ + "alloy-eip2930", + "alloy-eip7702", "auto_impl", "cfg-if", - "dyn-clone", - "once_cell", + "derive-where", + "revm-bytecode", + "revm-context-interface", + "revm-database-interface", + "revm-interpreter", + "revm-primitives", + "revm-specification", + "revm-state", + "serde", +] + +[[package]] +name = "revm-context-interface" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "alloy-eip2930", + "alloy-eip7702", + "auto_impl", + "revm-database-interface", + "revm-primitives", + "revm-specification", + "revm-state", + "serde", +] + +[[package]] +name = "revm-database" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "auto_impl", + "revm-bytecode", + "revm-database-interface", + "revm-primitives", + "revm-state", +] + +[[package]] +name = "revm-database-interface" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "auto_impl", + "revm-primitives", + "revm-state", + "serde", +] + +[[package]] +name = "revm-handler" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "auto_impl", + "revm-bytecode", + "revm-context", + "revm-context-interface", + "revm-database-interface", "revm-interpreter", "revm-precompile", + "revm-primitives", + "revm-specification", + "revm-state", "serde", - "serde_json", +] + +[[package]] +name = "revm-inspector" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "auto_impl", + "revm-context", + "revm-database-interface", + "revm-handler", + "revm-interpreter", + "revm-precompile", + "revm-primitives", + "revm-state", ] [[package]] name = "revm-interpreter" -version = "15.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dcab7ef2064057acfc84731205f4bc77f4ec1b35630800b26ff6a185731c5ab" +version = "16.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" dependencies = [ + "revm-bytecode", + "revm-context-interface", "revm-primitives", + "revm-specification", + "serde", +] + +[[package]] +name = "revm-optimism" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "auto_impl", + "once_cell", + "revm", + "revm-inspector", + "revm-precompile", "serde", ] [[package]] name = "revm-precompile" -version = "16.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6caa1a7ff2cc4a09a263fcf9de99151706f323d30f33d519ed329f017a02b046" +version = "17.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" dependencies = [ "aurora-engine-modexp", "c-kzg", "cfg-if", "k256", "kzg-rs", + "libsecp256k1", "once_cell", "p256", + "revm-context-interface", "revm-primitives", + "revm-specification", "ripemd", - "secp256k1", - "sha2", + "secp256k1 0.29.1", + "sha2 0.10.8", "substrate-bn", ] [[package]] name = "revm-primitives" -version = "15.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f987564210317706def498421dfba2ae1af64a8edce82c6102758b48133fcb" +version = "16.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" dependencies = [ - "alloy-eip2930", - "alloy-eip7702", "alloy-primitives", - "auto_impl", - "bitflags", - "bitvec", - "c-kzg", - "cfg-if", - "dyn-clone", +] + +[[package]] +name = "revm-specification" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ "enumn", - "hex", - "kzg-rs", + "revm-primitives", + "serde", +] + +[[package]] +name = "revm-state" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "bitflags", + "revm-bytecode", + "revm-primitives", + "revm-specification", "serde", ] @@ -4929,9 +5233,9 @@ dependencies = [ [[package]] name = "ring" -version = "0.17.9" +version = "0.17.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e75ec5e92c4d8aede845126adc388046234541629e76029599ed35a003c7ed24" +checksum = "da5349ae27d3887ca812fb375b45a4fbb36d8d12d2df394968cd86e35683fe73" dependencies = [ "cc", "cfg-if", @@ -5016,8 +5320,10 @@ version = "0.1.0" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-evm", "alloy-genesis", "alloy-network", + "alloy-op-evm", "alloy-primitives", "alloy-rpc-types", "itertools 0.13.0", @@ -5026,17 +5332,20 @@ dependencies = [ "reth-chainspec", "reth-consensus", "reth-errors", + "reth-ethereum-consensus", "reth-ethereum-primitives", "reth-evm", "reth-evm-ethereum", "reth-execution-types", "reth-optimism-chainspec", + "reth-optimism-consensus", "reth-optimism-evm", "reth-optimism-primitives", "reth-primitives", "reth-primitives-traits", "reth-trie", "revm", + "revm-optimism", "revm-primitives", "rsp-mpt", "rsp-primitives", @@ -5052,6 +5361,7 @@ version = "0.1.0" dependencies = [ "alloy-chains", "alloy-consensus", + "alloy-evm", "alloy-primitives", "alloy-provider", "alloy-rlp", @@ -5065,6 +5375,7 @@ dependencies = [ "op-alloy-network", "reth-chainspec", "reth-errors", + "reth-ethereum-consensus", "reth-evm", "reth-evm-ethereum", "reth-execution-types", @@ -5142,7 +5453,9 @@ dependencies = [ "reth-primitives", "reth-storage-errors", "reth-trie", + "revm-database-interface", "revm-primitives", + "revm-state", "thiserror 1.0.69", "tokio", "tracing", @@ -5155,15 +5468,17 @@ dependencies = [ "alloy-primitives", "reth-primitives", "reth-storage-errors", + "revm-database-interface", "revm-primitives", + "revm-state", "serde", ] [[package]] name = "ruint" -version = "1.12.4" +version = "1.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5ef8fb1dd8de3870cb8400d51b4c2023854bbafd5431a3ac7e7317243e22d2f" +checksum = "825df406ec217a8116bd7b06897c6cc8f65ffefc15d030ae2c9540acc9ed50b6" dependencies = [ "alloy-rlp", "ark-ff 0.3.0", @@ -5177,7 +5492,7 @@ dependencies = [ "parity-scale-codec", "primitive-types", "proptest", - "rand", + "rand 0.8.5", "rlp", "ruint-macro", "serde", @@ -5230,7 +5545,7 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" dependencies = [ - "semver 1.0.25", + "semver 1.0.26", ] [[package]] @@ -5304,9 +5619,9 @@ dependencies = [ [[package]] name = "rustversion" -version = "1.0.19" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4" +checksum = "eded382c5f5f786b989652c49544c4877d9f015cc22e145a5ea8ea66c2921cd2" [[package]] name = "rusty-fork" @@ -5322,9 +5637,9 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.19" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ea1a2d0a644769cc99faa24c3ad26b379b786fe7c36fd3c546254801650e6dd" +checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" [[package]] name = "scale-info" @@ -5333,7 +5648,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "346a3b32eba2640d17a9cb5927056b08f3de90f65b72fe09402c2ad07d684d0b" dependencies = [ "cfg-if", - "derive_more", + "derive_more 1.0.0", "parity-scale-codec", "scale-info-derive", ] @@ -5347,7 +5662,7 @@ dependencies = [ "proc-macro-crate 3.2.0", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -5401,7 +5716,18 @@ version = "0.29.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9465315bc9d4566e1724f0fffcbcc446268cb522e60f9a27bcded6b19c108113" dependencies = [ - "rand", + "rand 0.8.5", + "secp256k1-sys", +] + +[[package]] +name = "secp256k1" +version = "0.30.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b50c5943d326858130af85e049f2661ba3c78b26589b8ab98e65e80ae44a1252" +dependencies = [ + "bitcoin_hashes", + "rand 0.8.5", "secp256k1-sys", "serde", ] @@ -5462,9 +5788,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.25" +version = "1.0.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f79dfe2d285b0488816f30e700a7438c5a73d816b5b7d3ac72fbc48b0d185e03" +checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0" dependencies = [ "serde", ] @@ -5486,31 +5812,30 @@ checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73" [[package]] name = "serde" -version = "1.0.217" +version = "1.0.218" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70" +checksum = "e8dfc9d19bdbf6d17e22319da49161d5d0108e4188e8b680aef6299eed22df60" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.217" +version = "1.0.218" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0" +checksum = "f09503e191f4e797cb8aac08e9a4a4695c5edf6a2e70e376d961ddd5c969f82b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "serde_json" -version = "1.0.138" +version = "1.0.140" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d434192e7da787e94a6ea7e9670b26a036d0ca41e0b7efb2676dd32bae872949" +checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373" dependencies = [ - "indexmap 2.7.1", "itoa", "memchr", "ryu", @@ -5519,9 +5844,9 @@ dependencies = [ [[package]] name = "serde_path_to_error" -version = "0.1.16" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af99884400da37c88f5e9146b7f1fd0fbcae8f6eec4e9da38b67d05486f814a6" +checksum = "59fab13f937fa393d08645bf3a84bdfe86e296747b506ada67bb15f10f218b2a" dependencies = [ "itoa", "serde", @@ -5554,7 +5879,7 @@ version = "3.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d6b6f7f2fcb69f747921f79f3926bd1e203fce4fef62c268dd3abfb6d86029aa" dependencies = [ - "base64", + "base64 0.22.1", "chrono", "hex", "indexmap 1.9.3", @@ -5575,7 +5900,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -5610,7 +5935,7 @@ checksum = "5d69265a08751de7844521fd15003ae0a888e035773ba05695c5c759a6f89eef" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -5624,6 +5949,19 @@ dependencies = [ "digest 0.10.7", ] +[[package]] +name = "sha2" +version = "0.9.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" +dependencies = [ + "block-buffer 0.9.0", + "cfg-if", + "cpufeatures", + "digest 0.9.0", + "opaque-debug", +] + [[package]] name = "sha2" version = "0.10.8" @@ -5684,7 +6022,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" dependencies = [ "digest 0.10.7", - "rand_core", + "rand_core 0.6.4", ] [[package]] @@ -5704,9 +6042,9 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.13.2" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" +checksum = "7fcf8323ef1faaee30a44a340193b1ac6814fd9b7b4e88e9d4519a3e4abe1cfd" dependencies = [ "serde", ] @@ -5733,9 +6071,9 @@ dependencies = [ [[package]] name = "sp1-build" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb3ab2b8e8bad6d5ab1235ac31f777a0d4487a3d79b275af61008e58cec40391" +checksum = "13f816a774ef3f60556c011c236a2a58407fe6748291b44bbd51e89d287562e9" dependencies = [ "anyhow", "cargo_metadata", @@ -5746,9 +6084,9 @@ dependencies = [ [[package]] name = "sp1-core-executor" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd0552baf7793bb2f43967002ac73e0f7860c77f5e6b70875faef771ebd89cbc" +checksum = "e33061e8c159b21ef067da7b70ff3e26e157900f13f7a80a56b4e1254bf3299d" dependencies = [ "bincode", "bytemuck", @@ -5766,15 +6104,15 @@ dependencies = [ "p3-field", "p3-maybe-rayon", "p3-util", - "rand", + "rand 0.8.5", "rrs-succinct", "serde", "serde_json", "sp1-curves", "sp1-primitives", "sp1-stark", - "strum", - "strum_macros", + "strum 0.26.3", + "strum_macros 0.26.4", "subenum", "thiserror 1.0.69", "tiny-keccak", @@ -5785,9 +6123,9 @@ dependencies = [ [[package]] name = "sp1-core-machine" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ba0d397750fd913aa54604fd363a9a46637effc2363ac090e45a7700c8d8c89" +checksum = "88405dfb3571455f4ab224c237e99b21ffe686be4f533e44d823a3061d040f4b" dependencies = [ "bincode", "cbindgen", @@ -5816,7 +6154,7 @@ dependencies = [ "p3-uni-stark", "p3-util", "pathdiff", - "rand", + "rand 0.8.5", "rayon", "rayon-scan", "serde", @@ -5829,8 +6167,8 @@ dependencies = [ "sp1-primitives", "sp1-stark", "static_assertions", - "strum", - "strum_macros", + "strum 0.26.3", + "strum_macros 0.26.4", "tempfile", "thiserror 1.0.69", "tracing", @@ -5842,9 +6180,9 @@ dependencies = [ [[package]] name = "sp1-cuda" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "404e9ea41a7ed135fc05b58efc37e30255192fd6ba594f9d10b74e9a938b5cf0" +checksum = "ed8c477921afb864a7a41b214f087d8104ac92378aff58fa70b07d56bb43e1db" dependencies = [ "bincode", "ctrlc", @@ -5859,9 +6197,9 @@ dependencies = [ [[package]] name = "sp1-curves" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7441109fa83ba456341b21910aa9b8b08a09c16b9ca38215ebc83d9d790a62e" +checksum = "1f0c2f48c5a0034ad5a738bc55f5c9d708c5e47fc509b7e98c86ee73ada883de" dependencies = [ "cfg-if", "dashu", @@ -5881,9 +6219,9 @@ dependencies = [ [[package]] name = "sp1-derive" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0527cf1c71561d7a83059a53733f45504b5e71ff63a68da8cd9705bb53a3d1c6" +checksum = "9720936ef2ec053c005c8e840b66e69ec7e9d7b3ea179816c4cf4535c860fb24" dependencies = [ "quote", "syn 1.0.109", @@ -5891,18 +6229,18 @@ dependencies = [ [[package]] name = "sp1-helper" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39835e1626747d7081f9656f5b6176a4e3749240cf03f0d8af3e0e6b0658d710" +checksum = "a434c0e259fa8189537d6c3b9c31d5dc06446f77cb5b81190747351ca8b7a88b" dependencies = [ "sp1-build", ] [[package]] name = "sp1-lib" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fab1b5989a446f294724cebab0e759ffd7034ba93d2aa7b97045303f7c50bf74" +checksum = "82bf9bf66dc9244c51585c72e3b82b48b7829ee909a8cc93d2101612c28f5030" dependencies = [ "bincode", "elliptic-curve", @@ -5912,9 +6250,9 @@ dependencies = [ [[package]] name = "sp1-primitives" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cf66c2781c36037c94a5905b6e05e7396fd4d12df09cd7f05cf96e3f0889f49" +checksum = "2df15132358d645a2842fa127ea37954d28fd70127c0c6fcc254219c10824427" dependencies = [ "bincode", "hex", @@ -5925,14 +6263,14 @@ dependencies = [ "p3-poseidon2", "p3-symmetric", "serde", - "sha2", + "sha2 0.10.8", ] [[package]] name = "sp1-prover" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d12b04eaef751fc86d76ceb8caeeb7bcfaebc078e4d730bf265144a1bbf0cbbe" +checksum = "c67a6c180128b85950182921668759169c6f495bcdba1eb8b5ee26cad9ae6fe0" dependencies = [ "anyhow", "bincode", @@ -5956,7 +6294,7 @@ dependencies = [ "serde", "serde_json", "serial_test", - "sha2", + "sha2 0.10.8", "sp1-core-executor", "sp1-core-machine", "sp1-primitives", @@ -5973,9 +6311,9 @@ dependencies = [ [[package]] name = "sp1-recursion-circuit" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d55bf498aed95e5244aca6fac76754d1b3013680c2813031d6060c4239b1b938" +checksum = "2857daaebaa22bbd504eeef6f601aa3861f0f16b7d25d13f6a230e3cdfdaddc9" dependencies = [ "hashbrown 0.14.5", "itertools 0.13.0", @@ -5992,7 +6330,7 @@ dependencies = [ "p3-symmetric", "p3-uni-stark", "p3-util", - "rand", + "rand 0.8.5", "rayon", "serde", "sp1-core-executor", @@ -6008,9 +6346,9 @@ dependencies = [ [[package]] name = "sp1-recursion-compiler" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d896810412e25f4d9c96d251fac3d9f90be40f32271f213626794551d242efa" +checksum = "0e89a28d6d898d3fb06fa93a6d42f9e69b83efeb22567c00610069a365cb8650" dependencies = [ "backtrace", "itertools 0.13.0", @@ -6030,9 +6368,9 @@ dependencies = [ [[package]] name = "sp1-recursion-core" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff5f1a78134c095d627053499a96e8314992c7b464b199c3faf35ad901789eb1" +checksum = "67ffe252d52626902aaf7191adb1a484073dd0b149ecc26ceae025e47a19bcc6" dependencies = [ "backtrace", "cbindgen", @@ -6058,7 +6396,7 @@ dependencies = [ "p3-symmetric", "p3-util", "pathdiff", - "rand", + "rand 0.8.5", "serde", "sp1-core-machine", "sp1-derive", @@ -6073,9 +6411,9 @@ dependencies = [ [[package]] name = "sp1-recursion-derive" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dbbff05801a7a22cc46575328da11e9024d7862700a918b9ef8bf761612e86e" +checksum = "0c60b0856b07716bf061c32d02a36d731cf14eb0bc40ddd86a73875cd9c25890" dependencies = [ "quote", "syn 1.0.109", @@ -6083,9 +6421,9 @@ dependencies = [ [[package]] name = "sp1-recursion-gnark-ffi" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81a9de089de402f6ecab5cf65c3096cc266e02a49e59675f7a9555158217a387" +checksum = "3210843309c0512eaade95fc523c88ce9cfaf27894ecdfbaf299cf79682be676" dependencies = [ "anyhow", "bincode", @@ -6100,7 +6438,7 @@ dependencies = [ "p3-symmetric", "serde", "serde_json", - "sha2", + "sha2 0.10.8", "sp1-core-machine", "sp1-recursion-compiler", "sp1-stark", @@ -6109,9 +6447,9 @@ dependencies = [ [[package]] name = "sp1-sdk" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a42587153add9b7fdb4c0931b9e805bd6ab05e63e5837246e0b2594417c2a479" +checksum = "70f4b4dd6771c3339c640a88f26b9e83608a847f4c4e7269e0e2a06221018184" dependencies = [ "alloy-primitives", "alloy-signer", @@ -6144,8 +6482,8 @@ dependencies = [ "sp1-primitives", "sp1-prover", "sp1-stark", - "strum", - "strum_macros", + "strum 0.26.3", + "strum_macros 0.26.4", "tempfile", "thiserror 1.0.69", "tokio", @@ -6156,9 +6494,9 @@ dependencies = [ [[package]] name = "sp1-stark" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7612e1cb9f210d15bc61fd2f9ee450246acbd5303e5475ef5fe2d2f377cc9e0" +checksum = "609a576705f13553021066d483ca1abfcc2ee186961fd67b9b6f299bfd608f1f" dependencies = [ "arrayref", "hashbrown 0.14.5", @@ -6183,8 +6521,8 @@ dependencies = [ "serde", "sp1-derive", "sp1-primitives", - "strum", - "strum_macros", + "strum 0.26.3", + "strum_macros 0.26.4", "sysinfo", "tracing", ] @@ -6199,7 +6537,7 @@ dependencies = [ "ff 0.13.0", "group 0.13.0", "pairing 0.23.0", - "rand_core", + "rand_core 0.6.4", "sp1-lib", "subtle", ] @@ -6244,7 +6582,16 @@ version = "0.26.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" dependencies = [ - "strum_macros", + "strum_macros 0.26.4", +] + +[[package]] +name = "strum" +version = "0.27.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f64def088c51c9510a8579e3c5d67c65349dcf755e5479ad3d010aa6454e2c32" +dependencies = [ + "strum_macros 0.27.1", ] [[package]] @@ -6257,7 +6604,20 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.98", + "syn 2.0.99", +] + +[[package]] +name = "strum_macros" +version = "0.27.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c77a8c5abcaf0f9ce05d62342b7d298c346515365c36b673df4ebe3ced01fde8" +dependencies = [ + "heck 0.5.0", + "proc-macro2", + "quote", + "rustversion", + "syn 2.0.99", ] [[package]] @@ -6283,7 +6643,7 @@ dependencies = [ "crunchy", "lazy_static", "num-bigint 0.4.6", - "rand", + "rand 0.8.5", "rustc-hex", "sp1-lib", ] @@ -6307,9 +6667,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.98" +version = "2.0.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36147f1a48ae0ec2b5b3bc5b537d267457555a10dc06f3dbc8cb11ba3006d3b1" +checksum = "e02e925281e18ffd9d640e234264753c43edc62d64b2d4cf898f1bc5e75f3fc2" dependencies = [ "proc-macro2", "quote", @@ -6318,14 +6678,14 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "0.8.21" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c2de690018098e367beeb793991c7d4dc7270f42c9d2ac4ccc876c1368ca430" +checksum = "ac9f9798a84bca5cd4d1760db691075fda8f2c3a5d9647e8bfd29eb9b3fabb87" dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -6345,7 +6705,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -6392,9 +6752,9 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "tempfile" -version = "3.16.0" +version = "3.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38c246215d7d24f48ae091a2902398798e05d978b24315d6efbc00ede9a8bb91" +checksum = "22e5a0acb1f3f55f65cc4a866c361b2fb2a0ff6366785ae6fbb5f85df07ba230" dependencies = [ "cfg-if", "fastrand", @@ -6415,11 +6775,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.11" +version = "2.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d452f284b73e6d76dd36758a0c8684b1d5be31f92b89d07fd5822175732206fc" +checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" dependencies = [ - "thiserror-impl 2.0.11", + "thiserror-impl 2.0.12", ] [[package]] @@ -6430,18 +6790,18 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "thiserror-impl" -version = "2.0.11" +version = "2.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26afc1baea8a989337eeb52b6e72a039780ce45c3edfcc9c5b9d112feeb173c2" +checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -6515,9 +6875,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.8.1" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "022db8904dfa342efe721985167e9fcd16c29b226db4397ed752a761cfce81e8" +checksum = "09b3661f17e86524eccd4371ab0429194e0d7c008abb45f7a7495b1719463c71" dependencies = [ "tinyvec_macros", ] @@ -6554,7 +6914,7 @@ checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -6569,9 +6929,9 @@ dependencies = [ [[package]] name = "tokio-rustls" -version = "0.26.1" +version = "0.26.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f6d0975eaace0cf0fcadee4e4aaa5da15b5c079146f2cffb67c113be122bf37" +checksum = "8e727b36a1a0e8b74c376ac2211e40c2c8af09fb4013c60d910495810f008e9b" dependencies = [ "rustls", "tokio", @@ -6591,9 +6951,9 @@ dependencies = [ [[package]] name = "tokio-tungstenite" -version = "0.26.1" +version = "0.26.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be4bf6fecd69fcdede0ec680aaf474cdab988f9de6bc73d3758f0160e3b7025a" +checksum = "7a9daff607c6d2bf6c16fd681ccb7eecc83e4e2cdc1ca067ffaadfca5de7f084" dependencies = [ "futures-util", "log", @@ -6660,7 +7020,7 @@ dependencies = [ "serde", "serde_spanned", "toml_datetime", - "winnow 0.7.2", + "winnow 0.7.3", ] [[package]] @@ -6672,7 +7032,7 @@ dependencies = [ "async-stream", "async-trait", "axum", - "base64", + "base64 0.22.1", "bytes", "h2", "http", @@ -6707,7 +7067,7 @@ dependencies = [ "indexmap 1.9.3", "pin-project", "pin-project-lite", - "rand", + "rand 0.8.5", "slab", "tokio", "tokio-util", @@ -6776,7 +7136,7 @@ checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -6875,21 +7235,20 @@ checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" [[package]] name = "tungstenite" -version = "0.26.1" +version = "0.26.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "413083a99c579593656008130e29255e54dcaae495be556cc26888f211648c24" +checksum = "4793cb5e56680ecbb1d843515b23b6de9a75eb04b66643e256a396d43be33c13" dependencies = [ - "byteorder", "bytes", "data-encoding", "http", "httparse", "log", - "rand", + "rand 0.9.0", "rustls", "rustls-pki-types", "sha1", - "thiserror 2.0.11", + "thiserror 2.0.12", "utf-8", ] @@ -6917,9 +7276,9 @@ dependencies = [ [[package]] name = "typenum" -version = "1.17.0" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" +checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" [[package]] name = "ucd-trie" @@ -6947,9 +7306,9 @@ checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" [[package]] name = "unicode-ident" -version = "1.0.16" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a210d160f08b701c8721ba1c726c11662f877ea6b7094007e1ca9a1041945034" +checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" [[package]] name = "unicode-segmentation" @@ -7092,7 +7451,7 @@ dependencies = [ "log", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", "wasm-bindgen-shared", ] @@ -7127,7 +7486,7 @@ checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -7238,6 +7597,12 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "windows-link" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6dccfd733ce2b1753b03b6d3c65edf020262ea35e20ccdf3e288043e6dd620e3" + [[package]] name = "windows-registry" version = "0.2.0" @@ -7427,9 +7792,9 @@ dependencies = [ [[package]] name = "winnow" -version = "0.7.2" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59690dea168f2198d1a3b0cac23b8063efcd11012f10ae4698f284808c8ef603" +checksum = "0e7f4ea97f6f78012141bcdb6a216b2609f0979ada50b20ca5b52dde2eac2bb1" dependencies = [ "memchr", ] @@ -7503,7 +7868,7 @@ checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", "synstructure", ] @@ -7514,7 +7879,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" dependencies = [ "byteorder", - "zerocopy-derive", + "zerocopy-derive 0.7.35", +] + +[[package]] +name = "zerocopy" +version = "0.8.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dcf01143b2dd5d134f11f545cf9f1431b13b749695cb33bcce051e7568f99478" +dependencies = [ + "zerocopy-derive 0.8.21", ] [[package]] @@ -7525,27 +7899,38 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", +] + +[[package]] +name = "zerocopy-derive" +version = "0.8.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712c8386f4f4299382c9abee219bee7084f78fb939d88b6840fcc1320d5f6da2" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.99", ] [[package]] name = "zerofrom" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cff3ee08c995dee1859d998dea82f7374f2826091dd9cd47def953cae446cd2e" +checksum = "50cc42e0333e05660c3587f3bf9d0478688e15d870fab3346451ce7f8c9fbea5" dependencies = [ "zerofrom-derive", ] [[package]] name = "zerofrom-derive" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808" +checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", "synstructure", ] @@ -7566,7 +7951,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -7588,7 +7973,7 @@ checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -7611,37 +7996,42 @@ dependencies = [ "jubjub", "lazy_static", "pasta_curves 0.5.1", - "rand", + "rand 0.8.5", "serde", - "sha2", + "sha2 0.10.8", "sha3", "subtle", ] [[package]] name = "zstd" -version = "0.13.2" +version = "0.13.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcf2b778a664581e31e389454a7072dab1647606d44f7feea22cd5abb9c9f3f9" +checksum = "e91ee311a569c327171651566e07972200e76fcfe2242a4fa446149a3881c08a" dependencies = [ "zstd-safe", ] [[package]] name = "zstd-safe" -version = "7.2.1" +version = "7.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54a3ab4db68cea366acc5c897c7b4d4d1b8994a9cd6e6f841f8964566a419059" +checksum = "f3051792fbdc2e1e143244dc28c60f73d8470e93f3f9cbd0ead44da5ed802722" dependencies = [ "zstd-sys", ] [[package]] name = "zstd-sys" -version = "2.0.13+zstd.1.5.6" +version = "2.0.14+zstd.1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38ff0f21cfee8f97d94cef41359e0c89aa6113028ab0291aa8ca0038995a95aa" +checksum = "8fb060d4926e4ac3a3ad15d864e99ceb5f343c6b34f5bd6d81ae6ed417311be5" dependencies = [ "cc", "pkg-config", ] + +[[patch.unused]] +name = "revm-inspectors" +version = "0.15.0" +source = "git+https://github.com/paradigmxyz/revm-inspectors?rev=8900c2b#8900c2bf8430e41f1a1cc92dbc1cf0615f00a26b" diff --git a/Cargo.toml b/Cargo.toml index 037e454..5460cee 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -48,49 +48,54 @@ rsp-mpt = { path = "./crates/mpt" } rsp-primitives = { path = "./crates/primitives" } # reth -reth-primitives = { git = "https://github.com/paradigmxyz/reth", tag = "v1.2.0", default-features = false, features = [ +# the rev 6b602f433ed7a67c8c2e255569f262c044601c53 contains the following commit that allow to `Send` block execution strategy factory: +# https://github.com/paradigmxyz/reth/commit/1e48668bf23dabd4aa697e7dced5935374043232 +reth-primitives = { git = "https://github.com/paradigmxyz/reth", rev = "6b602f433ed7a67c8c2e255569f262c044601c53", default-features = false, features = [ "alloy-compat", "std", ] } -reth-primitives-traits = { git = "https://github.com/paradigmxyz/reth", tag = "v1.2.0", default-features = false } -reth-codecs = { git = "https://github.com/paradigmxyz/reth", tag = "v1.2.0", default-features = false } -reth-consensus = { git = "https://github.com/paradigmxyz/reth", tag = "v1.2.0", default-features = false } -reth-evm = { git = "https://github.com/paradigmxyz/reth", tag = "v1.2.0", default-features = false } -reth-node-ethereum = { git = "https://github.com/paradigmxyz/reth", tag = "v1.2.0", default-features = false } -reth-evm-ethereum = { git = "https://github.com/paradigmxyz/reth", tag = "v1.2.0", default-features = false } -reth-optimism-evm = { git = "https://github.com/paradigmxyz/reth", tag = "v1.2.0", default-features = false } -reth-optimism-primitives = { git = "https://github.com/paradigmxyz/reth", tag = "v1.2.0", default-features = false } -reth-storage-errors = { git = "https://github.com/paradigmxyz/reth", tag = "v1.2.0", default-features = false } -reth-trie = { git = "https://github.com/paradigmxyz/reth", tag = "v1.2.0", default-features = false } -reth-trie-common = { git = "https://github.com/paradigmxyz/reth", tag = "v1.2.0", default-features = false } -reth-chainspec = { git = "https://github.com/paradigmxyz/reth", tag = "v1.2.0", default-features = false } -reth-optimism-chainspec = { git = "https://github.com/paradigmxyz/reth", tag = "v1.2.0", default-features = false } -reth-execution-errors = { git = "https://github.com/paradigmxyz/reth", tag = "v1.2.0", default-features = false } -reth-execution-types = { git = "https://github.com/paradigmxyz/reth", tag = "v1.2.0", default-features = false } -reth-db = { git = "https://github.com/paradigmxyz/reth", tag = "v1.2.0", default-features = false } -reth-errors = { git = "https://github.com/paradigmxyz/reth", tag = "v1.2.0", default-features = false } -reth-ethereum-consensus = { git = "https://github.com/paradigmxyz/reth", tag = "v1.2.0", default-features = false } -reth-ethereum-primitives = { git = "https://github.com/paradigmxyz/reth", tag = "v1.2.0", default-features = false } -reth-optimism-consensus = { git = "https://github.com/paradigmxyz/reth", tag = "v1.2.0", default-features = false, features = [ - "optimism", -] } -reth-optimism-forks = { git = "https://github.com/paradigmxyz/reth", tag = "v1.2.0", default-features = false } +reth-primitives-traits = { git = "https://github.com/paradigmxyz/reth", rev = "6b602f433ed7a67c8c2e255569f262c044601c53", default-features = false } +reth-codecs = { git = "https://github.com/paradigmxyz/reth", rev = "6b602f433ed7a67c8c2e255569f262c044601c53", default-features = false } +reth-consensus = { git = "https://github.com/paradigmxyz/reth", rev = "6b602f433ed7a67c8c2e255569f262c044601c53", default-features = false } +reth-evm = { git = "https://github.com/paradigmxyz/reth", rev = "6b602f433ed7a67c8c2e255569f262c044601c53", default-features = false } +reth-node-ethereum = { git = "https://github.com/paradigmxyz/reth", rev = "6b602f433ed7a67c8c2e255569f262c044601c53", default-features = false } +reth-evm-ethereum = { git = "https://github.com/paradigmxyz/reth", rev = "6b602f433ed7a67c8c2e255569f262c044601c53", default-features = false } +reth-optimism-evm = { git = "https://github.com/paradigmxyz/reth", rev = "6b602f433ed7a67c8c2e255569f262c044601c53", default-features = false } +reth-optimism-primitives = { git = "https://github.com/paradigmxyz/reth", rev = "6b602f433ed7a67c8c2e255569f262c044601c53", default-features = false } +reth-storage-errors = { git = "https://github.com/paradigmxyz/reth", rev = "6b602f433ed7a67c8c2e255569f262c044601c53", default-features = false } +reth-trie = { git = "https://github.com/paradigmxyz/reth", rev = "6b602f433ed7a67c8c2e255569f262c044601c53", default-features = false } +reth-trie-common = { git = "https://github.com/paradigmxyz/reth", rev = "6b602f433ed7a67c8c2e255569f262c044601c53", default-features = false } +reth-chainspec = { git = "https://github.com/paradigmxyz/reth", rev = "6b602f433ed7a67c8c2e255569f262c044601c53", default-features = false } +reth-optimism-chainspec = { git = "https://github.com/paradigmxyz/reth", rev = "6b602f433ed7a67c8c2e255569f262c044601c53", default-features = false } +reth-execution-errors = { git = "https://github.com/paradigmxyz/reth", rev = "6b602f433ed7a67c8c2e255569f262c044601c53", default-features = false } +reth-execution-types = { git = "https://github.com/paradigmxyz/reth", rev = "6b602f433ed7a67c8c2e255569f262c044601c53", default-features = false } +reth-db = { git = "https://github.com/paradigmxyz/reth", rev = "6b602f433ed7a67c8c2e255569f262c044601c53", default-features = false } +reth-errors = { git = "https://github.com/paradigmxyz/reth", rev = "6b602f433ed7a67c8c2e255569f262c044601c53", default-features = false } +reth-ethereum-consensus = { git = "https://github.com/paradigmxyz/reth", rev = "6b602f433ed7a67c8c2e255569f262c044601c53", default-features = false } +reth-ethereum-primitives = { git = "https://github.com/paradigmxyz/reth", rev = "6b602f433ed7a67c8c2e255569f262c044601c53", default-features = false } +reth-optimism-consensus = { git = "https://github.com/paradigmxyz/reth", rev = "6b602f433ed7a67c8c2e255569f262c044601c53", default-features = false } +reth-optimism-forks = { git = "https://github.com/paradigmxyz/reth", rev = "6b602f433ed7a67c8c2e255569f262c044601c53", default-features = false } # revm -revm = { version = "19.5.0", features = [ - "optimism", +revm = { version = "20.0.0-alpha.1", features = [ "serde", "kzg-rs", ], default-features = false } -revm-primitives = { version = "15.2.0", features = [ +revm-primitives = { version = "16.0.0-alpha.1", features = [ "serde", ], default-features = false } -revm-inspectors = "0.15.0" -revm-interpreter = { version = "15.2.0", default-features = false } -revm-precompile = { version = "16.0.0", default-features = false } +revm-bytecode = { version = "1.0.0-alpha.1", default-features = false } +revm-interpreter = { version = "16.0.0-alpha.1", default-features = false } +revm-precompile = { version = "17.0.0-alpha.1", default-features = false } +revm-database-interface = { version = "1.0.0-alpha.1", default-features = false } +revm-optimism = { version = "1.0.0-alpha.1", default-features = false } +revm-state = { version = "1.0.0-alpha.1", default-features = false } +revm-inspectors = "0.15" + # alloy alloy-chains = { version = "0.1.59", default-features = false } +alloy-evm = { version = "0.1", default-features = false } alloy-primitives = { version = "0.8.15", default-features = false, features = ["sha3-keccak", "map-foldhash"] } alloy-provider = { version = "0.11.1", default-features = false, features = [ "reqwest", @@ -112,6 +117,9 @@ alloy-rpc-client = { version = "0.11.1", default-features = false } alloy-eips = { version = "0.11.1", default-features = false } alloy-rlp = "0.3.10" alloy-trie = "0.7" + +# op +alloy-op-evm = { version = "0.1", default-features = false } op-alloy-network = "0.10.0" op-alloy-rpc-types = "0.10.0" @@ -129,3 +137,21 @@ bn = { git = "https://github.com/sp1-patches/bn", tag = "patch-0.6.0-sp1-4.0.0", sha3 = { git = "https://github.com/sp1-patches/RustCrypto-hashes", tag = "patch-sha3-0.10.8-sp1-4.0.0" } k256 = { git = "https://github.com/sp1-patches/elliptic-curves", tag = "patch-k256-13.4-sp1-4.1.0" } p256 = { git = "https://github.com/sp1-patches/elliptic-curves", tag = "patch-p256-13.2-sp1-4.1.0" } + +alloy-evm = { git = "https://github.com/alloy-rs/evm", rev = "04fa394" } +alloy-op-evm = { git = "https://github.com/alloy-rs/evm", rev = "04fa394" } + +revm = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-bytecode = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-database = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-state = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-primitives = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-interpreter = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-inspector = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-context = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-context-interface = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-database-interface = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-specification = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-optimism = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } + +revm-inspectors = { git = "https://github.com/paradigmxyz/revm-inspectors", rev = "8900c2b" } \ No newline at end of file diff --git a/Justfile b/Justfile index b75a9cc..a591011 100644 --- a/Justfile +++ b/Justfile @@ -42,3 +42,14 @@ run-eth-proofs cluster_id="1" block_interval="100": # Example: # just run-eth-proofs 5 600 + + +clean: + cargo clean + cd bin/client && cargo clean + cd bin/client-op && cargo clean + +update: + cargo update + cd bin/client && cargo update + cd bin/client-op && cargo update \ No newline at end of file diff --git a/bin/client-op/Cargo.lock b/bin/client-op/Cargo.lock index c7146d7..5c9bae1 100644 --- a/bin/client-op/Cargo.lock +++ b/bin/client-op/Cargo.lock @@ -1,6 +1,6 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. -version = 3 +version = 4 [[package]] name = "addchain" @@ -13,18 +13,6 @@ dependencies = [ "num-traits", ] -[[package]] -name = "ahash" -version = "0.8.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" -dependencies = [ - "cfg-if", - "once_cell", - "version_check", - "zerocopy", -] - [[package]] name = "aho-corasick" version = "1.1.3" @@ -36,15 +24,15 @@ dependencies = [ [[package]] name = "alloy-chains" -version = "0.1.61" +version = "0.1.63" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a754dbb534198644cb8355b8c23f4aaecf03670fb9409242be1fa1e25897ee9" +checksum = "996564c1782285d4e0299c29b318bc74f24b1d7f456cef3e040810b061ee3256" dependencies = [ "alloy-primitives", "alloy-rlp", "num_enum", "serde", - "strum", + "strum 0.27.1", ] [[package]] @@ -60,7 +48,7 @@ dependencies = [ "alloy-trie", "auto_impl", "c-kzg", - "derive_more", + "derive_more 1.0.0", "serde", "serde_with", ] @@ -89,7 +77,7 @@ dependencies = [ "alloy-rlp", "crc", "serde", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] @@ -105,16 +93,16 @@ dependencies = [ [[package]] name = "alloy-eip7702" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cabf647eb4650c91a9d38cb6f972bb320009e7e9d61765fb688a86f1563b33e8" +checksum = "9b15b13d38b366d01e818fe8e710d4d702ef7499eacd44926a06171dd9585d0c" dependencies = [ "alloy-primitives", "alloy-rlp", - "derive_more", "k256", "serde", "serde_with", + "thiserror 2.0.12", ] [[package]] @@ -131,10 +119,21 @@ dependencies = [ "alloy-serde", "auto_impl", "c-kzg", - "derive_more", + "derive_more 1.0.0", "once_cell", "serde", - "sha2", + "sha2 0.10.8", +] + +[[package]] +name = "alloy-evm" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/evm?rev=04fa394#04fa3947c5694c2d15956bb18a31834b95e0e975" +dependencies = [ + "alloy-consensus", + "alloy-primitives", + "revm", + "revm-optimism", ] [[package]] @@ -150,18 +149,6 @@ dependencies = [ "serde", ] -[[package]] -name = "alloy-json-abi" -version = "0.8.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4012581681b186ba0882007ed873987cc37f86b1b488fe6b91d5efd0b585dc41" -dependencies = [ - "alloy-primitives", - "alloy-sol-type-parser", - "serde", - "serde_json", -] - [[package]] name = "alloy-json-rpc" version = "0.11.1" @@ -172,7 +159,7 @@ dependencies = [ "alloy-sol-types", "serde", "serde_json", - "thiserror 2.0.11", + "thiserror 2.0.12", "tracing", ] @@ -198,7 +185,7 @@ dependencies = [ "futures-utils-wasm", "serde", "serde_json", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] @@ -214,17 +201,28 @@ dependencies = [ "serde", ] +[[package]] +name = "alloy-op-evm" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/evm?rev=04fa394#04fa3947c5694c2d15956bb18a31834b95e0e975" +dependencies = [ + "alloy-evm", + "alloy-primitives", + "revm", + "revm-optimism", +] + [[package]] name = "alloy-primitives" -version = "0.8.21" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "478bedf4d24e71ea48428d1bc278553bd7c6ae07c30ca063beb0b09fe58a9e74" +checksum = "8c66bb6715b7499ea755bde4c96223ae8eb74e05c014ab38b9db602879ffb825" dependencies = [ "alloy-rlp", "bytes", "cfg-if", "const-hex", - "derive_more", + "derive_more 2.0.1", "foldhash", "hashbrown 0.15.2", "indexmap 2.7.1", @@ -260,7 +258,7 @@ checksum = "a40e1ef334153322fd878d07e86af7a529bcb86b2439525920a88eba87bcf943" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -286,6 +284,20 @@ dependencies = [ "alloy-serde", ] +[[package]] +name = "alloy-rpc-types-engine" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e83dde9fcf1ccb9b815cc0c89bba26bbbbaae5150a53ae624ed0fc63cb3676c1" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "derive_more 1.0.0", + "strum 0.26.3", +] + [[package]] name = "alloy-rpc-types-eth" version = "0.11.1" @@ -303,7 +315,7 @@ dependencies = [ "itertools 0.14.0", "serde", "serde_json", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] @@ -329,28 +341,28 @@ dependencies = [ "either", "elliptic-curve", "k256", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] name = "alloy-sol-macro" -version = "0.8.21" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2708e27f58d747423ae21d31b7a6625159bd8d867470ddd0256f396a68efa11" +checksum = "c7f9c3c7bc1f4e334e5c5fc59ec8dac894973a71b11da09065affc6094025049" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "alloy-sol-macro-expander" -version = "0.8.21" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6b7984d7e085dec382d2c5ef022b533fcdb1fe6129200af30ebf5afddb6a361" +checksum = "46ff7aa715eb2404cb87fa94390d2c5d5addd70d9617e20b2398ee6f48cb21f0" dependencies = [ "alloy-sol-macro-input", "const-hex", @@ -359,47 +371,35 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", "syn-solidity", "tiny-keccak", ] [[package]] name = "alloy-sol-macro-input" -version = "0.8.21" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33d6a9fc4ed1a3c70bdb2357bec3924551c1a59f24e5a04a74472c755b37f87d" +checksum = "6f105fa700140c0cc6e2c3377adef650c389ac57b8ead8318a2e6bd52f1ae841" dependencies = [ "const-hex", "dunce", "heck", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", "syn-solidity", ] -[[package]] -name = "alloy-sol-type-parser" -version = "0.8.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b1b3e9a48a6dd7bb052a111c8d93b5afc7956ed5e2cb4177793dc63bb1d2a36" -dependencies = [ - "serde", - "winnow", -] - [[package]] name = "alloy-sol-types" -version = "0.8.21" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6044800da35c38118fd4b98e18306bd3b91af5dedeb54c1b768cf1b4fb68f549" +checksum = "5f819635439ebb06aa13c96beac9b2e7360c259e90f5160a6848ae0d94d10452" dependencies = [ - "alloy-json-abi", "alloy-primitives", "alloy-sol-macro", "const-hex", - "serde", ] [[package]] @@ -411,7 +411,7 @@ dependencies = [ "alloy-primitives", "alloy-rlp", "arrayvec", - "derive_more", + "derive_more 1.0.0", "nybbles", "serde", "smallvec", @@ -607,6 +607,12 @@ dependencies = [ "rand", ] +[[package]] +name = "arrayref" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb" + [[package]] name = "arrayvec" version = "0.7.6" @@ -618,13 +624,13 @@ dependencies = [ [[package]] name = "async-trait" -version = "0.1.86" +version = "0.1.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "644dd749086bf3771a2fbc5f256fdb982d53f011c7d5d560304eafeecebce79d" +checksum = "d556ec1359574147ec0c4fc5eb525f3f23263a592b1a9c07e0a75b427de55c97" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -645,7 +651,7 @@ checksum = "e12882f59de5360c748c4cbf569a042d5fb0eb515f7bea9c1f470b47f6ffbd73" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -660,6 +666,12 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" +[[package]] +name = "base64" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" + [[package]] name = "base64" version = "0.22.1" @@ -683,24 +695,40 @@ dependencies = [ [[package]] name = "bit-set" -version = "0.5.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" +checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3" dependencies = [ "bit-vec", ] [[package]] name = "bit-vec" -version = "0.6.3" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" + +[[package]] +name = "bitcoin-io" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b47c4ab7a93edb0c7198c5535ed9b52b63095f4e9b45279c6736cec4b856baf" + +[[package]] +name = "bitcoin_hashes" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" +checksum = "bb18c03d0db0247e147a21a6faafd5a7eb851c743db062de72018b6b7e8e4d16" +dependencies = [ + "bitcoin-io", + "hex-conservative", +] [[package]] name = "bitflags" -version = "2.8.0" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f68f53c83ab957f72c32642f3868eec03eb974d1fb82e453128456482613d36" +checksum = "5c8214115b7bf84099f1309324e63141d4c5d7cc26862f97a0a857dbefe165bd" dependencies = [ "serde", ] @@ -718,6 +746,15 @@ dependencies = [ "wyz", ] +[[package]] +name = "block-buffer" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" +dependencies = [ + "generic-array", +] + [[package]] name = "block-buffer" version = "0.10.4" @@ -747,15 +784,15 @@ checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" [[package]] name = "byte-slice-cast" -version = "1.2.2" +version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c" +checksum = "7575182f7272186991736b70173b0ea045398f984bf5ebbb3804736ce1330c9d" [[package]] name = "bytemuck" -version = "1.21.0" +version = "1.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef657dfab802224e671f5818e9a4935f9b1957ed18e58292690cc39e7a4092a3" +checksum = "b6b1fc10dbac614ebc03540c9dbd60e83887fda27794998c6528f1782047d540" dependencies = [ "bytemuck_derive", ] @@ -768,7 +805,7 @@ checksum = "3fa76293b4f7bb636ab88fd78228235b5248b4d05cc589aed610f954af5d7c7a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -803,9 +840,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.14" +version = "1.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c3d1b2e905a3a7b00a6141adb0e4c0bb941d11caf55349d863942a1cc44e3c9" +checksum = "be714c154be609ec7f5dad223a33bf1482fff90472de28f7362806e6d4832b8c" dependencies = [ "jobserver", "libc", @@ -820,9 +857,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chrono" -version = "0.4.39" +version = "0.4.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e36cc9d416881d2e24f9a963be5fb1cd90966419ac844274161d10488b3e825" +checksum = "1a7964611d71df112cb1730f2ee67324fcf4d0fc6606acbbe9bfe06df124637c" dependencies = [ "android-tzdata", "iana-time-zone", @@ -830,14 +867,14 @@ dependencies = [ "num-traits", "serde", "wasm-bindgen", - "windows-targets", + "windows-link", ] [[package]] name = "clap" -version = "4.5.29" +version = "4.5.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8acebd8ad879283633b343856142139f2da2317c96b05b4dd6181c61e2480184" +checksum = "027bb0d98429ae334a8698531da7077bdf906419543a35a55c2cb1b66437d767" dependencies = [ "clap_builder", "clap_derive", @@ -845,9 +882,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.29" +version = "4.5.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6ba32cbda51c7e1dfd49acc1457ba1a7dec5b64fe360e828acb13ca8dc9c2f9" +checksum = "5589e0cba072e0f3d23791efac0fd8627b49c829c196a492e88168e6a669d863" dependencies = [ "anstream", "anstyle", @@ -864,7 +901,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -920,9 +957,9 @@ dependencies = [ [[package]] name = "convert_case" -version = "0.6.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" +checksum = "bb402b8d4c85569410425650ce3eddc7d698ed96d39a73f941b08fb63082f1e7" dependencies = [ "unicode-segmentation", ] @@ -1046,7 +1083,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -1057,7 +1094,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ "darling_core", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -1091,13 +1128,33 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "derive-where" +version = "1.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62d671cc41a825ebabc75757b62d3d168c577f9149b2d49ece1dad1f72119d25" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.99", +] + [[package]] name = "derive_more" version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4a9b99b9cbbe49445b21764dc0625032a89b145a2642e67603e1c936f5458d05" dependencies = [ - "derive_more-impl", + "derive_more-impl 1.0.0", +] + +[[package]] +name = "derive_more" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" +dependencies = [ + "derive_more-impl 2.0.1", ] [[package]] @@ -1105,11 +1162,23 @@ name = "derive_more-impl" version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.99", + "unicode-xid", +] + +[[package]] +name = "derive_more-impl" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", "unicode-xid", ] @@ -1128,7 +1197,7 @@ version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ - "block-buffer", + "block-buffer 0.10.4", "const-oid", "crypto-common", "subtle", @@ -1142,7 +1211,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -1153,9 +1222,9 @@ checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" [[package]] name = "dyn-clone" -version = "1.0.18" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "feeef44e73baff3a26d371801df019877a9866a8c493d315ab00177843314f35" +checksum = "1c7a8fb8a9fbf66c1f703fe16184d10ca0ee9d23be5b4436400408ba54a95005" [[package]] name = "ecdsa" @@ -1173,9 +1242,9 @@ dependencies = [ [[package]] name = "either" -version = "1.13.0" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" +checksum = "b7914353092ddf589ad78f25c5c1c21b7f80b0ff8621e7c814c3485b5306da9d" [[package]] name = "elliptic-curve" @@ -1206,14 +1275,14 @@ checksum = "2f9ed6b3789237c8a0c1c505af1c7eb2c560df6186f01b098c3a1064ea532f38" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "equivalent" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "errno" @@ -1336,17 +1405,6 @@ version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" -[[package]] -name = "futures-macro" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.98", -] - [[package]] name = "futures-task" version = "0.3.31" @@ -1360,11 +1418,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81" dependencies = [ "futures-core", - "futures-macro", "futures-task", "pin-project-lite", "pin-utils", - "slab", ] [[package]] @@ -1467,6 +1523,15 @@ dependencies = [ "serde", ] +[[package]] +name = "hex-conservative" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5313b072ce3c597065a808dbf612c4c8e8590bdbf8b579508bf7a762c5eae6cd" +dependencies = [ + "arrayvec", +] + [[package]] name = "hkdf" version = "0.12.4" @@ -1623,7 +1688,7 @@ checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -1670,7 +1735,7 @@ checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -1745,9 +1810,9 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.14" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" +checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" [[package]] name = "jobserver" @@ -1779,7 +1844,7 @@ dependencies = [ "hex", "once_cell", "serdect", - "sha2", + "sha2 0.10.8", "sp1-lib", ] @@ -1810,7 +1875,7 @@ checksum = "6efe7b9aea4a6b9454dc95a67f2de13505f6b4fbea885bc7a5c09bda48a85b18" dependencies = [ "ff", "hex", - "sha2", + "sha2 0.10.8", "sp1_bls12_381", "spin", ] @@ -1826,9 +1891,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.169" +version = "0.2.170" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a" +checksum = "875b3680cb2f8f71bdcf9a30f38d48282f5d3c95cbf9b3fa57269bb5d5c06828" [[package]] name = "libm" @@ -1836,6 +1901,52 @@ version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa" +[[package]] +name = "libsecp256k1" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95b09eff1b35ed3b33b877ced3a691fc7a481919c7e29c53c906226fcf55e2a1" +dependencies = [ + "arrayref", + "base64 0.13.1", + "digest 0.9.0", + "libsecp256k1-core", + "libsecp256k1-gen-ecmult", + "libsecp256k1-gen-genmult", + "rand", + "serde", + "sha2 0.9.9", +] + +[[package]] +name = "libsecp256k1-core" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5be9b9bb642d8522a44d533eab56c16c738301965504753b03ad1de3425d5451" +dependencies = [ + "crunchy", + "digest 0.9.0", + "subtle", +] + +[[package]] +name = "libsecp256k1-gen-ecmult" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3038c808c55c87e8a172643a7d87187fc6c4174468159cb3090659d55bcb4809" +dependencies = [ + "libsecp256k1-core", +] + +[[package]] +name = "libsecp256k1-gen-genmult" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3db8d6ba2cec9eacc40e6e8ccc98931840301f1006e95647ceb2dd5c3aa06f7c" +dependencies = [ + "libsecp256k1-core", +] + [[package]] name = "linux-raw-sys" version = "0.4.15" @@ -1844,15 +1955,15 @@ checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" [[package]] name = "litemap" -version = "0.7.4" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ee93343901ab17bd981295f2cf0026d4ad018c7c31ba84549a4ddbb47a45104" +checksum = "23fb14cb19457329c82206317a5663005a4d404783dc74f4252769b0d5f42856" [[package]] name = "log" -version = "0.4.25" +version = "0.4.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04cbf5b083de1c7e0222a7a51dbfdba1cbe1c6ab0b15e29fff3f6c077fd9cd9f" +checksum = "30bde2b3dc3671ae49d8e2e9f044c7c005836e7a023ee57cffa25ab82764bb9e" [[package]] name = "matchers" @@ -1869,28 +1980,6 @@ version = "2.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" -[[package]] -name = "metrics" -version = "0.24.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a7deb012b3b2767169ff203fadb4c6b0b82b947512e5eb9e0b78c2e186ad9e3" -dependencies = [ - "ahash", - "portable-atomic", -] - -[[package]] -name = "metrics-derive" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3dbdd96ed57d565ec744cba02862d707acf373c5772d152abae6ec5c4e24f6c" -dependencies = [ - "proc-macro2", - "quote", - "regex", - "syn 2.0.98", -] - [[package]] name = "modular-bitfield" version = "0.11.2" @@ -2040,7 +2129,7 @@ checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -2068,26 +2157,26 @@ dependencies = [ [[package]] name = "op-alloy-consensus" -version = "0.10.3" +version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23f7ff02e5f3ba62c8dd5d9a630c818f50147bca7b0d78e89de59ed46b5d02e1" +checksum = "6ed6cad421e41d400667a06df8bd306dd316c3e1fed803df065b1c65d7de6795" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rlp", "alloy-serde", - "derive_more", + "derive_more 1.0.0", "serde", "serde_with", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] name = "op-alloy-network" -version = "0.10.3" +version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eab4dd4e260be40a7ab8debf5300baf1f02f1d2a6e0c1ab5741732d612de7d6e" +checksum = "a21e39c32d786aa8a84792a7e0d47cbb194d4709edc7a8a5241cea2ea4fdab22" dependencies = [ "alloy-consensus", "alloy-network", @@ -2100,9 +2189,9 @@ dependencies = [ [[package]] name = "op-alloy-rpc-types" -version = "0.10.3" +version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ed9af4583c4b3ea93f54092ebfe41172974de2042672e9850500f4d1f99844e" +checksum = "d2f91f1b1202bc5e46ece524b70d1b15b213c4bbf67718c0925cfb7d11fd800c" dependencies = [ "alloy-consensus", "alloy-eips", @@ -2110,12 +2199,18 @@ dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", "alloy-serde", - "derive_more", + "derive_more 1.0.0", "op-alloy-consensus", "serde", "serde_json", ] +[[package]] +name = "opaque-debug" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" + [[package]] name = "overload" version = "0.1.1" @@ -2131,7 +2226,7 @@ dependencies = [ "elliptic-curve", "hex", "primeorder", - "sha2", + "sha2 0.10.8", "sp1-lib", ] @@ -2281,7 +2376,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -2303,7 +2398,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b7cafe60d6cf8e62e1b9b2ea516a089c008945bb5a275416789e7db0bc199dc" dependencies = [ "memchr", - "thiserror 2.0.11", + "thiserror 2.0.12", "ucd-trie", ] @@ -2331,15 +2426,15 @@ dependencies = [ [[package]] name = "pkg-config" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" +checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" [[package]] name = "portable-atomic" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6" +checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e" [[package]] name = "powerfmt" @@ -2403,23 +2498,23 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "proc-macro2" -version = "1.0.93" +version = "1.0.94" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60946a68e5f9d28b0dc1c21bb8a97ee7d018a8b322fa57838ba31cc878e22d99" +checksum = "a31971752e70b8b2686d7e46ec17fb38dad4051d94024c88df49b667caea9c84" dependencies = [ "unicode-ident", ] [[package]] name = "proptest" -version = "1.5.0" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d" +checksum = "14cae93065090804185d3b75f0bf93b8eeda30c7a9b4a33d3bdb3988d6229e50" dependencies = [ "bit-set", "bit-vec", @@ -2443,9 +2538,9 @@ checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" [[package]] name = "quote" -version = "1.0.38" +version = "1.0.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc" +checksum = "c1f1914ce909e1658d9907913b4b91947430c7d9be598b15a1912935b8c04801" dependencies = [ "proc-macro2", ] @@ -2563,7 +2658,7 @@ checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" [[package]] name = "reth-chainspec" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-chains", "alloy-consensus", @@ -2572,7 +2667,7 @@ dependencies = [ "alloy-primitives", "alloy-trie", "auto_impl", - "derive_more", + "derive_more 2.0.1", "reth-ethereum-forks", "reth-network-peers", "reth-primitives-traits", @@ -2582,7 +2677,7 @@ dependencies = [ [[package]] name = "reth-codecs" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", @@ -2599,31 +2694,31 @@ dependencies = [ [[package]] name = "reth-codecs-derive" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "reth-consensus" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", - "alloy-eips", "alloy-primitives", "auto_impl", - "derive_more", + "reth-execution-types", "reth-primitives-traits", + "thiserror 2.0.12", ] [[package]] name = "reth-consensus-common" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", @@ -2633,22 +2728,33 @@ dependencies = [ "reth-primitives-traits", ] +[[package]] +name = "reth-db-models" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "reth-primitives-traits", + "serde", +] + [[package]] name = "reth-errors" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "reth-consensus", "reth-execution-errors", "reth-fs-util", "reth-storage-errors", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] name = "reth-ethereum-consensus" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", @@ -2656,6 +2762,7 @@ dependencies = [ "reth-chainspec", "reth-consensus", "reth-consensus-common", + "reth-execution-types", "reth-primitives", "reth-primitives-traits", "tracing", @@ -2664,7 +2771,7 @@ dependencies = [ [[package]] name = "reth-ethereum-forks" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-chains", "alloy-eip2124", @@ -2679,143 +2786,131 @@ dependencies = [ [[package]] name = "reth-ethereum-primitives" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-evm", "alloy-network", "alloy-primitives", "alloy-rlp", "alloy-rpc-types-eth", "alloy-serde", - "derive_more", + "derive_more 2.0.1", "reth-primitives-traits", "reth-zstd-compressors", - "revm-primitives", - "secp256k1", + "revm-context", + "secp256k1 0.30.0", "serde", ] [[package]] name = "reth-evm" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-evm", "alloy-primitives", "auto_impl", + "derive_more 2.0.1", "futures-util", - "metrics", "reth-chainspec", - "reth-consensus", "reth-consensus-common", - "reth-ethereum-primitives", "reth-execution-errors", "reth-execution-types", - "reth-metrics", "reth-primitives", "reth-primitives-traits", "reth-storage-errors", "revm", - "revm-primitives", + "revm-database", + "revm-optimism", ] [[package]] name = "reth-evm-ethereum" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-evm", "alloy-primitives", "alloy-sol-types", - "derive_more", "reth-chainspec", - "reth-consensus", - "reth-ethereum-consensus", "reth-ethereum-forks", "reth-evm", + "reth-execution-types", "reth-primitives", - "reth-primitives-traits", "revm", - "revm-primitives", ] [[package]] name = "reth-execution-errors" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-eips", + "alloy-evm", "alloy-primitives", "alloy-rlp", "nybbles", "reth-storage-errors", - "thiserror 2.0.11", + "revm-database-interface", + "thiserror 2.0.12", ] [[package]] name = "reth-execution-types" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", + "derive_more 2.0.1", + "reth-ethereum-primitives", "reth-execution-errors", - "reth-primitives", "reth-primitives-traits", - "reth-trie", "reth-trie-common", "revm", - "serde", - "serde_with", + "revm-database", ] [[package]] name = "reth-fs-util" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "serde", "serde_json", - "thiserror 2.0.11", -] - -[[package]] -name = "reth-metrics" -version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" -dependencies = [ - "metrics", - "metrics-derive", + "thiserror 2.0.12", ] [[package]] name = "reth-network-peers" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-primitives", "alloy-rlp", - "secp256k1", "serde_with", - "thiserror 2.0.11", + "thiserror 2.0.12", "url", ] [[package]] name = "reth-optimism-chainspec" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-chains", "alloy-consensus", "alloy-eips", "alloy-genesis", "alloy-primitives", - "derive_more", + "derive_more 2.0.1", "once_cell", "op-alloy-consensus", "op-alloy-rpc-types", @@ -2823,15 +2918,16 @@ dependencies = [ "reth-ethereum-forks", "reth-network-peers", "reth-optimism-forks", + "reth-optimism-primitives", "reth-primitives-traits", "serde_json", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] name = "reth-optimism-consensus" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", @@ -2841,23 +2937,30 @@ dependencies = [ "reth-chainspec", "reth-consensus", "reth-consensus-common", + "reth-execution-types", "reth-optimism-chainspec", "reth-optimism-forks", "reth-optimism-primitives", - "reth-primitives", "reth-primitives-traits", + "reth-storage-api", + "reth-storage-errors", + "reth-trie-common", + "revm", + "thiserror 2.0.12", "tracing", ] [[package]] name = "reth-optimism-evm" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-evm", + "alloy-op-evm", "alloy-primitives", - "derive_more", + "derive_more 2.0.1", "op-alloy-consensus", "reth-chainspec", "reth-consensus", @@ -2872,51 +2975,52 @@ dependencies = [ "reth-optimism-primitives", "reth-primitives-traits", "revm", + "revm-database", + "revm-optimism", "revm-primitives", - "thiserror 2.0.11", + "thiserror 2.0.12", "tracing", ] [[package]] name = "reth-optimism-forks" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-chains", "alloy-primitives", "auto_impl", "once_cell", "reth-ethereum-forks", - "serde", ] [[package]] name = "reth-optimism-primitives" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-evm", "alloy-primitives", "alloy-rlp", "alloy-rpc-types-eth", - "alloy-serde", "bytes", - "derive_more", + "derive_more 2.0.1", "op-alloy-consensus", "rand", "reth-codecs", "reth-primitives-traits", - "reth-zstd-compressors", - "revm-primitives", - "secp256k1", + "revm-context", + "revm-optimism", + "secp256k1 0.30.0", "serde", ] [[package]] name = "reth-primitives" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "once_cell", @@ -2929,7 +3033,7 @@ dependencies = [ [[package]] name = "reth-primitives-traits" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", @@ -2939,32 +3043,34 @@ dependencies = [ "alloy-trie", "auto_impl", "bytes", - "derive_more", + "derive_more 2.0.1", "k256", "once_cell", "op-alloy-consensus", "reth-codecs", + "revm-bytecode", "revm-primitives", - "secp256k1", + "revm-state", + "secp256k1 0.30.0", "serde", "serde_with", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] name = "reth-prune-types" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-primitives", - "derive_more", - "thiserror 2.0.11", + "derive_more 2.0.1", + "thiserror 2.0.12", ] [[package]] name = "reth-stages-types" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-primitives", "reth-trie-common", @@ -2973,33 +3079,56 @@ dependencies = [ [[package]] name = "reth-static-file-types" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-primitives", - "derive_more", + "derive_more 2.0.1", "serde", - "strum", + "strum 0.27.1", +] + +[[package]] +name = "reth-storage-api" +version = "1.2.0" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rpc-types-engine", + "auto_impl", + "reth-chainspec", + "reth-db-models", + "reth-ethereum-primitives", + "reth-execution-types", + "reth-primitives-traits", + "reth-prune-types", + "reth-stages-types", + "reth-storage-errors", + "reth-trie-common", + "revm-database", ] [[package]] name = "reth-storage-errors" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-eips", "alloy-primitives", "alloy-rlp", - "derive_more", + "derive_more 2.0.1", "reth-primitives-traits", "reth-prune-types", "reth-static-file-types", - "thiserror 2.0.11", + "revm-database-interface", + "thiserror 2.0.12", ] [[package]] name = "reth-tracing" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "clap", "eyre", @@ -3014,7 +3143,7 @@ dependencies = [ [[package]] name = "reth-trie" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3022,43 +3151,38 @@ dependencies = [ "alloy-rlp", "alloy-trie", "auto_impl", - "itertools 0.13.0", + "itertools 0.14.0", "reth-execution-errors", "reth-primitives-traits", "reth-stages-types", "reth-storage-errors", "reth-trie-common", "reth-trie-sparse", - "revm", + "revm-database", "tracing", ] [[package]] name = "reth-trie-common" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-primitives", "alloy-rlp", - "alloy-rpc-types-eth", - "alloy-serde", "alloy-trie", - "bytes", - "derive_more", - "itertools 0.13.0", + "derive_more 2.0.1", + "itertools 0.14.0", "nybbles", "rayon", "reth-primitives-traits", - "revm", - "serde", - "serde_with", + "revm-database", ] [[package]] name = "reth-trie-sparse" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -3067,81 +3191,212 @@ dependencies = [ "reth-tracing", "reth-trie-common", "smallvec", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] name = "reth-zstd-compressors" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "zstd", ] [[package]] name = "revm" -version = "19.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfc5bef3c95fadf3b6a24a253600348380c169ef285f9780a793bb7090c8990d" +version = "20.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "revm-bytecode", + "revm-context", + "revm-context-interface", + "revm-database", + "revm-database-interface", + "revm-handler", + "revm-inspector", + "revm-interpreter", + "revm-precompile", + "revm-primitives", + "revm-specification", + "revm-state", +] + +[[package]] +name = "revm-bytecode" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "bitvec", + "revm-primitives", + "revm-specification", + "serde", +] + +[[package]] +name = "revm-context" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" dependencies = [ + "alloy-eip2930", + "alloy-eip7702", "auto_impl", "cfg-if", - "dyn-clone", - "once_cell", + "derive-where", + "revm-bytecode", + "revm-context-interface", + "revm-database-interface", + "revm-interpreter", + "revm-primitives", + "revm-specification", + "revm-state", + "serde", +] + +[[package]] +name = "revm-context-interface" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "alloy-eip2930", + "alloy-eip7702", + "auto_impl", + "revm-database-interface", + "revm-primitives", + "revm-specification", + "revm-state", + "serde", +] + +[[package]] +name = "revm-database" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "auto_impl", + "revm-bytecode", + "revm-database-interface", + "revm-primitives", + "revm-state", +] + +[[package]] +name = "revm-database-interface" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "auto_impl", + "revm-primitives", + "revm-state", + "serde", +] + +[[package]] +name = "revm-handler" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "auto_impl", + "revm-bytecode", + "revm-context", + "revm-context-interface", + "revm-database-interface", "revm-interpreter", "revm-precompile", + "revm-primitives", + "revm-specification", + "revm-state", "serde", - "serde_json", +] + +[[package]] +name = "revm-inspector" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "auto_impl", + "revm-context", + "revm-database-interface", + "revm-handler", + "revm-interpreter", + "revm-precompile", + "revm-primitives", + "revm-state", ] [[package]] name = "revm-interpreter" -version = "15.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dcab7ef2064057acfc84731205f4bc77f4ec1b35630800b26ff6a185731c5ab" +version = "16.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" dependencies = [ + "revm-bytecode", + "revm-context-interface", "revm-primitives", + "revm-specification", + "serde", +] + +[[package]] +name = "revm-optimism" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "auto_impl", + "once_cell", + "revm", + "revm-inspector", + "revm-precompile", "serde", ] [[package]] name = "revm-precompile" -version = "16.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6caa1a7ff2cc4a09a263fcf9de99151706f323d30f33d519ed329f017a02b046" +version = "17.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" dependencies = [ "aurora-engine-modexp", "c-kzg", "cfg-if", "k256", "kzg-rs", + "libsecp256k1", "once_cell", "p256", + "revm-context-interface", "revm-primitives", + "revm-specification", "ripemd", - "secp256k1", - "sha2", + "secp256k1 0.29.1", + "sha2 0.10.8", "substrate-bn", ] [[package]] name = "revm-primitives" -version = "15.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f987564210317706def498421dfba2ae1af64a8edce82c6102758b48133fcb" +version = "16.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" dependencies = [ - "alloy-eip2930", - "alloy-eip7702", "alloy-primitives", - "auto_impl", - "bitflags", - "bitvec", - "c-kzg", - "cfg-if", - "dyn-clone", +] + +[[package]] +name = "revm-specification" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ "enumn", - "hex", - "kzg-rs", + "revm-primitives", + "serde", +] + +[[package]] +name = "revm-state" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "bitflags", + "revm-bytecode", + "revm-primitives", + "revm-specification", "serde", ] @@ -3188,8 +3443,10 @@ version = "0.1.0" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-evm", "alloy-genesis", "alloy-network", + "alloy-op-evm", "alloy-primitives", "alloy-rpc-types", "itertools 0.13.0", @@ -3198,17 +3455,20 @@ dependencies = [ "reth-chainspec", "reth-consensus", "reth-errors", + "reth-ethereum-consensus", "reth-ethereum-primitives", "reth-evm", "reth-evm-ethereum", "reth-execution-types", "reth-optimism-chainspec", + "reth-optimism-consensus", "reth-optimism-evm", "reth-optimism-primitives", "reth-primitives", "reth-primitives-traits", "reth-trie", "revm", + "revm-optimism", "revm-primitives", "rsp-mpt", "rsp-primitives", @@ -3265,9 +3525,9 @@ dependencies = [ [[package]] name = "ruint" -version = "1.12.4" +version = "1.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5ef8fb1dd8de3870cb8400d51b4c2023854bbafd5431a3ac7e7317243e22d2f" +checksum = "825df406ec217a8116bd7b06897c6cc8f65ffefc15d030ae2c9540acc9ed50b6" dependencies = [ "alloy-rlp", "ark-ff 0.3.0", @@ -3322,7 +3582,7 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" dependencies = [ - "semver 1.0.25", + "semver 1.0.26", ] [[package]] @@ -3340,9 +3600,9 @@ dependencies = [ [[package]] name = "rustversion" -version = "1.0.19" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4" +checksum = "eded382c5f5f786b989652c49544c4877d9f015cc22e145a5ea8ea66c2921cd2" [[package]] name = "rusty-fork" @@ -3358,9 +3618,9 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.19" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ea1a2d0a644769cc99faa24c3ad26b379b786fe7c36fd3c546254801650e6dd" +checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" [[package]] name = "sec1" @@ -3385,6 +3645,17 @@ checksum = "9465315bc9d4566e1724f0fffcbcc446268cb522e60f9a27bcded6b19c108113" dependencies = [ "rand", "secp256k1-sys", +] + +[[package]] +name = "secp256k1" +version = "0.30.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b50c5943d326858130af85e049f2661ba3c78b26589b8ab98e65e80ae44a1252" +dependencies = [ + "bitcoin_hashes", + "rand", + "secp256k1-sys", "serde", ] @@ -3408,9 +3679,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.25" +version = "1.0.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f79dfe2d285b0488816f30e700a7438c5a73d816b5b7d3ac72fbc48b0d185e03" +checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0" [[package]] name = "semver-parser" @@ -3423,31 +3694,30 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.217" +version = "1.0.218" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70" +checksum = "e8dfc9d19bdbf6d17e22319da49161d5d0108e4188e8b680aef6299eed22df60" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.217" +version = "1.0.218" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0" +checksum = "f09503e191f4e797cb8aac08e9a4a4695c5edf6a2e70e376d961ddd5c969f82b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "serde_json" -version = "1.0.138" +version = "1.0.140" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d434192e7da787e94a6ea7e9670b26a036d0ca41e0b7efb2676dd32bae872949" +checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373" dependencies = [ - "indexmap 2.7.1", "itoa", "memchr", "ryu", @@ -3460,7 +3730,7 @@ version = "3.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d6b6f7f2fcb69f747921f79f3926bd1e203fce4fef62c268dd3abfb6d86029aa" dependencies = [ - "base64", + "base64 0.22.1", "chrono", "hex", "indexmap 1.9.3", @@ -3481,7 +3751,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -3494,6 +3764,19 @@ dependencies = [ "serde", ] +[[package]] +name = "sha2" +version = "0.9.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" +dependencies = [ + "block-buffer 0.9.0", + "cfg-if", + "cpufeatures", + "digest 0.9.0", + "opaque-debug", +] + [[package]] name = "sha2" version = "0.10.8" @@ -3548,29 +3831,20 @@ dependencies = [ "rand_core", ] -[[package]] -name = "slab" -version = "0.4.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" -dependencies = [ - "autocfg", -] - [[package]] name = "smallvec" -version = "1.13.2" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" +checksum = "7fcf8323ef1faaee30a44a340193b1ac6814fd9b7b4e88e9d4519a3e4abe1cfd" dependencies = [ "serde", ] [[package]] name = "sp1-lib" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fab1b5989a446f294724cebab0e759ffd7034ba93d2aa7b97045303f7c50bf74" +checksum = "82bf9bf66dc9244c51585c72e3b82b48b7829ee909a8cc93d2101612c28f5030" dependencies = [ "bincode", "elliptic-curve", @@ -3580,9 +3854,9 @@ dependencies = [ [[package]] name = "sp1-primitives" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cf66c2781c36037c94a5905b6e05e7396fd4d12df09cd7f05cf96e3f0889f49" +checksum = "2df15132358d645a2842fa127ea37954d28fd70127c0c6fcc254219c10824427" dependencies = [ "bincode", "hex", @@ -3593,21 +3867,21 @@ dependencies = [ "p3-poseidon2", "p3-symmetric", "serde", - "sha2", + "sha2 0.10.8", ] [[package]] name = "sp1-zkvm" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f0acfbdacfeaad17367dd81e0019d7789fde3b5a9af94f0f20aed2d9dc9e4e2" +checksum = "114ab991c8d2d130c1defbb127b5cb1721bf535a602c5cd05ff98ff5584f55e5" dependencies = [ "cfg-if", "getrandom 0.2.15", "lazy_static", "libm", "rand", - "sha2", + "sha2 0.10.8", "sp1-lib", "sp1-primitives", ] @@ -3667,7 +3941,16 @@ version = "0.26.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" dependencies = [ - "strum_macros", + "strum_macros 0.26.4", +] + +[[package]] +name = "strum" +version = "0.27.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f64def088c51c9510a8579e3c5d67c65349dcf755e5479ad3d010aa6454e2c32" +dependencies = [ + "strum_macros 0.27.1", ] [[package]] @@ -3680,7 +3963,20 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.98", + "syn 2.0.99", +] + +[[package]] +name = "strum_macros" +version = "0.27.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c77a8c5abcaf0f9ce05d62342b7d298c346515365c36b673df4ebe3ced01fde8" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "rustversion", + "syn 2.0.99", ] [[package]] @@ -3718,9 +4014,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.98" +version = "2.0.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36147f1a48ae0ec2b5b3bc5b537d267457555a10dc06f3dbc8cb11ba3006d3b1" +checksum = "e02e925281e18ffd9d640e234264753c43edc62d64b2d4cf898f1bc5e75f3fc2" dependencies = [ "proc-macro2", "quote", @@ -3729,14 +4025,14 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "0.8.21" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c2de690018098e367beeb793991c7d4dc7270f42c9d2ac4ccc876c1368ca430" +checksum = "ac9f9798a84bca5cd4d1760db691075fda8f2c3a5d9647e8bfd29eb9b3fabb87" dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -3747,7 +4043,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -3758,9 +4054,9 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "tempfile" -version = "3.16.0" +version = "3.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38c246215d7d24f48ae091a2902398798e05d978b24315d6efbc00ede9a8bb91" +checksum = "22e5a0acb1f3f55f65cc4a866c361b2fb2a0ff6366785ae6fbb5f85df07ba230" dependencies = [ "cfg-if", "fastrand", @@ -3781,11 +4077,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.11" +version = "2.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d452f284b73e6d76dd36758a0c8684b1d5be31f92b89d07fd5822175732206fc" +checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" dependencies = [ - "thiserror-impl 2.0.11", + "thiserror-impl 2.0.12", ] [[package]] @@ -3796,18 +4092,18 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "thiserror-impl" -version = "2.0.11" +version = "2.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26afc1baea8a989337eeb52b6e72a039780ce45c3edfcc9c5b9d112feeb173c2" +checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -3927,7 +4223,7 @@ checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -3994,9 +4290,9 @@ dependencies = [ [[package]] name = "typenum" -version = "1.17.0" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" +checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" [[package]] name = "ucd-trie" @@ -4024,9 +4320,9 @@ checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" [[package]] name = "unicode-ident" -version = "1.0.16" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a210d160f08b701c8721ba1c726c11662f877ea6b7094007e1ca9a1041945034" +checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" [[package]] name = "unicode-segmentation" @@ -4127,7 +4423,7 @@ dependencies = [ "log", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", "wasm-bindgen-shared", ] @@ -4149,7 +4445,7 @@ checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -4194,6 +4490,12 @@ dependencies = [ "windows-targets", ] +[[package]] +name = "windows-link" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6dccfd733ce2b1753b03b6d3c65edf020262ea35e20ccdf3e288043e6dd620e3" + [[package]] name = "windows-sys" version = "0.59.0" @@ -4269,9 +4571,9 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "winnow" -version = "0.7.2" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59690dea168f2198d1a3b0cac23b8063efcd11012f10ae4698f284808c8ef603" +checksum = "0e7f4ea97f6f78012141bcdb6a216b2609f0979ada50b20ca5b52dde2eac2bb1" dependencies = [ "memchr", ] @@ -4326,7 +4628,7 @@ checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", "synstructure", ] @@ -4348,27 +4650,27 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "zerofrom" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cff3ee08c995dee1859d998dea82f7374f2826091dd9cd47def953cae446cd2e" +checksum = "50cc42e0333e05660c3587f3bf9d0478688e15d870fab3346451ce7f8c9fbea5" dependencies = [ "zerofrom-derive", ] [[package]] name = "zerofrom-derive" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808" +checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", "synstructure", ] @@ -4389,7 +4691,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -4411,33 +4713,38 @@ checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "zstd" -version = "0.13.2" +version = "0.13.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcf2b778a664581e31e389454a7072dab1647606d44f7feea22cd5abb9c9f3f9" +checksum = "e91ee311a569c327171651566e07972200e76fcfe2242a4fa446149a3881c08a" dependencies = [ "zstd-safe", ] [[package]] name = "zstd-safe" -version = "7.2.1" +version = "7.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54a3ab4db68cea366acc5c897c7b4d4d1b8994a9cd6e6f841f8964566a419059" +checksum = "f3051792fbdc2e1e143244dc28c60f73d8470e93f3f9cbd0ead44da5ed802722" dependencies = [ "zstd-sys", ] [[package]] name = "zstd-sys" -version = "2.0.13+zstd.1.5.6" +version = "2.0.14+zstd.1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38ff0f21cfee8f97d94cef41359e0c89aa6113028ab0291aa8ca0038995a95aa" +checksum = "8fb060d4926e4ac3a3ad15d864e99ceb5f343c6b34f5bd6d81ae6ed417311be5" dependencies = [ "cc", "pkg-config", ] + +[[patch.unused]] +name = "revm-inspectors" +version = "0.15.0" +source = "git+https://github.com/paradigmxyz/revm-inspectors?rev=8900c2b#8900c2bf8430e41f1a1cc92dbc1cf0615f00a26b" diff --git a/bin/client-op/Cargo.toml b/bin/client-op/Cargo.toml index e750a2f..7546d1e 100644 --- a/bin/client-op/Cargo.toml +++ b/bin/client-op/Cargo.toml @@ -24,3 +24,21 @@ bn = { git = "https://github.com/sp1-patches/bn", tag = "patch-0.6.0-sp1-4.0.0", sha3 = { git = "https://github.com/sp1-patches/RustCrypto-hashes", tag = "patch-sha3-0.10.8-sp1-4.0.0" } k256 = { git = "https://github.com/sp1-patches/elliptic-curves", tag = "patch-k256-13.4-sp1-4.1.0" } p256 = { git = "https://github.com/sp1-patches/elliptic-curves", tag = "patch-p256-13.2-sp1-4.1.0" } + +alloy-evm = { git = "https://github.com/alloy-rs/evm", rev = "04fa394" } +alloy-op-evm = { git = "https://github.com/alloy-rs/evm", rev = "04fa394" } + +revm = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-bytecode = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-database = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-state = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-primitives = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-interpreter = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-inspector = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-context = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-context-interface = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-database-interface = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-specification = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-optimism = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } + +revm-inspectors = { git = "https://github.com/paradigmxyz/revm-inspectors", rev = "8900c2b" } \ No newline at end of file diff --git a/bin/client/Cargo.lock b/bin/client/Cargo.lock index 7a24bc1..df11d04 100644 --- a/bin/client/Cargo.lock +++ b/bin/client/Cargo.lock @@ -1,6 +1,6 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. -version = 3 +version = 4 [[package]] name = "addchain" @@ -13,18 +13,6 @@ dependencies = [ "num-traits", ] -[[package]] -name = "ahash" -version = "0.8.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" -dependencies = [ - "cfg-if", - "once_cell", - "version_check", - "zerocopy", -] - [[package]] name = "aho-corasick" version = "1.1.3" @@ -36,9 +24,9 @@ dependencies = [ [[package]] name = "alloy-chains" -version = "0.1.61" +version = "0.1.63" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a754dbb534198644cb8355b8c23f4aaecf03670fb9409242be1fa1e25897ee9" +checksum = "996564c1782285d4e0299c29b318bc74f24b1d7f456cef3e040810b061ee3256" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -60,7 +48,7 @@ dependencies = [ "alloy-trie", "auto_impl", "c-kzg", - "derive_more", + "derive_more 1.0.0", "serde", "serde_with", ] @@ -89,7 +77,7 @@ dependencies = [ "alloy-rlp", "crc", "serde", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] @@ -105,16 +93,16 @@ dependencies = [ [[package]] name = "alloy-eip7702" -version = "0.5.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cabf647eb4650c91a9d38cb6f972bb320009e7e9d61765fb688a86f1563b33e8" +checksum = "9b15b13d38b366d01e818fe8e710d4d702ef7499eacd44926a06171dd9585d0c" dependencies = [ "alloy-primitives", "alloy-rlp", - "derive_more", "k256", "serde", "serde_with", + "thiserror 2.0.12", ] [[package]] @@ -131,10 +119,20 @@ dependencies = [ "alloy-serde", "auto_impl", "c-kzg", - "derive_more", + "derive_more 1.0.0", "once_cell", "serde", - "sha2", + "sha2 0.10.8", +] + +[[package]] +name = "alloy-evm" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/evm?rev=04fa394#04fa3947c5694c2d15956bb18a31834b95e0e975" +dependencies = [ + "alloy-consensus", + "alloy-primitives", + "revm", ] [[package]] @@ -150,18 +148,6 @@ dependencies = [ "serde", ] -[[package]] -name = "alloy-json-abi" -version = "0.8.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4012581681b186ba0882007ed873987cc37f86b1b488fe6b91d5efd0b585dc41" -dependencies = [ - "alloy-primitives", - "alloy-sol-type-parser", - "serde", - "serde_json", -] - [[package]] name = "alloy-json-rpc" version = "0.11.1" @@ -172,7 +158,7 @@ dependencies = [ "alloy-sol-types", "serde", "serde_json", - "thiserror 2.0.11", + "thiserror 2.0.12", "tracing", ] @@ -198,7 +184,7 @@ dependencies = [ "futures-utils-wasm", "serde", "serde_json", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] @@ -216,15 +202,15 @@ dependencies = [ [[package]] name = "alloy-primitives" -version = "0.8.21" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "478bedf4d24e71ea48428d1bc278553bd7c6ae07c30ca063beb0b09fe58a9e74" +checksum = "8c66bb6715b7499ea755bde4c96223ae8eb74e05c014ab38b9db602879ffb825" dependencies = [ "alloy-rlp", "bytes", "cfg-if", "const-hex", - "derive_more", + "derive_more 2.0.1", "foldhash", "hashbrown 0.15.2", "indexmap 2.7.1", @@ -260,7 +246,7 @@ checksum = "a40e1ef334153322fd878d07e86af7a529bcb86b2439525920a88eba87bcf943" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -303,7 +289,7 @@ dependencies = [ "itertools 0.14.0", "serde", "serde_json", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] @@ -329,28 +315,28 @@ dependencies = [ "either", "elliptic-curve", "k256", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] name = "alloy-sol-macro" -version = "0.8.21" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2708e27f58d747423ae21d31b7a6625159bd8d867470ddd0256f396a68efa11" +checksum = "c7f9c3c7bc1f4e334e5c5fc59ec8dac894973a71b11da09065affc6094025049" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "alloy-sol-macro-expander" -version = "0.8.21" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6b7984d7e085dec382d2c5ef022b533fcdb1fe6129200af30ebf5afddb6a361" +checksum = "46ff7aa715eb2404cb87fa94390d2c5d5addd70d9617e20b2398ee6f48cb21f0" dependencies = [ "alloy-sol-macro-input", "const-hex", @@ -359,47 +345,35 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", "syn-solidity", "tiny-keccak", ] [[package]] name = "alloy-sol-macro-input" -version = "0.8.21" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33d6a9fc4ed1a3c70bdb2357bec3924551c1a59f24e5a04a74472c755b37f87d" +checksum = "6f105fa700140c0cc6e2c3377adef650c389ac57b8ead8318a2e6bd52f1ae841" dependencies = [ "const-hex", "dunce", "heck", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", "syn-solidity", ] -[[package]] -name = "alloy-sol-type-parser" -version = "0.8.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b1b3e9a48a6dd7bb052a111c8d93b5afc7956ed5e2cb4177793dc63bb1d2a36" -dependencies = [ - "serde", - "winnow", -] - [[package]] name = "alloy-sol-types" -version = "0.8.21" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6044800da35c38118fd4b98e18306bd3b91af5dedeb54c1b768cf1b4fb68f549" +checksum = "5f819635439ebb06aa13c96beac9b2e7360c259e90f5160a6848ae0d94d10452" dependencies = [ - "alloy-json-abi", "alloy-primitives", "alloy-sol-macro", "const-hex", - "serde", ] [[package]] @@ -411,7 +385,7 @@ dependencies = [ "alloy-primitives", "alloy-rlp", "arrayvec", - "derive_more", + "derive_more 1.0.0", "nybbles", "serde", "smallvec", @@ -607,6 +581,12 @@ dependencies = [ "rand", ] +[[package]] +name = "arrayref" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb" + [[package]] name = "arrayvec" version = "0.7.6" @@ -618,13 +598,13 @@ dependencies = [ [[package]] name = "async-trait" -version = "0.1.86" +version = "0.1.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "644dd749086bf3771a2fbc5f256fdb982d53f011c7d5d560304eafeecebce79d" +checksum = "d556ec1359574147ec0c4fc5eb525f3f23263a592b1a9c07e0a75b427de55c97" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -645,7 +625,7 @@ checksum = "e12882f59de5360c748c4cbf569a042d5fb0eb515f7bea9c1f470b47f6ffbd73" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -660,6 +640,12 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" +[[package]] +name = "base64" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" + [[package]] name = "base64" version = "0.22.1" @@ -683,24 +669,40 @@ dependencies = [ [[package]] name = "bit-set" -version = "0.5.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" +checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3" dependencies = [ "bit-vec", ] [[package]] name = "bit-vec" -version = "0.6.3" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" +checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" + +[[package]] +name = "bitcoin-io" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b47c4ab7a93edb0c7198c5535ed9b52b63095f4e9b45279c6736cec4b856baf" + +[[package]] +name = "bitcoin_hashes" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb18c03d0db0247e147a21a6faafd5a7eb851c743db062de72018b6b7e8e4d16" +dependencies = [ + "bitcoin-io", + "hex-conservative", +] [[package]] name = "bitflags" -version = "2.8.0" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f68f53c83ab957f72c32642f3868eec03eb974d1fb82e453128456482613d36" +checksum = "5c8214115b7bf84099f1309324e63141d4c5d7cc26862f97a0a857dbefe165bd" dependencies = [ "serde", ] @@ -718,6 +720,15 @@ dependencies = [ "wyz", ] +[[package]] +name = "block-buffer" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" +dependencies = [ + "generic-array", +] + [[package]] name = "block-buffer" version = "0.10.4" @@ -747,15 +758,15 @@ checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" [[package]] name = "byte-slice-cast" -version = "1.2.2" +version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c" +checksum = "7575182f7272186991736b70173b0ea045398f984bf5ebbb3804736ce1330c9d" [[package]] name = "bytemuck" -version = "1.21.0" +version = "1.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef657dfab802224e671f5818e9a4935f9b1957ed18e58292690cc39e7a4092a3" +checksum = "b6b1fc10dbac614ebc03540c9dbd60e83887fda27794998c6528f1782047d540" dependencies = [ "bytemuck_derive", ] @@ -768,7 +779,7 @@ checksum = "3fa76293b4f7bb636ab88fd78228235b5248b4d05cc589aed610f954af5d7c7a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -803,9 +814,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.14" +version = "1.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c3d1b2e905a3a7b00a6141adb0e4c0bb941d11caf55349d863942a1cc44e3c9" +checksum = "be714c154be609ec7f5dad223a33bf1482fff90472de28f7362806e6d4832b8c" dependencies = [ "jobserver", "libc", @@ -820,9 +831,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chrono" -version = "0.4.39" +version = "0.4.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e36cc9d416881d2e24f9a963be5fb1cd90966419ac844274161d10488b3e825" +checksum = "1a7964611d71df112cb1730f2ee67324fcf4d0fc6606acbbe9bfe06df124637c" dependencies = [ "android-tzdata", "iana-time-zone", @@ -830,14 +841,14 @@ dependencies = [ "num-traits", "serde", "wasm-bindgen", - "windows-targets", + "windows-link", ] [[package]] name = "clap" -version = "4.5.29" +version = "4.5.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8acebd8ad879283633b343856142139f2da2317c96b05b4dd6181c61e2480184" +checksum = "027bb0d98429ae334a8698531da7077bdf906419543a35a55c2cb1b66437d767" dependencies = [ "clap_builder", "clap_derive", @@ -845,9 +856,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.29" +version = "4.5.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6ba32cbda51c7e1dfd49acc1457ba1a7dec5b64fe360e828acb13ca8dc9c2f9" +checksum = "5589e0cba072e0f3d23791efac0fd8627b49c829c196a492e88168e6a669d863" dependencies = [ "anstream", "anstyle", @@ -864,7 +875,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -920,9 +931,9 @@ dependencies = [ [[package]] name = "convert_case" -version = "0.6.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" +checksum = "bb402b8d4c85569410425650ce3eddc7d698ed96d39a73f941b08fb63082f1e7" dependencies = [ "unicode-segmentation", ] @@ -1046,7 +1057,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -1057,7 +1068,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ "darling_core", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -1091,13 +1102,33 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "derive-where" +version = "1.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62d671cc41a825ebabc75757b62d3d168c577f9149b2d49ece1dad1f72119d25" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.99", +] + [[package]] name = "derive_more" version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4a9b99b9cbbe49445b21764dc0625032a89b145a2642e67603e1c936f5458d05" dependencies = [ - "derive_more-impl", + "derive_more-impl 1.0.0", +] + +[[package]] +name = "derive_more" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" +dependencies = [ + "derive_more-impl 2.0.1", ] [[package]] @@ -1105,11 +1136,23 @@ name = "derive_more-impl" version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.99", + "unicode-xid", +] + +[[package]] +name = "derive_more-impl" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", "unicode-xid", ] @@ -1128,7 +1171,7 @@ version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ - "block-buffer", + "block-buffer 0.10.4", "const-oid", "crypto-common", "subtle", @@ -1142,7 +1185,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -1153,9 +1196,9 @@ checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" [[package]] name = "dyn-clone" -version = "1.0.18" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "feeef44e73baff3a26d371801df019877a9866a8c493d315ab00177843314f35" +checksum = "1c7a8fb8a9fbf66c1f703fe16184d10ca0ee9d23be5b4436400408ba54a95005" [[package]] name = "ecdsa" @@ -1173,9 +1216,9 @@ dependencies = [ [[package]] name = "either" -version = "1.13.0" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" +checksum = "b7914353092ddf589ad78f25c5c1c21b7f80b0ff8621e7c814c3485b5306da9d" [[package]] name = "elliptic-curve" @@ -1206,14 +1249,14 @@ checksum = "2f9ed6b3789237c8a0c1c505af1c7eb2c560df6186f01b098c3a1064ea532f38" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "equivalent" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "errno" @@ -1336,17 +1379,6 @@ version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" -[[package]] -name = "futures-macro" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.98", -] - [[package]] name = "futures-task" version = "0.3.31" @@ -1360,11 +1392,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81" dependencies = [ "futures-core", - "futures-macro", "futures-task", "pin-project-lite", "pin-utils", - "slab", ] [[package]] @@ -1467,6 +1497,15 @@ dependencies = [ "serde", ] +[[package]] +name = "hex-conservative" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5313b072ce3c597065a808dbf612c4c8e8590bdbf8b579508bf7a762c5eae6cd" +dependencies = [ + "arrayvec", +] + [[package]] name = "hkdf" version = "0.12.4" @@ -1623,7 +1662,7 @@ checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -1670,7 +1709,7 @@ checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -1745,9 +1784,9 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.14" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" +checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" [[package]] name = "jobserver" @@ -1779,7 +1818,7 @@ dependencies = [ "hex", "once_cell", "serdect", - "sha2", + "sha2 0.10.8", "sp1-lib", ] @@ -1810,7 +1849,7 @@ checksum = "6efe7b9aea4a6b9454dc95a67f2de13505f6b4fbea885bc7a5c09bda48a85b18" dependencies = [ "ff", "hex", - "sha2", + "sha2 0.10.8", "sp1_bls12_381", "spin", ] @@ -1826,9 +1865,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.169" +version = "0.2.170" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a" +checksum = "875b3680cb2f8f71bdcf9a30f38d48282f5d3c95cbf9b3fa57269bb5d5c06828" [[package]] name = "libm" @@ -1836,6 +1875,52 @@ version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa" +[[package]] +name = "libsecp256k1" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95b09eff1b35ed3b33b877ced3a691fc7a481919c7e29c53c906226fcf55e2a1" +dependencies = [ + "arrayref", + "base64 0.13.1", + "digest 0.9.0", + "libsecp256k1-core", + "libsecp256k1-gen-ecmult", + "libsecp256k1-gen-genmult", + "rand", + "serde", + "sha2 0.9.9", +] + +[[package]] +name = "libsecp256k1-core" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5be9b9bb642d8522a44d533eab56c16c738301965504753b03ad1de3425d5451" +dependencies = [ + "crunchy", + "digest 0.9.0", + "subtle", +] + +[[package]] +name = "libsecp256k1-gen-ecmult" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3038c808c55c87e8a172643a7d87187fc6c4174468159cb3090659d55bcb4809" +dependencies = [ + "libsecp256k1-core", +] + +[[package]] +name = "libsecp256k1-gen-genmult" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3db8d6ba2cec9eacc40e6e8ccc98931840301f1006e95647ceb2dd5c3aa06f7c" +dependencies = [ + "libsecp256k1-core", +] + [[package]] name = "linux-raw-sys" version = "0.4.15" @@ -1844,15 +1929,15 @@ checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" [[package]] name = "litemap" -version = "0.7.4" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ee93343901ab17bd981295f2cf0026d4ad018c7c31ba84549a4ddbb47a45104" +checksum = "23fb14cb19457329c82206317a5663005a4d404783dc74f4252769b0d5f42856" [[package]] name = "log" -version = "0.4.25" +version = "0.4.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04cbf5b083de1c7e0222a7a51dbfdba1cbe1c6ab0b15e29fff3f6c077fd9cd9f" +checksum = "30bde2b3dc3671ae49d8e2e9f044c7c005836e7a023ee57cffa25ab82764bb9e" [[package]] name = "matchers" @@ -1869,28 +1954,6 @@ version = "2.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" -[[package]] -name = "metrics" -version = "0.24.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a7deb012b3b2767169ff203fadb4c6b0b82b947512e5eb9e0b78c2e186ad9e3" -dependencies = [ - "ahash", - "portable-atomic", -] - -[[package]] -name = "metrics-derive" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3dbdd96ed57d565ec744cba02862d707acf373c5772d152abae6ec5c4e24f6c" -dependencies = [ - "proc-macro2", - "quote", - "regex", - "syn 2.0.98", -] - [[package]] name = "modular-bitfield" version = "0.11.2" @@ -2040,7 +2103,7 @@ checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -2068,38 +2131,26 @@ dependencies = [ [[package]] name = "op-alloy-consensus" -version = "0.10.3" +version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23f7ff02e5f3ba62c8dd5d9a630c818f50147bca7b0d78e89de59ed46b5d02e1" +checksum = "6ed6cad421e41d400667a06df8bd306dd316c3e1fed803df065b1c65d7de6795" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rlp", "alloy-serde", - "derive_more", + "derive_more 1.0.0", "serde", "serde_with", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] -name = "op-alloy-rpc-types" -version = "0.10.3" +name = "opaque-debug" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ed9af4583c4b3ea93f54092ebfe41172974de2042672e9850500f4d1f99844e" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-network-primitives", - "alloy-primitives", - "alloy-rpc-types-eth", - "alloy-serde", - "derive_more", - "op-alloy-consensus", - "serde", - "serde_json", -] +checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "overload" @@ -2107,19 +2158,6 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" -[[package]] -name = "p256" -version = "0.13.2" -source = "git+https://github.com/sp1-patches/elliptic-curves?tag=patch-p256-13.2-sp1-4.1.0#f527279b192e0d1b293108af2faee513495411ca" -dependencies = [ - "ecdsa", - "elliptic-curve", - "hex", - "primeorder", - "sha2", - "sp1-lib", -] - [[package]] name = "p3-baby-bear" version = "0.2.0-succinct" @@ -2266,7 +2304,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -2288,7 +2326,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b7cafe60d6cf8e62e1b9b2ea516a089c008945bb5a275416789e7db0bc199dc" dependencies = [ "memchr", - "thiserror 2.0.11", + "thiserror 2.0.12", "ucd-trie", ] @@ -2316,15 +2354,15 @@ dependencies = [ [[package]] name = "pkg-config" -version = "0.3.31" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" +checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" [[package]] name = "portable-atomic" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6" +checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e" [[package]] name = "powerfmt" @@ -2341,14 +2379,6 @@ dependencies = [ "zerocopy", ] -[[package]] -name = "primeorder" -version = "0.13.1" -source = "git+https://github.com/sp1-patches/elliptic-curves?tag=patch-p256-13.2-sp1-4.1.0#f527279b192e0d1b293108af2faee513495411ca" -dependencies = [ - "elliptic-curve", -] - [[package]] name = "primitive-types" version = "0.12.2" @@ -2388,23 +2418,23 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "proc-macro2" -version = "1.0.93" +version = "1.0.94" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60946a68e5f9d28b0dc1c21bb8a97ee7d018a8b322fa57838ba31cc878e22d99" +checksum = "a31971752e70b8b2686d7e46ec17fb38dad4051d94024c88df49b667caea9c84" dependencies = [ "unicode-ident", ] [[package]] name = "proptest" -version = "1.5.0" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d" +checksum = "14cae93065090804185d3b75f0bf93b8eeda30c7a9b4a33d3bdb3988d6229e50" dependencies = [ "bit-set", "bit-vec", @@ -2428,9 +2458,9 @@ checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" [[package]] name = "quote" -version = "1.0.38" +version = "1.0.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc" +checksum = "c1f1914ce909e1658d9907913b4b91947430c7d9be598b15a1912935b8c04801" dependencies = [ "proc-macro2", ] @@ -2548,7 +2578,7 @@ checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" [[package]] name = "reth-chainspec" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-chains", "alloy-consensus", @@ -2557,7 +2587,7 @@ dependencies = [ "alloy-primitives", "alloy-trie", "auto_impl", - "derive_more", + "derive_more 2.0.1", "reth-ethereum-forks", "reth-network-peers", "reth-primitives-traits", @@ -2567,7 +2597,7 @@ dependencies = [ [[package]] name = "reth-codecs" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", @@ -2584,31 +2614,31 @@ dependencies = [ [[package]] name = "reth-codecs-derive" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "reth-consensus" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", - "alloy-eips", "alloy-primitives", "auto_impl", - "derive_more", + "reth-execution-types", "reth-primitives-traits", + "thiserror 2.0.12", ] [[package]] name = "reth-consensus-common" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", @@ -2621,19 +2651,19 @@ dependencies = [ [[package]] name = "reth-errors" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "reth-consensus", "reth-execution-errors", "reth-fs-util", "reth-storage-errors", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] name = "reth-ethereum-consensus" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", @@ -2641,6 +2671,7 @@ dependencies = [ "reth-chainspec", "reth-consensus", "reth-consensus-common", + "reth-execution-types", "reth-primitives", "reth-primitives-traits", "tracing", @@ -2649,7 +2680,7 @@ dependencies = [ [[package]] name = "reth-ethereum-forks" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-chains", "alloy-eip2124", @@ -2664,171 +2695,123 @@ dependencies = [ [[package]] name = "reth-ethereum-primitives" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-evm", "alloy-network", "alloy-primitives", "alloy-rlp", "alloy-rpc-types-eth", "alloy-serde", - "derive_more", + "derive_more 2.0.1", "reth-primitives-traits", "reth-zstd-compressors", - "revm-primitives", - "secp256k1", + "revm-context", + "secp256k1 0.30.0", "serde", ] [[package]] name = "reth-evm" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-evm", "alloy-primitives", "auto_impl", + "derive_more 2.0.1", "futures-util", - "metrics", "reth-chainspec", - "reth-consensus", "reth-consensus-common", - "reth-ethereum-primitives", "reth-execution-errors", "reth-execution-types", - "reth-metrics", "reth-primitives", "reth-primitives-traits", "reth-storage-errors", "revm", - "revm-primitives", + "revm-database", ] [[package]] name = "reth-evm-ethereum" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-evm", "alloy-primitives", "alloy-sol-types", - "derive_more", "reth-chainspec", - "reth-consensus", - "reth-ethereum-consensus", "reth-ethereum-forks", "reth-evm", + "reth-execution-types", "reth-primitives", - "reth-primitives-traits", "revm", - "revm-primitives", ] [[package]] name = "reth-execution-errors" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-eips", + "alloy-evm", "alloy-primitives", "alloy-rlp", "nybbles", "reth-storage-errors", - "thiserror 2.0.11", + "revm-database-interface", + "thiserror 2.0.12", ] [[package]] name = "reth-execution-types" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", + "derive_more 2.0.1", + "reth-ethereum-primitives", "reth-execution-errors", - "reth-primitives", "reth-primitives-traits", - "reth-trie", "reth-trie-common", "revm", - "serde", - "serde_with", + "revm-database", ] [[package]] name = "reth-fs-util" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "serde", "serde_json", - "thiserror 2.0.11", -] - -[[package]] -name = "reth-metrics" -version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" -dependencies = [ - "metrics", - "metrics-derive", + "thiserror 2.0.12", ] [[package]] name = "reth-network-peers" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-primitives", "alloy-rlp", - "secp256k1", "serde_with", - "thiserror 2.0.11", + "thiserror 2.0.12", "url", ] -[[package]] -name = "reth-optimism-chainspec" -version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" -dependencies = [ - "alloy-chains", - "alloy-consensus", - "alloy-eips", - "alloy-genesis", - "alloy-primitives", - "derive_more", - "once_cell", - "op-alloy-consensus", - "op-alloy-rpc-types", - "reth-chainspec", - "reth-ethereum-forks", - "reth-network-peers", - "reth-optimism-forks", - "reth-primitives-traits", - "serde_json", - "thiserror 2.0.11", -] - -[[package]] -name = "reth-optimism-forks" -version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" -dependencies = [ - "alloy-chains", - "alloy-primitives", - "auto_impl", - "once_cell", - "reth-ethereum-forks", -] - [[package]] name = "reth-primitives" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "once_cell", @@ -2841,7 +2824,7 @@ dependencies = [ [[package]] name = "reth-primitives-traits" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", @@ -2851,32 +2834,34 @@ dependencies = [ "alloy-trie", "auto_impl", "bytes", - "derive_more", + "derive_more 2.0.1", "k256", "once_cell", "op-alloy-consensus", "reth-codecs", + "revm-bytecode", "revm-primitives", - "secp256k1", + "revm-state", + "secp256k1 0.30.0", "serde", "serde_with", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] name = "reth-prune-types" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-primitives", - "derive_more", - "thiserror 2.0.11", + "derive_more 2.0.1", + "thiserror 2.0.12", ] [[package]] name = "reth-stages-types" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-primitives", "reth-trie-common", @@ -2885,10 +2870,10 @@ dependencies = [ [[package]] name = "reth-static-file-types" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-primitives", - "derive_more", + "derive_more 2.0.1", "serde", "strum", ] @@ -2896,22 +2881,23 @@ dependencies = [ [[package]] name = "reth-storage-errors" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-eips", "alloy-primitives", "alloy-rlp", - "derive_more", + "derive_more 2.0.1", "reth-primitives-traits", "reth-prune-types", "reth-static-file-types", - "thiserror 2.0.11", + "revm-database-interface", + "thiserror 2.0.12", ] [[package]] name = "reth-tracing" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "clap", "eyre", @@ -2926,7 +2912,7 @@ dependencies = [ [[package]] name = "reth-trie" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-eips", @@ -2934,43 +2920,38 @@ dependencies = [ "alloy-rlp", "alloy-trie", "auto_impl", - "itertools 0.13.0", + "itertools 0.14.0", "reth-execution-errors", "reth-primitives-traits", "reth-stages-types", "reth-storage-errors", "reth-trie-common", "reth-trie-sparse", - "revm", + "revm-database", "tracing", ] [[package]] name = "reth-trie-common" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-consensus", "alloy-primitives", "alloy-rlp", - "alloy-rpc-types-eth", - "alloy-serde", "alloy-trie", - "bytes", - "derive_more", - "itertools 0.13.0", + "derive_more 2.0.1", + "itertools 0.14.0", "nybbles", "rayon", "reth-primitives-traits", - "revm", - "serde", - "serde_with", + "revm-database", ] [[package]] name = "reth-trie-sparse" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -2979,81 +2960,197 @@ dependencies = [ "reth-tracing", "reth-trie-common", "smallvec", - "thiserror 2.0.11", + "thiserror 2.0.12", ] [[package]] name = "reth-zstd-compressors" version = "1.2.0" -source = "git+https://github.com/paradigmxyz/reth?tag=v1.2.0#1e965caf5fa176f244a31c0d2662ba1b590938db" +source = "git+https://github.com/paradigmxyz/reth?rev=6b602f433ed7a67c8c2e255569f262c044601c53#6b602f433ed7a67c8c2e255569f262c044601c53" dependencies = [ "zstd", ] [[package]] name = "revm" -version = "19.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfc5bef3c95fadf3b6a24a253600348380c169ef285f9780a793bb7090c8990d" +version = "20.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "revm-bytecode", + "revm-context", + "revm-context-interface", + "revm-database", + "revm-database-interface", + "revm-handler", + "revm-inspector", + "revm-interpreter", + "revm-precompile", + "revm-primitives", + "revm-specification", + "revm-state", +] + +[[package]] +name = "revm-bytecode" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" dependencies = [ + "bitvec", + "revm-primitives", + "revm-specification", + "serde", +] + +[[package]] +name = "revm-context" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "alloy-eip2930", + "alloy-eip7702", "auto_impl", "cfg-if", - "dyn-clone", - "once_cell", + "derive-where", + "revm-bytecode", + "revm-context-interface", + "revm-database-interface", + "revm-interpreter", + "revm-primitives", + "revm-specification", + "revm-state", +] + +[[package]] +name = "revm-context-interface" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "alloy-eip2930", + "alloy-eip7702", + "auto_impl", + "revm-database-interface", + "revm-primitives", + "revm-specification", + "revm-state", + "serde", +] + +[[package]] +name = "revm-database" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "auto_impl", + "revm-bytecode", + "revm-database-interface", + "revm-primitives", + "revm-state", +] + +[[package]] +name = "revm-database-interface" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "auto_impl", + "revm-primitives", + "revm-state", + "serde", +] + +[[package]] +name = "revm-handler" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "auto_impl", + "revm-bytecode", + "revm-context", + "revm-context-interface", + "revm-database-interface", "revm-interpreter", "revm-precompile", + "revm-primitives", + "revm-specification", + "revm-state", "serde", - "serde_json", +] + +[[package]] +name = "revm-inspector" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "auto_impl", + "revm-context", + "revm-database-interface", + "revm-handler", + "revm-interpreter", + "revm-precompile", + "revm-primitives", + "revm-state", ] [[package]] name = "revm-interpreter" -version = "15.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dcab7ef2064057acfc84731205f4bc77f4ec1b35630800b26ff6a185731c5ab" +version = "16.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" dependencies = [ + "revm-bytecode", + "revm-context-interface", "revm-primitives", + "revm-specification", "serde", ] [[package]] name = "revm-precompile" -version = "16.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6caa1a7ff2cc4a09a263fcf9de99151706f323d30f33d519ed329f017a02b046" +version = "17.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" dependencies = [ "aurora-engine-modexp", "c-kzg", "cfg-if", "k256", "kzg-rs", + "libsecp256k1", "once_cell", - "p256", + "revm-context-interface", "revm-primitives", + "revm-specification", "ripemd", - "secp256k1", - "sha2", + "secp256k1 0.29.1", + "sha2 0.10.8", "substrate-bn", ] [[package]] name = "revm-primitives" -version = "15.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f987564210317706def498421dfba2ae1af64a8edce82c6102758b48133fcb" +version = "16.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" dependencies = [ - "alloy-eip2930", - "alloy-eip7702", "alloy-primitives", - "auto_impl", - "bitflags", - "bitvec", - "c-kzg", - "cfg-if", - "dyn-clone", +] + +[[package]] +name = "revm-specification" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ "enumn", - "hex", - "kzg-rs", + "revm-primitives", + "serde", +] + +[[package]] +name = "revm-state" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" +dependencies = [ + "bitflags", + "revm-bytecode", + "revm-primitives", + "revm-specification", "serde", ] @@ -3111,6 +3208,7 @@ version = "0.1.0" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-evm", "alloy-genesis", "alloy-network", "alloy-primitives", @@ -3119,6 +3217,7 @@ dependencies = [ "reth-chainspec", "reth-consensus", "reth-errors", + "reth-ethereum-consensus", "reth-ethereum-primitives", "reth-evm", "reth-evm-ethereum", @@ -3162,8 +3261,6 @@ dependencies = [ "alloy-rpc-types", "eyre", "reth-chainspec", - "reth-optimism-chainspec", - "reth-optimism-forks", "reth-primitives", "reth-trie", "serde", @@ -3172,9 +3269,9 @@ dependencies = [ [[package]] name = "ruint" -version = "1.12.4" +version = "1.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5ef8fb1dd8de3870cb8400d51b4c2023854bbafd5431a3ac7e7317243e22d2f" +checksum = "825df406ec217a8116bd7b06897c6cc8f65ffefc15d030ae2c9540acc9ed50b6" dependencies = [ "alloy-rlp", "ark-ff 0.3.0", @@ -3229,7 +3326,7 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" dependencies = [ - "semver 1.0.25", + "semver 1.0.26", ] [[package]] @@ -3247,9 +3344,9 @@ dependencies = [ [[package]] name = "rustversion" -version = "1.0.19" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4" +checksum = "eded382c5f5f786b989652c49544c4877d9f015cc22e145a5ea8ea66c2921cd2" [[package]] name = "rusty-fork" @@ -3265,9 +3362,9 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.19" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ea1a2d0a644769cc99faa24c3ad26b379b786fe7c36fd3c546254801650e6dd" +checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" [[package]] name = "sec1" @@ -3292,6 +3389,17 @@ checksum = "9465315bc9d4566e1724f0fffcbcc446268cb522e60f9a27bcded6b19c108113" dependencies = [ "rand", "secp256k1-sys", +] + +[[package]] +name = "secp256k1" +version = "0.30.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b50c5943d326858130af85e049f2661ba3c78b26589b8ab98e65e80ae44a1252" +dependencies = [ + "bitcoin_hashes", + "rand", + "secp256k1-sys", "serde", ] @@ -3315,9 +3423,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.25" +version = "1.0.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f79dfe2d285b0488816f30e700a7438c5a73d816b5b7d3ac72fbc48b0d185e03" +checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0" [[package]] name = "semver-parser" @@ -3330,31 +3438,30 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.217" +version = "1.0.218" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70" +checksum = "e8dfc9d19bdbf6d17e22319da49161d5d0108e4188e8b680aef6299eed22df60" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.217" +version = "1.0.218" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0" +checksum = "f09503e191f4e797cb8aac08e9a4a4695c5edf6a2e70e376d961ddd5c969f82b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "serde_json" -version = "1.0.138" +version = "1.0.140" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d434192e7da787e94a6ea7e9670b26a036d0ca41e0b7efb2676dd32bae872949" +checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373" dependencies = [ - "indexmap 2.7.1", "itoa", "memchr", "ryu", @@ -3367,7 +3474,7 @@ version = "3.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d6b6f7f2fcb69f747921f79f3926bd1e203fce4fef62c268dd3abfb6d86029aa" dependencies = [ - "base64", + "base64 0.22.1", "chrono", "hex", "indexmap 1.9.3", @@ -3388,7 +3495,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -3401,6 +3508,19 @@ dependencies = [ "serde", ] +[[package]] +name = "sha2" +version = "0.9.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" +dependencies = [ + "block-buffer 0.9.0", + "cfg-if", + "cpufeatures", + "digest 0.9.0", + "opaque-debug", +] + [[package]] name = "sha2" version = "0.10.8" @@ -3455,29 +3575,20 @@ dependencies = [ "rand_core", ] -[[package]] -name = "slab" -version = "0.4.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" -dependencies = [ - "autocfg", -] - [[package]] name = "smallvec" -version = "1.13.2" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" +checksum = "7fcf8323ef1faaee30a44a340193b1ac6814fd9b7b4e88e9d4519a3e4abe1cfd" dependencies = [ "serde", ] [[package]] name = "sp1-lib" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fab1b5989a446f294724cebab0e759ffd7034ba93d2aa7b97045303f7c50bf74" +checksum = "82bf9bf66dc9244c51585c72e3b82b48b7829ee909a8cc93d2101612c28f5030" dependencies = [ "bincode", "elliptic-curve", @@ -3487,9 +3598,9 @@ dependencies = [ [[package]] name = "sp1-primitives" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cf66c2781c36037c94a5905b6e05e7396fd4d12df09cd7f05cf96e3f0889f49" +checksum = "2df15132358d645a2842fa127ea37954d28fd70127c0c6fcc254219c10824427" dependencies = [ "bincode", "hex", @@ -3500,21 +3611,21 @@ dependencies = [ "p3-poseidon2", "p3-symmetric", "serde", - "sha2", + "sha2 0.10.8", ] [[package]] name = "sp1-zkvm" -version = "4.1.1" +version = "4.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f0acfbdacfeaad17367dd81e0019d7789fde3b5a9af94f0f20aed2d9dc9e4e2" +checksum = "114ab991c8d2d130c1defbb127b5cb1721bf535a602c5cd05ff98ff5584f55e5" dependencies = [ "cfg-if", "getrandom 0.2.15", "lazy_static", "libm", "rand", - "sha2", + "sha2 0.10.8", "sp1-lib", "sp1-primitives", ] @@ -3570,24 +3681,24 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" [[package]] name = "strum" -version = "0.26.3" +version = "0.27.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" +checksum = "f64def088c51c9510a8579e3c5d67c65349dcf755e5479ad3d010aa6454e2c32" dependencies = [ "strum_macros", ] [[package]] name = "strum_macros" -version = "0.26.4" +version = "0.27.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" +checksum = "c77a8c5abcaf0f9ce05d62342b7d298c346515365c36b673df4ebe3ced01fde8" dependencies = [ "heck", "proc-macro2", "quote", "rustversion", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -3625,9 +3736,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.98" +version = "2.0.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36147f1a48ae0ec2b5b3bc5b537d267457555a10dc06f3dbc8cb11ba3006d3b1" +checksum = "e02e925281e18ffd9d640e234264753c43edc62d64b2d4cf898f1bc5e75f3fc2" dependencies = [ "proc-macro2", "quote", @@ -3636,14 +3747,14 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "0.8.21" +version = "0.8.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c2de690018098e367beeb793991c7d4dc7270f42c9d2ac4ccc876c1368ca430" +checksum = "ac9f9798a84bca5cd4d1760db691075fda8f2c3a5d9647e8bfd29eb9b3fabb87" dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -3654,7 +3765,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -3665,9 +3776,9 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "tempfile" -version = "3.16.0" +version = "3.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38c246215d7d24f48ae091a2902398798e05d978b24315d6efbc00ede9a8bb91" +checksum = "22e5a0acb1f3f55f65cc4a866c361b2fb2a0ff6366785ae6fbb5f85df07ba230" dependencies = [ "cfg-if", "fastrand", @@ -3688,11 +3799,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.11" +version = "2.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d452f284b73e6d76dd36758a0c8684b1d5be31f92b89d07fd5822175732206fc" +checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" dependencies = [ - "thiserror-impl 2.0.11", + "thiserror-impl 2.0.12", ] [[package]] @@ -3703,18 +3814,18 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "thiserror-impl" -version = "2.0.11" +version = "2.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26afc1baea8a989337eeb52b6e72a039780ce45c3edfcc9c5b9d112feeb173c2" +checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -3834,7 +3945,7 @@ checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -3901,9 +4012,9 @@ dependencies = [ [[package]] name = "typenum" -version = "1.17.0" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" +checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" [[package]] name = "ucd-trie" @@ -3931,9 +4042,9 @@ checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" [[package]] name = "unicode-ident" -version = "1.0.16" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a210d160f08b701c8721ba1c726c11662f877ea6b7094007e1ca9a1041945034" +checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" [[package]] name = "unicode-segmentation" @@ -4034,7 +4145,7 @@ dependencies = [ "log", "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", "wasm-bindgen-shared", ] @@ -4056,7 +4167,7 @@ checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -4101,6 +4212,12 @@ dependencies = [ "windows-targets", ] +[[package]] +name = "windows-link" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6dccfd733ce2b1753b03b6d3c65edf020262ea35e20ccdf3e288043e6dd620e3" + [[package]] name = "windows-sys" version = "0.59.0" @@ -4176,9 +4293,9 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "winnow" -version = "0.7.2" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59690dea168f2198d1a3b0cac23b8063efcd11012f10ae4698f284808c8ef603" +checksum = "0e7f4ea97f6f78012141bcdb6a216b2609f0979ada50b20ca5b52dde2eac2bb1" dependencies = [ "memchr", ] @@ -4233,7 +4350,7 @@ checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", "synstructure", ] @@ -4255,27 +4372,27 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "zerofrom" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cff3ee08c995dee1859d998dea82f7374f2826091dd9cd47def953cae446cd2e" +checksum = "50cc42e0333e05660c3587f3bf9d0478688e15d870fab3346451ce7f8c9fbea5" dependencies = [ "zerofrom-derive", ] [[package]] name = "zerofrom-derive" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808" +checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", "synstructure", ] @@ -4296,7 +4413,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] @@ -4318,33 +4435,53 @@ checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.98", + "syn 2.0.99", ] [[package]] name = "zstd" -version = "0.13.2" +version = "0.13.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcf2b778a664581e31e389454a7072dab1647606d44f7feea22cd5abb9c9f3f9" +checksum = "e91ee311a569c327171651566e07972200e76fcfe2242a4fa446149a3881c08a" dependencies = [ "zstd-safe", ] [[package]] name = "zstd-safe" -version = "7.2.1" +version = "7.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54a3ab4db68cea366acc5c897c7b4d4d1b8994a9cd6e6f841f8964566a419059" +checksum = "f3051792fbdc2e1e143244dc28c60f73d8470e93f3f9cbd0ead44da5ed802722" dependencies = [ "zstd-sys", ] [[package]] name = "zstd-sys" -version = "2.0.13+zstd.1.5.6" +version = "2.0.14+zstd.1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38ff0f21cfee8f97d94cef41359e0c89aa6113028ab0291aa8ca0038995a95aa" +checksum = "8fb060d4926e4ac3a3ad15d864e99ceb5f343c6b34f5bd6d81ae6ed417311be5" dependencies = [ "cc", "pkg-config", ] + +[[patch.unused]] +name = "alloy-op-evm" +version = "0.1.0" +source = "git+https://github.com/alloy-rs/evm?rev=04fa394#04fa3947c5694c2d15956bb18a31834b95e0e975" + +[[patch.unused]] +name = "p256" +version = "0.13.2" +source = "git+https://github.com/sp1-patches/elliptic-curves?tag=patch-p256-13.2-sp1-4.1.0#f527279b192e0d1b293108af2faee513495411ca" + +[[patch.unused]] +name = "revm-inspectors" +version = "0.15.0" +source = "git+https://github.com/paradigmxyz/revm-inspectors?rev=8900c2b#8900c2bf8430e41f1a1cc92dbc1cf0615f00a26b" + +[[patch.unused]] +name = "revm-optimism" +version = "1.0.0-alpha.1" +source = "git+https://github.com/bluealloy/revm?rev=a8a9893b#a8a9893b11c480a4f1c2fa8742d8ca60bf3d7ba4" diff --git a/bin/client/Cargo.toml b/bin/client/Cargo.toml index 28bcc85..08c789b 100644 --- a/bin/client/Cargo.toml +++ b/bin/client/Cargo.toml @@ -24,3 +24,21 @@ bn = { git = "https://github.com/sp1-patches/bn", tag = "patch-0.6.0-sp1-4.0.0", sha3 = { git = "https://github.com/sp1-patches/RustCrypto-hashes", tag = "patch-sha3-0.10.8-sp1-4.0.0" } k256 = { git = "https://github.com/sp1-patches/elliptic-curves", tag = "patch-k256-13.4-sp1-4.1.0" } p256 = { git = "https://github.com/sp1-patches/elliptic-curves", tag = "patch-p256-13.2-sp1-4.1.0" } + +alloy-evm = { git = "https://github.com/alloy-rs/evm", rev = "04fa394" } +alloy-op-evm = { git = "https://github.com/alloy-rs/evm", rev = "04fa394" } + +revm = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-bytecode = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-database = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-state = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-primitives = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-interpreter = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-inspector = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-context = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-context-interface = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-database-interface = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-specification = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } +revm-optimism = { git = "https://github.com/bluealloy/revm", rev = "a8a9893b" } + +revm-inspectors = { git = "https://github.com/paradigmxyz/revm-inspectors", rev = "8900c2b" } \ No newline at end of file diff --git a/crates/executor/client/Cargo.toml b/crates/executor/client/Cargo.toml index d49df24..f212767 100644 --- a/crates/executor/client/Cargo.toml +++ b/crates/executor/client/Cargo.toml @@ -20,9 +20,11 @@ itertools = "0.13.0" # workspace rsp-mpt.workspace = true rsp-primitives.workspace = true +revm-optimism = { workspace = true, optional = true } # reth reth-consensus.workspace = true +reth-ethereum-consensus.workspace = true reth-ethereum-primitives = { workspace = true, features = ["serde-bincode-compat"] } reth-execution-types.workspace = true reth-primitives.workspace = true @@ -31,6 +33,7 @@ reth-trie.workspace = true reth-evm.workspace = true reth-evm-ethereum.workspace = true reth-optimism-evm = { workspace = true, optional = true } +reth-optimism-consensus = { workspace = true, optional = true } reth-optimism-chainspec = { workspace = true, optional = true } reth-optimism-primitives = { workspace = true, optional = true, features = ["serde", "serde-bincode-compat"]} reth-errors.workspace = true @@ -42,21 +45,28 @@ revm-primitives.workspace = true # alloy alloy-eips = { workspace = true, features = ["sha2"] } +alloy-evm.workspace = true alloy-genesis.workspace = true alloy-primitives.workspace = true alloy-consensus.workspace = true alloy-network.workspace = true alloy-rpc-types.workspace = true + +# op +alloy-op-evm = { workspace = true, optional = true } op-alloy-network = { workspace = true, optional = true } op-alloy-rpc-types = { workspace = true, optional = true } [features] optimism = [ + "rsp-primitives/optimism", + "dep:alloy-op-evm", "dep:op-alloy-network", "dep:op-alloy-rpc-types", "dep:reth-optimism-evm", + "reth-optimism-consensus", "dep:reth-optimism-chainspec", "dep:reth-optimism-primitives", - "reth-optimism-evm/optimism" + "dep:revm-optimism", ] \ No newline at end of file diff --git a/crates/executor/client/src/custom.rs b/crates/executor/client/src/custom.rs index 4cee21d..46a037d 100644 --- a/crates/executor/client/src/custom.rs +++ b/crates/executor/client/src/custom.rs @@ -5,223 +5,150 @@ //! The [CustomEvmConfig] type implements the [ConfigureEvm] and [ConfigureEvmEnv] traits, //! configuring the custom CustomEvmConfig precompiles and instructions. -use reth_chainspec::ChainSpec; -use reth_evm::{ConfigureEvm, ConfigureEvmEnv, Database, EvmEnv, NextBlockEnvAttributes}; -use reth_evm_ethereum::{EthEvm, EthEvmConfig}; +use alloy_evm::{EthEvm, EthEvmFactory}; +use reth_evm::{Database, EvmEnv, EvmFactory}; use revm::{ - handler::register::{EvmHandler, HandleRegisters}, - precompile::{ - bn128, kzg_point_evaluation, secp256k1, Precompile, PrecompileResult, PrecompileSpecId, - PrecompileWithAddress, + context::{ + result::{EVMError, HaltReason}, + BlockEnv, Cfg, CfgEnv, ContextTr, TxEnv, }, - ContextPrecompiles, + handler::{EthPrecompiles, PrecompileProvider}, + inspector::NoOpInspector, + interpreter::InterpreterResult, + precompile::{u64_to_address, PrecompileErrors}, + Context, MainBuilder, MainContext, }; -use revm_primitives::{Address, Bytes, EVMError, Env, HaltReason}; -use std::sync::Arc; - -pub type CustomEthEvmConfig = CustomEvmConfig; - -#[cfg(feature = "optimism")] -pub type CustomOpEvmConfig = CustomEvmConfig; - -/// Create an annotated precompile that tracks the cycle count of a precompile. -/// This is useful for tracking how many cycles in total are consumed by calls to a given -/// precompile. -macro_rules! create_annotated_precompile { - ($precompile:expr, $name:expr) => { - PrecompileWithAddress( - $precompile.0, - Precompile::Standard(|input: &Bytes, gas_limit: u64| -> PrecompileResult { - let precompile = $precompile.precompile(); - match precompile { - Precompile::Standard(precompile) => { - println!(concat!("cycle-tracker-report-start: precompile-", $name)); - let result = precompile(input, gas_limit); - println!(concat!("cycle-tracker-report-end: precompile-", $name)); - result - } - _ => panic!("Annotated precompile must be a standard precompile."), - } - }), - ) - }; +use revm_primitives::{Address, Bytes}; +use std::{collections::HashMap, fmt::Debug, marker::PhantomData}; + +#[derive(Clone)] +pub struct CustomPrecompiles { + pub precompiles: EthPrecompiles, + addresses_to_names: HashMap, +} + +impl Debug for CustomPrecompiles { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + f.debug_struct("CustomPrecompiles") + .field("addresses_to_names", &self.addresses_to_names) + .finish() + } } -// An annotated version of the KZG point evaluation precompile. Because this is a stateful -// precompile we cannot use the `create_annotated_precompile` macro -pub(crate) const ANNOTATED_KZG_PROOF: PrecompileWithAddress = PrecompileWithAddress( - kzg_point_evaluation::POINT_EVALUATION.0, - Precompile::Env(|input: &Bytes, gas_limit: u64, env: &Env| -> PrecompileResult { - let precompile = kzg_point_evaluation::POINT_EVALUATION.precompile(); - match precompile { - Precompile::Env(precompile) => { - println!(concat!( - "cycle-tracker-report-start: precompile-", - "kzg-point-evaluation" - )); - let result = precompile(input, gas_limit, env); - println!(concat!("cycle-tracker-report-end: precompile-", "kzg-point-evaluation")); - result - } - _ => panic!("Annotated precompile must be a env precompile."), +impl Default for CustomPrecompiles { + fn default() -> Self { + Self { + precompiles: EthPrecompiles::default(), + addresses_to_names: HashMap::from([ + (u64_to_address(1), "ecrecover".to_string()), + (u64_to_address(2), "sha256".to_string()), + (u64_to_address(3), "ripemd160".to_string()), + (u64_to_address(4), "identity".to_string()), + (u64_to_address(5), "modexp".to_string()), + (u64_to_address(6), "bn-add".to_string()), + (u64_to_address(7), "bn-mul".to_string()), + (u64_to_address(8), "bn-pair".to_string()), + (u64_to_address(10), "kzg-point-evaluation".to_string()), + ]), } - }), -); - -pub(crate) const ANNOTATED_ECRECOVER: PrecompileWithAddress = - create_annotated_precompile!(secp256k1::ECRECOVER, "ecrecover"); -pub(crate) const ANNOTATED_BN_ADD: PrecompileWithAddress = - create_annotated_precompile!(bn128::add::ISTANBUL, "bn-add"); -pub(crate) const ANNOTATED_BN_MUL: PrecompileWithAddress = - create_annotated_precompile!(bn128::mul::ISTANBUL, "bn-mul"); -pub(crate) const ANNOTATED_BN_PAIR: PrecompileWithAddress = - create_annotated_precompile!(bn128::pair::ISTANBUL, "bn-pair"); - -/// Sets the precompiles to the EVM handler -/// -/// This will be invoked when the EVM is created via [ConfigureEvm::evm] or -/// [ConfigureEvm::evm_with_inspector] -/// -/// This will use the default mainnet precompiles and add additional precompiles. -fn set_precompiles(handler: &mut EvmHandler<'_, EXT, DB>) -where - DB: Database, -{ - // first we need the evm spec id, which determines the precompiles - let spec_id = handler.cfg.spec_id; - // install the precompiles - handler.pre_execution.load_precompiles = Arc::new(move || { - let mut loaded_precompiles: ContextPrecompiles = - ContextPrecompiles::new(PrecompileSpecId::from_spec_id(spec_id)); - loaded_precompiles.extend(vec![ - ANNOTATED_ECRECOVER, - ANNOTATED_BN_ADD, - ANNOTATED_BN_MUL, - ANNOTATED_BN_PAIR, - ANNOTATED_KZG_PROOF, - ]); - - loaded_precompiles - }); + } } -/// Custom EVM configuration -#[derive(Debug, Clone)] -pub struct CustomEvmConfig { - evm_config: C, +impl PrecompileProvider for CustomPrecompiles { + type Context = CTX; + type Output = InterpreterResult; + + fn set_spec(&mut self, spec: <::Cfg as Cfg>::Spec) { + self.precompiles.set_spec(spec); + } + + fn run( + &mut self, + context: &mut Self::Context, + address: &Address, + bytes: &Bytes, + gas_limit: u64, + ) -> Result, PrecompileErrors> { + if self.precompiles.contains(address) { + let name = self.addresses_to_names.get(address).cloned().unwrap_or(address.to_string()); + + println!("cycle-tracker-report-start: precompile-{name}"); + let result = self.precompiles.run(context, address, bytes, gas_limit); + println!("cycle-tracker-report-end: precompile-{name}"); + + result + } else { + Ok(None) + } + } + fn warm_addresses(&self) -> Box + '_> { + self.precompiles.warm_addresses() + } + + fn contains(&self, address: &Address) -> bool { + self.precompiles.contains(address) + } +} + +#[derive(Debug, Clone)] +pub struct CustomEvmFactory { // Some chains uses Clique consensus, which is not implemented in Reth. // The main difference for execution is the block beneficiary: Reth will // credit the block reward to the beneficiary address, whereas in Clique, // the reward is credited to the signer. custom_beneficiary: Option
, -} -impl CustomEvmConfig { - pub fn eth(chain_spec: Arc, custom_beneficiary: Option
) -> Self { - Self { evm_config: EthEvmConfig::new(chain_spec), custom_beneficiary } - } + phantom: PhantomData, } -#[cfg(feature = "optimism")] -impl CustomEvmConfig { - pub fn optimism(chain_spec: Arc) -> Self { - Self { - evm_config: reth_optimism_evm::OpEvmConfig::new(chain_spec), - custom_beneficiary: None, - } +impl CustomEvmFactory { + pub fn new(custom_beneficiary: Option
) -> Self { + Self { custom_beneficiary, phantom: PhantomData } } } -impl ConfigureEvm for CustomEvmConfig { - type Evm<'a, DB: Database + 'a, I: 'a> = EthEvm<'a, I, DB>; - type EvmError = EVMError; - type HaltReason = HaltReason; +impl EvmFactory for CustomEvmFactory { + type Evm>> = + EthEvm>>; - fn evm_with_env( - &self, - db: DB, - evm_env: EvmEnv, - ) -> Self::Evm<'_, DB, ()> { - let mut evm = self.evm_config.evm_with_env(db, evm_env); - evm.handler.append_handler_register(HandleRegisters::Plain(set_precompiles)); - evm - } + type Context = Context; - fn evm_with_env_and_inspector( - &self, - db: DB, - evm_env: EvmEnv, - inspector: I, - ) -> Self::Evm<'_, DB, I> - where - DB: reth_evm::Database, - I: revm::GetInspector, - { - let mut evm = self.evm_config.evm_with_env_and_inspector(db, evm_env, inspector); - evm.handler.append_handler_register(HandleRegisters::Plain(set_precompiles)); - evm - } -} + type Tx = TxEnv; + + type Error = EVMError; -#[cfg(feature = "optimism")] -impl ConfigureEvm for CustomEvmConfig { - type Evm<'a, DB: Database + 'a, I: 'a> = reth_optimism_evm::OpEvm<'a, I, DB>; - type EvmError = EVMError; type HaltReason = HaltReason; - fn evm_with_env( + fn create_evm( &self, db: DB, - evm_env: EvmEnv, - ) -> Self::Evm<'_, DB, ()> { - let mut evm = self.evm_config.evm_with_env(db, evm_env); - evm.handler.append_handler_register(HandleRegisters::Plain(set_precompiles)); - evm + mut input: EvmEnv, + ) -> Self::Evm { + if let Some(custom_beneficiary) = self.custom_beneficiary { + input.block_env.beneficiary = custom_beneficiary; + } + + let evm = Context::mainnet() + .with_db(db) + .with_cfg(input.cfg_env) + .with_block(input.block_env) + .build_mainnet_with_inspector(NoOpInspector {}) + .with_precompiles(CustomPrecompiles::default()); + + EthEvm::new(evm, false) } - fn evm_with_env_and_inspector( + fn create_evm_with_inspector>>( &self, db: DB, - evm_env: EvmEnv, + mut input: EvmEnv, inspector: I, - ) -> Self::Evm<'_, DB, I> - where - DB: reth_evm::Database, - I: revm::GetInspector, - { - let mut evm = self.evm_config.evm_with_env_and_inspector(db, evm_env, inspector); - evm.handler.append_handler_register(HandleRegisters::Plain(set_precompiles)); - evm - } -} - -impl ConfigureEvmEnv for CustomEvmConfig { - type Header = C::Header; - type Transaction = C::Transaction; - type Error = C::Error; - type TxEnv = C::TxEnv; - type Spec = C::Spec; - - fn tx_env(&self, transaction: &Self::Transaction, signer: Address) -> Self::TxEnv { - self.evm_config.tx_env(transaction, signer) - } - - fn evm_env(&self, header: &Self::Header) -> EvmEnv { - let mut evm_env = self.evm_config.evm_env(header); - - if let Some(beneficiary) = self.custom_beneficiary { - evm_env.block_env.coinbase = beneficiary; + ) -> Self::Evm { + if let Some(custom_beneficiary) = self.custom_beneficiary { + input.block_env.beneficiary = custom_beneficiary; } - evm_env - } - - fn next_evm_env( - &self, - parent: &Self::Header, - attributes: NextBlockEnvAttributes, - ) -> Result, Self::Error> { - self.evm_config.next_evm_env(parent, attributes) + EthEvm::new(self.create_evm(db, input).into_inner().with_inspector(inspector), true) } } diff --git a/crates/executor/client/src/executor.rs b/crates/executor/client/src/executor.rs index 2da02ca..efea2e9 100644 --- a/crates/executor/client/src/executor.rs +++ b/crates/executor/client/src/executor.rs @@ -1,31 +1,28 @@ use std::sync::Arc; use alloy_consensus::{BlockHeader, Header, TxReceipt}; +use alloy_evm::EthEvmFactory; use alloy_primitives::Bloom; use reth_chainspec::ChainSpec; -use reth_evm::execute::{BlockExecutionStrategy, BlockExecutionStrategyFactory}; -use reth_evm_ethereum::execute::EthExecutionStrategyFactory; +use reth_evm::execute::{BasicBlockExecutor, BlockExecutionStrategyFactory, Executor}; + +use reth_evm_ethereum::EthEvmConfig; use reth_execution_types::ExecutionOutcome; use reth_primitives_traits::Block; use reth_trie::KeccakKeyHasher; -use revm::db::{states::bundle_state::BundleRetention, WrapDatabaseRef}; + +use revm::database::WrapDatabaseRef; use revm_primitives::Address; use crate::{ - custom::CustomEthEvmConfig, error::ClientError, into_primitives::FromInput, - io::ClientExecutorInput, + custom::CustomEvmFactory, error::ClientError, into_primitives::FromInput, + io::ClientExecutorInput, ValidateBlockPostExecution, }; -pub type EthClientExecutor = ClientExecutor>; +pub type EthClientExecutor = ClientExecutor>>; #[cfg(feature = "optimism")] -pub type OpClientExecutor = ClientExecutor< - reth_optimism_evm::OpExecutionStrategyFactory< - reth_optimism_primitives::OpPrimitives, - reth_optimism_chainspec::OpChainSpec, - crate::custom::CustomOpEvmConfig, - >, ->; +pub type OpClientExecutor = ClientExecutor; /// An executor that executes a block inside a zkVM. #[derive(Debug, Clone)] @@ -36,7 +33,7 @@ pub struct ClientExecutor { impl ClientExecutor where F: BlockExecutionStrategyFactory, - F::Primitives: FromInput, + F::Primitives: FromInput + ValidateBlockPostExecution, { pub fn execute( &self, @@ -48,7 +45,8 @@ where WrapDatabaseRef(trie_db) }); - let mut strategy = self.block_execution_strategy_factory.create_strategy(db); + let block_executor = + BasicBlockExecutor::new(self.block_execution_strategy_factory.clone(), db); let block = profile!("recover senders", { F::Primitives::from_input_block(input.current_block.clone()) @@ -56,34 +54,27 @@ where .map_err(|_| ClientError::SignatureRecoveryFailed) })?; - strategy.apply_pre_execution_changes(&block)?; - - let executor_output = profile!("execute", { strategy.execute_transactions(&block) })?; - - let requests = strategy.apply_post_execution_changes(&block, &executor_output.receipts)?; + let execution_output = profile!("block execution", { block_executor.execute(&block) })?; // Validate the block post execution. profile!("validate block post-execution", { - strategy.validate_block_post_execution(&block, &executor_output.receipts, &requests) + F::Primitives::validate_block_post_execution(&block, &input.genesis, &execution_output) })?; - let mut state = strategy.into_state(); - state.merge_transitions(BundleRetention::Reverts); - // Accumulate the logs bloom. let mut logs_bloom = Bloom::default(); profile!("accrue logs bloom", { - executor_output.receipts.iter().for_each(|r| { + execution_output.result.receipts.iter().for_each(|r| { logs_bloom.accrue_bloom(&r.bloom()); }) }); // Convert the output to an execution outcome. let executor_outcome = ExecutionOutcome::new( - state.take_bundle(), - vec![executor_output.receipts], + execution_output.state, + vec![execution_output.result.receipts], input.current_block.header().number(), - vec![requests], + vec![execution_output.result.requests], ); // Verify the state root. @@ -129,9 +120,9 @@ where impl EthClientExecutor { pub fn eth(chain_spec: Arc, custom_beneficiary: Option
) -> Self { Self { - block_execution_strategy_factory: EthExecutionStrategyFactory::new( - chain_spec.clone(), - CustomEthEvmConfig::eth(chain_spec, custom_beneficiary), + block_execution_strategy_factory: EthEvmConfig::new_with_evm_factory( + chain_spec, + CustomEvmFactory::::new(custom_beneficiary), ), } } @@ -141,11 +132,7 @@ impl EthClientExecutor { impl OpClientExecutor { pub fn optimism(chain_spec: Arc) -> Self { Self { - block_execution_strategy_factory: reth_optimism_evm::OpExecutionStrategyFactory::new( - chain_spec.clone(), - crate::custom::CustomOpEvmConfig::optimism(chain_spec), - reth_optimism_evm::BasicOpReceiptBuilder::default(), - ), + block_execution_strategy_factory: reth_optimism_evm::OpEvmConfig::optimism(chain_spec), } } } diff --git a/crates/executor/client/src/into_primitives.rs b/crates/executor/client/src/into_primitives.rs index e12bd00..f87ef9a 100644 --- a/crates/executor/client/src/into_primitives.rs +++ b/crates/executor/client/src/into_primitives.rs @@ -1,6 +1,10 @@ use alloy_consensus::{Block, Header}; use alloy_network::{Ethereum, Network}; -use reth_primitives::{EthPrimitives, NodePrimitives}; +use reth_chainspec::ChainSpec; +use reth_errors::ConsensusError; +use reth_execution_types::BlockExecutionOutput; +use reth_primitives::{EthPrimitives, NodePrimitives, RecoveredBlock}; +use rsp_primitives::genesis::Genesis; pub trait IntoPrimitives: NodePrimitives { fn into_primitive_block(block: N::BlockResponse) -> Self::Block; @@ -16,6 +20,14 @@ pub trait IntoInput: NodePrimitives { fn into_input_block(block: Self::Block) -> Block; } +pub trait ValidateBlockPostExecution: NodePrimitives { + fn validate_block_post_execution( + block: &RecoveredBlock, + genesis: &Genesis, + execution_output: &BlockExecutionOutput, + ) -> Result<(), ConsensusError>; +} + impl IntoPrimitives for EthPrimitives { fn into_primitive_block(block: alloy_rpc_types::Block) -> Self::Block { let block = block.map_transactions(|tx| tx.inner.into()); @@ -39,6 +51,22 @@ impl IntoInput for EthPrimitives { } } +impl ValidateBlockPostExecution for EthPrimitives { + fn validate_block_post_execution( + block: &RecoveredBlock, + genesis: &Genesis, + execution_output: &BlockExecutionOutput, + ) -> Result<(), ConsensusError> { + let chain_spec = ChainSpec::try_from(genesis).unwrap(); + reth_ethereum_consensus::validate_block_post_execution( + block, + &chain_spec, + &execution_output.result.receipts, + &execution_output.result.requests, + ) + } +} + #[cfg(feature = "optimism")] impl IntoPrimitives for reth_optimism_primitives::OpPrimitives { fn into_primitive_block( @@ -68,3 +96,19 @@ impl IntoInput for reth_optimism_primitives::OpPrimitives { block } } + +#[cfg(feature = "optimism")] +impl ValidateBlockPostExecution for reth_optimism_primitives::OpPrimitives { + fn validate_block_post_execution( + block: &RecoveredBlock, + genesis: &Genesis, + execution_output: &BlockExecutionOutput, + ) -> Result<(), ConsensusError> { + let chain_spec = reth_optimism_chainspec::OpChainSpec::try_from(genesis).unwrap(); + reth_optimism_consensus::validate_block_post_execution( + block.header(), + &chain_spec, + &execution_output.result.receipts, + ) + } +} diff --git a/crates/executor/client/src/io.rs b/crates/executor/client/src/io.rs index 49fd531..e134092 100644 --- a/crates/executor/client/src/io.rs +++ b/crates/executor/client/src/io.rs @@ -6,8 +6,11 @@ use itertools::Itertools; use reth_errors::ProviderError; use reth_primitives::{EthPrimitives, NodePrimitives}; use reth_trie::TrieAccount; -use revm::DatabaseRef; -use revm_primitives::{keccak256, AccountInfo, Address, Bytecode, B256, U256}; +use revm::{ + state::{AccountInfo, Bytecode}, + DatabaseRef, +}; +use revm_primitives::{keccak256, Address, B256, U256}; use rsp_mpt::EthereumState; use rsp_primitives::genesis::Genesis; use serde::{Deserialize, Serialize}; @@ -106,7 +109,7 @@ impl<'a> TrieDB<'a> { } } -impl<'a> DatabaseRef for TrieDB<'a> { +impl DatabaseRef for TrieDB<'_> { /// The database error type. type Error = ProviderError; diff --git a/crates/executor/client/src/lib.rs b/crates/executor/client/src/lib.rs index 0835fc4..92611e8 100644 --- a/crates/executor/client/src/lib.rs +++ b/crates/executor/client/src/lib.rs @@ -7,4 +7,4 @@ pub mod error; pub mod executor; mod into_primitives; -pub use into_primitives::{FromInput, IntoInput, IntoPrimitives}; +pub use into_primitives::{FromInput, IntoInput, IntoPrimitives, ValidateBlockPostExecution}; diff --git a/crates/executor/host/Cargo.toml b/crates/executor/host/Cargo.toml index 7076126..11b2df8 100644 --- a/crates/executor/host/Cargo.toml +++ b/crates/executor/host/Cargo.toml @@ -23,12 +23,13 @@ either = "1.13.0" rsp-rpc-db.workspace = true rsp-client-executor = { workspace = true, features = ["optimism"] } rsp-mpt = { workspace = true, features = ["preimage_context"] } -rsp-primitives.workspace = true +rsp-primitives = { workspace = true, features = ["optimism"] } # sp1 sp1-sdk = "4.1.0" # reth +reth-ethereum-consensus.workspace = true reth-evm.workspace = true reth-evm-ethereum.workspace = true reth-optimism-evm = { workspace = true } @@ -48,6 +49,7 @@ revm-primitives.workspace = true # alloy alloy-chains.workspace = true alloy-consensus.workspace = true +alloy-evm.workspace = true alloy-primitives.workspace = true alloy-rlp.workspace = true alloy-provider.workspace = true diff --git a/crates/executor/host/src/full_executor.rs b/crates/executor/host/src/full_executor.rs index 2767f8c..c2314dc 100644 --- a/crates/executor/host/src/full_executor.rs +++ b/crates/executor/host/src/full_executor.rs @@ -9,7 +9,9 @@ use either::Either; use reth_evm::execute::BlockExecutionStrategyFactory; use reth_primitives::NodePrimitives; use revm_primitives::B256; -use rsp_client_executor::{io::ClientExecutorInput, IntoInput, IntoPrimitives}; +use rsp_client_executor::{ + io::ClientExecutorInput, IntoInput, IntoPrimitives, ValidateBlockPostExecution, +}; use rsp_rpc_db::RpcDb; use serde::de::DeserializeOwned; use sp1_sdk::{EnvProver, SP1ProvingKey, SP1Stdin, SP1VerifyingKey}; @@ -66,7 +68,11 @@ impl BlockExecutor for EitherExecutor where P: Provider + Clone, N: Network, - NP: NodePrimitives + DeserializeOwned + IntoPrimitives + IntoInput, + NP: NodePrimitives + + DeserializeOwned + + IntoPrimitives + + IntoInput + + ValidateBlockPostExecution, F: BlockExecutionStrategyFactory, H: ExecutionHooks, { @@ -133,7 +139,11 @@ impl BlockExecutor for FullExecutor where P: Provider + Clone, N: Network, - NP: NodePrimitives + DeserializeOwned + IntoPrimitives + IntoInput, + NP: NodePrimitives + + DeserializeOwned + + IntoPrimitives + + IntoInput + + ValidateBlockPostExecution, F: BlockExecutionStrategyFactory, H: ExecutionHooks, { diff --git a/crates/executor/host/src/host_executor.rs b/crates/executor/host/src/host_executor.rs index 8ac1b18..2442b23 100644 --- a/crates/executor/host/src/host_executor.rs +++ b/crates/executor/host/src/host_executor.rs @@ -1,24 +1,22 @@ use std::{collections::BTreeSet, sync::Arc}; use alloy_consensus::{BlockHeader, Header, TxReceipt}; +use alloy_evm::EthEvmFactory; use alloy_primitives::{Bloom, Sealable}; use alloy_provider::{Network, Provider}; use alloy_rpc_types::BlockTransactionsKind; use reth_chainspec::ChainSpec; -use reth_evm::execute::{BlockExecutionStrategy, BlockExecutionStrategyFactory}; -use reth_evm_ethereum::execute::EthExecutionStrategyFactory; +use reth_evm::execute::{BasicBlockExecutor, BlockExecutionStrategyFactory, Executor}; +use reth_evm_ethereum::EthEvmConfig; use reth_execution_types::ExecutionOutcome; -use reth_optimism_chainspec::OpChainSpec; -use reth_optimism_evm::{BasicOpReceiptBuilder, OpExecutionStrategyFactory}; -use reth_optimism_primitives::OpPrimitives; +use reth_optimism_evm::OpEvmConfig; use reth_primitives_traits::{Block, BlockBody}; use reth_trie::KeccakKeyHasher; -use revm::db::{states::bundle_state::BundleRetention, CacheDB}; +use revm::database::CacheDB; use revm_primitives::{Address, B256}; use rsp_client_executor::{ - custom::{CustomEthEvmConfig, CustomOpEvmConfig}, - io::ClientExecutorInput, - IntoInput, IntoPrimitives, + custom::CustomEvmFactory, io::ClientExecutorInput, IntoInput, IntoPrimitives, + ValidateBlockPostExecution, }; use rsp_mpt::EthereumState; use rsp_primitives::{account_proof::eip1186_proof_to_account_proof, genesis::Genesis}; @@ -26,10 +24,9 @@ use rsp_rpc_db::RpcDb; use crate::HostError; -pub type EthHostExecutor = HostExecutor>; +pub type EthHostExecutor = HostExecutor>>; -pub type OpHostExecutor = - HostExecutor>; +pub type OpHostExecutor = HostExecutor; /// An executor that fetches data from a [Provider] to execute blocks in the [ClientExecutor]. #[derive(Debug, Clone)] @@ -40,9 +37,9 @@ pub struct HostExecutor { impl EthHostExecutor { pub fn eth(chain_spec: Arc, custom_beneficiary: Option
) -> Self { Self { - block_execution_strategy_factory: EthExecutionStrategyFactory::new( - chain_spec.clone(), - CustomEthEvmConfig::eth(chain_spec, custom_beneficiary), + block_execution_strategy_factory: EthEvmConfig::new_with_evm_factory( + chain_spec, + CustomEvmFactory::::new(custom_beneficiary), ), } } @@ -50,13 +47,7 @@ impl EthHostExecutor { impl OpHostExecutor { pub fn optimism(chain_spec: Arc) -> Self { - Self { - block_execution_strategy_factory: OpExecutionStrategyFactory::new( - chain_spec.clone(), - CustomOpEvmConfig::optimism(chain_spec), - BasicOpReceiptBuilder::default(), - ), - } + Self { block_execution_strategy_factory: OpEvmConfig::optimism(chain_spec) } } } @@ -67,16 +58,16 @@ impl HostExecutor { } /// Executes the block with the given block number. - pub async fn execute<'a, P, N>( + pub async fn execute( &self, block_number: u64, - rpc_db: &'a RpcDb, + rpc_db: &RpcDb, provider: &P, genesis: Genesis, custom_beneficiary: Option
, ) -> Result, HostError> where - F::Primitives: IntoPrimitives + IntoInput, + F::Primitives: IntoPrimitives + IntoInput + ValidateBlockPostExecution, P: Provider + Clone, N: Network, { @@ -98,6 +89,9 @@ impl HostExecutor { tracing::info!("setting up the database for the block executor"); let cache_db = CacheDB::new(rpc_db); + let block_executor = + BasicBlockExecutor::new(self.block_execution_strategy_factory.clone(), cache_db); + // Execute the block and fetch all the necessary data along the way. tracing::info!( "executing the block and with rpc db: block_number={}, transaction_count={}", @@ -105,45 +99,31 @@ impl HostExecutor { current_block.body().transactions().len() ); - let executor_block_input = current_block + let block = current_block .clone() .try_into_recovered() .map_err(|_| HostError::FailedToRecoverSenders) .unwrap(); - let mut strategy = self.block_execution_strategy_factory.create_strategy(cache_db); - - strategy.apply_pre_execution_changes(&executor_block_input)?; - - let executor_output = strategy.execute_transactions(&executor_block_input)?; - - let requests = strategy - .apply_post_execution_changes(&executor_block_input, &executor_output.receipts)?; + let execution_output = block_executor.execute(&block)?; // Validate the block post execution. tracing::info!("validating the block post execution"); - strategy.validate_block_post_execution( - &executor_block_input, - &executor_output.receipts, - &requests, - )?; - - let mut state = strategy.into_state(); - state.merge_transitions(BundleRetention::Reverts); + F::Primitives::validate_block_post_execution(&block, &genesis, &execution_output)?; // Accumulate the logs bloom. tracing::info!("accumulating the logs bloom"); let mut logs_bloom = Bloom::default(); - executor_output.receipts.iter().for_each(|r| { + execution_output.result.receipts.iter().for_each(|r| { logs_bloom.accrue_bloom(&r.bloom()); }); // Convert the output to an execution outcome. let executor_outcome = ExecutionOutcome::new( - state.take_bundle(), - vec![executor_output.receipts], + execution_output.state, + vec![execution_output.result.receipts], current_block.header().number(), - vec![requests], + vec![execution_output.result.requests], ); let state_requests = rpc_db.get_state_requests(); diff --git a/crates/executor/host/src/lib.rs b/crates/executor/host/src/lib.rs index 73ed6ab..ef53642 100644 --- a/crates/executor/host/src/lib.rs +++ b/crates/executor/host/src/lib.rs @@ -1,12 +1,12 @@ use alloy_chains::Chain; +use alloy_evm::EthEvmFactory; pub use error::Error as HostError; use reth_chainspec::ChainSpec; -use reth_evm_ethereum::execute::EthExecutionStrategyFactory; +use reth_evm_ethereum::EthEvmConfig; use reth_optimism_chainspec::OpChainSpec; -use reth_optimism_evm::{BasicOpReceiptBuilder, OpExecutionStrategyFactory}; -use reth_optimism_primitives::OpPrimitives; +use reth_optimism_evm::OpEvmConfig; use revm_primitives::Address; -use rsp_client_executor::custom::{CustomEthEvmConfig, CustomOpEvmConfig}; +use rsp_client_executor::custom::CustomEvmFactory; use rsp_primitives::genesis::Genesis; use std::{path::PathBuf, sync::Arc}; use url::Url; @@ -25,27 +25,20 @@ pub use host_executor::{EthHostExecutor, HostExecutor, OpHostExecutor}; pub fn create_eth_block_execution_strategy_factory( genesis: &Genesis, custom_beneficiary: Option
, -) -> EthExecutionStrategyFactory { +) -> EthEvmConfig> { let chain_spec: Arc = Arc::new(genesis.try_into().unwrap()); - EthExecutionStrategyFactory::new( - chain_spec.clone(), - CustomEthEvmConfig::eth(chain_spec, custom_beneficiary), + EthEvmConfig::new_with_evm_factory( + chain_spec, + CustomEvmFactory::::new(custom_beneficiary), ) } -pub fn create_op_block_execution_strategy_factory( - genesis: &Genesis, -) -> OpExecutionStrategyFactory { +pub fn create_op_block_execution_strategy_factory(genesis: &Genesis) -> OpEvmConfig { let chain_spec: Arc = Arc::new(genesis.try_into().unwrap()); - OpExecutionStrategyFactory::new( - chain_spec.clone(), - CustomOpEvmConfig::optimism(chain_spec), - BasicOpReceiptBuilder::default(), - ) + OpEvmConfig::optimism(chain_spec) } - #[derive(Debug)] pub struct Config { pub chain: Chain, diff --git a/crates/executor/host/tests/integration.rs b/crates/executor/host/tests/integration.rs index 32123e1..e91b711 100644 --- a/crates/executor/host/tests/integration.rs +++ b/crates/executor/host/tests/integration.rs @@ -8,7 +8,7 @@ use revm_primitives::{address, Address}; use rsp_client_executor::{ executor::{ClientExecutor, EthClientExecutor}, io::ClientExecutorInput, - FromInput, IntoInput, IntoPrimitives, + FromInput, IntoInput, IntoPrimitives, ValidateBlockPostExecution, }; use rsp_host_executor::{EthHostExecutor, HostExecutor}; use rsp_primitives::genesis::Genesis; @@ -95,7 +95,12 @@ async fn run_e2e( custom_beneficiary: Option
, ) where F: BlockExecutionStrategyFactory, - F::Primitives: FromInput + IntoPrimitives + IntoInput + Serialize + DeserializeOwned, + F::Primitives: FromInput + + IntoPrimitives + + IntoInput + + ValidateBlockPostExecution + + Serialize + + DeserializeOwned, N: Network, { // Intialize the environment variables. diff --git a/crates/primitives/Cargo.toml b/crates/primitives/Cargo.toml index e682edd..8c6f651 100644 --- a/crates/primitives/Cargo.toml +++ b/crates/primitives/Cargo.toml @@ -15,10 +15,13 @@ eyre = "0.6.12" # reth reth-primitives.workspace = true reth-chainspec.workspace = true -reth-optimism-chainspec.workspace = true -reth-optimism-forks.workspace = true +reth-optimism-chainspec = { workspace = true, optional = true } +reth-optimism-forks = { workspace = true, optional = true } reth-trie.workspace = true # alloy alloy-genesis.workspace = true -alloy-rpc-types.workspace = true \ No newline at end of file +alloy-rpc-types.workspace = true + +[features] +optimism = ["dep:reth-optimism-chainspec", "dep:reth-optimism-forks"] \ No newline at end of file diff --git a/crates/primitives/src/chain_spec.rs b/crates/primitives/src/chain_spec.rs index 853a18c..9b0b783 100644 --- a/crates/primitives/src/chain_spec.rs +++ b/crates/primitives/src/chain_spec.rs @@ -1,5 +1,4 @@ use reth_chainspec::ChainSpec; -use reth_optimism_chainspec::OpChainSpec; use crate::genesis::Genesis; @@ -8,8 +7,9 @@ pub fn mainnet() -> eyre::Result { (&Genesis::Mainnet).try_into() } +#[cfg(feature = "optimism")] /// Returns the [ChainSpec] for OP Mainnet. -pub fn op_mainnet() -> eyre::Result { +pub fn op_mainnet() -> eyre::Result { (&Genesis::OpMainnet).try_into() } @@ -25,7 +25,10 @@ pub fn sepolia() -> eyre::Result { #[cfg(test)] mod tests { - use crate::chain_spec::{linea_mainnet, op_mainnet, sepolia}; + use crate::chain_spec::{linea_mainnet, sepolia}; + + #[cfg(feature = "optimism")] + use crate::chain_spec::op_mainnet; use super::mainnet; @@ -36,6 +39,7 @@ mod tests { assert_eq!(1, chain_spec.chain.id(), "the chain id must be 1 for Ethereum mainnet"); } + #[cfg(feature = "optimism")] #[test] pub fn test_op_mainnet_chain_spec() { let chain_spec = op_mainnet().unwrap(); diff --git a/crates/primitives/src/genesis.rs b/crates/primitives/src/genesis.rs index 735de32..71656a3 100644 --- a/crates/primitives/src/genesis.rs +++ b/crates/primitives/src/genesis.rs @@ -1,7 +1,5 @@ use eyre::eyre; use reth_chainspec::{BaseFeeParams, BaseFeeParamsKind, Chain, ChainSpec, EthereumHardfork}; -use reth_optimism_chainspec::OpChainSpec; -use reth_optimism_forks::OpHardfork; use serde::{Deserialize, Serialize}; pub const LINEA_GENESIS_JSON: &str = include_str!("../../../bin/host/genesis/59144.json"); @@ -44,7 +42,6 @@ impl TryFrom<&Genesis> for ChainSpec { Genesis::Mainnet => { let mainnet = ChainSpec { chain: Chain::mainnet(), - genesis_hash: Default::default(), genesis: Default::default(), genesis_header: Default::default(), paris_block_and_final_difficulty: Default::default(), @@ -60,7 +57,6 @@ impl TryFrom<&Genesis> for ChainSpec { Genesis::Sepolia => { let sepolia = ChainSpec { chain: Chain::sepolia(), - genesis_hash: Default::default(), genesis: Default::default(), genesis_header: Default::default(), paris_block_and_final_difficulty: Default::default(), @@ -81,20 +77,20 @@ impl TryFrom<&Genesis> for ChainSpec { } } -impl TryFrom<&Genesis> for OpChainSpec { +#[cfg(feature = "optimism")] +impl TryFrom<&Genesis> for reth_optimism_chainspec::OpChainSpec { type Error = eyre::Error; fn try_from(value: &Genesis) -> Result { match value { Genesis::OpMainnet => { - let op_mainnet = OpChainSpec { + let op_mainnet = reth_optimism_chainspec::OpChainSpec { inner: ChainSpec { chain: Chain::optimism_mainnet(), - genesis_hash: Default::default(), genesis: Default::default(), genesis_header: Default::default(), paris_block_and_final_difficulty: Default::default(), - hardforks: OpHardfork::op_mainnet(), + hardforks: reth_optimism_forks::OpHardfork::op_mainnet(), deposit_contract: Default::default(), base_fee_params: BaseFeeParamsKind::Constant(BaseFeeParams::ethereum()), prune_delete_limit: 10000, diff --git a/crates/storage/rpc-db/Cargo.toml b/crates/storage/rpc-db/Cargo.toml index 873ea7d..e39f329 100644 --- a/crates/storage/rpc-db/Cargo.toml +++ b/crates/storage/rpc-db/Cargo.toml @@ -20,7 +20,9 @@ reth-storage-errors.workspace = true reth-trie.workspace = true # revm +revm-database-interface.workspace = true revm-primitives.workspace = true +revm-state.workspace = true # alloy alloy-primitives.workspace = true diff --git a/crates/storage/rpc-db/src/lib.rs b/crates/storage/rpc-db/src/lib.rs index bc2f124..2e18a4a 100644 --- a/crates/storage/rpc-db/src/lib.rs +++ b/crates/storage/rpc-db/src/lib.rs @@ -11,7 +11,9 @@ use alloy_provider::{ }; use alloy_rpc_types::{BlockId, BlockTransactionsKind}; use reth_storage_errors::{db::DatabaseError, provider::ProviderError}; -use revm_primitives::{db::DatabaseRef, AccountInfo, Address, Bytecode, B256}; +use revm_database_interface::DatabaseRef; +use revm_primitives::{Address, B256}; +use revm_state::{AccountInfo, Bytecode}; /// A database that fetches data from a [Provider] over a [Transport]. #[derive(Debug, Clone)] diff --git a/crates/storage/witness-db/Cargo.toml b/crates/storage/witness-db/Cargo.toml index 33b88eb..b88f86c 100644 --- a/crates/storage/witness-db/Cargo.toml +++ b/crates/storage/witness-db/Cargo.toml @@ -18,4 +18,6 @@ reth-primitives.workspace = true reth-storage-errors.workspace = true # revm -revm-primitives.workspace = true \ No newline at end of file +revm-database-interface.workspace = true +revm-primitives.workspace = true +revm-state.workspace = true \ No newline at end of file diff --git a/crates/storage/witness-db/src/lib.rs b/crates/storage/witness-db/src/lib.rs index e6c457e..b376a22 100644 --- a/crates/storage/witness-db/src/lib.rs +++ b/crates/storage/witness-db/src/lib.rs @@ -1,6 +1,8 @@ use alloy_primitives::B256; use reth_storage_errors::provider::ProviderError; -use revm_primitives::{db::DatabaseRef, AccountInfo, Address, Bytecode, HashMap, U256}; +use revm_database_interface::DatabaseRef; +use revm_primitives::{Address, HashMap, U256}; +use revm_state::{AccountInfo, Bytecode}; use serde::{Deserialize, Serialize}; /// A database used to witness state inside the zkVM. diff --git a/rust-toolchain.toml b/rust-toolchain.toml index bd6bdb6..c818199 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,3 +1,3 @@ [toolchain] -channel = "1.82.0" +channel = "1.85.0" components = ["rustfmt"]