diff --git a/Cargo.lock b/Cargo.lock index 13e43bc13b..1f53e2aac6 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -101,7 +101,7 @@ dependencies = [ "c-kzg", "derive_more 2.0.1", "either", - "k256", + "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", "once_cell", "rand 0.8.5", "secp256k1 0.30.0", @@ -165,7 +165,7 @@ checksum = "9d4769c6ffddca380b0070d71c8b7f30bed375543fe76bb2f74ec0acf4b7cd16" dependencies = [ "alloy-primitives", "alloy-rlp", - "k256", + "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", "serde", "serde_with", "thiserror 2.0.12", @@ -215,9 +215,9 @@ dependencies = [ [[package]] name = "alloy-evm" -version = "0.17.0" +version = "0.20.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2211ccd0f05e2fea4f767242957f5e8cfb08b127ea2e6a3c0d9e5b10e6bf67d9" +checksum = "0dbe7c66c859b658d879b22e8aaa19546dab726b0639f4649a424ada3d99349e" dependencies = [ "alloy-consensus", "alloy-eips 1.0.30", @@ -229,7 +229,7 @@ dependencies = [ "derive_more 2.0.1", "op-alloy-consensus", "op-revm", - "revm 27.1.0", + "revm 29.0.0", "thiserror 2.0.12", ] @@ -249,9 +249,9 @@ dependencies = [ [[package]] name = "alloy-hardforks" -version = "0.2.11" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ce138b29a2f8e7ed97c064af8359dfa6559c12cba5e821ae4eb93081a56557e" +checksum = "889eb3949b58368a09d4f16931c660275ef5fb08e5fbd4a96573b19c7085c41f" dependencies = [ "alloy-chains", "alloy-eip2124", @@ -329,19 +329,19 @@ dependencies = [ [[package]] name = "alloy-primitives" -version = "1.3.0" -source = "git+https://github.com/scroll-tech/alloy-core?branch=feat%2Frkyv#65e074f03f4491168e4ec7853d2b1cebb8a35be2" +version = "1.3.1" +source = "git+https://github.com/scroll-tech/alloy-core?branch=feat%2Frkyv#d748da779d515c0a8344c15e811482e254ba897f" dependencies = [ "alloy-rlp", "bytes", "cfg-if", "const-hex", "derive_more 2.0.1", - "foldhash", - "hashbrown 0.15.3", + "foldhash 0.2.0", + "hashbrown 0.16.0", "indexmap 2.9.0", "itoa", - "k256", + "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", "keccak-asm", "paste", "proptest", @@ -529,7 +529,7 @@ dependencies = [ "auto_impl", "either", "elliptic-curve", - "k256", + "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", "thiserror 2.0.12", ] @@ -644,9 +644,9 @@ dependencies = [ [[package]] name = "alloy-trie" -version = "0.9.0" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bada1fc392a33665de0dc50d401a3701b62583c655e3522a323490a5da016962" +checksum = "e3412d52bb97c6c6cc27ccc28d4e6e8cf605469101193b50b0bd5813b1f990b5" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -1306,7 +1306,7 @@ dependencies = [ "bitflags 2.9.1", "cexpr", "clang-sys", - "itertools 0.13.0", + "itertools 0.11.0", "proc-macro2", "quote", "regex", @@ -1733,7 +1733,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "117725a109d387c937a1533ce01b450cbde6b88abceea8473c4d7a85853cda3c" dependencies = [ "lazy_static", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -2331,7 +2331,7 @@ dependencies = [ "base64 0.13.1", "bytes", "hex", - "k256", + "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", "log", "rand 0.8.5", "rlp", @@ -2396,7 +2396,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cea14ef9355e3beab063703aa9dab15afd25f0667c341310c1e5274bb1d0da18" dependencies = [ "libc", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -2459,7 +2459,7 @@ dependencies = [ "ethabi", "generic-array", "hex", - "k256", + "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", "num_enum 0.6.1", "open-fastrlp", "rand 0.8.5", @@ -2620,6 +2620,12 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" +[[package]] +name = "foldhash" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" + [[package]] name = "foreign-types" version = "0.3.2" @@ -3131,8 +3137,16 @@ checksum = "84b26c544d002229e640969970a2e74021aadf6e2f96372b9c58eff97de08eb3" dependencies = [ "allocator-api2", "equivalent", - "foldhash", - "rayon", + "foldhash 0.1.5", +] + +[[package]] +name = "hashbrown" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d" +dependencies = [ + "foldhash 0.2.0", "serde", ] @@ -3718,6 +3732,25 @@ dependencies = [ "signature", ] +[[package]] +name = "k256" +version = "0.13.4" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +dependencies = [ + "ecdsa", + "elliptic-curve", + "ff 0.13.1", + "hex-literal", + "num-bigint 0.4.6", + "once_cell", + "openvm", + "openvm-algebra-guest", + "openvm-algebra-moduli-macros", + "openvm-ecc-guest", + "openvm-ecc-sw-macros", + "serde", +] + [[package]] name = "keccak" version = "0.1.5" @@ -4354,7 +4387,7 @@ version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" dependencies = [ - "proc-macro-crate 3.3.0", + "proc-macro-crate 1.3.1", "proc-macro2", "quote", "syn 2.0.101", @@ -4374,11 +4407,12 @@ dependencies = [ [[package]] name = "nybbles" -version = "0.4.0" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11d51b0175c49668a033fe7cc69080110d9833b291566cdf332905f3ad9c68a0" +checksum = "bfa11e84403164a9f12982ab728f3c67c6fd4ab5b5f0254ffc217bdbd3b28ab0" dependencies = [ "alloy-rlp", + "cfg-if", "proptest", "ruint", "serde", @@ -4412,9 +4446,9 @@ checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" [[package]] name = "op-alloy-consensus" -version = "0.18.14" +version = "0.19.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c88d2940558fd69f8f07b3cbd7bb3c02fc7d31159c1a7ba9deede50e7881024" +checksum = "d9ade20c592484ba1ea538006e0454284174447a3adf9bb59fa99ed512f95493" dependencies = [ "alloy-consensus", "alloy-eips 1.0.30", @@ -4429,13 +4463,12 @@ dependencies = [ [[package]] name = "op-revm" -version = "8.1.0" +version = "10.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ce1dc7533f4e5716c55cd3d62488c6200cb4dfda96e0c75a7e484652464343b" +checksum = "f9ba4f4693811e73449193c8bd656d3978f265871916882e6a51a487e4f96217" dependencies = [ "auto_impl", - "once_cell", - "revm 27.1.0", + "revm 29.0.1", "serde", ] @@ -5527,6 +5560,24 @@ dependencies = [ "sha2 0.10.9", ] +[[package]] +name = "p256" +version = "0.13.2" +source = "git+https://github.com/openvm-org/openvm.git?tag=v1.4.0#39ee587f0f73646e3753cb2aa5f34885d4efffe0" +dependencies = [ + "ecdsa", + "elliptic-curve", + "ff 0.13.1", + "hex-literal", + "num-bigint 0.4.6", + "openvm", + "openvm-algebra-guest", + "openvm-algebra-moduli-macros", + "openvm-ecc-guest", + "openvm-ecc-sw-macros", + "serde", +] + [[package]] name = "p3-air" version = "0.1.0" @@ -6396,7 +6447,7 @@ dependencies = [ "once_cell", "socket2", "tracing", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -6760,8 +6811,8 @@ dependencies = [ [[package]] name = "reth-chainspec" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-chains", "alloy-consensus", @@ -6780,8 +6831,8 @@ dependencies = [ [[package]] name = "reth-codecs" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-consensus", "alloy-eips 1.0.30", @@ -6798,8 +6849,8 @@ dependencies = [ [[package]] name = "reth-codecs-derive" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "convert_case 0.7.1", "proc-macro2", @@ -6809,8 +6860,8 @@ dependencies = [ [[package]] name = "reth-db-models" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-eips 1.0.30", "alloy-primitives", @@ -6819,8 +6870,8 @@ dependencies = [ [[package]] name = "reth-ethereum-forks" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-eip2124", "alloy-hardforks", @@ -6831,8 +6882,8 @@ dependencies = [ [[package]] name = "reth-ethereum-primitives" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-consensus", "alloy-eips 1.0.30", @@ -6846,8 +6897,8 @@ dependencies = [ [[package]] name = "reth-evm" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-consensus", "alloy-eips 1.0.30", @@ -6862,14 +6913,14 @@ dependencies = [ "reth-storage-api", "reth-storage-errors", "reth-trie-common", - "revm 27.1.0", + "revm 29.0.0", "scroll-alloy-evm", ] [[package]] name = "reth-evm-ethereum" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-consensus", "alloy-eips 1.0.30", @@ -6883,13 +6934,13 @@ dependencies = [ "reth-execution-types", "reth-primitives-traits", "reth-storage-errors", - "revm 27.1.0", + "revm 29.0.0", ] [[package]] name = "reth-execution-errors" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-evm", "alloy-primitives", @@ -6901,8 +6952,8 @@ dependencies = [ [[package]] name = "reth-execution-types" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-consensus", "alloy-eips 1.0.30", @@ -6912,13 +6963,13 @@ dependencies = [ "reth-ethereum-primitives", "reth-primitives-traits", "reth-trie-common", - "revm 27.1.0", + "revm 29.0.0", ] [[package]] name = "reth-network-peers" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -6929,8 +6980,8 @@ dependencies = [ [[package]] name = "reth-primitives" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-consensus", "once_cell", @@ -6942,8 +6993,8 @@ dependencies = [ [[package]] name = "reth-primitives-traits" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-consensus", "alloy-eips 1.0.30", @@ -6958,9 +7009,9 @@ dependencies = [ "once_cell", "op-alloy-consensus", "reth-codecs", - "revm-bytecode 6.1.0", - "revm-primitives 20.1.0", - "revm-state 7.0.2", + "revm-bytecode 6.2.2", + "revm-primitives 20.2.1", + "revm-state 7.0.5", "scroll-alloy-consensus", "secp256k1 0.30.0", "serde", @@ -6970,8 +7021,8 @@ dependencies = [ [[package]] name = "reth-prune-types" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-primitives", "derive_more 2.0.1", @@ -6980,8 +7031,8 @@ dependencies = [ [[package]] name = "reth-scroll-chainspec" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-chains", "alloy-consensus", @@ -7005,8 +7056,8 @@ dependencies = [ [[package]] name = "reth-scroll-evm" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-consensus", "alloy-eips 1.0.30", @@ -7023,8 +7074,8 @@ dependencies = [ "reth-scroll-forks", "reth-scroll-primitives", "reth-storage-api", - "revm 27.1.0", - "revm-primitives 20.1.0", + "revm 29.0.0", + "revm-primitives 20.2.1", "revm-scroll", "scroll-alloy-consensus", "scroll-alloy-evm", @@ -7035,8 +7086,8 @@ dependencies = [ [[package]] name = "reth-scroll-forks" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-chains", "alloy-primitives", @@ -7049,8 +7100,8 @@ dependencies = [ [[package]] name = "reth-scroll-primitives" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-consensus", "alloy-eips 1.0.30", @@ -7066,8 +7117,8 @@ dependencies = [ [[package]] name = "reth-stages-types" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-primitives", "reth-trie-common", @@ -7075,8 +7126,8 @@ dependencies = [ [[package]] name = "reth-static-file-types" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-primitives", "derive_more 2.0.1", @@ -7086,8 +7137,8 @@ dependencies = [ [[package]] name = "reth-storage-api" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-consensus", "alloy-eips 1.0.30", @@ -7103,13 +7154,13 @@ dependencies = [ "reth-stages-types", "reth-storage-errors", "reth-trie-common", - "revm-database 7.0.2", + "revm-database 7.0.5", ] [[package]] name = "reth-storage-errors" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-eips 1.0.30", "alloy-primitives", @@ -7118,14 +7169,14 @@ dependencies = [ "reth-primitives-traits", "reth-prune-types", "reth-static-file-types", - "revm-database-interface 7.0.2", + "revm-database-interface 7.0.5", "thiserror 2.0.12", ] [[package]] name = "reth-trie" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-consensus", "alloy-eips 1.0.30", @@ -7140,14 +7191,14 @@ dependencies = [ "reth-storage-errors", "reth-trie-common", "reth-trie-sparse", - "revm-database 7.0.2", + "revm-database 7.0.5", "tracing", ] [[package]] name = "reth-trie-common" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -7157,13 +7208,13 @@ dependencies = [ "itertools 0.14.0", "nybbles", "reth-primitives-traits", - "revm-database 7.0.2", + "revm-database 7.0.5", ] [[package]] name = "reth-trie-sparse" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -7178,8 +7229,8 @@ dependencies = [ [[package]] name = "reth-zstd-compressors" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "zstd", ] @@ -7216,20 +7267,39 @@ dependencies = [ [[package]] name = "revm" -version = "27.1.0" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "29.0.0" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" +dependencies = [ + "revm-bytecode 6.2.2", + "revm-context 9.0.2", + "revm-context-interface 10.1.0", + "revm-database 7.0.5", + "revm-database-interface 7.0.5", + "revm-handler 10.0.0", + "revm-inspector 10.0.0", + "revm-interpreter 25.0.2", + "revm-precompile 27.0.0", + "revm-primitives 20.2.1", + "revm-state 7.0.5", +] + +[[package]] +name = "revm" +version = "29.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "718d90dce5f07e115d0e66450b1b8aa29694c1cf3f89ebddaddccc2ccbd2f13e" dependencies = [ - "revm-bytecode 6.1.0", - "revm-context 8.0.4", - "revm-context-interface 9.0.0", - "revm-database 7.0.2", - "revm-database-interface 7.0.2", - "revm-handler 8.1.0", - "revm-inspector 8.1.0", - "revm-interpreter 24.0.0", - "revm-precompile 25.0.0", - "revm-primitives 20.1.0", - "revm-state 7.0.2", + "revm-bytecode 6.2.2", + "revm-context 9.1.0", + "revm-context-interface 10.2.0", + "revm-database 7.0.5", + "revm-database-interface 7.0.5", + "revm-handler 10.0.1", + "revm-inspector 10.0.1", + "revm-interpreter 25.0.3", + "revm-precompile 27.0.0", + "revm-primitives 20.2.1", + "revm-state 7.0.5", ] [[package]] @@ -7246,13 +7316,12 @@ dependencies = [ [[package]] name = "revm-bytecode" -version = "6.1.0" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "6.2.2" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" dependencies = [ "bitvec", - "once_cell", "phf", - "revm-primitives 20.1.0", + "revm-primitives 20.2.1", "serde", ] @@ -7274,16 +7343,34 @@ dependencies = [ [[package]] name = "revm-context" -version = "8.0.4" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "9.0.2" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" +dependencies = [ + "bitvec", + "cfg-if", + "derive-where", + "revm-bytecode 6.2.2", + "revm-context-interface 10.1.0", + "revm-database-interface 7.0.5", + "revm-primitives 20.2.1", + "revm-state 7.0.5", + "serde", +] + +[[package]] +name = "revm-context" +version = "9.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a20c98e7008591a6f012550c2a00aa36cba8c14cc88eb88dec32eb9102554b4" dependencies = [ + "bitvec", "cfg-if", "derive-where", - "revm-bytecode 6.1.0", - "revm-context-interface 9.0.0", - "revm-database-interface 7.0.2", - "revm-primitives 20.1.0", - "revm-state 7.0.2", + "revm-bytecode 6.2.2", + "revm-context-interface 10.2.0", + "revm-database-interface 7.0.5", + "revm-primitives 20.2.1", + "revm-state 7.0.5", "serde", ] @@ -7304,16 +7391,32 @@ dependencies = [ [[package]] name = "revm-context-interface" -version = "9.0.0" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "10.1.0" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" +dependencies = [ + "alloy-eip2930", + "alloy-eip7702", + "auto_impl", + "either", + "revm-database-interface 7.0.5", + "revm-primitives 20.2.1", + "revm-state 7.0.5", + "serde", +] + +[[package]] +name = "revm-context-interface" +version = "10.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b50d241ed1ce647b94caf174fcd0239b7651318b2c4c06b825b59b973dfb8495" dependencies = [ "alloy-eip2930", "alloy-eip7702", "auto_impl", "either", - "revm-database-interface 7.0.2", - "revm-primitives 20.1.0", - "revm-state 7.0.2", + "revm-database-interface 7.0.5", + "revm-primitives 20.2.1", + "revm-state 7.0.5", "serde", ] @@ -7333,14 +7436,14 @@ dependencies = [ [[package]] name = "revm-database" -version = "7.0.2" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "7.0.5" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" dependencies = [ "alloy-eips 1.0.30", - "revm-bytecode 6.1.0", - "revm-database-interface 7.0.2", - "revm-primitives 20.1.0", - "revm-state 7.0.2", + "revm-bytecode 6.2.2", + "revm-database-interface 7.0.5", + "revm-primitives 20.2.1", + "revm-state 7.0.5", "serde", ] @@ -7358,13 +7461,13 @@ dependencies = [ [[package]] name = "revm-database-interface" -version = "7.0.2" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "7.0.5" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" dependencies = [ "auto_impl", "either", - "revm-primitives 20.1.0", - "revm-state 7.0.2", + "revm-primitives 20.2.1", + "revm-state 7.0.5", "serde", ] @@ -7388,19 +7491,38 @@ dependencies = [ [[package]] name = "revm-handler" -version = "8.1.0" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "10.0.0" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" +dependencies = [ + "auto_impl", + "derive-where", + "revm-bytecode 6.2.2", + "revm-context 9.0.2", + "revm-context-interface 10.1.0", + "revm-database-interface 7.0.5", + "revm-interpreter 25.0.2", + "revm-precompile 27.0.0", + "revm-primitives 20.2.1", + "revm-state 7.0.5", + "serde", +] + +[[package]] +name = "revm-handler" +version = "10.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "550331ea85c1d257686e672081576172fe3d5a10526248b663bbf54f1bef226a" dependencies = [ "auto_impl", "derive-where", - "revm-bytecode 6.1.0", - "revm-context 8.0.4", - "revm-context-interface 9.0.0", - "revm-database-interface 7.0.2", - "revm-interpreter 24.0.0", - "revm-precompile 25.0.0", - "revm-primitives 20.1.0", - "revm-state 7.0.2", + "revm-bytecode 6.2.2", + "revm-context 9.1.0", + "revm-context-interface 10.2.0", + "revm-database-interface 7.0.5", + "revm-interpreter 25.0.3", + "revm-precompile 27.0.0", + "revm-primitives 20.2.1", + "revm-state 7.0.5", "serde", ] @@ -7423,17 +7545,35 @@ dependencies = [ [[package]] name = "revm-inspector" -version = "8.1.0" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "10.0.0" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" +dependencies = [ + "auto_impl", + "either", + "revm-context 9.0.2", + "revm-database-interface 7.0.5", + "revm-handler 10.0.0", + "revm-interpreter 25.0.2", + "revm-primitives 20.2.1", + "revm-state 7.0.5", + "serde", + "serde_json", +] + +[[package]] +name = "revm-inspector" +version = "10.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c0a6e9ccc2ae006f5bed8bd80cd6f8d3832cd55c5e861b9402fdd556098512f" dependencies = [ "auto_impl", "either", - "revm-context 8.0.4", - "revm-database-interface 7.0.2", - "revm-handler 8.1.0", - "revm-interpreter 24.0.0", - "revm-primitives 20.1.0", - "revm-state 7.0.2", + "revm-context 9.1.0", + "revm-database-interface 7.0.5", + "revm-handler 10.0.1", + "revm-interpreter 25.0.3", + "revm-primitives 20.2.1", + "revm-state 7.0.5", "serde", "serde_json", ] @@ -7452,12 +7592,24 @@ dependencies = [ [[package]] name = "revm-interpreter" -version = "24.0.0" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "25.0.2" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" dependencies = [ - "revm-bytecode 6.1.0", - "revm-context-interface 9.0.0", - "revm-primitives 20.1.0", + "revm-bytecode 6.2.2", + "revm-context-interface 10.1.0", + "revm-primitives 20.2.1", + "serde", +] + +[[package]] +name = "revm-interpreter" +version = "25.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06575dc51b1d8f5091daa12a435733a90b4a132dca7ccee0666c7db3851bc30c" +dependencies = [ + "revm-bytecode 6.2.2", + "revm-context-interface 10.2.0", + "revm-primitives 20.2.1", "serde", ] @@ -7476,10 +7628,10 @@ dependencies = [ "blst", "c-kzg", "cfg-if", - "k256", + "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", "libsecp256k1", "once_cell", - "p256", + "p256 0.13.2 (registry+https://github.com/rust-lang/crates.io-index)", "revm-primitives 18.0.0", "ripemd", "secp256k1 0.30.0", @@ -7488,8 +7640,8 @@ dependencies = [ [[package]] name = "revm-precompile" -version = "25.0.0" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "27.0.0" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" dependencies = [ "ark-bls12-381", "ark-bn254", @@ -7500,11 +7652,10 @@ dependencies = [ "aurora-engine-modexp", "c-kzg", "cfg-if", - "k256", + "k256 0.13.4 (registry+https://github.com/rust-lang/crates.io-index)", "libsecp256k1", - "once_cell", - "p256", - "revm-primitives 20.1.0", + "p256 0.13.2 (registry+https://github.com/rust-lang/crates.io-index)", + "revm-primitives 20.2.1", "ripemd", "rug", "secp256k1 0.31.1", @@ -7524,25 +7675,26 @@ dependencies = [ [[package]] name = "revm-primitives" -version = "20.1.0" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "20.2.1" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" dependencies = [ "alloy-primitives", "num_enum 0.7.3", + "once_cell", "serde", ] [[package]] name = "revm-scroll" version = "0.1.0" -source = "git+https://github.com/scroll-tech/scroll-revm#59d400f1a0b616d7b97a24da1cb5b8dcb8006f4b" +source = "git+https://github.com/scroll-tech/scroll-revm#727c40fe86ac165f53505a6efe01bad9b1c502f7" dependencies = [ "auto_impl", "enumn", "once_cell", - "revm 27.1.0", - "revm-inspector 8.1.0", - "revm-primitives 20.1.0", + "revm 29.0.0", + "revm-inspector 10.0.0", + "revm-primitives 20.2.1", "serde", ] @@ -7560,12 +7712,12 @@ dependencies = [ [[package]] name = "revm-state" -version = "7.0.2" -source = "git+https://github.com/scroll-tech/revm#9cd9896c06a5bf6d4212906260d8789579873ba4" +version = "7.0.5" +source = "git+https://github.com/scroll-tech/revm#cc793301c260ce292d8deb59f61bc2a59bd0b991" dependencies = [ "bitflags 2.9.1", - "revm-bytecode 6.1.0", - "revm-primitives 20.1.0", + "revm-bytecode 6.2.2", + "revm-primitives 20.2.1", "serde", ] @@ -7787,7 +7939,7 @@ dependencies = [ "errno", "libc", "linux-raw-sys", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -7893,7 +8045,7 @@ checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" [[package]] name = "sbv-core" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#6915deed7fbe79d2573e48c07458b9009fd3dc1a" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#ac1d52a43b8c02551c9f076b882183c144cd1dd4" dependencies = [ "auto_impl", "cfg-if", @@ -7902,7 +8054,6 @@ dependencies = [ "rkyv", "sbv-helpers", "sbv-kv", - "sbv-precompile", "sbv-primitives", "sbv-trie", "serde", @@ -7913,7 +8064,7 @@ dependencies = [ [[package]] name = "sbv-helpers" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#6915deed7fbe79d2573e48c07458b9009fd3dc1a" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#ac1d52a43b8c02551c9f076b882183c144cd1dd4" dependencies = [ "tracing", ] @@ -7921,25 +8072,17 @@ dependencies = [ [[package]] name = "sbv-kv" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#6915deed7fbe79d2573e48c07458b9009fd3dc1a" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#ac1d52a43b8c02551c9f076b882183c144cd1dd4" dependencies = [ + "alloy-primitives", "auto_impl", - "hashbrown 0.15.3", "rustc-hash 2.1.1", ] -[[package]] -name = "sbv-precompile" -version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#6915deed7fbe79d2573e48c07458b9009fd3dc1a" -dependencies = [ - "sbv-primitives", -] - [[package]] name = "sbv-primitives" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#6915deed7fbe79d2573e48c07458b9009fd3dc1a" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#ac1d52a43b8c02551c9f076b882183c144cd1dd4" dependencies = [ "alloy-consensus", "alloy-eips 1.0.30", @@ -7962,7 +8105,7 @@ dependencies = [ "reth-scroll-evm", "reth-scroll-forks", "reth-scroll-primitives", - "revm 27.1.0", + "revm 29.0.0", "revm-scroll", "rkyv", "sbv-helpers", @@ -7977,7 +8120,7 @@ dependencies = [ [[package]] name = "sbv-trie" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#6915deed7fbe79d2573e48c07458b9009fd3dc1a" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#ac1d52a43b8c02551c9f076b882183c144cd1dd4" dependencies = [ "alloy-rlp", "alloy-trie", @@ -7993,7 +8136,7 @@ dependencies = [ [[package]] name = "sbv-utils" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#6915deed7fbe79d2573e48c07458b9009fd3dc1a" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#ac1d52a43b8c02551c9f076b882183c144cd1dd4" dependencies = [ "alloy-provider", "alloy-rpc-client", @@ -8071,8 +8214,8 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] name = "scroll-alloy-consensus" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-consensus", "alloy-eips 1.0.30", @@ -8087,8 +8230,8 @@ dependencies = [ [[package]] name = "scroll-alloy-evm" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-consensus", "alloy-eips 1.0.30", @@ -8096,7 +8239,7 @@ dependencies = [ "alloy-primitives", "auto_impl", "encoder-standard", - "revm 27.1.0", + "revm 29.0.0", "revm-scroll", "scroll-alloy-consensus", "scroll-alloy-hardforks", @@ -8105,8 +8248,8 @@ dependencies = [ [[package]] name = "scroll-alloy-hardforks" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-hardforks", "auto_impl", @@ -8115,8 +8258,8 @@ dependencies = [ [[package]] name = "scroll-alloy-network" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-consensus", "alloy-network", @@ -8130,8 +8273,8 @@ dependencies = [ [[package]] name = "scroll-alloy-rpc-types" -version = "1.6.0" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#af87226a789fb381bf219e1e93a02290892c11ae" +version = "1.7.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#d590bf058e75d7e327da7098f05fbaa12d2098bb" dependencies = [ "alloy-consensus", "alloy-eips 1.0.30", @@ -8178,7 +8321,7 @@ dependencies = [ [[package]] name = "scroll-zkvm-prover" version = "0.6.0" -source = "git+https://github.com/scroll-tech/zkvm-prover?rev=060be4c#060be4c0461b0a197c5be47fc74415165a0abe25" +source = "git+https://github.com/scroll-tech/zkvm-prover?rev=2c7fd3c#2c7fd3c1dfe861458f6b770b2a35dceaccd31265" dependencies = [ "base64 0.22.1", "bincode 1.3.3", @@ -8205,7 +8348,7 @@ dependencies = [ [[package]] name = "scroll-zkvm-types" version = "0.6.0" -source = "git+https://github.com/scroll-tech/zkvm-prover?rev=060be4c#060be4c0461b0a197c5be47fc74415165a0abe25" +source = "git+https://github.com/scroll-tech/zkvm-prover?rev=2c7fd3c#2c7fd3c1dfe861458f6b770b2a35dceaccd31265" dependencies = [ "alloy-primitives", "base64 0.22.1", @@ -8225,7 +8368,7 @@ dependencies = [ [[package]] name = "scroll-zkvm-types-base" version = "0.6.0" -source = "git+https://github.com/scroll-tech/zkvm-prover?rev=060be4c#060be4c0461b0a197c5be47fc74415165a0abe25" +source = "git+https://github.com/scroll-tech/zkvm-prover?rev=2c7fd3c#2c7fd3c1dfe861458f6b770b2a35dceaccd31265" dependencies = [ "alloy-primitives", "alloy-serde 1.0.30", @@ -8238,7 +8381,7 @@ dependencies = [ [[package]] name = "scroll-zkvm-types-batch" version = "0.6.0" -source = "git+https://github.com/scroll-tech/zkvm-prover?rev=060be4c#060be4c0461b0a197c5be47fc74415165a0abe25" +source = "git+https://github.com/scroll-tech/zkvm-prover?rev=2c7fd3c#2c7fd3c1dfe861458f6b770b2a35dceaccd31265" dependencies = [ "alloy-primitives", "c-kzg", @@ -8260,7 +8403,7 @@ dependencies = [ [[package]] name = "scroll-zkvm-types-bundle" version = "0.6.0" -source = "git+https://github.com/scroll-tech/zkvm-prover?rev=060be4c#060be4c0461b0a197c5be47fc74415165a0abe25" +source = "git+https://github.com/scroll-tech/zkvm-prover?rev=2c7fd3c#2c7fd3c1dfe861458f6b770b2a35dceaccd31265" dependencies = [ "rkyv", "scroll-zkvm-types-base", @@ -8270,9 +8413,15 @@ dependencies = [ [[package]] name = "scroll-zkvm-types-chunk" version = "0.6.0" -source = "git+https://github.com/scroll-tech/zkvm-prover?rev=060be4c#060be4c0461b0a197c5be47fc74415165a0abe25" +source = "git+https://github.com/scroll-tech/zkvm-prover?rev=2c7fd3c#2c7fd3c1dfe861458f6b770b2a35dceaccd31265" dependencies = [ + "alloy-consensus", "alloy-primitives", + "k256 0.13.4 (git+https://github.com/openvm-org/openvm.git?tag=v1.4.0)", + "openvm-ecc-guest", + "openvm-pairing", + "openvm-sha2", + "p256 0.13.2 (git+https://github.com/openvm-org/openvm.git?tag=v1.4.0)", "rkyv", "sbv-core", "sbv-helpers", @@ -8285,7 +8434,7 @@ dependencies = [ [[package]] name = "scroll-zkvm-verifier" version = "0.6.0" -source = "git+https://github.com/scroll-tech/zkvm-prover?rev=060be4c#060be4c0461b0a197c5be47fc74415165a0abe25" +source = "git+https://github.com/scroll-tech/zkvm-prover?rev=2c7fd3c#2c7fd3c1dfe861458f6b770b2a35dceaccd31265" dependencies = [ "bincode 1.3.3", "eyre", @@ -8806,7 +8955,7 @@ dependencies = [ "cfg-if", "libc", "psm", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -9036,7 +9185,7 @@ dependencies = [ "getrandom 0.3.3", "once_cell", "rustix", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index ea2c276a03..d3d08f4e3d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -17,9 +17,10 @@ repository = "https://github.com/scroll-tech/scroll" version = "4.5.47" [workspace.dependencies] -scroll-zkvm-prover = { git = "https://github.com/scroll-tech/zkvm-prover", rev = "060be4c" } -scroll-zkvm-verifier = { git = "https://github.com/scroll-tech/zkvm-prover", rev = "060be4c" } -scroll-zkvm-types = { git = "https://github.com/scroll-tech/zkvm-prover", rev = "060be4c" } +# include compatiblity fixing from "fix/coordinator" +scroll-zkvm-prover = { git = "https://github.com/scroll-tech/zkvm-prover", rev = "2c7fd3c" } +scroll-zkvm-verifier = { git = "https://github.com/scroll-tech/zkvm-prover", rev = "2c7fd3c" } +scroll-zkvm-types = { git = "https://github.com/scroll-tech/zkvm-prover", rev = "2c7fd3c" } sbv-primitives = { git = "https://github.com/scroll-tech/stateless-block-verifier", branch = "master", features = ["scroll", "rkyv"] } sbv-utils = { git = "https://github.com/scroll-tech/stateless-block-verifier", branch = "master" } diff --git a/common/version/version.go b/common/version/version.go index 592f969612..daa35ec6de 100644 --- a/common/version/version.go +++ b/common/version/version.go @@ -5,7 +5,7 @@ import ( "runtime/debug" ) -var tag = "v4.5.47" +var tag = "v4.6.1" var commit = func() string { if info, ok := debug.ReadBuildInfo(); ok { diff --git a/coordinator/Makefile b/coordinator/Makefile index dce6556840..b0c419445f 100644 --- a/coordinator/Makefile +++ b/coordinator/Makefile @@ -35,8 +35,9 @@ coordinator_tool: go build -ldflags "-X scroll-tech/common/version.ZkVersion=${ZK_VERSION}" -o $(PWD)/build/bin/coordinator_tool ./cmd/tool localsetup: coordinator_api ## Local setup: build coordinator_api, copy config, and setup releases + mkdir -p build/bin/conf @echo "Copying configuration files..." - cp -r $(PWD)/conf $(PWD)/build/bin/ + cp -r $(PWD)/conf/config.json $(PWD)/build/bin/conf/config.template.json @echo "Setting up releases..." cd $(PWD)/build && bash setup_releases.sh diff --git a/coordinator/build/setup_releases.sh b/coordinator/build/setup_releases.sh index 256bdfa3cd..b170ec38e8 100644 --- a/coordinator/build/setup_releases.sh +++ b/coordinator/build/setup_releases.sh @@ -7,7 +7,7 @@ if [ -z "${SCROLL_ZKVM_VERSION}" ]; then fi # set ASSET_DIR by reading from config.json -CONFIG_FILE="bin/conf/config.json" +CONFIG_FILE="bin/conf/config.template.json" if [ ! -f "$CONFIG_FILE" ]; then echo "Config file $CONFIG_FILE not found" exit 1 @@ -53,6 +53,7 @@ for ((i=0; i<$VERIFIER_COUNT; i++)); do # assets for verifier-only mode echo "Downloading assets for $FORK_NAME to $ASSET_DIR..." wget https://circuit-release.s3.us-west-2.amazonaws.com/scroll-zkvm/releases/$SCROLL_ZKVM_VERSION/verifier/verifier.bin -O ${ASSET_DIR}/verifier.bin + wget https://circuit-release.s3.us-west-2.amazonaws.com/scroll-zkvm/releases/$SCROLL_ZKVM_VERSION/verifier/root_verifier_vk -O ${ASSET_DIR}/root_verifier_vk wget https://circuit-release.s3.us-west-2.amazonaws.com/scroll-zkvm/releases/$SCROLL_ZKVM_VERSION/verifier/openVmVk.json -O ${ASSET_DIR}/openVmVk.json echo "Completed downloading assets for $FORK_NAME" diff --git a/coordinator/conf/config.json b/coordinator/conf/config.json index 02acb2fa74..f1d5869093 100644 --- a/coordinator/conf/config.json +++ b/coordinator/conf/config.json @@ -22,7 +22,7 @@ }, "db": { "driver_name": "postgres", - "dsn": "postgres://localhost/scroll?sslmode=disable", + "dsn": "postgres://dev:dev@localhost/scroll?sslmode=disable", "maxOpenNum": 200, "maxIdleNum": 20 }, diff --git a/coordinator/internal/logic/libzkp/lib.go b/coordinator/internal/logic/libzkp/lib.go index 63bbd82a27..c052d43477 100644 --- a/coordinator/internal/logic/libzkp/lib.go +++ b/coordinator/internal/logic/libzkp/lib.go @@ -147,3 +147,20 @@ func SetDynamicFeature(feats string) { defer freeCString(cFeats) C.set_dynamic_feature(cFeats) } + +// UnivTaskCompatibilityFix calls the universal task compatibility fix function +func UnivTaskCompatibilityFix(taskJSON string) (string, error) { + cTaskJSON := goToCString(taskJSON) + defer freeCString(cTaskJSON) + + resultPtr := C.univ_task_compatibility_fix(cTaskJSON) + if resultPtr == nil { + return "", fmt.Errorf("univ_task_compatibility_fix failed") + } + + // Convert result to Go string and free C memory + result := C.GoString(resultPtr) + C.release_string(resultPtr) + + return result, nil +} diff --git a/coordinator/internal/logic/libzkp/libzkp.h b/coordinator/internal/logic/libzkp/libzkp.h index 8e2f33d4f5..7cf2030118 100644 --- a/coordinator/internal/logic/libzkp/libzkp.h +++ b/coordinator/internal/logic/libzkp/libzkp.h @@ -56,5 +56,7 @@ void release_string(char* string_ptr); void set_dynamic_feature(const char* feats); +// Universal task compatibility fix function +char* univ_task_compatibility_fix(char* task_json); #endif /* LIBZKP_H */ diff --git a/coordinator/internal/logic/provertask/batch_prover_task.go b/coordinator/internal/logic/provertask/batch_prover_task.go index 82c4f3545c..ff1bc25920 100644 --- a/coordinator/internal/logic/provertask/batch_prover_task.go +++ b/coordinator/internal/logic/provertask/batch_prover_task.go @@ -213,6 +213,14 @@ func (bp *BatchProverTask) Assign(ctx *gin.Context, getTaskParameter *coordinato return nil, ErrCoordinatorInternalFailure } proverTask.Metadata = metadata + + if isCompatibilityFixingVersion(taskCtx.ProverVersion) { + log.Info("Apply compatibility fixing for prover", "version", taskCtx.ProverVersion) + if err := fixCompatibility(taskMsg); err != nil { + log.Error("apply compatibility failure", "err", err) + return nil, ErrCoordinatorInternalFailure + } + } } // Store session info. diff --git a/coordinator/internal/logic/provertask/bundle_prover_task.go b/coordinator/internal/logic/provertask/bundle_prover_task.go index 5e9dfe4056..1d8377f554 100644 --- a/coordinator/internal/logic/provertask/bundle_prover_task.go +++ b/coordinator/internal/logic/provertask/bundle_prover_task.go @@ -211,6 +211,14 @@ func (bp *BundleProverTask) Assign(ctx *gin.Context, getTaskParameter *coordinat // bundle proof require snark taskMsg.UseSnark = true proverTask.Metadata = metadata + + if isCompatibilityFixingVersion(taskCtx.ProverVersion) { + log.Info("Apply compatibility fixing for prover", "version", taskCtx.ProverVersion) + if err := fixCompatibility(taskMsg); err != nil { + log.Error("apply compatibility failure", "err", err) + return nil, ErrCoordinatorInternalFailure + } + } } // Store session info. diff --git a/coordinator/internal/logic/provertask/prover_task.go b/coordinator/internal/logic/provertask/prover_task.go index d1f2bd51d5..a045815683 100644 --- a/coordinator/internal/logic/provertask/prover_task.go +++ b/coordinator/internal/logic/provertask/prover_task.go @@ -14,6 +14,7 @@ import ( "gorm.io/gorm" "scroll-tech/common/types/message" + "scroll-tech/common/version" "scroll-tech/coordinator/internal/config" "scroll-tech/coordinator/internal/logic/libzkp" @@ -201,6 +202,23 @@ func (b *BaseProverTask) applyUniversal(schema *coordinatorType.GetTaskSchema) ( return schema, []byte(metadata), nil } +const CompatibilityVersion = "4.5.43" + +func isCompatibilityFixingVersion(ver string) bool { + return !version.CheckScrollRepoVersion(ver, CompatibilityVersion) +} + +func fixCompatibility(schema *coordinatorType.GetTaskSchema) error { + + fixedTask, err := libzkp.UnivTaskCompatibilityFix(schema.TaskData) + if err != nil { + return err + } + schema.TaskData = fixedTask + + return nil +} + func newGetTaskCounterVec(factory promauto.Factory, taskType string) *prometheus.CounterVec { getTaskCounterInitOnce.Do(func() { getTaskCounterVec = factory.NewCounterVec(prometheus.CounterOpts{ diff --git a/coordinator/test/api_test.go b/coordinator/test/api_test.go index 053f6b715e..5d119e49c0 100644 --- a/coordinator/test/api_test.go +++ b/coordinator/test/api_test.go @@ -132,7 +132,7 @@ func setupCoordinator(t *testing.T, proversPerSession uint8, coordinatorURL stri func setEnv(t *testing.T) { var err error - version.Version = "v4.4.89" + version.Version = "v4.5.45" glogger := log.NewGlogHandler(log.StreamHandler(os.Stderr, log.LogfmtFormat())) glogger.Verbosity(log.LvlInfo) diff --git a/crates/libzkp/src/lib.rs b/crates/libzkp/src/lib.rs index 45c771a9af..fdd6d328e1 100644 --- a/crates/libzkp/src/lib.rs +++ b/crates/libzkp/src/lib.rs @@ -46,6 +46,47 @@ pub fn checkout_chunk_task( Ok(ret) } +/// Convert the universal task json into compatible form for old prover +pub fn univ_task_compatibility_fix(task_json: &str) -> eyre::Result { + use scroll_zkvm_types::proof::VmInternalStarkProof; + + let u_task: tasks::ProvingTask = serde_json::from_str(task_json)?; + let aggregated_proofs: Vec = u_task + .aggregated_proofs + .into_iter() + .map(|proof| VmInternalStarkProof { + proofs: proof.proofs, + public_values: proof.public_values, + }) + .collect(); + + #[derive(Serialize)] + struct CompatibleProvingTask { + /// seralized witness which should be written into stdin first + pub serialized_witness: Vec>, + /// aggregated proof carried by babybear fields, should be written into stdin + /// followed `serialized_witness` + pub aggregated_proofs: Vec, + /// Fork name specify + pub fork_name: String, + /// The vk of app which is expcted to prove this task + pub vk: Vec, + /// An identifier assigned by coordinator, it should be kept identify for the + /// same task (for example, using chunk, batch and bundle hashes) + pub identifier: String, + } + + let compatible_u_task = CompatibleProvingTask { + serialized_witness: u_task.serialized_witness, + aggregated_proofs, + fork_name: u_task.fork_name, + vk: u_task.vk, + identifier: u_task.identifier, + }; + + Ok(serde_json::to_string(&compatible_u_task)?) +} + /// Generate required staff for proving tasks /// return (pi_hash, metadata, task) pub fn gen_universal_task( diff --git a/crates/libzkp_c/src/lib.rs b/crates/libzkp_c/src/lib.rs index 4595a11ddf..99b5906cef 100644 --- a/crates/libzkp_c/src/lib.rs +++ b/crates/libzkp_c/src/lib.rs @@ -238,6 +238,19 @@ pub unsafe extern "C" fn gen_wrapped_proof( } } +/// # Safety +#[no_mangle] +pub unsafe extern "C" fn univ_task_compatibility_fix(task_json: *const c_char) -> *mut c_char { + let task_json_str = c_char_to_str(task_json); + match libzkp::univ_task_compatibility_fix(task_json_str) { + Ok(result) => CString::new(result).unwrap().into_raw(), + Err(e) => { + tracing::error!("univ_task_compability_fix failed, error: {:#}", e); + std::ptr::null_mut() + } + } +} + /// # Safety #[no_mangle] pub unsafe extern "C" fn release_string(ptr: *mut c_char) { diff --git a/tests/prover-e2e/Makefile b/tests/prover-e2e/Makefile index b5ffe4cdf3..f6a05a9013 100644 --- a/tests/prover-e2e/Makefile +++ b/tests/prover-e2e/Makefile @@ -1,7 +1,8 @@ .PHONY: clean setup_db test_tool all check_vars GOOSE_CMD?=goose - +BEGIN_BLOCK?=10973711 +END_BLOCK?=10973721 all: setup_db test_tool import_data diff --git a/tests/prover-e2e/prepare/dump_block_records.sql b/tests/prover-e2e/prepare/dump_block_records.sql index 40477e762a..91649904d9 100644 --- a/tests/prover-e2e/prepare/dump_block_records.sql +++ b/tests/prover-e2e/prepare/dump_block_records.sql @@ -1,7 +1,12 @@ -- Create a file with INSERT statements for the specific records -\o block_export.sql +\o 00100_import_blocks.sql \t on \a +-- Write header comment +SELECT '-- +goose Up'; +SELECT '-- +goose StatementBegin'; +SELECT ''; + SELECT 'INSERT INTO l2_block (number, hash, parent_hash, header, withdraw_root, state_root, tx_num, gas_used, block_timestamp, row_consumption, chunk_hash, transactions @@ -22,6 +27,15 @@ SELECT 'INSERT INTO l2_block (number, hash, parent_hash, header, withdraw_root, FROM l2_block WHERE number >= 10973700 and number <= 10973730 ORDER BY number ASC; + +-- Write footer +SELECT ''; +SELECT '-- +goose StatementEnd'; +SELECT '-- +goose Down'; +SELECT '-- +goose StatementBegin'; +SELECT 'DELETE FROM l2_block;'; +SELECT '-- +goose StatementEnd'; + \t off \a \o \ No newline at end of file