From 6b8f5c5a6b193c1b10977e405df17af0fb759e50 Mon Sep 17 00:00:00 2001 From: Roman Krasiuk Date: Mon, 7 Apr 2025 12:23:31 +0200 Subject: [PATCH] feat: `Prague` mainnet timestamp (#15582) --- Cargo.lock | 24 +++++++++++------------ Cargo.toml | 2 +- crates/chainspec/src/spec.rs | 38 ++++++++++++++++++++++++++---------- 3 files changed, 41 insertions(+), 23 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 5a11b7d78a..a623cec146 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -289,9 +289,9 @@ dependencies = [ [[package]] name = "alloy-hardforks" -version = "0.1.2" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e61d55f42faedd980ee3e391aa9ff8ae0fc20723fa1c6d69ac06e06d08fbade" +checksum = "473ee2ab7f5262b36e8fbc1b5327d5c9d488ab247e31ac739b929dbe2444ae79" dependencies = [ "alloy-chains", "alloy-eip2124", @@ -2253,7 +2253,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "117725a109d387c937a1533ce01b450cbde6b88abceea8473c4d7a85853cda3c" dependencies = [ "lazy_static", - "windows-sys 0.59.0", + "windows-sys 0.48.0", ] [[package]] @@ -2717,7 +2717,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "18e4fdb82bd54a12e42fb58a800dcae6b9e13982238ce2296dc3570b92148e1f" dependencies = [ "data-encoding", - "syn 1.0.109", + "syn 2.0.100", ] [[package]] @@ -3182,7 +3182,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d" dependencies = [ "libc", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -4815,7 +4815,7 @@ checksum = "e04d7f318608d35d4b61ddd75cbdaee86b023ebe2bd5a66ee0915f0bf93095a9" dependencies = [ "hermit-abi 0.5.0", "libc", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -6559,7 +6559,7 @@ dependencies = [ "once_cell", "socket2", "tracing", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -10597,7 +10597,7 @@ dependencies = [ "errno", "libc", "linux-raw-sys 0.4.15", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -10610,7 +10610,7 @@ dependencies = [ "errno", "libc", "linux-raw-sys 0.9.3", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -10676,7 +10676,7 @@ dependencies = [ "security-framework", "security-framework-sys", "webpki-root-certs", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -11439,7 +11439,7 @@ dependencies = [ "getrandom 0.3.2", "once_cell", "rustix 1.0.3", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -12527,7 +12527,7 @@ version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.48.0", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index ba6593d23d..c71db34322 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -461,7 +461,7 @@ alloy-rlp = { version = "0.3.10", default-features = false, features = ["core-ne alloy-sol-types = { version = "0.8.25", default-features = false } alloy-trie = { version = "0.7.9", default-features = false } -alloy-hardforks = "0.1.2" +alloy-hardforks = "0.1.4" alloy-consensus = { version = "0.13.0", default-features = false } alloy-contract = { version = "0.13.0", default-features = false } diff --git a/crates/chainspec/src/spec.rs b/crates/chainspec/src/spec.rs index 8cdc071cca..0ed1b95800 100644 --- a/crates/chainspec/src/spec.rs +++ b/crates/chainspec/src/spec.rs @@ -1117,7 +1117,8 @@ Merge hard forks: - Paris @58750000000000000000000 (network is known to be merged) Post-merge hard forks (timestamp based): - Shanghai @1681338455 -- Cancun @1710338135" +- Cancun @1710338135 +- Prague @1746612311" ); } @@ -1357,7 +1358,11 @@ Post-merge hard forks (timestamp based): ), ( EthereumHardfork::Cancun, - ForkId { hash: ForkHash([0x9f, 0x3d, 0x22, 0x54]), next: 0 }, + ForkId { hash: ForkHash([0x9f, 0x3d, 0x22, 0x54]), next: 1746612311 }, + ), + ( + EthereumHardfork::Prague, + ForkId { hash: ForkHash([0xc3, 0x76, 0xcf, 0x8b]), next: 0 }, ), ], ); @@ -1493,12 +1498,17 @@ Post-merge hard forks (timestamp based): // First Cancun block ( Head { number: 20000001, timestamp: 1710338135, ..Default::default() }, - ForkId { hash: ForkHash([0x9f, 0x3d, 0x22, 0x54]), next: 0 }, + ForkId { hash: ForkHash([0x9f, 0x3d, 0x22, 0x54]), next: 1746612311 }, ), - // Future Cancun block + // First Prague block + ( + Head { number: 20000002, timestamp: 1746612311, ..Default::default() }, + ForkId { hash: ForkHash([0xc3, 0x76, 0xcf, 0x8b]), next: 0 }, + ), + // Future Prague block ( Head { number: 20000002, timestamp: 2000000000, ..Default::default() }, - ForkId { hash: ForkHash([0x9f, 0x3d, 0x22, 0x54]), next: 0 }, + ForkId { hash: ForkHash([0xc3, 0x76, 0xcf, 0x8b]), next: 0 }, ), ], ); @@ -1754,11 +1764,19 @@ Post-merge hard forks (timestamp based): ), // First Cancun block ( Head { number: 20000002, timestamp: 1710338135, ..Default::default() }, - ForkId { hash: ForkHash([0x9f, 0x3d, 0x22, 0x54]), next: 0 }, - ), // Future Cancun block + ForkId { hash: ForkHash([0x9f, 0x3d, 0x22, 0x54]), next: 1746612311 }, + ), // Last Cancun block ( - Head { number: 20000003, timestamp: 2000000000, ..Default::default() }, - ForkId { hash: ForkHash([0x9f, 0x3d, 0x22, 0x54]), next: 0 }, + Head { number: 20000003, timestamp: 1746612310, ..Default::default() }, + ForkId { hash: ForkHash([0x9f, 0x3d, 0x22, 0x54]), next: 1746612311 }, + ), // First Prague block + ( + Head { number: 20000004, timestamp: 1746612311, ..Default::default() }, + ForkId { hash: ForkHash([0xc3, 0x76, 0xcf, 0x8b]), next: 0 }, + ), // Future Prague block + ( + Head { number: 20000004, timestamp: 2000000000, ..Default::default() }, + ForkId { hash: ForkHash([0xc3, 0x76, 0xcf, 0x8b]), next: 0 }, ), ], ); @@ -2401,7 +2419,7 @@ Post-merge hard forks (timestamp based): #[test] fn latest_eth_mainnet_fork_id() { assert_eq!( - ForkId { hash: ForkHash([0x9f, 0x3d, 0x22, 0x54]), next: 0 }, + ForkId { hash: ForkHash([0xc3, 0x76, 0xcf, 0x8b]), next: 0 }, MAINNET.latest_fork_id() ) }