From 7641e758599493df9fcfe4deb477f248c235e165 Mon Sep 17 00:00:00 2001 From: Morty Date: Fri, 3 Jan 2025 00:39:39 +0800 Subject: [PATCH 01/42] feat: support multiple task --- examples/cloud.rs | 2 +- examples/local.rs | 2 +- src/config.rs | 17 ++++++++++++++--- src/coordinator_handler/coordinator_client.rs | 17 ++++++++++------- src/prover/builder.rs | 13 +++++++------ src/prover/mod.rs | 12 ++++++------ src/prover/proving_service.rs | 6 +++--- 7 files changed, 42 insertions(+), 27 deletions(-) diff --git a/examples/cloud.rs b/examples/cloud.rs index 8150089..a2d8116 100644 --- a/examples/cloud.rs +++ b/examples/cloud.rs @@ -32,7 +32,7 @@ impl ProvingService for CloudProver { fn is_local(&self) -> bool { false } - async fn get_vk(&self, req: GetVkRequest) -> GetVkResponse { + async fn get_vks(&self, req: GetVkRequest) -> GetVkResponse { todo!() } async fn prove(&self, req: ProveRequest) -> ProveResponse { diff --git a/examples/local.rs b/examples/local.rs index 0757a0e..c98034a 100644 --- a/examples/local.rs +++ b/examples/local.rs @@ -28,7 +28,7 @@ impl ProvingService for LocalProver { fn is_local(&self) -> bool { true } - async fn get_vk(&self, req: GetVkRequest) -> GetVkResponse { + async fn get_vks(&self, req: GetVkRequest) -> GetVkResponse { todo!() } async fn prove(&self, req: ProveRequest) -> ProveResponse { diff --git a/src/config.rs b/src/config.rs index 8829b02..138f815 100644 --- a/src/config.rs +++ b/src/config.rs @@ -35,7 +35,7 @@ pub struct L2GethConfig { #[derive(Debug, Serialize, Deserialize, Clone)] pub struct ProverConfig { - pub circuit_type: CircuitType, + pub circuit_types: Vec, pub circuit_version: String, pub n_workers: usize, pub cloud: Option, @@ -108,8 +108,19 @@ impl Config { l2geth.endpoint = val; } } - if let Some(val) = Self::get_env_var("CIRCUIT_TYPE")? { - self.prover.circuit_type = CircuitType::from_u8(val.parse()?); + if let Some(val) = Self::get_env_var("CIRCUIT_TYPES")? { + let values_vec: Vec<&str> = val.trim_matches(|c| c == '[' || c == ']').split(',').collect(); + + self.prover.circuit_types = values_vec.iter().map(move |value| { + match value.parse::() { + Ok(num) => CircuitType::from_u8(num), + Err(e) => { + eprintln!("Failed to parse circuit type: {}", e); + std::process::exit(1); + } + } + }) + .collect::>(); } if let Some(val) = Self::get_env_var("N_WORKERS")? { self.prover.n_workers = val.parse()?; diff --git a/src/coordinator_handler/coordinator_client.rs b/src/coordinator_handler/coordinator_client.rs index 82c8cbb..b59f99f 100644 --- a/src/coordinator_handler/coordinator_client.rs +++ b/src/coordinator_handler/coordinator_client.rs @@ -6,7 +6,7 @@ use crate::{config::CoordinatorConfig, prover::CircuitType, utils::get_version}; use tokio::sync::{Mutex, MutexGuard}; pub struct CoordinatorClient { - circuit_type: CircuitType, + circuit_types: Vec, vks: Vec, circuit_version: String, pub prover_name: String, @@ -18,7 +18,7 @@ pub struct CoordinatorClient { impl CoordinatorClient { pub fn new( cfg: CoordinatorConfig, - circuit_type: CircuitType, + circuit_types: Vec, vks: Vec, circuit_version: String, prover_name: String, @@ -26,7 +26,7 @@ impl CoordinatorClient { ) -> anyhow::Result { let api = Api::new(cfg)?; let client = Self { - circuit_type, + circuit_types, vks, circuit_version, prover_name, @@ -107,10 +107,13 @@ impl CoordinatorClient { .as_ref() .ok_or_else(|| anyhow::anyhow!("Missing challenge token"))?; - let prover_types = match self.circuit_type { - CircuitType::Batch | CircuitType::Bundle => vec![CircuitType::Batch], // to conform to coordinator logic - _ => vec![self.circuit_type], - }; + let mut prover_types = vec![]; + if self.circuit_types.contains(&CircuitType::Bundle) || self.circuit_types.contains(&CircuitType::Batch) { + prover_types.push(CircuitType::Batch) + } + if self.circuit_types.contains(&CircuitType::Chunk) { + prover_types.push(CircuitType::Chunk) + } let login_message = LoginMessage { challenge: login_response_data.token.clone(), diff --git a/src/prover/builder.rs b/src/prover/builder.rs index 8a9cb4a..6c10b02 100644 --- a/src/prover/builder.rs +++ b/src/prover/builder.rs @@ -40,19 +40,19 @@ impl ProverBuilder { anyhow::bail!("cannot use multiple workers with local proving service"); } - if self.cfg.prover.circuit_type == CircuitType::Chunk && self.cfg.l2geth.is_none() { + if self.cfg.prover.circuit_types.contains(&CircuitType::Chunk) && self.cfg.l2geth.is_none() { anyhow::bail!("circuit_type is chunk but l2geth config is not provided"); } let get_vk_request = GetVkRequest { - circuit_type: self.cfg.prover.circuit_type, + circuit_types: self.cfg.prover.circuit_types.clone(), circuit_version: self.cfg.prover.circuit_version.clone(), }; let get_vk_response = self .proving_service .as_ref() .unwrap() - .get_vk(get_vk_request) + .get_vks(get_vk_request) .await; if let Some(error) = get_vk_response.error { anyhow::bail!("failed to get vk: {}", error); @@ -67,12 +67,13 @@ impl ProverBuilder { let key_signers = key_signers.map_err(|e| anyhow::anyhow!("cannot create key_signer, err: {e}"))?; + let circuit_types_cloned = self.cfg.prover.circuit_types.clone(); let coordinator_clients: Result, _> = (0..self.cfg.prover.n_workers) .map(|i| { CoordinatorClient::new( self.cfg.coordinator.clone(), - self.cfg.prover.circuit_type, - vec![get_vk_response.vk.clone()], + circuit_types_cloned.clone(), + get_vk_response.vks.clone(), self.cfg.prover.circuit_version.clone(), format!("{}{}", self.cfg.prover_name_prefix, i), key_signers[i].clone(), @@ -91,7 +92,7 @@ impl ProverBuilder { }); Ok(Prover { - circuit_type: self.cfg.prover.circuit_type, + circuit_types: self.cfg.prover.circuit_types.clone(), circuit_version: self.cfg.prover.circuit_version, coordinator_clients, l2geth_client, diff --git a/src/prover/mod.rs b/src/prover/mod.rs index 9c8ce73..4139f56 100644 --- a/src/prover/mod.rs +++ b/src/prover/mod.rs @@ -22,7 +22,7 @@ pub use {builder::ProverBuilder, proving_service::ProvingService, types::*}; const WORKER_SLEEP_SEC: u64 = 20; pub struct Prover { - circuit_type: CircuitType, + circuit_types: Vec, circuit_version: String, coordinator_clients: Vec, l2geth_client: Option, @@ -35,7 +35,7 @@ pub struct Prover { impl Prover { pub async fn run(self) { assert!(self.n_workers == self.coordinator_clients.len()); - if self.circuit_type == CircuitType::Chunk { + if self.circuit_types.contains(&CircuitType::Chunk) { assert!(self.l2geth_client.is_some()); } @@ -276,7 +276,7 @@ impl Prover { }; GetTaskRequest { - task_types: vec![self.circuit_type], + task_types: self.circuit_types.clone(), prover_height, } } @@ -286,9 +286,9 @@ impl Prover { task: &GetTaskResponseData, ) -> anyhow::Result { anyhow::ensure!( - task.task_type == self.circuit_type, - "task type mismatch. self: {:?}, task: {:?}, coordinator_task_uuid: {:?}, coordinator_task_id: {:?}", - self.circuit_type, + self.circuit_types.contains(&task.task_type), + "unsupported task type. self: {:?}, task: {:?}, coordinator_task_uuid: {:?}, coordinator_task_id: {:?}", + self.circuit_types, task.task_type, task.uuid, task.task_id diff --git a/src/prover/proving_service.rs b/src/prover/proving_service.rs index 2625828..82106a9 100644 --- a/src/prover/proving_service.rs +++ b/src/prover/proving_service.rs @@ -4,18 +4,18 @@ use async_trait::async_trait; #[async_trait] pub trait ProvingService { fn is_local(&self) -> bool; - async fn get_vk(&self, req: GetVkRequest) -> GetVkResponse; + async fn get_vks(&self, req: GetVkRequest) -> GetVkResponse; async fn prove(&self, req: ProveRequest) -> ProveResponse; async fn query_task(&self, req: QueryTaskRequest) -> QueryTaskResponse; } pub struct GetVkRequest { - pub circuit_type: CircuitType, + pub circuit_types: Vec, pub circuit_version: String, } pub struct GetVkResponse { - pub vk: String, + pub vks: Vec, pub error: Option, } From 8381babd86305c866232cef1ac6ae9ce25a700b3 Mon Sep 17 00:00:00 2001 From: Morty Date: Fri, 3 Jan 2025 00:40:46 +0800 Subject: [PATCH 02/42] feat: support multiple task --- conf/config.json | 2 +- src/coordinator_handler/api.rs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/conf/config.json b/conf/config.json index 657207b..2f67aff 100644 --- a/conf/config.json +++ b/conf/config.json @@ -11,7 +11,7 @@ "endpoint": "https://l2-rpc.scrollsdk" }, "prover": { - "circuit_type": 3, + "circuit_type": [3], "circuit_version": "v0.13.1", "n_workers": 1, "cloud": { diff --git a/src/coordinator_handler/api.rs b/src/coordinator_handler/api.rs index ac39cf9..9c22ce1 100644 --- a/src/coordinator_handler/api.rs +++ b/src/coordinator_handler/api.rs @@ -16,7 +16,7 @@ pub struct Api { } impl Api { - pub fn new(cfg: CoordinatorConfig) -> anyhow::Result { + pub fn new(cfg: CoordinatorConfig) -> anyhow::Result { let retry_wait_duration = Duration::from_secs(cfg.retry_wait_time_sec); let retry_policy = ExponentialBackoff::builder() .retry_bounds(retry_wait_duration / 2, retry_wait_duration) From a1dbcd94acb891730074699319224bcf57d9c7b4 Mon Sep 17 00:00:00 2001 From: Morty Date: Fri, 3 Jan 2025 03:07:12 +0800 Subject: [PATCH 03/42] feat: implement default for circuitType --- src/prover/types.rs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/prover/types.rs b/src/prover/types.rs index e00e912..0b602fc 100644 --- a/src/prover/types.rs +++ b/src/prover/types.rs @@ -51,3 +51,9 @@ impl<'de> Deserialize<'de> for CircuitType { Ok(CircuitType::from_u8(v)) } } + +impl Default for CircuitType { + fn default() -> Self { + Self::Undefined + } +} \ No newline at end of file From 688ede54899428f38d1c6f4c998b447edfcb5dec Mon Sep 17 00:00:00 2001 From: Morty Date: Sun, 5 Jan 2025 03:41:59 +0800 Subject: [PATCH 04/42] feat: add local prover config --- src/config.rs | 95 ++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 86 insertions(+), 9 deletions(-) diff --git a/src/config.rs b/src/config.rs index 138f815..82ef92a 100644 --- a/src/config.rs +++ b/src/config.rs @@ -3,6 +3,7 @@ use dotenv::dotenv; use serde::{Deserialize, Serialize}; use serde_json; use std::fs::File; +use anyhow::{bail, Result}; #[derive(Debug, Serialize, Deserialize, Clone)] pub struct Config { @@ -53,35 +54,46 @@ pub struct CloudProverConfig { #[derive(Debug, Serialize, Deserialize, Clone)] pub struct LocalProverConfig { - // TODO: - // params path - // assets path - // DB config + pub prover_name: String, + pub keystore_path: String, + pub keystore_password: String, + pub db_path: String, + pub low_version_circuit: CircuitConfig, + pub high_version_circuit: CircuitConfig, + pub coordinator: CoordinatorConfig, + pub l2geth: Option, +} + +#[derive(Debug, Serialize, Deserialize, Clone)] +pub struct CircuitConfig { + pub hard_fork_name: String, + pub params_path: String, + pub assets_path: String, } #[derive(Debug, Serialize, Deserialize, Clone)] pub struct DbConfig {} impl Config { - pub fn from_reader(reader: R) -> anyhow::Result + pub fn from_reader(reader: R) -> Result where R: std::io::Read, { serde_json::from_reader(reader).map_err(|e| anyhow::anyhow!(e)) } - pub fn from_file(file_name: String) -> anyhow::Result { + pub fn from_file(file_name: String) -> Result { let file = File::open(file_name)?; Config::from_reader(&file) } - pub fn from_file_and_env(file_name: String) -> anyhow::Result { + pub fn from_file_and_env(file_name: String) -> Result { let mut cfg = Config::from_file(file_name)?; cfg.override_with_env()?; Ok(cfg) } - fn get_env_var(key: &str) -> anyhow::Result> { + fn get_env_var(key: &str) -> Result> { Ok(std::env::var_os(key) .map(|val| { val.to_str() @@ -91,7 +103,7 @@ impl Config { .transpose()?) } - fn override_with_env(&mut self) -> anyhow::Result<()> { + fn override_with_env(&mut self) -> Result<()> { dotenv().ok(); if let Some(val) = Self::get_env_var("PROVER_NAME_PREFIX")? { @@ -142,3 +154,68 @@ impl Config { Ok(()) } } + + +impl LocalProverConfig { + pub fn from_reader(reader: R) -> Result + where + R: std::io::Read, + { + serde_json::from_reader(reader).map_err(|e| anyhow::anyhow!(e)) + } + + pub fn from_file(file_name: String) -> Result { + let file = File::open(file_name)?; + LocalProverConfig::from_reader(&file) + } +} + +static SCROLL_PROVER_ASSETS_DIR_ENV_NAME: &str = "SCROLL_PROVER_ASSETS_DIR"; +static mut SCROLL_PROVER_ASSETS_DIRS: Vec = vec![]; + +#[derive(Debug)] +pub struct AssetsDirEnvConfig {} + +impl AssetsDirEnvConfig { + pub fn init() -> Result<()> { + let value = std::env::var(SCROLL_PROVER_ASSETS_DIR_ENV_NAME)?; + let dirs: Vec<&str> = value.split(',').collect(); + if dirs.len() != 2 { + bail!("env variable SCROLL_PROVER_ASSETS_DIR value must be 2 parts seperated by comma.") + } + unsafe { + SCROLL_PROVER_ASSETS_DIRS = dirs.into_iter().map(|s| s.to_string()).collect(); + log::info!( + "init SCROLL_PROVER_ASSETS_DIRS: {:?}", + SCROLL_PROVER_ASSETS_DIRS + ); + } + Ok(()) + } + + pub fn enable_first() { + unsafe { + log::info!( + "set env {SCROLL_PROVER_ASSETS_DIR_ENV_NAME} to {}", + &SCROLL_PROVER_ASSETS_DIRS[0] + ); + std::env::set_var( + SCROLL_PROVER_ASSETS_DIR_ENV_NAME, + &SCROLL_PROVER_ASSETS_DIRS[0], + ); + } + } + + pub fn enable_second() { + unsafe { + log::info!( + "set env {SCROLL_PROVER_ASSETS_DIR_ENV_NAME} to {}", + &SCROLL_PROVER_ASSETS_DIRS[1] + ); + std::env::set_var( + SCROLL_PROVER_ASSETS_DIR_ENV_NAME, + &SCROLL_PROVER_ASSETS_DIRS[1], + ); + } + } +} From 6dd13b6cebf3221bc74ee2b1d8853caa9a8ac6bc Mon Sep 17 00:00:00 2001 From: Morty Date: Sun, 5 Jan 2025 23:25:01 +0800 Subject: [PATCH 05/42] fix: clone for ProveRequest --- src/prover/proving_service.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/src/prover/proving_service.rs b/src/prover/proving_service.rs index 82106a9..4eea80e 100644 --- a/src/prover/proving_service.rs +++ b/src/prover/proving_service.rs @@ -19,6 +19,7 @@ pub struct GetVkResponse { pub error: Option, } +#[derive(Clone)] pub struct ProveRequest { pub circuit_type: CircuitType, pub circuit_version: String, From 7d010b0c4670d6d3546fd72c449b771464b32a12 Mon Sep 17 00:00:00 2001 From: Morty Date: Mon, 6 Jan 2025 03:59:51 +0800 Subject: [PATCH 06/42] fix: lint --- src/config.rs | 24 ++++++++++--------- src/coordinator_handler/api.rs | 2 +- src/coordinator_handler/coordinator_client.rs | 4 +++- src/db.rs | 6 ++--- src/prover/builder.rs | 3 ++- src/prover/mod.rs | 2 +- src/prover/types.rs | 2 +- 7 files changed, 23 insertions(+), 20 deletions(-) diff --git a/src/config.rs b/src/config.rs index 82ef92a..115cf4c 100644 --- a/src/config.rs +++ b/src/config.rs @@ -1,9 +1,9 @@ use crate::prover::CircuitType; +use anyhow::{bail, Result}; use dotenv::dotenv; use serde::{Deserialize, Serialize}; use serde_json; use std::fs::File; -use anyhow::{bail, Result}; #[derive(Debug, Serialize, Deserialize, Clone)] pub struct Config { @@ -94,13 +94,13 @@ impl Config { } fn get_env_var(key: &str) -> Result> { - Ok(std::env::var_os(key) + std::env::var_os(key) .map(|val| { val.to_str() .ok_or_else(|| anyhow::anyhow!("{key} env var is not valid UTF-8")) .map(String::from) }) - .transpose()?) + .transpose() } fn override_with_env(&mut self) -> Result<()> { @@ -121,18 +121,21 @@ impl Config { } } if let Some(val) = Self::get_env_var("CIRCUIT_TYPES")? { - let values_vec: Vec<&str> = val.trim_matches(|c| c == '[' || c == ']').split(',').collect(); - - self.prover.circuit_types = values_vec.iter().map(move |value| { - match value.parse::() { + let values_vec: Vec<&str> = val + .trim_matches(|c| c == '[' || c == ']') + .split(',') + .collect(); + + self.prover.circuit_types = values_vec + .iter() + .map(move |value| match value.parse::() { Ok(num) => CircuitType::from_u8(num), Err(e) => { eprintln!("Failed to parse circuit type: {}", e); std::process::exit(1); } - } - }) - .collect::>(); + }) + .collect::>(); } if let Some(val) = Self::get_env_var("N_WORKERS")? { self.prover.n_workers = val.parse()?; @@ -155,7 +158,6 @@ impl Config { } } - impl LocalProverConfig { pub fn from_reader(reader: R) -> Result where diff --git a/src/coordinator_handler/api.rs b/src/coordinator_handler/api.rs index 9c22ce1..ac39cf9 100644 --- a/src/coordinator_handler/api.rs +++ b/src/coordinator_handler/api.rs @@ -16,7 +16,7 @@ pub struct Api { } impl Api { - pub fn new(cfg: CoordinatorConfig) -> anyhow::Result { + pub fn new(cfg: CoordinatorConfig) -> anyhow::Result { let retry_wait_duration = Duration::from_secs(cfg.retry_wait_time_sec); let retry_policy = ExponentialBackoff::builder() .retry_bounds(retry_wait_duration / 2, retry_wait_duration) diff --git a/src/coordinator_handler/coordinator_client.rs b/src/coordinator_handler/coordinator_client.rs index b59f99f..ff9ab95 100644 --- a/src/coordinator_handler/coordinator_client.rs +++ b/src/coordinator_handler/coordinator_client.rs @@ -108,7 +108,9 @@ impl CoordinatorClient { .ok_or_else(|| anyhow::anyhow!("Missing challenge token"))?; let mut prover_types = vec![]; - if self.circuit_types.contains(&CircuitType::Bundle) || self.circuit_types.contains(&CircuitType::Batch) { + if self.circuit_types.contains(&CircuitType::Bundle) + || self.circuit_types.contains(&CircuitType::Batch) + { prover_types.push(CircuitType::Batch) } if self.circuit_types.contains(&CircuitType::Chunk) { diff --git a/src/db.rs b/src/db.rs index ad90f76..c1785ac 100644 --- a/src/db.rs +++ b/src/db.rs @@ -19,16 +19,14 @@ impl Db { .get(fmt_coordinator_task_key(public_key)) .ok()? .as_ref() - .map(|v| serde_json::from_slice(v).ok()) - .flatten() + .and_then(|v| serde_json::from_slice(v).ok()) } pub fn get_proving_task_id_by_public_key(&self, public_key: String) -> Option { self.db .get(fmt_proving_task_id_key(public_key)) .ok()? - .map(|v| String::from_utf8(v).ok()) - .flatten() + .and_then(|v| String::from_utf8(v).ok()) } pub fn set_coordinator_task_by_public_key( diff --git a/src/prover/builder.rs b/src/prover/builder.rs index 6c10b02..b6a6f2e 100644 --- a/src/prover/builder.rs +++ b/src/prover/builder.rs @@ -40,7 +40,8 @@ impl ProverBuilder { anyhow::bail!("cannot use multiple workers with local proving service"); } - if self.cfg.prover.circuit_types.contains(&CircuitType::Chunk) && self.cfg.l2geth.is_none() { + if self.cfg.prover.circuit_types.contains(&CircuitType::Chunk) && self.cfg.l2geth.is_none() + { anyhow::bail!("circuit_type is chunk but l2geth config is not provided"); } diff --git a/src/prover/mod.rs b/src/prover/mod.rs index 4139f56..28b5d45 100644 --- a/src/prover/mod.rs +++ b/src/prover/mod.rs @@ -35,7 +35,7 @@ pub struct Prover { impl Prover { pub async fn run(self) { assert!(self.n_workers == self.coordinator_clients.len()); - if self.circuit_types.contains(&CircuitType::Chunk) { + if self.circuit_types.contains(&CircuitType::Chunk) { assert!(self.l2geth_client.is_some()); } diff --git a/src/prover/types.rs b/src/prover/types.rs index 0b602fc..3403170 100644 --- a/src/prover/types.rs +++ b/src/prover/types.rs @@ -56,4 +56,4 @@ impl Default for CircuitType { fn default() -> Self { Self::Undefined } -} \ No newline at end of file +} From f289997d11fbc11a1a2f90553fb0f9a086447340 Mon Sep 17 00:00:00 2001 From: Morty Date: Tue, 7 Jan 2025 01:08:54 +0800 Subject: [PATCH 07/42] remove unused config fields --- src/config.rs | 6 ------ 1 file changed, 6 deletions(-) diff --git a/src/config.rs b/src/config.rs index 115cf4c..433cd31 100644 --- a/src/config.rs +++ b/src/config.rs @@ -54,14 +54,8 @@ pub struct CloudProverConfig { #[derive(Debug, Serialize, Deserialize, Clone)] pub struct LocalProverConfig { - pub prover_name: String, - pub keystore_path: String, - pub keystore_password: String, - pub db_path: String, pub low_version_circuit: CircuitConfig, pub high_version_circuit: CircuitConfig, - pub coordinator: CoordinatorConfig, - pub l2geth: Option, } #[derive(Debug, Serialize, Deserialize, Clone)] From 2dfae6305d339f5467c2aeda094cd179d412e928 Mon Sep 17 00:00:00 2001 From: Morty Date: Tue, 7 Jan 2025 01:18:16 +0800 Subject: [PATCH 08/42] update config file --- conf/config.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/conf/config.json b/conf/config.json index 2f67aff..715cfe0 100644 --- a/conf/config.json +++ b/conf/config.json @@ -20,6 +20,18 @@ "retry_count": 3, "retry_wait_time_sec": 5, "connection_timeout_sec": 60 + }, + "local": { + "low_version_circuit": { + "hard_fork_name": "bernoulli", + "params_path": "params", + "assets_path": "assets" + }, + "high_version_circuit": { + "hard_fork_name": "curie", + "params_path": "params", + "assets_path": "assets" + }, } }, "db_path": "db" From 4dab63a1d84ba608a263b744caad45395eca277a Mon Sep 17 00:00:00 2001 From: Morty Date: Tue, 7 Jan 2025 01:24:48 +0800 Subject: [PATCH 09/42] update config file --- conf/config.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conf/config.json b/conf/config.json index 715cfe0..bd565d3 100644 --- a/conf/config.json +++ b/conf/config.json @@ -31,7 +31,7 @@ "hard_fork_name": "curie", "params_path": "params", "assets_path": "assets" - }, + } } }, "db_path": "db" From c52ccdcdb8869fcf9afd706632f28ff0727693b1 Mon Sep 17 00:00:00 2001 From: Morty <70688412+yiweichi@users.noreply.github.com> Date: Thu, 9 Jan 2025 01:28:06 +0800 Subject: [PATCH 10/42] Update src/config.rs Co-authored-by: georgehao --- src/config.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/src/config.rs b/src/config.rs index 433cd31..876921c 100644 --- a/src/config.rs +++ b/src/config.rs @@ -118,6 +118,7 @@ impl Config { let values_vec: Vec<&str> = val .trim_matches(|c| c == '[' || c == ']') .split(',') + .map(|s| s.trim()) .collect(); self.prover.circuit_types = values_vec From c319139a9756572d73c985ba6ca79c2f02d3d47e Mon Sep 17 00:00:00 2001 From: Morty Date: Thu, 9 Jan 2025 02:03:57 +0800 Subject: [PATCH 11/42] fix: comments --- src/config.rs | 63 +++++-------------------------------------- src/prover/builder.rs | 3 +-- src/prover/types.rs | 9 ++----- 3 files changed, 9 insertions(+), 66 deletions(-) diff --git a/src/config.rs b/src/config.rs index 433cd31..7007c9c 100644 --- a/src/config.rs +++ b/src/config.rs @@ -1,5 +1,5 @@ use crate::prover::CircuitType; -use anyhow::{bail, Result}; +use anyhow::{anyhow, Result}; use dotenv::dotenv; use serde::{Deserialize, Serialize}; use serde_json; @@ -73,7 +73,7 @@ impl Config { where R: std::io::Read, { - serde_json::from_reader(reader).map_err(|e| anyhow::anyhow!(e)) + serde_json::from_reader(reader).map_err(|e| anyhow!(e)) } pub fn from_file(file_name: String) -> Result { @@ -91,7 +91,7 @@ impl Config { std::env::var_os(key) .map(|val| { val.to_str() - .ok_or_else(|| anyhow::anyhow!("{key} env var is not valid UTF-8")) + .ok_or_else(|| anyhow!("{key} env var is not valid UTF-8")) .map(String::from) }) .transpose() @@ -122,11 +122,10 @@ impl Config { self.prover.circuit_types = values_vec .iter() - .map(move |value| match value.parse::() { + .map(|value| match value.parse::() { Ok(num) => CircuitType::from_u8(num), Err(e) => { - eprintln!("Failed to parse circuit type: {}", e); - std::process::exit(1); + panic!("Failed to parse circuit type: {}", e); } }) .collect::>(); @@ -157,7 +156,7 @@ impl LocalProverConfig { where R: std::io::Read, { - serde_json::from_reader(reader).map_err(|e| anyhow::anyhow!(e)) + serde_json::from_reader(reader).map_err(|e| anyhow!(e)) } pub fn from_file(file_name: String) -> Result { @@ -165,53 +164,3 @@ impl LocalProverConfig { LocalProverConfig::from_reader(&file) } } - -static SCROLL_PROVER_ASSETS_DIR_ENV_NAME: &str = "SCROLL_PROVER_ASSETS_DIR"; -static mut SCROLL_PROVER_ASSETS_DIRS: Vec = vec![]; - -#[derive(Debug)] -pub struct AssetsDirEnvConfig {} - -impl AssetsDirEnvConfig { - pub fn init() -> Result<()> { - let value = std::env::var(SCROLL_PROVER_ASSETS_DIR_ENV_NAME)?; - let dirs: Vec<&str> = value.split(',').collect(); - if dirs.len() != 2 { - bail!("env variable SCROLL_PROVER_ASSETS_DIR value must be 2 parts seperated by comma.") - } - unsafe { - SCROLL_PROVER_ASSETS_DIRS = dirs.into_iter().map(|s| s.to_string()).collect(); - log::info!( - "init SCROLL_PROVER_ASSETS_DIRS: {:?}", - SCROLL_PROVER_ASSETS_DIRS - ); - } - Ok(()) - } - - pub fn enable_first() { - unsafe { - log::info!( - "set env {SCROLL_PROVER_ASSETS_DIR_ENV_NAME} to {}", - &SCROLL_PROVER_ASSETS_DIRS[0] - ); - std::env::set_var( - SCROLL_PROVER_ASSETS_DIR_ENV_NAME, - &SCROLL_PROVER_ASSETS_DIRS[0], - ); - } - } - - pub fn enable_second() { - unsafe { - log::info!( - "set env {SCROLL_PROVER_ASSETS_DIR_ENV_NAME} to {}", - &SCROLL_PROVER_ASSETS_DIRS[1] - ); - std::env::set_var( - SCROLL_PROVER_ASSETS_DIR_ENV_NAME, - &SCROLL_PROVER_ASSETS_DIRS[1], - ); - } - } -} diff --git a/src/prover/builder.rs b/src/prover/builder.rs index b6a6f2e..c6b6e69 100644 --- a/src/prover/builder.rs +++ b/src/prover/builder.rs @@ -68,12 +68,11 @@ impl ProverBuilder { let key_signers = key_signers.map_err(|e| anyhow::anyhow!("cannot create key_signer, err: {e}"))?; - let circuit_types_cloned = self.cfg.prover.circuit_types.clone(); let coordinator_clients: Result, _> = (0..self.cfg.prover.n_workers) .map(|i| { CoordinatorClient::new( self.cfg.coordinator.clone(), - circuit_types_cloned.clone(), + self.cfg.prover.circuit_types.clone(), get_vk_response.vks.clone(), self.cfg.prover.circuit_version.clone(), format!("{}{}", self.cfg.prover_name_prefix, i), diff --git a/src/prover/types.rs b/src/prover/types.rs index 3403170..ba0bf19 100644 --- a/src/prover/types.rs +++ b/src/prover/types.rs @@ -1,7 +1,8 @@ use serde::{Deserialize, Deserializer, Serialize, Serializer}; -#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)] +#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Default)] pub enum CircuitType { + #[default] Undefined, Chunk, Batch, @@ -51,9 +52,3 @@ impl<'de> Deserialize<'de> for CircuitType { Ok(CircuitType::from_u8(v)) } } - -impl Default for CircuitType { - fn default() -> Self { - Self::Undefined - } -} From 61bbbe1f5e28ae6da4ca2c161f830c8e48f9483b Mon Sep 17 00:00:00 2001 From: Morty Date: Thu, 9 Jan 2025 02:25:12 +0800 Subject: [PATCH 12/42] feat: add default n_workers --- conf/config.json | 38 -------------------------------------- conf/config_cloud.json | 27 +++++++++++++++++++++++++++ conf/config_local.json | 31 +++++++++++++++++++++++++++++++ examples/local.rs | 2 +- src/config.rs | 16 +++++++++------- 5 files changed, 68 insertions(+), 46 deletions(-) delete mode 100644 conf/config.json create mode 100644 conf/config_cloud.json create mode 100644 conf/config_local.json diff --git a/conf/config.json b/conf/config.json deleted file mode 100644 index bd565d3..0000000 --- a/conf/config.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "prover_name_prefix": "cloud_prover_", - "keys_dir": "keys", - "coordinator": { - "base_url": "https://coordinator-api.scrollsdk", - "retry_count": 3, - "retry_wait_time_sec": 5, - "connection_timeout_sec": 60 - }, - "l2geth": { - "endpoint": "https://l2-rpc.scrollsdk" - }, - "prover": { - "circuit_type": [3], - "circuit_version": "v0.13.1", - "n_workers": 1, - "cloud": { - "base_url": "", - "api_key": "", - "retry_count": 3, - "retry_wait_time_sec": 5, - "connection_timeout_sec": 60 - }, - "local": { - "low_version_circuit": { - "hard_fork_name": "bernoulli", - "params_path": "params", - "assets_path": "assets" - }, - "high_version_circuit": { - "hard_fork_name": "curie", - "params_path": "params", - "assets_path": "assets" - } - } - }, - "db_path": "db" -} diff --git a/conf/config_cloud.json b/conf/config_cloud.json new file mode 100644 index 0000000..baf5777 --- /dev/null +++ b/conf/config_cloud.json @@ -0,0 +1,27 @@ +{ + "prover_name_prefix": "cloud_prover_", + "keys_dir": "keys", + "coordinator": { + "base_url": "https://coordinator-api.scrollsdk", + "retry_count": 3, + "retry_wait_time_sec": 5, + "connection_timeout_sec": 60 + }, + "l2geth": { + "endpoint": "https://l2-rpc.scrollsdk" + }, + "prover": { + "circuit_type": [1,2,3], + "circuit_version": "v0.13.1", + "n_workers": 1, + "cloud": { + "base_url": "", + "api_key": "", + "retry_count": 3, + "retry_wait_time_sec": 5, + "connection_timeout_sec": 60 + } + }, + "db_path": "db" + } + \ No newline at end of file diff --git a/conf/config_local.json b/conf/config_local.json new file mode 100644 index 0000000..6fc1b62 --- /dev/null +++ b/conf/config_local.json @@ -0,0 +1,31 @@ +{ + "prover_name_prefix": "local_prover_", + "keys_dir": "keys", + "coordinator": { + "base_url": "https://coordinator-api.scrollsdk", + "retry_count": 3, + "retry_wait_time_sec": 5, + "connection_timeout_sec": 60 + }, + "l2geth": { + "endpoint": "https://l2-rpc.scrollsdk" + }, + "prover": { + "circuit_type": [1,2,3], + "circuit_version": "v0.13.1", + "local": { + "low_version_circuit": { + "hard_fork_name": "bernoulli", + "params_path": "params", + "assets_path": "assets" + }, + "high_version_circuit": { + "hard_fork_name": "curie", + "params_path": "params", + "assets_path": "assets" + } + } + }, + "db_path": "db" + } + \ No newline at end of file diff --git a/examples/local.rs b/examples/local.rs index c98034a..7b020b2 100644 --- a/examples/local.rs +++ b/examples/local.rs @@ -50,7 +50,7 @@ async fn main() -> anyhow::Result<()> { init_tracing(); let args = Args::parse(); - let cfg: Config = Config::from_file(args.config_file)?; + let cfg: Config = Config::from_file_and_env(args.config_file)?; let local_prover = LocalProver::new(cfg.prover.local.clone().unwrap()); let prover = ProverBuilder::new(cfg) .with_proving_service(Box::new(local_prover)) diff --git a/src/config.rs b/src/config.rs index 6804f8b..6910b53 100644 --- a/src/config.rs +++ b/src/config.rs @@ -17,10 +17,6 @@ pub struct Config { pub health_listener_addr: String, } -fn default_health_listener_addr() -> String { - "0.0.0.0:80".to_string() -} - #[derive(Debug, Serialize, Deserialize, Clone)] pub struct CoordinatorConfig { pub base_url: String, @@ -38,6 +34,7 @@ pub struct L2GethConfig { pub struct ProverConfig { pub circuit_types: Vec, pub circuit_version: String, + #[serde(default = "default_n_workers")] pub n_workers: usize, pub cloud: Option, pub local: Option, @@ -68,6 +65,14 @@ pub struct CircuitConfig { #[derive(Debug, Serialize, Deserialize, Clone)] pub struct DbConfig {} +fn default_health_listener_addr() -> String { + "0.0.0.0:80".to_string() +} + +fn default_n_workers() -> usize { + 1 +} + impl Config { pub fn from_reader(reader: R) -> Result where @@ -131,9 +136,6 @@ impl Config { }) .collect::>(); } - if let Some(val) = Self::get_env_var("N_WORKERS")? { - self.prover.n_workers = val.parse()?; - } if let Some(val) = Self::get_env_var("PROVING_SERVICE_BASE_URL")? { if let Some(cloud) = &mut self.prover.cloud { cloud.base_url = val; From f8f2ecd649ba6221397cb9b575af6386e47fca97 Mon Sep 17 00:00:00 2001 From: Morty Date: Thu, 9 Jan 2025 19:29:04 +0800 Subject: [PATCH 13/42] update get prover version --- src/coordinator_handler/coordinator_client.rs | 5 +---- src/prover/builder.rs | 1 - src/utils.rs | 19 ++++++++++++++++--- 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/src/coordinator_handler/coordinator_client.rs b/src/coordinator_handler/coordinator_client.rs index ff9ab95..de216d4 100644 --- a/src/coordinator_handler/coordinator_client.rs +++ b/src/coordinator_handler/coordinator_client.rs @@ -8,7 +8,6 @@ use tokio::sync::{Mutex, MutexGuard}; pub struct CoordinatorClient { circuit_types: Vec, vks: Vec, - circuit_version: String, pub prover_name: String, pub key_signer: KeySigner, api: Api, @@ -20,7 +19,6 @@ impl CoordinatorClient { cfg: CoordinatorConfig, circuit_types: Vec, vks: Vec, - circuit_version: String, prover_name: String, key_signer: KeySigner, ) -> anyhow::Result { @@ -28,7 +26,6 @@ impl CoordinatorClient { let client = Self { circuit_types, vks, - circuit_version, prover_name, key_signer, api, @@ -120,7 +117,7 @@ impl CoordinatorClient { let login_message = LoginMessage { challenge: login_response_data.token.clone(), prover_name: self.prover_name.clone(), - prover_version: get_version(&self.circuit_version).to_string(), + prover_version: get_version().to_string(), prover_types, vks: self.vks.clone(), }; diff --git a/src/prover/builder.rs b/src/prover/builder.rs index c6b6e69..6f32f8b 100644 --- a/src/prover/builder.rs +++ b/src/prover/builder.rs @@ -74,7 +74,6 @@ impl ProverBuilder { self.cfg.coordinator.clone(), self.cfg.prover.circuit_types.clone(), get_vk_response.vks.clone(), - self.cfg.prover.circuit_version.clone(), format!("{}{}", self.cfg.prover_name_prefix, i), key_signers[i].clone(), ) diff --git a/src/utils.rs b/src/utils.rs index 760e018..c67643e 100644 --- a/src/utils.rs +++ b/src/utils.rs @@ -1,9 +1,22 @@ use tracing_subscriber::filter::{EnvFilter, LevelFilter}; -const SDK_VERSION: &str = env!("CARGO_PKG_VERSION"); +use std::cell::OnceCell; -pub fn get_version(circuit_version: &str) -> String { - format!("sdk-v{}-{}", SDK_VERSION, circuit_version) +static DEFAULT_COMMIT: &str = "unknown"; +static mut VERSION: OnceCell = OnceCell::new(); + +pub const TAG: &str = "v0.0.0"; +pub const DEFAULT_ZK_VERSION: &str = "000000-000000"; + +fn init_version() -> String { + let commit = option_env!("GIT_REV").unwrap_or(DEFAULT_COMMIT); + let tag = option_env!("GO_TAG").unwrap_or(TAG); + let zk_version = option_env!("ZK_VERSION").unwrap_or(DEFAULT_ZK_VERSION); + format!("{tag}-{commit}-{zk_version}") +} + +pub fn get_version() -> String { + unsafe { VERSION.get_or_init(init_version).clone() } } pub fn init_tracing() { From e29b98d441b4c8fdcf4c2497da83f809ca202c8e Mon Sep 17 00:00:00 2001 From: Morty Date: Fri, 10 Jan 2025 01:53:32 +0800 Subject: [PATCH 14/42] update get prover name --- src/prover/builder.rs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/prover/builder.rs b/src/prover/builder.rs index 6f32f8b..6a74764 100644 --- a/src/prover/builder.rs +++ b/src/prover/builder.rs @@ -70,11 +70,17 @@ impl ProverBuilder { let coordinator_clients: Result, _> = (0..self.cfg.prover.n_workers) .map(|i| { + let prover_name = if self.proving_service.as_ref().unwrap().is_local() { + self.cfg.prover_name_prefix.clone() + } else { + format!("{}{}", self.cfg.prover_name_prefix, i) + }; + CoordinatorClient::new( self.cfg.coordinator.clone(), self.cfg.prover.circuit_types.clone(), get_vk_response.vks.clone(), - format!("{}{}", self.cfg.prover_name_prefix, i), + prover_name, key_signers[i].clone(), ) }) From 79a1c05bdb476fdacecfd52ffcbdf26942d09ebe Mon Sep 17 00:00:00 2001 From: Morty Date: Fri, 10 Jan 2025 17:58:14 +0800 Subject: [PATCH 15/42] remove ds_store --- .DS_Store | Bin 6148 -> 0 bytes .gitignore | 2 ++ src/.DS_Store | Bin 6148 -> 0 bytes 3 files changed, 2 insertions(+) delete mode 100644 .DS_Store delete mode 100644 src/.DS_Store diff --git a/.DS_Store b/.DS_Store deleted file mode 100644 index b5d64861c8ba275f77d57d8f598377d812c8d97f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeHKu};G<5IwhnR=|J|LJSO%kYGbFu!pLwEd2mVTA)CyRI~_KAZ21;f`OS2;0F+F zh>ahCg&#oTooyPsX}f_C@=5k{?#{l~m&9&}NED8$D@2n-lt*Lq#?bXKj&n;{MtkOf zg4d|;u9PZKqnXNd4yS-q;4dn`@2*Env`c%`w%*_DM8#rQk3#tJx6>E%JDry` zJ6;_cZ`O>xVPqLoDfeBMYIH=QRh<^j(itX)#qj=f>RfW@S*H;tOa^CJe5lNPMyUcO zTXaZmYT0aj-qWnO$>r|4%cUnLVKOMk<`F9%Rf@pnfVSz-=8?ISJdC)>W8=Z#VdW$| z2Ibg1_&mU-zfC95qd`roW89<3#8bZ%2f?tWZrSAuD4YU0LWa6d|j_@5^)&fkM|i1)Ku50$FuA$>;z2;O~EX zlDl#WI0gQd0>UeniUs^6eYU249G|s5S{aRv^J0Z^3Oaop%K;z7vuM%~^LYRaG{y?y Qfw?~dQU=#K1%6e5FK_+f2LJ#7 diff --git a/.gitignore b/.gitignore index 640ba97..88ec6ff 100644 --- a/.gitignore +++ b/.gitignore @@ -27,3 +27,5 @@ db/ *.lock *.tgz .vscode/ + +.DS_Store \ No newline at end of file diff --git a/src/.DS_Store b/src/.DS_Store deleted file mode 100644 index 595abd6d3d31acec92cf918d531dcc5d63ecf38a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeHKQA)!=5S^_-A|e$1@k?@r-XNAJ_}v3o+lUp?ZV2kHIf56_V|WEm;HO6re6usw z#8^-S6`6tAx0#*U%)W(8hKStoG9M82i719L_BJqlAiU1nk)B$3(S<#7I;RDl&;|L9 zw;BE-1AKQoG{t>+s;GH?6&=$Ice#MIpi`=fv%zTU=cOFu=<)NBbDw3C!cPzpZ#~^U zZ(rZhR(HdNcRE=z!>;f47ey8WkVcEYis9lTx%2P7|Ozawcs)YlTeD`%cXc18U*%)C%{y(7K8<2 OKLUXU8;pS;W#9!PRbov5 From 1a1748f475eac0e328703d36f3a11817e3c86e9b Mon Sep 17 00:00:00 2001 From: Morty Date: Mon, 13 Jan 2025 02:17:40 +0800 Subject: [PATCH 16/42] add prover_provider_type --- conf/config_cloud.json | 2 +- conf/config_local.json | 2 +- src/coordinator_handler/coordinator_client.rs | 12 ++++- src/coordinator_handler/types.rs | 6 ++- src/prover/builder.rs | 12 ++++- src/prover/types.rs | 49 +++++++++++++++++++ src/utils.rs | 5 ++ 7 files changed, 81 insertions(+), 7 deletions(-) diff --git a/conf/config_cloud.json b/conf/config_cloud.json index baf5777..d9e620e 100644 --- a/conf/config_cloud.json +++ b/conf/config_cloud.json @@ -1,5 +1,5 @@ { - "prover_name_prefix": "cloud_prover_", + "prover_name_prefix": "prover_name", "keys_dir": "keys", "coordinator": { "base_url": "https://coordinator-api.scrollsdk", diff --git a/conf/config_local.json b/conf/config_local.json index 6fc1b62..cdf3442 100644 --- a/conf/config_local.json +++ b/conf/config_local.json @@ -1,5 +1,5 @@ { - "prover_name_prefix": "local_prover_", + "prover_name_prefix": "prover_name", "keys_dir": "keys", "coordinator": { "base_url": "https://coordinator-api.scrollsdk", diff --git a/src/coordinator_handler/coordinator_client.rs b/src/coordinator_handler/coordinator_client.rs index de216d4..df48f03 100644 --- a/src/coordinator_handler/coordinator_client.rs +++ b/src/coordinator_handler/coordinator_client.rs @@ -2,13 +2,18 @@ use super::{ api::Api, error::ErrorCode, GetTaskRequest, GetTaskResponseData, KeySigner, LoginMessage, LoginRequest, Response, SubmitProofRequest, SubmitProofResponseData, }; -use crate::{config::CoordinatorConfig, prover::CircuitType, utils::get_version}; +use crate::{ + config::CoordinatorConfig, + prover::{CircuitType, ProverProviderType}, + utils::get_version, +}; use tokio::sync::{Mutex, MutexGuard}; pub struct CoordinatorClient { circuit_types: Vec, vks: Vec, pub prover_name: String, + pub prover_provider_type: ProverProviderType, pub key_signer: KeySigner, api: Api, token: Mutex>, @@ -20,6 +25,7 @@ impl CoordinatorClient { circuit_types: Vec, vks: Vec, prover_name: String, + prover_provider_type: ProverProviderType, key_signer: KeySigner, ) -> anyhow::Result { let api = Api::new(cfg)?; @@ -27,6 +33,7 @@ impl CoordinatorClient { circuit_types, vks, prover_name, + prover_provider_type, key_signer, api, token: Mutex::new(None), @@ -116,8 +123,9 @@ impl CoordinatorClient { let login_message = LoginMessage { challenge: login_response_data.token.clone(), - prover_name: self.prover_name.clone(), prover_version: get_version().to_string(), + prover_name: self.prover_name.clone(), + prover_provider_type: self.prover_provider_type, prover_types, vks: self.vks.clone(), }; diff --git a/src/coordinator_handler/types.rs b/src/coordinator_handler/types.rs index 85981f6..138bdb5 100644 --- a/src/coordinator_handler/types.rs +++ b/src/coordinator_handler/types.rs @@ -1,5 +1,8 @@ use super::error::ErrorCode; -use crate::{prover::CircuitType, tracing_handler::CommonHash}; +use crate::{ + prover::{CircuitType, ProverProviderType}, + tracing_handler::CommonHash, +}; use rlp::{Encodable, RlpStream}; use serde::{Deserialize, Deserializer, Serialize, Serializer}; @@ -15,6 +18,7 @@ pub struct LoginMessage { pub challenge: String, pub prover_name: String, pub prover_version: String, + pub prover_provider_type: ProverProviderType, pub prover_types: Vec, pub vks: Vec, } diff --git a/src/prover/builder.rs b/src/prover/builder.rs index 6a74764..5c8f238 100644 --- a/src/prover/builder.rs +++ b/src/prover/builder.rs @@ -1,4 +1,4 @@ -use super::CircuitType; +use super::{CircuitType, ProverProviderType}; use crate::{ config::Config, coordinator_handler::{CoordinatorClient, KeySigner}, @@ -8,6 +8,7 @@ use crate::{ Prover, }, tracing_handler::L2gethClient, + utils::format_cloud_prover_name, }; use std::path::PathBuf; @@ -59,6 +60,12 @@ impl ProverBuilder { anyhow::bail!("failed to get vk: {}", error); } + let prover_provider_type = if self.proving_service.as_ref().unwrap().is_local() { + ProverProviderType::Internal + } else { + ProverProviderType::External + }; + let key_signers: Result, _> = (0..self.cfg.prover.n_workers) .map(|i| { let key_path = PathBuf::from(&self.cfg.keys_dir).join(i.to_string()); @@ -73,7 +80,7 @@ impl ProverBuilder { let prover_name = if self.proving_service.as_ref().unwrap().is_local() { self.cfg.prover_name_prefix.clone() } else { - format!("{}{}", self.cfg.prover_name_prefix, i) + format_cloud_prover_name(self.cfg.prover_name_prefix.clone(), i) }; CoordinatorClient::new( @@ -81,6 +88,7 @@ impl ProverBuilder { self.cfg.prover.circuit_types.clone(), get_vk_response.vks.clone(), prover_name, + prover_provider_type, key_signers[i].clone(), ) }) diff --git a/src/prover/types.rs b/src/prover/types.rs index ba0bf19..baace85 100644 --- a/src/prover/types.rs +++ b/src/prover/types.rs @@ -52,3 +52,52 @@ impl<'de> Deserialize<'de> for CircuitType { Ok(CircuitType::from_u8(v)) } } + +#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Default)] +pub enum ProverProviderType { + #[default] + Undefined, + Internal, + External, +} + +impl ProverProviderType { + pub fn from_u8(v: u8) -> Self { + match v { + 1 => ProverProviderType::Internal, + 2 => ProverProviderType::External, + _ => ProverProviderType::Undefined, + } + } + + pub fn to_u8(self) -> u8 { + match self { + ProverProviderType::Undefined => 0, + ProverProviderType::Internal => 1, + ProverProviderType::External => 2, + } + } +} + +impl Serialize for ProverProviderType { + fn serialize(&self, serializer: S) -> Result + where + S: Serializer, + { + match *self { + ProverProviderType::Undefined => serializer.serialize_u8(0), + ProverProviderType::Internal => serializer.serialize_u8(1), + ProverProviderType::External => serializer.serialize_u8(2), + } + } +} + +impl<'de> Deserialize<'de> for ProverProviderType { + fn deserialize(deserializer: D) -> Result + where + D: Deserializer<'de>, + { + let v: u8 = u8::deserialize(deserializer)?; + Ok(ProverProviderType::from_u8(v)) + } +} diff --git a/src/utils.rs b/src/utils.rs index c67643e..7248f45 100644 --- a/src/utils.rs +++ b/src/utils.rs @@ -32,3 +32,8 @@ pub fn init_tracing() { .try_init() .expect("Failed to initialize tracing subscriber"); } + +pub fn format_cloud_prover_name(provider_name: String, index: usize) -> String { + // note the name of cloud prover is in fact in the format of "cloud_prover_{provider-name}_index", + format!("cloud_prover_{}_{}", provider_name, index) +} From ea4b1e37af52dc6ebb3684374a35ea96be8cc4e8 Mon Sep 17 00:00:00 2001 From: Morty Date: Tue, 14 Jan 2025 19:02:37 +0800 Subject: [PATCH 17/42] rm ds_store --- .gitignore | 2 -- src/coordinator_handler/coordinator_client.rs | 6 +----- 2 files changed, 1 insertion(+), 7 deletions(-) diff --git a/.gitignore b/.gitignore index 88ec6ff..640ba97 100644 --- a/.gitignore +++ b/.gitignore @@ -27,5 +27,3 @@ db/ *.lock *.tgz .vscode/ - -.DS_Store \ No newline at end of file diff --git a/src/coordinator_handler/coordinator_client.rs b/src/coordinator_handler/coordinator_client.rs index df48f03..aa4945e 100644 --- a/src/coordinator_handler/coordinator_client.rs +++ b/src/coordinator_handler/coordinator_client.rs @@ -2,11 +2,7 @@ use super::{ api::Api, error::ErrorCode, GetTaskRequest, GetTaskResponseData, KeySigner, LoginMessage, LoginRequest, Response, SubmitProofRequest, SubmitProofResponseData, }; -use crate::{ - config::CoordinatorConfig, - prover::{CircuitType, ProverProviderType}, - utils::get_version, -}; +use crate::{config::CoordinatorConfig, prover::{CircuitType, ProverProviderType}, utils::get_version}; use tokio::sync::{Mutex, MutexGuard}; pub struct CoordinatorClient { From d9763369f6e795da1fc2d0e414d786913740720e Mon Sep 17 00:00:00 2001 From: Morty Date: Tue, 14 Jan 2025 19:16:31 +0800 Subject: [PATCH 18/42] Revert "rm ds_store" This reverts commit ea4b1e37af52dc6ebb3684374a35ea96be8cc4e8. --- .gitignore | 2 ++ src/coordinator_handler/coordinator_client.rs | 6 +++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 640ba97..88ec6ff 100644 --- a/.gitignore +++ b/.gitignore @@ -27,3 +27,5 @@ db/ *.lock *.tgz .vscode/ + +.DS_Store \ No newline at end of file diff --git a/src/coordinator_handler/coordinator_client.rs b/src/coordinator_handler/coordinator_client.rs index aa4945e..df48f03 100644 --- a/src/coordinator_handler/coordinator_client.rs +++ b/src/coordinator_handler/coordinator_client.rs @@ -2,7 +2,11 @@ use super::{ api::Api, error::ErrorCode, GetTaskRequest, GetTaskResponseData, KeySigner, LoginMessage, LoginRequest, Response, SubmitProofRequest, SubmitProofResponseData, }; -use crate::{config::CoordinatorConfig, prover::{CircuitType, ProverProviderType}, utils::get_version}; +use crate::{ + config::CoordinatorConfig, + prover::{CircuitType, ProverProviderType}, + utils::get_version, +}; use tokio::sync::{Mutex, MutexGuard}; pub struct CoordinatorClient { From 9d4dcfb76281c0d03b6c1646ae5181c9987b6684 Mon Sep 17 00:00:00 2001 From: Morty Date: Wed, 15 Jan 2025 02:13:14 +0800 Subject: [PATCH 19/42] feat: local prover task resume --- src/prover/mod.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/prover/mod.rs b/src/prover/mod.rs index 28b5d45..eaa681d 100644 --- a/src/prover/mod.rs +++ b/src/prover/mod.rs @@ -87,11 +87,15 @@ impl Prover { async fn handle_task(&self, coordinator_client: &CoordinatorClient) -> anyhow::Result<()> { let public_key = coordinator_client.key_signer.get_public_key(); - if let (Some(coordinator_task), Some(proving_task_id)) = ( + if let (Some(coordinator_task), Some(mut proving_task_id)) = ( self.db .get_coordinator_task_by_public_key(public_key.clone()), self.db.get_proving_task_id_by_public_key(public_key), ) { + if self.proving_service.is_local() { + let proving_task = self.request_proving(&coordinator_task).await?; + proving_task_id = proving_task.task_id + } return self .handle_proving_progress(coordinator_client, &coordinator_task, proving_task_id) .await; From e23bb7d19a4f11e85b604b54cc93f929827fe62a Mon Sep 17 00:00:00 2001 From: Morty <70688412+yiweichi@users.noreply.github.com> Date: Wed, 15 Jan 2025 18:18:10 +0800 Subject: [PATCH 20/42] fix: login message rlp encode(#55) --- src/coordinator_handler/types.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/coordinator_handler/types.rs b/src/coordinator_handler/types.rs index 138bdb5..a60fef4 100644 --- a/src/coordinator_handler/types.rs +++ b/src/coordinator_handler/types.rs @@ -16,8 +16,8 @@ pub struct Response { #[derive(Serialize, Deserialize)] pub struct LoginMessage { pub challenge: String, - pub prover_name: String, pub prover_version: String, + pub prover_name: String, pub prover_provider_type: ProverProviderType, pub prover_types: Vec, pub vks: Vec, @@ -25,11 +25,12 @@ pub struct LoginMessage { impl Encodable for LoginMessage { fn rlp_append(&self, s: &mut RlpStream) { - let num_fields = 5; + let num_fields = 6; s.begin_list(num_fields); s.append(&self.challenge); s.append(&self.prover_version); s.append(&self.prover_name); + s.append(&self.prover_provider_type.to_u8()); // The ProverType in go side is an type alias of uint8 // A uint8 slice is treated as a string when doing the rlp encoding let prover_types = self From f4f8d14369b0fd57cf0d1d15dc59a5b049cdd5bb Mon Sep 17 00:00:00 2001 From: Morty Date: Wed, 15 Jan 2025 19:20:30 +0800 Subject: [PATCH 21/42] fix: local prover task cache & db refactor --- src/db.rs | 34 ++++++++++++++++++++++++++++------ src/prover/mod.rs | 38 ++++++++++++++++++++------------------ 2 files changed, 48 insertions(+), 24 deletions(-) diff --git a/src/db.rs b/src/db.rs index c1785ac..39c02b3 100644 --- a/src/db.rs +++ b/src/db.rs @@ -11,7 +11,29 @@ impl Db { Ok(Self { db }) } - pub fn get_coordinator_task_by_public_key( + pub fn get_task(&self, public_key: String) -> (Option, Option) { + ( + self.get_coordinator_task_by_public_key(public_key.clone()), + self.get_proving_task_id_by_public_key(public_key), + ) + } + + pub fn set_task( + &self, + public_key: String, + coordinator_task: &GetTaskResponseData, + proving_task_id: String, + ) { + self.set_coordinator_task_by_public_key(public_key.clone(), coordinator_task); + self.set_proving_task_id_by_public_key(public_key, proving_task_id); + } + + pub fn delete_task(&self, public_key: String) { + self.delete_coordinator_task_by_public_key(public_key.clone()); + self.delete_proving_task_id_by_public_key(public_key); + } + + fn get_coordinator_task_by_public_key( &self, public_key: String, ) -> Option { @@ -22,14 +44,14 @@ impl Db { .and_then(|v| serde_json::from_slice(v).ok()) } - pub fn get_proving_task_id_by_public_key(&self, public_key: String) -> Option { + fn get_proving_task_id_by_public_key(&self, public_key: String) -> Option { self.db .get(fmt_proving_task_id_key(public_key)) .ok()? .and_then(|v| String::from_utf8(v).ok()) } - pub fn set_coordinator_task_by_public_key( + fn set_coordinator_task_by_public_key( &self, public_key: String, coordinator_task: &GetTaskResponseData, @@ -38,18 +60,18 @@ impl Db { .map(|bytes| self.db.put(fmt_coordinator_task_key(public_key), bytes)); } - pub fn set_proving_task_id_by_public_key(&self, public_key: String, proving_task_id: String) { + fn set_proving_task_id_by_public_key(&self, public_key: String, proving_task_id: String) { let _ = self.db.put( fmt_proving_task_id_key(public_key), proving_task_id.as_bytes(), ); } - pub fn delete_coordinator_task_by_public_key(&self, public_key: String) { + fn delete_coordinator_task_by_public_key(&self, public_key: String) { let _ = self.db.delete(fmt_coordinator_task_key(public_key)); } - pub fn delete_proving_task_id_by_public_key(&self, public_key: String) { + fn delete_proving_task_id_by_public_key(&self, public_key: String) { let _ = self.db.delete(fmt_proving_task_id_key(public_key)); } } diff --git a/src/prover/mod.rs b/src/prover/mod.rs index eaa681d..a66bf2a 100644 --- a/src/prover/mod.rs +++ b/src/prover/mod.rs @@ -87,13 +87,13 @@ impl Prover { async fn handle_task(&self, coordinator_client: &CoordinatorClient) -> anyhow::Result<()> { let public_key = coordinator_client.key_signer.get_public_key(); - if let (Some(coordinator_task), Some(mut proving_task_id)) = ( - self.db - .get_coordinator_task_by_public_key(public_key.clone()), - self.db.get_proving_task_id_by_public_key(public_key), - ) { + if let (Some(coordinator_task), Some(mut proving_task_id)) = + self.db.get_task(public_key.clone()) + { if self.proving_service.is_local() { - let proving_task = self.request_proving(&coordinator_task).await?; + let proving_task = self + .request_proving(&coordinator_task, public_key.clone()) + .await?; proving_task_id = proving_task.task_id } return self @@ -102,7 +102,7 @@ impl Prover { } let coordinator_task = self.get_coordinator_task(coordinator_client).await?; - let proving_task = self.request_proving(&coordinator_task).await?; + let proving_task = self.request_proving(&coordinator_task, public_key).await?; self.handle_proving_progress(coordinator_client, &coordinator_task, proving_task.task_id) .await } @@ -130,7 +130,16 @@ impl Prover { async fn request_proving( &self, coordinator_task: &GetTaskResponseData, + public_key: String, ) -> anyhow::Result { + if self.proving_service.is_local() { + self.db.set_task( + public_key.clone(), + coordinator_task, + coordinator_task.task_id.clone(), + ); + } + let proving_input = self.build_proving_input(coordinator_task).await?; let proving_task = self.proving_service.prove(proving_input).await; @@ -178,10 +187,9 @@ impl Prover { status = ?task.status, "Task status update" ); - self.db - .set_coordinator_task_by_public_key(public_key.clone(), coordinator_task); - self.db.set_proving_task_id_by_public_key( + self.db.set_task( public_key.clone(), + coordinator_task, proving_service_task_id.clone(), ); sleep(Duration::from_secs(WORKER_SLEEP_SEC)).await; @@ -203,10 +211,7 @@ impl Prover { None, ) .await?; - self.db - .delete_coordinator_task_by_public_key(public_key.clone()); - self.db - .delete_proving_task_id_by_public_key(public_key.clone()); + self.db.delete_task(public_key.clone()); break; } TaskStatus::Failed => { @@ -228,10 +233,7 @@ impl Prover { Some(task_err), ) .await?; - self.db - .delete_coordinator_task_by_public_key(public_key.clone()); - self.db - .delete_proving_task_id_by_public_key(public_key.clone()); + self.db.delete_task(public_key.clone()); break; } } From 575423f55075d99530b2f8791d8ecddfded0c0ee Mon Sep 17 00:00:00 2001 From: Morty <70688412+yiweichi@users.noreply.github.com> Date: Thu, 16 Jan 2025 02:14:23 +0800 Subject: [PATCH 22/42] Apply suggestions from code review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Péter Garamvölgyi --- src/config.rs | 9 ++------- src/prover/types.rs | 7 ++----- 2 files changed, 4 insertions(+), 12 deletions(-) diff --git a/src/config.rs b/src/config.rs index 6910b53..a951241 100644 --- a/src/config.rs +++ b/src/config.rs @@ -65,13 +65,8 @@ pub struct CircuitConfig { #[derive(Debug, Serialize, Deserialize, Clone)] pub struct DbConfig {} -fn default_health_listener_addr() -> String { - "0.0.0.0:80".to_string() -} - -fn default_n_workers() -> usize { - 1 -} +const default_health_listener_addr: &str = "0.0.0.0:80"; +const default_n_workers: usize = 1; impl Config { pub fn from_reader(reader: R) -> Result diff --git a/src/prover/types.rs b/src/prover/types.rs index baace85..e22104d 100644 --- a/src/prover/types.rs +++ b/src/prover/types.rs @@ -54,6 +54,7 @@ impl<'de> Deserialize<'de> for CircuitType { } #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Default)] +#[repr(u8)] pub enum ProverProviderType { #[default] Undefined, @@ -71,11 +72,7 @@ impl ProverProviderType { } pub fn to_u8(self) -> u8 { - match self { - ProverProviderType::Undefined => 0, - ProverProviderType::Internal => 1, - ProverProviderType::External => 2, - } + self as u8 } } From b0ab0e1e74b57e8e5f2f505078197c6d457c6a17 Mon Sep 17 00:00:00 2001 From: Morty Date: Thu, 16 Jan 2025 04:11:10 +0800 Subject: [PATCH 23/42] Revert "Apply suggestions from code review" && refactor: ProverProviderType to_u8 This reverts commit 575423f55075d99530b2f8791d8ecddfded0c0ee. refactor: ProverProviderType to_u8 --- src/config.rs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/config.rs b/src/config.rs index a951241..6910b53 100644 --- a/src/config.rs +++ b/src/config.rs @@ -65,8 +65,13 @@ pub struct CircuitConfig { #[derive(Debug, Serialize, Deserialize, Clone)] pub struct DbConfig {} -const default_health_listener_addr: &str = "0.0.0.0:80"; -const default_n_workers: usize = 1; +fn default_health_listener_addr() -> String { + "0.0.0.0:80".to_string() +} + +fn default_n_workers() -> usize { + 1 +} impl Config { pub fn from_reader(reader: R) -> Result From 6fbd996eac426f230d21a1e925094951cc28982d Mon Sep 17 00:00:00 2001 From: Morty Date: Thu, 16 Jan 2025 04:33:05 +0800 Subject: [PATCH 24/42] refactor: ProverProviderType to_u8 --- src/coordinator_handler/types.rs | 2 +- src/prover/types.rs | 4 ---- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/src/coordinator_handler/types.rs b/src/coordinator_handler/types.rs index a60fef4..3a47873 100644 --- a/src/coordinator_handler/types.rs +++ b/src/coordinator_handler/types.rs @@ -30,7 +30,7 @@ impl Encodable for LoginMessage { s.append(&self.challenge); s.append(&self.prover_version); s.append(&self.prover_name); - s.append(&self.prover_provider_type.to_u8()); + s.append(&(self.prover_provider_type as u8)); // The ProverType in go side is an type alias of uint8 // A uint8 slice is treated as a string when doing the rlp encoding let prover_types = self diff --git a/src/prover/types.rs b/src/prover/types.rs index e22104d..24fa157 100644 --- a/src/prover/types.rs +++ b/src/prover/types.rs @@ -70,10 +70,6 @@ impl ProverProviderType { _ => ProverProviderType::Undefined, } } - - pub fn to_u8(self) -> u8 { - self as u8 - } } impl Serialize for ProverProviderType { From 4c65b38bae491beb86bf007a18a6c46e8b6ff31a Mon Sep 17 00:00:00 2001 From: Morty Date: Thu, 16 Jan 2025 16:27:20 +0800 Subject: [PATCH 25/42] test: add test for coordinator signature compatibility --- src/coordinator_handler/key_signer.rs | 10 +++++++ src/coordinator_handler/types.rs | 41 +++++++++++++++++++++++++++ 2 files changed, 51 insertions(+) diff --git a/src/coordinator_handler/key_signer.rs b/src/coordinator_handler/key_signer.rs index be93e54..c5ab112 100644 --- a/src/coordinator_handler/key_signer.rs +++ b/src/coordinator_handler/key_signer.rs @@ -58,6 +58,16 @@ impl KeySigner { }) } + pub fn new_from_secret_key(secret_key: &str) -> anyhow::Result { + let secret = hex::decode(secret_key).unwrap(); + let secret_key = SecretKey::from_bytes(secret.as_slice().into())?; + let signing_key = SigningKey::from(secret_key.clone()); + Ok(Self { + public_key: secret_key.public_key(), + signing_key, + }) + } + pub fn get_public_key(&self) -> String { let v: Vec = Vec::from(self.public_key.to_encoded_point(true).as_bytes()); buffer_to_hex(&v, false) diff --git a/src/coordinator_handler/types.rs b/src/coordinator_handler/types.rs index 3a47873..6ea3a38 100644 --- a/src/coordinator_handler/types.rs +++ b/src/coordinator_handler/types.rs @@ -177,3 +177,44 @@ impl<'de> Deserialize<'de> for ProofStatus { Ok(ProofStatus::from_u8(v)) } } + +#[cfg(test)] +mod tests { + use super::*; + use crate::{prover::types::ProverProviderType, coordinator_handler::KeySigner}; + + #[test] + fn test_prover_provider_type_encoding() { + // Test that ProverProviderType values match the coordinator's values + assert_eq!(ProverProviderType::Undefined as u8, 0); + assert_eq!(ProverProviderType::Internal as u8, 1); + assert_eq!(ProverProviderType::External as u8, 2); + } + + // This test uses the same private key as the coordinator's TestGenerateSignature + // to verify signature generation compatibility + #[test] + fn test_signature_compatibility() { + let private_key_hex = "8b8df68fddf7ee2724b79ccbd07799909d59b4dd4f4df3f6ecdc4fb8d56bdf4c"; + let key_signer = KeySigner::new_from_secret_key(&private_key_hex).unwrap(); + + let login_message = LoginMessage { + challenge: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MjQ4Mzg0ODUsIm9yaWdfaWF0IjoxNzI0ODM0ODg1LCJyYW5kb20iOiJ6QmdNZGstNGc4UzNUNTFrVEFsYk1RTXg2TGJ4SUs4czY3ejM2SlNuSFlJPSJ9.x9PvihhNx2w4_OX5uCrv8QJCNYVQkIi-K2k8XFXYmik".to_string(), + prover_version: "v4.4.45-37af5ef5-38a68e2-1c5093c".to_string(), + prover_name: "test".to_string(), + prover_provider_type: ProverProviderType::Internal, + prover_types: vec![CircuitType::Chunk], + vks: vec!["mock_vk".to_string()], + }; + + let buffer = rlp::encode(&login_message); + let signature = key_signer + .sign_buffer(&buffer) + .map_err(|e| anyhow::anyhow!("Failed to sign the login message: {e}")) + .unwrap(); + + // expected signature from coordinator's TestGenerateSignature + let expected_signature = "0xb8659f094fde9ed697bd86b8d8a0a1cff902710d7750463858c8a9ff9e851b152240054f256ce9ea8a3eaf5f0d56ceed894b358d3505926dc6cfc36548f7001a01".to_string(); + assert_eq!(signature, expected_signature); + } +} From db00a03ea0ff580b960731816ed41b30e3fd1437 Mon Sep 17 00:00:00 2001 From: Morty Date: Thu, 16 Jan 2025 16:28:13 +0800 Subject: [PATCH 26/42] format --- src/coordinator_handler/types.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/coordinator_handler/types.rs b/src/coordinator_handler/types.rs index 6ea3a38..2c98bb7 100644 --- a/src/coordinator_handler/types.rs +++ b/src/coordinator_handler/types.rs @@ -181,7 +181,7 @@ impl<'de> Deserialize<'de> for ProofStatus { #[cfg(test)] mod tests { use super::*; - use crate::{prover::types::ProverProviderType, coordinator_handler::KeySigner}; + use crate::{coordinator_handler::KeySigner, prover::types::ProverProviderType}; #[test] fn test_prover_provider_type_encoding() { From 4ae7687d373e830ec95ff278217ea0d798e86c27 Mon Sep 17 00:00:00 2001 From: Morty Date: Fri, 17 Jan 2025 18:20:45 +0800 Subject: [PATCH 27/42] revert local prover pre-insert task --- src/coordinator_handler/types.rs | 2 +- src/prover/mod.rs | 21 +++++---------------- 2 files changed, 6 insertions(+), 17 deletions(-) diff --git a/src/coordinator_handler/types.rs b/src/coordinator_handler/types.rs index 2c98bb7..b93c594 100644 --- a/src/coordinator_handler/types.rs +++ b/src/coordinator_handler/types.rs @@ -196,7 +196,7 @@ mod tests { #[test] fn test_signature_compatibility() { let private_key_hex = "8b8df68fddf7ee2724b79ccbd07799909d59b4dd4f4df3f6ecdc4fb8d56bdf4c"; - let key_signer = KeySigner::new_from_secret_key(&private_key_hex).unwrap(); + let key_signer = KeySigner::new_from_secret_key(private_key_hex).unwrap(); let login_message = LoginMessage { challenge: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MjQ4Mzg0ODUsIm9yaWdfaWF0IjoxNzI0ODM0ODg1LCJyYW5kb20iOiJ6QmdNZGstNGc4UzNUNTFrVEFsYk1RTXg2TGJ4SUs4czY3ejM2SlNuSFlJPSJ9.x9PvihhNx2w4_OX5uCrv8QJCNYVQkIi-K2k8XFXYmik".to_string(), diff --git a/src/prover/mod.rs b/src/prover/mod.rs index a66bf2a..9e48589 100644 --- a/src/prover/mod.rs +++ b/src/prover/mod.rs @@ -86,14 +86,12 @@ impl Prover { } async fn handle_task(&self, coordinator_client: &CoordinatorClient) -> anyhow::Result<()> { - let public_key = coordinator_client.key_signer.get_public_key(); - if let (Some(coordinator_task), Some(mut proving_task_id)) = - self.db.get_task(public_key.clone()) + if let (Some(coordinator_task), Some(mut proving_task_id)) = self + .db + .get_task(coordinator_client.key_signer.get_public_key()) { if self.proving_service.is_local() { - let proving_task = self - .request_proving(&coordinator_task, public_key.clone()) - .await?; + let proving_task = self.request_proving(&coordinator_task).await?; proving_task_id = proving_task.task_id } return self @@ -102,7 +100,7 @@ impl Prover { } let coordinator_task = self.get_coordinator_task(coordinator_client).await?; - let proving_task = self.request_proving(&coordinator_task, public_key).await?; + let proving_task = self.request_proving(&coordinator_task).await?; self.handle_proving_progress(coordinator_client, &coordinator_task, proving_task.task_id) .await } @@ -130,16 +128,7 @@ impl Prover { async fn request_proving( &self, coordinator_task: &GetTaskResponseData, - public_key: String, ) -> anyhow::Result { - if self.proving_service.is_local() { - self.db.set_task( - public_key.clone(), - coordinator_task, - coordinator_task.task_id.clone(), - ); - } - let proving_input = self.build_proving_input(coordinator_task).await?; let proving_task = self.proving_service.prove(proving_input).await; From 1e8384674ae8b86b290dd793ef40e02c8d10c1db Mon Sep 17 00:00:00 2001 From: Morty Date: Sat, 18 Jan 2025 00:50:35 +0800 Subject: [PATCH 28/42] update cargo.toml --- Cargo.lock | 101 +++++++---------------------------------------------- Cargo.toml | 12 +------ 2 files changed, 14 insertions(+), 99 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 194fc60..f4fe275 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -36,9 +36,9 @@ dependencies = [ "ark-std 0.3.0", "bitstream-io", "c-kzg", - "ctor 0.1.26", + "ctor", "encoder", - "env_logger 0.10.2", + "env_logger", "eth-types", "ethers-core 2.0.7 (git+https://github.com/scroll-tech/ethers-rs.git?branch=v2.0.7)", "gadgets", @@ -518,22 +518,22 @@ dependencies = [ [[package]] name = "bindgen" -version = "0.64.0" +version = "0.69.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4243e6031260db77ede97ad86c27e501d646a27ab57b59a574f725d98ab1fb4" +checksum = "271383c67ccabffb7381723dea0672a673f292304fcb45c01cc648c7a8d58088" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.5.0", "cexpr", "clang-sys", + "itertools 0.12.1", "lazy_static", "lazycell", - "peeking_take_while", "proc-macro2", "quote", "regex", "rustc-hash", "shlex", - "syn 1.0.109", + "syn 2.0.66", ] [[package]] @@ -1062,16 +1062,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "ctor" -version = "0.2.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edb49164822f3ee45b17acd4a208cfc1251410cf0cad9a833234c9890774dd9f" -dependencies = [ - "quote", - "syn 2.0.66", -] - [[package]] name = "ctr" version = "0.9.2" @@ -1280,16 +1270,6 @@ dependencies = [ "syn 2.0.66", ] -[[package]] -name = "env_filter" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a009aa4810eb158359dda09d0c87378e4bbb89b5a801f016885a4707ba24f7ea" -dependencies = [ - "log", - "regex", -] - [[package]] name = "env_logger" version = "0.10.2" @@ -1303,19 +1283,6 @@ dependencies = [ "termcolor", ] -[[package]] -name = "env_logger" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38b35839ba51819680ba087cd351788c9a3c476841207e0b8cee0b04722343b9" -dependencies = [ - "anstream", - "anstyle", - "env_filter", - "humantime", - "log", -] - [[package]] name = "equivalent" version = "1.0.1" @@ -1667,16 +1634,6 @@ dependencies = [ "percent-encoding", ] -[[package]] -name = "fs2" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213" -dependencies = [ - "libc", - "winapi", -] - [[package]] name = "funty" version = "2.0.0" @@ -1819,7 +1776,7 @@ name = "geth-utils" version = "0.13.0" source = "git+https://github.com/scroll-tech/zkevm-circuits.git?tag=v0.13.1#4009e5593f13ba73f64f556011ee5ef47bc4ebf3" dependencies = [ - "env_logger 0.10.2", + "env_logger", "gobuild", "log", ] @@ -2565,14 +2522,13 @@ checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" [[package]] name = "librocksdb-sys" -version = "0.10.0+7.9.2" +version = "0.17.1+9.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fe4d5874f5ff2bc616e55e8c6086d478fcda13faf9495768a4aa1c22042d30b" +checksum = "2b7869a512ae9982f4d46ba482c2a304f1efd80c6412a3d4bf57bb79a619679f" dependencies = [ "bindgen", "bzip2-sys", "cc", - "glob", "libc", "libz-sys", "lz4-sys", @@ -3152,12 +3108,6 @@ dependencies = [ "hmac", ] -[[package]] -name = "peeking_take_while" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" - [[package]] name = "percent-encoding" version = "2.3.1" @@ -3798,9 +3748,9 @@ dependencies = [ [[package]] name = "rocksdb" -version = "0.20.1" +version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "015439787fce1e75d55f279078d33ff14b4af5d93d995e8838ee4631301c8a99" +checksum = "26ec73b20525cb235bad420f911473b69f9fe27cc856c5461bccd7e4af037f43" dependencies = [ "libc", "librocksdb-sys", @@ -4021,20 +3971,13 @@ dependencies = [ "anyhow", "async-trait", "axum", - "base64 0.13.1", "clap", - "ctor 0.2.8", "dotenv", - "env_logger 0.11.3", - "eth-keystore", "ethers-core 2.0.7 (git+https://github.com/scroll-tech/ethers-rs.git?branch=v2.0.7)", "ethers-providers 2.0.7 (git+https://github.com/scroll-tech/ethers-rs.git?branch=v2.0.7)", - "futures", - "halo2_proofs", "hex", "http 1.1.0", "log", - "once_cell", "prover", "rand", "reqwest 0.12.4", @@ -4044,8 +3987,6 @@ dependencies = [ "rocksdb", "serde", "serde_json", - "sled", - "snark-verifier-sdk", "tiny-keccak", "tokio", "tracing", @@ -4375,22 +4316,6 @@ dependencies = [ "autocfg", ] -[[package]] -name = "sled" -version = "0.34.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f96b4737c2ce5987354855aed3797279def4ebf734436c6aa4552cf8e169935" -dependencies = [ - "crc32fast", - "crossbeam-epoch", - "crossbeam-utils", - "fs2", - "fxhash", - "libc", - "log", - "parking_lot 0.11.2", -] - [[package]] name = "smallvec" version = "1.13.2" @@ -5491,7 +5416,7 @@ dependencies = [ "array-init", "bus-mapping", "either", - "env_logger 0.10.2", + "env_logger", "eth-types", "ethers-core 2.0.7 (git+https://github.com/scroll-tech/ethers-rs.git?branch=v2.0.7)", "ethers-signers", diff --git a/Cargo.toml b/Cargo.toml index 5d5ec8b..d3194d3 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -16,34 +16,24 @@ bls12_381 = { git = "https://github.com/scroll-tech/bls12_381", branch = "feat/i [dependencies] anyhow = "1.0" log = "0.4" -env_logger = "0.11.3" serde = { version = "1.0.198", features = ["derive"] } serde_json = "1.0.116" -futures = "0.3.30" ethers-core = { git = "https://github.com/scroll-tech/ethers-rs.git", branch = "v2.0.7" } ethers-providers = { git = "https://github.com/scroll-tech/ethers-rs.git", branch = "v2.0.7" } -halo2_proofs = { git = "https://github.com/scroll-tech/halo2.git", branch = "v1.1" } -snark-verifier-sdk = { git = "https://github.com/scroll-tech/snark-verifier", branch = "develop", default-features = false, features = ["loader_halo2", "loader_evm", "halo2-pse"] } -# prover_darwin = { git = "https://github.com/scroll-tech/zkevm-circuits.git", tag = "v0.12.2", package = "prover", default-features = false, features = ["parallel_syn", "scroll"] } prover_darwin_v2 = { git = "https://github.com/scroll-tech/zkevm-circuits.git", tag = "v0.13.1", package = "prover", default-features = false, features = ["parallel_syn", "scroll"] } -base64 = "0.13.1" reqwest = { version = "0.12.4", features = ["gzip"] } reqwest-middleware = "0.3" reqwest-retry = "0.5" -once_cell = "1.19.0" hex = "0.4.3" tiny-keccak = { version = "2.0.0", features = ["sha3", "keccak"] } rand = "0.8.5" -eth-keystore = "0.5.0" rlp = "0.5.2" tokio = { version = "1.37.0", features = ["full"] } async-trait = "0.1" -sled = "0.34.7" http = "1.1.0" clap = { version = "4.5", features = ["derive"] } -ctor = "0.2.8" tracing = "0.1.40" tracing-subscriber = { version = "0.3.18", features = ["env-filter"] } axum = "0.6.0" dotenv = "0.15" -rocksdb = "0.20" +rocksdb = "0.23.0" From b57526eb8fe3d008370517d7cc6b8a8fae6fc9ea Mon Sep 17 00:00:00 2001 From: Morty Date: Mon, 20 Jan 2025 16:11:59 +0800 Subject: [PATCH 29/42] merge example config files --- conf/{config_local.json => config.json} | 7 +++++++ conf/config_cloud.json | 27 ------------------------- 2 files changed, 7 insertions(+), 27 deletions(-) rename conf/{config_local.json => config.json} (78%) delete mode 100644 conf/config_cloud.json diff --git a/conf/config_local.json b/conf/config.json similarity index 78% rename from conf/config_local.json rename to conf/config.json index cdf3442..bf9002d 100644 --- a/conf/config_local.json +++ b/conf/config.json @@ -13,6 +13,13 @@ "prover": { "circuit_type": [1,2,3], "circuit_version": "v0.13.1", + "cloud": { + "base_url": "", + "api_key": "", + "retry_count": 3, + "retry_wait_time_sec": 5, + "connection_timeout_sec": 60 + }, "local": { "low_version_circuit": { "hard_fork_name": "bernoulli", diff --git a/conf/config_cloud.json b/conf/config_cloud.json deleted file mode 100644 index d9e620e..0000000 --- a/conf/config_cloud.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "prover_name_prefix": "prover_name", - "keys_dir": "keys", - "coordinator": { - "base_url": "https://coordinator-api.scrollsdk", - "retry_count": 3, - "retry_wait_time_sec": 5, - "connection_timeout_sec": 60 - }, - "l2geth": { - "endpoint": "https://l2-rpc.scrollsdk" - }, - "prover": { - "circuit_type": [1,2,3], - "circuit_version": "v0.13.1", - "n_workers": 1, - "cloud": { - "base_url": "", - "api_key": "", - "retry_count": 3, - "retry_wait_time_sec": 5, - "connection_timeout_sec": 60 - } - }, - "db_path": "db" - } - \ No newline at end of file From 1e790976a76b9d110d8d9364bc9082bc8fc82cf1 Mon Sep 17 00:00:00 2001 From: Morty <70688412+yiweichi@users.noreply.github.com> Date: Tue, 21 Jan 2025 17:04:18 +0800 Subject: [PATCH 30/42] fix: chunk task input serialization issue (#59) --- src/prover/mod.rs | 6 ++++-- src/tracing_handler.rs | 12 ++++-------- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/src/prover/mod.rs b/src/prover/mod.rs index 9e48589..3b366f9 100644 --- a/src/prover/mod.rs +++ b/src/prover/mod.rs @@ -295,13 +295,15 @@ impl Prover { } CircuitType::Chunk => { let chunk_task_detail: ChunkTaskDetail = serde_json::from_str(&task.task_data)?; - let traces = self + let serialized_traces = self .l2geth_client .as_ref() .unwrap() .get_sorted_traces_by_hashes(&chunk_task_detail.block_hashes) .await?; - let input = serde_json::to_string(&traces)?; + // Note: Manually join pre-serialized traces since they are already in JSON format. + // Using serde_json::to_string would escape the JSON strings, creating invalid nested JSON. + let input = format!("[{}]", serialized_traces.join(",")); Ok(ProveRequest { circuit_type: task.task_type, diff --git a/src/tracing_handler.rs b/src/tracing_handler.rs index b1a980c..9151337 100644 --- a/src/tracing_handler.rs +++ b/src/tracing_handler.rs @@ -3,9 +3,7 @@ use ethers_core::types::BlockNumber; use ethers_core::types::H256; use ethers_providers::{Http, Provider}; use prover_darwin_v2::BlockTrace; -use serde::{de::DeserializeOwned, Serialize}; use std::cmp::Ordering; -use std::fmt::Debug; pub type CommonHash = H256; @@ -19,10 +17,7 @@ impl L2gethClient { Ok(Self { provider }) } - pub async fn get_block_trace_by_hash(&self, hash: &CommonHash) -> anyhow::Result - where - T: Serialize + DeserializeOwned + Debug + Send, - { + pub async fn get_block_trace_by_hash(&self, hash: &CommonHash) -> anyhow::Result { log::info!( "l2geth_client calling get_block_trace_by_hash, hash: {:#?}", hash @@ -45,7 +40,7 @@ impl L2gethClient { pub async fn get_sorted_traces_by_hashes( &self, block_hashes: &[CommonHash], - ) -> anyhow::Result> { + ) -> anyhow::Result> { if block_hashes.is_empty() { log::error!("failed to get sorted traces: block_hashes are empty"); anyhow::bail!("block_hashes are empty") @@ -94,6 +89,7 @@ impl L2gethClient { } } -fn get_block_number_from_trace(block_trace: &BlockTrace) -> Option { +fn get_block_number_from_trace(block_trace: &String) -> Option { + let block_trace: BlockTrace = serde_json::from_str(block_trace).unwrap(); block_trace.header.number.map(|n| n.as_u64()) } From c28acd0a9eb08a7e0e5e395623df2f488b9768a6 Mon Sep 17 00:00:00 2001 From: Morty Date: Tue, 21 Jan 2025 21:47:33 +0800 Subject: [PATCH 31/42] fix: get block trace deserialization --- src/tracing_handler.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/tracing_handler.rs b/src/tracing_handler.rs index 9151337..3522446 100644 --- a/src/tracing_handler.rs +++ b/src/tracing_handler.rs @@ -23,10 +23,12 @@ impl L2gethClient { hash ); - let trace = self + let trace: serde_json::Value = self .provider .request("scroll_getBlockTraceByNumberOrHash", [format!("{hash:#x}")]) .await?; + + let trace = serde_json::to_string(&trace)?; Ok(trace) } From 92634c65988eb7d7890759adb7ca1f1481fa41b8 Mon Sep 17 00:00:00 2001 From: Morty <70688412+yiweichi@users.noreply.github.com> Date: Wed, 22 Jan 2025 02:32:36 +0800 Subject: [PATCH 32/42] feat: add default for QueryTaskResponse (#60) --- src/prover/proving_service.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/prover/proving_service.rs b/src/prover/proving_service.rs index 4eea80e..8eccebd 100644 --- a/src/prover/proving_service.rs +++ b/src/prover/proving_service.rs @@ -27,6 +27,7 @@ pub struct ProveRequest { pub input: String, } +#[derive(Default)] pub struct ProveResponse { pub task_id: String, pub circuit_type: CircuitType, @@ -47,6 +48,7 @@ pub struct QueryTaskRequest { pub task_id: String, } +#[derive(Default)] pub struct QueryTaskResponse { pub task_id: String, pub circuit_type: CircuitType, @@ -63,8 +65,9 @@ pub struct QueryTaskResponse { pub error: Option, } -#[derive(Debug, PartialEq)] +#[derive(Debug, PartialEq, Default)] pub enum TaskStatus { + #[default] Queued, Proving, Success, From 7f8dca4f6af29995fed4ea45048e30a8784e1b6d Mon Sep 17 00:00:00 2001 From: Morty Date: Wed, 22 Jan 2025 14:21:40 +0800 Subject: [PATCH 33/42] revert N_WORKERS env --- src/config.rs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/config.rs b/src/config.rs index 6910b53..e0eccbd 100644 --- a/src/config.rs +++ b/src/config.rs @@ -141,6 +141,9 @@ impl Config { cloud.base_url = val; } } + if let Some(val) = Self::get_env_var("N_WORKERS")? { + self.prover.n_workers = val.parse()?; + } if let Some(val) = Self::get_env_var("PROVING_SERVICE_API_KEY")? { if let Some(cloud) = &mut self.prover.cloud { cloud.api_key = val; From 2ad1e33af387405631201d966168b92d0d1763ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=96mer=20Faruk=20Irmak?= Date: Tue, 28 Jan 2025 15:04:41 +0300 Subject: [PATCH 34/42] Allow SDK consumers construct their own Configs (#61) --- examples/cloud.rs | 62 ++++++++++++++++++++++++++++++++++++++++------- examples/local.rs | 39 +++++++++++++++++++++++++---- src/config.rs | 51 ++------------------------------------ 3 files changed, 89 insertions(+), 63 deletions(-) diff --git a/examples/cloud.rs b/examples/cloud.rs index a2d8116..f6901c3 100644 --- a/examples/cloud.rs +++ b/examples/cloud.rs @@ -1,9 +1,11 @@ +use anyhow::{anyhow, Result}; use async_trait::async_trait; use clap::Parser; use reqwest::Url; +use std::fs::File; use scroll_proving_sdk::{ - config::{CloudProverConfig, Config}, + config::Config as SdkConfig, prover::{ proving_service::{ GetVkRequest, GetVkResponse, ProveRequest, ProveResponse, QueryTaskRequest, @@ -13,6 +15,7 @@ use scroll_proving_sdk::{ }, utils::init_tracing, }; +use serde::{Deserialize, Serialize}; #[derive(Parser, Debug)] #[clap(disable_version_flag = true)] @@ -22,6 +25,51 @@ struct Args { config_file: String, } +#[derive(Debug, Serialize, Deserialize, Clone)] +pub struct CloudProverConfig { + pub sdk_config: SdkConfig, + pub base_url: String, + pub api_key: String, +} + +impl CloudProverConfig { + pub fn from_reader(reader: R) -> Result + where + R: std::io::Read, + { + serde_json::from_reader(reader).map_err(|e| anyhow!(e)) + } + + pub fn from_file(file_name: String) -> Result { + let file = File::open(file_name)?; + Self::from_reader(&file) + } + + fn get_env_var(key: &str) -> Result> { + std::env::var_os(key) + .map(|val| { + val.to_str() + .ok_or_else(|| anyhow!("{key} env var is not valid UTF-8")) + .map(String::from) + }) + .transpose() + } + + pub fn from_file_and_env(file_name: String) -> Result { + let mut cfg = Self::from_file(file_name)?; + + if let Some(val) = Self::get_env_var("PROVING_SERVICE_BASE_URL")? { + cfg.base_url = val; + } + + if let Some(val) = Self::get_env_var("PROVING_SERVICE_API_KEY")? { + cfg.api_key = val; + } + + Ok(cfg) + } +} + struct CloudProver { base_url: Url, api_key: String, @@ -58,14 +106,10 @@ async fn main() -> anyhow::Result<()> { init_tracing(); let args = Args::parse(); - let cfg: Config = Config::from_file_and_env(args.config_file)?; - let cloud_prover = CloudProver::new( - cfg.prover - .cloud - .clone() - .ok_or_else(|| anyhow::anyhow!("Missing cloud prover configuration"))?, - ); - let prover = ProverBuilder::new(cfg) + let cfg = CloudProverConfig::from_file_and_env(args.config_file)?; + let sdk_config = cfg.sdk_config.clone(); + let cloud_prover = CloudProver::new(cfg); + let prover = ProverBuilder::new(sdk_config) .with_proving_service(Box::new(cloud_prover)) .build() .await?; diff --git a/examples/local.rs b/examples/local.rs index 7b020b2..616b1be 100644 --- a/examples/local.rs +++ b/examples/local.rs @@ -1,8 +1,8 @@ +use anyhow::{anyhow, Result}; use async_trait::async_trait; use clap::Parser; - use scroll_proving_sdk::{ - config::{Config, LocalProverConfig}, + config::Config as SdkConfig, prover::{ proving_service::{ GetVkRequest, GetVkResponse, ProveRequest, ProveResponse, QueryTaskRequest, @@ -12,6 +12,8 @@ use scroll_proving_sdk::{ }, utils::init_tracing, }; +use serde::{Deserialize, Serialize}; +use std::fs::File; #[derive(Parser, Debug)] #[clap(disable_version_flag = true)] @@ -21,6 +23,32 @@ struct Args { config_file: String, } +#[derive(Debug, Serialize, Deserialize, Clone)] +pub struct LocalProverConfig { + pub sdk_config: SdkConfig, + pub conf1: String, + pub conf2: String, +} + +impl LocalProverConfig { + pub fn from_reader(reader: R) -> Result + where + R: std::io::Read, + { + serde_json::from_reader(reader).map_err(|e| anyhow!(e)) + } + + pub fn from_file(file_name: String) -> Result { + let file = File::open(file_name)?; + Self::from_reader(&file) + } + + pub fn from_file_and_env(file_name: String) -> Result { + let cfg = Self::from_file(file_name)?; + Ok(cfg) + } +} + struct LocalProver {} #[async_trait] @@ -50,9 +78,10 @@ async fn main() -> anyhow::Result<()> { init_tracing(); let args = Args::parse(); - let cfg: Config = Config::from_file_and_env(args.config_file)?; - let local_prover = LocalProver::new(cfg.prover.local.clone().unwrap()); - let prover = ProverBuilder::new(cfg) + let cfg = LocalProverConfig::from_file_and_env(args.config_file)?; + let sdk_config = cfg.sdk_config.clone(); + let local_prover = LocalProver::new(cfg); + let prover = ProverBuilder::new(sdk_config) .with_proving_service(Box::new(local_prover)) .build() .await?; diff --git a/src/config.rs b/src/config.rs index e0eccbd..2da589d 100644 --- a/src/config.rs +++ b/src/config.rs @@ -36,32 +36,7 @@ pub struct ProverConfig { pub circuit_version: String, #[serde(default = "default_n_workers")] pub n_workers: usize, - pub cloud: Option, - pub local: Option, } - -#[derive(Debug, Serialize, Deserialize, Clone)] -pub struct CloudProverConfig { - pub base_url: String, - pub api_key: String, - pub retry_count: u32, - pub retry_wait_time_sec: u64, - pub connection_timeout_sec: u64, -} - -#[derive(Debug, Serialize, Deserialize, Clone)] -pub struct LocalProverConfig { - pub low_version_circuit: CircuitConfig, - pub high_version_circuit: CircuitConfig, -} - -#[derive(Debug, Serialize, Deserialize, Clone)] -pub struct CircuitConfig { - pub hard_fork_name: String, - pub params_path: String, - pub assets_path: String, -} - #[derive(Debug, Serialize, Deserialize, Clone)] pub struct DbConfig {} @@ -136,19 +111,11 @@ impl Config { }) .collect::>(); } - if let Some(val) = Self::get_env_var("PROVING_SERVICE_BASE_URL")? { - if let Some(cloud) = &mut self.prover.cloud { - cloud.base_url = val; - } - } + if let Some(val) = Self::get_env_var("N_WORKERS")? { self.prover.n_workers = val.parse()?; } - if let Some(val) = Self::get_env_var("PROVING_SERVICE_API_KEY")? { - if let Some(cloud) = &mut self.prover.cloud { - cloud.api_key = val; - } - } + if let Some(val) = Self::get_env_var("DB_PATH")? { self.db_path = Option::from(val); } @@ -156,17 +123,3 @@ impl Config { Ok(()) } } - -impl LocalProverConfig { - pub fn from_reader(reader: R) -> Result - where - R: std::io::Read, - { - serde_json::from_reader(reader).map_err(|e| anyhow!(e)) - } - - pub fn from_file(file_name: String) -> Result { - let file = File::open(file_name)?; - LocalProverConfig::from_reader(&file) - } -} From c15aae4c838058d33f05add6f097b51ddc70c540 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=96mer=20Faruk=20Irmak?= Date: Thu, 30 Jan 2025 12:52:17 +0300 Subject: [PATCH 35/42] remove halo2 dependency and refactor types to better accomodate openvm --- Cargo.lock | 7426 +++++++++++------ Cargo.toml | 30 +- examples/cloud.rs | 9 +- examples/local.rs | 9 +- rust-toolchain.toml | 2 +- src/config.rs | 43 +- src/coordinator_handler/coordinator_client.rs | 26 +- src/coordinator_handler/types.rs | 61 +- src/prover/builder.rs | 59 +- src/prover/mod.rs | 117 +- src/prover/proving_service.rs | 14 +- src/prover/types.rs | 70 +- src/tracing_handler.rs | 45 +- 13 files changed, 4990 insertions(+), 2921 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f4fe275..a30d6e5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1,66 +1,21 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. -version = 3 +version = 4 [[package]] name = "addr2line" -version = "0.21.0" +version = "0.24.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" +checksum = "dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1" dependencies = [ "gimli", ] [[package]] -name = "adler" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" - -[[package]] -name = "aes" -version = "0.8.4" +name = "adler2" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0" -dependencies = [ - "cfg-if 1.0.0", - "cipher", - "cpufeatures", -] - -[[package]] -name = "aggregator" -version = "0.13.0" -source = "git+https://github.com/scroll-tech/zkevm-circuits.git?tag=v0.13.1#4009e5593f13ba73f64f556011ee5ef47bc4ebf3" -dependencies = [ - "ark-std 0.3.0", - "bitstream-io", - "c-kzg", - "ctor", - "encoder", - "env_logger", - "eth-types", - "ethers-core 2.0.7 (git+https://github.com/scroll-tech/ethers-rs.git?branch=v2.0.7)", - "gadgets", - "halo2-base", - "halo2-ecc", - "halo2_proofs", - "hex", - "itertools 0.11.0", - "log", - "num-bigint", - "once_cell", - "rand", - "revm-precompile", - "revm-primitives", - "serde", - "serde_json", - "snark-verifier", - "snark-verifier-sdk", - "strum 0.25.0", - "strum_macros 0.25.3", - "zkevm-circuits", -] +checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" [[package]] name = "ahash" @@ -68,7 +23,8 @@ version = "0.8.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" dependencies = [ - "cfg-if 1.0.0", + "cfg-if", + "getrandom 0.2.15", "once_cell", "version_check", "zerocopy", @@ -85,3510 +41,4994 @@ dependencies = [ [[package]] name = "allocator-api2" -version = "0.2.18" +version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" +checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] -name = "alloy-primitives" -version = "0.7.4" +name = "alloy" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db8aa973e647ec336810a9356af8aea787249c9d00b1525359f3db29a68d231b" +checksum = "59febb24956a41c29bb5f450978fbe825bd6456b3f80586c8bd558dc882e7b6a" dependencies = [ - "alloy-rlp", - "bytes", - "cfg-if 1.0.0", - "const-hex", - "derive_more", - "hex-literal", - "itoa", - "k256", - "keccak-asm", - "proptest", - "rand", - "ruint", - "serde", - "tiny-keccak", + "alloy-consensus", + "alloy-core", + "alloy-eips", + "alloy-json-rpc", + "alloy-network", + "alloy-provider", + "alloy-rpc-client", + "alloy-transport", + "alloy-transport-http", ] [[package]] -name = "alloy-rlp" -version = "0.3.5" +name = "alloy-chains" +version = "0.1.57" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b155716bab55763c95ba212806cf43d05bcc70e5f35b02bad20cf5ec7fe11fed" +checksum = "4ab9d1367c6ffb90c93fb4a9a4989530aa85112438c6f73a734067255d348469" dependencies = [ - "arrayvec", - "bytes", + "alloy-primitives", + "alloy-rlp", + "num_enum 0.7.3", + "serde", + "strum 0.26.3", ] [[package]] -name = "android-tzdata" -version = "0.1.1" +name = "alloy-consensus" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" +checksum = "e88e1edea70787c33e11197d3f32ae380f3db19e6e061e539a5bcf8184a6b326" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "alloy-serde", + "alloy-trie", + "auto_impl", + "c-kzg", + "derive_more", + "serde", +] [[package]] -name = "android_system_properties" -version = "0.1.5" +name = "alloy-consensus-any" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" +checksum = "57b1bb53f40c0273cd1975573cd457b39213e68584e36d1401d25fd0398a1d65" dependencies = [ - "libc", + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "alloy-serde", + "serde", ] [[package]] -name = "anstream" -version = "0.6.14" +name = "alloy-core" +version = "0.8.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "418c75fa768af9c03be99d17643f93f79bbba589895012a80e3452a19ddda15b" +checksum = "d0713007d14d88a6edb8e248cddab783b698dbb954a28b8eee4bab21cfb7e578" dependencies = [ - "anstyle", - "anstyle-parse", - "anstyle-query", - "anstyle-wincon", - "colorchoice", - "is_terminal_polyfill", - "utf8parse", + "alloy-primitives", ] [[package]] -name = "anstyle" -version = "1.0.7" +name = "alloy-eip2930" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "038dfcf04a5feb68e9c60b21c9625a54c2c0616e79b72b0fd87075a056ae1d1b" +checksum = "0069cf0642457f87a01a014f6dc29d5d893cd4fd8fddf0c3cdfad1bb3ebafc41" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "serde", +] [[package]] -name = "anstyle-parse" -version = "0.2.4" +name = "alloy-eip7702" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c03a11a9034d92058ceb6ee011ce58af4a9bf61491aa7e1e59ecd24bd40d22d4" +checksum = "4c986539255fb839d1533c128e190e557e52ff652c9ef62939e233a81dd93f7e" dependencies = [ - "utf8parse", + "alloy-primitives", + "alloy-rlp", + "derive_more", + "k256", + "serde", ] [[package]] -name = "anstyle-query" -version = "1.0.3" +name = "alloy-eips" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a64c907d4e79225ac72e2a354c9ce84d50ebb4586dee56c82b3ee73004f537f5" +checksum = "5f9fadfe089e9ccc0650473f2d4ef0a28bc015bbca5631d9f0f09e49b557fdb3" dependencies = [ - "windows-sys 0.52.0", + "alloy-eip2930", + "alloy-eip7702", + "alloy-primitives", + "alloy-rlp", + "alloy-serde", + "c-kzg", + "derive_more", + "once_cell", + "serde", + "sha2", ] [[package]] -name = "anstyle-wincon" -version = "3.0.3" +name = "alloy-genesis" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61a38449feb7068f52bb06c12759005cf459ee52bb4adc1d5a7c4322d716fb19" +checksum = "2b2a4cf7b70f3495788e74ce1c765260ffe38820a2a774ff4aacb62e31ea73f9" dependencies = [ - "anstyle", - "windows-sys 0.52.0", + "alloy-primitives", + "alloy-serde", + "alloy-trie", + "serde", ] [[package]] -name = "anyhow" -version = "1.0.86" +name = "alloy-json-abi" +version = "0.8.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da" +checksum = "731ea743b3d843bc657e120fb1d1e9cc94f5dab8107e35a82125a63e6420a102" +dependencies = [ + "alloy-primitives", + "alloy-sol-type-parser", + "serde", + "serde_json", +] [[package]] -name = "arc-swap" -version = "1.7.1" +name = "alloy-json-rpc" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457" +checksum = "e29040b9d5fe2fb70415531882685b64f8efd08dfbd6cc907120650504821105" +dependencies = [ + "alloy-primitives", + "alloy-sol-types", + "serde", + "serde_json", + "thiserror 2.0.11", + "tracing", +] [[package]] -name = "ark-ff" -version = "0.3.0" +name = "alloy-network" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b3235cc41ee7a12aaaf2c575a2ad7b46713a8a50bda2fc3b003a04845c05dd6" +checksum = "510cc00b318db0dfccfdd2d032411cfae64fc144aef9679409e014145d3dacc4" dependencies = [ - "ark-ff-asm 0.3.0", - "ark-ff-macros 0.3.0", - "ark-serialize 0.3.0", - "ark-std 0.3.0", - "derivative", - "num-bigint", - "num-traits", - "paste", - "rustc_version 0.3.3", - "zeroize", + "alloy-consensus", + "alloy-consensus-any", + "alloy-eips", + "alloy-json-rpc", + "alloy-network-primitives", + "alloy-primitives", + "alloy-rpc-types-any", + "alloy-rpc-types-eth", + "alloy-serde", + "alloy-signer", + "alloy-sol-types", + "async-trait", + "auto_impl", + "futures-utils-wasm", + "serde", + "serde_json", + "thiserror 2.0.11", ] [[package]] -name = "ark-ff" -version = "0.4.2" +name = "alloy-network-primitives" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec847af850f44ad29048935519032c33da8aa03340876d351dfab5660d2966ba" +checksum = "9081c099e798b8a2bba2145eb82a9a146f01fc7a35e9ab6e7b43305051f97550" dependencies = [ - "ark-ff-asm 0.4.2", - "ark-ff-macros 0.4.2", - "ark-serialize 0.4.2", - "ark-std 0.4.0", - "derivative", - "digest 0.10.7", - "itertools 0.10.5", - "num-bigint", - "num-traits", - "paste", - "rustc_version 0.4.0", - "zeroize", + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-serde", + "serde", ] [[package]] -name = "ark-ff-asm" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db02d390bf6643fb404d3d22d31aee1c4bc4459600aef9113833d17e786c6e44" +name = "alloy-primitives" +version = "0.8.18" +source = "git+https://github.com/scroll-tech/alloy-core?branch=v0.8.18#aab106b9b7ca2e76a7b073064f86a04adb3122fe" dependencies = [ - "quote", - "syn 1.0.109", + "alloy-rlp", + "bytes", + "cfg-if", + "const-hex", + "derive_more", + "foldhash", + "getrandom 0.2.15", + "hashbrown 0.15.2", + "indexmap 2.7.1", + "itoa", + "k256", + "keccak-asm", + "paste", + "proptest", + "rand", + "rayon", + "rkyv", + "ruint", + "rustc-hash 2.1.0", + "serde", + "sha3", + "tiny-keccak", ] [[package]] -name = "ark-ff-asm" -version = "0.4.2" +name = "alloy-provider" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ed4aa4fe255d0bc6d79373f7e31d2ea147bcf486cba1be5ba7ea85abdb92348" +checksum = "dc2dfaddd9a30aa870a78a4e1316e3e115ec1e12e552cbc881310456b85c1f24" dependencies = [ - "quote", - "syn 1.0.109", + "alloy-chains", + "alloy-consensus", + "alloy-eips", + "alloy-json-rpc", + "alloy-network", + "alloy-network-primitives", + "alloy-primitives", + "alloy-rpc-client", + "alloy-rpc-types-eth", + "alloy-transport", + "alloy-transport-http", + "async-stream", + "async-trait", + "auto_impl", + "dashmap", + "futures", + "futures-utils-wasm", + "lru", + "parking_lot 0.12.3", + "pin-project", + "reqwest 0.12.12", + "schnellru", + "serde", + "serde_json", + "thiserror 2.0.11", + "tokio", + "tracing", + "url", + "wasmtimer", ] [[package]] -name = "ark-ff-macros" -version = "0.3.0" +name = "alloy-rlp" +version = "0.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db2fd794a08ccb318058009eefdf15bcaaaaf6f8161eb3345f907222bac38b20" +checksum = "3d6c1d995bff8d011f7cd6c81820d51825e6e06d6db73914c1630ecf544d83d6" dependencies = [ - "num-bigint", - "num-traits", - "quote", - "syn 1.0.109", + "alloy-rlp-derive", + "arrayvec", + "bytes", ] [[package]] -name = "ark-ff-macros" -version = "0.4.2" +name = "alloy-rlp-derive" +version = "0.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7abe79b0e4288889c4574159ab790824d0033b9fdcb2a112a3182fac2e514565" +checksum = "a40e1ef334153322fd878d07e86af7a529bcb86b2439525920a88eba87bcf943" dependencies = [ - "num-bigint", - "num-traits", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.96", ] [[package]] -name = "ark-serialize" -version = "0.3.0" +name = "alloy-rpc-client" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d6c2b318ee6e10f8c2853e73a83adc0ccb88995aa978d8a3408d492ab2ee671" +checksum = "531137b283547d5b9a5cafc96b006c64ef76810c681d606f28be9781955293b6" dependencies = [ - "ark-std 0.3.0", - "digest 0.9.0", + "alloy-json-rpc", + "alloy-primitives", + "alloy-transport", + "alloy-transport-http", + "futures", + "pin-project", + "reqwest 0.12.12", + "serde", + "serde_json", + "tokio", + "tokio-stream", + "tower 0.5.2", + "tracing", + "url", + "wasmtimer", ] [[package]] -name = "ark-serialize" -version = "0.4.2" +name = "alloy-rpc-types-any" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" +checksum = "ed98e1af55a7d856bfa385f30f63d8d56be2513593655c904a8f4a7ec963aa3e" dependencies = [ - "ark-std 0.4.0", - "digest 0.10.7", - "num-bigint", + "alloy-consensus-any", + "alloy-rpc-types-eth", + "alloy-serde", ] [[package]] -name = "ark-std" -version = "0.3.0" +name = "alloy-rpc-types-engine" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1df2c09229cbc5a028b1d70e00fdb2acee28b1055dfb5ca73eea49c5a25c4e7c" +checksum = "03bd16fa4959255ebf4a7702df08f325e5631df5cdca07c8a8e58bdc10fe02e3" dependencies = [ - "num-traits", - "rand", + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "alloy-serde", + "derive_more", + "serde", + "strum 0.26.3", ] [[package]] -name = "ark-std" -version = "0.4.0" +name = "alloy-rpc-types-eth" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" +checksum = "8737d7a6e37ca7bba9c23e9495c6534caec6760eb24abc9d5ffbaaba147818e1" dependencies = [ - "num-traits", - "rand", -] - -[[package]] -name = "array-init" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d62b7694a562cdf5a74227903507c56ab2cc8bdd1f781ed5cb4cf9c9f810bfc" - -[[package]] -name = "arrayref" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545" + "alloy-consensus", + "alloy-consensus-any", + "alloy-eips", + "alloy-network-primitives", + "alloy-primitives", + "alloy-rlp", + "alloy-serde", + "alloy-sol-types", + "derive_more", + "itertools 0.13.0", + "serde", + "serde_json", +] [[package]] -name = "arrayvec" -version = "0.7.4" +name = "alloy-serde" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" +checksum = "5851bf8d5ad33014bd0c45153c603303e730acc8a209450a7ae6b4a12c2789e2" +dependencies = [ + "alloy-primitives", + "serde", + "serde_json", +] [[package]] -name = "async-compression" -version = "0.4.10" +name = "alloy-signer" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c90a406b4495d129f00461241616194cb8a032c8d1c53c657f0961d5f8e0498" +checksum = "7e10ca565da6500cca015ba35ee424d59798f2e1b85bc0dd8f81dafd401f029a" dependencies = [ - "flate2", - "futures-core", - "memchr", - "pin-project-lite", - "tokio", + "alloy-primitives", + "async-trait", + "auto_impl", + "elliptic-curve", + "k256", + "thiserror 2.0.11", ] [[package]] -name = "async-trait" -version = "0.1.80" +name = "alloy-sol-macro" +version = "0.8.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca" +checksum = "8d039d267aa5cbb7732fa6ce1fd9b5e9e29368f580f80ba9d7a8450c794de4b2" dependencies = [ + "alloy-sol-macro-expander", + "alloy-sol-macro-input", + "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.96", ] [[package]] -name = "async_io_stream" -version = "0.3.3" +name = "alloy-sol-macro-expander" +version = "0.8.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6d7b9decdf35d8908a7e3ef02f64c5e9b1695e230154c0e8de3969142d9b94c" +checksum = "620ae5eee30ee7216a38027dec34e0585c55099f827f92f50d11e3d2d3a4a954" dependencies = [ - "futures", - "pharos", - "rustc_version 0.4.0", + "alloy-sol-macro-input", + "const-hex", + "heck 0.5.0", + "indexmap 2.7.1", + "proc-macro-error2", + "proc-macro2", + "quote", + "syn 2.0.96", + "syn-solidity", + "tiny-keccak", ] [[package]] -name = "atomic-waker" -version = "1.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" - -[[package]] -name = "aurora-engine-modexp" -version = "1.1.0" +name = "alloy-sol-macro-input" +version = "0.8.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0aef7712851e524f35fbbb74fa6599c5cd8692056a1c36f9ca0d2001b670e7e5" +checksum = "ad9f7d057e00f8c5994e4ff4492b76532c51ead39353aa2ed63f8c50c0f4d52e" dependencies = [ - "hex", - "num", + "const-hex", + "dunce", + "heck 0.5.0", + "proc-macro2", + "quote", + "syn 2.0.96", + "syn-solidity", ] [[package]] -name = "auto_impl" -version = "1.2.0" +name = "alloy-sol-type-parser" +version = "0.8.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" +checksum = "74e60b084fe1aef8acecda2743ff2d93c18ff3eb67a2d3b12f62582a1e66ef5e" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", + "serde", + "winnow 0.6.26", ] [[package]] -name = "autocfg" -version = "1.3.0" +name = "alloy-sol-types" +version = "0.8.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0" +checksum = "e3b478bc9c0c4737a04cd976accde4df7eba0bdc0d90ad6ff43d58bc93cf79c1" +dependencies = [ + "alloy-json-abi", + "alloy-primitives", + "alloy-sol-macro", + "const-hex", + "serde", +] [[package]] -name = "axum" -version = "0.6.20" +name = "alloy-transport" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf" +checksum = "538a04a37221469cac0ce231b737fd174de2fdfcdd843bdd068cb39ed3e066ad" dependencies = [ - "async-trait", - "axum-core", - "bitflags 1.3.2", - "bytes", + "alloy-json-rpc", + "base64 0.22.1", "futures-util", - "http 0.2.12", - "http-body 0.4.6", - "hyper 0.14.28", - "itoa", - "matchit", - "memchr", - "mime", - "percent-encoding", - "pin-project-lite", - "rustversion", + "futures-utils-wasm", "serde", "serde_json", - "serde_path_to_error", - "serde_urlencoded", - "sync_wrapper", + "thiserror 2.0.11", "tokio", - "tower", - "tower-layer", - "tower-service", + "tower 0.5.2", + "tracing", + "url", + "wasmtimer", ] [[package]] -name = "axum-core" -version = "0.3.4" +name = "alloy-transport-http" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c" +checksum = "2ed40eb1e1265b2911512f6aa1dcece9702d078f5a646730c45e39e2be00ac1c" dependencies = [ - "async-trait", - "bytes", - "futures-util", - "http 0.2.12", - "http-body 0.4.6", - "mime", - "rustversion", - "tower-layer", - "tower-service", + "alloy-json-rpc", + "alloy-transport", + "reqwest 0.12.12", + "serde_json", + "tower 0.5.2", + "tracing", + "url", ] [[package]] -name = "backtrace" -version = "0.3.71" +name = "alloy-trie" +version = "0.7.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26b05800d2e817c8b3b4b54abd461726265fa9789ae34330622f2db9ee696f9d" +checksum = "6917c79e837aa7b77b7a6dae9f89cbe15313ac161c4d3cfaf8909ef21f3d22d8" dependencies = [ - "addr2line", - "cc", - "cfg-if 1.0.0", - "libc", - "miniz_oxide", - "object", - "rustc-demangle", + "alloy-primitives", + "alloy-rlp", + "arrayvec", + "derive_more", + "nybbles", + "serde", + "smallvec", + "tracing", ] [[package]] -name = "base16ct" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" - -[[package]] -name = "base64" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" - -[[package]] -name = "base64" -version = "0.21.7" +name = "android-tzdata" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" +checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" [[package]] -name = "base64" -version = "0.22.1" +name = "android_system_properties" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" +dependencies = [ + "libc", +] [[package]] -name = "base64ct" -version = "1.6.0" +name = "anstream" +version = "0.6.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" +checksum = "8acc5369981196006228e28809f761875c0327210a891e941f4c683b3a99529b" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "is_terminal_polyfill", + "utf8parse", +] [[package]] -name = "bech32" -version = "0.9.1" +name = "anstyle" +version = "1.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d86b93f97252c47b41663388e6d155714a9d0c398b99f1005cbc5f978b29f445" +checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9" [[package]] -name = "bincode" -version = "1.3.3" +name = "anstyle-parse" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" +checksum = "3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9" dependencies = [ - "serde", + "utf8parse", ] [[package]] -name = "bindgen" -version = "0.69.5" +name = "anstyle-query" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "271383c67ccabffb7381723dea0672a673f292304fcb45c01cc648c7a8d58088" +checksum = "79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c" dependencies = [ - "bitflags 2.5.0", - "cexpr", - "clang-sys", - "itertools 0.12.1", - "lazy_static", - "lazycell", - "proc-macro2", - "quote", - "regex", - "rustc-hash", - "shlex", - "syn 2.0.66", + "windows-sys 0.59.0", ] [[package]] -name = "bit-set" -version = "0.5.3" +name = "anstyle-wincon" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" +checksum = "ca3534e77181a9cc07539ad51f2141fe32f6c3ffd4df76db8ad92346b003ae4e" dependencies = [ - "bit-vec", + "anstyle", + "once_cell", + "windows-sys 0.59.0", ] [[package]] -name = "bit-vec" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" - -[[package]] -name = "bitflags" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - -[[package]] -name = "bitflags" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1" - -[[package]] -name = "bitstream-io" -version = "2.3.0" +name = "anyhow" +version = "1.0.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c12d1856e42f0d817a835fe55853957c85c8c8a470114029143d3f12671446e" +checksum = "34ac096ce696dc2fcabef30516bb13c0a68a11d30131d3df6f04711467681b04" [[package]] -name = "bitvec" -version = "1.0.1" +name = "ark-ff" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" +checksum = "6b3235cc41ee7a12aaaf2c575a2ad7b46713a8a50bda2fc3b003a04845c05dd6" dependencies = [ - "funty", - "radium", - "tap", - "wyz", + "ark-ff-asm 0.3.0", + "ark-ff-macros 0.3.0", + "ark-serialize 0.3.0", + "ark-std 0.3.0", + "derivative", + "num-bigint", + "num-traits", + "paste", + "rustc_version 0.3.3", + "zeroize", ] [[package]] -name = "blake2" -version = "0.10.6" +name = "ark-ff" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe" +checksum = "ec847af850f44ad29048935519032c33da8aa03340876d351dfab5660d2966ba" dependencies = [ + "ark-ff-asm 0.4.2", + "ark-ff-macros 0.4.2", + "ark-serialize 0.4.2", + "ark-std 0.4.0", + "derivative", "digest 0.10.7", + "itertools 0.10.5", + "num-bigint", + "num-traits", + "paste", + "rustc_version 0.4.1", + "zeroize", ] [[package]] -name = "blake2b_simd" -version = "1.0.2" +name = "ark-ff-asm" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23285ad32269793932e830392f2fe2f83e26488fd3ec778883a93c8323735780" +checksum = "db02d390bf6643fb404d3d22d31aee1c4bc4459600aef9113833d17e786c6e44" dependencies = [ - "arrayref", - "arrayvec", - "constant_time_eq", + "quote", + "syn 1.0.109", ] [[package]] -name = "block-buffer" -version = "0.9.0" +name = "ark-ff-asm" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" +checksum = "3ed4aa4fe255d0bc6d79373f7e31d2ea147bcf486cba1be5ba7ea85abdb92348" dependencies = [ - "block-padding", - "generic-array", -] - -[[package]] -name = "block-buffer" -version = "0.10.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" -dependencies = [ - "generic-array", + "quote", + "syn 1.0.109", ] [[package]] -name = "block-padding" -version = "0.2.1" +name = "ark-ff-macros" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d696c370c750c948ada61c69a0ee2cbbb9c50b1019ddb86d9317157a99c2cae" - -[[package]] -name = "bls12_381" -version = "0.8.0" -source = "git+https://github.com/scroll-tech/bls12_381?branch=feat/impl_scalar_field#2c515f73a2462fef8681c8e884edf1710f52b22a" +checksum = "db2fd794a08ccb318058009eefdf15bcaaaaf6f8161eb3345f907222bac38b20" dependencies = [ - "ff", - "group", - "pairing", - "pasta_curves", - "rand_core", - "subtle", + "num-bigint", + "num-traits", + "quote", + "syn 1.0.109", ] [[package]] -name = "blst" -version = "0.3.11" +name = "ark-ff-macros" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c94087b935a822949d3291a9989ad2b2051ea141eda0fd4e478a75f6aa3e604b" +checksum = "7abe79b0e4288889c4574159ab790824d0033b9fdcb2a112a3182fac2e514565" dependencies = [ - "cc", - "glob", - "threadpool", - "zeroize", + "num-bigint", + "num-traits", + "proc-macro2", + "quote", + "syn 1.0.109", ] [[package]] -name = "bs58" -version = "0.5.1" +name = "ark-serialize" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf88ba1141d185c399bee5288d850d63b8369520c1eafc32a0430b5b6c287bf4" +checksum = "1d6c2b318ee6e10f8c2853e73a83adc0ccb88995aa978d8a3408d492ab2ee671" dependencies = [ - "sha2", - "tinyvec", + "ark-std 0.3.0", + "digest 0.9.0", ] [[package]] -name = "bumpalo" -version = "3.16.0" +name = "ark-serialize" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" - -[[package]] -name = "bus-mapping" -version = "0.13.0" -source = "git+https://github.com/scroll-tech/zkevm-circuits.git?tag=v0.13.1#4009e5593f13ba73f64f556011ee5ef47bc4ebf3" -dependencies = [ - "eth-types", - "ethers-core 2.0.7 (git+https://github.com/scroll-tech/ethers-rs.git?branch=v2.0.7)", - "ethers-providers 2.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "ethers-signers", - "gadgets", - "halo2_proofs", - "hex", - "itertools 0.11.0", - "log", - "mock", - "mpt-zktrie", - "num", - "poseidon-circuit", - "revm-precompile", - "serde", - "serde_json", - "strum 0.25.0", - "strum_macros 0.25.3", +checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" +dependencies = [ + "ark-std 0.4.0", + "digest 0.10.7", + "num-bigint", ] [[package]] -name = "byte-slice-cast" -version = "1.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c" - -[[package]] -name = "byteorder" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" - -[[package]] -name = "bytes" -version = "1.6.0" +name = "ark-std" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9" +checksum = "1df2c09229cbc5a028b1d70e00fdb2acee28b1055dfb5ca73eea49c5a25c4e7c" dependencies = [ - "serde", + "num-traits", + "rand", ] [[package]] -name = "bzip2-sys" -version = "0.1.11+1.0.8" +name = "ark-std" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc" +checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" dependencies = [ - "cc", - "libc", - "pkg-config", + "num-traits", + "rand", ] [[package]] -name = "c-kzg" -version = "1.0.2" +name = "arrayvec" +version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdf100c4cea8f207e883ff91ca886d621d8a166cb04971dfaa9bb8fd99ed95df" +checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" dependencies = [ - "blst", - "cc", - "glob", - "hex", - "libc", "serde", ] [[package]] -name = "cc" -version = "1.1.36" +name = "async-compression" +version = "0.4.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baee610e9452a8f6f0a1b6194ec09ff9e2d85dea54432acdae41aa0761c95d70" +checksum = "df895a515f70646414f4b45c0b79082783b80552b373a68283012928df56f522" dependencies = [ - "jobserver", - "libc", - "shlex", + "flate2", + "futures-core", + "memchr", + "pin-project-lite", + "tokio", ] [[package]] -name = "cexpr" -version = "0.6.0" +name = "async-stream" +version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" +checksum = "0b5a71a6f37880a80d1d7f19efd781e4b5de42c88f0722cc13bcb6cc2cfe8476" dependencies = [ - "nom", + "async-stream-impl", + "futures-core", + "pin-project-lite", ] [[package]] -name = "cfg-if" -version = "0.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822" - -[[package]] -name = "cfg-if" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" - -[[package]] -name = "chrono" -version = "0.4.38" +name = "async-stream-impl" +version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" +checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ - "android-tzdata", - "iana-time-zone", - "js-sys", - "num-traits", - "wasm-bindgen", - "windows-targets 0.52.5", + "proc-macro2", + "quote", + "syn 2.0.96", ] [[package]] -name = "cipher" -version = "0.4.4" +name = "async-trait" +version = "0.1.85" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" +checksum = "3f934833b4b7233644e5848f235df3f57ed8c80f1528a26c3dfa13d2147fa056" dependencies = [ - "crypto-common", - "inout", + "proc-macro2", + "quote", + "syn 2.0.96", ] [[package]] -name = "clang-sys" -version = "1.8.1" +name = "async_io_stream" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4" +checksum = "b6d7b9decdf35d8908a7e3ef02f64c5e9b1695e230154c0e8de3969142d9b94c" dependencies = [ - "glob", - "libc", - "libloading", + "futures", + "pharos", + "rustc_version 0.4.1", ] [[package]] -name = "clap" -version = "4.5.4" +name = "atomic-waker" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90bc066a67923782aa8515dbaea16946c5bcc5addbd668bb80af688e53e548a0" -dependencies = [ - "clap_builder", - "clap_derive", -] +checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" [[package]] -name = "clap_builder" -version = "4.5.2" +name = "aurora-engine-modexp" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4" +checksum = "0aef7712851e524f35fbbb74fa6599c5cd8692056a1c36f9ca0d2001b670e7e5" dependencies = [ - "anstream", - "anstyle", - "clap_lex", - "strsim 0.11.1", + "hex", + "num", ] [[package]] -name = "clap_derive" -version = "4.5.4" +name = "auto_impl" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "528131438037fd55894f62d6e9f068b8f45ac57ffa77517819645d10aed04f64" +checksum = "e12882f59de5360c748c4cbf569a042d5fb0eb515f7bea9c1f470b47f6ffbd73" dependencies = [ - "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.96", ] [[package]] -name = "clap_lex" -version = "0.7.0" +name = "autocfg" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce" +checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" [[package]] -name = "coins-bip32" -version = "0.8.7" +name = "axum" +version = "0.6.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b6be4a5df2098cd811f3194f64ddb96c267606bffd9689ac7b0160097b01ad3" +checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf" dependencies = [ - "bs58", - "coins-core", - "digest 0.10.7", - "hmac", - "k256", + "async-trait", + "axum-core", + "bitflags 1.3.2", + "bytes", + "futures-util", + "http 0.2.12", + "http-body 0.4.6", + "hyper 0.14.32", + "itoa", + "matchit", + "memchr", + "mime", + "percent-encoding", + "pin-project-lite", + "rustversion", "serde", - "sha2", - "thiserror", + "serde_json", + "serde_path_to_error", + "serde_urlencoded", + "sync_wrapper 0.1.2", + "tokio", + "tower 0.4.13", + "tower-layer", + "tower-service", ] [[package]] -name = "coins-bip39" -version = "0.8.7" +name = "axum-core" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3db8fba409ce3dc04f7d804074039eb68b960b0829161f8e06c95fea3f122528" +checksum = "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c" dependencies = [ - "bitvec", - "coins-bip32", - "hmac", - "once_cell", - "pbkdf2 0.12.2", - "rand", - "sha2", - "thiserror", + "async-trait", + "bytes", + "futures-util", + "http 0.2.12", + "http-body 0.4.6", + "mime", + "rustversion", + "tower-layer", + "tower-service", ] [[package]] -name = "coins-core" -version = "0.8.7" +name = "backtrace" +version = "0.3.74" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5286a0843c21f8367f7be734f89df9b822e0321d8bcce8d6e735aadff7d74979" +checksum = "8d82cb332cdfaed17ae235a638438ac4d4839913cc2af585c3c6746e8f8bee1a" dependencies = [ - "base64 0.21.7", - "bech32", - "bs58", - "digest 0.10.7", - "generic-array", - "hex", - "ripemd", - "serde", - "serde_derive", - "sha2", - "sha3 0.10.8", - "thiserror", + "addr2line", + "cfg-if", + "libc", + "miniz_oxide", + "object", + "rustc-demangle", + "windows-targets 0.52.6", ] [[package]] -name = "colorchoice" -version = "1.0.1" +name = "base16ct" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b6a852b24ab71dffc585bcb46eaf7959d175cb865a7152e35b348d1b2960422" +checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" [[package]] -name = "const-hex" -version = "1.11.4" +name = "base64" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70ff96486ccc291d36a958107caf2c0af8c78c0af7d31ae2f35ce055130de1a6" -dependencies = [ - "cfg-if 1.0.0", - "cpufeatures", - "hex", - "proptest", - "serde", -] +checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" [[package]] -name = "const-oid" -version = "0.9.6" +name = "base64" +version = "0.21.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" +checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" [[package]] -name = "constant_time_eq" -version = "0.3.0" +name = "base64" +version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7144d30dcf0fafbce74250a3963025d8d52177934239851c917d29f1df280c2" +checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" [[package]] -name = "convert_case" -version = "0.4.0" +name = "base64ct" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" +checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" [[package]] -name = "core-foundation" -version = "0.9.4" +name = "bincode" +version = "1.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" +checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" dependencies = [ - "core-foundation-sys", - "libc", + "serde", ] [[package]] -name = "core-foundation-sys" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" - -[[package]] -name = "cpufeatures" -version = "0.2.12" +name = "bindgen" +version = "0.69.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504" +checksum = "271383c67ccabffb7381723dea0672a673f292304fcb45c01cc648c7a8d58088" dependencies = [ - "libc", + "bitflags 2.8.0", + "cexpr", + "clang-sys", + "itertools 0.12.1", + "lazy_static", + "lazycell", + "proc-macro2", + "quote", + "regex", + "rustc-hash 1.1.0", + "shlex", + "syn 2.0.96", ] [[package]] -name = "crc32fast" -version = "1.4.2" +name = "bindgen" +version = "0.70.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" +checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f" dependencies = [ - "cfg-if 1.0.0", + "bitflags 2.8.0", + "cexpr", + "clang-sys", + "itertools 0.13.0", + "proc-macro2", + "quote", + "regex", + "rustc-hash 1.1.0", + "shlex", + "syn 2.0.96", ] [[package]] -name = "crossbeam" -version = "0.8.4" +name = "bit-set" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1137cd7e7fc0fb5d3c5a8678be38ec56e819125d8d7907411fe24ccb943faca8" +checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3" dependencies = [ - "crossbeam-channel", - "crossbeam-deque", - "crossbeam-epoch", - "crossbeam-queue", - "crossbeam-utils", + "bit-vec", ] [[package]] -name = "crossbeam-channel" -version = "0.5.13" +name = "bit-vec" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2" -dependencies = [ - "crossbeam-utils", -] +checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" [[package]] -name = "crossbeam-deque" -version = "0.8.5" +name = "bitflags" +version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" -dependencies = [ - "crossbeam-epoch", - "crossbeam-utils", -] +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] -name = "crossbeam-epoch" -version = "0.9.18" +name = "bitflags" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" +checksum = "8f68f53c83ab957f72c32642f3868eec03eb974d1fb82e453128456482613d36" dependencies = [ - "crossbeam-utils", + "serde", ] [[package]] -name = "crossbeam-queue" -version = "0.3.11" +name = "bitvec" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df0346b5d5e76ac2fe4e327c5fd1118d6be7c51dfb18f9b7922923f287471e35" +checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" dependencies = [ - "crossbeam-utils", + "funty", + "radium", + "serde", + "tap", + "wyz", ] [[package]] -name = "crossbeam-utils" -version = "0.8.20" +name = "block-buffer" +version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" +checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" +dependencies = [ + "generic-array", +] [[package]] -name = "crunchy" -version = "0.2.2" +name = "blst" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" +checksum = "4378725facc195f1a538864863f6de233b500a8862747e7f165078a419d5e874" +dependencies = [ + "cc", + "glob", + "threadpool", + "zeroize", +] [[package]] -name = "crypto-bigint" -version = "0.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" +name = "bn254" +version = "0.1.0" +source = "git+https://github.com/scroll-tech/bn254.git?branch=master#81e1dcc92ee9a2798b13b84b24de182e9c42256e" dependencies = [ - "generic-array", + "ff", + "getrandom 0.2.15", + "rand", "rand_core", + "sp1-intrinsics", "subtle", - "zeroize", ] [[package]] -name = "crypto-common" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" +name = "bn254" +version = "0.1.0" +source = "git+https://github.com/scroll-tech/bn254#81e1dcc92ee9a2798b13b84b24de182e9c42256e" dependencies = [ - "generic-array", - "typenum", + "ff", + "getrandom 0.2.15", + "rand", + "rand_core", + "sp1-intrinsics", + "subtle", ] [[package]] -name = "ctor" -version = "0.1.26" +name = "bumpalo" +version = "3.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d2301688392eb071b0bf1a37be05c469d3cc4dbbd95df672fe28ab021e6a096" -dependencies = [ - "quote", - "syn 1.0.109", -] +checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" [[package]] -name = "ctr" -version = "0.9.2" +name = "byte-slice-cast" +version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835" -dependencies = [ - "cipher", -] +checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c" [[package]] -name = "darling" -version = "0.13.4" +name = "bytecheck" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c" +checksum = "50c8f430744b23b54ad15161fcbc22d82a29b73eacbe425fea23ec822600bc6f" dependencies = [ - "darling_core", - "darling_macro", + "bytecheck_derive", + "ptr_meta", + "rancor", + "simdutf8", ] [[package]] -name = "darling_core" -version = "0.13.4" +name = "bytecheck_derive" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610" +checksum = "523363cbe1df49b68215efdf500b103ac3b0fb4836aed6d15689a076eadb8fff" dependencies = [ - "fnv", - "ident_case", "proc-macro2", "quote", - "strsim 0.10.0", - "syn 1.0.109", + "syn 2.0.96", ] [[package]] -name = "darling_macro" -version = "0.13.4" +name = "bytemuck" +version = "1.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835" -dependencies = [ - "darling_core", - "quote", - "syn 1.0.109", -] +checksum = "ef657dfab802224e671f5818e9a4935f9b1957ed18e58292690cc39e7a4092a3" [[package]] -name = "data-encoding" -version = "2.6.0" +name = "byteorder" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] -name = "der" -version = "0.7.9" +name = "bytes" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0" +checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b" dependencies = [ - "const-oid", - "zeroize", + "serde", ] [[package]] -name = "derivative" -version = "2.2.0" +name = "bzip2-sys" +version = "0.1.11+1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" +checksum = "736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc" dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", + "cc", + "libc", + "pkg-config", ] [[package]] -name = "derive_more" -version = "0.99.17" +name = "c-kzg" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" +checksum = "f0307f72feab3300336fb803a57134159f6e20139af1357f36c54cb90d8e8928" dependencies = [ - "convert_case", - "proc-macro2", - "quote", - "rustc_version 0.4.0", - "syn 1.0.109", + "blst", + "cc", + "glob", + "hex", + "libc", + "once_cell", + "serde", ] [[package]] -name = "digest" -version = "0.9.0" +name = "cc" +version = "1.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" +checksum = "13208fcbb66eaeffe09b99fffbe1af420f00a7b35aa99ad683dfc1aa76145229" dependencies = [ - "generic-array", + "jobserver", + "libc", + "shlex", ] [[package]] -name = "digest" -version = "0.10.7" +name = "cexpr" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" +checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" dependencies = [ - "block-buffer 0.10.4", - "const-oid", - "crypto-common", - "subtle", + "nom", ] [[package]] -name = "dotenv" -version = "0.15.0" +name = "cfg-if" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77c90badedccf4105eca100756a0b1289e191f6fcbdadd3cee1d2f614f97da8f" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] -name = "dotenvy" -version = "0.15.7" +name = "cfg_aliases" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1aaf95b3e5c8f23aa320147307562d361db0ae0d51242340f558153b4eb2439b" +checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" [[package]] -name = "dyn-clone" -version = "1.0.17" +name = "chrono" +version = "0.4.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" +checksum = "7e36cc9d416881d2e24f9a963be5fb1cd90966419ac844274161d10488b3e825" +dependencies = [ + "android-tzdata", + "iana-time-zone", + "js-sys", + "num-traits", + "serde", + "wasm-bindgen", + "windows-targets 0.52.6", +] [[package]] -name = "ecdsa" -version = "0.16.9" +name = "clang-sys" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca" +checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4" dependencies = [ - "der", - "digest 0.10.7", - "elliptic-curve", - "rfc6979", - "signature", - "spki", + "glob", + "libc", + "libloading", ] [[package]] -name = "either" -version = "1.12.0" +name = "clap" +version = "4.5.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3dca9240753cf90908d7e4aac30f630662b02aebaa1b58a3cadabdb23385b58b" +checksum = "769b0145982b4b48713e01ec42d61614425f27b7058bda7180a3a41f30104796" +dependencies = [ + "clap_builder", + "clap_derive", +] [[package]] -name = "elliptic-curve" -version = "0.13.8" +name = "clap_builder" +version = "4.5.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" +checksum = "1b26884eb4b57140e4d2d93652abfa49498b938b3c9179f9fc487b0acc3edad7" dependencies = [ - "base16ct", - "crypto-bigint", - "digest 0.10.7", - "ff", - "generic-array", - "group", - "pkcs8", - "rand_core", - "sec1", - "subtle", - "zeroize", + "anstream", + "anstyle", + "clap_lex", + "strsim", ] [[package]] -name = "encoder" -version = "0.1.0" -source = "git+https://github.com/scroll-tech/da-codec.git?tag=v0.1.0#5a28b752d4504bf0966734fe4a6a5433981c74c2" +name = "clap_derive" +version = "4.5.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54b755194d6389280185988721fffba69495eed5ee9feeee9a599b53db80318c" dependencies = [ - "zstd", + "heck 0.5.0", + "proc-macro2", + "quote", + "syn 2.0.96", ] [[package]] -name = "encoding_rs" -version = "0.8.34" +name = "clap_lex" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6" + +[[package]] +name = "colorchoice" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" + +[[package]] +name = "console" +version = "0.15.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59" +checksum = "ea3c6ecd8059b57859df5c69830340ed3c41d30e3da0c1cbed90a96ac853041b" dependencies = [ - "cfg-if 1.0.0", + "encode_unicode", + "libc", + "once_cell", + "unicode-width", + "windows-sys 0.59.0", ] [[package]] -name = "enr" -version = "0.8.1" +name = "const-hex" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf56acd72bb22d2824e66ae8e9e5ada4d0de17a69c7fd35569dde2ada8ec9116" +checksum = "4b0485bab839b018a8f1723fc5391819fea5f8f0f32288ef8a735fd096b6160c" dependencies = [ - "base64 0.13.1", - "bytes", + "cfg-if", + "cpufeatures", "hex", - "k256", - "log", - "rand", - "rlp", + "proptest", "serde", - "sha3 0.10.8", - "zeroize", ] [[package]] -name = "enumn" -version = "0.1.13" +name = "const-oid" +version = "0.9.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" + +[[package]] +name = "convert_case" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fd000fd6988e73bbe993ea3db9b1aa64906ab88766d654973924340c8cddb42" +checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", + "unicode-segmentation", ] [[package]] -name = "env_logger" -version = "0.10.2" +name = "core-foundation" +version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cd405aab171cb85d6735e5c8d9db038c17d3ca007a4d2c25f337935c3d90580" +checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" dependencies = [ - "humantime", - "is-terminal", - "log", - "regex", - "termcolor", + "core-foundation-sys", + "libc", ] [[package]] -name = "equivalent" -version = "1.0.1" +name = "core-foundation-sys" +version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" +checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" [[package]] -name = "errno" -version = "0.3.9" +name = "cpufeatures" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" +checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" dependencies = [ "libc", - "windows-sys 0.52.0", ] [[package]] -name = "eth-keystore" -version = "0.5.0" +name = "crc" +version = "3.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fda3bf123be441da5260717e0661c25a2fd9cb2b2c1d20bf2e05580047158ab" +checksum = "69e6e4d7b33a94f0991c26729976b10ebde1d34c3ee82408fb536164fa10d636" dependencies = [ - "aes", - "ctr", - "digest 0.10.7", - "hex", - "hmac", - "pbkdf2 0.11.0", - "rand", - "scrypt", - "serde", - "serde_json", - "sha2", - "sha3 0.10.8", - "thiserror", - "uuid", + "crc-catalog", ] [[package]] -name = "eth-types" -version = "0.13.0" -source = "git+https://github.com/scroll-tech/zkevm-circuits.git?tag=v0.13.1#4009e5593f13ba73f64f556011ee5ef47bc4ebf3" +name = "crc-catalog" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" + +[[package]] +name = "crc32fast" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" dependencies = [ - "base64 0.13.1", - "ethers-core 2.0.7 (git+https://github.com/scroll-tech/ethers-rs.git?branch=v2.0.7)", - "ethers-signers", - "halo2curves", - "hex", - "itertools 0.11.0", - "log", - "num", - "num-bigint", - "poseidon-base", - "regex", - "revm-precompile", - "revm-primitives", - "serde", - "serde_json", - "serde_with", - "sha3 0.10.8", - "strum 0.25.0", - "strum_macros 0.25.3", - "subtle", - "uint", + "cfg-if", ] [[package]] -name = "ethabi" -version = "18.0.0" +name = "critical-section" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7413c5f74cc903ea37386a8965a936cbeb334bd270862fdece542c1b2dcbc898" +checksum = "790eea4361631c5e7d22598ecd5723ff611904e3344ce8720784c93e3d83d40b" + +[[package]] +name = "crossbeam-channel" +version = "0.5.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06ba6d68e24814cb8de6bb986db8222d3a027d15872cabc0d18817bc3c0e4471" dependencies = [ - "ethereum-types", - "hex", - "once_cell", - "regex", - "serde", - "serde_json", - "sha3 0.10.8", - "thiserror", - "uint", + "crossbeam-utils", ] [[package]] -name = "ethbloom" -version = "0.13.0" +name = "crossbeam-deque" +version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c22d4b5885b6aa2fe5e8b9329fb8d232bf739e434e6b87347c63bdd00c120f60" +checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51" dependencies = [ - "crunchy", - "fixed-hash", - "impl-codec", - "impl-rlp", - "impl-serde", - "scale-info", - "tiny-keccak", + "crossbeam-epoch", + "crossbeam-utils", ] [[package]] -name = "ethereum-types" -version = "0.14.1" +name = "crossbeam-epoch" +version = "0.9.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02d215cbf040552efcbe99a38372fe80ab9d00268e20012b79fcd0f073edd8ee" +checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" dependencies = [ - "ethbloom", - "fixed-hash", - "impl-codec", - "impl-rlp", - "impl-serde", - "primitive-types", - "scale-info", - "uint", + "crossbeam-utils", ] [[package]] -name = "ethers-core" -version = "2.0.7" +name = "crossbeam-utils" +version = "0.8.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" + +[[package]] +name = "crunchy" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6da5fa198af0d3be20c19192df2bd9590b92ce09a8421e793bec8851270f1b05" +checksum = "43da5946c66ffcc7745f48db692ffbb10a83bfe0afd96235c5c2a4fb23994929" + +[[package]] +name = "crypto-bigint" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" dependencies = [ - "arrayvec", - "bytes", - "chrono", - "elliptic-curve", - "ethabi", "generic-array", - "hex", - "k256", - "num_enum 0.6.1", - "open-fastrlp", - "rand", - "rlp", - "serde", - "serde_json", - "strum 0.24.1", - "tempfile", - "thiserror", - "tiny-keccak", - "unicode-xid", + "rand_core", + "subtle", + "zeroize", ] [[package]] -name = "ethers-core" -version = "2.0.7" -source = "git+https://github.com/scroll-tech/ethers-rs.git?branch=v2.0.7#e32dfd62e7cdec31160b91c5a646883594a586ba" +name = "crypto-common" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" dependencies = [ - "arrayvec", - "bytes", - "chrono", - "elliptic-curve", - "ethabi", "generic-array", - "hex", - "k256", - "num_enum 0.6.1", - "open-fastrlp", - "rand", - "rlp", - "serde", - "serde_json", - "strum 0.24.1", - "tempfile", - "thiserror", - "tiny-keccak", - "unicode-xid", + "typenum", +] + +[[package]] +name = "darling" +version = "0.20.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989" +dependencies = [ + "darling_core", + "darling_macro", +] + +[[package]] +name = "darling_core" +version = "0.20.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim", + "syn 2.0.96", +] + +[[package]] +name = "darling_macro" +version = "0.20.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" +dependencies = [ + "darling_core", + "quote", + "syn 2.0.96", +] + +[[package]] +name = "dashmap" +version = "6.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5041cc499144891f3790297212f32a74fb938e5136a14943f338ef9e0ae276cf" +dependencies = [ + "cfg-if", + "crossbeam-utils", + "hashbrown 0.14.5", + "lock_api", + "once_cell", + "parking_lot_core 0.9.10", +] + +[[package]] +name = "data-encoding" +version = "2.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e60eed09d8c01d3cee5b7d30acb059b76614c918fa0f992e0dd6eeb10daad6f" + +[[package]] +name = "der" +version = "0.7.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0" +dependencies = [ + "const-oid", + "zeroize", +] + +[[package]] +name = "deranged" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" +dependencies = [ + "powerfmt", + "serde", +] + +[[package]] +name = "derivative" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "derive_more" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a9b99b9cbbe49445b21764dc0625032a89b145a2642e67603e1c936f5458d05" +dependencies = [ + "derive_more-impl", +] + +[[package]] +name = "derive_more-impl" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" +dependencies = [ + "convert_case", + "proc-macro2", + "quote", + "syn 2.0.96", + "unicode-xid", +] + +[[package]] +name = "digest" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" +dependencies = [ + "generic-array", +] + +[[package]] +name = "digest" +version = "0.10.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" +dependencies = [ + "block-buffer", + "const-oid", + "crypto-common", + "subtle", +] + +[[package]] +name = "displaydoc" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.96", +] + +[[package]] +name = "dotenv" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77c90badedccf4105eca100756a0b1289e191f6fcbdadd3cee1d2f614f97da8f" + +[[package]] +name = "dunce" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" + +[[package]] +name = "dyn-clone" +version = "1.0.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" + +[[package]] +name = "ecdsa" +version = "0.16.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca" +dependencies = [ + "der", + "digest 0.10.7", + "elliptic-curve", + "rfc6979", + "serdect", + "signature", + "spki", +] + +[[package]] +name = "either" +version = "1.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" + +[[package]] +name = "elliptic-curve" +version = "0.13.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" +dependencies = [ + "base16ct", + "crypto-bigint", + "digest 0.10.7", + "ff", + "generic-array", + "group", + "pkcs8", + "rand_core", + "sec1", + "serdect", + "subtle", + "zeroize", +] + +[[package]] +name = "encode_unicode" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0" + +[[package]] +name = "encoding_rs" +version = "0.8.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "enr" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf56acd72bb22d2824e66ae8e9e5ada4d0de17a69c7fd35569dde2ada8ec9116" +dependencies = [ + "base64 0.13.1", + "bytes", + "hex", + "k256", + "log", + "rand", + "rlp", + "serde", + "sha3", + "zeroize", +] + +[[package]] +name = "enumn" +version = "0.1.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2f9ed6b3789237c8a0c1c505af1c7eb2c560df6186f01b098c3a1064ea532f38" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.96", +] + +[[package]] +name = "equivalent" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + +[[package]] +name = "errno" +version = "0.3.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d" +dependencies = [ + "libc", + "windows-sys 0.59.0", +] + +[[package]] +name = "ethabi" +version = "18.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7413c5f74cc903ea37386a8965a936cbeb334bd270862fdece542c1b2dcbc898" +dependencies = [ + "ethereum-types", + "hex", + "once_cell", + "regex", + "serde", + "serde_json", + "sha3", + "thiserror 1.0.69", + "uint", +] + +[[package]] +name = "ethbloom" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c22d4b5885b6aa2fe5e8b9329fb8d232bf739e434e6b87347c63bdd00c120f60" +dependencies = [ + "crunchy", + "fixed-hash", + "impl-codec", + "impl-rlp", + "impl-serde", + "scale-info", + "tiny-keccak", +] + +[[package]] +name = "ethereum-types" +version = "0.14.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02d215cbf040552efcbe99a38372fe80ab9d00268e20012b79fcd0f073edd8ee" +dependencies = [ + "ethbloom", + "fixed-hash", + "impl-codec", + "impl-rlp", + "impl-serde", + "primitive-types", + "scale-info", + "uint", +] + +[[package]] +name = "ethers-core" +version = "2.0.7" +source = "git+https://github.com/scroll-tech/ethers-rs.git?branch=v2.0.7#e32dfd62e7cdec31160b91c5a646883594a586ba" +dependencies = [ + "arrayvec", + "bytes", + "chrono", + "elliptic-curve", + "ethabi", + "generic-array", + "hex", + "k256", + "num_enum 0.6.1", + "open-fastrlp", + "rand", + "rlp", + "serde", + "serde_json", + "strum 0.24.1", + "tempfile", + "thiserror 1.0.69", + "tiny-keccak", + "unicode-xid", +] + +[[package]] +name = "ethers-providers" +version = "2.0.7" +source = "git+https://github.com/scroll-tech/ethers-rs.git?branch=v2.0.7#e32dfd62e7cdec31160b91c5a646883594a586ba" +dependencies = [ + "async-trait", + "auto_impl", + "base64 0.21.7", + "bytes", + "enr", + "ethers-core", + "futures-channel", + "futures-core", + "futures-timer", + "futures-util", + "hashers", + "hex", + "http 0.2.12", + "instant", + "once_cell", + "pin-project", + "reqwest 0.11.27", + "serde", + "serde_json", + "thiserror 1.0.69", + "tokio", + "tokio-tungstenite", + "tracing", + "tracing-futures", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "ws_stream_wasm", +] + +[[package]] +name = "eyre" +version = "0.6.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cd915d99f24784cdc19fd37ef22b97e3ff0ae756c7e492e9fbfe897d61e2aec" +dependencies = [ + "indenter", + "once_cell", +] + +[[package]] +name = "fastrand" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" + +[[package]] +name = "fastrlp" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "139834ddba373bbdd213dffe02c8d110508dcf1726c2be27e8d1f7d7e1856418" +dependencies = [ + "arrayvec", + "auto_impl", + "bytes", +] + +[[package]] +name = "ff" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" +dependencies = [ + "bitvec", + "rand_core", + "subtle", +] + +[[package]] +name = "filetime" +version = "0.2.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35c0522e981e68cbfa8c3f978441a5f34b30b96e146b33cd3359176b50fe8586" +dependencies = [ + "cfg-if", + "libc", + "libredox", + "windows-sys 0.59.0", +] + +[[package]] +name = "fixed-hash" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" +dependencies = [ + "byteorder", + "rand", + "rustc-hex", + "static_assertions", +] + +[[package]] +name = "flate2" +version = "1.0.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c936bfdafb507ebbf50b8074c54fa31c5be9a1e7e5f467dd659697041407d07c" +dependencies = [ + "crc32fast", + "miniz_oxide", +] + +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + +[[package]] +name = "foldhash" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0d2fde1f7b3d48b8395d5f2de76c18a528bd6a9cdde438df747bfcba3e05d6f" + +[[package]] +name = "foreign-types" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" +dependencies = [ + "foreign-types-shared", +] + +[[package]] +name = "foreign-types-shared" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" + +[[package]] +name = "form_urlencoded" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" +dependencies = [ + "percent-encoding", +] + +[[package]] +name = "fsevent-sys" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76ee7a02da4d231650c7cea31349b889be2f45ddb3ef3032d2ec8185f6313fd2" +dependencies = [ + "libc", +] + +[[package]] +name = "funty" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" + +[[package]] +name = "futures" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876" +dependencies = [ + "futures-channel", + "futures-core", + "futures-executor", + "futures-io", + "futures-sink", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-channel" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10" +dependencies = [ + "futures-core", + "futures-sink", +] + +[[package]] +name = "futures-core" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" + +[[package]] +name = "futures-executor" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f" +dependencies = [ + "futures-core", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-io" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" + +[[package]] +name = "futures-macro" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.96", +] + +[[package]] +name = "futures-sink" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7" + +[[package]] +name = "futures-task" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988" + +[[package]] +name = "futures-timer" +version = "3.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24" +dependencies = [ + "gloo-timers", + "send_wrapper 0.4.0", +] + +[[package]] +name = "futures-util" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81" +dependencies = [ + "futures-channel", + "futures-core", + "futures-io", + "futures-macro", + "futures-sink", + "futures-task", + "memchr", + "pin-project-lite", + "pin-utils", + "slab", +] + +[[package]] +name = "futures-utils-wasm" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42012b0f064e01aa58b545fe3727f90f7dd4020f4a3ea735b50344965f5a57e9" + +[[package]] +name = "fxhash" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" +dependencies = [ + "byteorder", +] + +[[package]] +name = "generic-array" +version = "0.14.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +dependencies = [ + "typenum", + "version_check", + "zeroize", +] + +[[package]] +name = "getrandom" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" +dependencies = [ + "cfg-if", + "js-sys", + "libc", + "wasi 0.11.0+wasi-snapshot-preview1", + "wasm-bindgen", +] + +[[package]] +name = "getrandom" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43a49c392881ce6d5c3b8cb70f98717b7c07aabbdff06687b9030dbfbe2725f8" +dependencies = [ + "cfg-if", + "libc", + "wasi 0.13.3+wasi-0.2.2", + "windows-targets 0.52.6", +] + +[[package]] +name = "gimli" +version = "0.31.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" + +[[package]] +name = "glob" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2" + +[[package]] +name = "gloo-timers" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b995a66bb87bebce9a0f4a95aed01daca4872c050bfcb21653361c03bc35e5c" +dependencies = [ + "futures-channel", + "futures-core", + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "group" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" +dependencies = [ + "ff", + "rand_core", + "subtle", +] + +[[package]] +name = "h2" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8" +dependencies = [ + "bytes", + "fnv", + "futures-core", + "futures-sink", + "futures-util", + "http 0.2.12", + "indexmap 2.7.1", + "slab", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "h2" +version = "0.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ccae279728d634d083c00f6099cb58f01cc99c145b84b8be2f6c74618d79922e" +dependencies = [ + "atomic-waker", + "bytes", + "fnv", + "futures-core", + "futures-sink", + "http 1.2.0", + "indexmap 2.7.1", + "slab", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "hashbrown" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" + +[[package]] +name = "hashbrown" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" + +[[package]] +name = "hashbrown" +version = "0.14.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" + +[[package]] +name = "hashbrown" +version = "0.15.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" +dependencies = [ + "allocator-api2", + "equivalent", + "foldhash", + "rayon", + "serde", +] + +[[package]] +name = "hashers" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2bca93b15ea5a746f220e56587f71e73c6165eab783df9e26590069953e3c30" +dependencies = [ + "fxhash", +] + +[[package]] +name = "heck" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" + +[[package]] +name = "heck" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" + +[[package]] +name = "hermit-abi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" + +[[package]] +name = "hex" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" +dependencies = [ + "serde", +] + +[[package]] +name = "hmac" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" +dependencies = [ + "digest 0.10.7", +] + +[[package]] +name = "http" +version = "0.2.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1" +dependencies = [ + "bytes", + "fnv", + "itoa", +] + +[[package]] +name = "http" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f16ca2af56261c99fba8bac40a10251ce8188205a4c448fbb745a2e4daa76fea" +dependencies = [ + "bytes", + "fnv", + "itoa", +] + +[[package]] +name = "http-body" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" +dependencies = [ + "bytes", + "http 0.2.12", + "pin-project-lite", +] + +[[package]] +name = "http-body" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" +dependencies = [ + "bytes", + "http 1.2.0", +] + +[[package]] +name = "http-body-util" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f" +dependencies = [ + "bytes", + "futures-util", + "http 1.2.0", + "http-body 1.0.1", + "pin-project-lite", +] + +[[package]] +name = "httparse" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2d708df4e7140240a16cd6ab0ab65c972d7433ab77819ea693fde9c43811e2a" + +[[package]] +name = "httpdate" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" + +[[package]] +name = "hyper" +version = "0.14.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41dfc780fdec9373c01bae43289ea34c972e40ee3c9f6b3c8801a35f35586ce7" +dependencies = [ + "bytes", + "futures-channel", + "futures-core", + "futures-util", + "h2 0.3.26", + "http 0.2.12", + "http-body 0.4.6", + "httparse", + "httpdate", + "itoa", + "pin-project-lite", + "socket2", + "tokio", + "tower-service", + "tracing", + "want", +] + +[[package]] +name = "hyper" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc2b571658e38e0c01b1fdca3bbbe93c00d3d71693ff2770043f8c29bc7d6f80" +dependencies = [ + "bytes", + "futures-channel", + "futures-util", + "h2 0.4.7", + "http 1.2.0", + "http-body 1.0.1", + "httparse", + "itoa", + "pin-project-lite", + "smallvec", + "tokio", + "want", +] + +[[package]] +name = "hyper-rustls" +version = "0.24.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" +dependencies = [ + "futures-util", + "http 0.2.12", + "hyper 0.14.32", + "rustls 0.21.12", + "tokio", + "tokio-rustls 0.24.1", +] + +[[package]] +name = "hyper-rustls" +version = "0.27.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d191583f3da1305256f22463b9bb0471acad48a4e534a5218b9963e9c1f59b2" +dependencies = [ + "futures-util", + "http 1.2.0", + "hyper 1.6.0", + "hyper-util", + "rustls 0.23.22", + "rustls-pki-types", + "tokio", + "tokio-rustls 0.26.1", + "tower-service", + "webpki-roots 0.26.7", +] + +[[package]] +name = "hyper-tls" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" +dependencies = [ + "bytes", + "http-body-util", + "hyper 1.6.0", + "hyper-util", + "native-tls", + "tokio", + "tokio-native-tls", + "tower-service", +] + +[[package]] +name = "hyper-util" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df2dcfbe0677734ab2f3ffa7fa7bfd4706bfdc1ef393f2ee30184aed67e631b4" +dependencies = [ + "bytes", + "futures-channel", + "futures-util", + "http 1.2.0", + "http-body 1.0.1", + "hyper 1.6.0", + "pin-project-lite", + "socket2", + "tokio", + "tower-service", + "tracing", +] + +[[package]] +name = "iana-time-zone" +version = "0.1.61" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "wasm-bindgen", + "windows-core 0.52.0", +] + +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +dependencies = [ + "cc", +] + +[[package]] +name = "icu_collections" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" +dependencies = [ + "displaydoc", + "yoke", + "zerofrom", + "zerovec", +] + +[[package]] +name = "icu_locid" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" +dependencies = [ + "displaydoc", + "litemap", + "tinystr", + "writeable", + "zerovec", +] + +[[package]] +name = "icu_locid_transform" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e" +dependencies = [ + "displaydoc", + "icu_locid", + "icu_locid_transform_data", + "icu_provider", + "tinystr", + "zerovec", +] + +[[package]] +name = "icu_locid_transform_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e" + +[[package]] +name = "icu_normalizer" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f" +dependencies = [ + "displaydoc", + "icu_collections", + "icu_normalizer_data", + "icu_properties", + "icu_provider", + "smallvec", + "utf16_iter", + "utf8_iter", + "write16", + "zerovec", +] + +[[package]] +name = "icu_normalizer_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516" + +[[package]] +name = "icu_properties" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5" +dependencies = [ + "displaydoc", + "icu_collections", + "icu_locid_transform", + "icu_properties_data", + "icu_provider", + "tinystr", + "zerovec", +] + +[[package]] +name = "icu_properties_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569" + +[[package]] +name = "icu_provider" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" +dependencies = [ + "displaydoc", + "icu_locid", + "icu_provider_macros", + "stable_deref_trait", + "tinystr", + "writeable", + "yoke", + "zerofrom", + "zerovec", +] + +[[package]] +name = "icu_provider_macros" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.96", +] + +[[package]] +name = "ident_case" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" + +[[package]] +name = "idna" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e" +dependencies = [ + "idna_adapter", + "smallvec", + "utf8_iter", ] [[package]] -name = "ethers-providers" -version = "2.0.7" +name = "idna_adapter" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56b498fd2a6c019d023e43e83488cd1fb0721f299055975aa6bac8dbf1e95f2c" +checksum = "daca1df1c957320b2cf139ac61e7bd64fed304c5040df000a745aa1de3b4ef71" dependencies = [ - "async-trait", - "auto_impl", - "base64 0.21.7", - "bytes", - "enr", - "ethers-core 2.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "futures-channel", - "futures-core", - "futures-timer", - "futures-util", - "hashers", - "hex", - "http 0.2.12", - "instant", - "once_cell", - "pin-project", - "reqwest 0.11.27", - "serde", - "serde_json", - "thiserror", - "tokio", - "tokio-tungstenite", - "tracing", - "tracing-futures", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", - "ws_stream_wasm", + "icu_normalizer", + "icu_properties", ] [[package]] -name = "ethers-providers" -version = "2.0.7" -source = "git+https://github.com/scroll-tech/ethers-rs.git?branch=v2.0.7#e32dfd62e7cdec31160b91c5a646883594a586ba" +name = "impl-codec" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba6a270039626615617f3f36d15fc827041df3b78c439da2cadfa47455a77f2f" dependencies = [ - "async-trait", - "auto_impl", - "base64 0.21.7", - "bytes", - "enr", - "ethers-core 2.0.7 (git+https://github.com/scroll-tech/ethers-rs.git?branch=v2.0.7)", - "futures-channel", - "futures-core", - "futures-timer", - "futures-util", - "hashers", - "hex", - "http 0.2.12", - "instant", - "once_cell", - "pin-project", - "reqwest 0.11.27", - "serde", - "serde_json", - "thiserror", - "tokio", - "tokio-tungstenite", - "tracing", - "tracing-futures", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", - "ws_stream_wasm", + "parity-scale-codec", ] [[package]] -name = "ethers-signers" -version = "2.0.7" -source = "git+https://github.com/scroll-tech/ethers-rs.git?branch=v2.0.7#e32dfd62e7cdec31160b91c5a646883594a586ba" +name = "impl-rlp" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f28220f89297a075ddc7245cd538076ee98b01f2a9c23a53a4f1105d5a322808" dependencies = [ - "async-trait", - "coins-bip32", - "coins-bip39", - "elliptic-curve", - "eth-keystore", - "ethers-core 2.0.7 (git+https://github.com/scroll-tech/ethers-rs.git?branch=v2.0.7)", - "hex", - "rand", - "sha2", - "thiserror", - "tracing", + "rlp", ] [[package]] -name = "external-tracer" -version = "0.13.0" -source = "git+https://github.com/scroll-tech/zkevm-circuits.git?tag=v0.13.1#4009e5593f13ba73f64f556011ee5ef47bc4ebf3" +name = "impl-serde" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebc88fc67028ae3db0c853baa36269d398d5f45b6982f95549ff5def78c935cd" dependencies = [ - "eth-types", - "geth-utils", - "log", "serde", - "serde_json", - "serde_stacker", ] [[package]] -name = "fastrand" -version = "2.1.0" +name = "impl-trait-for-tuples" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.96", +] + +[[package]] +name = "indenter" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a" +checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683" [[package]] -name = "fastrlp" -version = "0.3.1" +name = "indexmap" +version = "1.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "139834ddba373bbdd213dffe02c8d110508dcf1726c2be27e8d1f7d7e1856418" +checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" dependencies = [ - "arrayvec", - "auto_impl", - "bytes", + "autocfg", + "hashbrown 0.12.3", + "serde", ] [[package]] -name = "ff" -version = "0.13.0" +name = "indexmap" +version = "2.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" +checksum = "8c9c992b02b5b4c94ea26e32fe5bccb7aa7d9f390ab5c1221ff895bc7ea8b652" dependencies = [ - "bitvec", - "rand_core", - "subtle", + "equivalent", + "hashbrown 0.15.2", + "rayon", + "serde", ] [[package]] -name = "fixed-hash" -version = "0.8.0" +name = "indicatif" +version = "0.17.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" +checksum = "183b3088984b400f4cfac3620d5e076c84da5364016b4f49473de574b2586235" dependencies = [ - "byteorder", - "rand", - "rustc-hex", - "static_assertions", + "console", + "number_prefix", + "portable-atomic", + "unicode-width", + "web-time", ] [[package]] -name = "flate2" -version = "1.0.30" +name = "inotify" +version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f54427cfd1c7829e2a139fcefea601bf088ebca651d2bf53ebc600eac295dae" +checksum = "f8069d3ec154eb856955c1c0fbffefbf5f3c40a104ec912d4797314c1801abff" dependencies = [ - "crc32fast", - "miniz_oxide", + "bitflags 1.3.2", + "inotify-sys", + "libc", ] [[package]] -name = "fnv" -version = "1.0.7" +name = "inotify-sys" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" +checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb" +dependencies = [ + "libc", +] [[package]] -name = "foreign-types" -version = "0.3.2" +name = "instant" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" +checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222" dependencies = [ - "foreign-types-shared", + "cfg-if", + "js-sys", + "wasm-bindgen", + "web-sys", ] [[package]] -name = "foreign-types-shared" -version = "0.1.1" +name = "ipnet" +version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" +checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" [[package]] -name = "form_urlencoded" -version = "1.2.1" +name = "is_terminal_polyfill" +version = "1.70.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" +checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" + +[[package]] +name = "itertools" +version = "0.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" dependencies = [ - "percent-encoding", + "either", ] [[package]] -name = "funty" -version = "2.0.0" +name = "itertools" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" +checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" +dependencies = [ + "either", +] [[package]] -name = "futures" -version = "0.3.30" +name = "itertools" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" +checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" dependencies = [ - "futures-channel", - "futures-core", - "futures-executor", - "futures-io", - "futures-sink", - "futures-task", - "futures-util", + "either", ] [[package]] -name = "futures-channel" -version = "0.3.30" +name = "itertools" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" +checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285" dependencies = [ - "futures-core", - "futures-sink", + "either", ] [[package]] -name = "futures-core" -version = "0.3.30" +name = "itoa" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" +checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" [[package]] -name = "futures-executor" -version = "0.3.30" +name = "jobserver" +version = "0.1.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d" +checksum = "48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0" dependencies = [ - "futures-core", - "futures-task", - "futures-util", + "libc", ] [[package]] -name = "futures-io" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" - -[[package]] -name = "futures-macro" -version = "0.3.30" +name = "js-sys" +version = "0.3.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" +checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", + "once_cell", + "wasm-bindgen", ] [[package]] -name = "futures-sink" -version = "0.3.30" +name = "k256" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" +checksum = "f6e3919bbaa2945715f0bb6d3934a173d1e9a59ac23767fbaaef277265a7411b" +dependencies = [ + "cfg-if", + "ecdsa", + "elliptic-curve", + "once_cell", + "serdect", + "sha2", + "signature", +] [[package]] -name = "futures-task" -version = "0.3.30" +name = "keccak" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" +checksum = "ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654" +dependencies = [ + "cpufeatures", +] [[package]] -name = "futures-timer" -version = "3.0.3" +name = "keccak-asm" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24" +checksum = "505d1856a39b200489082f90d897c3f07c455563880bc5952e38eabf731c83b6" dependencies = [ - "gloo-timers", - "send_wrapper 0.4.0", + "digest 0.10.7", + "sha3-asm", ] [[package]] -name = "futures-util" -version = "0.3.30" +name = "kqueue" +version = "1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" +checksum = "7447f1ca1b7b563588a205fe93dea8df60fd981423a768bc1c0ded35ed147d0c" dependencies = [ - "futures-channel", - "futures-core", - "futures-io", - "futures-macro", - "futures-sink", - "futures-task", - "memchr", - "pin-project-lite", - "pin-utils", - "slab", + "kqueue-sys", + "libc", ] [[package]] -name = "fxhash" -version = "0.2.1" +name = "kqueue-sys" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" +checksum = "ed9625ffda8729b85e45cf04090035ac368927b8cebc34898e7c120f52e4838b" dependencies = [ - "byteorder", + "bitflags 1.3.2", + "libc", ] [[package]] -name = "gadgets" -version = "0.13.0" -source = "git+https://github.com/scroll-tech/zkevm-circuits.git?tag=v0.13.1#4009e5593f13ba73f64f556011ee5ef47bc4ebf3" +name = "lazy_static" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" dependencies = [ - "eth-types", - "halo2_proofs", - "poseidon-base", - "sha3 0.10.8", - "strum 0.25.0", + "spin 0.9.8", ] [[package]] -name = "generic-array" -version = "0.14.7" +name = "lazycell" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" -dependencies = [ - "typenum", - "version_check", - "zeroize", -] +checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] -name = "geth-utils" -version = "0.13.0" -source = "git+https://github.com/scroll-tech/zkevm-circuits.git?tag=v0.13.1#4009e5593f13ba73f64f556011ee5ef47bc4ebf3" +name = "libc" +version = "0.2.169" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a" + +[[package]] +name = "libloading" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc2f4eb4bc735547cfed7c0a4922cbd04a4655978c09b54f1f7b228750664c34" dependencies = [ - "env_logger", - "gobuild", - "log", + "cfg-if", + "windows-targets 0.52.6", ] [[package]] -name = "getrandom" -version = "0.2.15" +name = "libredox" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" +checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" dependencies = [ - "cfg-if 1.0.0", - "js-sys", + "bitflags 2.8.0", "libc", - "wasi", - "wasm-bindgen", + "redox_syscall 0.5.8", ] [[package]] -name = "gimli" -version = "0.28.1" +name = "librocksdb-sys" +version = "0.17.1+9.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" +checksum = "2b7869a512ae9982f4d46ba482c2a304f1efd80c6412a3d4bf57bb79a619679f" +dependencies = [ + "bindgen 0.69.5", + "bzip2-sys", + "cc", + "libc", + "libz-sys", + "lz4-sys", + "zstd-sys", +] [[package]] -name = "git-version" -version = "0.3.9" +name = "libz-sys" +version = "1.1.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ad568aa3db0fcbc81f2f116137f263d7304f512a1209b35b85150d3ef88ad19" +checksum = "df9b68e50e6e0b26f672573834882eb57759f6db9b3be2ea3c35c91188bb4eaa" dependencies = [ - "git-version-macro", + "cc", + "pkg-config", + "vcpkg", ] [[package]] -name = "git-version-macro" -version = "0.3.9" +name = "linux-raw-sys" +version = "0.4.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" + +[[package]] +name = "litemap" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ee93343901ab17bd981295f2cf0026d4ad018c7c31ba84549a4ddbb47a45104" + +[[package]] +name = "lock_api" +version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53010ccb100b96a67bc32c0175f0ed1426b31b655d562898e57325f81c023ac0" +checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", + "autocfg", + "scopeguard", ] [[package]] -name = "glob" -version = "0.3.1" +name = "log" +version = "0.4.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" +checksum = "04cbf5b083de1c7e0222a7a51dbfdba1cbe1c6ab0b15e29fff3f6c077fd9cd9f" [[package]] -name = "gloo-timers" -version = "0.2.6" +name = "lru" +version = "0.12.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b995a66bb87bebce9a0f4a95aed01daca4872c050bfcb21653361c03bc35e5c" +checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38" dependencies = [ - "futures-channel", - "futures-core", - "js-sys", - "wasm-bindgen", + "hashbrown 0.15.2", ] [[package]] -name = "gobuild" -version = "0.1.0-alpha.2" -source = "git+https://github.com/scroll-tech/gobuild.git#24935c2b8f677841f22acd6710957621bb294e0e" +name = "lz4-sys" +version = "1.11.1+lz4-1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6bd8c0d6c6ed0cd30b3652886bb8711dc4bb01d637a68105a3d5158039b418e6" dependencies = [ "cc", + "libc", ] [[package]] -name = "group" -version = "0.13.0" +name = "lz4_flex" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" -dependencies = [ - "ff", - "rand_core", - "subtle", -] +checksum = "75761162ae2b0e580d7e7c390558127e5f01b4194debd6221fd8c207fc80e3f5" [[package]] -name = "h2" -version = "0.3.26" +name = "matchers" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8" +checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" dependencies = [ - "bytes", - "fnv", - "futures-core", - "futures-sink", - "futures-util", - "http 0.2.12", - "indexmap", - "slab", - "tokio", - "tokio-util", - "tracing", + "regex-automata 0.1.10", ] [[package]] -name = "h2" -version = "0.4.5" +name = "matchit" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa82e28a107a8cc405f0839610bdc9b15f1e25ec7d696aa5cf173edbcb1486ab" -dependencies = [ - "atomic-waker", - "bytes", - "fnv", - "futures-core", - "futures-sink", - "http 1.1.0", - "indexmap", - "slab", - "tokio", - "tokio-util", - "tracing", -] +checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" [[package]] -name = "halo2-base" -version = "0.2.2" -source = "git+https://github.com/scroll-tech/halo2-lib?branch=develop#817cace374a9f4b2eca682b1cc36f143255ea25f" -dependencies = [ - "ff", - "halo2_proofs", - "itertools 0.10.5", - "num-bigint", - "num-integer", - "num-traits", - "rand_chacha", - "rustc-hash", -] +name = "memchr" +version = "2.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" [[package]] -name = "halo2-ecc" -version = "0.2.2" -source = "git+https://github.com/scroll-tech/halo2-lib?branch=develop#817cace374a9f4b2eca682b1cc36f143255ea25f" +name = "memmap2" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fd3f7eed9d3848f8b98834af67102b720745c4ec028fcd0aa0239277e7de374f" dependencies = [ - "ff", - "group", - "halo2-base", - "itertools 0.10.5", - "num-bigint", - "num-integer", - "num-traits", - "rand", - "rand_chacha", - "rand_core", - "serde", - "serde_json", + "libc", ] [[package]] -name = "halo2-gate-generator" -version = "0.1.0" -source = "git+https://github.com/scroll-tech/halo2gategen?branch=scroll#2fa5c39aa67d0f97d660f37954daa9e897d0a4c1" +name = "metrics" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a7deb012b3b2767169ff203fadb4c6b0b82b947512e5eb9e0b78c2e186ad9e3" dependencies = [ - "halo2_proofs", - "lazy_static", - "num-bigint", - "rand", - "serde", - "serde_json", - "strum 0.24.1", - "strum_macros 0.24.3", - "subtle", + "ahash", + "portable-atomic", ] [[package]] -name = "halo2-mpt-circuits" +name = "metrics-derive" version = "0.1.0" -source = "git+https://github.com/scroll-tech/mpt-circuit.git?branch=v0.7#daa3a06e2e96d00337188280ac43fa879e722804" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3dbdd96ed57d565ec744cba02862d707acf373c5772d152abae6ec5c4e24f6c" dependencies = [ - "ethers-core 2.0.7 (registry+https://github.com/rust-lang/crates.io-index)", - "halo2_proofs", - "hex", - "itertools 0.10.5", - "lazy_static", - "log", - "num-bigint", - "num-traits", - "poseidon-circuit", - "rand", - "rand_chacha", - "serde", - "serde_json", - "strum 0.24.1", - "strum_macros 0.24.3", - "thiserror", + "proc-macro2", + "quote", + "regex", + "syn 2.0.96", ] [[package]] -name = "halo2_gadgets" -version = "1.1.0" -source = "git+https://github.com/scroll-tech/halo2.git?branch=v1.1#e5ddf67e5ae16be38d6368ed355c7c41906272ab" -dependencies = [ - "arrayvec", - "bitvec", - "ff", - "group", - "halo2_proofs", - "halo2curves", - "lazy_static", - "rand", - "subtle", - "uint", -] +name = "mime" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" [[package]] -name = "halo2_proofs" -version = "1.1.0" -source = "git+https://github.com/scroll-tech/halo2.git?branch=v1.1#e5ddf67e5ae16be38d6368ed355c7c41906272ab" +name = "minimal-lexical" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" + +[[package]] +name = "miniz_oxide" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8402cab7aefae129c6977bb0ff1b8fd9a04eb5b51efc50a70bea51cda0c7924" dependencies = [ - "ark-std 0.3.0", - "blake2b_simd", - "cfg-if 0.1.10", - "crossbeam", - "ff", - "group", - "halo2curves", - "log", - "maybe-rayon", - "num-bigint", - "num-integer", - "poseidon", - "rand_chacha", - "rand_core", - "rayon", - "sha3 0.9.1", - "subtle", - "tracing", + "adler2", ] [[package]] -name = "halo2curves" -version = "0.1.0" -source = "git+https://github.com/scroll-tech/halo2curves?branch=v0.1.0#112f5b9bf27f6b1708ba7d1c2fc14cb3c6e55604" +name = "mio" +version = "0.8.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" dependencies = [ - "blake2b_simd", - "bls12_381", - "ff", - "group", - "lazy_static", - "maybe-rayon", - "num-bigint", - "num-traits", - "pasta_curves", - "paste", - "rand", - "rand_core", - "serde", - "serde_arrays", - "static_assertions", - "subtle", + "libc", + "log", + "wasi 0.11.0+wasi-snapshot-preview1", + "windows-sys 0.48.0", ] [[package]] -name = "hashbrown" -version = "0.13.2" +name = "mio" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" +checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd" dependencies = [ - "ahash", + "libc", + "wasi 0.11.0+wasi-snapshot-preview1", + "windows-sys 0.52.0", ] [[package]] -name = "hashbrown" -version = "0.14.5" +name = "modular-bitfield" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" +checksum = "a53d79ba8304ac1c4f9eb3b9d281f21f7be9d4626f72ce7df4ad8fbde4f38a74" dependencies = [ - "ahash", - "allocator-api2", + "modular-bitfield-impl", + "static_assertions", ] [[package]] -name = "hashers" -version = "1.0.1" +name = "modular-bitfield-impl" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2bca93b15ea5a746f220e56587f71e73c6165eab783df9e26590069953e3c30" +checksum = "5a7d5f7076603ebc68de2dc6a650ec331a062a13abaa346975be747bbfa4b789" dependencies = [ - "fxhash", + "proc-macro2", + "quote", + "syn 1.0.109", ] [[package]] -name = "heck" +name = "munge" version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" - -[[package]] -name = "heck" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" +checksum = "64142d38c84badf60abf06ff9bd80ad2174306a5b11bd4706535090a30a419df" +dependencies = [ + "munge_macro", +] [[package]] -name = "hermit-abi" -version = "0.3.9" +name = "munge_macro" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" +checksum = "1bb5c1d8184f13f7d0ccbeeca0def2f9a181bce2624302793005f5ca8aa62e5e" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.96", +] [[package]] -name = "hex" -version = "0.4.3" +name = "native-tls" +version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" +checksum = "0dab59f8e050d5df8e4dd87d9206fb6f65a483e20ac9fda365ade4fab353196c" +dependencies = [ + "libc", + "log", + "openssl", + "openssl-probe", + "openssl-sys", + "schannel", + "security-framework", + "security-framework-sys", + "tempfile", +] [[package]] -name = "hex-literal" -version = "0.4.1" +name = "nom" +version = "7.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46" +checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" +dependencies = [ + "memchr", + "minimal-lexical", +] [[package]] -name = "hmac" -version = "0.12.1" +name = "notify" +version = "6.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" +checksum = "6205bd8bb1e454ad2e27422015fb5e4f2bcc7e08fa8f27058670d208324a4d2d" dependencies = [ - "digest 0.10.7", + "bitflags 2.8.0", + "filetime", + "fsevent-sys", + "inotify", + "kqueue", + "libc", + "log", + "mio 0.8.11", + "walkdir", + "windows-sys 0.48.0", ] [[package]] -name = "http" -version = "0.2.12" +name = "ntapi" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1" +checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4" dependencies = [ - "bytes", - "fnv", - "itoa", + "winapi", ] [[package]] -name = "http" -version = "1.1.0" +name = "nu-ansi-term" +version = "0.46.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258" +checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" dependencies = [ - "bytes", - "fnv", - "itoa", + "overload", + "winapi", ] [[package]] -name = "http-body" -version = "0.4.6" +name = "num" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" +checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23" dependencies = [ - "bytes", - "http 0.2.12", - "pin-project-lite", + "num-bigint", + "num-complex", + "num-integer", + "num-iter", + "num-rational", + "num-traits", ] [[package]] -name = "http-body" -version = "1.0.0" +name = "num-bigint" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cac85db508abc24a2e48553ba12a996e87244a0395ce011e62b37158745d643" +checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9" dependencies = [ - "bytes", - "http 1.1.0", + "num-integer", + "num-traits", ] [[package]] -name = "http-body-util" -version = "0.1.1" +name = "num-complex" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0475f8b2ac86659c21b64320d5d653f9efe42acd2a4e560073ec61a155a34f1d" +checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" dependencies = [ - "bytes", - "futures-core", - "http 1.1.0", - "http-body 1.0.0", - "pin-project-lite", + "num-traits", ] [[package]] -name = "httparse" -version = "1.8.0" +name = "num-conv" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904" +checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" [[package]] -name = "httpdate" -version = "1.0.3" +name = "num-integer" +version = "0.1.46" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" +checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" +dependencies = [ + "num-traits", +] [[package]] -name = "humantime" -version = "2.1.0" +name = "num-iter" +version = "0.1.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" +checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf" +dependencies = [ + "autocfg", + "num-integer", + "num-traits", +] [[package]] -name = "hyper" -version = "0.14.28" +name = "num-rational" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80" +checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824" dependencies = [ - "bytes", - "futures-channel", - "futures-core", - "futures-util", - "h2 0.3.26", - "http 0.2.12", - "http-body 0.4.6", - "httparse", - "httpdate", - "itoa", - "pin-project-lite", - "socket2", - "tokio", - "tower-service", - "tracing", - "want", + "num-bigint", + "num-integer", + "num-traits", ] [[package]] -name = "hyper" -version = "1.3.1" +name = "num-traits" +version = "0.2.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe575dd17d0862a9a33781c8c4696a55c320909004a67a00fb286ba8b1bc496d" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" dependencies = [ - "bytes", - "futures-channel", - "futures-util", - "h2 0.4.5", - "http 1.1.0", - "http-body 1.0.0", - "httparse", - "itoa", - "pin-project-lite", - "smallvec", - "tokio", - "want", + "autocfg", ] [[package]] -name = "hyper-rustls" -version = "0.24.2" +name = "num_cpus" +version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" +checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" dependencies = [ - "futures-util", - "http 0.2.12", - "hyper 0.14.28", - "rustls", - "tokio", - "tokio-rustls", + "hermit-abi", + "libc", ] [[package]] -name = "hyper-tls" -version = "0.6.0" +name = "num_enum" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" +checksum = "7a015b430d3c108a207fd776d2e2196aaf8b1cf8cf93253e3a097ff3085076a1" dependencies = [ - "bytes", - "http-body-util", - "hyper 1.3.1", - "hyper-util", - "native-tls", - "tokio", - "tokio-native-tls", - "tower-service", + "num_enum_derive 0.6.1", ] [[package]] -name = "hyper-util" -version = "0.1.4" +name = "num_enum" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d8d52be92d09acc2e01dddb7fde3ad983fc6489c7db4837e605bc3fca4cb63e" +checksum = "4e613fc340b2220f734a8595782c551f1250e969d87d3be1ae0579e8d4065179" dependencies = [ - "bytes", - "futures-channel", - "futures-util", - "http 1.1.0", - "http-body 1.0.0", - "hyper 1.3.1", - "pin-project-lite", - "socket2", - "tokio", - "tower", - "tower-service", - "tracing", + "num_enum_derive 0.7.3", ] [[package]] -name = "iana-time-zone" -version = "0.1.60" +name = "num_enum_derive" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141" +checksum = "96667db765a921f7b295ffee8b60472b686a51d4f21c2ee4ffdb94c7013b65a6" dependencies = [ - "android_system_properties", - "core-foundation-sys", - "iana-time-zone-haiku", - "js-sys", - "wasm-bindgen", - "windows-core", + "proc-macro-crate 1.3.1", + "proc-macro2", + "quote", + "syn 2.0.96", ] [[package]] -name = "iana-time-zone-haiku" -version = "0.1.2" +name = "num_enum_derive" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" dependencies = [ - "cc", + "proc-macro2", + "quote", + "syn 2.0.96", ] [[package]] -name = "ident_case" -version = "1.0.1" +name = "number_prefix" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" +checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" [[package]] -name = "idna" -version = "0.5.0" +name = "nybbles" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" +checksum = "8983bb634df7248924ee0c4c3a749609b5abcb082c28fffe3254b3eb3602b307" dependencies = [ - "unicode-bidi", - "unicode-normalization", + "alloy-rlp", + "const-hex", + "proptest", + "serde", + "smallvec", ] [[package]] -name = "impl-codec" -version = "0.6.0" +name = "object" +version = "0.36.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba6a270039626615617f3f36d15fc827041df3b78c439da2cadfa47455a77f2f" +checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87" dependencies = [ - "parity-scale-codec", + "memchr", ] [[package]] -name = "impl-rlp" -version = "0.3.0" +name = "once_cell" +version = "1.20.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f28220f89297a075ddc7245cd538076ee98b01f2a9c23a53a4f1105d5a322808" +checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" dependencies = [ - "rlp", + "critical-section", + "portable-atomic", ] [[package]] -name = "impl-serde" -version = "0.4.0" +name = "op-alloy-consensus" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebc88fc67028ae3db0c853baa36269d398d5f45b6982f95549ff5def78c935cd" +checksum = "c698f80ee53e56d1b60a97e9d90ad09788b516c964c9c97fb5927860b812ef0d" dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "alloy-serde", + "derive_more", "serde", + "thiserror 2.0.11", +] + +[[package]] +name = "open-fastrlp" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "786393f80485445794f6043fd3138854dd109cc6c4bd1a6383db304c9ce9b9ce" +dependencies = [ + "arrayvec", + "auto_impl", + "bytes", + "ethereum-types", + "open-fastrlp-derive", ] [[package]] -name = "impl-trait-for-tuples" -version = "0.2.2" +name = "open-fastrlp-derive" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb" +checksum = "003b2be5c6c53c1cfeb0a238b8a1c3915cd410feb684457a36c10038f764bb1c" dependencies = [ + "bytes", "proc-macro2", "quote", "syn 1.0.109", ] [[package]] -name = "indexmap" -version = "2.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26" -dependencies = [ - "equivalent", - "hashbrown 0.14.5", -] - -[[package]] -name = "inout" -version = "0.1.3" +name = "openssl" +version = "0.10.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5" +checksum = "f5e534d133a060a3c19daec1eb3e98ec6f4685978834f2dbadfe2ec215bab64e" dependencies = [ - "generic-array", + "bitflags 2.8.0", + "cfg-if", + "foreign-types", + "libc", + "once_cell", + "openssl-macros", + "openssl-sys", ] [[package]] -name = "instant" -version = "0.1.13" +name = "openssl-macros" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222" +checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ - "cfg-if 1.0.0", - "js-sys", - "wasm-bindgen", - "web-sys", + "proc-macro2", + "quote", + "syn 2.0.96", ] [[package]] -name = "ipnet" -version = "2.9.0" +name = "openssl-probe" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" +checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" [[package]] -name = "is-terminal" -version = "0.4.12" +name = "openssl-sys" +version = "0.9.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f23ff5ef2b80d608d61efee834934d862cd92461afc0560dedf493e4c033738b" +checksum = "45abf306cbf99debc8195b66b7346498d7b10c210de50418b5ccd7ceba08c741" dependencies = [ - "hermit-abi", + "cc", "libc", - "windows-sys 0.52.0", + "pkg-config", + "vcpkg", ] [[package]] -name = "is_terminal_polyfill" -version = "1.70.0" +name = "overload" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8478577c03552c21db0e2724ffb8986a5ce7af88107e6be5d2ee6e158c12800" +checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" [[package]] -name = "itertools" -version = "0.10.5" +name = "p256" +version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" +checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b" dependencies = [ - "either", + "ecdsa", + "elliptic-curve", + "primeorder", + "sha2", ] [[package]] -name = "itertools" -version = "0.11.0" +name = "page_size" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" +checksum = "30d5b2194ed13191c1999ae0704b7839fb18384fa22e49b57eeaa97d79ce40da" dependencies = [ - "either", + "libc", + "winapi", ] [[package]] -name = "itertools" -version = "0.12.1" +name = "parity-scale-codec" +version = "3.6.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" +checksum = "306800abfa29c7f16596b5970a588435e3d5b3149683d00c12b699cc19f895ee" dependencies = [ - "either", + "arrayvec", + "bitvec", + "byte-slice-cast", + "bytes", + "impl-trait-for-tuples", + "parity-scale-codec-derive", + "serde", ] [[package]] -name = "itoa" -version = "1.0.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" - -[[package]] -name = "jobserver" -version = "0.1.31" +name = "parity-scale-codec-derive" +version = "3.6.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2b099aaa34a9751c5bf0878add70444e1ed2dd73f347be99003d4577277de6e" +checksum = "d830939c76d294956402033aee57a6da7b438f2294eb94864c37b0569053a42c" dependencies = [ - "libc", + "proc-macro-crate 3.2.0", + "proc-macro2", + "quote", + "syn 1.0.109", ] [[package]] -name = "js-sys" -version = "0.3.69" +name = "parking_lot" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d" +checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" dependencies = [ - "wasm-bindgen", + "instant", + "lock_api", + "parking_lot_core 0.8.6", ] [[package]] -name = "k256" -version = "0.13.3" +name = "parking_lot" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "956ff9b67e26e1a6a866cb758f12c6f8746208489e3e4a4b5580802f2f0a587b" +checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" dependencies = [ - "cfg-if 1.0.0", - "ecdsa", - "elliptic-curve", - "once_cell", - "sha2", - "signature", + "lock_api", + "parking_lot_core 0.9.10", ] [[package]] -name = "keccak" -version = "0.1.5" +name = "parking_lot_core" +version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654" +checksum = "60a2cfe6f0ad2bfc16aefa463b497d5c7a5ecd44a23efa72aa342d90177356dc" dependencies = [ - "cpufeatures", + "cfg-if", + "instant", + "libc", + "redox_syscall 0.2.16", + "smallvec", + "winapi", ] [[package]] -name = "keccak-asm" -version = "0.1.1" +name = "parking_lot_core" +version = "0.9.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47a3633291834c4fbebf8673acbc1b04ec9d151418ff9b8e26dcd79129928758" +checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" dependencies = [ - "digest 0.10.7", - "sha3-asm", + "cfg-if", + "libc", + "redox_syscall 0.5.8", + "smallvec", + "windows-targets 0.52.6", ] [[package]] -name = "lazy_static" -version = "1.4.0" +name = "paste" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" -dependencies = [ - "spin 0.5.2", -] +checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" [[package]] -name = "lazycell" -version = "1.3.0" +name = "percent-encoding" +version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" +checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" [[package]] -name = "libc" -version = "0.2.155" +name = "pest" +version = "2.7.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c" +checksum = "8b7cafe60d6cf8e62e1b9b2ea516a089c008945bb5a275416789e7db0bc199dc" +dependencies = [ + "memchr", + "thiserror 2.0.11", + "ucd-trie", +] [[package]] -name = "libloading" -version = "0.8.5" +name = "pharos" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4" +checksum = "e9567389417feee6ce15dd6527a8a1ecac205ef62c2932bcf3d9f6fc5b78b414" dependencies = [ - "cfg-if 1.0.0", - "windows-targets 0.52.5", + "futures", + "rustc_version 0.4.1", ] [[package]] -name = "libm" -version = "0.2.8" +name = "pin-project" +version = "1.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" +checksum = "1e2ec53ad785f4d35dac0adea7f7dc6f1bb277ad84a680c7afefeae05d1f5916" +dependencies = [ + "pin-project-internal", +] [[package]] -name = "librocksdb-sys" -version = "0.17.1+9.9.3" +name = "pin-project-internal" +version = "1.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b7869a512ae9982f4d46ba482c2a304f1efd80c6412a3d4bf57bb79a619679f" +checksum = "d56a66c0c55993aa927429d0f8a0abfd74f084e4d9c192cffed01e418d83eefb" dependencies = [ - "bindgen", - "bzip2-sys", - "cc", - "libc", - "libz-sys", - "lz4-sys", - "zstd-sys 2.0.13+zstd.1.5.6", + "proc-macro2", + "quote", + "syn 2.0.96", ] [[package]] -name = "libz-sys" -version = "1.1.20" +name = "pin-project-lite" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2d16453e800a8cf6dd2fc3eb4bc99b786a9b90c663b8559a5b1a041bf89e472" -dependencies = [ - "cc", - "pkg-config", - "vcpkg", -] +checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" [[package]] -name = "linux-raw-sys" -version = "0.4.14" +name = "pin-utils" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] -name = "lock_api" -version = "0.4.12" +name = "pkcs8" +version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" +checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" dependencies = [ - "autocfg", - "scopeguard", + "der", + "spki", ] [[package]] -name = "log" -version = "0.4.21" +name = "pkg-config" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c" +checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" [[package]] -name = "log-mdc" -version = "0.1.0" +name = "portable-atomic" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a94d21414c1f4a51209ad204c1776a3d0765002c76c6abcb602a6f09f1e881c7" +checksum = "280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6" [[package]] -name = "log4rs" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0816135ae15bd0391cf284eab37e6e3ee0a6ee63d2ceeb659862bd8d0a984ca6" +name = "poseidon-bn254" +version = "0.1.0" +source = "git+https://github.com/scroll-tech/poseidon-bn254?branch=master#254baa0e3e85c0975c16fe6f33042b1fa9ae0a44" dependencies = [ - "anyhow", - "arc-swap", - "chrono", - "derivative", - "fnv", - "libc", - "log", - "log-mdc", - "once_cell", - "parking_lot 0.12.3", - "thiserror", - "thread-id", - "winapi", + "bn254 0.1.0 (git+https://github.com/scroll-tech/bn254.git?branch=master)", + "itertools 0.13.0", + "sp1-intrinsics", ] [[package]] -name = "lz4-sys" -version = "1.11.1+lz4-1.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bd8c0d6c6ed0cd30b3652886bb8711dc4bb01d637a68105a3d5158039b418e6" +name = "poseidon-bn254" +version = "0.1.0" +source = "git+https://github.com/scroll-tech/poseidon-bn254?rev=526a64a#526a64a81419bcab6bd8280a8a3f9808189e0373" dependencies = [ - "cc", - "libc", + "bn254 0.1.0 (git+https://github.com/scroll-tech/bn254)", + "itertools 0.13.0", ] [[package]] -name = "matchers" -version = "0.1.0" +name = "powerfmt" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" -dependencies = [ - "regex-automata 0.1.10", -] +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" [[package]] -name = "matchit" -version = "0.7.3" +name = "ppv-lite86" +version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" +checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" +dependencies = [ + "zerocopy", +] [[package]] -name = "maybe-rayon" -version = "0.1.1" +name = "primeorder" +version = "0.13.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ea1f30cedd69f0a2954655f7188c6a834246d2bcf1e315e2ac40c4b24dc9519" +checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6" dependencies = [ - "cfg-if 1.0.0", - "rayon", + "elliptic-curve", ] [[package]] -name = "memchr" -version = "2.7.2" +name = "primitive-types" +version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" +checksum = "0b34d9fd68ae0b74a41b21c03c2f62847aa0ffea044eee893b4c140b37e244e2" +dependencies = [ + "fixed-hash", + "impl-codec", + "impl-rlp", + "impl-serde", + "scale-info", + "uint", +] [[package]] -name = "mime" -version = "0.3.17" +name = "proc-macro-crate" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" +checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" +dependencies = [ + "once_cell", + "toml_edit 0.19.15", +] [[package]] -name = "minimal-lexical" -version = "0.2.1" +name = "proc-macro-crate" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" +checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" +dependencies = [ + "toml_edit 0.22.23", +] [[package]] -name = "miniz_oxide" -version = "0.7.3" +name = "proc-macro-error-attr2" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87dfd01fe195c66b572b37921ad8803d010623c0aca821bea2302239d155cdae" +checksum = "96de42df36bb9bba5542fe9f1a054b8cc87e172759a1868aa05c1f3acc89dfc5" dependencies = [ - "adler", + "proc-macro2", + "quote", ] [[package]] -name = "mio" -version = "0.8.11" +name = "proc-macro-error2" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" +checksum = "11ec05c52be0a07b08061f7dd003e7d7092e0472bc731b4af7bb1ef876109802" dependencies = [ - "libc", - "wasi", - "windows-sys 0.48.0", + "proc-macro-error-attr2", + "proc-macro2", + "quote", + "syn 2.0.96", ] [[package]] -name = "misc-precompiled-circuit" -version = "0.1.0" -source = "git+https://github.com/scroll-tech/misc-precompiled-circuit.git?branch=main#dcb5018d84e8a9adec59cd33f5348a3971cec194" +name = "proc-macro2" +version = "1.0.93" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60946a68e5f9d28b0dc1c21bb8a97ee7d018a8b322fa57838ba31cc878e22d99" dependencies = [ - "halo2-gate-generator", - "halo2_proofs", - "num-bigint", - "rand", - "serde", - "serde_json", - "strum 0.25.0", - "strum_macros 0.25.3", - "subtle", + "unicode-ident", ] [[package]] -name = "mock" -version = "0.13.0" -source = "git+https://github.com/scroll-tech/zkevm-circuits.git?tag=v0.13.1#4009e5593f13ba73f64f556011ee5ef47bc4ebf3" +name = "proptest" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "14cae93065090804185d3b75f0bf93b8eeda30c7a9b4a33d3bdb3988d6229e50" dependencies = [ - "eth-types", - "ethers-core 2.0.7 (git+https://github.com/scroll-tech/ethers-rs.git?branch=v2.0.7)", - "ethers-signers", - "external-tracer", - "itertools 0.11.0", - "log", + "bit-set", + "bit-vec", + "bitflags 2.8.0", + "lazy_static", + "num-traits", "rand", "rand_chacha", + "rand_xorshift", + "regex-syntax 0.8.5", + "rusty-fork", + "tempfile", + "unarray", ] [[package]] -name = "mpt-zktrie" -version = "0.13.0" -source = "git+https://github.com/scroll-tech/zkevm-circuits.git?tag=v0.13.1#4009e5593f13ba73f64f556011ee5ef47bc4ebf3" +name = "ptr_meta" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe9e76f66d3f9606f44e45598d155cb13ecf09f4a28199e48daf8c8fc937ea90" dependencies = [ - "eth-types", - "halo2curves", - "hex", - "log", - "num-bigint", - "poseidon-base", - "zktrie", + "ptr_meta_derive", ] [[package]] -name = "native-tls" -version = "0.2.11" +name = "ptr_meta_derive" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" +checksum = "ca414edb151b4c8d125c12566ab0d74dc9cdba36fb80eb7b848c15f495fd32d1" dependencies = [ - "lazy_static", - "libc", - "log", - "openssl", - "openssl-probe", - "openssl-sys", - "schannel", - "security-framework", - "security-framework-sys", - "tempfile", + "proc-macro2", + "quote", + "syn 2.0.96", ] [[package]] -name = "nom" -version = "7.1.3" +name = "quick-error" +version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" +checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" + +[[package]] +name = "quinn" +version = "0.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62e96808277ec6f97351a2380e6c25114bc9e67037775464979f3037c92d05ef" dependencies = [ - "memchr", - "minimal-lexical", + "bytes", + "pin-project-lite", + "quinn-proto", + "quinn-udp", + "rustc-hash 2.1.0", + "rustls 0.23.22", + "socket2", + "thiserror 2.0.11", + "tokio", + "tracing", ] [[package]] -name = "nu-ansi-term" -version = "0.46.0" +name = "quinn-proto" +version = "0.11.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" +checksum = "a2fe5ef3495d7d2e377ff17b1a8ce2ee2ec2a18cde8b6ad6619d65d0701c135d" dependencies = [ - "overload", - "winapi", + "bytes", + "getrandom 0.2.15", + "rand", + "ring 0.17.8", + "rustc-hash 2.1.0", + "rustls 0.23.22", + "rustls-pki-types", + "slab", + "thiserror 2.0.11", + "tinyvec", + "tracing", + "web-time", ] [[package]] -name = "num" -version = "0.4.3" +name = "quinn-udp" +version = "0.5.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23" +checksum = "1c40286217b4ba3a71d644d752e6a0b71f13f1b6a2c5311acfcbe0c2418ed904" dependencies = [ - "num-bigint", - "num-complex", - "num-integer", - "num-iter", - "num-rational", - "num-traits", + "cfg_aliases", + "libc", + "once_cell", + "socket2", + "tracing", + "windows-sys 0.59.0", ] [[package]] -name = "num-bigint" -version = "0.4.5" +name = "quote" +version = "1.0.38" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c165a9ab64cf766f73521c0dd2cfdff64f488b8f0b3e621face3462d3db536d7" +checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc" dependencies = [ - "num-integer", - "num-traits", - "rand", + "proc-macro2", ] [[package]] -name = "num-complex" -version = "0.4.6" +name = "radium" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" +checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" + +[[package]] +name = "rancor" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "caf5f7161924b9d1cea0e4cabc97c372cea92b5f927fc13c6bca67157a0ad947" dependencies = [ - "num-traits", + "ptr_meta", ] [[package]] -name = "num-derive" -version = "0.3.3" +name = "rand" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", + "libc", + "rand_chacha", + "rand_core", + "serde", ] [[package]] -name = "num-integer" -version = "0.1.46" +name = "rand_chacha" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" +checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" dependencies = [ - "num-traits", + "ppv-lite86", + "rand_core", ] [[package]] -name = "num-iter" -version = "0.1.45" +name = "rand_core" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "autocfg", - "num-integer", - "num-traits", + "getrandom 0.2.15", ] [[package]] -name = "num-rational" -version = "0.4.2" +name = "rand_xorshift" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824" +checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" dependencies = [ - "num-bigint", - "num-integer", - "num-traits", + "rand_core", ] [[package]] -name = "num-traits" -version = "0.2.19" +name = "rayon" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" +checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" dependencies = [ - "autocfg", - "libm", + "either", + "rayon-core", ] [[package]] -name = "num_cpus" -version = "1.16.0" +name = "rayon-core" +version = "1.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" +checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" dependencies = [ - "hermit-abi", - "libc", + "crossbeam-deque", + "crossbeam-utils", ] [[package]] -name = "num_enum" -version = "0.5.11" +name = "redox_syscall" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f646caf906c20226733ed5b1374287eb97e3c2a5c227ce668c1f2ce20ae57c9" +checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" dependencies = [ - "num_enum_derive 0.5.11", + "bitflags 1.3.2", ] [[package]] -name = "num_enum" -version = "0.6.1" +name = "redox_syscall" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a015b430d3c108a207fd776d2e2196aaf8b1cf8cf93253e3a097ff3085076a1" +checksum = "03a862b389f93e68874fbf580b9de08dd02facb9a788ebadaf4a3fd33cf58834" dependencies = [ - "num_enum_derive 0.6.1", + "bitflags 2.8.0", ] [[package]] -name = "num_enum_derive" -version = "0.5.11" +name = "regex" +version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799" +checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191" dependencies = [ - "proc-macro-crate 1.3.1", - "proc-macro2", - "quote", - "syn 1.0.109", + "aho-corasick", + "memchr", + "regex-automata 0.4.9", + "regex-syntax 0.8.5", ] [[package]] -name = "num_enum_derive" -version = "0.6.1" +name = "regex-automata" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96667db765a921f7b295ffee8b60472b686a51d4f21c2ee4ffdb94c7013b65a6" +checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" dependencies = [ - "proc-macro-crate 1.3.1", - "proc-macro2", - "quote", - "syn 2.0.66", + "regex-syntax 0.6.29", ] [[package]] -name = "object" -version = "0.32.2" +name = "regex-automata" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" +checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908" dependencies = [ + "aho-corasick", "memchr", + "regex-syntax 0.8.5", ] [[package]] -name = "once_cell" -version = "1.19.0" +name = "regex-syntax" +version = "0.6.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" +checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" [[package]] -name = "opaque-debug" -version = "0.3.1" +name = "regex-syntax" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" +checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" [[package]] -name = "open-fastrlp" -version = "0.1.4" +name = "rend" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "786393f80485445794f6043fd3138854dd109cc6c4bd1a6383db304c9ce9b9ce" +checksum = "a35e8a6bf28cd121053a66aa2e6a2e3eaffad4a60012179f0e864aa5ffeff215" dependencies = [ - "arrayvec", - "auto_impl", - "bytes", - "ethereum-types", - "open-fastrlp-derive", + "bytecheck", ] [[package]] -name = "open-fastrlp-derive" -version = "0.1.1" +name = "reqwest" +version = "0.11.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "003b2be5c6c53c1cfeb0a238b8a1c3915cd410feb684457a36c10038f764bb1c" +checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62" dependencies = [ + "base64 0.21.7", "bytes", - "proc-macro2", - "quote", - "syn 1.0.109", + "encoding_rs", + "futures-core", + "futures-util", + "h2 0.3.26", + "http 0.2.12", + "http-body 0.4.6", + "hyper 0.14.32", + "hyper-rustls 0.24.2", + "ipnet", + "js-sys", + "log", + "mime", + "once_cell", + "percent-encoding", + "pin-project-lite", + "rustls 0.21.12", + "rustls-pemfile 1.0.4", + "serde", + "serde_json", + "serde_urlencoded", + "sync_wrapper 0.1.2", + "system-configuration 0.5.1", + "tokio", + "tokio-rustls 0.24.1", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "webpki-roots 0.25.4", + "winreg", ] [[package]] -name = "openssl" -version = "0.10.64" +name = "reqwest" +version = "0.12.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f" +checksum = "43e734407157c3c2034e0258f5e4473ddb361b1e85f95a66690d67264d7cd1da" dependencies = [ - "bitflags 2.5.0", - "cfg-if 1.0.0", - "foreign-types", - "libc", + "async-compression", + "base64 0.22.1", + "bytes", + "encoding_rs", + "futures-core", + "futures-util", + "h2 0.4.7", + "http 1.2.0", + "http-body 1.0.1", + "http-body-util", + "hyper 1.6.0", + "hyper-rustls 0.27.5", + "hyper-tls", + "hyper-util", + "ipnet", + "js-sys", + "log", + "mime", + "native-tls", "once_cell", - "openssl-macros", - "openssl-sys", + "percent-encoding", + "pin-project-lite", + "quinn", + "rustls 0.23.22", + "rustls-pemfile 2.2.0", + "rustls-pki-types", + "serde", + "serde_json", + "serde_urlencoded", + "sync_wrapper 1.0.2", + "system-configuration 0.6.1", + "tokio", + "tokio-native-tls", + "tokio-rustls 0.26.1", + "tokio-util", + "tower 0.5.2", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "webpki-roots 0.26.7", + "windows-registry", ] [[package]] -name = "openssl-macros" -version = "0.1.1" +name = "reqwest-middleware" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" +checksum = "562ceb5a604d3f7c885a792d42c199fd8af239d0a51b2fa6a78aafa092452b04" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", + "anyhow", + "async-trait", + "http 1.2.0", + "reqwest 0.12.12", + "serde", + "thiserror 1.0.69", + "tower-service", ] [[package]] -name = "openssl-probe" -version = "0.1.5" +name = "reqwest-retry" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" +checksum = "40f342894422862af74c50e1e9601cf0931accc9c6981e5eb413c46603b616b5" +dependencies = [ + "anyhow", + "async-trait", + "chrono", + "futures", + "getrandom 0.2.15", + "http 1.2.0", + "hyper 1.6.0", + "parking_lot 0.11.2", + "reqwest 0.12.12", + "reqwest-middleware", + "retry-policies", + "tokio", + "tracing", + "wasm-timer", +] [[package]] -name = "openssl-sys" -version = "0.9.102" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c597637d56fbc83893a35eb0dd04b2b8e7a50c91e64e9493e398b5df4fb45fa2" +name = "reth-blockchain-tree-api" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "cc", - "libc", - "pkg-config", - "vcpkg", + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "reth-consensus", + "reth-execution-errors", + "reth-primitives", + "reth-primitives-traits", + "reth-storage-errors", + "thiserror 2.0.11", ] [[package]] -name = "overload" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" +name = "reth-chain-state" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "derive_more", + "metrics", + "parking_lot 0.12.3", + "pin-project", + "reth-chainspec", + "reth-errors", + "reth-execution-types", + "reth-metrics", + "reth-primitives", + "reth-primitives-traits", + "reth-scroll-revm", + "reth-storage-api", + "reth-trie", + "tokio", + "tokio-stream", + "tracing", +] [[package]] -name = "pairing" -version = "0.23.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81fec4625e73cf41ef4bb6846cafa6d44736525f442ba45e407c4a000a13996f" +name = "reth-chainspec" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "group", + "alloy-chains", + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "auto_impl", + "derive_more", + "once_cell", + "reth-ethereum-forks", + "reth-network-peers", + "reth-primitives-traits", + "reth-trie-common", + "serde_json", ] [[package]] -name = "parity-scale-codec" -version = "3.6.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "306800abfa29c7f16596b5970a588435e3d5b3149683d00c12b699cc19f895ee" +name = "reth-codecs" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "arrayvec", - "bitvec", - "byte-slice-cast", - "impl-trait-for-tuples", - "parity-scale-codec-derive", + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "alloy-trie", + "bytes", + "modular-bitfield", + "op-alloy-consensus", + "reth-codecs-derive", "serde", ] [[package]] -name = "parity-scale-codec-derive" -version = "3.6.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d830939c76d294956402033aee57a6da7b438f2294eb94864c37b0569053a42c" +name = "reth-codecs-derive" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "proc-macro-crate 3.1.0", + "convert_case", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.96", ] [[package]] -name = "parking_lot" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" +name = "reth-consensus" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "instant", - "lock_api", - "parking_lot_core 0.8.6", + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "auto_impl", + "derive_more", + "reth-primitives", + "reth-primitives-traits", ] [[package]] -name = "parking_lot" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" +name = "reth-consensus-common" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "lock_api", - "parking_lot_core 0.9.10", + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "reth-chainspec", + "reth-consensus", + "reth-primitives", + "reth-primitives-traits", + "revm-primitives", ] [[package]] -name = "parking_lot_core" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60a2cfe6f0ad2bfc16aefa463b497d5c7a5ecd44a23efa72aa342d90177356dc" +name = "reth-db" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "cfg-if 1.0.0", - "instant", - "libc", - "redox_syscall 0.2.16", - "smallvec", - "winapi", + "alloy-consensus", + "alloy-primitives", + "bytes", + "derive_more", + "eyre", + "metrics", + "page_size", + "reth-db-api", + "reth-fs-util", + "reth-libmdbx", + "reth-metrics", + "reth-nippy-jar", + "reth-primitives", + "reth-primitives-traits", + "reth-prune-types", + "reth-stages-types", + "reth-storage-errors", + "reth-tracing", + "reth-trie-common", + "rustc-hash 2.1.0", + "serde", + "strum 0.26.3", + "sysinfo", + "thiserror 2.0.11", ] [[package]] -name = "parking_lot_core" -version = "0.9.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" +name = "reth-db-api" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "cfg-if 1.0.0", - "libc", - "redox_syscall 0.5.1", - "smallvec", - "windows-targets 0.52.5", + "alloy-consensus", + "alloy-genesis", + "alloy-primitives", + "bytes", + "derive_more", + "metrics", + "modular-bitfield", + "parity-scale-codec", + "reth-codecs", + "reth-db-models", + "reth-primitives", + "reth-primitives-traits", + "reth-prune-types", + "reth-stages-types", + "reth-storage-errors", + "reth-trie-common", + "roaring", + "serde", ] [[package]] -name = "pasta_curves" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3e57598f73cc7e1b2ac63c79c517b31a0877cd7c402cdcaa311b5208de7a095" +name = "reth-db-models" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "blake2b_simd", - "ff", - "group", - "lazy_static", - "rand", - "static_assertions", - "subtle", + "alloy-eips", + "alloy-primitives", + "bytes", + "modular-bitfield", + "reth-codecs", + "reth-primitives-traits", + "serde", ] [[package]] -name = "paste" -version = "1.0.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" - -[[package]] -name = "pbkdf2" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917" +name = "reth-engine-primitives" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "digest 0.10.7", + "alloy-consensus", + "alloy-primitives", + "alloy-rpc-types-engine", + "futures", + "reth-errors", + "reth-execution-types", + "reth-payload-builder-primitives", + "reth-payload-primitives", + "reth-primitives", + "reth-primitives-traits", + "reth-trie", + "serde", + "thiserror 2.0.11", + "tokio", ] [[package]] -name = "pbkdf2" -version = "0.12.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2" +name = "reth-errors" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "digest 0.10.7", - "hmac", + "reth-blockchain-tree-api", + "reth-consensus", + "reth-execution-errors", + "reth-fs-util", + "reth-storage-errors", + "thiserror 2.0.11", ] [[package]] -name = "percent-encoding" -version = "2.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" - -[[package]] -name = "pest" -version = "2.7.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "560131c633294438da9f7c4b08189194b20946c8274c6b9e38881a7874dc8ee8" +name = "reth-eth-wire-types" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "memchr", - "thiserror", - "ucd-trie", + "alloy-chains", + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "bytes", + "derive_more", + "reth-chainspec", + "reth-codecs-derive", + "reth-ethereum-forks", + "reth-primitives", + "reth-primitives-traits", + "thiserror 2.0.11", ] [[package]] -name = "pharos" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9567389417feee6ce15dd6527a8a1ecac205ef62c2932bcf3d9f6fc5b78b414" +name = "reth-ethereum-consensus" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "futures", - "rustc_version 0.4.0", + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "reth-chainspec", + "reth-consensus", + "reth-consensus-common", + "reth-primitives", + "reth-primitives-traits", + "tracing", ] [[package]] -name = "pin-project" -version = "1.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3" +name = "reth-ethereum-forks" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "pin-project-internal", + "alloy-chains", + "alloy-primitives", + "alloy-rlp", + "auto_impl", + "crc", + "dyn-clone", + "once_cell", + "rustc-hash 2.1.0", + "serde", + "thiserror 2.0.11", ] [[package]] -name = "pin-project-internal" -version = "1.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" +name = "reth-evm" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "auto_impl", + "futures-util", + "metrics", + "reth-chainspec", + "reth-consensus", + "reth-consensus-common", + "reth-execution-errors", + "reth-execution-types", + "reth-metrics", + "reth-primitives", + "reth-primitives-traits", + "reth-prune-types", + "reth-revm", + "reth-scroll-execution", + "reth-scroll-revm", + "reth-storage-errors", + "revm-primitives", ] [[package]] -name = "pin-project-lite" -version = "0.2.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02" - -[[package]] -name = "pin-utils" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" - -[[package]] -name = "pkcs8" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" +name = "reth-evm-ethereum" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "der", - "spki", + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-sol-types", + "reth-chainspec", + "reth-consensus", + "reth-ethereum-consensus", + "reth-ethereum-forks", + "reth-evm", + "reth-primitives", + "reth-revm", + "reth-scroll-execution", + "revm-primitives", ] [[package]] -name = "pkg-config" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec" +name = "reth-execution-errors" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "nybbles", + "reth-consensus", + "reth-prune-types", + "reth-storage-errors", + "revm-primitives", + "thiserror 2.0.11", +] [[package]] -name = "poseidon" -version = "0.2.0" -source = "git+https://github.com/scroll-tech/poseidon.git?branch=main#5787dd3d2ce7a9e9601a035c396ac0c03449b54d" +name = "reth-execution-types" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "halo2curves", - "subtle", + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "reth-execution-errors", + "reth-primitives", + "reth-primitives-traits", + "reth-scroll-revm", + "reth-trie", + "serde", + "serde_with", ] [[package]] -name = "poseidon-base" -version = "0.1.0" -source = "git+https://github.com/scroll-tech/poseidon-circuit.git?branch=main#7b96835c6201afdbfaf3d13d641efbaaf5db2d20" +name = "reth-fs-util" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "bitvec", - "halo2curves", - "lazy_static", + "serde", + "serde_json", + "thiserror 2.0.11", ] [[package]] -name = "poseidon-circuit" -version = "0.1.0" -source = "git+https://github.com/scroll-tech/poseidon-circuit.git?branch=main#7b96835c6201afdbfaf3d13d641efbaaf5db2d20" +name = "reth-libmdbx" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "ff", - "halo2_proofs", - "log", - "poseidon-base", - "rand", - "rand_xorshift", - "thiserror", + "bitflags 2.8.0", + "byteorder", + "dashmap", + "derive_more", + "indexmap 2.7.1", + "parking_lot 0.12.3", + "reth-mdbx-sys", + "smallvec", + "thiserror 2.0.11", + "tracing", ] [[package]] -name = "ppv-lite86" -version = "0.2.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" +name = "reth-mdbx-sys" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +dependencies = [ + "bindgen 0.70.1", + "cc", +] [[package]] -name = "primitive-types" -version = "0.12.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b34d9fd68ae0b74a41b21c03c2f62847aa0ffea044eee893b4c140b37e244e2" +name = "reth-metrics" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "fixed-hash", - "impl-codec", - "impl-rlp", - "impl-serde", - "scale-info", - "uint", + "metrics", + "metrics-derive", ] [[package]] -name = "proc-macro-crate" -version = "1.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" +name = "reth-net-banlist" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "once_cell", - "toml_edit 0.19.15", + "alloy-primitives", ] [[package]] -name = "proc-macro-crate" -version = "3.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284" +name = "reth-network-p2p" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "toml_edit 0.21.1", + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "auto_impl", + "derive_more", + "futures", + "reth-consensus", + "reth-eth-wire-types", + "reth-network-peers", + "reth-network-types", + "reth-primitives", + "reth-primitives-traits", + "reth-storage-errors", + "tokio", + "tracing", ] [[package]] -name = "proc-macro2" -version = "1.0.84" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec96c6a92621310b51366f1e28d05ef11489516e93be030060e5fc12024a49d6" +name = "reth-network-peers" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "unicode-ident", + "alloy-primitives", + "alloy-rlp", + "secp256k1", + "serde_with", + "thiserror 2.0.11", + "url", ] [[package]] -name = "proptest" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31b476131c3c86cb68032fdc5cb6d5a1045e3e42d96b69fa599fd77701e1f5bf" +name = "reth-network-types" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "bit-set", - "bit-vec", - "bitflags 2.5.0", - "lazy_static", - "num-traits", - "rand", - "rand_chacha", - "rand_xorshift", - "regex-syntax 0.8.3", - "rusty-fork", - "tempfile", - "unarray", + "reth-ethereum-forks", + "reth-net-banlist", + "reth-network-peers", + "serde_json", + "tracing", ] [[package]] -name = "prover" -version = "0.13.0" -source = "git+https://github.com/scroll-tech/zkevm-circuits.git?tag=v0.13.1#4009e5593f13ba73f64f556011ee5ef47bc4ebf3" +name = "reth-nippy-jar" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "aggregator", "anyhow", - "base64 0.13.1", - "blake2", - "bus-mapping", - "chrono", - "dotenvy", - "eth-types", - "ethers-core 2.0.7 (git+https://github.com/scroll-tech/ethers-rs.git?branch=v2.0.7)", - "git-version", - "halo2_proofs", - "hex", - "itertools 0.11.0", - "log", - "log4rs", - "mpt-zktrie", - "num-bigint", - "rand", - "rand_xorshift", + "bincode", + "derive_more", + "lz4_flex", + "memmap2", + "reth-fs-util", "serde", - "serde_derive", - "serde_json", - "serde_stacker", - "sha2", - "snark-verifier", - "snark-verifier-sdk", - "zkevm-circuits", + "thiserror 2.0.11", + "tracing", + "zstd", ] [[package]] -name = "psm" -version = "0.1.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5787f7cda34e3033a72192c018bc5883100330f362ef279a8cbccfce8bb4e874" +name = "reth-node-types" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "cc", + "reth-chainspec", + "reth-db-api", + "reth-engine-primitives", + "reth-primitives-traits", + "reth-trie-db", ] [[package]] -name = "quick-error" -version = "1.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" +name = "reth-payload-builder-primitives" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +dependencies = [ + "alloy-rpc-types-engine", + "async-trait", + "pin-project", + "reth-payload-primitives", + "tokio", + "tokio-stream", + "tracing", +] [[package]] -name = "quote" -version = "1.0.36" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" +name = "reth-payload-primitives" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "proc-macro2", + "alloy-eips", + "alloy-primitives", + "alloy-rpc-types-engine", + "reth-chain-state", + "reth-chainspec", + "reth-errors", + "reth-primitives", + "revm-primitives", + "serde", + "thiserror 2.0.11", + "tokio", ] [[package]] -name = "radium" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" +name = "reth-primitives" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "alloy-serde", + "alloy-trie", + "bytes", + "derive_more", + "modular-bitfield", + "once_cell", + "rayon", + "reth-codecs", + "reth-ethereum-forks", + "reth-primitives-traits", + "reth-scroll-primitives", + "reth-scroll-revm", + "reth-static-file-types", + "reth-zstd-compressors", + "secp256k1", + "serde", + "serde_with", +] [[package]] -name = "rand" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +name = "reth-primitives-traits" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "libc", - "rand_chacha", - "rand_core", + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "alloy-rlp", + "alloy-trie", + "auto_impl", + "byteorder", + "bytes", + "derive_more", + "k256", + "modular-bitfield", + "op-alloy-consensus", + "reth-codecs", + "reth-scroll-primitives", + "reth-scroll-revm", + "secp256k1", + "serde", + "serde_with", ] [[package]] -name = "rand_chacha" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" +name = "reth-provider" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "ppv-lite86", - "rand_core", + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rpc-types-engine", + "auto_impl", + "dashmap", + "itertools 0.13.0", + "metrics", + "notify", + "parking_lot 0.12.3", + "rayon", + "reth-blockchain-tree-api", + "reth-chain-state", + "reth-chainspec", + "reth-codecs", + "reth-db", + "reth-db-api", + "reth-errors", + "reth-evm", + "reth-execution-types", + "reth-fs-util", + "reth-metrics", + "reth-network-p2p", + "reth-nippy-jar", + "reth-node-types", + "reth-primitives", + "reth-primitives-traits", + "reth-prune-types", + "reth-scroll-revm", + "reth-stages-types", + "reth-storage-api", + "reth-storage-errors", + "reth-trie", + "reth-trie-db", + "strum 0.26.3", + "tokio", + "tracing", ] [[package]] -name = "rand_core" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +name = "reth-prune-types" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "getrandom", + "alloy-primitives", + "derive_more", + "modular-bitfield", + "reth-codecs", + "serde", + "thiserror 2.0.11", ] [[package]] -name = "rand_xorshift" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" +name = "reth-revm" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "rand_core", + "alloy-eips", + "alloy-primitives", + "reth-execution-errors", + "reth-primitives", + "reth-primitives-traits", + "reth-prune-types", + "reth-scroll-primitives", + "reth-scroll-revm", + "reth-storage-api", + "reth-storage-errors", + "reth-trie", +] + +[[package]] +name = "reth-scroll-chainspec" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +dependencies = [ + "alloy-chains", + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "alloy-serde", + "derive_more", + "once_cell", + "reth-chainspec", + "reth-ethereum-forks", + "reth-network-peers", + "reth-primitives-traits", + "reth-scroll-forks", + "reth-scroll-state-commitment", + "serde", + "serde_json", ] [[package]] -name = "rayon" -version = "1.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" +name = "reth-scroll-consensus" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "either", - "rayon-core", + "reth-scroll-revm", ] [[package]] -name = "rayon-core" -version = "1.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" +name = "reth-scroll-evm" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "crossbeam-deque", - "crossbeam-utils", + "alloy-consensus", + "alloy-eips", + "auto_impl", + "derive_more", + "reth-chainspec", + "reth-consensus", + "reth-ethereum-consensus", + "reth-evm", + "reth-primitives", + "reth-primitives-traits", + "reth-revm", + "reth-scroll-chainspec", + "reth-scroll-consensus", + "reth-scroll-execution", + "reth-scroll-forks", + "reth-scroll-revm", + "thiserror 2.0.11", + "tracing", ] [[package]] -name = "redox_syscall" -version = "0.2.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" +name = "reth-scroll-execution" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "bitflags 1.3.2", + "reth-revm", + "reth-scroll-storage", ] [[package]] -name = "redox_syscall" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "469052894dcb553421e483e4209ee581a45100d31b4018de03e5a7ad86374a7e" +name = "reth-scroll-forks" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "bitflags 2.5.0", + "alloy-chains", + "alloy-primitives", + "once_cell", + "reth-ethereum-forks", + "serde", ] [[package]] -name = "regex" -version = "1.10.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c" +name = "reth-scroll-primitives" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "aho-corasick", - "memchr", - "regex-automata 0.4.6", - "regex-syntax 0.8.3", + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "alloy-serde", + "bytes", + "modular-bitfield", + "poseidon-bn254 0.1.0 (git+https://github.com/scroll-tech/poseidon-bn254?rev=526a64a)", + "reth-codecs", + "reth-codecs-derive", + "serde", ] [[package]] -name = "regex-automata" -version = "0.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" +name = "reth-scroll-revm" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "regex-syntax 0.6.29", + "reth-scroll-primitives", + "revm", + "serde", ] [[package]] -name = "regex-automata" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea" +name = "reth-scroll-state-commitment" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "aho-corasick", - "memchr", - "regex-syntax 0.8.3", + "alloy-consensus", + "alloy-genesis", + "alloy-primitives", + "alloy-rlp", + "itertools 0.13.0", + "metrics", + "poseidon-bn254 0.1.0 (git+https://github.com/scroll-tech/poseidon-bn254?rev=526a64a)", + "rayon", + "reth-db", + "reth-execution-errors", + "reth-metrics", + "reth-primitives", + "reth-primitives-traits", + "reth-scroll-execution", + "reth-scroll-primitives", + "reth-scroll-trie", + "reth-storage-api", + "reth-trie", + "reth-trie-db", + "reth-trie-parallel", + "tracing", ] [[package]] -name = "regex-syntax" -version = "0.6.29" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" +name = "reth-scroll-storage" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +dependencies = [ + "alloy-primitives", + "reth-revm", + "reth-scroll-primitives", + "reth-scroll-revm", + "reth-storage-errors", +] [[package]] -name = "regex-syntax" -version = "0.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56" +name = "reth-scroll-trie" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +dependencies = [ + "alloy-primitives", + "alloy-trie", + "reth-scroll-primitives", + "reth-trie", + "tracing", +] [[package]] -name = "reqwest" -version = "0.11.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62" +name = "reth-stages-types" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "base64 0.21.7", + "alloy-primitives", "bytes", - "encoding_rs", - "futures-core", - "futures-util", - "h2 0.3.26", - "http 0.2.12", - "http-body 0.4.6", - "hyper 0.14.28", - "hyper-rustls", - "ipnet", - "js-sys", - "log", - "mime", - "once_cell", - "percent-encoding", - "pin-project-lite", - "rustls", - "rustls-pemfile 1.0.4", + "modular-bitfield", + "reth-codecs", + "reth-trie-common", "serde", - "serde_json", - "serde_urlencoded", - "sync_wrapper", - "system-configuration", - "tokio", - "tokio-rustls", - "tower-service", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", - "webpki-roots 0.25.4", - "winreg 0.50.0", ] [[package]] -name = "reqwest" -version = "0.12.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "566cafdd92868e0939d3fb961bd0dc25fcfaaed179291093b3d43e6b3150ea10" +name = "reth-static-file-types" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +dependencies = [ + "alloy-primitives", + "derive_more", + "serde", + "strum 0.26.3", +] + +[[package]] +name = "reth-storage-api" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rpc-types-engine", + "auto_impl", + "reth-chainspec", + "reth-db", + "reth-db-api", + "reth-db-models", + "reth-execution-types", + "reth-primitives", + "reth-primitives-traits", + "reth-prune-types", + "reth-scroll-revm", + "reth-stages-types", + "reth-storage-errors", + "reth-trie", + "reth-trie-db", +] + +[[package]] +name = "reth-storage-errors" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "derive_more", + "reth-fs-util", + "reth-primitives-traits", + "reth-static-file-types", +] + +[[package]] +name = "reth-tracing" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "async-compression", - "base64 0.22.1", + "clap", + "eyre", + "rolling-file", + "tracing", + "tracing-appender", + "tracing-journald", + "tracing-logfmt", + "tracing-subscriber", +] + +[[package]] +name = "reth-trie" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "alloy-trie", + "auto_impl", + "itertools 0.13.0", + "metrics", + "rayon", + "reth-execution-errors", + "reth-metrics", + "reth-primitives", + "reth-primitives-traits", + "reth-scroll-revm", + "reth-stages-types", + "reth-storage-errors", + "reth-trie-common", + "reth-trie-sparse", + "tracing", +] + +[[package]] +name = "reth-trie-common" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +dependencies = [ + "alloy-consensus", + "alloy-primitives", + "alloy-rlp", + "alloy-rpc-types-eth", + "alloy-trie", "bytes", - "encoding_rs", - "futures-core", - "futures-util", - "h2 0.4.5", - "http 1.1.0", - "http-body 1.0.0", - "http-body-util", - "hyper 1.3.1", - "hyper-tls", - "hyper-util", - "ipnet", - "js-sys", - "log", - "mime", - "native-tls", - "once_cell", - "percent-encoding", - "pin-project-lite", - "rustls-pemfile 2.1.2", + "derive_more", + "itertools 0.13.0", + "nybbles", + "reth-codecs", + "reth-primitives-traits", + "reth-scroll-primitives", "serde", - "serde_json", - "serde_urlencoded", - "sync_wrapper", - "system-configuration", - "tokio", - "tokio-native-tls", - "tokio-util", - "tower-service", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", - "winreg 0.52.0", + "smallvec", ] [[package]] -name = "reqwest-middleware" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a45d100244a467870f6cb763c4484d010a6bed6bd610b3676e3825d93fb4cfbd" +name = "reth-trie-db" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "anyhow", - "async-trait", - "http 1.1.0", - "reqwest 0.12.4", - "serde", - "thiserror", - "tower-service", + "alloy-primitives", + "alloy-rlp", + "derive_more", + "metrics", + "reth-db", + "reth-db-api", + "reth-execution-errors", + "reth-metrics", + "reth-primitives", + "reth-scroll-revm", + "reth-storage-errors", + "reth-trie", + "tracing", ] [[package]] -name = "reqwest-retry" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40f342894422862af74c50e1e9601cf0931accc9c6981e5eb413c46603b616b5" +name = "reth-trie-parallel" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" dependencies = [ - "anyhow", - "async-trait", - "chrono", - "futures", - "getrandom", - "http 1.1.0", - "hyper 1.3.1", - "parking_lot 0.11.2", - "reqwest 0.12.4", - "reqwest-middleware", - "retry-policies", - "tokio", + "alloy-primitives", + "alloy-rlp", + "derive_more", + "itertools 0.13.0", + "metrics", + "rayon", + "reth-db", + "reth-execution-errors", + "reth-metrics", + "reth-primitives", + "reth-provider", + "reth-trie", + "reth-trie-common", + "reth-trie-db", + "thiserror 2.0.11", "tracing", - "wasm-timer", +] + +[[package]] +name = "reth-trie-sparse" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "reth-execution-errors", + "reth-primitives-traits", + "reth-tracing", + "reth-trie-common", + "smallvec", + "thiserror 2.0.11", +] + +[[package]] +name = "reth-zstd-compressors" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +dependencies = [ + "zstd", ] [[package]] @@ -3604,77 +5044,66 @@ dependencies = [ [[package]] name = "revm" -version = "2.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73d84c8f9836efb0f5f5f8de4700a953c4e1f3119e5cfcb0aad8e5be73daf991" +version = "18.0.0" +source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv50#fac3706fafc5271d98e2697fc17e971a3e13fd76" dependencies = [ - "arrayref", "auto_impl", - "bytes", - "hashbrown 0.13.2", - "num_enum 0.5.11", - "primitive-types", - "revm_precompiles", - "rlp", - "sha3 0.10.8", + "cfg-if", + "dyn-clone", + "revm-interpreter", + "revm-precompile", + "serde", + "serde_json", +] + +[[package]] +name = "revm-interpreter" +version = "14.0.0" +source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv50#fac3706fafc5271d98e2697fc17e971a3e13fd76" +dependencies = [ + "cfg-if", + "revm-primitives", + "serde", ] [[package]] name = "revm-precompile" -version = "7.0.0" -source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor/v36#36c304d9e9ba4e4b2d5468d91a6bd27210133b6a" +version = "15.0.0" +source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv50#fac3706fafc5271d98e2697fc17e971a3e13fd76" dependencies = [ "aurora-engine-modexp", "c-kzg", + "cfg-if", "k256", "once_cell", + "p256", "revm-primitives", "ripemd", - "secp256k1 0.29.0", + "secp256k1", "sha2", "substrate-bn", ] [[package]] name = "revm-primitives" -version = "4.0.0" -source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor/v36#36c304d9e9ba4e4b2d5468d91a6bd27210133b6a" +version = "14.0.0" +source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv50#fac3706fafc5271d98e2697fc17e971a3e13fd76" dependencies = [ + "alloy-eip2930", + "alloy-eip7702", "alloy-primitives", "auto_impl", - "bitflags 2.5.0", + "bitflags 2.8.0", "bitvec", "c-kzg", - "cfg-if 1.0.0", - "derive_more", + "cfg-if", "dyn-clone", "enumn", - "halo2curves", - "hashbrown 0.14.5", "hex", - "once_cell", - "poseidon-base", + "poseidon-bn254 0.1.0 (git+https://github.com/scroll-tech/poseidon-bn254?branch=master)", "serde", ] -[[package]] -name = "revm_precompiles" -version = "1.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0353d456ef3e989dc9190f42c6020f09bc2025930c37895826029304413204b5" -dependencies = [ - "bytes", - "hashbrown 0.13.2", - "num", - "once_cell", - "primitive-types", - "ripemd", - "secp256k1 0.24.3", - "sha2", - "sha3 0.10.8", - "substrate-bn", -] - [[package]] name = "rfc6979" version = "0.4.0" @@ -3707,8 +5136,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" dependencies = [ "cc", - "cfg-if 1.0.0", - "getrandom", + "cfg-if", + "getrandom 0.2.15", "libc", "spin 0.9.8", "untrusted 0.9.0", @@ -3724,6 +5153,36 @@ dependencies = [ "digest 0.10.7", ] +[[package]] +name = "rkyv" +version = "0.8.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e147371c75553e1e2fcdb483944a8540b8438c31426279553b9a8182a9b7b65" +dependencies = [ + "bytecheck", + "bytes", + "hashbrown 0.15.2", + "indexmap 2.7.1", + "munge", + "ptr_meta", + "rancor", + "rend", + "rkyv_derive", + "tinyvec", + "uuid", +] + +[[package]] +name = "rkyv_derive" +version = "0.8.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "246b40ac189af6c675d124b802e8ef6d5246c53e17367ce9501f8f66a81abb7a" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.96", +] + [[package]] name = "rlp" version = "0.5.2" @@ -3746,6 +5205,16 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "roaring" +version = "0.10.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a652edd001c53df0b3f96a36a8dc93fce6866988efc16808235653c6bcac8bf2" +dependencies = [ + "bytemuck", + "byteorder", +] + [[package]] name = "rocksdb" version = "0.23.0" @@ -3757,10 +5226,18 @@ dependencies = [ ] [[package]] -name = "ruint" -version = "1.12.1" +name = "rolling-file" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f308135fef9fc398342da5472ce7c484529df23743fb7c734e0f3d472971e62" +checksum = "8395b4f860856b740f20a296ea2cd4d823e81a2658cf05ef61be22916026a906" +dependencies = [ + "chrono", +] + +[[package]] +name = "ruint" +version = "1.12.3" +source = "git+https://github.com/scroll-tech/uint.git?branch=v1.12.3#d26b1f2a4412bba2b9b366f43f7684fd32ac1c8a" dependencies = [ "alloy-rlp", "ark-ff 0.3.0", @@ -3773,6 +5250,7 @@ dependencies = [ "primitive-types", "proptest", "rand", + "rkyv", "rlp", "ruint-macro", "serde", @@ -3782,9 +5260,8 @@ dependencies = [ [[package]] name = "ruint-macro" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f86854cf50259291520509879a5c294c3c9a4c334e9ff65071c51e42ef1e2343" +version = "1.2.1" +source = "git+https://github.com/scroll-tech/uint.git?branch=v1.12.3#d26b1f2a4412bba2b9b366f43f7684fd32ac1c8a" [[package]] name = "rustc-demangle" @@ -3798,6 +5275,15 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" +[[package]] +name = "rustc-hash" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7fb8039b3032c191086b10f11f319a6e99e1e82889c5cc6046f515c9db1d497" +dependencies = [ + "rand", +] + [[package]] name = "rustc-hex" version = "2.1.0" @@ -3815,24 +5301,24 @@ dependencies = [ [[package]] name = "rustc_version" -version = "0.4.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" +checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" dependencies = [ - "semver 1.0.23", + "semver 1.0.25", ] [[package]] name = "rustix" -version = "0.38.34" +version = "0.38.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f" +checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.8.0", "errno", "libc", "linux-raw-sys", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -3847,6 +5333,20 @@ dependencies = [ "sct", ] +[[package]] +name = "rustls" +version = "0.23.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fb9263ab4eb695e42321db096e3b8fbd715a59b154d5c88d82db2175b681ba7" +dependencies = [ + "once_cell", + "ring 0.17.8", + "rustls-pki-types", + "rustls-webpki 0.102.8", + "subtle", + "zeroize", +] + [[package]] name = "rustls-pemfile" version = "1.0.4" @@ -3858,19 +5358,21 @@ dependencies = [ [[package]] name = "rustls-pemfile" -version = "2.1.2" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29993a25686778eb88d4189742cd713c9bce943bc54251a33509dc63cbacf73d" +checksum = "dce314e5fee3f39953d46bb63bb8a46d40c2f8fb7cc5a3b6cab2bde9721d6e50" dependencies = [ - "base64 0.22.1", "rustls-pki-types", ] [[package]] name = "rustls-pki-types" -version = "1.7.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "976295e77ce332211c0d24d92c0e83e50f5c5f046d11082cea19f3df13a3562d" +checksum = "917ce264624a4b4db1c364dcc35bfca9ded014d0a958cd47ad3e960e988ea51c" +dependencies = [ + "web-time", +] [[package]] name = "rustls-webpki" @@ -3892,11 +5394,22 @@ dependencies = [ "untrusted 0.9.0", ] +[[package]] +name = "rustls-webpki" +version = "0.102.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64ca1bc8749bd4cf37b5ce386cc146580777b4e8572c7b97baf22c83f444bee9" +dependencies = [ + "ring 0.17.8", + "rustls-pki-types", + "untrusted 0.9.0", +] + [[package]] name = "rustversion" -version = "1.0.17" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6" +checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4" [[package]] name = "rusty-fork" @@ -3912,26 +5425,141 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.18" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" +checksum = "6ea1a2d0a644769cc99faa24c3ad26b379b786fe7c36fd3c546254801650e6dd" [[package]] -name = "salsa20" -version = "0.10.2" +name = "same-file" +version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97a22f5af31f73a954c10289c93e8a50cc23d971e80ee446f1f6f7137a088213" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "sbv" +version = "2.0.0" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=omerfirmak-patch-1#1c22ad14522c1de299f56fd71c513a878006d698" +dependencies = [ + "sbv-core", + "sbv-helpers", + "sbv-kv", + "sbv-primitives", + "sbv-trie", +] + +[[package]] +name = "sbv-core" +version = "2.0.0" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=omerfirmak-patch-1#1c22ad14522c1de299f56fd71c513a878006d698" +dependencies = [ + "reth-evm", + "reth-evm-ethereum", + "reth-execution-types", + "reth-scroll-evm", + "reth-scroll-storage", + "reth-storage-errors", + "revm", + "sbv-helpers", + "sbv-kv", + "sbv-primitives", + "sbv-trie", + "serde", + "serde_json", + "thiserror 1.0.69", + "tiny-keccak", +] + +[[package]] +name = "sbv-helpers" +version = "2.0.0" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=omerfirmak-patch-1#1c22ad14522c1de299f56fd71c513a878006d698" +dependencies = [ + "revm", +] + +[[package]] +name = "sbv-kv" +version = "2.0.0" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=omerfirmak-patch-1#1c22ad14522c1de299f56fd71c513a878006d698" +dependencies = [ + "auto_impl", + "hashbrown 0.15.2", + "rustc-hash 2.1.0", +] + +[[package]] +name = "sbv-primitives" +version = "2.0.0" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=omerfirmak-patch-1#1c22ad14522c1de299f56fd71c513a878006d698" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-provider", + "alloy-rpc-types-eth", + "alloy-serde", + "alloy-transport", + "async-trait", + "auto_impl", + "itertools 0.14.0", + "reth-chainspec", + "reth-primitives", + "reth-scroll-chainspec", + "reth-scroll-primitives", + "reth-scroll-revm", + "revm", + "rkyv", + "sbv-helpers", + "sbv-kv", + "serde", + "tiny-keccak", +] + +[[package]] +name = "sbv-trie" +version = "2.0.0" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=omerfirmak-patch-1#1c22ad14522c1de299f56fd71c513a878006d698" +dependencies = [ + "alloy-rlp", + "alloy-trie", + "reth-trie", + "reth-trie-sparse", + "revm", + "sbv-helpers", + "sbv-kv", + "sbv-primitives", + "thiserror 1.0.69", +] + +[[package]] +name = "sbv-utils" +version = "2.0.0" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=omerfirmak-patch-1#1c22ad14522c1de299f56fd71c513a878006d698" dependencies = [ - "cipher", + "alloy", + "anyhow", + "clap", + "console", + "indicatif", + "rkyv", + "sbv", + "serde", + "serde_json", + "tokio", + "tower 0.5.2", + "url", ] [[package]] name = "scale-info" -version = "2.11.3" +version = "2.11.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eca070c12893629e2cc820a9761bedf6ce1dcddc9852984d1dc734b8bd9bd024" +checksum = "346a3b32eba2640d17a9cb5927056b08f3de90f65b72fe09402c2ad07d684d0b" dependencies = [ - "cfg-if 1.0.0", + "cfg-if", "derive_more", "parity-scale-codec", "scale-info-derive", @@ -3939,23 +5567,34 @@ dependencies = [ [[package]] name = "scale-info-derive" -version = "2.11.3" +version = "2.11.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d35494501194174bda522a32605929eefc9ecf7e0a326c26db1fdd85881eb62" +checksum = "c6630024bf739e2179b91fb424b28898baf819414262c5d376677dbff1fe7ebf" dependencies = [ - "proc-macro-crate 3.1.0", + "proc-macro-crate 3.2.0", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.96", +] + +[[package]] +name = "schannel" +version = "0.1.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d" +dependencies = [ + "windows-sys 0.59.0", ] [[package]] -name = "schannel" -version = "0.1.23" +name = "schnellru" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534" +checksum = "356285bbf17bea63d9e52e96bd18f039672ac92b55b8cb997d6162a2a37d1649" dependencies = [ - "windows-sys 0.52.0", + "ahash", + "cfg-if", + "hashbrown 0.13.2", ] [[package]] @@ -3973,36 +5612,26 @@ dependencies = [ "axum", "clap", "dotenv", - "ethers-core 2.0.7 (git+https://github.com/scroll-tech/ethers-rs.git?branch=v2.0.7)", - "ethers-providers 2.0.7 (git+https://github.com/scroll-tech/ethers-rs.git?branch=v2.0.7)", + "ethers-core", + "ethers-providers", "hex", - "http 1.1.0", + "http 1.2.0", "log", - "prover", "rand", - "reqwest 0.12.4", + "reqwest 0.12.12", "reqwest-middleware", "reqwest-retry", "rlp", "rocksdb", + "sbv-primitives", + "sbv-utils", "serde", "serde_json", "tiny-keccak", "tokio", "tracing", "tracing-subscriber", -] - -[[package]] -name = "scrypt" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f9e24d2b632954ded8ab2ef9fea0a0c769ea56ea98bddbafbad22caeeadf45d" -dependencies = [ - "hmac", - "pbkdf2 0.11.0", - "salsa20", - "sha2", + "url", ] [[package]] @@ -4025,54 +5654,38 @@ dependencies = [ "der", "generic-array", "pkcs8", + "serdect", "subtle", "zeroize", ] [[package]] name = "secp256k1" -version = "0.24.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b1629c9c557ef9b293568b338dddfc8208c98a18c59d722a9d53f859d9c9b62" -dependencies = [ - "secp256k1-sys 0.6.1", -] - -[[package]] -name = "secp256k1" -version = "0.29.0" +version = "0.29.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e0cc0f1cf93f4969faf3ea1c7d8a9faed25918d96affa959720823dfe86d4f3" +checksum = "9465315bc9d4566e1724f0fffcbcc446268cb522e60f9a27bcded6b19c108113" dependencies = [ "rand", - "secp256k1-sys 0.10.0", -] - -[[package]] -name = "secp256k1-sys" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83080e2c2fc1006e625be82e5d1eb6a43b7fd9578b617fcc55814daf286bba4b" -dependencies = [ - "cc", + "secp256k1-sys", + "serde", ] [[package]] name = "secp256k1-sys" -version = "0.10.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1433bd67156263443f14d603720b082dd3121779323fce20cba2aa07b874bc1b" +checksum = "d4387882333d3aa8cb20530a17c69a3752e97837832f34f6dccc760e715001d9" dependencies = [ "cc", ] [[package]] name = "security-framework" -version = "2.11.0" +version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c627723fd09706bacdb5cf41499e95098555af3c3c29d014dc3c458ef6be11c0" +checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.8.0", "core-foundation", "core-foundation-sys", "libc", @@ -4081,9 +5694,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.11.0" +version = "2.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "317936bbbd05227752583946b9e66d7ce3b489f84e11a94a510b4437fef407d7" +checksum = "49db231d56a190491cb4aeda9527f1ad45345af50b0851622a7adb8c03b01c32" dependencies = [ "core-foundation-sys", "libc", @@ -4100,15 +5713,15 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.23" +version = "1.0.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" +checksum = "f79dfe2d285b0488816f30e700a7438c5a73d816b5b7d3ac72fbc48b0d185e03" [[package]] name = "semver-parser" -version = "0.10.2" +version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7" +checksum = "9900206b54a3527fdc7b8a938bffd94a568bac4f4aa8113b209df75a09c0dec2" dependencies = [ "pest", ] @@ -4127,40 +5740,33 @@ checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73" [[package]] name = "serde" -version = "1.0.203" +version = "1.0.217" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7253ab4de971e72fb7be983802300c30b5a7f0c2e56fab8abfc6a214307c0094" +checksum = "02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70" dependencies = [ "serde_derive", ] -[[package]] -name = "serde_arrays" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38636132857f68ec3d5f3eb121166d2af33cb55174c4d5ff645db6165cbef0fd" -dependencies = [ - "serde", -] - [[package]] name = "serde_derive" -version = "1.0.203" +version = "1.0.217" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba" +checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.96", ] [[package]] name = "serde_json" -version = "1.0.117" +version = "1.0.138" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3" +checksum = "d434192e7da787e94a6ea7e9670b26a036d0ca41e0b7efb2676dd32bae872949" dependencies = [ + "indexmap 2.7.1", "itoa", + "memchr", "ryu", "serde", ] @@ -4175,16 +5781,6 @@ dependencies = [ "serde", ] -[[package]] -name = "serde_stacker" -version = "0.1.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "babfccff5773ff80657f0ecf553c7c516bdc2eb16389c0918b36b73e7015276e" -dependencies = [ - "serde", - "stacker", -] - [[package]] name = "serde_urlencoded" version = "0.7.1" @@ -4199,24 +5795,42 @@ dependencies = [ [[package]] name = "serde_with" -version = "1.14.0" +version = "3.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "678b5a069e50bf00ecd22d0cd8ddf7c236f68581b03db652061ed5eb13a312ff" +checksum = "d6b6f7f2fcb69f747921f79f3926bd1e203fce4fef62c268dd3abfb6d86029aa" dependencies = [ + "base64 0.22.1", + "chrono", + "hex", + "indexmap 1.9.3", + "indexmap 2.7.1", "serde", + "serde_derive", + "serde_json", "serde_with_macros", + "time", ] [[package]] name = "serde_with_macros" -version = "1.5.2" +version = "3.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e182d6ec6f05393cc0e5ed1bf81ad6db3a8feedf8ee515ecdd369809bcce8082" +checksum = "8d00caa5193a3c8362ac2b73be6b9e768aa5a4b2f721d8f4b339600c3cb51f8e" dependencies = [ "darling", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.96", +] + +[[package]] +name = "serdect" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a84f14a19e9a014bb9f4512488d9829a68e04ecabffb0f9904cd1ace94598177" +dependencies = [ + "base16ct", + "serde", ] [[package]] @@ -4225,7 +5839,7 @@ version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" dependencies = [ - "cfg-if 1.0.0", + "cfg-if", "cpufeatures", "digest 0.10.7", ] @@ -4236,23 +5850,11 @@ version = "0.10.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" dependencies = [ - "cfg-if 1.0.0", + "cfg-if", "cpufeatures", "digest 0.10.7", ] -[[package]] -name = "sha3" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f81199417d4e5de3f04b1e871023acea7389672c4135918f05aa9cbf2f2fa809" -dependencies = [ - "block-buffer 0.9.0", - "digest 0.9.0", - "keccak", - "opaque-debug", -] - [[package]] name = "sha3" version = "0.10.8" @@ -4265,12 +5867,12 @@ dependencies = [ [[package]] name = "sha3-asm" -version = "0.1.1" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9b57fd861253bff08bb1919e995f90ba8f4889de2726091c8876f3a4e823b40" +checksum = "c28efc5e327c837aa837c59eae585fc250715ef939ac32881bcc11677cd02d46" dependencies = [ "cc", - "cfg-if 1.0.0", + "cfg-if", ] [[package]] @@ -4307,6 +5909,12 @@ dependencies = [ "rand_core", ] +[[package]] +name = "simdutf8" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" + [[package]] name = "slab" version = "0.4.9" @@ -4321,62 +5929,28 @@ name = "smallvec" version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" - -[[package]] -name = "snark-verifier" -version = "0.1.0" -source = "git+https://github.com/scroll-tech/snark-verifier?branch=develop#58c46b74c73156b9e09dc27617369d2acfb4461b" dependencies = [ - "bytes", - "ethereum-types", - "halo2-base", - "halo2-ecc", - "hex", - "itertools 0.12.1", - "num-bigint", - "num-integer", - "num-traits", - "poseidon", - "rand", - "revm", - "rlp", - "rustc-hash", - "serde", - "sha3 0.10.8", -] - -[[package]] -name = "snark-verifier-sdk" -version = "0.0.1" -source = "git+https://github.com/scroll-tech/snark-verifier?branch=develop#58c46b74c73156b9e09dc27617369d2acfb4461b" -dependencies = [ - "bincode", - "ethereum-types", - "ff", - "halo2-base", - "hex", - "itertools 0.12.1", - "log", - "num-bigint", - "num-integer", - "num-traits", - "rand", - "rand_chacha", "serde", - "serde_json", - "snark-verifier", ] [[package]] name = "socket2" -version = "0.5.7" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c" +checksum = "c970269d99b64e60ec3bd6ad27270092a5394c4e309314b18ae3fe575695fbe8" dependencies = [ "libc", "windows-sys 0.52.0", ] +[[package]] +name = "sp1-intrinsics" +version = "0.0.0" +source = "git+https://github.com/scroll-tech/sp1-intrinsics.git?branch=master#7e038e60db0b2e847f6d8f49e148ccac8c6fc394" +dependencies = [ + "cfg-if", +] + [[package]] name = "spin" version = "0.5.2" @@ -4400,17 +5974,10 @@ dependencies = [ ] [[package]] -name = "stacker" -version = "0.1.15" +name = "stable_deref_trait" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c886bd4480155fd3ef527d45e9ac8dd7118a898a46530b7b94c3e21866259fce" -dependencies = [ - "cc", - "cfg-if 1.0.0", - "libc", - "psm", - "winapi", -] +checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" [[package]] name = "static_assertions" @@ -4418,12 +5985,6 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" -[[package]] -name = "strsim" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" - [[package]] name = "strsim" version = "0.11.1" @@ -4441,9 +6002,12 @@ dependencies = [ [[package]] name = "strum" -version = "0.25.0" +version = "0.26.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "290d54ea6f91c969195bdbcd7442c8c2a2ba87da8bf60a7ee86a235d4bc1e125" +checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" +dependencies = [ + "strum_macros 0.26.4", +] [[package]] name = "strum_macros" @@ -4460,15 +6024,15 @@ dependencies = [ [[package]] name = "strum_macros" -version = "0.25.3" +version = "0.26.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23dc1fa9ac9c169a78ba62f0b841814b7abae11bdd047b9c58f893439e309ea0" +checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" dependencies = [ - "heck 0.4.1", + "heck 0.5.0", "proc-macro2", "quote", "rustversion", - "syn 2.0.66", + "syn 2.0.96", ] [[package]] @@ -4486,9 +6050,9 @@ dependencies = [ [[package]] name = "subtle" -version = "2.5.0" +version = "2.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" +checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" [[package]] name = "syn" @@ -4503,21 +6067,66 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.66" +version = "2.0.96" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c42f3f41a2de00b01c0aaad383c5a45241efc8b2d1eda5661812fda5f3cdcff5" +checksum = "d5d0adab1ae378d7f53bdebc67a39f1f151407ef230f0ce2883572f5d8985c80" dependencies = [ "proc-macro2", "quote", "unicode-ident", ] +[[package]] +name = "syn-solidity" +version = "0.8.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b84e4d83a0a6704561302b917a932484e1cae2d8c6354c64be8b7bac1c1fe057" +dependencies = [ + "paste", + "proc-macro2", + "quote", + "syn 2.0.96", +] + [[package]] name = "sync_wrapper" version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" +[[package]] +name = "sync_wrapper" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0bf256ce5efdfa370213c1dabab5935a12e49f2c58d15e9eac2870d3b4f27263" +dependencies = [ + "futures-core", +] + +[[package]] +name = "synstructure" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.96", +] + +[[package]] +name = "sysinfo" +version = "0.32.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c33cd241af0f2e9e3b5c32163b873b29956890b5342e6745b917ce9d490f4af" +dependencies = [ + "core-foundation-sys", + "libc", + "memchr", + "ntapi", + "windows", +] + [[package]] name = "system-configuration" version = "0.5.1" @@ -4526,7 +6135,18 @@ checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" dependencies = [ "bitflags 1.3.2", "core-foundation", - "system-configuration-sys", + "system-configuration-sys 0.5.0", +] + +[[package]] +name = "system-configuration" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b" +dependencies = [ + "bitflags 2.8.0", + "core-foundation", + "system-configuration-sys 0.6.0", ] [[package]] @@ -4539,6 +6159,16 @@ dependencies = [ "libc", ] +[[package]] +name = "system-configuration-sys" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e1d1b10ced5ca923a1fcb8d03e96b8d3268065d724548c0211415ff6ac6bac4" +dependencies = [ + "core-foundation-sys", + "libc", +] + [[package]] name = "tap" version = "1.0.1" @@ -4547,53 +6177,56 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "tempfile" -version = "3.10.1" +version = "3.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85b77fafb263dd9d05cbeac119526425676db3784113aa9295c88498cbf8bff1" +checksum = "38c246215d7d24f48ae091a2902398798e05d978b24315d6efbc00ede9a8bb91" dependencies = [ - "cfg-if 1.0.0", + "cfg-if", "fastrand", + "getrandom 0.3.1", + "once_cell", "rustix", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] -name = "termcolor" -version = "1.4.1" +name = "thiserror" +version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" +checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" dependencies = [ - "winapi-util", + "thiserror-impl 1.0.69", ] [[package]] name = "thiserror" -version = "1.0.61" +version = "2.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709" +checksum = "d452f284b73e6d76dd36758a0c8684b1d5be31f92b89d07fd5822175732206fc" dependencies = [ - "thiserror-impl", + "thiserror-impl 2.0.11", ] [[package]] name = "thiserror-impl" -version = "1.0.61" +version = "1.0.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533" +checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.96", ] [[package]] -name = "thread-id" -version = "4.2.1" +name = "thiserror-impl" +version = "2.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0ec81c46e9eb50deaa257be2f148adf052d1fb7701cfd55ccfab2525280b70b" +checksum = "26afc1baea8a989337eeb52b6e72a039780ce45c3edfcc9c5b9d112feeb173c2" dependencies = [ - "libc", - "winapi", + "proc-macro2", + "quote", + "syn 2.0.96", ] [[package]] @@ -4602,7 +6235,7 @@ version = "1.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" dependencies = [ - "cfg-if 1.0.0", + "cfg-if", "once_cell", ] @@ -4615,6 +6248,37 @@ dependencies = [ "num_cpus", ] +[[package]] +name = "time" +version = "0.3.37" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35e7868883861bd0e56d9ac6efcaaca0d6d5d82a2a7ec8209ff492c07cf37b21" +dependencies = [ + "deranged", + "itoa", + "num-conv", + "powerfmt", + "serde", + "time-core", + "time-macros", +] + +[[package]] +name = "time-core" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" + +[[package]] +name = "time-macros" +version = "0.2.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2834e6017e3e5e4b9834939793b282bc03b37a3336245fa820e35e233e2a85de" +dependencies = [ + "num-conv", + "time-core", +] + [[package]] name = "tiny-keccak" version = "2.0.2" @@ -4624,11 +6288,21 @@ dependencies = [ "crunchy", ] +[[package]] +name = "tinystr" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f" +dependencies = [ + "displaydoc", + "zerovec", +] + [[package]] name = "tinyvec" -version = "1.6.0" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" +checksum = "022db8904dfa342efe721985167e9fcd16c29b226db4397ed752a761cfce81e8" dependencies = [ "tinyvec_macros", ] @@ -4641,32 +6315,31 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.37.0" +version = "1.43.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787" +checksum = "3d61fa4ffa3de412bfea335c6ecff681de2b609ba3c77ef3e00e521813a9ed9e" dependencies = [ "backtrace", "bytes", "libc", - "mio", - "num_cpus", + "mio 1.0.3", "parking_lot 0.12.3", "pin-project-lite", "signal-hook-registry", "socket2", "tokio-macros", - "windows-sys 0.48.0", + "windows-sys 0.52.0", ] [[package]] name = "tokio-macros" -version = "2.2.0" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b8a1e28f2deaa14e508979454cb3a223b10b938b45af148bc0986de36f1923b" +checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.96", ] [[package]] @@ -4685,8 +6358,30 @@ version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" dependencies = [ - "rustls", + "rustls 0.21.12", + "tokio", +] + +[[package]] +name = "tokio-rustls" +version = "0.26.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f6d0975eaace0cf0fcadee4e4aaa5da15b5c079146f2cffb67c113be122bf37" +dependencies = [ + "rustls 0.23.22", + "tokio", +] + +[[package]] +name = "tokio-stream" +version = "0.1.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eca58d7bba4a75707817a2c44174253f9236b2d5fbd055602e9d5c07c139a047" +dependencies = [ + "futures-core", + "pin-project-lite", "tokio", + "tokio-util", ] [[package]] @@ -4697,18 +6392,18 @@ checksum = "ec509ac96e9a0c43427c74f003127d953a265737636129424288d27cb5c4b12c" dependencies = [ "futures-util", "log", - "rustls", + "rustls 0.21.12", "tokio", - "tokio-rustls", + "tokio-rustls 0.24.1", "tungstenite", "webpki-roots 0.23.1", ] [[package]] name = "tokio-util" -version = "0.7.11" +version = "0.7.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cf6b47b3771c49ac75ad09a6162f53ad4b8088b76ac60e8ec1455b31a189fe1" +checksum = "d7fcaa8d55a2bdd6b83ace262b016eca0d79ee02818c5c1bcdf0305114081078" dependencies = [ "bytes", "futures-core", @@ -4719,9 +6414,9 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "0.6.6" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4badfd56924ae69bcc9039335b2e017639ce3f9b001c393c1b2d1ef846ce2cbf" +checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" [[package]] name = "toml_edit" @@ -4729,20 +6424,20 @@ version = "0.19.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" dependencies = [ - "indexmap", + "indexmap 2.7.1", "toml_datetime", - "winnow", + "winnow 0.5.40", ] [[package]] name = "toml_edit" -version = "0.21.1" +version = "0.22.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1" +checksum = "02a8b472d1a3d7c18e2d61a489aee3453fd9031c33e4f55bd533f4a7adca1bee" dependencies = [ - "indexmap", + "indexmap 2.7.1", "toml_datetime", - "winnow", + "winnow 0.7.0", ] [[package]] @@ -4761,23 +6456,40 @@ dependencies = [ "tracing", ] +[[package]] +name = "tower" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d039ad9159c98b70ecfd540b2573b97f7f52c3e8d9f8ad57a24b916a536975f9" +dependencies = [ + "futures-core", + "futures-util", + "pin-project-lite", + "sync_wrapper 1.0.2", + "tokio", + "tokio-util", + "tower-layer", + "tower-service", + "tracing", +] + [[package]] name = "tower-layer" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" +checksum = "121c2a6cda46980bb0fcd1647ffaf6cd3fc79a013de288782836f6df9c48780e" [[package]] name = "tower-service" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" +checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" [[package]] name = "tracing" -version = "0.1.40" +version = "0.1.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" +checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0" dependencies = [ "log", "pin-project-lite", @@ -4785,22 +6497,34 @@ dependencies = [ "tracing-core", ] +[[package]] +name = "tracing-appender" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3566e8ce28cc0a3fe42519fc80e6b4c943cc4c8cef275620eb8dac2d3d4e06cf" +dependencies = [ + "crossbeam-channel", + "thiserror 1.0.69", + "time", + "tracing-subscriber", +] + [[package]] name = "tracing-attributes" -version = "0.1.27" +version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" +checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.96", ] [[package]] name = "tracing-core" -version = "0.1.32" +version = "0.1.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" +checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c" dependencies = [ "once_cell", "valuable", @@ -4816,6 +6540,17 @@ dependencies = [ "tracing", ] +[[package]] +name = "tracing-journald" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc0b4143302cf1022dac868d521e36e8b27691f72c84b3311750d5188ebba657" +dependencies = [ + "libc", + "tracing-core", + "tracing-subscriber", +] + [[package]] name = "tracing-log" version = "0.2.0" @@ -4827,22 +6562,47 @@ dependencies = [ "tracing-core", ] +[[package]] +name = "tracing-logfmt" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b1f47d22deb79c3f59fcf2a1f00f60cbdc05462bf17d1cd356c1fefa3f444bd" +dependencies = [ + "time", + "tracing", + "tracing-core", + "tracing-subscriber", +] + +[[package]] +name = "tracing-serde" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "704b1aeb7be0d0a84fc9828cae51dab5970fee5088f83d1dd7ee6f6246fc6ff1" +dependencies = [ + "serde", + "tracing-core", +] + [[package]] name = "tracing-subscriber" -version = "0.3.18" +version = "0.3.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b" +checksum = "e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008" dependencies = [ "matchers", "nu-ansi-term", "once_cell", "regex", + "serde", + "serde_json", "sharded-slab", "smallvec", "thread_local", "tracing", "tracing-core", "tracing-log", + "tracing-serde", ] [[package]] @@ -4864,9 +6624,9 @@ dependencies = [ "httparse", "log", "rand", - "rustls", + "rustls 0.21.12", "sha1", - "thiserror", + "thiserror 1.0.69", "url", "utf-8", "webpki", @@ -4880,9 +6640,9 @@ checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" [[package]] name = "ucd-trie" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9" +checksum = "2896d95c02a80c6d6a5d6e953d479f5ddf2dfdb6a244441010e373ac0fb88971" [[package]] name = "uint" @@ -4903,31 +6663,28 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" [[package]] -name = "unicode-bidi" -version = "0.3.15" +name = "unicode-ident" +version = "1.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" +checksum = "a210d160f08b701c8721ba1c726c11662f877ea6b7094007e1ca9a1041945034" [[package]] -name = "unicode-ident" -version = "1.0.12" +name = "unicode-segmentation" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" +checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" [[package]] -name = "unicode-normalization" -version = "0.1.23" +name = "unicode-width" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5" -dependencies = [ - "tinyvec", -] +checksum = "1fc81956842c57dac11422a97c3b8195a1ff727f06e85c84ed2e8aa277c9a0fd" [[package]] name = "unicode-xid" -version = "0.2.4" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" +checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" [[package]] name = "untrusted" @@ -4943,9 +6700,9 @@ checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" [[package]] name = "url" -version = "2.5.0" +version = "2.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633" +checksum = "32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60" dependencies = [ "form_urlencoded", "idna", @@ -4958,27 +6715,35 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" +[[package]] +name = "utf16_iter" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246" + +[[package]] +name = "utf8_iter" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" + [[package]] name = "utf8parse" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" +checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "0.8.2" +version = "1.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7" -dependencies = [ - "getrandom", - "serde", -] +checksum = "b3758f5e68192bb96cc8f9b7e2c2cfdabb435499a28499a42f8f984092adad4b" [[package]] name = "valuable" -version = "0.1.0" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" +checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65" [[package]] name = "vcpkg" @@ -4988,9 +6753,9 @@ checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" [[package]] name = "version_check" -version = "0.9.4" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" +checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" [[package]] name = "wait-timeout" @@ -5001,6 +6766,16 @@ dependencies = [ "libc", ] +[[package]] +name = "walkdir" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" +dependencies = [ + "same-file", + "winapi-util", +] + [[package]] name = "want" version = "0.3.1" @@ -5016,48 +6791,59 @@ version = "0.11.0+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" +[[package]] +name = "wasi" +version = "0.13.3+wasi-0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26816d2e1a4a36a2940b96c5296ce403917633dff8f3440e9b236ed6f6bacad2" +dependencies = [ + "wit-bindgen-rt", +] + [[package]] name = "wasm-bindgen" -version = "0.2.92" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8" +checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5" dependencies = [ - "cfg-if 1.0.0", + "cfg-if", + "once_cell", + "rustversion", "wasm-bindgen-macro", ] [[package]] name = "wasm-bindgen-backend" -version = "0.2.92" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da" +checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6" dependencies = [ "bumpalo", "log", - "once_cell", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.96", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.42" +version = "0.4.50" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0" +checksum = "555d470ec0bc3bb57890405e5d4322cc9ea83cebb085523ced7be4144dac1e61" dependencies = [ - "cfg-if 1.0.0", + "cfg-if", "js-sys", + "once_cell", "wasm-bindgen", "web-sys", ] [[package]] name = "wasm-bindgen-macro" -version = "0.2.92" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726" +checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -5065,22 +6851,25 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.92" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" +checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.96", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.92" +version = "0.2.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" +checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d" +dependencies = [ + "unicode-ident", +] [[package]] name = "wasm-timer" @@ -5097,11 +6886,35 @@ dependencies = [ "web-sys", ] +[[package]] +name = "wasmtimer" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0048ad49a55b9deb3953841fa1fc5858f0efbcb7a18868c899a360269fac1b23" +dependencies = [ + "futures", + "js-sys", + "parking_lot 0.12.3", + "pin-utils", + "slab", + "wasm-bindgen", +] + [[package]] name = "web-sys" -version = "0.3.69" +version = "0.3.77" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "web-time" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef" +checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb" dependencies = [ "js-sys", "wasm-bindgen", @@ -5132,6 +6945,15 @@ version = "0.25.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" +[[package]] +name = "webpki-roots" +version = "0.26.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d642ff16b7e79272ae451b7322067cdc17cadf68c23264be9d94a32319efe7e" +dependencies = [ + "rustls-pki-types", +] + [[package]] name = "winapi" version = "0.3.9" @@ -5150,11 +6972,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.8" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d4cc384e1e73b93bafa6fb4f1df8c41695c8a91cf9c4c64358067d15a7b6c6b" +checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" dependencies = [ - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -5163,13 +6985,96 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" +[[package]] +name = "windows" +version = "0.57.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12342cb4d8e3b046f3d80effd474a7a02447231330ef77d71daa6fbc40681143" +dependencies = [ + "windows-core 0.57.0", + "windows-targets 0.52.6", +] + [[package]] name = "windows-core" version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" dependencies = [ - "windows-targets 0.52.5", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-core" +version = "0.57.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2ed2439a290666cd67ecce2b0ffaad89c2a56b976b736e6ece670297897832d" +dependencies = [ + "windows-implement", + "windows-interface", + "windows-result 0.1.2", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-implement" +version = "0.57.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9107ddc059d5b6fbfbffdfa7a7fe3e22a226def0b2608f72e9d552763d3e1ad7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.96", +] + +[[package]] +name = "windows-interface" +version = "0.57.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29bee4b38ea3cde66011baa44dba677c432a78593e202392d1e9070cf2a7fca7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.96", +] + +[[package]] +name = "windows-registry" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e400001bb720a623c1c69032f8e3e4cf09984deec740f007dd2b03ec864804b0" +dependencies = [ + "windows-result 0.2.0", + "windows-strings", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-result" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e383302e8ec8515204254685643de10811af0ed97ea37210dc26fb0032647f8" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-result" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-strings" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10" +dependencies = [ + "windows-result 0.2.0", + "windows-targets 0.52.6", ] [[package]] @@ -5187,7 +7092,16 @@ version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" dependencies = [ - "windows-targets 0.52.5", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-sys" +version = "0.59.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" +dependencies = [ + "windows-targets 0.52.6", ] [[package]] @@ -5207,18 +7121,18 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" dependencies = [ - "windows_aarch64_gnullvm 0.52.5", - "windows_aarch64_msvc 0.52.5", - "windows_i686_gnu 0.52.5", + "windows_aarch64_gnullvm 0.52.6", + "windows_aarch64_msvc 0.52.6", + "windows_i686_gnu 0.52.6", "windows_i686_gnullvm", - "windows_i686_msvc 0.52.5", - "windows_x86_64_gnu 0.52.5", - "windows_x86_64_gnullvm 0.52.5", - "windows_x86_64_msvc 0.52.5", + "windows_i686_msvc 0.52.6", + "windows_x86_64_gnu 0.52.6", + "windows_x86_64_gnullvm 0.52.6", + "windows_x86_64_msvc 0.52.6", ] [[package]] @@ -5229,9 +7143,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" [[package]] name = "windows_aarch64_gnullvm" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" [[package]] name = "windows_aarch64_msvc" @@ -5241,9 +7155,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" [[package]] name = "windows_aarch64_msvc" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" [[package]] name = "windows_i686_gnu" @@ -5253,15 +7167,15 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" [[package]] name = "windows_i686_gnu" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" [[package]] name = "windows_i686_gnullvm" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" [[package]] name = "windows_i686_msvc" @@ -5271,9 +7185,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" [[package]] name = "windows_i686_msvc" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" [[package]] name = "windows_x86_64_gnu" @@ -5283,9 +7197,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" [[package]] name = "windows_x86_64_gnu" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" [[package]] name = "windows_x86_64_gnullvm" @@ -5295,9 +7209,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" [[package]] name = "windows_x86_64_gnullvm" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" [[package]] name = "windows_x86_64_msvc" @@ -5307,9 +7221,9 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" [[package]] name = "windows_x86_64_msvc" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "winnow" @@ -5320,26 +7234,55 @@ dependencies = [ "memchr", ] +[[package]] +name = "winnow" +version = "0.6.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e90edd2ac1aa278a5c4599b1d89cf03074b610800f866d4026dc199d7929a28" +dependencies = [ + "memchr", +] + +[[package]] +name = "winnow" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7e49d2d35d3fad69b39b94139037ecfb4f359f08958b9c11e7315ce770462419" +dependencies = [ + "memchr", +] + [[package]] name = "winreg" version = "0.50.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" dependencies = [ - "cfg-if 1.0.0", + "cfg-if", "windows-sys 0.48.0", ] [[package]] -name = "winreg" -version = "0.52.0" +name = "wit-bindgen-rt" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a277a57398d4bfa075df44f501a17cfdf8542d224f0d36095a2adc7aee4ef0a5" +checksum = "3268f3d866458b787f390cf61f4bbb563b922d091359f9608842999eaee3943c" dependencies = [ - "cfg-if 1.0.0", - "windows-sys 0.48.0", + "bitflags 2.8.0", ] +[[package]] +name = "write16" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936" + +[[package]] +name = "writeable" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" + [[package]] name = "ws_stream_wasm" version = "0.7.4" @@ -5351,9 +7294,9 @@ dependencies = [ "js-sys", "log", "pharos", - "rustc_version 0.4.0", + "rustc_version 0.4.1", "send_wrapper 0.6.0", - "thiserror", + "thiserror 1.0.69", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", @@ -5369,135 +7312,118 @@ dependencies = [ ] [[package]] -name = "zerocopy" -version = "0.7.34" +name = "yoke" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae87e3fcd617500e5d106f0380cf7b77f3c6092aae37191433159dda23cfb087" +checksum = "120e6aef9aa629e3d4f52dc8cc43a015c7724194c97dfaf45180d2daf2b77f40" dependencies = [ - "zerocopy-derive", + "serde", + "stable_deref_trait", + "yoke-derive", + "zerofrom", ] [[package]] -name = "zerocopy-derive" -version = "0.7.34" +name = "yoke-derive" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b" +checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.96", + "synstructure", ] [[package]] -name = "zeroize" -version = "1.8.1" +name = "zerocopy" +version = "0.7.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde" +checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" dependencies = [ - "zeroize_derive", + "byteorder", + "zerocopy-derive", ] [[package]] -name = "zeroize_derive" -version = "1.4.2" +name = "zerocopy-derive" +version = "0.7.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" +checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.96", ] [[package]] -name = "zkevm-circuits" -version = "0.13.0" -source = "git+https://github.com/scroll-tech/zkevm-circuits.git?tag=v0.13.1#4009e5593f13ba73f64f556011ee5ef47bc4ebf3" +name = "zerofrom" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cff3ee08c995dee1859d998dea82f7374f2826091dd9cd47def953cae446cd2e" dependencies = [ - "array-init", - "bus-mapping", - "either", - "env_logger", - "eth-types", - "ethers-core 2.0.7 (git+https://github.com/scroll-tech/ethers-rs.git?branch=v2.0.7)", - "ethers-signers", - "ff", - "gadgets", - "halo2-base", - "halo2-ecc", - "halo2-mpt-circuits", - "halo2_gadgets", - "halo2_proofs", - "hex", - "itertools 0.11.0", - "log", - "misc-precompiled-circuit", - "mock", - "mpt-zktrie", - "num", - "num-bigint", - "poseidon-circuit", - "rand", - "rand_chacha", - "rand_xorshift", - "rayon", - "serde", - "serde_json", - "sha3 0.10.8", - "snark-verifier", - "snark-verifier-sdk", - "strum 0.25.0", - "strum_macros 0.25.3", - "subtle", + "zerofrom-derive", ] [[package]] -name = "zktrie" -version = "0.3.0" -source = "git+https://github.com/scroll-tech/zktrie.git?branch=v0.9#460b8c22af65b7809164548cba1e0253b6db5a70" +name = "zerofrom-derive" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808" dependencies = [ - "gobuild", - "zktrie_rust", + "proc-macro2", + "quote", + "syn 2.0.96", + "synstructure", ] [[package]] -name = "zktrie_rust" -version = "0.3.0" -source = "git+https://github.com/scroll-tech/zktrie.git?branch=v0.9#460b8c22af65b7809164548cba1e0253b6db5a70" +name = "zeroize" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde" dependencies = [ - "hex", - "lazy_static", - "num", - "num-derive", - "num-traits", - "strum 0.24.1", - "strum_macros 0.24.3", + "zeroize_derive", ] [[package]] -name = "zstd" -version = "0.13.0" -source = "git+https://github.com/scroll-tech/zstd-rs?branch=hack/mul-block#5c0892b6567dab31394d701477183ce9d6a32aca" +name = "zeroize_derive" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ - "zstd-safe", + "proc-macro2", + "quote", + "syn 2.0.96", ] [[package]] -name = "zstd-safe" -version = "7.0.0" -source = "git+https://github.com/scroll-tech/zstd-rs?branch=hack/mul-block#5c0892b6567dab31394d701477183ce9d6a32aca" +name = "zerovec" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079" dependencies = [ - "zstd-sys 2.0.9+zstd.1.5.5", + "yoke", + "zerofrom", + "zerovec-derive", ] [[package]] -name = "zstd-sys" -version = "2.0.9+zstd.1.5.5" -source = "git+https://github.com/scroll-tech/zstd-rs?branch=hack/mul-block#5c0892b6567dab31394d701477183ce9d6a32aca" +name = "zerovec-derive" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" dependencies = [ - "cc", - "pkg-config", + "proc-macro2", + "quote", + "syn 2.0.96", ] +[[package]] +name = "zstd" +version = "1.1.4" +source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" + [[package]] name = "zstd-sys" version = "2.0.13+zstd.1.5.6" diff --git a/Cargo.toml b/Cargo.toml index d3194d3..49944eb 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -3,16 +3,6 @@ name = "scroll-proving-sdk" version = "0.1.0" edition = "2021" -[patch.crates-io] -ethers-signers = { git = "https://github.com/scroll-tech/ethers-rs.git", branch = "v2.0.7" } -halo2curves = { git = "https://github.com/scroll-tech/halo2curves", branch = "v0.1.0" } -[patch."https://github.com/privacy-scaling-explorations/halo2.git"] -halo2_proofs = { git = "https://github.com/scroll-tech/halo2.git", branch = "v1.1" } -[patch."https://github.com/privacy-scaling-explorations/poseidon.git"] -poseidon = { git = "https://github.com/scroll-tech/poseidon.git", branch = "main" } -[patch."https://github.com/privacy-scaling-explorations/bls12_381"] -bls12_381 = { git = "https://github.com/scroll-tech/bls12_381", branch = "feat/impl_scalar_field" } - [dependencies] anyhow = "1.0" log = "0.4" @@ -20,7 +10,6 @@ serde = { version = "1.0.198", features = ["derive"] } serde_json = "1.0.116" ethers-core = { git = "https://github.com/scroll-tech/ethers-rs.git", branch = "v2.0.7" } ethers-providers = { git = "https://github.com/scroll-tech/ethers-rs.git", branch = "v2.0.7" } -prover_darwin_v2 = { git = "https://github.com/scroll-tech/zkevm-circuits.git", tag = "v0.13.1", package = "prover", default-features = false, features = ["parallel_syn", "scroll"] } reqwest = { version = "0.12.4", features = ["gzip"] } reqwest-middleware = "0.3" reqwest-retry = "0.5" @@ -37,3 +26,22 @@ tracing-subscriber = { version = "0.3.18", features = ["env-filter"] } axum = "0.6.0" dotenv = "0.15" rocksdb = "0.23.0" +sbv-utils = { git = "https://github.com/scroll-tech/stateless-block-verifier", branch = "omerfirmak-patch-1", features = [ + "scroll", +], optional = true } +sbv-primitives = { git = "https://github.com/scroll-tech/stateless-block-verifier", branch = "omerfirmak-patch-1", features = [ + "scroll", +], optional = true } +url = "2.5.4" + +[features] +openvm = ["dep:sbv-utils", "dep:sbv-primitives"] + +[patch.crates-io] +# patched add rkyv support & MSRV 1.77 +ruint = { git = "https://github.com/scroll-tech/uint.git", branch = "v1.12.3" } +alloy-primitives = { git = "https://github.com/scroll-tech/alloy-core", branch = "v0.8.18" } +revm = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/v50" } +revm-interpreter = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/v50" } +revm-precompile = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/v50" } +revm-primitives = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/v50" } diff --git a/examples/cloud.rs b/examples/cloud.rs index f6901c3..4744d7f 100644 --- a/examples/cloud.rs +++ b/examples/cloud.rs @@ -83,10 +83,10 @@ impl ProvingService for CloudProver { async fn get_vks(&self, req: GetVkRequest) -> GetVkResponse { todo!() } - async fn prove(&self, req: ProveRequest) -> ProveResponse { + async fn prove(&mut self, req: ProveRequest) -> ProveResponse { todo!() } - async fn query_task(&self, req: QueryTaskRequest) -> QueryTaskResponse { + async fn query_task(&mut self, req: QueryTaskRequest) -> QueryTaskResponse { todo!() } } @@ -109,10 +109,7 @@ async fn main() -> anyhow::Result<()> { let cfg = CloudProverConfig::from_file_and_env(args.config_file)?; let sdk_config = cfg.sdk_config.clone(); let cloud_prover = CloudProver::new(cfg); - let prover = ProverBuilder::new(sdk_config) - .with_proving_service(Box::new(cloud_prover)) - .build() - .await?; + let prover = ProverBuilder::new(sdk_config, cloud_prover).build().await?; prover.run().await; diff --git a/examples/local.rs b/examples/local.rs index 616b1be..48a5aab 100644 --- a/examples/local.rs +++ b/examples/local.rs @@ -59,10 +59,10 @@ impl ProvingService for LocalProver { async fn get_vks(&self, req: GetVkRequest) -> GetVkResponse { todo!() } - async fn prove(&self, req: ProveRequest) -> ProveResponse { + async fn prove(&mut self, req: ProveRequest) -> ProveResponse { todo!() } - async fn query_task(&self, req: QueryTaskRequest) -> QueryTaskResponse { + async fn query_task(&mut self, req: QueryTaskRequest) -> QueryTaskResponse { todo!() } } @@ -81,10 +81,7 @@ async fn main() -> anyhow::Result<()> { let cfg = LocalProverConfig::from_file_and_env(args.config_file)?; let sdk_config = cfg.sdk_config.clone(); let local_prover = LocalProver::new(cfg); - let prover = ProverBuilder::new(sdk_config) - .with_proving_service(Box::new(local_prover)) - .build() - .await?; + let prover = ProverBuilder::new(sdk_config, local_prover).build().await?; prover.run().await; diff --git a/rust-toolchain.toml b/rust-toolchain.toml index 1819847..eb12bd3 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,2 +1,2 @@ [toolchain] -channel = "nightly-2023-12-03" +channel = "nightly-2024-12-06" diff --git a/src/config.rs b/src/config.rs index 2da589d..16b22c3 100644 --- a/src/config.rs +++ b/src/config.rs @@ -1,4 +1,7 @@ -use crate::prover::CircuitType; +use crate::{ + coordinator_handler::ProverType, + prover::{CircuitType, ProofType}, +}; use anyhow::{anyhow, Result}; use dotenv::dotenv; use serde::{Deserialize, Serialize}; @@ -32,7 +35,8 @@ pub struct L2GethConfig { #[derive(Debug, Serialize, Deserialize, Clone)] pub struct ProverConfig { - pub circuit_types: Vec, + pub circuit_type: CircuitType, + pub supported_proof_types: Vec, pub circuit_version: String, #[serde(default = "default_n_workers")] pub n_workers: usize, @@ -94,22 +98,23 @@ impl Config { l2geth.endpoint = val; } } - if let Some(val) = Self::get_env_var("CIRCUIT_TYPES")? { + + if let Some(val) = Self::get_env_var("PROOF_TYPES")? { let values_vec: Vec<&str> = val .trim_matches(|c| c == '[' || c == ']') .split(',') .map(|s| s.trim()) .collect(); - self.prover.circuit_types = values_vec + self.prover.supported_proof_types = values_vec .iter() .map(|value| match value.parse::() { - Ok(num) => CircuitType::from_u8(num), + Ok(num) => ProofType::from_u8(num), Err(e) => { panic!("Failed to parse circuit type: {}", e); } }) - .collect::>(); + .collect::>(); } if let Some(val) = Self::get_env_var("N_WORKERS")? { @@ -122,4 +127,30 @@ impl Config { Ok(()) } + + pub fn coordinator_prover_type(&self) -> Vec { + if self.prover.circuit_type == CircuitType::OpenVM { + vec![ProverType::OpenVM] + } else { + let mut prover_types = vec![]; + if self + .prover + .supported_proof_types + .iter() + .any(|t| *t == ProofType::Bundle || *t == ProofType::Batch) + { + prover_types.push(ProverType::Batch) + } + + if self + .prover + .supported_proof_types + .contains(&ProofType::Chunk) + { + prover_types.push(ProverType::Chunk) + } + + prover_types + } + } } diff --git a/src/coordinator_handler/coordinator_client.rs b/src/coordinator_handler/coordinator_client.rs index df48f03..f65af11 100644 --- a/src/coordinator_handler/coordinator_client.rs +++ b/src/coordinator_handler/coordinator_client.rs @@ -1,16 +1,12 @@ use super::{ api::Api, error::ErrorCode, GetTaskRequest, GetTaskResponseData, KeySigner, LoginMessage, - LoginRequest, Response, SubmitProofRequest, SubmitProofResponseData, -}; -use crate::{ - config::CoordinatorConfig, - prover::{CircuitType, ProverProviderType}, - utils::get_version, + LoginRequest, ProverType, Response, SubmitProofRequest, SubmitProofResponseData, }; +use crate::{config::CoordinatorConfig, prover::ProverProviderType, utils::get_version}; use tokio::sync::{Mutex, MutexGuard}; pub struct CoordinatorClient { - circuit_types: Vec, + prover_types: Vec, vks: Vec, pub prover_name: String, pub prover_provider_type: ProverProviderType, @@ -22,7 +18,7 @@ pub struct CoordinatorClient { impl CoordinatorClient { pub fn new( cfg: CoordinatorConfig, - circuit_types: Vec, + prover_types: Vec, vks: Vec, prover_name: String, prover_provider_type: ProverProviderType, @@ -30,7 +26,7 @@ impl CoordinatorClient { ) -> anyhow::Result { let api = Api::new(cfg)?; let client = Self { - circuit_types, + prover_types, vks, prover_name, prover_provider_type, @@ -111,22 +107,12 @@ impl CoordinatorClient { .as_ref() .ok_or_else(|| anyhow::anyhow!("Missing challenge token"))?; - let mut prover_types = vec![]; - if self.circuit_types.contains(&CircuitType::Bundle) - || self.circuit_types.contains(&CircuitType::Batch) - { - prover_types.push(CircuitType::Batch) - } - if self.circuit_types.contains(&CircuitType::Chunk) { - prover_types.push(CircuitType::Chunk) - } - let login_message = LoginMessage { challenge: login_response_data.token.clone(), prover_version: get_version().to_string(), prover_name: self.prover_name.clone(), prover_provider_type: self.prover_provider_type, - prover_types, + prover_types: self.prover_types.clone(), vks: self.vks.clone(), }; diff --git a/src/coordinator_handler/types.rs b/src/coordinator_handler/types.rs index b93c594..87de37b 100644 --- a/src/coordinator_handler/types.rs +++ b/src/coordinator_handler/types.rs @@ -1,6 +1,6 @@ use super::error::ErrorCode; use crate::{ - prover::{CircuitType, ProverProviderType}, + prover::{ProofType, ProverProviderType}, tracing_handler::CommonHash, }; use rlp::{Encodable, RlpStream}; @@ -13,13 +13,60 @@ pub struct Response { pub data: Option, } +#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)] +pub enum ProverType { + Undefined, + Chunk, + Batch, + OpenVM, +} + +impl ProverType { + pub fn from_u8(v: u8) -> Self { + match v { + 1 => ProverType::Chunk, + 2 => ProverType::Batch, + 3 => ProverType::OpenVM, + _ => ProverType::Undefined, + } + } + + pub fn to_u8(&self) -> u8 { + match self { + ProverType::Undefined => 0, + ProverType::Chunk => 1, + ProverType::Batch => 2, + ProverType::OpenVM => 3, + } + } +} + +impl Serialize for ProverType { + fn serialize(&self, serializer: S) -> Result + where + S: Serializer, + { + serializer.serialize_u8(self.to_u8()) + } +} + +impl<'de> Deserialize<'de> for ProverType { + fn deserialize(deserializer: D) -> Result + where + D: Deserializer<'de>, + { + let v: u8 = u8::deserialize(deserializer)?; + Ok(ProverType::from_u8(v)) + } +} + #[derive(Serialize, Deserialize)] pub struct LoginMessage { pub challenge: String, pub prover_version: String, pub prover_name: String, pub prover_provider_type: ProverProviderType, - pub prover_types: Vec, + pub prover_types: Vec, pub vks: Vec, } @@ -36,7 +83,7 @@ impl Encodable for LoginMessage { let prover_types = self .prover_types .iter() - .map(|prover_type: &CircuitType| prover_type.to_u8()) + .map(|prover_type| prover_type.to_u8()) .collect::>(); s.append(&prover_types); s.begin_list(self.vks.len()); @@ -63,7 +110,7 @@ pub type ChallengeResponseData = LoginResponseData; #[derive(Default, Serialize, Deserialize)] pub struct GetTaskRequest { - pub task_types: Vec, + pub task_types: Vec, pub prover_height: Option, } @@ -71,7 +118,7 @@ pub struct GetTaskRequest { pub struct GetTaskResponseData { pub uuid: String, pub task_id: String, - pub task_type: CircuitType, + pub task_type: ProofType, pub task_data: String, pub hard_fork_name: String, } @@ -85,7 +132,7 @@ pub struct ChunkTaskDetail { pub struct SubmitProofRequest { pub uuid: String, pub task_id: String, - pub task_type: CircuitType, + pub task_type: ProofType, pub status: ProofStatus, pub proof: String, pub failure_type: Option, @@ -203,7 +250,7 @@ mod tests { prover_version: "v4.4.45-37af5ef5-38a68e2-1c5093c".to_string(), prover_name: "test".to_string(), prover_provider_type: ProverProviderType::Internal, - prover_types: vec![CircuitType::Chunk], + prover_types: vec![ProverType::Chunk], vks: vec!["mock_vk".to_string()], }; diff --git a/src/prover/builder.rs b/src/prover/builder.rs index 5c8f238..38596ea 100644 --- a/src/prover/builder.rs +++ b/src/prover/builder.rs @@ -1,4 +1,6 @@ -use super::{CircuitType, ProverProviderType}; +use tokio::sync::RwLock; + +use super::{ProofType, ProverProviderType}; use crate::{ config::Config, coordinator_handler::{CoordinatorClient, KeySigner}, @@ -12,55 +14,47 @@ use crate::{ }; use std::path::PathBuf; -pub struct ProverBuilder { +pub struct ProverBuilder { cfg: Config, - proving_service: Option>, + proving_service: Backend, } -impl ProverBuilder { - pub fn new(cfg: Config) -> Self { +impl ProverBuilder +where + Backend: ProvingService + Send + Sync + 'static, +{ + pub fn new(cfg: Config, service: Backend) -> Self { ProverBuilder { cfg, - proving_service: None, + proving_service: service, } } - pub fn with_proving_service( - mut self, - proving_service: Box, - ) -> Self { - self.proving_service = Some(proving_service); - self - } - - pub async fn build(self) -> anyhow::Result { - if self.proving_service.is_none() { - anyhow::bail!("proving_service is not provided"); - } - if self.proving_service.as_ref().unwrap().is_local() && self.cfg.prover.n_workers > 1 { + pub async fn build(self) -> anyhow::Result> { + if self.proving_service.is_local() && self.cfg.prover.n_workers > 1 { anyhow::bail!("cannot use multiple workers with local proving service"); } - if self.cfg.prover.circuit_types.contains(&CircuitType::Chunk) && self.cfg.l2geth.is_none() + if self + .cfg + .prover + .supported_proof_types + .contains(&ProofType::Chunk) + && self.cfg.l2geth.is_none() { anyhow::bail!("circuit_type is chunk but l2geth config is not provided"); } let get_vk_request = GetVkRequest { - circuit_types: self.cfg.prover.circuit_types.clone(), + proof_types: self.cfg.prover.supported_proof_types.clone(), circuit_version: self.cfg.prover.circuit_version.clone(), }; - let get_vk_response = self - .proving_service - .as_ref() - .unwrap() - .get_vks(get_vk_request) - .await; + let get_vk_response = self.proving_service.get_vks(get_vk_request).await; if let Some(error) = get_vk_response.error { anyhow::bail!("failed to get vk: {}", error); } - let prover_provider_type = if self.proving_service.as_ref().unwrap().is_local() { + let prover_provider_type = if self.proving_service.is_local() { ProverProviderType::Internal } else { ProverProviderType::External @@ -77,7 +71,7 @@ impl ProverBuilder { let coordinator_clients: Result, _> = (0..self.cfg.prover.n_workers) .map(|i| { - let prover_name = if self.proving_service.as_ref().unwrap().is_local() { + let prover_name = if self.proving_service.is_local() { self.cfg.prover_name_prefix.clone() } else { format_cloud_prover_name(self.cfg.prover_name_prefix.clone(), i) @@ -85,7 +79,7 @@ impl ProverBuilder { CoordinatorClient::new( self.cfg.coordinator.clone(), - self.cfg.prover.circuit_types.clone(), + self.cfg.coordinator_prover_type(), get_vk_response.vks.clone(), prover_name, prover_provider_type, @@ -105,11 +99,12 @@ impl ProverBuilder { }); Ok(Prover { - circuit_types: self.cfg.prover.circuit_types.clone(), + circuit_type: self.cfg.prover.circuit_type, + proof_types: self.cfg.prover.supported_proof_types, circuit_version: self.cfg.prover.circuit_version, coordinator_clients, l2geth_client, - proving_service: self.proving_service.unwrap(), + proving_service: RwLock::new(self.proving_service), n_workers: self.cfg.prover.n_workers, health_listener_addr: self.cfg.health_listener_addr, db: Db::new(&db_path)?, diff --git a/src/prover/mod.rs b/src/prover/mod.rs index 3b366f9..dd28ddc 100644 --- a/src/prover/mod.rs +++ b/src/prover/mod.rs @@ -9,33 +9,40 @@ use crate::{ db::Db, tracing_handler::L2gethClient, }; +use anyhow::bail; use axum::{routing::get, Router}; +use ethers_core::types::H256; +use ethers_providers::Middleware; use proving_service::{ProveRequest, QueryTaskRequest, TaskStatus}; use std::net::SocketAddr; use std::str::FromStr; -use tokio::task::JoinSet; use tokio::time::{sleep, Duration}; +use tokio::{sync::RwLock, task::JoinSet}; use tracing::{error, info, instrument}; pub use {builder::ProverBuilder, proving_service::ProvingService, types::*}; const WORKER_SLEEP_SEC: u64 = 20; -pub struct Prover { - circuit_types: Vec, +pub struct Prover { + circuit_type: CircuitType, + proof_types: Vec, circuit_version: String, coordinator_clients: Vec, l2geth_client: Option, - proving_service: Box, + proving_service: RwLock, n_workers: usize, health_listener_addr: String, db: Db, } -impl Prover { +impl Prover +where + Backend: ProvingService + Send + Sync + 'static, +{ pub async fn run(self) { assert!(self.n_workers == self.coordinator_clients.len()); - if self.circuit_types.contains(&CircuitType::Chunk) { + if self.proof_types.contains(&ProofType::Chunk) { assert!(self.l2geth_client.is_some()); } @@ -90,7 +97,7 @@ impl Prover { .db .get_task(coordinator_client.key_signer.get_public_key()) { - if self.proving_service.is_local() { + if self.proving_service.read().await.is_local() { let proving_task = self.request_proving(&coordinator_task).await?; proving_task_id = proving_task.task_id } @@ -130,7 +137,12 @@ impl Prover { coordinator_task: &GetTaskResponseData, ) -> anyhow::Result { let proving_input = self.build_proving_input(coordinator_task).await?; - let proving_task = self.proving_service.prove(proving_input).await; + let proving_task = self + .proving_service + .write() + .await + .prove(proving_input) + .await; if let Some(error) = proving_task.error { anyhow::bail!( @@ -160,6 +172,8 @@ impl Prover { loop { let task = self .proving_service + .write() + .await .query_task(QueryTaskRequest { task_id: proving_service_task_id.clone(), }) @@ -271,7 +285,7 @@ impl Prover { }; GetTaskRequest { - task_types: self.circuit_types.clone(), + task_types: self.proof_types.clone(), prover_height, } } @@ -281,43 +295,112 @@ impl Prover { task: &GetTaskResponseData, ) -> anyhow::Result { anyhow::ensure!( - self.circuit_types.contains(&task.task_type), + self.proof_types.contains(&task.task_type), "unsupported task type. self: {:?}, task: {:?}, coordinator_task_uuid: {:?}, coordinator_task_id: {:?}", - self.circuit_types, + self.proof_types, task.task_type, task.uuid, task.task_id ); + match self.circuit_type { + CircuitType::Halo2 => self.build_halo2_input(task).await, + CircuitType::OpenVM => { + #[cfg(not(feature = "openvm"))] + anyhow::bail!("OpenVM is not enabled in this build"); + #[cfg(feature = "openvm")] + self.build_openvm_input(task).await + } + _ => anyhow::bail!("unsupported circuit type: {:?}", self.circuit_type), + } + } + + async fn build_halo2_input(&self, task: &GetTaskResponseData) -> anyhow::Result { match task.task_type { - CircuitType::Undefined => { + ProofType::Undefined => { unreachable!(); } - CircuitType::Chunk => { + ProofType::Chunk => { let chunk_task_detail: ChunkTaskDetail = serde_json::from_str(&task.task_data)?; let serialized_traces = self .l2geth_client .as_ref() .unwrap() - .get_sorted_traces_by_hashes(&chunk_task_detail.block_hashes) + .get_traces_by_hashes(&chunk_task_detail.block_hashes) .await?; // Note: Manually join pre-serialized traces since they are already in JSON format. // Using serde_json::to_string would escape the JSON strings, creating invalid nested JSON. let input = format!("[{}]", serialized_traces.join(",")); Ok(ProveRequest { - circuit_type: task.task_type, + proof_type: task.task_type, circuit_version: self.circuit_version.clone(), hard_fork_name: task.hard_fork_name.clone(), input, }) } - CircuitType::Batch | CircuitType::Bundle => Ok(ProveRequest { - circuit_type: task.task_type, + ProofType::Batch | ProofType::Bundle => Ok(ProveRequest { + proof_type: task.task_type, + circuit_version: self.circuit_version.clone(), + hard_fork_name: task.hard_fork_name.clone(), + input: task.task_data.clone(), + }), + } + } + + #[cfg(feature = "openvm")] + async fn build_openvm_input(&self, task: &GetTaskResponseData) -> anyhow::Result { + match task.task_type { + ProofType::Chunk => { + let chunk_task_detail: ChunkTaskDetail = serde_json::from_str(&task.task_data)?; + let mut witnesses = vec![]; + for block_hash in chunk_task_detail.block_hashes { + witnesses.push(self.build_block_witness(block_hash).await?); + } + witnesses.sort_by(|a, b| a.header.number.cmp(&b.header.number)); + + Ok(ProveRequest { + proof_type: task.task_type, + circuit_version: self.circuit_version.clone(), + hard_fork_name: task.hard_fork_name.clone(), + input: serde_json::to_string(&witnesses)?, + }) + } + ProofType::Batch | ProofType::Bundle => Ok(ProveRequest { + proof_type: task.task_type, circuit_version: self.circuit_version.clone(), hard_fork_name: task.hard_fork_name.clone(), input: task.task_data.clone(), }), + _ => bail!("unsupported task type: {:?}", task.task_type), } } + + #[cfg(feature = "openvm")] + async fn build_block_witness( + &self, + hash: H256, + ) -> anyhow::Result { + let client = self.l2geth_client.as_ref().unwrap(); + let block = client + .provider + .get_block(hash) + .await? + .ok_or_else(|| anyhow::anyhow!("Block not found"))?; + let block_num = block.number.expect("block hash without number").as_u64(); + let cmd = sbv_utils::commands::witness::dump::DumpWitnessCommand { + rpc: client.provider.provider().url().clone(), + block: block_num, + ancestors: 1, + out_dir: std::env::temp_dir(), // we won't write to disk + json: false, + rkyv: false, + max_concurrency: 10, + max_retry: 10, + backoff: 100, + cups: 100, + }; + + cmd.run().await + } } diff --git a/src/prover/proving_service.rs b/src/prover/proving_service.rs index 8eccebd..78a4afb 100644 --- a/src/prover/proving_service.rs +++ b/src/prover/proving_service.rs @@ -1,16 +1,16 @@ -use super::CircuitType; +use super::ProofType; use async_trait::async_trait; #[async_trait] pub trait ProvingService { fn is_local(&self) -> bool; async fn get_vks(&self, req: GetVkRequest) -> GetVkResponse; - async fn prove(&self, req: ProveRequest) -> ProveResponse; - async fn query_task(&self, req: QueryTaskRequest) -> QueryTaskResponse; + async fn prove(&mut self, req: ProveRequest) -> ProveResponse; + async fn query_task(&mut self, req: QueryTaskRequest) -> QueryTaskResponse; } pub struct GetVkRequest { - pub circuit_types: Vec, + pub proof_types: Vec, pub circuit_version: String, } @@ -21,7 +21,7 @@ pub struct GetVkResponse { #[derive(Clone)] pub struct ProveRequest { - pub circuit_type: CircuitType, + pub proof_type: ProofType, pub circuit_version: String, pub hard_fork_name: String, pub input: String, @@ -30,7 +30,7 @@ pub struct ProveRequest { #[derive(Default)] pub struct ProveResponse { pub task_id: String, - pub circuit_type: CircuitType, + pub proof_type: ProofType, pub circuit_version: String, pub hard_fork_name: String, pub status: TaskStatus, @@ -51,7 +51,7 @@ pub struct QueryTaskRequest { #[derive(Default)] pub struct QueryTaskResponse { pub task_id: String, - pub circuit_type: CircuitType, + pub proof_type: ProofType, pub circuit_version: String, pub hard_fork_name: String, pub status: TaskStatus, diff --git a/src/prover/types.rs b/src/prover/types.rs index 24fa157..8ee9a2a 100644 --- a/src/prover/types.rs +++ b/src/prover/types.rs @@ -4,17 +4,15 @@ use serde::{Deserialize, Deserializer, Serialize, Serializer}; pub enum CircuitType { #[default] Undefined, - Chunk, - Batch, - Bundle, + Halo2, + OpenVM, } impl CircuitType { pub fn from_u8(v: u8) -> Self { match v { - 1 => CircuitType::Chunk, - 2 => CircuitType::Batch, - 3 => CircuitType::Bundle, + 1 => CircuitType::Halo2, + 2 => CircuitType::OpenVM, _ => CircuitType::Undefined, } } @@ -22,9 +20,8 @@ impl CircuitType { pub fn to_u8(self) -> u8 { match self { CircuitType::Undefined => 0, - CircuitType::Chunk => 1, - CircuitType::Batch => 2, - CircuitType::Bundle => 3, + CircuitType::Halo2 => 1, + CircuitType::OpenVM => 2, } } } @@ -34,12 +31,7 @@ impl Serialize for CircuitType { where S: Serializer, { - match *self { - CircuitType::Undefined => serializer.serialize_u8(0), - CircuitType::Chunk => serializer.serialize_u8(1), - CircuitType::Batch => serializer.serialize_u8(2), - CircuitType::Bundle => serializer.serialize_u8(3), - } + serializer.serialize_u8(self.to_u8()) } } @@ -94,3 +86,51 @@ impl<'de> Deserialize<'de> for ProverProviderType { Ok(ProverProviderType::from_u8(v)) } } + +#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, Default)] +pub enum ProofType { + #[default] + Undefined, + Chunk, + Batch, + Bundle, +} + +impl ProofType { + pub fn from_u8(v: u8) -> Self { + match v { + 1 => ProofType::Chunk, + 2 => ProofType::Batch, + 3 => ProofType::Bundle, + _ => ProofType::Undefined, + } + } + + pub fn to_u8(self) -> u8 { + match self { + ProofType::Undefined => 0, + ProofType::Chunk => 1, + ProofType::Batch => 2, + ProofType::Bundle => 3, + } + } +} + +impl Serialize for ProofType { + fn serialize(&self, serializer: S) -> Result + where + S: Serializer, + { + serializer.serialize_u8(self.to_u8()) + } +} + +impl<'de> Deserialize<'de> for ProofType { + fn deserialize(deserializer: D) -> Result + where + D: Deserializer<'de>, + { + let v: u8 = u8::deserialize(deserializer)?; + Ok(ProofType::from_u8(v)) + } +} diff --git a/src/tracing_handler.rs b/src/tracing_handler.rs index 3522446..3676b54 100644 --- a/src/tracing_handler.rs +++ b/src/tracing_handler.rs @@ -2,13 +2,10 @@ use crate::config::L2GethConfig; use ethers_core::types::BlockNumber; use ethers_core::types::H256; use ethers_providers::{Http, Provider}; -use prover_darwin_v2::BlockTrace; -use std::cmp::Ordering; - pub type CommonHash = H256; pub struct L2gethClient { - provider: Provider, + pub provider: Provider, } impl L2gethClient { @@ -39,7 +36,7 @@ impl L2gethClient { Ok(trace) } - pub async fn get_sorted_traces_by_hashes( + pub async fn get_traces_by_hashes( &self, block_hashes: &[CommonHash], ) -> anyhow::Result> { @@ -54,44 +51,6 @@ impl L2gethClient { block_traces.push(trace); } - block_traces.sort_by(|a, b| { - if get_block_number_from_trace(a).is_none() { - Ordering::Less - } else if get_block_number_from_trace(b).is_none() { - Ordering::Greater - } else { - get_block_number_from_trace(a) - .unwrap() - .cmp(&get_block_number_from_trace(b).unwrap()) - } - }); - - let block_numbers: Vec = block_traces - .iter() - .map(|trace| get_block_number_from_trace(trace).unwrap_or(0)) - .collect(); - let mut i = 0; - while i < block_numbers.len() - 1 { - if block_numbers[i] + 1 != block_numbers[i + 1] { - log::error!( - "block numbers are not continuous, got {} and {}", - block_numbers[i], - block_numbers[i + 1] - ); - anyhow::bail!( - "block numbers are not continuous, got {} and {}", - block_numbers[i], - block_numbers[i + 1] - ) - } - i += 1; - } - Ok(block_traces) } } - -fn get_block_number_from_trace(block_trace: &String) -> Option { - let block_trace: BlockTrace = serde_json::from_str(block_trace).unwrap(); - block_trace.header.number.map(|n| n.as_u64()) -} From 030fc08f67238b632407ef2901eb1ff39b606a55 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=96mer=20Faruk=20Irmak?= Date: Wed, 5 Feb 2025 11:12:10 +0300 Subject: [PATCH 36/42] update sbv dep --- Cargo.lock | 14 +++++++------- Cargo.toml | 4 ++-- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index a30d6e5..e752cd9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -5441,7 +5441,7 @@ dependencies = [ [[package]] name = "sbv" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=omerfirmak-patch-1#1c22ad14522c1de299f56fd71c513a878006d698" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#316e6c77ed3477f5b800e5f794eace412de717e2" dependencies = [ "sbv-core", "sbv-helpers", @@ -5453,7 +5453,7 @@ dependencies = [ [[package]] name = "sbv-core" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=omerfirmak-patch-1#1c22ad14522c1de299f56fd71c513a878006d698" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#316e6c77ed3477f5b800e5f794eace412de717e2" dependencies = [ "reth-evm", "reth-evm-ethereum", @@ -5475,7 +5475,7 @@ dependencies = [ [[package]] name = "sbv-helpers" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=omerfirmak-patch-1#1c22ad14522c1de299f56fd71c513a878006d698" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#316e6c77ed3477f5b800e5f794eace412de717e2" dependencies = [ "revm", ] @@ -5483,7 +5483,7 @@ dependencies = [ [[package]] name = "sbv-kv" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=omerfirmak-patch-1#1c22ad14522c1de299f56fd71c513a878006d698" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#316e6c77ed3477f5b800e5f794eace412de717e2" dependencies = [ "auto_impl", "hashbrown 0.15.2", @@ -5493,7 +5493,7 @@ dependencies = [ [[package]] name = "sbv-primitives" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=omerfirmak-patch-1#1c22ad14522c1de299f56fd71c513a878006d698" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#316e6c77ed3477f5b800e5f794eace412de717e2" dependencies = [ "alloy-consensus", "alloy-eips", @@ -5521,7 +5521,7 @@ dependencies = [ [[package]] name = "sbv-trie" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=omerfirmak-patch-1#1c22ad14522c1de299f56fd71c513a878006d698" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#316e6c77ed3477f5b800e5f794eace412de717e2" dependencies = [ "alloy-rlp", "alloy-trie", @@ -5537,7 +5537,7 @@ dependencies = [ [[package]] name = "sbv-utils" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=omerfirmak-patch-1#1c22ad14522c1de299f56fd71c513a878006d698" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#316e6c77ed3477f5b800e5f794eace412de717e2" dependencies = [ "alloy", "anyhow", diff --git a/Cargo.toml b/Cargo.toml index 49944eb..fbefa87 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -26,10 +26,10 @@ tracing-subscriber = { version = "0.3.18", features = ["env-filter"] } axum = "0.6.0" dotenv = "0.15" rocksdb = "0.23.0" -sbv-utils = { git = "https://github.com/scroll-tech/stateless-block-verifier", branch = "omerfirmak-patch-1", features = [ +sbv-utils = { git = "https://github.com/scroll-tech/stateless-block-verifier", branch = "master", features = [ "scroll", ], optional = true } -sbv-primitives = { git = "https://github.com/scroll-tech/stateless-block-verifier", branch = "omerfirmak-patch-1", features = [ +sbv-primitives = { git = "https://github.com/scroll-tech/stateless-block-verifier", branch = "master", features = [ "scroll", ], optional = true } url = "2.5.4" From b8fc0393dc0b0bc749312a8be05787e09cef3231 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=96mer=20Faruk=20Irmak?= Date: Thu, 13 Feb 2025 11:01:52 +0300 Subject: [PATCH 37/42] up deps --- Cargo.toml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index fbefa87..55eff10 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -39,9 +39,9 @@ openvm = ["dep:sbv-utils", "dep:sbv-primitives"] [patch.crates-io] # patched add rkyv support & MSRV 1.77 -ruint = { git = "https://github.com/scroll-tech/uint.git", branch = "v1.12.3" } alloy-primitives = { git = "https://github.com/scroll-tech/alloy-core", branch = "v0.8.18" } -revm = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/v50" } -revm-interpreter = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/v50" } -revm-precompile = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/v50" } -revm-primitives = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/v50" } +revm = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/chore/v55-upgrade" } +revm-interpreter = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/chore/v55-upgrade" } +revm-precompile = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/chore/v55-upgrade" } +revm-primitives = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/chore/v55-upgrade" } +ruint = { git = "https://github.com/scroll-tech/uint.git", branch = "v1.12.3" } From 8b6cf3856e0d893d8c9f3b8b162dfe15a896c3b9 Mon Sep 17 00:00:00 2001 From: Zhang Zhuo Date: Thu, 13 Feb 2025 17:04:55 +0800 Subject: [PATCH 38/42] fix sbv branch --- Cargo.lock | 1167 +++++++++++++++++----------------------------------- Cargo.toml | 4 +- 2 files changed, 371 insertions(+), 800 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index e752cd9..38782a5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -24,7 +24,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" dependencies = [ "cfg-if", - "getrandom 0.2.15", "once_cell", "version_check", "zerocopy", @@ -47,9 +46,9 @@ checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] name = "alloy" -version = "0.8.3" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59febb24956a41c29bb5f450978fbe825bd6456b3f80586c8bd558dc882e7b6a" +checksum = "6d2cc5aeb8dfa1e451a49fac87bc4b86c5de40ebea153ed88e83eb92b8151e74" dependencies = [ "alloy-consensus", "alloy-core", @@ -77,9 +76,9 @@ dependencies = [ [[package]] name = "alloy-consensus" -version = "0.8.3" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e88e1edea70787c33e11197d3f32ae380f3db19e6e061e539a5bcf8184a6b326" +checksum = "69e32ef5c74bbeb1733c37f4ac7f866f8c8af208b7b4265e21af609dcac5bd5e" dependencies = [ "alloy-eips", "alloy-primitives", @@ -90,13 +89,14 @@ dependencies = [ "c-kzg", "derive_more", "serde", + "serde_with", ] [[package]] name = "alloy-consensus-any" -version = "0.8.3" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57b1bb53f40c0273cd1975573cd457b39213e68584e36d1401d25fd0398a1d65" +checksum = "0fa13b7b1e1e3fedc42f0728103bfa3b4d566d3d42b606db449504d88dbdbdcf" dependencies = [ "alloy-consensus", "alloy-eips", @@ -115,6 +115,19 @@ dependencies = [ "alloy-primitives", ] +[[package]] +name = "alloy-eip2124" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "675264c957689f0fd75f5993a73123c2cc3b5c235a38f5b9037fe6c826bfb2c0" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "crc", + "serde", + "thiserror 2.0.11", +] + [[package]] name = "alloy-eip2930" version = "0.1.0" @@ -128,28 +141,31 @@ dependencies = [ [[package]] name = "alloy-eip7702" -version = "0.4.2" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c986539255fb839d1533c128e190e557e52ff652c9ef62939e233a81dd93f7e" +checksum = "cabf647eb4650c91a9d38cb6f972bb320009e7e9d61765fb688a86f1563b33e8" dependencies = [ "alloy-primitives", "alloy-rlp", "derive_more", "k256", "serde", + "serde_with", ] [[package]] name = "alloy-eips" -version = "0.8.3" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f9fadfe089e9ccc0650473f2d4ef0a28bc015bbca5631d9f0f09e49b557fdb3" +checksum = "5591581ca2ab0b3e7226a4047f9a1bfcf431da1d0cce3752fda609fea3c27e37" dependencies = [ + "alloy-eip2124", "alloy-eip2930", "alloy-eip7702", "alloy-primitives", "alloy-rlp", "alloy-serde", + "auto_impl", "c-kzg", "derive_more", "once_cell", @@ -159,10 +175,11 @@ dependencies = [ [[package]] name = "alloy-genesis" -version = "0.8.3" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b2a4cf7b70f3495788e74ce1c765260ffe38820a2a774ff4aacb62e31ea73f9" +checksum = "0cded3a2d4bd7173f696458c5d4c98c18a628dfcc9f194385e80a486e412e2e0" dependencies = [ + "alloy-eips", "alloy-primitives", "alloy-serde", "alloy-trie", @@ -183,9 +200,9 @@ dependencies = [ [[package]] name = "alloy-json-rpc" -version = "0.8.3" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e29040b9d5fe2fb70415531882685b64f8efd08dfbd6cc907120650504821105" +checksum = "762414662d793d7aaa36ee3af6928b6be23227df1681ce9c039f6f11daadef64" dependencies = [ "alloy-primitives", "alloy-sol-types", @@ -197,9 +214,9 @@ dependencies = [ [[package]] name = "alloy-network" -version = "0.8.3" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "510cc00b318db0dfccfdd2d032411cfae64fc144aef9679409e014145d3dacc4" +checksum = "8be03f2ebc00cf88bd06d3c6caf387dceaa9c7e6b268216779fa68a9bf8ab4e6" dependencies = [ "alloy-consensus", "alloy-consensus-any", @@ -222,9 +239,9 @@ dependencies = [ [[package]] name = "alloy-network-primitives" -version = "0.8.3" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9081c099e798b8a2bba2145eb82a9a146f01fc7a35e9ab6e7b43305051f97550" +checksum = "3a00ce618ae2f78369918be0c20f620336381502c83b6ed62c2f7b2db27698b0" dependencies = [ "alloy-consensus", "alloy-eips", @@ -244,7 +261,6 @@ dependencies = [ "const-hex", "derive_more", "foldhash", - "getrandom 0.2.15", "hashbrown 0.15.2", "indexmap 2.7.1", "itoa", @@ -253,7 +269,6 @@ dependencies = [ "paste", "proptest", "rand", - "rayon", "rkyv", "ruint", "rustc-hash 2.1.0", @@ -264,9 +279,9 @@ dependencies = [ [[package]] name = "alloy-provider" -version = "0.8.3" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc2dfaddd9a30aa870a78a4e1316e3e115ec1e12e552cbc881310456b85c1f24" +checksum = "cbe0a2acff0c4bd1669c71251ce10fc455cbffa1b4d0a817d5ea4ba7e5bb3db7" dependencies = [ "alloy-chains", "alloy-consensus", @@ -277,6 +292,7 @@ dependencies = [ "alloy-primitives", "alloy-rpc-client", "alloy-rpc-types-eth", + "alloy-sol-types", "alloy-transport", "alloy-transport-http", "async-stream", @@ -289,7 +305,6 @@ dependencies = [ "parking_lot 0.12.3", "pin-project", "reqwest 0.12.12", - "schnellru", "serde", "serde_json", "thiserror 2.0.11", @@ -323,9 +338,9 @@ dependencies = [ [[package]] name = "alloy-rpc-client" -version = "0.8.3" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "531137b283547d5b9a5cafc96b006c64ef76810c681d606f28be9781955293b6" +checksum = "b37cc3c7883dc41be1b01460127ad7930466d0a4bb6ba15a02ee34d2745e2d7c" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -346,9 +361,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-any" -version = "0.8.3" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed98e1af55a7d856bfa385f30f63d8d56be2513593655c904a8f4a7ec963aa3e" +checksum = "318ae46dd12456df42527c3b94c1ae9001e1ceb707f7afe2c7807ac4e49ebad9" dependencies = [ "alloy-consensus-any", "alloy-rpc-types-eth", @@ -357,9 +372,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-engine" -version = "0.8.3" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03bd16fa4959255ebf4a7702df08f325e5631df5cdca07c8a8e58bdc10fe02e3" +checksum = "e83dde9fcf1ccb9b815cc0c89bba26bbbbaae5150a53ae624ed0fc63cb3676c1" dependencies = [ "alloy-consensus", "alloy-eips", @@ -367,15 +382,14 @@ dependencies = [ "alloy-rlp", "alloy-serde", "derive_more", - "serde", "strum 0.26.3", ] [[package]] name = "alloy-rpc-types-eth" -version = "0.8.3" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8737d7a6e37ca7bba9c23e9495c6534caec6760eb24abc9d5ffbaaba147818e1" +checksum = "8b4dbee4d82f8a22dde18c28257bed759afeae7ba73da4a1479a039fd1445d04" dependencies = [ "alloy-consensus", "alloy-consensus-any", @@ -385,17 +399,17 @@ dependencies = [ "alloy-rlp", "alloy-serde", "alloy-sol-types", - "derive_more", "itertools 0.13.0", "serde", "serde_json", + "thiserror 2.0.11", ] [[package]] name = "alloy-serde" -version = "0.8.3" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5851bf8d5ad33014bd0c45153c603303e730acc8a209450a7ae6b4a12c2789e2" +checksum = "8732058f5ca28c1d53d241e8504620b997ef670315d7c8afab856b3e3b80d945" dependencies = [ "alloy-primitives", "serde", @@ -404,13 +418,14 @@ dependencies = [ [[package]] name = "alloy-signer" -version = "0.8.3" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e10ca565da6500cca015ba35ee424d59798f2e1b85bc0dd8f81dafd401f029a" +checksum = "f96b3526fdd779a4bd0f37319cfb4172db52a7ac24cdbb8804b72091c18e1701" dependencies = [ "alloy-primitives", "async-trait", "auto_impl", + "either", "elliptic-curve", "k256", "thiserror 2.0.11", @@ -488,13 +503,12 @@ dependencies = [ [[package]] name = "alloy-transport" -version = "0.8.3" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "538a04a37221469cac0ce231b737fd174de2fdfcdd843bdd068cb39ed3e066ad" +checksum = "5a8d762eadce3e9b65eac09879430c6f4fce3736cac3cac123f9b1bf435ddd13" dependencies = [ "alloy-json-rpc", "base64 0.22.1", - "futures-util", "futures-utils-wasm", "serde", "serde_json", @@ -508,9 +522,9 @@ dependencies = [ [[package]] name = "alloy-transport-http" -version = "0.8.3" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ed40eb1e1265b2911512f6aa1dcece9702d078f5a646730c45e39e2be00ac1c" +checksum = "20819c4cb978fb39ce6ac31991ba90f386d595f922f42ef888b4a18be190713e" dependencies = [ "alloy-json-rpc", "alloy-transport", @@ -608,6 +622,15 @@ version = "1.0.95" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34ac096ce696dc2fcabef30516bb13c0a68a11d30131d3df6f04711467681b04" +[[package]] +name = "arbitrary" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223" +dependencies = [ + "derive_arbitrary", +] + [[package]] name = "ark-ff" version = "0.3.0" @@ -954,24 +977,6 @@ dependencies = [ "syn 2.0.96", ] -[[package]] -name = "bindgen" -version = "0.70.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f" -dependencies = [ - "bitflags 2.8.0", - "cexpr", - "clang-sys", - "itertools 0.13.0", - "proc-macro2", - "quote", - "regex", - "rustc-hash 1.1.0", - "shlex", - "syn 2.0.96", -] - [[package]] name = "bit-set" version = "0.8.0" @@ -1036,32 +1041,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "bn254" -version = "0.1.0" -source = "git+https://github.com/scroll-tech/bn254.git?branch=master#81e1dcc92ee9a2798b13b84b24de182e9c42256e" -dependencies = [ - "ff", - "getrandom 0.2.15", - "rand", - "rand_core", - "sp1-intrinsics", - "subtle", -] - -[[package]] -name = "bn254" -version = "0.1.0" -source = "git+https://github.com/scroll-tech/bn254#81e1dcc92ee9a2798b13b84b24de182e9c42256e" -dependencies = [ - "ff", - "getrandom 0.2.15", - "rand", - "rand_core", - "sp1-intrinsics", - "subtle", -] - [[package]] name = "bumpalo" version = "3.17.0" @@ -1492,6 +1471,17 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "derive_arbitrary" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30542c1ad912e0e3d22a1935c290e12e8a29d704a420177a31faad4a601a0800" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.96", +] + [[package]] name = "derive_more" version = "1.0.0" @@ -1808,23 +1798,10 @@ version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" dependencies = [ - "bitvec", "rand_core", "subtle", ] -[[package]] -name = "filetime" -version = "0.2.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35c0522e981e68cbfa8c3f978441a5f34b30b96e146b33cd3359176b50fe8586" -dependencies = [ - "cfg-if", - "libc", - "libredox", - "windows-sys 0.59.0", -] - [[package]] name = "fixed-hash" version = "0.8.0" @@ -1883,15 +1860,6 @@ dependencies = [ "percent-encoding", ] -[[package]] -name = "fsevent-sys" -version = "4.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76ee7a02da4d231650c7cea31349b889be2f45ddb3ef3032d2ec8185f6313fd2" -dependencies = [ - "libc", -] - [[package]] name = "funty" version = "2.0.0" @@ -2127,12 +2095,6 @@ version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" -[[package]] -name = "hashbrown" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" - [[package]] name = "hashbrown" version = "0.14.5" @@ -2607,7 +2569,6 @@ checksum = "8c9c992b02b5b4c94ea26e32fe5bccb7aa7d9f390ab5c1221ff895bc7ea8b652" dependencies = [ "equivalent", "hashbrown 0.15.2", - "rayon", "serde", ] @@ -2624,26 +2585,6 @@ dependencies = [ "web-time", ] -[[package]] -name = "inotify" -version = "0.9.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8069d3ec154eb856955c1c0fbffefbf5f3c40a104ec912d4797314c1801abff" -dependencies = [ - "bitflags 1.3.2", - "inotify-sys", - "libc", -] - -[[package]] -name = "inotify-sys" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb" -dependencies = [ - "libc", -] - [[package]] name = "instant" version = "0.1.13" @@ -2763,26 +2704,6 @@ dependencies = [ "sha3-asm", ] -[[package]] -name = "kqueue" -version = "1.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7447f1ca1b7b563588a205fe93dea8df60fd981423a768bc1c0ded35ed147d0c" -dependencies = [ - "kqueue-sys", - "libc", -] - -[[package]] -name = "kqueue-sys" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed9625ffda8729b85e45cf04090035ac368927b8cebc34898e7c120f52e4838b" -dependencies = [ - "bitflags 1.3.2", - "libc", -] - [[package]] name = "lazy_static" version = "1.5.0" @@ -2814,24 +2735,13 @@ dependencies = [ "windows-targets 0.52.6", ] -[[package]] -name = "libredox" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" -dependencies = [ - "bitflags 2.8.0", - "libc", - "redox_syscall 0.5.8", -] - [[package]] name = "librocksdb-sys" version = "0.17.1+9.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2b7869a512ae9982f4d46ba482c2a304f1efd80c6412a3d4bf57bb79a619679f" dependencies = [ - "bindgen 0.69.5", + "bindgen", "bzip2-sys", "cc", "libc", @@ -2881,9 +2791,9 @@ checksum = "04cbf5b083de1c7e0222a7a51dbfdba1cbe1c6ab0b15e29fff3f6c077fd9cd9f" [[package]] name = "lru" -version = "0.12.5" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38" +checksum = "227748d55f2f0ab4735d87fd623798cb6b664512fe979705f829c9f81c934465" dependencies = [ "hashbrown 0.15.2", ] @@ -2977,18 +2887,6 @@ dependencies = [ "adler2", ] -[[package]] -name = "mio" -version = "0.8.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" -dependencies = [ - "libc", - "log", - "wasi 0.11.0+wasi-snapshot-preview1", - "windows-sys 0.48.0", -] - [[package]] name = "mio" version = "1.0.3" @@ -3068,24 +2966,6 @@ dependencies = [ "minimal-lexical", ] -[[package]] -name = "notify" -version = "6.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6205bd8bb1e454ad2e27422015fb5e4f2bcc7e08fa8f27058670d208324a4d2d" -dependencies = [ - "bitflags 2.8.0", - "filetime", - "fsevent-sys", - "inotify", - "kqueue", - "libc", - "log", - "mio 0.8.11", - "walkdir", - "windows-sys 0.48.0", -] - [[package]] name = "ntapi" version = "0.4.1" @@ -3275,9 +3155,9 @@ dependencies = [ [[package]] name = "op-alloy-consensus" -version = "0.8.5" +version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c698f80ee53e56d1b60a97e9d90ad09788b516c964c9c97fb5927860b812ef0d" +checksum = "23f7ff02e5f3ba62c8dd5d9a630c818f50147bca7b0d78e89de59ed46b5d02e1" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3286,6 +3166,7 @@ dependencies = [ "alloy-serde", "derive_more", "serde", + "serde_with", "thiserror 2.0.11", ] @@ -3376,16 +3257,6 @@ dependencies = [ "sha2", ] -[[package]] -name = "page_size" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30d5b2194ed13191c1999ae0704b7839fb18384fa22e49b57eeaa97d79ce40da" -dependencies = [ - "libc", - "winapi", -] - [[package]] name = "parity-scale-codec" version = "3.6.12" @@ -3548,25 +3419,6 @@ version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6" -[[package]] -name = "poseidon-bn254" -version = "0.1.0" -source = "git+https://github.com/scroll-tech/poseidon-bn254?branch=master#254baa0e3e85c0975c16fe6f33042b1fa9ae0a44" -dependencies = [ - "bn254 0.1.0 (git+https://github.com/scroll-tech/bn254.git?branch=master)", - "itertools 0.13.0", - "sp1-intrinsics", -] - -[[package]] -name = "poseidon-bn254" -version = "0.1.0" -source = "git+https://github.com/scroll-tech/poseidon-bn254?rev=526a64a#526a64a81419bcab6bd8280a8a3f9808189e0373" -dependencies = [ - "bn254 0.1.0 (git+https://github.com/scroll-tech/bn254)", - "itertools 0.13.0", -] - [[package]] name = "powerfmt" version = "0.2.0" @@ -4037,72 +3889,29 @@ dependencies = [ "wasm-timer", ] -[[package]] -name = "reth-blockchain-tree-api" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "reth-consensus", - "reth-execution-errors", - "reth-primitives", - "reth-primitives-traits", - "reth-storage-errors", - "thiserror 2.0.11", -] - -[[package]] -name = "reth-chain-state" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "derive_more", - "metrics", - "parking_lot 0.12.3", - "pin-project", - "reth-chainspec", - "reth-errors", - "reth-execution-types", - "reth-metrics", - "reth-primitives", - "reth-primitives-traits", - "reth-scroll-revm", - "reth-storage-api", - "reth-trie", - "tokio", - "tokio-stream", - "tracing", -] - [[package]] name = "reth-chainspec" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-chains", "alloy-consensus", "alloy-eips", "alloy-genesis", "alloy-primitives", + "alloy-trie", "auto_impl", "derive_more", - "once_cell", "reth-ethereum-forks", "reth-network-peers", "reth-primitives-traits", - "reth-trie-common", "serde_json", ] [[package]] name = "reth-codecs" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4118,8 +3927,8 @@ dependencies = [ [[package]] name = "reth-codecs-derive" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "convert_case", "proc-macro2", @@ -4129,49 +3938,41 @@ dependencies = [ [[package]] name = "reth-consensus" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "auto_impl", "derive_more", - "reth-primitives", "reth-primitives-traits", ] [[package]] name = "reth-consensus-common" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "reth-chainspec", "reth-consensus", - "reth-primitives", "reth-primitives-traits", - "revm-primitives", ] [[package]] name = "reth-db" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-consensus", "alloy-primitives", "bytes", "derive_more", - "eyre", - "metrics", - "page_size", "reth-db-api", "reth-fs-util", - "reth-libmdbx", - "reth-metrics", "reth-nippy-jar", "reth-primitives", "reth-primitives-traits", @@ -4180,17 +3981,15 @@ dependencies = [ "reth-storage-errors", "reth-tracing", "reth-trie-common", - "rustc-hash 2.1.0", "serde", - "strum 0.26.3", "sysinfo", "thiserror 2.0.11", ] [[package]] name = "reth-db-api" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-consensus", "alloy-genesis", @@ -4214,8 +4013,8 @@ dependencies = [ [[package]] name = "reth-db-models" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-eips", "alloy-primitives", @@ -4226,64 +4025,10 @@ dependencies = [ "serde", ] -[[package]] -name = "reth-engine-primitives" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" -dependencies = [ - "alloy-consensus", - "alloy-primitives", - "alloy-rpc-types-engine", - "futures", - "reth-errors", - "reth-execution-types", - "reth-payload-builder-primitives", - "reth-payload-primitives", - "reth-primitives", - "reth-primitives-traits", - "reth-trie", - "serde", - "thiserror 2.0.11", - "tokio", -] - -[[package]] -name = "reth-errors" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" -dependencies = [ - "reth-blockchain-tree-api", - "reth-consensus", - "reth-execution-errors", - "reth-fs-util", - "reth-storage-errors", - "thiserror 2.0.11", -] - -[[package]] -name = "reth-eth-wire-types" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" -dependencies = [ - "alloy-chains", - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "bytes", - "derive_more", - "reth-chainspec", - "reth-codecs-derive", - "reth-ethereum-forks", - "reth-primitives", - "reth-primitives-traits", - "thiserror 2.0.11", -] - [[package]] name = "reth-ethereum-consensus" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4298,25 +4043,43 @@ dependencies = [ [[package]] name = "reth-ethereum-forks" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-chains", + "alloy-eip2124", "alloy-primitives", - "alloy-rlp", "auto_impl", - "crc", "dyn-clone", "once_cell", "rustc-hash 2.1.0", "serde", - "thiserror 2.0.11", +] + +[[package]] +name = "reth-ethereum-primitives" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "alloy-serde", + "derive_more", + "modular-bitfield", + "reth-codecs", + "reth-primitives-traits", + "reth-zstd-compressors", + "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "secp256k1", + "serde", ] [[package]] name = "reth-evm" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4332,54 +4095,51 @@ dependencies = [ "reth-metrics", "reth-primitives", "reth-primitives-traits", - "reth-prune-types", "reth-revm", - "reth-scroll-execution", - "reth-scroll-revm", "reth-storage-errors", - "revm-primitives", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", ] [[package]] name = "reth-evm-ethereum" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-sol-types", + "derive_more", "reth-chainspec", "reth-consensus", "reth-ethereum-consensus", "reth-ethereum-forks", "reth-evm", "reth-primitives", + "reth-primitives-traits", "reth-revm", - "reth-scroll-execution", - "revm-primitives", + "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", ] [[package]] name = "reth-execution-errors" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-eips", "alloy-primitives", "alloy-rlp", "nybbles", "reth-consensus", - "reth-prune-types", "reth-storage-errors", - "revm-primitives", "thiserror 2.0.11", ] [[package]] name = "reth-execution-types" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4387,91 +4147,36 @@ dependencies = [ "reth-execution-errors", "reth-primitives", "reth-primitives-traits", - "reth-scroll-revm", "reth-trie", + "reth-trie-common", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", "serde", "serde_with", ] [[package]] name = "reth-fs-util" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "serde", "serde_json", "thiserror 2.0.11", ] -[[package]] -name = "reth-libmdbx" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" -dependencies = [ - "bitflags 2.8.0", - "byteorder", - "dashmap", - "derive_more", - "indexmap 2.7.1", - "parking_lot 0.12.3", - "reth-mdbx-sys", - "smallvec", - "thiserror 2.0.11", - "tracing", -] - -[[package]] -name = "reth-mdbx-sys" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" -dependencies = [ - "bindgen 0.70.1", - "cc", -] - [[package]] name = "reth-metrics" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "metrics", "metrics-derive", ] -[[package]] -name = "reth-net-banlist" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" -dependencies = [ - "alloy-primitives", -] - -[[package]] -name = "reth-network-p2p" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "auto_impl", - "derive_more", - "futures", - "reth-consensus", - "reth-eth-wire-types", - "reth-network-peers", - "reth-network-types", - "reth-primitives", - "reth-primitives-traits", - "reth-storage-errors", - "tokio", - "tracing", -] - [[package]] name = "reth-network-peers" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -4481,22 +4186,10 @@ dependencies = [ "url", ] -[[package]] -name = "reth-network-types" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" -dependencies = [ - "reth-ethereum-forks", - "reth-net-banlist", - "reth-network-peers", - "serde_json", - "tracing", -] - [[package]] name = "reth-nippy-jar" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "anyhow", "bincode", @@ -4510,82 +4203,23 @@ dependencies = [ "zstd", ] -[[package]] -name = "reth-node-types" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" -dependencies = [ - "reth-chainspec", - "reth-db-api", - "reth-engine-primitives", - "reth-primitives-traits", - "reth-trie-db", -] - -[[package]] -name = "reth-payload-builder-primitives" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" -dependencies = [ - "alloy-rpc-types-engine", - "async-trait", - "pin-project", - "reth-payload-primitives", - "tokio", - "tokio-stream", - "tracing", -] - -[[package]] -name = "reth-payload-primitives" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" -dependencies = [ - "alloy-eips", - "alloy-primitives", - "alloy-rpc-types-engine", - "reth-chain-state", - "reth-chainspec", - "reth-errors", - "reth-primitives", - "revm-primitives", - "serde", - "thiserror 2.0.11", - "tokio", -] - [[package]] name = "reth-primitives" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "alloy-serde", - "alloy-trie", - "bytes", - "derive_more", - "modular-bitfield", "once_cell", - "rayon", - "reth-codecs", "reth-ethereum-forks", + "reth-ethereum-primitives", "reth-primitives-traits", - "reth-scroll-primitives", - "reth-scroll-revm", "reth-static-file-types", - "reth-zstd-compressors", - "secp256k1", - "serde", - "serde_with", ] [[package]] name = "reth-primitives-traits" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4599,63 +4233,21 @@ dependencies = [ "derive_more", "k256", "modular-bitfield", + "once_cell", "op-alloy-consensus", "reth-codecs", - "reth-scroll-primitives", - "reth-scroll-revm", + "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "scroll-alloy-consensus", "secp256k1", "serde", "serde_with", -] - -[[package]] -name = "reth-provider" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rpc-types-engine", - "auto_impl", - "dashmap", - "itertools 0.13.0", - "metrics", - "notify", - "parking_lot 0.12.3", - "rayon", - "reth-blockchain-tree-api", - "reth-chain-state", - "reth-chainspec", - "reth-codecs", - "reth-db", - "reth-db-api", - "reth-errors", - "reth-evm", - "reth-execution-types", - "reth-fs-util", - "reth-metrics", - "reth-network-p2p", - "reth-nippy-jar", - "reth-node-types", - "reth-primitives", - "reth-primitives-traits", - "reth-prune-types", - "reth-scroll-revm", - "reth-stages-types", - "reth-storage-api", - "reth-storage-errors", - "reth-trie", - "reth-trie-db", - "strum 0.26.3", - "tokio", - "tracing", + "thiserror 2.0.11", ] [[package]] name = "reth-prune-types" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-primitives", "derive_more", @@ -4667,26 +4259,23 @@ dependencies = [ [[package]] name = "reth-revm" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-eips", "alloy-primitives", - "reth-execution-errors", - "reth-primitives", + "reth-ethereum-primitives", "reth-primitives-traits", - "reth-prune-types", - "reth-scroll-primitives", - "reth-scroll-revm", "reth-storage-api", "reth-storage-errors", "reth-trie", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", ] [[package]] name = "reth-scroll-chainspec" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-chains", "alloy-consensus", @@ -4701,27 +4290,26 @@ dependencies = [ "reth-network-peers", "reth-primitives-traits", "reth-scroll-forks", - "reth-scroll-state-commitment", + "reth-trie-common", "serde", "serde_json", ] [[package]] name = "reth-scroll-consensus" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ - "reth-scroll-revm", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", ] [[package]] name = "reth-scroll-evm" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-consensus", "alloy-eips", - "auto_impl", "derive_more", "reth-chainspec", "reth-consensus", @@ -4732,26 +4320,19 @@ dependencies = [ "reth-revm", "reth-scroll-chainspec", "reth-scroll-consensus", - "reth-scroll-execution", "reth-scroll-forks", - "reth-scroll-revm", + "reth-scroll-primitives", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "scroll-alloy-consensus", "thiserror 2.0.11", "tracing", ] -[[package]] -name = "reth-scroll-execution" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" -dependencies = [ - "reth-revm", - "reth-scroll-storage", -] - [[package]] name = "reth-scroll-forks" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-chains", "alloy-primitives", @@ -4762,88 +4343,33 @@ dependencies = [ [[package]] name = "reth-scroll-primitives" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rlp", - "alloy-serde", + "arbitrary", "bytes", + "derive_more", "modular-bitfield", - "poseidon-bn254 0.1.0 (git+https://github.com/scroll-tech/poseidon-bn254?rev=526a64a)", + "once_cell", + "proptest", + "rand", "reth-codecs", - "reth-codecs-derive", - "serde", -] - -[[package]] -name = "reth-scroll-revm" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" -dependencies = [ - "reth-scroll-primitives", - "revm", - "serde", -] - -[[package]] -name = "reth-scroll-state-commitment" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" -dependencies = [ - "alloy-consensus", - "alloy-genesis", - "alloy-primitives", - "alloy-rlp", - "itertools 0.13.0", - "metrics", - "poseidon-bn254 0.1.0 (git+https://github.com/scroll-tech/poseidon-bn254?rev=526a64a)", - "rayon", - "reth-db", - "reth-execution-errors", - "reth-metrics", - "reth-primitives", "reth-primitives-traits", - "reth-scroll-execution", - "reth-scroll-primitives", - "reth-scroll-trie", - "reth-storage-api", - "reth-trie", - "reth-trie-db", - "reth-trie-parallel", - "tracing", -] - -[[package]] -name = "reth-scroll-storage" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" -dependencies = [ - "alloy-primitives", - "reth-revm", - "reth-scroll-primitives", - "reth-scroll-revm", - "reth-storage-errors", -] - -[[package]] -name = "reth-scroll-trie" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" -dependencies = [ - "alloy-primitives", - "alloy-trie", - "reth-scroll-primitives", - "reth-trie", - "tracing", + "reth-zstd-compressors", + "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "scroll-alloy-consensus", + "secp256k1", + "serde", ] [[package]] name = "reth-stages-types" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-primitives", "bytes", @@ -4855,8 +4381,8 @@ dependencies = [ [[package]] name = "reth-static-file-types" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-primitives", "derive_more", @@ -4866,8 +4392,8 @@ dependencies = [ [[package]] name = "reth-storage-api" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4882,31 +4408,32 @@ dependencies = [ "reth-primitives", "reth-primitives-traits", "reth-prune-types", - "reth-scroll-revm", "reth-stages-types", "reth-storage-errors", "reth-trie", "reth-trie-db", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", ] [[package]] name = "reth-storage-errors" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-eips", "alloy-primitives", "alloy-rlp", "derive_more", - "reth-fs-util", "reth-primitives-traits", + "reth-prune-types", "reth-static-file-types", + "thiserror 2.0.11", ] [[package]] name = "reth-tracing" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "clap", "eyre", @@ -4920,8 +4447,8 @@ dependencies = [ [[package]] name = "reth-trie" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4930,88 +4457,61 @@ dependencies = [ "alloy-trie", "auto_impl", "itertools 0.13.0", - "metrics", - "rayon", "reth-execution-errors", - "reth-metrics", - "reth-primitives", "reth-primitives-traits", - "reth-scroll-revm", "reth-stages-types", "reth-storage-errors", "reth-trie-common", "reth-trie-sparse", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", "tracing", ] [[package]] name = "reth-trie-common" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-consensus", "alloy-primitives", "alloy-rlp", "alloy-rpc-types-eth", + "alloy-serde", "alloy-trie", "bytes", "derive_more", "itertools 0.13.0", "nybbles", + "rayon", "reth-codecs", "reth-primitives-traits", - "reth-scroll-primitives", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", "serde", - "smallvec", + "serde_with", ] [[package]] name = "reth-trie-db" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-primitives", "alloy-rlp", "derive_more", - "metrics", "reth-db", "reth-db-api", "reth-execution-errors", - "reth-metrics", - "reth-primitives", - "reth-scroll-revm", + "reth-primitives-traits", "reth-storage-errors", "reth-trie", - "tracing", -] - -[[package]] -name = "reth-trie-parallel" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" -dependencies = [ - "alloy-primitives", - "alloy-rlp", - "derive_more", - "itertools 0.13.0", - "metrics", - "rayon", - "reth-db", - "reth-execution-errors", - "reth-metrics", - "reth-primitives", - "reth-provider", - "reth-trie", - "reth-trie-common", - "reth-trie-db", - "thiserror 2.0.11", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", "tracing", ] [[package]] name = "reth-trie-sparse" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -5025,8 +4525,8 @@ dependencies = [ [[package]] name = "reth-zstd-compressors" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ "zstd", ] @@ -5044,32 +4544,54 @@ dependencies = [ [[package]] name = "revm" -version = "18.0.0" -source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv50#fac3706fafc5271d98e2697fc17e971a3e13fd76" +version = "19.4.0" +source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade#9155313825bcc38d663bdc840f5231bac8801d93" dependencies = [ "auto_impl", "cfg-if", "dyn-clone", - "revm-interpreter", - "revm-precompile", + "revm-interpreter 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm-precompile 16.0.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", "serde", "serde_json", ] [[package]] -name = "revm-interpreter" -version = "14.0.0" -source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv50#fac3706fafc5271d98e2697fc17e971a3e13fd76" +name = "revm" +version = "19.4.0" +source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55#6accb0ba959747d717443954a8bd988efa8f98fc" dependencies = [ + "auto_impl", "cfg-if", - "revm-primitives", + "dyn-clone", + "revm-interpreter 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", + "revm-precompile 16.0.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", + "serde", + "serde_json", +] + +[[package]] +name = "revm-interpreter" +version = "15.1.0" +source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade#9155313825bcc38d663bdc840f5231bac8801d93" +dependencies = [ + "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "serde", +] + +[[package]] +name = "revm-interpreter" +version = "15.1.0" +source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55#6accb0ba959747d717443954a8bd988efa8f98fc" +dependencies = [ + "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", "serde", ] [[package]] name = "revm-precompile" -version = "15.0.0" -source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv50#fac3706fafc5271d98e2697fc17e971a3e13fd76" +version = "16.0.0" +source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade#9155313825bcc38d663bdc840f5231bac8801d93" dependencies = [ "aurora-engine-modexp", "c-kzg", @@ -5077,7 +4599,25 @@ dependencies = [ "k256", "once_cell", "p256", - "revm-primitives", + "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "ripemd", + "secp256k1", + "sha2", + "substrate-bn", +] + +[[package]] +name = "revm-precompile" +version = "16.0.0" +source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55#6accb0ba959747d717443954a8bd988efa8f98fc" +dependencies = [ + "aurora-engine-modexp", + "c-kzg", + "cfg-if", + "k256", + "once_cell", + "p256", + "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", "ripemd", "secp256k1", "sha2", @@ -5086,8 +4626,8 @@ dependencies = [ [[package]] name = "revm-primitives" -version = "14.0.0" -source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv50#fac3706fafc5271d98e2697fc17e971a3e13fd76" +version = "15.1.0" +source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade#9155313825bcc38d663bdc840f5231bac8801d93" dependencies = [ "alloy-eip2930", "alloy-eip7702", @@ -5100,7 +4640,24 @@ dependencies = [ "dyn-clone", "enumn", "hex", - "poseidon-bn254 0.1.0 (git+https://github.com/scroll-tech/poseidon-bn254?branch=master)", + "serde", +] + +[[package]] +name = "revm-primitives" +version = "15.1.0" +source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55#6accb0ba959747d717443954a8bd988efa8f98fc" +dependencies = [ + "alloy-eip2930", + "alloy-eip7702", + "alloy-primitives", + "auto_impl", + "bitflags 2.8.0", + "bitvec", + "cfg-if", + "dyn-clone", + "enumn", + "hex", "serde", ] @@ -5280,9 +4837,6 @@ name = "rustc-hash" version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c7fb8039b3032c191086b10f11f319a6e99e1e82889c5cc6046f515c9db1d497" -dependencies = [ - "rand", -] [[package]] name = "rustc-hex" @@ -5429,19 +4983,10 @@ version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6ea1a2d0a644769cc99faa24c3ad26b379b786fe7c36fd3c546254801650e6dd" -[[package]] -name = "same-file" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" -dependencies = [ - "winapi-util", -] - [[package]] name = "sbv" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#316e6c77ed3477f5b800e5f794eace412de717e2" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=chore%2Frevm-v55-upgrade#b091fa42885d352f1b04fc24c34de948e727d3ec" dependencies = [ "sbv-core", "sbv-helpers", @@ -5453,15 +4998,14 @@ dependencies = [ [[package]] name = "sbv-core" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#316e6c77ed3477f5b800e5f794eace412de717e2" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=chore%2Frevm-v55-upgrade#b091fa42885d352f1b04fc24c34de948e727d3ec" dependencies = [ "reth-evm", "reth-evm-ethereum", "reth-execution-types", "reth-scroll-evm", - "reth-scroll-storage", "reth-storage-errors", - "revm", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", "sbv-helpers", "sbv-kv", "sbv-primitives", @@ -5475,15 +5019,15 @@ dependencies = [ [[package]] name = "sbv-helpers" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#316e6c77ed3477f5b800e5f794eace412de717e2" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=chore%2Frevm-v55-upgrade#b091fa42885d352f1b04fc24c34de948e727d3ec" dependencies = [ - "revm", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", ] [[package]] name = "sbv-kv" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#316e6c77ed3477f5b800e5f794eace412de717e2" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=chore%2Frevm-v55-upgrade#b091fa42885d352f1b04fc24c34de948e727d3ec" dependencies = [ "auto_impl", "hashbrown 0.15.2", @@ -5493,7 +5037,7 @@ dependencies = [ [[package]] name = "sbv-primitives" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#316e6c77ed3477f5b800e5f794eace412de717e2" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=chore%2Frevm-v55-upgrade#b091fa42885d352f1b04fc24c34de948e727d3ec" dependencies = [ "alloy-consensus", "alloy-eips", @@ -5507,13 +5051,16 @@ dependencies = [ "itertools 0.14.0", "reth-chainspec", "reth-primitives", + "reth-primitives-traits", "reth-scroll-chainspec", "reth-scroll-primitives", - "reth-scroll-revm", - "revm", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", "rkyv", "sbv-helpers", "sbv-kv", + "scroll-alloy-consensus", + "scroll-alloy-network", + "scroll-alloy-rpc-types", "serde", "tiny-keccak", ] @@ -5521,13 +5068,13 @@ dependencies = [ [[package]] name = "sbv-trie" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#316e6c77ed3477f5b800e5f794eace412de717e2" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=chore%2Frevm-v55-upgrade#b091fa42885d352f1b04fc24c34de948e727d3ec" dependencies = [ "alloy-rlp", "alloy-trie", "reth-trie", "reth-trie-sparse", - "revm", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", "sbv-helpers", "sbv-kv", "sbv-primitives", @@ -5537,7 +5084,7 @@ dependencies = [ [[package]] name = "sbv-utils" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=master#316e6c77ed3477f5b800e5f794eace412de717e2" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=chore%2Frevm-v55-upgrade#b091fa42885d352f1b04fc24c34de948e727d3ec" dependencies = [ "alloy", "anyhow", @@ -5587,21 +5134,59 @@ dependencies = [ ] [[package]] -name = "schnellru" -version = "0.2.4" +name = "scopeguard" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "356285bbf17bea63d9e52e96bd18f039672ac92b55b8cb997d6162a2a37d1649" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" + +[[package]] +name = "scroll-alloy-consensus" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ - "ahash", - "cfg-if", - "hashbrown 0.13.2", + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "alloy-serde", + "derive_more", + "modular-bitfield", + "reth-codecs", + "reth-codecs-derive", + "serde", + "serde_with", ] [[package]] -name = "scopeguard" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" +name = "scroll-alloy-network" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" +dependencies = [ + "alloy-consensus", + "alloy-network", + "alloy-primitives", + "alloy-rpc-types-eth", + "alloy-signer", + "scroll-alloy-consensus", + "scroll-alloy-rpc-types", +] + +[[package]] +name = "scroll-alloy-rpc-types" +version = "1.1.5" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-network-primitives", + "alloy-primitives", + "alloy-rpc-types-eth", + "alloy-serde", + "derive_more", + "scroll-alloy-consensus", + "serde", + "serde_json", +] [[package]] name = "scroll-proving-sdk" @@ -5943,14 +5528,6 @@ dependencies = [ "windows-sys 0.52.0", ] -[[package]] -name = "sp1-intrinsics" -version = "0.0.0" -source = "git+https://github.com/scroll-tech/sp1-intrinsics.git?branch=master#7e038e60db0b2e847f6d8f49e148ccac8c6fc394" -dependencies = [ - "cfg-if", -] - [[package]] name = "spin" version = "0.5.2" @@ -6322,7 +5899,7 @@ dependencies = [ "backtrace", "bytes", "libc", - "mio 1.0.3", + "mio", "parking_lot 0.12.3", "pin-project-lite", "signal-hook-registry", @@ -6766,16 +6343,6 @@ dependencies = [ "libc", ] -[[package]] -name = "walkdir" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" -dependencies = [ - "same-file", - "winapi-util", -] - [[package]] name = "want" version = "0.3.1" @@ -6970,15 +6537,6 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" -[[package]] -name = "winapi-util" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" -dependencies = [ - "windows-sys 0.59.0", -] - [[package]] name = "winapi-x86_64-pc-windows-gnu" version = "0.4.0" @@ -7421,8 +6979,21 @@ dependencies = [ [[package]] name = "zstd" -version = "1.1.4" -source = "git+https://github.com/scroll-tech/reth?branch=fix%2Fscroll#5e42fa0354181292111cae21bf19617a1b63ed77" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcf2b778a664581e31e389454a7072dab1647606d44f7feea22cd5abb9c9f3f9" +dependencies = [ + "zstd-safe", +] + +[[package]] +name = "zstd-safe" +version = "7.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54a3ab4db68cea366acc5c897c7b4d4d1b8994a9cd6e6f841f8964566a419059" +dependencies = [ + "zstd-sys", +] [[package]] name = "zstd-sys" diff --git a/Cargo.toml b/Cargo.toml index 55eff10..835bfde 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -26,10 +26,10 @@ tracing-subscriber = { version = "0.3.18", features = ["env-filter"] } axum = "0.6.0" dotenv = "0.15" rocksdb = "0.23.0" -sbv-utils = { git = "https://github.com/scroll-tech/stateless-block-verifier", branch = "master", features = [ +sbv-utils = { git = "https://github.com/scroll-tech/stateless-block-verifier", branch = "chore/revm-v55-upgrade", features = [ "scroll", ], optional = true } -sbv-primitives = { git = "https://github.com/scroll-tech/stateless-block-verifier", branch = "master", features = [ +sbv-primitives = { git = "https://github.com/scroll-tech/stateless-block-verifier", branch = "chore/revm-v55-upgrade", features = [ "scroll", ], optional = true } url = "2.5.4" From 76cf9659344b8aa9e18f735a85028cc6ee4e1219 Mon Sep 17 00:00:00 2001 From: Rohit Narurkar Date: Wed, 19 Feb 2025 15:43:37 +0000 Subject: [PATCH 39/42] chore: revm update dep --- Cargo.lock | 107 ++++++++++++----------------------------------------- Cargo.toml | 8 ++-- 2 files changed, 28 insertions(+), 87 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 38782a5..abae092 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4071,7 +4071,7 @@ dependencies = [ "reth-codecs", "reth-primitives-traits", "reth-zstd-compressors", - "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm-primitives", "secp256k1", "serde", ] @@ -4097,8 +4097,8 @@ dependencies = [ "reth-primitives-traits", "reth-revm", "reth-storage-errors", - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", - "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm", + "revm-primitives", ] [[package]] @@ -4119,7 +4119,7 @@ dependencies = [ "reth-primitives", "reth-primitives-traits", "reth-revm", - "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm-primitives", ] [[package]] @@ -4149,7 +4149,7 @@ dependencies = [ "reth-primitives-traits", "reth-trie", "reth-trie-common", - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm", "serde", "serde_with", ] @@ -4236,7 +4236,7 @@ dependencies = [ "once_cell", "op-alloy-consensus", "reth-codecs", - "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm-primitives", "scroll-alloy-consensus", "secp256k1", "serde", @@ -4269,7 +4269,7 @@ dependencies = [ "reth-storage-api", "reth-storage-errors", "reth-trie", - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm", ] [[package]] @@ -4300,7 +4300,7 @@ name = "reth-scroll-consensus" version = "1.1.5" source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm", ] [[package]] @@ -4322,8 +4322,8 @@ dependencies = [ "reth-scroll-consensus", "reth-scroll-forks", "reth-scroll-primitives", - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", - "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm", + "revm-primitives", "scroll-alloy-consensus", "thiserror 2.0.11", "tracing", @@ -4360,7 +4360,7 @@ dependencies = [ "reth-codecs", "reth-primitives-traits", "reth-zstd-compressors", - "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm-primitives", "scroll-alloy-consensus", "secp256k1", "serde", @@ -4412,7 +4412,7 @@ dependencies = [ "reth-storage-errors", "reth-trie", "reth-trie-db", - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm", ] [[package]] @@ -4463,7 +4463,7 @@ dependencies = [ "reth-storage-errors", "reth-trie-common", "reth-trie-sparse", - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm", "tracing", ] @@ -4485,7 +4485,7 @@ dependencies = [ "rayon", "reth-codecs", "reth-primitives-traits", - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm", "serde", "serde_with", ] @@ -4504,7 +4504,7 @@ dependencies = [ "reth-primitives-traits", "reth-storage-errors", "reth-trie", - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm", "tracing", ] @@ -4542,20 +4542,6 @@ dependencies = [ "rand", ] -[[package]] -name = "revm" -version = "19.4.0" -source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade#9155313825bcc38d663bdc840f5231bac8801d93" -dependencies = [ - "auto_impl", - "cfg-if", - "dyn-clone", - "revm-interpreter 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", - "revm-precompile 16.0.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", - "serde", - "serde_json", -] - [[package]] name = "revm" version = "19.4.0" @@ -4564,48 +4550,21 @@ dependencies = [ "auto_impl", "cfg-if", "dyn-clone", - "revm-interpreter 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", - "revm-precompile 16.0.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", + "revm-interpreter", + "revm-precompile", "serde", "serde_json", ] -[[package]] -name = "revm-interpreter" -version = "15.1.0" -source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade#9155313825bcc38d663bdc840f5231bac8801d93" -dependencies = [ - "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", - "serde", -] - [[package]] name = "revm-interpreter" version = "15.1.0" source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55#6accb0ba959747d717443954a8bd988efa8f98fc" dependencies = [ - "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", + "revm-primitives", "serde", ] -[[package]] -name = "revm-precompile" -version = "16.0.0" -source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade#9155313825bcc38d663bdc840f5231bac8801d93" -dependencies = [ - "aurora-engine-modexp", - "c-kzg", - "cfg-if", - "k256", - "once_cell", - "p256", - "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", - "ripemd", - "secp256k1", - "sha2", - "substrate-bn", -] - [[package]] name = "revm-precompile" version = "16.0.0" @@ -4617,32 +4576,13 @@ dependencies = [ "k256", "once_cell", "p256", - "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", + "revm-primitives", "ripemd", "secp256k1", "sha2", "substrate-bn", ] -[[package]] -name = "revm-primitives" -version = "15.1.0" -source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade#9155313825bcc38d663bdc840f5231bac8801d93" -dependencies = [ - "alloy-eip2930", - "alloy-eip7702", - "alloy-primitives", - "auto_impl", - "bitflags 2.8.0", - "bitvec", - "c-kzg", - "cfg-if", - "dyn-clone", - "enumn", - "hex", - "serde", -] - [[package]] name = "revm-primitives" version = "15.1.0" @@ -4654,6 +4594,7 @@ dependencies = [ "auto_impl", "bitflags 2.8.0", "bitvec", + "c-kzg", "cfg-if", "dyn-clone", "enumn", @@ -5005,7 +4946,7 @@ dependencies = [ "reth-execution-types", "reth-scroll-evm", "reth-storage-errors", - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", + "revm", "sbv-helpers", "sbv-kv", "sbv-primitives", @@ -5021,7 +4962,7 @@ name = "sbv-helpers" version = "2.0.0" source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=chore%2Frevm-v55-upgrade#b091fa42885d352f1b04fc24c34de948e727d3ec" dependencies = [ - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", + "revm", ] [[package]] @@ -5054,7 +4995,7 @@ dependencies = [ "reth-primitives-traits", "reth-scroll-chainspec", "reth-scroll-primitives", - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", + "revm", "rkyv", "sbv-helpers", "sbv-kv", @@ -5074,7 +5015,7 @@ dependencies = [ "alloy-trie", "reth-trie", "reth-trie-sparse", - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", + "revm", "sbv-helpers", "sbv-kv", "sbv-primitives", diff --git a/Cargo.toml b/Cargo.toml index 835bfde..ffe59cb 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -40,8 +40,8 @@ openvm = ["dep:sbv-utils", "dep:sbv-primitives"] [patch.crates-io] # patched add rkyv support & MSRV 1.77 alloy-primitives = { git = "https://github.com/scroll-tech/alloy-core", branch = "v0.8.18" } -revm = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/chore/v55-upgrade" } -revm-interpreter = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/chore/v55-upgrade" } -revm-precompile = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/chore/v55-upgrade" } -revm-primitives = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/chore/v55-upgrade" } +revm = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/v55" } +revm-interpreter = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/v55" } +revm-precompile = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/v55" } +revm-primitives = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/v55" } ruint = { git = "https://github.com/scroll-tech/uint.git", branch = "v1.12.3" } From cd76ff2eb0e053a5b2dd4820bf6c1b4a8473c293 Mon Sep 17 00:00:00 2001 From: Rohit Narurkar Date: Wed, 19 Feb 2025 16:33:55 +0000 Subject: [PATCH 40/42] revert 76cf9659344b8aa9e18f735a85028cc6ee4e1219 --- Cargo.lock | 107 +++++++++++++++++++++++++++++++++++++++++------------ Cargo.toml | 8 ++-- 2 files changed, 87 insertions(+), 28 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index abae092..38782a5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4071,7 +4071,7 @@ dependencies = [ "reth-codecs", "reth-primitives-traits", "reth-zstd-compressors", - "revm-primitives", + "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", "secp256k1", "serde", ] @@ -4097,8 +4097,8 @@ dependencies = [ "reth-primitives-traits", "reth-revm", "reth-storage-errors", - "revm", - "revm-primitives", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", ] [[package]] @@ -4119,7 +4119,7 @@ dependencies = [ "reth-primitives", "reth-primitives-traits", "reth-revm", - "revm-primitives", + "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", ] [[package]] @@ -4149,7 +4149,7 @@ dependencies = [ "reth-primitives-traits", "reth-trie", "reth-trie-common", - "revm", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", "serde", "serde_with", ] @@ -4236,7 +4236,7 @@ dependencies = [ "once_cell", "op-alloy-consensus", "reth-codecs", - "revm-primitives", + "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", "scroll-alloy-consensus", "secp256k1", "serde", @@ -4269,7 +4269,7 @@ dependencies = [ "reth-storage-api", "reth-storage-errors", "reth-trie", - "revm", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", ] [[package]] @@ -4300,7 +4300,7 @@ name = "reth-scroll-consensus" version = "1.1.5" source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" dependencies = [ - "revm", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", ] [[package]] @@ -4322,8 +4322,8 @@ dependencies = [ "reth-scroll-consensus", "reth-scroll-forks", "reth-scroll-primitives", - "revm", - "revm-primitives", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", "scroll-alloy-consensus", "thiserror 2.0.11", "tracing", @@ -4360,7 +4360,7 @@ dependencies = [ "reth-codecs", "reth-primitives-traits", "reth-zstd-compressors", - "revm-primitives", + "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", "scroll-alloy-consensus", "secp256k1", "serde", @@ -4412,7 +4412,7 @@ dependencies = [ "reth-storage-errors", "reth-trie", "reth-trie-db", - "revm", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", ] [[package]] @@ -4463,7 +4463,7 @@ dependencies = [ "reth-storage-errors", "reth-trie-common", "reth-trie-sparse", - "revm", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", "tracing", ] @@ -4485,7 +4485,7 @@ dependencies = [ "rayon", "reth-codecs", "reth-primitives-traits", - "revm", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", "serde", "serde_with", ] @@ -4504,7 +4504,7 @@ dependencies = [ "reth-primitives-traits", "reth-storage-errors", "reth-trie", - "revm", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", "tracing", ] @@ -4542,6 +4542,20 @@ dependencies = [ "rand", ] +[[package]] +name = "revm" +version = "19.4.0" +source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade#9155313825bcc38d663bdc840f5231bac8801d93" +dependencies = [ + "auto_impl", + "cfg-if", + "dyn-clone", + "revm-interpreter 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm-precompile 16.0.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "serde", + "serde_json", +] + [[package]] name = "revm" version = "19.4.0" @@ -4550,21 +4564,48 @@ dependencies = [ "auto_impl", "cfg-if", "dyn-clone", - "revm-interpreter", - "revm-precompile", + "revm-interpreter 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", + "revm-precompile 16.0.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", "serde", "serde_json", ] +[[package]] +name = "revm-interpreter" +version = "15.1.0" +source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade#9155313825bcc38d663bdc840f5231bac8801d93" +dependencies = [ + "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "serde", +] + [[package]] name = "revm-interpreter" version = "15.1.0" source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55#6accb0ba959747d717443954a8bd988efa8f98fc" dependencies = [ - "revm-primitives", + "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", "serde", ] +[[package]] +name = "revm-precompile" +version = "16.0.0" +source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade#9155313825bcc38d663bdc840f5231bac8801d93" +dependencies = [ + "aurora-engine-modexp", + "c-kzg", + "cfg-if", + "k256", + "once_cell", + "p256", + "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "ripemd", + "secp256k1", + "sha2", + "substrate-bn", +] + [[package]] name = "revm-precompile" version = "16.0.0" @@ -4576,7 +4617,7 @@ dependencies = [ "k256", "once_cell", "p256", - "revm-primitives", + "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", "ripemd", "secp256k1", "sha2", @@ -4586,7 +4627,7 @@ dependencies = [ [[package]] name = "revm-primitives" version = "15.1.0" -source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55#6accb0ba959747d717443954a8bd988efa8f98fc" +source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade#9155313825bcc38d663bdc840f5231bac8801d93" dependencies = [ "alloy-eip2930", "alloy-eip7702", @@ -4602,6 +4643,24 @@ dependencies = [ "serde", ] +[[package]] +name = "revm-primitives" +version = "15.1.0" +source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55#6accb0ba959747d717443954a8bd988efa8f98fc" +dependencies = [ + "alloy-eip2930", + "alloy-eip7702", + "alloy-primitives", + "auto_impl", + "bitflags 2.8.0", + "bitvec", + "cfg-if", + "dyn-clone", + "enumn", + "hex", + "serde", +] + [[package]] name = "rfc6979" version = "0.4.0" @@ -4946,7 +5005,7 @@ dependencies = [ "reth-execution-types", "reth-scroll-evm", "reth-storage-errors", - "revm", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", "sbv-helpers", "sbv-kv", "sbv-primitives", @@ -4962,7 +5021,7 @@ name = "sbv-helpers" version = "2.0.0" source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=chore%2Frevm-v55-upgrade#b091fa42885d352f1b04fc24c34de948e727d3ec" dependencies = [ - "revm", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", ] [[package]] @@ -4995,7 +5054,7 @@ dependencies = [ "reth-primitives-traits", "reth-scroll-chainspec", "reth-scroll-primitives", - "revm", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", "rkyv", "sbv-helpers", "sbv-kv", @@ -5015,7 +5074,7 @@ dependencies = [ "alloy-trie", "reth-trie", "reth-trie-sparse", - "revm", + "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", "sbv-helpers", "sbv-kv", "sbv-primitives", diff --git a/Cargo.toml b/Cargo.toml index ffe59cb..835bfde 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -40,8 +40,8 @@ openvm = ["dep:sbv-utils", "dep:sbv-primitives"] [patch.crates-io] # patched add rkyv support & MSRV 1.77 alloy-primitives = { git = "https://github.com/scroll-tech/alloy-core", branch = "v0.8.18" } -revm = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/v55" } -revm-interpreter = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/v55" } -revm-precompile = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/v55" } -revm-primitives = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/v55" } +revm = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/chore/v55-upgrade" } +revm-interpreter = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/chore/v55-upgrade" } +revm-precompile = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/chore/v55-upgrade" } +revm-primitives = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/chore/v55-upgrade" } ruint = { git = "https://github.com/scroll-tech/uint.git", branch = "v1.12.3" } From 34a4f8f5ee4e60435ff7c71cec4c72e265b1c15c Mon Sep 17 00:00:00 2001 From: lightsing Date: Thu, 20 Feb 2025 11:17:17 +0800 Subject: [PATCH 41/42] fix --- Cargo.lock | 1496 ++++++++++------------------------------------------ Cargo.toml | 10 +- 2 files changed, 283 insertions(+), 1223 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 38782a5..d81f4be 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -17,18 +17,6 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" -[[package]] -name = "ahash" -version = "0.8.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" -dependencies = [ - "cfg-if", - "once_cell", - "version_check", - "zerocopy", -] - [[package]] name = "aho-corasick" version = "1.1.3" @@ -44,34 +32,17 @@ version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" -[[package]] -name = "alloy" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d2cc5aeb8dfa1e451a49fac87bc4b86c5de40ebea153ed88e83eb92b8151e74" -dependencies = [ - "alloy-consensus", - "alloy-core", - "alloy-eips", - "alloy-json-rpc", - "alloy-network", - "alloy-provider", - "alloy-rpc-client", - "alloy-transport", - "alloy-transport-http", -] - [[package]] name = "alloy-chains" -version = "0.1.57" +version = "0.1.62" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ab9d1367c6ffb90c93fb4a9a4989530aa85112438c6f73a734067255d348469" +checksum = "1317fde6d2d3cd6082a15144c23230697a5e1a91a27d1facc146715d3b4b2046" dependencies = [ "alloy-primitives", "alloy-rlp", "num_enum 0.7.3", "serde", - "strum 0.26.3", + "strum 0.27.1", ] [[package]] @@ -89,7 +60,6 @@ dependencies = [ "c-kzg", "derive_more", "serde", - "serde_with", ] [[package]] @@ -106,15 +76,6 @@ dependencies = [ "serde", ] -[[package]] -name = "alloy-core" -version = "0.8.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0713007d14d88a6edb8e248cddab783b698dbb954a28b8eee4bab21cfb7e578" -dependencies = [ - "alloy-primitives", -] - [[package]] name = "alloy-eip2124" version = "0.1.0" @@ -150,7 +111,6 @@ dependencies = [ "derive_more", "k256", "serde", - "serde_with", ] [[package]] @@ -186,18 +146,6 @@ dependencies = [ "serde", ] -[[package]] -name = "alloy-json-abi" -version = "0.8.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "731ea743b3d843bc657e120fb1d1e9cc94f5dab8107e35a82125a63e6420a102" -dependencies = [ - "alloy-primitives", - "alloy-sol-type-parser", - "serde", - "serde_json", -] - [[package]] name = "alloy-json-rpc" version = "0.11.1" @@ -252,8 +200,8 @@ dependencies = [ [[package]] name = "alloy-primitives" -version = "0.8.18" -source = "git+https://github.com/scroll-tech/alloy-core?branch=v0.8.18#aab106b9b7ca2e76a7b073064f86a04adb3122fe" +version = "0.8.21" +source = "git+https://github.com/scroll-tech/alloy-core?branch=v0.8.21#6d28bdb643f36da7b580ed0f252df6d8117f2fdd" dependencies = [ "alloy-rlp", "bytes", @@ -271,7 +219,7 @@ dependencies = [ "rand", "rkyv", "ruint", - "rustc-hash 2.1.0", + "rustc-hash 2.1.1", "serde", "sha3", "tiny-keccak", @@ -294,7 +242,6 @@ dependencies = [ "alloy-rpc-types-eth", "alloy-sol-types", "alloy-transport", - "alloy-transport-http", "async-stream", "async-trait", "auto_impl", @@ -304,13 +251,11 @@ dependencies = [ "lru", "parking_lot 0.12.3", "pin-project", - "reqwest 0.12.12", "serde", "serde_json", "thiserror 2.0.11", "tokio", "tracing", - "url", "wasmtimer", ] @@ -333,7 +278,7 @@ checksum = "a40e1ef334153322fd878d07e86af7a529bcb86b2439525920a88eba87bcf943" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -348,14 +293,12 @@ dependencies = [ "alloy-transport-http", "futures", "pin-project", - "reqwest 0.12.12", "serde", "serde_json", "tokio", "tokio-stream", "tower 0.5.2", "tracing", - "url", "wasmtimer", ] @@ -370,21 +313,6 @@ dependencies = [ "alloy-serde", ] -[[package]] -name = "alloy-rpc-types-engine" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e83dde9fcf1ccb9b815cc0c89bba26bbbbaae5150a53ae624ed0fc63cb3676c1" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "alloy-serde", - "derive_more", - "strum 0.26.3", -] - [[package]] name = "alloy-rpc-types-eth" version = "0.11.1" @@ -399,7 +327,7 @@ dependencies = [ "alloy-rlp", "alloy-serde", "alloy-sol-types", - "itertools 0.13.0", + "itertools 0.14.0", "serde", "serde_json", "thiserror 2.0.11", @@ -433,23 +361,23 @@ dependencies = [ [[package]] name = "alloy-sol-macro" -version = "0.8.19" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d039d267aa5cbb7732fa6ce1fd9b5e9e29368f580f80ba9d7a8450c794de4b2" +checksum = "a2708e27f58d747423ae21d31b7a6625159bd8d867470ddd0256f396a68efa11" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] name = "alloy-sol-macro-expander" -version = "0.8.19" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "620ae5eee30ee7216a38027dec34e0585c55099f827f92f50d11e3d2d3a4a954" +checksum = "c6b7984d7e085dec382d2c5ef022b533fcdb1fe6129200af30ebf5afddb6a361" dependencies = [ "alloy-sol-macro-input", "const-hex", @@ -458,47 +386,35 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "syn-solidity", "tiny-keccak", ] [[package]] name = "alloy-sol-macro-input" -version = "0.8.19" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad9f7d057e00f8c5994e4ff4492b76532c51ead39353aa2ed63f8c50c0f4d52e" +checksum = "33d6a9fc4ed1a3c70bdb2357bec3924551c1a59f24e5a04a74472c755b37f87d" dependencies = [ "const-hex", "dunce", "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "syn-solidity", ] -[[package]] -name = "alloy-sol-type-parser" -version = "0.8.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74e60b084fe1aef8acecda2743ff2d93c18ff3eb67a2d3b12f62582a1e66ef5e" -dependencies = [ - "serde", - "winnow 0.6.26", -] - [[package]] name = "alloy-sol-types" -version = "0.8.18" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3b478bc9c0c4737a04cd976accde4df7eba0bdc0d90ad6ff43d58bc93cf79c1" +checksum = "6044800da35c38118fd4b98e18306bd3b91af5dedeb54c1b768cf1b4fb68f549" dependencies = [ - "alloy-json-abi", "alloy-primitives", "alloy-sol-macro", "const-hex", - "serde", ] [[package]] @@ -526,20 +442,15 @@ version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "20819c4cb978fb39ce6ac31991ba90f386d595f922f42ef888b4a18be190713e" dependencies = [ - "alloy-json-rpc", "alloy-transport", - "reqwest 0.12.12", - "serde_json", - "tower 0.5.2", - "tracing", "url", ] [[package]] name = "alloy-trie" -version = "0.7.8" +version = "0.7.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6917c79e837aa7b77b7a6dae9f89cbe15313ac161c4d3cfaf8909ef21f3d22d8" +checksum = "d95a94854e420f07e962f7807485856cde359ab99ab6413883e15235ad996e8b" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -618,18 +529,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.95" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34ac096ce696dc2fcabef30516bb13c0a68a11d30131d3df6f04711467681b04" - -[[package]] -name = "arbitrary" -version = "1.4.1" +version = "1.0.96" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223" -dependencies = [ - "derive_arbitrary", -] +checksum = "6b964d184e89d9b6b67dd2715bc8e74cf3107fb2b529990c90cf517326150bf4" [[package]] name = "ark-ff" @@ -796,18 +698,18 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] name = "async-trait" -version = "0.1.85" +version = "0.1.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f934833b4b7233644e5848f235df3f57ed8c80f1528a26c3dfa13d2147fa056" +checksum = "644dd749086bf3771a2fbc5f256fdb982d53f011c7d5d560304eafeecebce79d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -829,9 +731,9 @@ checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" [[package]] name = "aurora-engine-modexp" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0aef7712851e524f35fbbb74fa6599c5cd8692056a1c36f9ca0d2001b670e7e5" +checksum = "518bc5745a6264b5fd7b09dffb9667e400ee9e2bbe18555fac75e1fe9afa0df9" dependencies = [ "hex", "num", @@ -845,7 +747,7 @@ checksum = "e12882f59de5360c748c4cbf569a042d5fb0eb515f7bea9c1f470b47f6ffbd73" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -948,15 +850,6 @@ version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" -[[package]] -name = "bincode" -version = "1.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" -dependencies = [ - "serde", -] - [[package]] name = "bindgen" version = "0.69.5" @@ -974,7 +867,7 @@ dependencies = [ "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -1031,9 +924,9 @@ dependencies = [ [[package]] name = "blst" -version = "0.3.13" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4378725facc195f1a538864863f6de233b500a8862747e7f165078a419d5e874" +checksum = "47c79a94619fade3c0b887670333513a67ac28a6a7e653eb260bf0d4103db38d" dependencies = [ "cc", "glob", @@ -1055,9 +948,9 @@ checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c" [[package]] name = "bytecheck" -version = "0.8.0" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50c8f430744b23b54ad15161fcbc22d82a29b73eacbe425fea23ec822600bc6f" +checksum = "50690fb3370fb9fe3550372746084c46f2ac8c9685c583d2be10eefd89d3d1a3" dependencies = [ "bytecheck_derive", "ptr_meta", @@ -1067,21 +960,15 @@ dependencies = [ [[package]] name = "bytecheck_derive" -version = "0.8.0" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "523363cbe1df49b68215efdf500b103ac3b0fb4836aed6d15689a076eadb8fff" +checksum = "efb7846e0cb180355c2dec69e721edafa36919850f1a9f52ffba4ebc0393cb71" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] -[[package]] -name = "bytemuck" -version = "1.21.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef657dfab802224e671f5818e9a4935f9b1957ed18e58292690cc39e7a4092a3" - [[package]] name = "byteorder" version = "1.5.0" @@ -1090,18 +977,18 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.9.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b" +checksum = "f61dac84819c6588b558454b194026eb1f09c293b9036ae9b159e74e73ab6cf9" dependencies = [ "serde", ] [[package]] name = "bzip2-sys" -version = "0.1.11+1.0.8" +version = "0.1.12+1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc" +checksum = "72ebc2f1a417f01e1da30ef264ee86ae31d2dcd2d603ea283d3c244a883ca2a9" dependencies = [ "cc", "libc", @@ -1125,9 +1012,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.10" +version = "1.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13208fcbb66eaeffe09b99fffbe1af420f00a7b35aa99ad683dfc1aa76145229" +checksum = "0c3d1b2e905a3a7b00a6141adb0e4c0bb941d11caf55349d863942a1cc44e3c9" dependencies = [ "jobserver", "libc", @@ -1149,12 +1036,6 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" -[[package]] -name = "cfg_aliases" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" - [[package]] name = "chrono" version = "0.4.39" @@ -1163,10 +1044,8 @@ checksum = "7e36cc9d416881d2e24f9a963be5fb1cd90966419ac844274161d10488b3e825" dependencies = [ "android-tzdata", "iana-time-zone", - "js-sys", "num-traits", "serde", - "wasm-bindgen", "windows-targets 0.52.6", ] @@ -1183,9 +1062,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.27" +version = "4.5.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "769b0145982b4b48713e01ec42d61614425f27b7058bda7180a3a41f30104796" +checksum = "92b7b18d71fad5313a1e320fa9897994228ce274b60faa4d694fe0ea89cd9e6d" dependencies = [ "clap_builder", "clap_derive", @@ -1193,9 +1072,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.27" +version = "4.5.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b26884eb4b57140e4d2d93652abfa49498b938b3c9179f9fc487b0acc3edad7" +checksum = "a35db2071778a7344791a4fb4f95308b5673d219dee3ae348b86642574ecc90c" dependencies = [ "anstream", "anstyle", @@ -1205,14 +1084,14 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.24" +version = "4.5.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54b755194d6389280185988721fffba69495eed5ee9feeee9a599b53db80318c" +checksum = "bf4ced95c6f4a675af3da73304b9ac4ed991640c36374e4b46795c49e17cf1ed" dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -1227,19 +1106,6 @@ version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" -[[package]] -name = "console" -version = "0.15.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea3c6ecd8059b57859df5c69830340ed3c41d30e3da0c1cbed90a96ac853041b" -dependencies = [ - "encode_unicode", - "libc", - "once_cell", - "unicode-width", - "windows-sys 0.59.0", -] - [[package]] name = "const-hex" version = "1.14.0" @@ -1259,6 +1125,26 @@ version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" +[[package]] +name = "const_format" +version = "0.2.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "126f97965c8ad46d6d9163268ff28432e8f6a1196a55578867832e3049df63dd" +dependencies = [ + "const_format_proc_macros", +] + +[[package]] +name = "const_format_proc_macros" +version = "0.2.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d57c2eccfb16dbac1f4e61e206105db5820c9d26c3c472bc17c774259ef7744" +dependencies = [ + "proc-macro2", + "quote", + "unicode-xid", +] + [[package]] name = "convert_case" version = "0.6.0" @@ -1323,15 +1209,6 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "790eea4361631c5e7d22598ecd5723ff611904e3344ce8720784c93e3d83d40b" -[[package]] -name = "crossbeam-channel" -version = "0.5.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06ba6d68e24814cb8de6bb986db8222d3a027d15872cabc0d18817bc3c0e4471" -dependencies = [ - "crossbeam-utils", -] - [[package]] name = "crossbeam-deque" version = "0.8.6" @@ -1406,7 +1283,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -1417,7 +1294,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ "darling_core", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -1436,9 +1313,9 @@ dependencies = [ [[package]] name = "data-encoding" -version = "2.7.0" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e60eed09d8c01d3cee5b7d30acb059b76614c918fa0f992e0dd6eeb10daad6f" +checksum = "575f75dfd25738df5b91b8e43e14d44bda14637a58fae779fd2b064f8bf3e010" [[package]] name = "der" @@ -1471,17 +1348,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "derive_arbitrary" -version = "1.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30542c1ad912e0e3d22a1935c290e12e8a29d704a420177a31faad4a601a0800" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.96", -] - [[package]] name = "derive_more" version = "1.0.0" @@ -1500,7 +1366,7 @@ dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "unicode-xid", ] @@ -1533,7 +1399,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -1550,9 +1416,9 @@ checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" [[package]] name = "dyn-clone" -version = "1.0.17" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" +checksum = "feeef44e73baff3a26d371801df019877a9866a8c493d315ab00177843314f35" [[package]] name = "ecdsa" @@ -1595,12 +1461,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "encode_unicode" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0" - [[package]] name = "encoding_rs" version = "0.8.35" @@ -1636,14 +1496,14 @@ checksum = "2f9ed6b3789237c8a0c1c505af1c7eb2c560df6186f01b098c3a1064ea532f38" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] name = "equivalent" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "errno" @@ -1765,16 +1625,6 @@ dependencies = [ "ws_stream_wasm", ] -[[package]] -name = "eyre" -version = "0.6.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cd915d99f24784cdc19fd37ef22b97e3ff0ae756c7e492e9fbfe897d61e2aec" -dependencies = [ - "indenter", - "once_cell", -] - [[package]] name = "fastrand" version = "2.3.0" @@ -1922,7 +1772,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -2072,9 +1922,9 @@ dependencies = [ [[package]] name = "h2" -version = "0.4.7" +version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ccae279728d634d083c00f6099cb58f01cc99c145b84b8be2f6c74618d79922e" +checksum = "5017294ff4bb30944501348f6f8e42e6ad28f42c8bbef7a74029aff064a4e3c2" dependencies = [ "atomic-waker", "bytes", @@ -2260,7 +2110,7 @@ dependencies = [ "bytes", "futures-channel", "futures-util", - "h2 0.4.7", + "h2 0.4.8", "http 1.2.0", "http-body 1.0.1", "httparse", @@ -2295,12 +2145,11 @@ dependencies = [ "http 1.2.0", "hyper 1.6.0", "hyper-util", - "rustls 0.23.22", + "rustls 0.23.23", "rustls-pki-types", "tokio", "tokio-rustls 0.26.1", "tower-service", - "webpki-roots 0.26.7", ] [[package]] @@ -2349,7 +2198,7 @@ dependencies = [ "iana-time-zone-haiku", "js-sys", "wasm-bindgen", - "windows-core 0.52.0", + "windows-core", ] [[package]] @@ -2476,7 +2325,7 @@ checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -2541,15 +2390,9 @@ checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] -[[package]] -name = "indenter" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683" - [[package]] name = "indexmap" version = "1.9.3" @@ -2572,19 +2415,6 @@ dependencies = [ "serde", ] -[[package]] -name = "indicatif" -version = "0.17.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "183b3088984b400f4cfac3620d5e076c84da5364016b4f49473de574b2586235" -dependencies = [ - "console", - "number_prefix", - "portable-atomic", - "unicode-width", - "web-time", -] - [[package]] name = "instant" version = "0.1.13" @@ -2808,12 +2638,6 @@ dependencies = [ "libc", ] -[[package]] -name = "lz4_flex" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75761162ae2b0e580d7e7c390558127e5f01b4194debd6221fd8c207fc80e3f5" - [[package]] name = "matchers" version = "0.1.0" @@ -2835,37 +2659,6 @@ version = "2.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" -[[package]] -name = "memmap2" -version = "0.9.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd3f7eed9d3848f8b98834af67102b720745c4ec028fcd0aa0239277e7de374f" -dependencies = [ - "libc", -] - -[[package]] -name = "metrics" -version = "0.24.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a7deb012b3b2767169ff203fadb4c6b0b82b947512e5eb9e0b78c2e186ad9e3" -dependencies = [ - "ahash", - "portable-atomic", -] - -[[package]] -name = "metrics-derive" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3dbdd96ed57d565ec744cba02862d707acf373c5772d152abae6ec5c4e24f6c" -dependencies = [ - "proc-macro2", - "quote", - "regex", - "syn 2.0.96", -] - [[package]] name = "mime" version = "0.3.17" @@ -2880,9 +2673,9 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.8.3" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8402cab7aefae129c6977bb0ff1b8fd9a04eb5b51efc50a70bea51cda0c7924" +checksum = "b3b1c9bd4fe1f0f8b387f6eb9eb3b4a1aa26185e5750efb9140301703f62cd1b" dependencies = [ "adler2", ] @@ -2936,14 +2729,14 @@ checksum = "1bb5c1d8184f13f7d0ccbeeca0def2f9a181bce2624302793005f5ca8aa62e5e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] name = "native-tls" -version = "0.2.13" +version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dab59f8e050d5df8e4dd87d9206fb6f65a483e20ac9fda365ade4fab353196c" +checksum = "87de3442987e9dbec73158d5c715e7ad9072fda936bb03d19d7fa10e00520f0e" dependencies = [ "libc", "log", @@ -2966,15 +2759,6 @@ dependencies = [ "minimal-lexical", ] -[[package]] -name = "ntapi" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4" -dependencies = [ - "winapi", -] - [[package]] name = "nu-ansi-term" version = "0.46.0" @@ -3101,7 +2885,7 @@ dependencies = [ "proc-macro-crate 1.3.1", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -3112,15 +2896,9 @@ checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] -[[package]] -name = "number_prefix" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" - [[package]] name = "nybbles" version = "0.3.4" @@ -3145,9 +2923,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.20.2" +version = "1.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" +checksum = "945462a4b81e43c4e3ba96bd7b49d834c6f61198356aa858733bc4acf3cbe62e" dependencies = [ "critical-section", "portable-atomic", @@ -3155,9 +2933,9 @@ dependencies = [ [[package]] name = "op-alloy-consensus" -version = "0.10.3" +version = "0.10.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23f7ff02e5f3ba62c8dd5d9a630c818f50147bca7b0d78e89de59ed46b5d02e1" +checksum = "621e69964165285ce750bf7ba961707e26c31df9f0b25652d6219dcee1f7f5b5" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3166,7 +2944,6 @@ dependencies = [ "alloy-serde", "derive_more", "serde", - "serde_with", "thiserror 2.0.11", ] @@ -3197,9 +2974,9 @@ dependencies = [ [[package]] name = "openssl" -version = "0.10.69" +version = "0.10.71" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5e534d133a060a3c19daec1eb3e98ec6f4685978834f2dbadfe2ec215bab64e" +checksum = "5e14130c6a98cd258fdcb0fb6d744152343ff729cbfcb28c656a9d12b999fbcd" dependencies = [ "bitflags 2.8.0", "cfg-if", @@ -3218,7 +2995,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -3229,9 +3006,9 @@ checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" [[package]] name = "openssl-sys" -version = "0.9.104" +version = "0.9.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45abf306cbf99debc8195b66b7346498d7b10c210de50418b5ccd7ceba08c741" +checksum = "8bb61ea9811cc39e3c2069f40b8b8e2e70d8569b361f879786cc7ed48b777cdd" dependencies = [ "cc", "libc", @@ -3259,29 +3036,30 @@ dependencies = [ [[package]] name = "parity-scale-codec" -version = "3.6.12" +version = "3.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "306800abfa29c7f16596b5970a588435e3d5b3149683d00c12b699cc19f895ee" +checksum = "c9fde3d0718baf5bc92f577d652001da0f8d54cd03a7974e118d04fc888dc23d" dependencies = [ "arrayvec", "bitvec", "byte-slice-cast", - "bytes", + "const_format", "impl-trait-for-tuples", "parity-scale-codec-derive", + "rustversion", "serde", ] [[package]] name = "parity-scale-codec-derive" -version = "3.6.12" +version = "3.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d830939c76d294956402033aee57a6da7b438f2294eb94864c37b0569053a42c" +checksum = "581c837bb6b9541ce7faa9377c20616e4fb7650f6b0f68bc93c827ee504fb7b3" dependencies = [ "proc-macro-crate 3.2.0", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.98", ] [[package]] @@ -3367,22 +3145,22 @@ dependencies = [ [[package]] name = "pin-project" -version = "1.1.8" +version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e2ec53ad785f4d35dac0adea7f7dc6f1bb277ad84a680c7afefeae05d1f5916" +checksum = "dfe2e71e1471fe07709406bf725f710b02927c9c54b2b5b2ec0e8087d97c327d" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.8" +version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d56a66c0c55993aa927429d0f8a0abfd74f084e4d9c192cffed01e418d83eefb" +checksum = "f6e859e6e5bd50440ab63c47e3ebabc90f26251f7c73c3d3e837b74a1cc3fa67" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -3473,7 +3251,7 @@ version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" dependencies = [ - "toml_edit 0.22.23", + "toml_edit 0.22.24", ] [[package]] @@ -3495,7 +3273,7 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -3544,7 +3322,7 @@ checksum = "ca414edb151b4c8d125c12566ab0d74dc9cdba36fb80eb7b848c15f495fd32d1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -3553,58 +3331,6 @@ version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" -[[package]] -name = "quinn" -version = "0.11.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62e96808277ec6f97351a2380e6c25114bc9e67037775464979f3037c92d05ef" -dependencies = [ - "bytes", - "pin-project-lite", - "quinn-proto", - "quinn-udp", - "rustc-hash 2.1.0", - "rustls 0.23.22", - "socket2", - "thiserror 2.0.11", - "tokio", - "tracing", -] - -[[package]] -name = "quinn-proto" -version = "0.11.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2fe5ef3495d7d2e377ff17b1a8ce2ee2ec2a18cde8b6ad6619d65d0701c135d" -dependencies = [ - "bytes", - "getrandom 0.2.15", - "rand", - "ring 0.17.8", - "rustc-hash 2.1.0", - "rustls 0.23.22", - "rustls-pki-types", - "slab", - "thiserror 2.0.11", - "tinyvec", - "tracing", - "web-time", -] - -[[package]] -name = "quinn-udp" -version = "0.5.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c40286217b4ba3a71d644d752e6a0b71f13f1b6a2c5311acfcbe0c2418ed904" -dependencies = [ - "cfg_aliases", - "libc", - "once_cell", - "socket2", - "tracing", - "windows-sys 0.59.0", -] - [[package]] name = "quote" version = "1.0.38" @@ -3813,7 +3539,7 @@ dependencies = [ "encoding_rs", "futures-core", "futures-util", - "h2 0.4.7", + "h2 0.4.8", "http 1.2.0", "http-body 1.0.1", "http-body-util", @@ -3829,10 +3555,7 @@ dependencies = [ "once_cell", "percent-encoding", "pin-project-lite", - "quinn", - "rustls 0.23.22", "rustls-pemfile 2.2.0", - "rustls-pki-types", "serde", "serde_json", "serde_urlencoded", @@ -3840,7 +3563,6 @@ dependencies = [ "system-configuration 0.6.1", "tokio", "tokio-native-tls", - "tokio-rustls 0.26.1", "tokio-util", "tower 0.5.2", "tower-service", @@ -3848,7 +3570,6 @@ dependencies = [ "wasm-bindgen", "wasm-bindgen-futures", "web-sys", - "webpki-roots 0.26.7", "windows-registry", ] @@ -3891,8 +3612,8 @@ dependencies = [ [[package]] name = "reth-chainspec" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" +version = "1.2.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#1764d96f32cdf51779e876d895abb35c4a6ea780" dependencies = [ "alloy-chains", "alloy-consensus", @@ -3910,8 +3631,8 @@ dependencies = [ [[package]] name = "reth-codecs" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" +version = "1.2.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#1764d96f32cdf51779e876d895abb35c4a6ea780" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3927,286 +3648,61 @@ dependencies = [ [[package]] name = "reth-codecs-derive" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" +version = "1.2.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#1764d96f32cdf51779e876d895abb35c4a6ea780" dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] -name = "reth-consensus" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" +name = "reth-ethereum-forks" +version = "1.2.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#1764d96f32cdf51779e876d895abb35c4a6ea780" dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "auto_impl", - "derive_more", - "reth-primitives-traits", -] - -[[package]] -name = "reth-consensus-common" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "reth-chainspec", - "reth-consensus", - "reth-primitives-traits", -] - -[[package]] -name = "reth-db" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "alloy-consensus", - "alloy-primitives", - "bytes", - "derive_more", - "reth-db-api", - "reth-fs-util", - "reth-nippy-jar", - "reth-primitives", - "reth-primitives-traits", - "reth-prune-types", - "reth-stages-types", - "reth-storage-errors", - "reth-tracing", - "reth-trie-common", - "serde", - "sysinfo", - "thiserror 2.0.11", -] - -[[package]] -name = "reth-db-api" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "alloy-consensus", - "alloy-genesis", - "alloy-primitives", - "bytes", - "derive_more", - "metrics", - "modular-bitfield", - "parity-scale-codec", - "reth-codecs", - "reth-db-models", - "reth-primitives", - "reth-primitives-traits", - "reth-prune-types", - "reth-stages-types", - "reth-storage-errors", - "reth-trie-common", - "roaring", - "serde", -] - -[[package]] -name = "reth-db-models" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "alloy-eips", - "alloy-primitives", - "bytes", - "modular-bitfield", - "reth-codecs", - "reth-primitives-traits", - "serde", -] - -[[package]] -name = "reth-ethereum-consensus" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "reth-chainspec", - "reth-consensus", - "reth-consensus-common", - "reth-primitives", - "reth-primitives-traits", - "tracing", -] - -[[package]] -name = "reth-ethereum-forks" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "alloy-chains", - "alloy-eip2124", + "alloy-chains", + "alloy-eip2124", "alloy-primitives", "auto_impl", "dyn-clone", "once_cell", - "rustc-hash 2.1.0", + "rustc-hash 2.1.1", "serde", ] [[package]] name = "reth-ethereum-primitives" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" +version = "1.2.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#1764d96f32cdf51779e876d895abb35c4a6ea780" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rlp", - "alloy-serde", - "derive_more", - "modular-bitfield", - "reth-codecs", - "reth-primitives-traits", - "reth-zstd-compressors", - "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", - "secp256k1", - "serde", -] - -[[package]] -name = "reth-evm" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "auto_impl", - "futures-util", - "metrics", - "reth-chainspec", - "reth-consensus", - "reth-consensus-common", - "reth-execution-errors", - "reth-execution-types", - "reth-metrics", - "reth-primitives", - "reth-primitives-traits", - "reth-revm", - "reth-storage-errors", - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", - "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", -] - -[[package]] -name = "reth-evm-ethereum" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-sol-types", "derive_more", - "reth-chainspec", - "reth-consensus", - "reth-ethereum-consensus", - "reth-ethereum-forks", - "reth-evm", - "reth-primitives", - "reth-primitives-traits", - "reth-revm", - "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", -] - -[[package]] -name = "reth-execution-errors" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "nybbles", - "reth-consensus", - "reth-storage-errors", - "thiserror 2.0.11", -] - -[[package]] -name = "reth-execution-types" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "reth-execution-errors", - "reth-primitives", "reth-primitives-traits", - "reth-trie", - "reth-trie-common", - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", - "serde", - "serde_with", -] - -[[package]] -name = "reth-fs-util" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ + "revm-primitives 15.2.0", "serde", - "serde_json", - "thiserror 2.0.11", -] - -[[package]] -name = "reth-metrics" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "metrics", - "metrics-derive", ] [[package]] name = "reth-network-peers" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" +version = "1.2.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#1764d96f32cdf51779e876d895abb35c4a6ea780" dependencies = [ "alloy-primitives", "alloy-rlp", - "secp256k1", "serde_with", "thiserror 2.0.11", "url", ] -[[package]] -name = "reth-nippy-jar" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "anyhow", - "bincode", - "derive_more", - "lz4_flex", - "memmap2", - "reth-fs-util", - "serde", - "thiserror 2.0.11", - "tracing", - "zstd", -] - [[package]] name = "reth-primitives" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" +version = "1.2.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#1764d96f32cdf51779e876d895abb35c4a6ea780" dependencies = [ "alloy-consensus", "once_cell", @@ -4218,8 +3714,8 @@ dependencies = [ [[package]] name = "reth-primitives-traits" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" +version = "1.2.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#1764d96f32cdf51779e876d895abb35c4a6ea780" dependencies = [ "alloy-consensus", "alloy-eips", @@ -4228,54 +3724,23 @@ dependencies = [ "alloy-rlp", "alloy-trie", "auto_impl", - "byteorder", "bytes", "derive_more", "k256", - "modular-bitfield", "once_cell", "op-alloy-consensus", "reth-codecs", - "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm-primitives 15.2.0", "scroll-alloy-consensus", "secp256k1", "serde", - "serde_with", - "thiserror 2.0.11", -] - -[[package]] -name = "reth-prune-types" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "alloy-primitives", - "derive_more", - "modular-bitfield", - "reth-codecs", - "serde", "thiserror 2.0.11", ] -[[package]] -name = "reth-revm" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "alloy-eips", - "alloy-primitives", - "reth-ethereum-primitives", - "reth-primitives-traits", - "reth-storage-api", - "reth-storage-errors", - "reth-trie", - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", -] - [[package]] name = "reth-scroll-chainspec" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" +version = "1.2.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#1764d96f32cdf51779e876d895abb35c4a6ea780" dependencies = [ "alloy-chains", "alloy-consensus", @@ -4295,44 +3760,10 @@ dependencies = [ "serde_json", ] -[[package]] -name = "reth-scroll-consensus" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", -] - -[[package]] -name = "reth-scroll-evm" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "derive_more", - "reth-chainspec", - "reth-consensus", - "reth-ethereum-consensus", - "reth-evm", - "reth-primitives", - "reth-primitives-traits", - "reth-revm", - "reth-scroll-chainspec", - "reth-scroll-consensus", - "reth-scroll-forks", - "reth-scroll-primitives", - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", - "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", - "scroll-alloy-consensus", - "thiserror 2.0.11", - "tracing", -] - [[package]] name = "reth-scroll-forks" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" +version = "1.2.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#1764d96f32cdf51779e876d895abb35c4a6ea780" dependencies = [ "alloy-chains", "alloy-primitives", @@ -4343,46 +3774,29 @@ dependencies = [ [[package]] name = "reth-scroll-primitives" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" +version = "1.2.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#1764d96f32cdf51779e876d895abb35c4a6ea780" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-primitives", "alloy-rlp", - "arbitrary", "bytes", "derive_more", - "modular-bitfield", "once_cell", - "proptest", "rand", "reth-codecs", "reth-primitives-traits", - "reth-zstd-compressors", - "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm-primitives 15.2.0", "scroll-alloy-consensus", "secp256k1", "serde", ] -[[package]] -name = "reth-stages-types" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "alloy-primitives", - "bytes", - "modular-bitfield", - "reth-codecs", - "reth-trie-common", - "serde", -] - [[package]] name = "reth-static-file-types" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" +version = "1.2.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#1764d96f32cdf51779e876d895abb35c4a6ea780" dependencies = [ "alloy-primitives", "derive_more", @@ -4390,145 +3804,20 @@ dependencies = [ "strum 0.26.3", ] -[[package]] -name = "reth-storage-api" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rpc-types-engine", - "auto_impl", - "reth-chainspec", - "reth-db", - "reth-db-api", - "reth-db-models", - "reth-execution-types", - "reth-primitives", - "reth-primitives-traits", - "reth-prune-types", - "reth-stages-types", - "reth-storage-errors", - "reth-trie", - "reth-trie-db", - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", -] - -[[package]] -name = "reth-storage-errors" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "derive_more", - "reth-primitives-traits", - "reth-prune-types", - "reth-static-file-types", - "thiserror 2.0.11", -] - -[[package]] -name = "reth-tracing" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "clap", - "eyre", - "rolling-file", - "tracing", - "tracing-appender", - "tracing-journald", - "tracing-logfmt", - "tracing-subscriber", -] - -[[package]] -name = "reth-trie" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-primitives", - "alloy-rlp", - "alloy-trie", - "auto_impl", - "itertools 0.13.0", - "reth-execution-errors", - "reth-primitives-traits", - "reth-stages-types", - "reth-storage-errors", - "reth-trie-common", - "reth-trie-sparse", - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", - "tracing", -] - [[package]] name = "reth-trie-common" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" +version = "1.2.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#1764d96f32cdf51779e876d895abb35c4a6ea780" dependencies = [ "alloy-consensus", "alloy-primitives", "alloy-rlp", - "alloy-rpc-types-eth", - "alloy-serde", "alloy-trie", - "bytes", "derive_more", "itertools 0.13.0", "nybbles", - "rayon", - "reth-codecs", - "reth-primitives-traits", - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", - "serde", - "serde_with", -] - -[[package]] -name = "reth-trie-db" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "alloy-primitives", - "alloy-rlp", - "derive_more", - "reth-db", - "reth-db-api", - "reth-execution-errors", - "reth-primitives-traits", - "reth-storage-errors", - "reth-trie", - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", - "tracing", -] - -[[package]] -name = "reth-trie-sparse" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "alloy-primitives", - "alloy-rlp", - "reth-execution-errors", "reth-primitives-traits", - "reth-tracing", - "reth-trie-common", - "smallvec", - "thiserror 2.0.11", -] - -[[package]] -name = "reth-zstd-compressors" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" -dependencies = [ - "zstd", + "revm 19.5.0", ] [[package]] @@ -4545,53 +3834,52 @@ dependencies = [ [[package]] name = "revm" version = "19.4.0" -source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade#9155313825bcc38d663bdc840f5231bac8801d93" +source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55#6accb0ba959747d717443954a8bd988efa8f98fc" dependencies = [ "auto_impl", "cfg-if", "dyn-clone", - "revm-interpreter 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", - "revm-precompile 16.0.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm-interpreter 15.1.0", + "revm-precompile 16.0.0", "serde", "serde_json", ] [[package]] name = "revm" -version = "19.4.0" -source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55#6accb0ba959747d717443954a8bd988efa8f98fc" +version = "19.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfc5bef3c95fadf3b6a24a253600348380c169ef285f9780a793bb7090c8990d" dependencies = [ "auto_impl", "cfg-if", "dyn-clone", - "revm-interpreter 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", - "revm-precompile 16.0.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", - "serde", - "serde_json", + "revm-interpreter 15.2.0", + "revm-precompile 16.1.0", ] [[package]] name = "revm-interpreter" version = "15.1.0" -source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade#9155313825bcc38d663bdc840f5231bac8801d93" +source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55#6accb0ba959747d717443954a8bd988efa8f98fc" dependencies = [ - "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm-primitives 15.1.0", "serde", ] [[package]] name = "revm-interpreter" -version = "15.1.0" -source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55#6accb0ba959747d717443954a8bd988efa8f98fc" +version = "15.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7dcab7ef2064057acfc84731205f4bc77f4ec1b35630800b26ff6a185731c5ab" dependencies = [ - "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", - "serde", + "revm-primitives 15.2.0", ] [[package]] name = "revm-precompile" version = "16.0.0" -source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade#9155313825bcc38d663bdc840f5231bac8801d93" +source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55#6accb0ba959747d717443954a8bd988efa8f98fc" dependencies = [ "aurora-engine-modexp", "c-kzg", @@ -4599,7 +3887,7 @@ dependencies = [ "k256", "once_cell", "p256", - "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade)", + "revm-primitives 15.1.0", "ripemd", "secp256k1", "sha2", @@ -4608,18 +3896,16 @@ dependencies = [ [[package]] name = "revm-precompile" -version = "16.0.0" -source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55#6accb0ba959747d717443954a8bd988efa8f98fc" +version = "16.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6caa1a7ff2cc4a09a263fcf9de99151706f323d30f33d519ed329f017a02b046" dependencies = [ "aurora-engine-modexp", - "c-kzg", "cfg-if", "k256", "once_cell", - "p256", - "revm-primitives 15.1.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", + "revm-primitives 15.2.0", "ripemd", - "secp256k1", "sha2", "substrate-bn", ] @@ -4627,7 +3913,7 @@ dependencies = [ [[package]] name = "revm-primitives" version = "15.1.0" -source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fchore%2Fv55-upgrade#9155313825bcc38d663bdc840f5231bac8801d93" +source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55#6accb0ba959747d717443954a8bd988efa8f98fc" dependencies = [ "alloy-eip2930", "alloy-eip7702", @@ -4635,7 +3921,6 @@ dependencies = [ "auto_impl", "bitflags 2.8.0", "bitvec", - "c-kzg", "cfg-if", "dyn-clone", "enumn", @@ -4645,8 +3930,9 @@ dependencies = [ [[package]] name = "revm-primitives" -version = "15.1.0" -source = "git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55#6accb0ba959747d717443954a8bd988efa8f98fc" +version = "15.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0f987564210317706def498421dfba2ae1af64a8edce82c6102758b48133fcb" dependencies = [ "alloy-eip2930", "alloy-eip7702", @@ -4654,6 +3940,7 @@ dependencies = [ "auto_impl", "bitflags 2.8.0", "bitvec", + "c-kzg", "cfg-if", "dyn-clone", "enumn", @@ -4688,15 +3975,14 @@ dependencies = [ [[package]] name = "ring" -version = "0.17.8" +version = "0.17.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" +checksum = "e75ec5e92c4d8aede845126adc388046234541629e76029599ed35a003c7ed24" dependencies = [ "cc", "cfg-if", "getrandom 0.2.15", "libc", - "spin 0.9.8", "untrusted 0.9.0", "windows-sys 0.52.0", ] @@ -4737,7 +4023,7 @@ checksum = "246b40ac189af6c675d124b802e8ef6d5246c53e17367ce9501f8f66a81abb7a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -4762,16 +4048,6 @@ dependencies = [ "syn 1.0.109", ] -[[package]] -name = "roaring" -version = "0.10.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a652edd001c53df0b3f96a36a8dc93fce6866988efc16808235653c6bcac8bf2" -dependencies = [ - "bytemuck", - "byteorder", -] - [[package]] name = "rocksdb" version = "0.23.0" @@ -4782,15 +4058,6 @@ dependencies = [ "librocksdb-sys", ] -[[package]] -name = "rolling-file" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8395b4f860856b740f20a296ea2cd4d823e81a2658cf05ef61be22916026a906" -dependencies = [ - "chrono", -] - [[package]] name = "ruint" version = "1.12.3" @@ -4834,9 +4101,9 @@ checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" [[package]] name = "rustc-hash" -version = "2.1.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7fb8039b3032c191086b10f11f319a6e99e1e82889c5cc6046f515c9db1d497" +checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" [[package]] name = "rustc-hex" @@ -4882,19 +4149,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e" dependencies = [ "log", - "ring 0.17.8", + "ring 0.17.9", "rustls-webpki 0.101.7", "sct", ] [[package]] name = "rustls" -version = "0.23.22" +version = "0.23.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fb9263ab4eb695e42321db096e3b8fbd715a59b154d5c88d82db2175b681ba7" +checksum = "47796c98c480fce5406ef69d1c76378375492c3b0a0de587be0c1d9feb12f395" dependencies = [ "once_cell", - "ring 0.17.8", "rustls-pki-types", "rustls-webpki 0.102.8", "subtle", @@ -4924,9 +4190,6 @@ name = "rustls-pki-types" version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "917ce264624a4b4db1c364dcc35bfca9ded014d0a958cd47ad3e960e988ea51c" -dependencies = [ - "web-time", -] [[package]] name = "rustls-webpki" @@ -4944,7 +4207,7 @@ version = "0.101.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" dependencies = [ - "ring 0.17.8", + "ring 0.17.9", "untrusted 0.9.0", ] @@ -4954,7 +4217,7 @@ version = "0.102.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "64ca1bc8749bd4cf37b5ce386cc146580777b4e8572c7b97baf22c83f444bee9" dependencies = [ - "ring 0.17.8", + "ring 0.17.9", "rustls-pki-types", "untrusted 0.9.0", ] @@ -4983,70 +4246,35 @@ version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6ea1a2d0a644769cc99faa24c3ad26b379b786fe7c36fd3c546254801650e6dd" -[[package]] -name = "sbv" -version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=chore%2Frevm-v55-upgrade#b091fa42885d352f1b04fc24c34de948e727d3ec" -dependencies = [ - "sbv-core", - "sbv-helpers", - "sbv-kv", - "sbv-primitives", - "sbv-trie", -] - -[[package]] -name = "sbv-core" -version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=chore%2Frevm-v55-upgrade#b091fa42885d352f1b04fc24c34de948e727d3ec" -dependencies = [ - "reth-evm", - "reth-evm-ethereum", - "reth-execution-types", - "reth-scroll-evm", - "reth-storage-errors", - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", - "sbv-helpers", - "sbv-kv", - "sbv-primitives", - "sbv-trie", - "serde", - "serde_json", - "thiserror 1.0.69", - "tiny-keccak", -] - [[package]] name = "sbv-helpers" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=chore%2Frevm-v55-upgrade#b091fa42885d352f1b04fc24c34de948e727d3ec" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=chore%2Frevm-v55-upgrade#41fb0bf849ac554aab8cbd0873c96a64ac46e2db" dependencies = [ - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", + "revm 19.4.0", ] [[package]] name = "sbv-kv" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=chore%2Frevm-v55-upgrade#b091fa42885d352f1b04fc24c34de948e727d3ec" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=chore%2Frevm-v55-upgrade#41fb0bf849ac554aab8cbd0873c96a64ac46e2db" dependencies = [ "auto_impl", "hashbrown 0.15.2", - "rustc-hash 2.1.0", + "rustc-hash 2.1.1", ] [[package]] name = "sbv-primitives" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=chore%2Frevm-v55-upgrade#b091fa42885d352f1b04fc24c34de948e727d3ec" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=chore%2Frevm-v55-upgrade#41fb0bf849ac554aab8cbd0873c96a64ac46e2db" dependencies = [ "alloy-consensus", "alloy-eips", + "alloy-network", "alloy-primitives", - "alloy-provider", "alloy-rpc-types-eth", "alloy-serde", - "alloy-transport", - "async-trait", "auto_impl", "itertools 0.14.0", "reth-chainspec", @@ -5054,7 +4282,7 @@ dependencies = [ "reth-primitives-traits", "reth-scroll-chainspec", "reth-scroll-primitives", - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", + "revm 19.4.0", "rkyv", "sbv-helpers", "sbv-kv", @@ -5066,40 +4294,18 @@ dependencies = [ ] [[package]] -name = "sbv-trie" +name = "sbv-utils" version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=chore%2Frevm-v55-upgrade#b091fa42885d352f1b04fc24c34de948e727d3ec" +source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=chore%2Frevm-v55-upgrade#41fb0bf849ac554aab8cbd0873c96a64ac46e2db" dependencies = [ - "alloy-rlp", - "alloy-trie", - "reth-trie", - "reth-trie-sparse", - "revm 19.4.0 (git+https://github.com/scroll-tech/revm?branch=scroll-evm-executor%2Fv55)", - "sbv-helpers", - "sbv-kv", + "alloy-provider", + "alloy-transport", + "async-trait", + "futures", "sbv-primitives", "thiserror 1.0.69", ] -[[package]] -name = "sbv-utils" -version = "2.0.0" -source = "git+https://github.com/scroll-tech/stateless-block-verifier?branch=chore%2Frevm-v55-upgrade#b091fa42885d352f1b04fc24c34de948e727d3ec" -dependencies = [ - "alloy", - "anyhow", - "clap", - "console", - "indicatif", - "rkyv", - "sbv", - "serde", - "serde_json", - "tokio", - "tower 0.5.2", - "url", -] - [[package]] name = "scale-info" version = "2.11.6" @@ -5121,7 +4327,7 @@ dependencies = [ "proc-macro-crate 3.2.0", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -5141,8 +4347,8 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] name = "scroll-alloy-consensus" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" +version = "1.2.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#1764d96f32cdf51779e876d895abb35c4a6ea780" dependencies = [ "alloy-consensus", "alloy-eips", @@ -5159,8 +4365,8 @@ dependencies = [ [[package]] name = "scroll-alloy-network" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" +version = "1.2.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#1764d96f32cdf51779e876d895abb35c4a6ea780" dependencies = [ "alloy-consensus", "alloy-network", @@ -5173,8 +4379,8 @@ dependencies = [ [[package]] name = "scroll-alloy-rpc-types" -version = "1.1.5" -source = "git+https://github.com/scroll-tech/reth?branch=scroll#a337c9777863e3da3ffe9460ab3f0c2fdefc41c7" +version = "1.2.0" +source = "git+https://github.com/scroll-tech/reth?branch=scroll#1764d96f32cdf51779e876d895abb35c4a6ea780" dependencies = [ "alloy-consensus", "alloy-eips", @@ -5225,7 +4431,7 @@ version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" dependencies = [ - "ring 0.17.8", + "ring 0.17.9", "untrusted 0.9.0", ] @@ -5340,14 +4546,14 @@ checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] name = "serde_json" -version = "1.0.138" +version = "1.0.139" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d434192e7da787e94a6ea7e9670b26a036d0ca41e0b7efb2676dd32bae872949" +checksum = "44f86c3acccc9c65b153fe1b85a3be07fe5515274ec9f0653b4a0875731c72a6" dependencies = [ "indexmap 2.7.1", "itoa", @@ -5405,7 +4611,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -5511,9 +4717,9 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.13.2" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" +checksum = "7fcf8323ef1faaee30a44a340193b1ac6814fd9b7b4e88e9d4519a3e4abe1cfd" dependencies = [ "serde", ] @@ -5586,6 +4792,15 @@ dependencies = [ "strum_macros 0.26.4", ] +[[package]] +name = "strum" +version = "0.27.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f64def088c51c9510a8579e3c5d67c65349dcf755e5479ad3d010aa6454e2c32" +dependencies = [ + "strum_macros 0.27.1", +] + [[package]] name = "strum_macros" version = "0.24.3" @@ -5609,7 +4824,20 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.96", + "syn 2.0.98", +] + +[[package]] +name = "strum_macros" +version = "0.27.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c77a8c5abcaf0f9ce05d62342b7d298c346515365c36b673df4ebe3ced01fde8" +dependencies = [ + "heck 0.5.0", + "proc-macro2", + "quote", + "rustversion", + "syn 2.0.98", ] [[package]] @@ -5644,9 +4872,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.96" +version = "2.0.98" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5d0adab1ae378d7f53bdebc67a39f1f151407ef230f0ce2883572f5d8985c80" +checksum = "36147f1a48ae0ec2b5b3bc5b537d267457555a10dc06f3dbc8cb11ba3006d3b1" dependencies = [ "proc-macro2", "quote", @@ -5655,14 +4883,14 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "0.8.19" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b84e4d83a0a6704561302b917a932484e1cae2d8c6354c64be8b7bac1c1fe057" +checksum = "9c2de690018098e367beeb793991c7d4dc7270f42c9d2ac4ccc876c1368ca430" dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -5688,20 +4916,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", -] - -[[package]] -name = "sysinfo" -version = "0.32.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c33cd241af0f2e9e3b5c32163b873b29956890b5342e6745b917ce9d490f4af" -dependencies = [ - "core-foundation-sys", - "libc", - "memchr", - "ntapi", - "windows", + "syn 2.0.98", ] [[package]] @@ -5754,9 +4969,9 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "tempfile" -version = "3.16.0" +version = "3.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38c246215d7d24f48ae091a2902398798e05d978b24315d6efbc00ede9a8bb91" +checksum = "22e5a0acb1f3f55f65cc4a866c361b2fb2a0ff6366785ae6fbb5f85df07ba230" dependencies = [ "cfg-if", "fastrand", @@ -5792,7 +5007,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -5803,7 +5018,7 @@ checksum = "26afc1baea8a989337eeb52b6e72a039780ce45c3edfcc9c5b9d112feeb173c2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -5916,7 +5131,7 @@ checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -5945,7 +5160,7 @@ version = "0.26.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5f6d0975eaace0cf0fcadee4e4aaa5da15b5c079146f2cffb67c113be122bf37" dependencies = [ - "rustls 0.23.22", + "rustls 0.23.23", "tokio", ] @@ -6008,13 +5223,13 @@ dependencies = [ [[package]] name = "toml_edit" -version = "0.22.23" +version = "0.22.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02a8b472d1a3d7c18e2d61a489aee3453fd9031c33e4f55bd533f4a7adca1bee" +checksum = "17b4795ff5edd201c7cd6dca065ae59972ce77d1b80fa0a84d94950ece7d1474" dependencies = [ "indexmap 2.7.1", "toml_datetime", - "winnow 0.7.0", + "winnow 0.7.3", ] [[package]] @@ -6044,10 +5259,8 @@ dependencies = [ "pin-project-lite", "sync_wrapper 1.0.2", "tokio", - "tokio-util", "tower-layer", "tower-service", - "tracing", ] [[package]] @@ -6074,18 +5287,6 @@ dependencies = [ "tracing-core", ] -[[package]] -name = "tracing-appender" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3566e8ce28cc0a3fe42519fc80e6b4c943cc4c8cef275620eb8dac2d3d4e06cf" -dependencies = [ - "crossbeam-channel", - "thiserror 1.0.69", - "time", - "tracing-subscriber", -] - [[package]] name = "tracing-attributes" version = "0.1.28" @@ -6094,7 +5295,7 @@ checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -6117,17 +5318,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "tracing-journald" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc0b4143302cf1022dac868d521e36e8b27691f72c84b3311750d5188ebba657" -dependencies = [ - "libc", - "tracing-core", - "tracing-subscriber", -] - [[package]] name = "tracing-log" version = "0.2.0" @@ -6139,28 +5329,6 @@ dependencies = [ "tracing-core", ] -[[package]] -name = "tracing-logfmt" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b1f47d22deb79c3f59fcf2a1f00f60cbdc05462bf17d1cd356c1fefa3f444bd" -dependencies = [ - "time", - "tracing", - "tracing-core", - "tracing-subscriber", -] - -[[package]] -name = "tracing-serde" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "704b1aeb7be0d0a84fc9828cae51dab5970fee5088f83d1dd7ee6f6246fc6ff1" -dependencies = [ - "serde", - "tracing-core", -] - [[package]] name = "tracing-subscriber" version = "0.3.19" @@ -6171,15 +5339,12 @@ dependencies = [ "nu-ansi-term", "once_cell", "regex", - "serde", - "serde_json", "sharded-slab", "smallvec", "thread_local", "tracing", "tracing-core", "tracing-log", - "tracing-serde", ] [[package]] @@ -6211,9 +5376,9 @@ dependencies = [ [[package]] name = "typenum" -version = "1.17.0" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" +checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" [[package]] name = "ucd-trie" @@ -6241,9 +5406,9 @@ checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" [[package]] name = "unicode-ident" -version = "1.0.16" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a210d160f08b701c8721ba1c726c11662f877ea6b7094007e1ca9a1041945034" +checksum = "00e2473a93778eb0bad35909dff6a10d28e63f792f16ed15e404fca9d5eeedbe" [[package]] name = "unicode-segmentation" @@ -6251,12 +5416,6 @@ version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" -[[package]] -name = "unicode-width" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fc81956842c57dac11422a97c3b8195a1ff727f06e85c84ed2e8aa277c9a0fd" - [[package]] name = "unicode-xid" version = "0.2.6" @@ -6312,9 +5471,9 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "1.12.1" +version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3758f5e68192bb96cc8f9b7e2c2cfdabb435499a28499a42f8f984092adad4b" +checksum = "8c1f41ffb7cf259f1ecc2876861a17e7142e63ead296f671f81f6ae85903e0d6" [[package]] name = "valuable" @@ -6336,9 +5495,9 @@ checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" [[package]] name = "wait-timeout" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6" +checksum = "09ac3b126d3914f9849036f826e054cbabdc8519970b8998ddaf3b5bd3c65f11" dependencies = [ "libc", ] @@ -6389,7 +5548,7 @@ dependencies = [ "log", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "wasm-bindgen-shared", ] @@ -6424,7 +5583,7 @@ checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -6477,23 +5636,13 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "web-time" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb" -dependencies = [ - "js-sys", - "wasm-bindgen", -] - [[package]] name = "webpki" version = "0.22.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ed63aea5ce73d0ff405984102c42de94fc55a6b75765d621c65262469b3c9b53" dependencies = [ - "ring 0.17.8", + "ring 0.17.9", "untrusted 0.9.0", ] @@ -6512,15 +5661,6 @@ version = "0.25.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" -[[package]] -name = "webpki-roots" -version = "0.26.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d642ff16b7e79272ae451b7322067cdc17cadf68c23264be9d94a32319efe7e" -dependencies = [ - "rustls-pki-types", -] - [[package]] name = "winapi" version = "0.3.9" @@ -6543,16 +5683,6 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" -[[package]] -name = "windows" -version = "0.57.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12342cb4d8e3b046f3d80effd474a7a02447231330ef77d71daa6fbc40681143" -dependencies = [ - "windows-core 0.57.0", - "windows-targets 0.52.6", -] - [[package]] name = "windows-core" version = "0.52.0" @@ -6562,60 +5692,17 @@ dependencies = [ "windows-targets 0.52.6", ] -[[package]] -name = "windows-core" -version = "0.57.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2ed2439a290666cd67ecce2b0ffaad89c2a56b976b736e6ece670297897832d" -dependencies = [ - "windows-implement", - "windows-interface", - "windows-result 0.1.2", - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-implement" -version = "0.57.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9107ddc059d5b6fbfbffdfa7a7fe3e22a226def0b2608f72e9d552763d3e1ad7" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.96", -] - -[[package]] -name = "windows-interface" -version = "0.57.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29bee4b38ea3cde66011baa44dba677c432a78593e202392d1e9070cf2a7fca7" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.96", -] - [[package]] name = "windows-registry" version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e400001bb720a623c1c69032f8e3e4cf09984deec740f007dd2b03ec864804b0" dependencies = [ - "windows-result 0.2.0", + "windows-result", "windows-strings", "windows-targets 0.52.6", ] -[[package]] -name = "windows-result" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e383302e8ec8515204254685643de10811af0ed97ea37210dc26fb0032647f8" -dependencies = [ - "windows-targets 0.52.6", -] - [[package]] name = "windows-result" version = "0.2.0" @@ -6631,7 +5718,7 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10" dependencies = [ - "windows-result 0.2.0", + "windows-result", "windows-targets 0.52.6", ] @@ -6794,18 +5881,9 @@ dependencies = [ [[package]] name = "winnow" -version = "0.6.26" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e90edd2ac1aa278a5c4599b1d89cf03074b610800f866d4026dc199d7929a28" -dependencies = [ - "memchr", -] - -[[package]] -name = "winnow" -version = "0.7.0" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e49d2d35d3fad69b39b94139037ecfb4f359f08958b9c11e7315ce770462419" +checksum = "0e7f4ea97f6f78012141bcdb6a216b2609f0979ada50b20ca5b52dde2eac2bb1" dependencies = [ "memchr", ] @@ -6889,7 +5967,7 @@ checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "synstructure", ] @@ -6911,7 +5989,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -6931,7 +6009,7 @@ checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "synstructure", ] @@ -6952,7 +6030,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -6974,25 +6052,7 @@ checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", -] - -[[package]] -name = "zstd" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcf2b778a664581e31e389454a7072dab1647606d44f7feea22cd5abb9c9f3f9" -dependencies = [ - "zstd-safe", -] - -[[package]] -name = "zstd-safe" -version = "7.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54a3ab4db68cea366acc5c897c7b4d4d1b8994a9cd6e6f841f8964566a419059" -dependencies = [ - "zstd-sys", + "syn 2.0.98", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 835bfde..b12bf91 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -39,9 +39,9 @@ openvm = ["dep:sbv-utils", "dep:sbv-primitives"] [patch.crates-io] # patched add rkyv support & MSRV 1.77 -alloy-primitives = { git = "https://github.com/scroll-tech/alloy-core", branch = "v0.8.18" } -revm = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/chore/v55-upgrade" } -revm-interpreter = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/chore/v55-upgrade" } -revm-precompile = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/chore/v55-upgrade" } -revm-primitives = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/chore/v55-upgrade" } +alloy-primitives = { git = "https://github.com/scroll-tech/alloy-core", branch = "v0.8.21" } +revm = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/v55" } +revm-interpreter = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/v55" } +revm-precompile = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/v55" } +revm-primitives = { git = "https://github.com/scroll-tech/revm", branch = "scroll-evm-executor/v55" } ruint = { git = "https://github.com/scroll-tech/uint.git", branch = "v1.12.3" } From eed375df2d310a3e794280caba073efded99642c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=96mer=20Faruk=20Irmak?= Date: Thu, 20 Feb 2025 15:01:49 +0300 Subject: [PATCH 42/42] witness dumper --- Cargo.lock | 226 ++++++++++++++++++++++++++++++++++++++++++++++ Cargo.toml | 7 ++ src/prover/mod.rs | 21 ++--- 3 files changed, 241 insertions(+), 13 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index d81f4be..c50c094 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -32,6 +32,29 @@ version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" +[[package]] +name = "alloy" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d2cc5aeb8dfa1e451a49fac87bc4b86c5de40ebea153ed88e83eb92b8151e74" +dependencies = [ + "alloy-consensus", + "alloy-contract", + "alloy-core", + "alloy-eips", + "alloy-genesis", + "alloy-json-rpc", + "alloy-network", + "alloy-provider", + "alloy-rpc-client", + "alloy-rpc-types", + "alloy-serde", + "alloy-signer", + "alloy-signer-local", + "alloy-transport", + "alloy-transport-http", +] + [[package]] name = "alloy-chains" version = "0.1.62" @@ -76,6 +99,56 @@ dependencies = [ "serde", ] +[[package]] +name = "alloy-contract" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee6180fb232becdea70fad57c63b6967f01f74ab9595671b870f504116dd29de" +dependencies = [ + "alloy-dyn-abi", + "alloy-json-abi", + "alloy-network", + "alloy-network-primitives", + "alloy-primitives", + "alloy-provider", + "alloy-rpc-types-eth", + "alloy-sol-types", + "alloy-transport", + "futures", + "futures-util", + "thiserror 2.0.11", +] + +[[package]] +name = "alloy-core" +version = "0.8.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "482f377cebceed4bb1fb5e7970f0805e2ab123d06701be9351b67ed6341e74aa" +dependencies = [ + "alloy-dyn-abi", + "alloy-json-abi", + "alloy-primitives", + "alloy-rlp", + "alloy-sol-types", +] + +[[package]] +name = "alloy-dyn-abi" +version = "0.8.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "555896f0b8578adb522b1453b6e6cc6704c3027bd0af20058befdde992cee8e9" +dependencies = [ + "alloy-json-abi", + "alloy-primitives", + "alloy-sol-type-parser", + "alloy-sol-types", + "const-hex", + "itoa", + "serde", + "serde_json", + "winnow 0.7.3", +] + [[package]] name = "alloy-eip2124" version = "0.1.0" @@ -146,6 +219,18 @@ dependencies = [ "serde", ] +[[package]] +name = "alloy-json-abi" +version = "0.8.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4012581681b186ba0882007ed873987cc37f86b1b488fe6b91d5efd0b585dc41" +dependencies = [ + "alloy-primitives", + "alloy-sol-type-parser", + "serde", + "serde_json", +] + [[package]] name = "alloy-json-rpc" version = "0.11.1" @@ -242,6 +327,7 @@ dependencies = [ "alloy-rpc-types-eth", "alloy-sol-types", "alloy-transport", + "alloy-transport-http", "async-stream", "async-trait", "auto_impl", @@ -251,11 +337,13 @@ dependencies = [ "lru", "parking_lot 0.12.3", "pin-project", + "reqwest 0.12.12", "serde", "serde_json", "thiserror 2.0.11", "tokio", "tracing", + "url", "wasmtimer", ] @@ -293,15 +381,29 @@ dependencies = [ "alloy-transport-http", "futures", "pin-project", + "reqwest 0.12.12", "serde", "serde_json", "tokio", "tokio-stream", "tower 0.5.2", "tracing", + "url", "wasmtimer", ] +[[package]] +name = "alloy-rpc-types" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f18e68a3882f372e045ddc89eb455469347767d17878ca492cfbac81e71a111" +dependencies = [ + "alloy-primitives", + "alloy-rpc-types-eth", + "alloy-serde", + "serde", +] + [[package]] name = "alloy-rpc-types-any" version = "0.11.1" @@ -359,6 +461,22 @@ dependencies = [ "thiserror 2.0.11", ] +[[package]] +name = "alloy-signer-local" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fe8f78cd6b7501c7e813a1eb4a087b72d23af51f5bb66d4e948dc840bdd207d8" +dependencies = [ + "alloy-consensus", + "alloy-network", + "alloy-primitives", + "alloy-signer", + "async-trait", + "k256", + "rand", + "thiserror 2.0.11", +] + [[package]] name = "alloy-sol-macro" version = "0.8.21" @@ -379,6 +497,7 @@ version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c6b7984d7e085dec382d2c5ef022b533fcdb1fe6129200af30ebf5afddb6a361" dependencies = [ + "alloy-json-abi", "alloy-sol-macro-input", "const-hex", "heck 0.5.0", @@ -397,24 +516,38 @@ version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "33d6a9fc4ed1a3c70bdb2357bec3924551c1a59f24e5a04a74472c755b37f87d" dependencies = [ + "alloy-json-abi", "const-hex", "dunce", "heck 0.5.0", "proc-macro2", "quote", + "serde_json", "syn 2.0.98", "syn-solidity", ] +[[package]] +name = "alloy-sol-type-parser" +version = "0.8.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b1b3e9a48a6dd7bb052a111c8d93b5afc7956ed5e2cb4177793dc63bb1d2a36" +dependencies = [ + "serde", + "winnow 0.7.3", +] + [[package]] name = "alloy-sol-types" version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6044800da35c38118fd4b98e18306bd3b91af5dedeb54c1b768cf1b4fb68f549" dependencies = [ + "alloy-json-abi", "alloy-primitives", "alloy-sol-macro", "const-hex", + "serde", ] [[package]] @@ -442,7 +575,12 @@ version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "20819c4cb978fb39ce6ac31991ba90f386d595f922f42ef888b4a18be190713e" dependencies = [ + "alloy-json-rpc", "alloy-transport", + "reqwest 0.12.12", + "serde_json", + "tower 0.5.2", + "tracing", "url", ] @@ -1036,6 +1174,12 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +[[package]] +name = "cfg_aliases" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" + [[package]] name = "chrono" version = "0.4.39" @@ -2150,6 +2294,7 @@ dependencies = [ "tokio", "tokio-rustls 0.26.1", "tower-service", + "webpki-roots 0.26.8", ] [[package]] @@ -3331,6 +3476,58 @@ version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" +[[package]] +name = "quinn" +version = "0.11.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62e96808277ec6f97351a2380e6c25114bc9e67037775464979f3037c92d05ef" +dependencies = [ + "bytes", + "pin-project-lite", + "quinn-proto", + "quinn-udp", + "rustc-hash 2.1.1", + "rustls 0.23.23", + "socket2", + "thiserror 2.0.11", + "tokio", + "tracing", +] + +[[package]] +name = "quinn-proto" +version = "0.11.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2fe5ef3495d7d2e377ff17b1a8ce2ee2ec2a18cde8b6ad6619d65d0701c135d" +dependencies = [ + "bytes", + "getrandom 0.2.15", + "rand", + "ring 0.17.9", + "rustc-hash 2.1.1", + "rustls 0.23.23", + "rustls-pki-types", + "slab", + "thiserror 2.0.11", + "tinyvec", + "tracing", + "web-time", +] + +[[package]] +name = "quinn-udp" +version = "0.5.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e46f3055866785f6b92bc6164b76be02ca8f2eb4b002c0354b28cf4c119e5944" +dependencies = [ + "cfg_aliases", + "libc", + "once_cell", + "socket2", + "tracing", + "windows-sys 0.59.0", +] + [[package]] name = "quote" version = "1.0.38" @@ -3555,7 +3752,10 @@ dependencies = [ "once_cell", "percent-encoding", "pin-project-lite", + "quinn", + "rustls 0.23.23", "rustls-pemfile 2.2.0", + "rustls-pki-types", "serde", "serde_json", "serde_urlencoded", @@ -3563,6 +3763,7 @@ dependencies = [ "system-configuration 0.6.1", "tokio", "tokio-native-tls", + "tokio-rustls 0.26.1", "tokio-util", "tower 0.5.2", "tower-service", @@ -3570,6 +3771,7 @@ dependencies = [ "wasm-bindgen", "wasm-bindgen-futures", "web-sys", + "webpki-roots 0.26.8", "windows-registry", ] @@ -4161,6 +4363,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "47796c98c480fce5406ef69d1c76378375492c3b0a0de587be0c1d9feb12f395" dependencies = [ "once_cell", + "ring 0.17.9", "rustls-pki-types", "rustls-webpki 0.102.8", "subtle", @@ -4190,6 +4393,9 @@ name = "rustls-pki-types" version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "917ce264624a4b4db1c364dcc35bfca9ded014d0a958cd47ad3e960e988ea51c" +dependencies = [ + "web-time", +] [[package]] name = "rustls-webpki" @@ -4398,6 +4604,7 @@ dependencies = [ name = "scroll-proving-sdk" version = "0.1.0" dependencies = [ + "alloy", "anyhow", "async-trait", "axum", @@ -5636,6 +5843,16 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "web-time" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + [[package]] name = "webpki" version = "0.22.4" @@ -5661,6 +5878,15 @@ version = "0.25.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" +[[package]] +name = "webpki-roots" +version = "0.26.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2210b291f7ea53617fbafcc4939f10914214ec15aace5ba62293a668f322c5c9" +dependencies = [ + "rustls-pki-types", +] + [[package]] name = "winapi" version = "0.3.9" diff --git a/Cargo.toml b/Cargo.toml index b12bf91..2a006a6 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -4,6 +4,13 @@ version = "0.1.0" edition = "2021" [dependencies] +alloy = { version = "0.11", features = [ + "provider-http", + "transport-http", + "reqwest", + "reqwest-rustls-tls", + "json-rpc", +] } anyhow = "1.0" log = "0.4" serde = { version = "1.0.198", features = ["derive"] } diff --git a/src/prover/mod.rs b/src/prover/mod.rs index dd28ddc..a7d317d 100644 --- a/src/prover/mod.rs +++ b/src/prover/mod.rs @@ -381,6 +381,8 @@ where &self, hash: H256, ) -> anyhow::Result { + use sbv_utils::rpc::ProviderExt; + let client = self.l2geth_client.as_ref().unwrap(); let block = client .provider @@ -388,19 +390,12 @@ where .await? .ok_or_else(|| anyhow::anyhow!("Block not found"))?; let block_num = block.number.expect("block hash without number").as_u64(); - let cmd = sbv_utils::commands::witness::dump::DumpWitnessCommand { - rpc: client.provider.provider().url().clone(), - block: block_num, - ancestors: 1, - out_dir: std::env::temp_dir(), // we won't write to disk - json: false, - rkyv: false, - max_concurrency: 10, - max_retry: 10, - backoff: 100, - cups: 100, - }; - cmd.run().await + let provider = + alloy::providers::ProviderBuilder::<_, _, sbv_primitives::Network>::default() + .on_http(client.provider.provider().url().clone()); + + let witness = provider.dump_block_witness(block_num.into()).await?; + witness.ok_or_else(|| anyhow::anyhow!("Failed to dump block witness")) } }