diff --git a/Cargo.lock b/Cargo.lock index 73f8765d..730f75b9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -253,9 +253,9 @@ dependencies = [ [[package]] name = "alloy-evm" -version = "0.4.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee1ae7de7526aed0484be50c4cc4c01122b94d0f70fd34fcca79e2caa987e434" +checksum = "caabd28657614cecc14d77fde0a630c5c177bfe432ce4ad99db0ad41d9219856" dependencies = [ "alloy-consensus", "alloy-eips", @@ -385,7 +385,7 @@ dependencies = [ "paste", "proptest", "proptest-derive", - "rand 0.9.0", + "rand 0.9.1", "ruint", "rustc-hash 2.1.1", "serde", @@ -1693,9 +1693,9 @@ dependencies = [ [[package]] name = "blake3" -version = "1.8.1" +version = "1.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "389a099b34312839e16420d499a9cad9650541715937ffbdd40d36f49e77eeb3" +checksum = "3888aaa89e4b2a40fca9848e400f6a658a5a3978de7be858e209cafa8be9a4a0" dependencies = [ "arrayref", "arrayvec", @@ -1801,9 +1801,9 @@ dependencies = [ [[package]] name = "brotli-decompressor" -version = "4.0.2" +version = "4.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74fa05ad7d803d413eb8380983b092cbbaf9a85f151b871360e7b00cd7060b37" +checksum = "a334ef7c9e23abf0ce748e8cd309037da93e606ad52eb372e4ce327a0dcfbdfd" dependencies = [ "alloc-no-stdlib", "alloc-stdlib", @@ -2032,9 +2032,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.36" +version = "4.5.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2df961d8c8a0d08aa9945718ccf584145eee3f3aa06cddbeac12933781102e04" +checksum = "eccb054f56cbd38340b380d4a8e69ef1f02f1af43db2f0cc817a4774d80ae071" dependencies = [ "clap_builder", "clap_derive", @@ -2042,9 +2042,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.36" +version = "4.5.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "132dbda40fb6753878316a489d5a1242a8ef2f0d9e47ba01c951ea8aa7d013a5" +checksum = "efd9466fac8543255d3b1fcad4762c5e116ffe808c8a3043d4263cd4fd4862a2" dependencies = [ "anstream", "anstyle", @@ -2579,9 +2579,9 @@ dependencies = [ [[package]] name = "der" -version = "0.7.9" +version = "0.7.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0" +checksum = "e7c1832837b905bbfb5101e07cc24c8deddf52f93225eee6ead5f4d63d53ddcb" dependencies = [ "const-oid", "pem-rfc7468", @@ -2611,9 +2611,9 @@ dependencies = [ [[package]] name = "derive-where" -version = "1.2.7" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62d671cc41a825ebabc75757b62d3d168c577f9149b2d49ece1dad1f72119d25" +checksum = "2364b9aa47e460ce9bca6ac1777d14c98eef7e274eb077beed49f3adc94183ed" dependencies = [ "proc-macro2", "quote", @@ -3682,7 +3682,7 @@ dependencies = [ "idna", "ipnet", "once_cell", - "rand 0.9.0", + "rand 0.9.1", "ring", "serde", "thiserror 2.0.12", @@ -3705,7 +3705,7 @@ dependencies = [ "moka", "once_cell", "parking_lot", - "rand 0.9.0", + "rand 0.9.1", "resolv-conf", "serde", "smallvec", @@ -4643,9 +4643,9 @@ dependencies = [ [[package]] name = "libm" -version = "0.2.11" +version = "0.2.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa" +checksum = "e6d154aedcb0b7a1e91a3fddbe2a8350d3da76ac9d0220ae20da5c7aa8269612" [[package]] name = "libp2p-identity" @@ -4906,9 +4906,9 @@ dependencies = [ [[package]] name = "metrics" -version = "0.24.1" +version = "0.24.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a7deb012b3b2767169ff203fadb4c6b0b82b947512e5eb9e0b78c2e186ad9e3" +checksum = "25dea7ac8057892855ec285c440160265225438c3c45072613c25a4b26e98ef5" dependencies = [ "ahash 0.8.11", "portable-atomic", @@ -4958,16 +4958,16 @@ dependencies = [ [[package]] name = "metrics-util" -version = "0.19.0" +version = "0.19.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbd4884b1dd24f7d6628274a2f5ae22465c337c5ba065ec9b6edccddf8acc673" +checksum = "b8496cc523d1f94c1385dd8f0f0c2c480b2b8aeccb5b7e4485ad6365523ae376" dependencies = [ "crossbeam-epoch", "crossbeam-utils", "hashbrown 0.15.2", "metrics", "quanta", - "rand 0.8.5", + "rand 0.9.1", "rand_xoshiro", "sketches-ddsketch", ] @@ -5358,9 +5358,9 @@ dependencies = [ [[package]] name = "op-alloy-consensus" -version = "0.13.0" +version = "0.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a09198717ebb22b201442c12a306a62de4a5d9535993b975c6bc0e5a919e2b1" +checksum = "f6f400404e37862bb974fbc3ad2d8ca2a2df286b718e762446496d04267ee912" dependencies = [ "alloy-consensus", "alloy-eips", @@ -5376,13 +5376,14 @@ dependencies = [ [[package]] name = "op-alloy-rpc-types-engine" -version = "0.13.0" +version = "0.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8ec35c34f8b74f329b0a43ab462c65943cf894406126b613e65e0e4313eaadb" +checksum = "e614936d3f113b8e3dd2724382bd8db6700bd48fcd1f4d62bef537f3be8f710e" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", + "alloy-rlp", "alloy-rpc-types-engine", "alloy-serde", "derive_more", @@ -6060,7 +6061,7 @@ checksum = "b820744eb4dc9b57a3398183639c511b5a26d2ed702cedd3febaa1393caa22cc" dependencies = [ "bytes", "getrandom 0.3.2", - "rand 0.9.0", + "rand 0.9.1", "ring", "rustc-hash 2.1.1", "rustls", @@ -6121,14 +6122,13 @@ dependencies = [ [[package]] name = "rand" -version = "0.9.0" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3779b94aeb87e8bd4e834cee3650289ee9e0d5677f976ecdb6d219e5f4f6cd94" +checksum = "9fbfd9d094a40bf3ae768db9361049ace4c0e04a4fd6b359518bd7b73a73dd97" dependencies = [ "rand_chacha 0.9.0", "rand_core 0.9.3", "serde", - "zerocopy 0.8.24", ] [[package]] @@ -6181,11 +6181,11 @@ dependencies = [ [[package]] name = "rand_xoshiro" -version = "0.6.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f97cdb2a36ed4183de61b2f824cc45c9f1037f28afe0a322e9fff4c108b5aaa" +checksum = "f703f4665700daf5512dcca5f43afa6af89f09db47fb56be587f80636bda2d41" dependencies = [ - "rand_core 0.6.4", + "rand_core 0.9.3", ] [[package]] @@ -6390,8 +6390,8 @@ dependencies = [ [[package]] name = "reth-basic-payload-builder" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -6414,8 +6414,8 @@ dependencies = [ [[package]] name = "reth-chain-state" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -6426,7 +6426,7 @@ dependencies = [ "metrics", "parking_lot", "pin-project", - "rand 0.9.0", + "rand 0.9.1", "reth-chainspec", "reth-errors", "reth-ethereum-primitives", @@ -6444,8 +6444,8 @@ dependencies = [ [[package]] name = "reth-chainspec" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-chains", "alloy-consensus", @@ -6464,8 +6464,8 @@ dependencies = [ [[package]] name = "reth-cli" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-genesis", "clap", @@ -6478,8 +6478,8 @@ dependencies = [ [[package]] name = "reth-cli-commands" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "ahash 0.8.11", "alloy-consensus", @@ -6506,12 +6506,15 @@ dependencies = [ "reth-db", "reth-db-api", "reth-db-common", + "reth-discv4", + "reth-discv5", "reth-downloaders", "reth-ecies", "reth-eth-wire", "reth-evm", "reth-exex", "reth-fs-util", + "reth-net-nat", "reth-network", "reth-network-p2p", "reth-network-peers", @@ -6532,14 +6535,15 @@ dependencies = [ "serde", "serde_json", "tokio", + "tokio-stream", "toml", "tracing", ] [[package]] name = "reth-cli-runner" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "reth-tasks", "tokio", @@ -6548,8 +6552,8 @@ dependencies = [ [[package]] name = "reth-cli-util" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-eips", "alloy-primitives", @@ -6565,8 +6569,8 @@ dependencies = [ [[package]] name = "reth-codecs" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -6585,8 +6589,8 @@ dependencies = [ [[package]] name = "reth-codecs-derive" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "convert_case", "proc-macro2", @@ -6596,8 +6600,8 @@ dependencies = [ [[package]] name = "reth-config" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "eyre", "humantime-serde", @@ -6610,8 +6614,8 @@ dependencies = [ [[package]] name = "reth-consensus" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -6623,8 +6627,8 @@ dependencies = [ [[package]] name = "reth-consensus-common" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -6635,11 +6639,12 @@ dependencies = [ [[package]] name = "reth-consensus-debug-client" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-json-rpc", "alloy-primitives", "alloy-provider", "alloy-rpc-types-engine", @@ -6658,8 +6663,8 @@ dependencies = [ [[package]] name = "reth-db" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-primitives", "derive_more", @@ -6684,8 +6689,8 @@ dependencies = [ [[package]] name = "reth-db-api" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-genesis", @@ -6713,8 +6718,8 @@ dependencies = [ [[package]] name = "reth-db-common" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-genesis", @@ -6742,8 +6747,8 @@ dependencies = [ [[package]] name = "reth-db-models" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-eips", "alloy-primitives", @@ -6757,8 +6762,8 @@ dependencies = [ [[package]] name = "reth-discv4" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -6783,8 +6788,8 @@ dependencies = [ [[package]] name = "reth-discv5" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -6794,7 +6799,7 @@ dependencies = [ "futures", "itertools 0.14.0", "metrics", - "rand 0.9.0", + "rand 0.9.1", "reth-chainspec", "reth-ethereum-forks", "reth-metrics", @@ -6807,8 +6812,8 @@ dependencies = [ [[package]] name = "reth-dns-discovery" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-primitives", "data-encoding", @@ -6831,8 +6836,8 @@ dependencies = [ [[package]] name = "reth-downloaders" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -6866,8 +6871,8 @@ dependencies = [ [[package]] name = "reth-e2e-test-utils" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -6913,8 +6918,8 @@ dependencies = [ [[package]] name = "reth-ecies" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "aes", "alloy-primitives", @@ -6944,8 +6949,8 @@ dependencies = [ [[package]] name = "reth-engine-local" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -6974,8 +6979,8 @@ dependencies = [ [[package]] name = "reth-engine-primitives" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -6998,8 +7003,8 @@ dependencies = [ [[package]] name = "reth-engine-service" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "futures", "pin-project", @@ -7021,8 +7026,8 @@ dependencies = [ [[package]] name = "reth-engine-tree" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7072,8 +7077,8 @@ dependencies = [ [[package]] name = "reth-engine-util" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-rpc-types-engine", @@ -7099,20 +7104,19 @@ dependencies = [ [[package]] name = "reth-errors" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "reth-consensus", "reth-execution-errors", - "reth-fs-util", "reth-storage-errors", "thiserror 2.0.12", ] [[package]] name = "reth-eth-wire" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-chains", "alloy-primitives", @@ -7139,8 +7143,8 @@ dependencies = [ [[package]] name = "reth-eth-wire-types" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-chains", "alloy-consensus", @@ -7160,8 +7164,8 @@ dependencies = [ [[package]] name = "reth-ethereum-consensus" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7176,8 +7180,8 @@ dependencies = [ [[package]] name = "reth-ethereum-engine-primitives" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-eips", "alloy-primitives", @@ -7193,8 +7197,8 @@ dependencies = [ [[package]] name = "reth-ethereum-forks" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-eip2124", "alloy-hardforks", @@ -7207,8 +7211,8 @@ dependencies = [ [[package]] name = "reth-ethereum-payload-builder" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7234,8 +7238,8 @@ dependencies = [ [[package]] name = "reth-ethereum-primitives" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7258,8 +7262,8 @@ dependencies = [ [[package]] name = "reth-etl" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "rayon", "reth-db-api", @@ -7268,8 +7272,8 @@ dependencies = [ [[package]] name = "reth-evm" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7295,8 +7299,8 @@ dependencies = [ [[package]] name = "reth-evm-ethereum" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7313,8 +7317,8 @@ dependencies = [ [[package]] name = "reth-execution-errors" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-evm", "alloy-primitives", @@ -7326,8 +7330,8 @@ dependencies = [ [[package]] name = "reth-execution-types" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7344,8 +7348,8 @@ dependencies = [ [[package]] name = "reth-exex" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7382,8 +7386,8 @@ dependencies = [ [[package]] name = "reth-exex-types" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-eips", "alloy-primitives", @@ -7396,8 +7400,8 @@ dependencies = [ [[package]] name = "reth-fs-util" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "serde", "serde_json", @@ -7406,8 +7410,8 @@ dependencies = [ [[package]] name = "reth-invalid-block-hooks" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -7432,8 +7436,8 @@ dependencies = [ [[package]] name = "reth-ipc" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "async-trait", "bytes", @@ -7453,8 +7457,8 @@ dependencies = [ [[package]] name = "reth-libmdbx" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "bitflags 2.9.0", "byteorder", @@ -7470,8 +7474,8 @@ dependencies = [ [[package]] name = "reth-mdbx-sys" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "bindgen", "cc", @@ -7479,8 +7483,8 @@ dependencies = [ [[package]] name = "reth-metrics" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "futures", "metrics", @@ -7491,16 +7495,16 @@ dependencies = [ [[package]] name = "reth-net-banlist" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-primitives", ] [[package]] name = "reth-net-nat" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "futures-util", "if-addrs", @@ -7513,8 +7517,8 @@ dependencies = [ [[package]] name = "reth-network" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7531,7 +7535,7 @@ dependencies = [ "parking_lot", "pin-project", "rand 0.8.5", - "rand 0.9.0", + "rand 0.9.1", "reth-chainspec", "reth-consensus", "reth-discv4", @@ -7568,8 +7572,8 @@ dependencies = [ [[package]] name = "reth-network-api" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-primitives", "alloy-rpc-types-admin", @@ -7591,8 +7595,8 @@ dependencies = [ [[package]] name = "reth-network-p2p" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7614,8 +7618,8 @@ dependencies = [ [[package]] name = "reth-network-peers" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -7629,8 +7633,8 @@ dependencies = [ [[package]] name = "reth-network-types" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-eip2124", "humantime-serde", @@ -7643,8 +7647,8 @@ dependencies = [ [[package]] name = "reth-nippy-jar" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "anyhow", "bincode", @@ -7660,8 +7664,8 @@ dependencies = [ [[package]] name = "reth-node-api" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-rpc-types-engine", "eyre", @@ -7684,8 +7688,8 @@ dependencies = [ [[package]] name = "reth-node-builder" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7747,8 +7751,8 @@ dependencies = [ [[package]] name = "reth-node-core" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7760,7 +7764,7 @@ dependencies = [ "eyre", "futures", "humantime", - "rand 0.9.0", + "rand 0.9.1", "reth-chainspec", "reth-cli-util", "reth-config", @@ -7797,8 +7801,8 @@ dependencies = [ [[package]] name = "reth-node-ethereum" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-eips", "alloy-rpc-types-engine", @@ -7833,8 +7837,8 @@ dependencies = [ [[package]] name = "reth-node-events" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -7857,8 +7861,8 @@ dependencies = [ [[package]] name = "reth-node-metrics" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "eyre", "http", @@ -7877,8 +7881,8 @@ dependencies = [ [[package]] name = "reth-node-types" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "reth-chainspec", "reth-db-api", @@ -7890,35 +7894,27 @@ dependencies = [ [[package]] name = "reth-optimism-primitives" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-evm", "alloy-primitives", "alloy-rlp", - "alloy-rpc-types-eth", - "alloy-serde", "arbitrary", "bytes", - "derive_more", "op-alloy-consensus", - "op-revm", - "rand 0.8.5", "reth-codecs", "reth-primitives-traits", "reth-zstd-compressors", - "revm-context", - "secp256k1 0.30.0", "serde", "serde_with", ] [[package]] name = "reth-payload-builder" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -7938,8 +7934,8 @@ dependencies = [ [[package]] name = "reth-payload-builder-primitives" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "pin-project", "reth-payload-primitives", @@ -7950,8 +7946,8 @@ dependencies = [ [[package]] name = "reth-payload-primitives" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-eips", "alloy-primitives", @@ -7970,8 +7966,8 @@ dependencies = [ [[package]] name = "reth-payload-util" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -7980,8 +7976,8 @@ dependencies = [ [[package]] name = "reth-payload-validator" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-rpc-types-engine", @@ -7990,8 +7986,8 @@ dependencies = [ [[package]] name = "reth-primitives" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "arbitrary", @@ -8005,8 +8001,8 @@ dependencies = [ [[package]] name = "reth-primitives-traits" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8039,8 +8035,8 @@ dependencies = [ [[package]] name = "reth-provider" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8086,8 +8082,8 @@ dependencies = [ [[package]] name = "reth-prune" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8114,8 +8110,8 @@ dependencies = [ [[package]] name = "reth-prune-types" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-primitives", "arbitrary", @@ -8128,8 +8124,8 @@ dependencies = [ [[package]] name = "reth-revm" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-primitives", "reth-primitives-traits", @@ -8141,8 +8137,8 @@ dependencies = [ [[package]] name = "reth-rpc" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-dyn-abi", @@ -8213,8 +8209,8 @@ dependencies = [ [[package]] name = "reth-rpc-api" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-eips", "alloy-genesis", @@ -8239,8 +8235,8 @@ dependencies = [ [[package]] name = "reth-rpc-builder" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-network", "alloy-provider", @@ -8276,8 +8272,8 @@ dependencies = [ [[package]] name = "reth-rpc-engine-api" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-eips", "alloy-primitives", @@ -8307,8 +8303,8 @@ dependencies = [ [[package]] name = "reth-rpc-eth-api" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-dyn-abi", @@ -8350,8 +8346,8 @@ dependencies = [ [[package]] name = "reth-rpc-eth-types" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8364,7 +8360,7 @@ dependencies = [ "jsonrpsee-core", "jsonrpsee-types", "metrics", - "rand 0.9.0", + "rand 0.9.1", "reth-chain-state", "reth-chainspec", "reth-errors", @@ -8392,8 +8388,8 @@ dependencies = [ [[package]] name = "reth-rpc-layer" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-rpc-types-engine", "http", @@ -8406,8 +8402,8 @@ dependencies = [ [[package]] name = "reth-rpc-server-types" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-eips", "alloy-primitives", @@ -8422,8 +8418,8 @@ dependencies = [ [[package]] name = "reth-rpc-types-compat" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -8435,8 +8431,8 @@ dependencies = [ [[package]] name = "reth-scroll-chainspec" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-chains", "alloy-consensus", @@ -8459,8 +8455,8 @@ dependencies = [ [[package]] name = "reth-scroll-cli" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "clap", "eyre", @@ -8482,8 +8478,8 @@ dependencies = [ [[package]] name = "reth-scroll-consensus" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -8502,8 +8498,8 @@ dependencies = [ [[package]] name = "reth-scroll-engine-primitives" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8527,8 +8523,8 @@ dependencies = [ [[package]] name = "reth-scroll-evm" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8555,8 +8551,8 @@ dependencies = [ [[package]] name = "reth-scroll-forks" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-chains", "alloy-primitives", @@ -8569,8 +8565,8 @@ dependencies = [ [[package]] name = "reth-scroll-node" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8621,8 +8617,8 @@ dependencies = [ [[package]] name = "reth-scroll-payload" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -8653,8 +8649,8 @@ dependencies = [ [[package]] name = "reth-scroll-primitives" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8681,8 +8677,8 @@ dependencies = [ [[package]] name = "reth-scroll-rpc" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -8717,8 +8713,8 @@ dependencies = [ [[package]] name = "reth-scroll-txpool" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8745,8 +8741,8 @@ dependencies = [ [[package]] name = "reth-stages" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8791,8 +8787,8 @@ dependencies = [ [[package]] name = "reth-stages-api" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-eips", "alloy-primitives", @@ -8818,8 +8814,8 @@ dependencies = [ [[package]] name = "reth-stages-types" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-primitives", "arbitrary", @@ -8832,8 +8828,8 @@ dependencies = [ [[package]] name = "reth-static-file" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-primitives", "parking_lot", @@ -8852,8 +8848,8 @@ dependencies = [ [[package]] name = "reth-static-file-types" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-primitives", "clap", @@ -8864,8 +8860,8 @@ dependencies = [ [[package]] name = "reth-storage-api" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8888,8 +8884,8 @@ dependencies = [ [[package]] name = "reth-storage-errors" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-eips", "alloy-primitives", @@ -8904,8 +8900,8 @@ dependencies = [ [[package]] name = "reth-tasks" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "auto_impl", "dyn-clone", @@ -8922,24 +8918,24 @@ dependencies = [ [[package]] name = "reth-testing-utils" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-genesis", "alloy-primitives", "rand 0.8.5", - "rand 0.9.0", - "reth-primitives", + "rand 0.9.1", + "reth-ethereum-primitives", "reth-primitives-traits", "secp256k1 0.30.0", ] [[package]] name = "reth-tokio-util" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "tokio", "tokio-stream", @@ -8948,8 +8944,8 @@ dependencies = [ [[package]] name = "reth-tracing" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "clap", "eyre", @@ -8963,8 +8959,8 @@ dependencies = [ [[package]] name = "reth-transaction-pool" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -8977,7 +8973,7 @@ dependencies = [ "metrics", "parking_lot", "paste", - "rand 0.9.0", + "rand 0.9.1", "reth-chain-state", "reth-chainspec", "reth-eth-wire-types", @@ -9002,8 +8998,8 @@ dependencies = [ [[package]] name = "reth-trie" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -9027,8 +9023,8 @@ dependencies = [ [[package]] name = "reth-trie-common" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -9053,8 +9049,8 @@ dependencies = [ [[package]] name = "reth-trie-db" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-primitives", "reth-db-api", @@ -9066,8 +9062,8 @@ dependencies = [ [[package]] name = "reth-trie-parallel" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -9091,8 +9087,8 @@ dependencies = [ [[package]] name = "reth-trie-sparse" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -9108,8 +9104,8 @@ dependencies = [ [[package]] name = "reth-zstd-compressors" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "zstd", ] @@ -9519,7 +9515,7 @@ dependencies = [ "alloy-primitives", "arbitrary", "futures", - "rand 0.9.0", + "rand 0.9.1", "reth-scroll-chainspec", "reth-scroll-forks", "rollup-node-primitives", @@ -9651,7 +9647,7 @@ dependencies = [ "async-trait", "eyre", "itertools 0.14.0", - "rand 0.9.0", + "rand 0.9.1", "rollup-node-primitives", "scroll-alloy-consensus", "scroll-l1", @@ -9707,7 +9703,7 @@ dependencies = [ "primitive-types", "proptest", "rand 0.8.5", - "rand 0.9.0", + "rand 0.9.1", "rlp", "ruint-macro", "serde", @@ -9958,8 +9954,8 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] name = "scroll-alloy-consensus" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -9976,8 +9972,8 @@ dependencies = [ [[package]] name = "scroll-alloy-evm" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -9993,8 +9989,8 @@ dependencies = [ [[package]] name = "scroll-alloy-hardforks" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-hardforks", "auto_impl", @@ -10003,8 +9999,8 @@ dependencies = [ [[package]] name = "scroll-alloy-network" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-network", @@ -10017,8 +10013,8 @@ dependencies = [ [[package]] name = "scroll-alloy-provider" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -10044,8 +10040,8 @@ dependencies = [ [[package]] name = "scroll-alloy-rpc-types" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-consensus", "alloy-eips", @@ -10061,8 +10057,8 @@ dependencies = [ [[package]] name = "scroll-alloy-rpc-types-engine" -version = "1.3.8" -source = "git+https://github.com/scroll-tech/reth.git#af07823ca60b8ff14e50e5c1ec292d5d24fbfc1d" +version = "1.3.12" +source = "git+https://github.com/scroll-tech/reth.git#ced67f4d5769b5225f7d96777529d36b6a0c1e55" dependencies = [ "alloy-primitives", "alloy-rpc-types-engine", @@ -10097,7 +10093,7 @@ dependencies = [ "async-trait", "auto_impl", "futures", - "rand 0.9.0", + "rand 0.9.1", "rollup-node-primitives", "scroll-alloy-consensus", "scroll-alloy-rpc-types-engine", @@ -10314,9 +10310,9 @@ dependencies = [ [[package]] name = "sea-query" -version = "0.32.3" +version = "0.32.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5a24d8b9fcd2674a6c878a3d871f4f1380c6c43cc3718728ac96864d888458e" +checksum = "d99447c24da0cded00089e2021e1624af90878c65f7534319448d01da3df869d" dependencies = [ "bigdecimal", "chrono", @@ -10706,9 +10702,9 @@ dependencies = [ [[package]] name = "signal-hook-registry" -version = "1.4.2" +version = "1.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1" +checksum = "9203b8055f63a2a00e2f593bb0510367fe707d7ff1e5c872de2f537b339e5410" dependencies = [ "libc", ] @@ -11759,7 +11755,7 @@ dependencies = [ "http", "httparse", "log", - "rand 0.9.0", + "rand 0.9.1", "rustls", "rustls-pki-types", "sha1", diff --git a/README.md b/README.md index 9bff0623..5abe8604 100644 --- a/README.md +++ b/README.md @@ -1 +1,159 @@ -# rollup-node \ No newline at end of file +# Scroll Rollup Node Workspace + +[![test](https://github.com/scroll-tech/rollup-node/actions/workflows/test.yaml/badge.svg)](https://github.com/scroll-tech/rollup-node/actions/workflows/test.yaml) +[![lint](https://github.com/scroll-tech/rollup-node/actions/workflows/lint.yaml/badge.svg)](https://github.com/scroll-tech/rollup-node/actions/workflows/lint.yaml) +![License](https://img.shields.io/badge/license-MIT-blue) +![Rust](https://img.shields.io/badge/rust-2021-orange) + +## Overview + +This repository is a modular Rust workspace for the Scroll rollup node. It is designed for extensibility, maintainability, and ease of contribution. It consists of multiple internal crates (libraries) and a main binary crate, organized for clear separation of concerns and reusability. + +## Directory Structure + +``` +. +├── bin/ +│ └── rollup/ # Main binary crate (the node) +│ ├── src/ +│ └── assets/ +├── crates/ # Internal library crates +│ ├── codec/ +│ ├── database/ +│ │ ├── db/ +│ │ └── migration/ +│ ├── derivation-pipeline/ +│ ├── engine/ +│ ├── indexer/ +│ ├── l1/ +│ ├── network/ +│ ├── node/ +│ ├── primitives/ +│ ├── providers/ +│ ├── scroll-wire/ +│ ├── sequencer/ +│ └── watcher/ +├── Cargo.toml # Workspace manifest +└── ... +``` + +## Crate Descriptions + +- **bin/rollup/**: The main binary crate. This is the entry point for running the rollup node. +- **crates/codec/**: Implements encoding/decoding logic for rollup data and payloads. +- **crates/database/db/**: Database abstraction and storage logic for batches, blocks, and messages. +- **crates/database/migration/**: Database schema migrations using SeaORM. +- **crates/derivation-pipeline/**: Stateless pipeline for transforming batches into block-building payloads. +- **crates/engine/**: Core engine logic for block execution, fork choice, and payload management. +- **crates/indexer/**: Indexes L1 and L2 data for efficient querying and notification. +- **crates/l1/**: Primitives and ABI bindings for L1 contracts and messages. +- **crates/network/**: P2P networking stack for node communication. +- **crates/node/**: Node manager and orchestration logic. +- **crates/primitives/**: Shared primitive types (blocks, batches, attributes, etc.). +- **crates/providers/**: Abstractions for data providers (L1, beacon, block, etc.). +- **crates/scroll-wire/**: Wire protocol definitions for Scroll-specific networking. +- **crates/sequencer/**: Sequencer logic for ordering and batching transactions. +- **crates/watcher/**: Monitors L1 chain state and handles reorgs and notifications. + +## Building the Project + +Ensure you have [Rust](https://www.rust-lang.org/tools/install) installed. + +To build the main binary: + +```sh +cargo build --bin rollup-node +``` + +Or, from the binary crate directory: + +```sh +cd bin/rollup +cargo build +``` + +## Running the Node + +After building, run the node with: + +```sh +cargo run --workspace --bin rollup-node -- [ARGS] +``` + +Replace `[ARGS]` with any runtime arguments you require. + +## Running Tests + +To run all tests across the workspace: + +```sh +make test +``` + +To test a specific crate: + +```sh +cargo test -p +``` + +## Running Lints + +To run all lints across the workspace: + +```sh +make lint +``` + +## Building a Release Binary + +For optimized production builds: + +```sh +cargo build --release --bin rollup-node +``` + +The release binary will be located at `target/release/rollup-node`. + +## Running a Sequencer Node + +To run a sequencer node you should build the binary in release mode using the instructions defined above. + +Then, you can run the sequencer node with the following command: + +```sh +./target/release/rollup-node node --chain dev -d --scroll-sequencer-enabled --http --http.api admin,debug,eth,net,trace,txpool,web3,rpc,reth,ots,flashbots,miner,mev +``` + +This will start a dev node in sequencer mode with all rpc apis enabled. You can adjust the `--http.api` flag to include or exclude specific APIs as needed. + +The chain will be configured with a genesis that funds 20 addresses derived from the mnemonic: +``` +test test test test test test test test test test test junk +``` + + +A list of sequencer specific configuration options can be seen below: + +```sh + --scroll-sequencer-enabled + Enable the scroll block sequencer + --scroll-block-time + The block time for the sequencer [default: 2000] + --payload-building-duration + The payload building duration for the sequencer (milliseconds) [default: 500] + --max-l1-messages-per-block + The max L1 messages per block for the sequencer [default: 4] + --fee-recipient + The fee recipient for the sequencer [default: 0x5300000000000000000000000000000000000005] +``` + +## Contributing + +- Fork and clone the repository. +- Use `make pr` to ensure code quality. +- Submit pull requests with clear descriptions. +- See each crate's README or source for more details on its purpose and usage. + +--- + +For more details, see the documentation in each crate or open an issue if you have questions! \ No newline at end of file diff --git a/bin/rollup/Cargo.toml b/bin/rollup/Cargo.toml index a73b869e..c20076a2 100644 --- a/bin/rollup/Cargo.toml +++ b/bin/rollup/Cargo.toml @@ -81,6 +81,7 @@ serde_json = { version = "1.0.94", default-features = false, features = ["alloc" tokio = { workspace = true, features = ["full"] } [features] +default = ["serde"] test-utils = [ "reth-network/test-utils", "reth-node-builder/test-utils", @@ -118,4 +119,3 @@ serde = [ [[bin]] name = "rollup-node" path = "src/main.rs" -required-features = ["serde"] diff --git a/bin/rollup/src/args.rs b/bin/rollup/src/args.rs index b5d9bb08..591639d7 100644 --- a/bin/rollup/src/args.rs +++ b/bin/rollup/src/args.rs @@ -1,5 +1,6 @@ use crate::constants; use alloy_primitives::Address; +use reth_scroll_chainspec::SCROLL_FEE_VAULT_ADDRESS; use std::path::PathBuf; /// A struct that represents the arguments for the rollup node. @@ -23,7 +24,7 @@ pub struct ScrollRollupNodeArgs { pub l1_provider_args: L1ProviderArgs, /// The sequencer arguments #[command(flatten)] - pub sequencer_args: Option, + pub sequencer_args: SequencerArgs, } #[derive(Debug, clap::Args)] @@ -33,9 +34,9 @@ pub struct L1ProviderArgs { pub l1_rpc_url: Option, /// The URL for the Beacon RPC URL. #[arg(long)] - pub beacon_rpc_url: reqwest::Url, + pub beacon_rpc_url: Option, /// The compute units per second for the provider. - #[arg(long)] + #[arg(long, default_value_t = constants::PROVIDER_COMPUTE_UNITS_PER_SECOND)] pub compute_units_per_second: u64, /// The max amount of retries for the provider. #[arg(long, default_value_t = constants::PROVIDER_MAX_RETRIES)] @@ -45,18 +46,21 @@ pub struct L1ProviderArgs { pub initial_backoff: u64, } -#[derive(Debug, Clone, clap::Args)] +#[derive(Debug, Default, clap::Args)] pub struct SequencerArgs { + /// Enable the scroll block sequencer. + #[arg(long, default_value_t = false)] + pub scroll_sequencer_enabled: bool, /// The block time for the sequencer. - #[arg(long)] - pub block_time: u64, + #[arg(long, default_value_t = constants::DEFAULT_BLOCK_TIME)] + pub scroll_block_time: u64, /// The payload building duration for the sequencer (milliseconds) - #[arg(long)] + #[arg(long, default_value_t = constants::DEFAULT_PAYLOAD_BUILDING_DURATION)] pub payload_building_duration: u64, /// The max L1 messages per block for the sequencer. - #[arg(long)] + #[arg(long, default_value_t = constants::DEFAULT_MAX_L1_MESSAGES_PER_BLOCK)] pub max_l1_messages_per_block: u64, /// The fee recipient for the sequencer. - #[arg(long)] - pub fee_recipient: Option
, + #[arg(long, default_value_t = SCROLL_FEE_VAULT_ADDRESS)] + pub fee_recipient: Address, } diff --git a/bin/rollup/src/constants.rs b/bin/rollup/src/constants.rs index 0021dadb..02e97f28 100644 --- a/bin/rollup/src/constants.rs +++ b/bin/rollup/src/constants.rs @@ -9,3 +9,15 @@ pub const PROVIDER_MAX_RETRIES: u32 = 10; /// The initial backoff for the L1 provider. pub const PROVIDER_INITIAL_BACKOFF: u64 = 100; + +/// The default provider compute units per second. +pub const PROVIDER_COMPUTE_UNITS_PER_SECOND: u64 = 50; + +/// The default block time in milliseconds for the sequencer. +pub const DEFAULT_BLOCK_TIME: u64 = 2000; + +/// The default payload building duration in milliseconds for the sequencer. +pub const DEFAULT_PAYLOAD_BUILDING_DURATION: u64 = 500; + +/// The default max L1 messages per block for the sequencer. +pub const DEFAULT_MAX_L1_MESSAGES_PER_BLOCK: u64 = 4; diff --git a/bin/rollup/src/network.rs b/bin/rollup/src/network.rs index 566f1c57..200f2f1e 100644 --- a/bin/rollup/src/network.rs +++ b/bin/rollup/src/network.rs @@ -101,19 +101,12 @@ where auth_secret, self.config.engine_api_url.unwrap_or(format!("http://localhost:{auth_port}").parse()?), ); - let fcs = - ForkchoiceState::head_from_genesis(ctx.config().chain.genesis_header().hash_slow()); + let fcs = ForkchoiceState::head_from_genesis(ctx.config().chain.genesis_hash()); let engine = EngineDriver::new( Arc::new(engine_api), Arc::new(payload_provider), fcs, - Duration::from_millis( - self.config - .sequencer_args - .as_ref() - .map(|args| args.payload_building_duration) - .unwrap_or(0), - ), + Duration::from_millis(self.config.sequencer_args.payload_building_duration), ); // Instantiate the database @@ -137,10 +130,9 @@ where let chain_spec = ctx.chain_spec(); // Spawn the L1Watcher - let l1_provider_args = self.config.l1_provider_args; - let l1_notification_rx = if let Some(l1_rpc_url) = l1_provider_args.l1_rpc_url { + let l1_notification_rx = if let Some(l1_rpc_url) = self.config.l1_provider_args.l1_rpc_url { let L1ProviderArgs { max_retries, initial_backoff, compute_units_per_second, .. } = - l1_provider_args; + self.config.l1_provider_args; let client = RpcClient::builder() .layer(RetryBackoffLayer::new( max_retries, @@ -155,25 +147,31 @@ where }; // Construct the l1 provider. - let beacon_provider = beacon_provider(l1_provider_args.beacon_rpc_url.to_string()); let l1_messages_provider = DatabaseL1MessageProvider::new(db.clone(), 0); - let l1_provider = OnlineL1Provider::new( - beacon_provider, - PROVIDER_BLOB_CACHE_SIZE, - l1_messages_provider.clone(), - ) - .await; + let l1_provider = if let Some(url) = self.config.l1_provider_args.beacon_rpc_url { + let beacon_provider = beacon_provider(url.to_string()); + let l1_provider = OnlineL1Provider::new( + beacon_provider, + PROVIDER_BLOB_CACHE_SIZE, + l1_messages_provider.clone(), + ) + .await; + Some(l1_provider) + } else { + None + }; // Construct the Sequencer. - let (sequencer, block_time) = if let Some(args) = self.config.sequencer_args { + let (sequencer, block_time) = if self.config.sequencer_args.scroll_sequencer_enabled { + let args = &self.config.sequencer_args; let sequencer = Sequencer::new( Arc::new(l1_messages_provider), - args.fee_recipient.unwrap_or_default(), + args.fee_recipient, args.max_l1_messages_per_block, 0, 0, ); - (Some(sequencer), Some(args.block_time)) + (Some(sequencer), Some(args.scroll_block_time)) } else { (None, None) }; @@ -192,7 +190,7 @@ where block_time, ); - ctx.task_executor().spawn(rollup_node_manager); + ctx.task_executor().spawn_critical("rollup_node_manager", rollup_node_manager); info!(target: "scroll::reth::cli", enode=%handle.local_node_record(), "P2P networking initialized"); Ok(handle) diff --git a/bin/rollup/tests/e2e.rs b/bin/rollup/tests/e2e.rs index ab00fe23..5653c749 100644 --- a/bin/rollup/tests/e2e.rs +++ b/bin/rollup/tests/e2e.rs @@ -14,7 +14,7 @@ use reth_scroll_chainspec::ScrollChainSpec; use reth_scroll_engine_primitives::ScrollPayloadBuilderAttributes; use reth_scroll_node::{ScrollNetworkPrimitives, ScrollNode}; use reth_tasks::TaskManager; -use rollup_node::{L1ProviderArgs, ScrollRollupNodeArgs}; +use rollup_node::{L1ProviderArgs, ScrollRollupNodeArgs, SequencerArgs}; use scroll_alloy_rpc_types_engine::ScrollPayloadAttributes; use scroll_network::{NewBlockWithPeer, SCROLL_MAINNET}; use scroll_wire::ScrollWireConfig; @@ -138,14 +138,16 @@ pub async fn build_bridge_node( database_path: Some(PathBuf::from("sqlite::memory:")), l1_provider_args: L1ProviderArgs { l1_rpc_url: None, - // - beacon_rpc_url: reqwest::Url::parse("https://eth-beacon-chain.drpc.org/rest/")?, + beacon_rpc_url: None, compute_units_per_second: 100, max_retries: 10, initial_backoff: 100, }, engine_api_url: None, - sequencer_args: None, + sequencer_args: SequencerArgs { + scroll_sequencer_enabled: false, + ..SequencerArgs::default() + }, }; let node = ScrollNode; let NodeHandle { node, node_exit_future: _ } = NodeBuilder::new(node_config.clone()) diff --git a/crates/engine/src/engine.rs b/crates/engine/src/engine.rs deleted file mode 100644 index d6c9f0d6..00000000 --- a/crates/engine/src/engine.rs +++ /dev/null @@ -1,270 +0,0 @@ -use super::error::EngineDriverError; -use crate::payload::matching_payloads; - -use alloy_rpc_types_engine::{ - ExecutionPayload, ExecutionPayloadV1, ForkchoiceState, ForkchoiceUpdated, PayloadId, - PayloadStatusEnum, -}; -use eyre::Result; -use reth_payload_primitives::PayloadTypes; -use reth_scroll_engine_primitives::ScrollEngineTypes; -use reth_scroll_primitives::ScrollBlock; -use rollup_node_primitives::BlockInfo; -use rollup_node_providers::ExecutionPayloadProvider; -use scroll_alloy_provider::ScrollEngineApi; -use scroll_alloy_rpc_types_engine::ScrollPayloadAttributes; -use tokio::time::Duration; -use tracing::{debug, error, info, instrument, trace}; - -const ENGINE_BACKOFF_INTERVAL: Duration = Duration::from_secs(1); - -/// The main interface to the Engine API of the EN. -/// Internally maintains the fork state of the chain. -#[derive(Debug)] -pub struct EngineDriver { - /// The engine API client. - client: EC, - /// The execution payload provider - execution_payload_provider: P, -} - -impl EngineDriver -where - EC: ScrollEngineApi + Unpin + Send + Sync + 'static, - P: ExecutionPayloadProvider + Unpin + Send + Sync + 'static, -{ - /// Create a new [`EngineDriver`] from the provided [`ScrollEngineApi`] and - /// [`ExecutionPayloadProvider`]. - pub const fn new(client: EC, execution_payload_provider: P) -> Self { - Self { client, execution_payload_provider } - } - - /// Initialize the driver and wait for the Engine server to be ready. - pub async fn init_and_wait_for_engine( - client: EC, - execution_payload_provider: P, - fcs: ForkchoiceState, - ) -> Self { - // wait on engine - loop { - match client.fork_choice_updated_v1(fcs, None).await { - Err(err) => { - debug!(target: "scroll::engine::driver", ?err, "waiting on engine client"); - tokio::time::sleep(ENGINE_BACKOFF_INTERVAL).await; - } - Ok(status) => { - info!(target: "scroll::engine::driver", payload_status = ?status.payload_status.status, "engine ready"); - break; - } - } - } - - Self { client, execution_payload_provider } - } - - /// Handles an execution payload: - /// - Sends the payload to the EL via `engine_newPayloadV1`. - /// - Sets the current fork choice for the EL via `engine_forkchoiceUpdatedV1`. - #[instrument(skip_all, level = "trace", - fields( - payload_block_hash = %execution_payload.block_hash(), - payload_block_num = %execution_payload.block_number(), - fcs = ?fcs - ) - )] - pub async fn handle_execution_payload( - &self, - execution_payload: ExecutionPayload, - fcs: ForkchoiceState, - ) -> Result<(PayloadStatusEnum, PayloadStatusEnum), EngineDriverError> { - // Convert the payload to the V1 format. - let execution_payload = execution_payload.into_v1(); - - // Issue the new payload to the EN. - let payload_status = self.new_payload(execution_payload).await?; - - // Invoke the FCU with the new state. - let fcu = self.forkchoice_updated(fcs, None).await?; - - // We should never have a case where the fork choice is syncing as we have already validated - // the payload and provided it to the EN. - debug_assert!(fcu.is_valid()); - - Ok((payload_status, fcu.payload_status.status)) - } - - /// Handles a payload attributes: - /// - Retrieves the execution payload for block at safe head + 1. - /// - If the payload is missing or doesn't match the attributes: - /// - Starts payload building task on the EL via `engine_forkchoiceUpdatedV1`, passing the - /// provided payload attributes. - /// - Retrieve the payload with `engine_getPayloadV1`. - /// - Sends the constructed payload to the EL via `engine_newPayloadV1`. - /// - Sets the current fork choice for the EL via `engine_forkchoiceUpdatedV1`. - /// - If the execution payload matches the attributes: - /// - Sets the current fork choice for the EL via `engine_forkchoiceUpdatedV1`, advancing - /// the safe head by one. - #[instrument(skip_all, level = "trace", - fields( - safe_block_info = ?safe_block_info, - fcs = ?fcs, - payload_attributes = ?payload_attributes.payload_attributes - ) - )] - pub async fn handle_payload_attributes( - &self, - safe_block_info: BlockInfo, - mut fcs: ForkchoiceState, - mut payload_attributes: ::PayloadAttributes, - ) -> Result<(BlockInfo, bool), EngineDriverError> { - let maybe_execution_payload = self - .execution_payload_provider - .execution_payload_by_block((safe_block_info.number + 1).into()) - .await - .map_err(|_| EngineDriverError::ExecutionPayloadProviderUnavailable)?; - let payload_attributes_already_inserted_in_chain = maybe_execution_payload - .as_ref() - .is_some_and(|ep| matching_payloads(&payload_attributes, ep, safe_block_info.hash)); - - if payload_attributes_already_inserted_in_chain { - // if the payload attributes match the execution payload at block safe + 1, - // this payload has already been passed to the EN in the form of a P2P gossiped - // execution payload. We can advance the safe head by one by issuing a - // forkchoiceUpdated. - let safe_block_info: BlockInfo = - maybe_execution_payload.expect("execution payload exists").into(); - fcs.safe_block_hash = safe_block_info.hash; - self.forkchoice_updated(fcs, None).await?; - Ok((safe_block_info, false)) - } else { - // Otherwise, we construct a block from the payload attributes on top of the current - // safe head. - fcs.head_block_hash = fcs.safe_block_hash; - - // start payload building with `no_tx_pool = true`. - payload_attributes.no_tx_pool = true; - let fc_updated = self.forkchoice_updated(fcs, Some(payload_attributes)).await?; - - // retrieve the execution payload - let execution_payload = self - .get_payload(fc_updated.payload_id.expect("payload attributes has been set")) - .await?; - - // issue the execution payload to the EL - let safe_block_info: BlockInfo = (&execution_payload).into(); - let result = self.new_payload(execution_payload.into_v1()).await?; - - // we should only have a valid payload when deriving from payload attributes (should not - // be syncing)! - debug_assert!(result.is_valid()); - - // update the fork choice state with the new block hash. - fcs.head_block_hash = safe_block_info.hash; - fcs.safe_block_hash = safe_block_info.hash; - self.forkchoice_updated(fcs, None).await?; - - Ok((safe_block_info, true)) - } - } - - /// Builds a new payload from the provided fork choice state and payload attributes. - pub async fn build_new_payload( - &self, - mut fcs: ForkchoiceState, - payload_attributes: ScrollPayloadAttributes, - ) -> Result { - tracing::trace!(target: "scroll::engine::driver", ?payload_attributes, "building new payload"); - - // start a payload building job on top of the current unsafe head. - let fc_updated = self.forkchoice_updated(fcs, Some(payload_attributes)).await?; - - // retrieve the execution payload - let execution_payload = self - .get_payload(fc_updated.payload_id.expect("payload attributes has been set")) - .await?; - - // update the head block hash to the new payload block hash. - fcs.head_block_hash = execution_payload.block_hash(); - - // update the fork choice state with the new block hash. - self.forkchoice_updated(fcs, None).await?; - - // convert the payload into a block. - execution_payload.try_into().map_err(|_| EngineDriverError::InvalidExecutionPayload) - } - - /// Calls `engine_newPayloadV1` and logs the result. - async fn new_payload( - &self, - execution_payload: ExecutionPayloadV1, - ) -> Result { - // TODO: should never enter the `Syncing`, `Accepted` or `Invalid` variants when called from - // `handle_payload_attributes`. - let response = self - .client - .new_payload_v1(execution_payload) - .await - .map_err(|_| EngineDriverError::EngineUnavailable)?; - - match &response.status { - PayloadStatusEnum::Invalid { validation_error } => { - error!(target: "scroll::engine::driver", ?validation_error, "execution payload is invalid"); - return Err(EngineDriverError::InvalidExecutionPayload) - } - PayloadStatusEnum::Syncing => { - debug!(target: "scroll::engine::driver", "execution client is syncing"); - } - PayloadStatusEnum::Accepted => { - error!(target: "scroll::engine::driver", "execution payload part of side chain"); - } - PayloadStatusEnum::Valid => { - trace!(target: "scroll::engine::driver", "execution payload valid"); - } - }; - - Ok(response.status) - } - - /// Calls `engine_forkchoiceUpdatedV1` and logs the result. - async fn forkchoice_updated( - &self, - fcs: ForkchoiceState, - attributes: Option<::PayloadAttributes>, - ) -> Result { - let forkchoice_updated = self - .client - .fork_choice_updated_v1(fcs, attributes) - .await - .map_err(|_| EngineDriverError::EngineUnavailable)?; - - // TODO: should never enter the `Syncing`, `Accepted` or `Invalid` variants when called from - // `handle_payload_attributes`. - match &forkchoice_updated.payload_status.status { - PayloadStatusEnum::Invalid { validation_error } => { - error!(target: "scroll::engine::driver", ?validation_error, "failed to issue forkchoice"); - return Err(EngineDriverError::InvalidFcu) - } - PayloadStatusEnum::Syncing => { - debug!(target: "scroll::engine::driver", "head has been seen before, but not part of the chain"); - } - PayloadStatusEnum::Accepted => { - unreachable!("forkchoice update should never return an `Accepted` status"); - } - PayloadStatusEnum::Valid => { - trace!(target: "scroll::engine::driver", "forkchoice updated"); - } - }; - - Ok(forkchoice_updated) - } - - /// Calls `engine_getPayloadV1`. - async fn get_payload(&self, id: PayloadId) -> Result { - Ok(self - .client - .get_payload_v1(id) - .await - .map_err(|_| EngineDriverError::EngineUnavailable)? - .into()) - } -} diff --git a/crates/engine/src/error.rs b/crates/engine/src/error.rs index 52bc29f7..0e32ded7 100644 --- a/crates/engine/src/error.rs +++ b/crates/engine/src/error.rs @@ -1,3 +1,5 @@ +use alloy_rpc_types_engine::PayloadError; + /// The error type for the engine API. #[derive(Debug, thiserror::Error)] pub enum EngineDriverError { @@ -5,8 +7,8 @@ pub enum EngineDriverError { #[error("Engine is unavailable")] EngineUnavailable, /// The execution payload is invalid. - #[error("Invalid execution payload")] - InvalidExecutionPayload, + #[error("Invalid execution payload: {0}")] + InvalidExecutionPayload(PayloadError), /// The execution payload provider is unavailable. #[error("Execution payload provider is unavailable")] ExecutionPayloadProviderUnavailable, diff --git a/crates/engine/src/future/mod.rs b/crates/engine/src/future/mod.rs index 90234950..4308e3bc 100644 --- a/crates/engine/src/future/mod.rs +++ b/crates/engine/src/future/mod.rs @@ -290,5 +290,5 @@ where forkchoice_updated(client, fcs, None).await?; // convert the payload into a block. - execution_payload.try_into().map_err(|_| EngineDriverError::InvalidExecutionPayload) + execution_payload.try_into().map_err(EngineDriverError::InvalidExecutionPayload) } diff --git a/crates/node/src/lib.rs b/crates/node/src/lib.rs index 29341d07..48773175 100644 --- a/crates/node/src/lib.rs +++ b/crates/node/src/lib.rs @@ -58,7 +58,7 @@ pub struct RollupNodeManager { /// The engine driver used to communicate with the engine. engine: EngineDriver, /// The derivation pipeline, used to derive payload attributes from batches. - derivation_pipeline: DerivationPipeline, + derivation_pipeline: Option>, /// A receiver for [`L1Notification`]s from the [`rollup_node_watcher::L1Watcher`]. l1_notification_rx: Option>>, /// An indexer used to index data for the rollup node. @@ -108,7 +108,7 @@ where pub fn new( network: NetworkManager, engine: EngineDriver, - l1_provider: L1P, + l1_provider: Option, database: Arc, l1_notification_rx: Option>>, consensus: C, @@ -118,7 +118,8 @@ where block_time: Option, ) -> Self { let indexer = Indexer::new(database.clone(), chain_spec); - let derivation_pipeline = DerivationPipeline::new(l1_provider, database); + let derivation_pipeline = + l1_provider.map(|provider| DerivationPipeline::new(provider, database)); Self { network, engine, @@ -188,7 +189,9 @@ where match event { IndexerEvent::BatchCommitIndexed(batch_info) => { // push the batch info into the derivation pipeline. - self.derivation_pipeline.handle_batch_commit(batch_info) + if let Some(pipeline) = &mut self.derivation_pipeline { + pipeline.handle_batch_commit(batch_info); + } } IndexerEvent::BatchFinalizationIndexed(_, Some(finalized_block)) | IndexerEvent::FinalizedIndexed(_, Some(finalized_block)) => { @@ -279,7 +282,9 @@ where } // Poll Derivation Pipeline and push attribute in queue if any. - while let Poll::Ready(Some(attributes)) = this.derivation_pipeline.poll_next_unpin(cx) { + while let Some(Poll::Ready(Some(attributes))) = + this.derivation_pipeline.as_mut().map(|f| f.poll_next_unpin(cx)) + { this.engine.handle_l1_consolidation(attributes) } diff --git a/crates/scroll-wire/src/connection/mod.rs b/crates/scroll-wire/src/connection/mod.rs index 418d5497..ba3c494e 100644 --- a/crates/scroll-wire/src/connection/mod.rs +++ b/crates/scroll-wire/src/connection/mod.rs @@ -63,7 +63,7 @@ impl Stream for ScrollWireConnection { loop { // We send all the messages in the outbound channel to the peer. if let Poll::Ready(Some(msg)) = this.outbound.poll_next_unpin(cx) { - println!("broadcasting message: {:?}", msg); + trace!(target: "scroll::wire::connection", peer_id = %this.peer_id, ?msg, "broadcasting message"); return Poll::Ready(Some(msg.encoded())); }