From 9204fee7843a83b8130d4f28838ae26076155984 Mon Sep 17 00:00:00 2001 From: dwiekawki Date: Fri, 10 Jan 2025 19:15:51 +0100 Subject: [PATCH 01/22] feat(L2): add gateway client --- examples/call.rs | 3 +- examples/state.rs | 3 +- src/bin/beerus.rs | 2 +- src/client.rs | 11 +++- src/config.rs | 6 ++ src/feeder.rs | 154 ++++++++++++++++++++++++++++++++++++++++++++++ src/lib.rs | 1 + 7 files changed, 175 insertions(+), 5 deletions(-) create mode 100644 src/feeder.rs diff --git a/examples/call.rs b/examples/call.rs index 0935c325..4a6f5658 100644 --- a/examples/call.rs +++ b/examples/call.rs @@ -14,6 +14,7 @@ async fn main() -> Result<()> { ethereum_rpc: format!( "https://eth-mainnet.g.alchemy.com/v2/{api_key}" ), + gateway_url: "https://alpha-mainnet.starknet.io".to_owned(), starknet_rpc: format!( "https://starknet-mainnet.g.alchemy.com/starknet/version/rpc/v0_7/{api_key}" ), @@ -33,7 +34,7 @@ async fn main() -> Result<()> { calldata: vec![], }; - let state = beerus.get_state().await?; + let state = beerus.get_l1_state().await?; let res = beerus.execute(calldata, state)?; println!("{:#?}", res); diff --git a/examples/state.rs b/examples/state.rs index bf1ebcaa..5be82f98 100644 --- a/examples/state.rs +++ b/examples/state.rs @@ -13,6 +13,7 @@ async fn main() -> Result<()> { ethereum_rpc: format!( "https://eth-mainnet.g.alchemy.com/v2/{api_key}" ), + gateway_url: "https://alpha-mainnet.starknet.io".to_owned(), starknet_rpc: format!( "https://starknet-mainnet.g.alchemy.com/starknet/version/rpc/v0_7/{api_key}" ), @@ -22,7 +23,7 @@ async fn main() -> Result<()> { let http = Http::new(); let beerus = Client::new(&config, http).await?; - let state = beerus.get_state().await?; + let state = beerus.get_l1_state().await?; tracing::info!("{state:#?}"); Ok(()) diff --git a/src/bin/beerus.rs b/src/bin/beerus.rs index 127263e3..779a7cb0 100644 --- a/src/bin/beerus.rs +++ b/src/bin/beerus.rs @@ -17,7 +17,7 @@ async fn main() -> eyre::Result<()> { let http = Http::new(); let beerus = beerus::client::Client::new(&config.client, http).await?; - let state = beerus.get_state().await?; + let state = beerus.get_l1_state().await?; tracing::info!(?state, "initialized"); let state = Arc::new(RwLock::new(state)); diff --git a/src/client.rs b/src/client.rs index 48c77a38..35e90dbf 100644 --- a/src/client.rs +++ b/src/client.rs @@ -2,6 +2,7 @@ use eyre::{Context, Result}; use crate::config::{check_chain_id, Config}; use crate::eth::{EthereumClient, Helios}; +use crate::feeder::GatewayClient; use crate::gen::client::Client as StarknetClient; use crate::gen::{gen, Felt, FunctionCall, Rpc}; @@ -109,6 +110,7 @@ pub struct Client< > { starknet: StarknetClient, ethereum: EthereumClient, + gateway: GatewayClient, http: T, } @@ -128,7 +130,8 @@ impl< let network = check_chain_id(&config.ethereum_rpc, &config.starknet_rpc).await?; let ethereum = EthereumClient::new(config, network).await?; - Ok(Self { starknet, ethereum, http }) + let gateway = GatewayClient::new(&config.gateway_url)?; + Ok(Self { starknet, ethereum, gateway, http }) } pub fn ethereum(&self) -> &Helios { @@ -158,7 +161,7 @@ impl< .collect() } - pub async fn get_state(&self) -> Result { + pub async fn get_l1_state(&self) -> Result { let (block_number, block_hash, state_root) = self .ethereum .starknet_state() @@ -171,6 +174,10 @@ impl< root: as_felt(state_root.as_bytes())?, }) } + + pub async fn get_state(&self) -> Result { + self.gateway.get_state().await + } } fn as_felt(bytes: &[u8]) -> Result { diff --git a/src/config.rs b/src/config.rs index 94b14af0..88f64bf0 100644 --- a/src/config.rs +++ b/src/config.rs @@ -37,6 +37,8 @@ pub struct Config { #[validate(url)] pub ethereum_rpc: String, #[validate(url)] + pub gateway_url: String, + #[validate(url)] pub starknet_rpc: String, #[cfg(not(target_arch = "wasm32"))] #[serde(default = "default_data_dir")] @@ -72,6 +74,8 @@ impl ServerConfig { client: Config { ethereum_rpc: std::env::var("ETHEREUM_RPC") .context("ETHEREUM_RPC env var missing")?, + gateway_url: std::env::var("GATEWAY_URL") + .context("GATEWAY_URL is missing")?, starknet_rpc: std::env::var("STARKNET_RPC") .context("STARKNET_RPC env var missing")?, #[cfg(not(target_arch = "wasm32"))] @@ -195,6 +199,7 @@ mod tests { let config = ServerConfig { client: Config { ethereum_rpc: "foo".to_string(), + gateway_url: "baz".to_string(), starknet_rpc: "bar".to_string(), data_dir: Default::default(), }, @@ -342,6 +347,7 @@ mod tests { let config = ServerConfig { client: Config { ethereum_rpc: "foo".to_string(), + gateway_url: "baz".to_string(), starknet_rpc: "bar".to_string(), data_dir: Default::default(), }, diff --git a/src/feeder.rs b/src/feeder.rs new file mode 100644 index 00000000..4297a031 --- /dev/null +++ b/src/feeder.rs @@ -0,0 +1,154 @@ +use eyre::{Context, OptionExt, Result}; + +use crate::{client::State, gen::Felt}; + +pub struct GatewayClient { + url: String, + client: reqwest::Client, +} + +impl GatewayClient { + pub fn new(url: &str) -> Result { + if url.ends_with('/') { + eyre::bail!("Gateway URL must not end with '/'."); + } + Ok(Self { url: url.to_owned(), client: reqwest::Client::new() }) + } + + pub async fn get_pubkey(&self, block_hash: &str) -> Result { + let url = format!( + "{}/feeder_gateway/get_public_key?blockHash={}", + self.url, block_hash + ); + let hex: String = self + .client + .get(&url) + .send() + .await + .context("failed to send gateway request")? + .text() + .await + .context("failed to receive gateway response")?; + Ok(hex) + } + + pub async fn get_signature( + &self, + block_hash: &str, + ) -> Result<(String, String)> { + let url = format!( + "{}/feeder_gateway/get_signature?blockHash={}", + self.url, block_hash + ); + let json: serde_json::Value = self + .client + .get(&url) + .send() + .await + .context("failed to send gateway request")? + .json() + .await + .context("failed to receive gateway response")?; + + let hash = json["block_hash"] + .as_str() + .ok_or_eyre("gateway: invalid block hash")?; + if hash != block_hash { + eyre::bail!("gateway: invalid block hash"); + } + + let signature = json["signature"] + .as_array() + .ok_or_eyre("gateway: invalid signature")?; + if signature.len() != 2 { + eyre::bail!("gateway: invalid signature"); + } + + let r = signature[0] + .as_str() + .map(ToOwned::to_owned) + .ok_or_eyre("gateway: invalid signature")?; + let s = signature[1] + .as_str() + .map(ToOwned::to_owned) + .ok_or_eyre("gateway: invalid signature")?; + Ok((r, s)) + } + + pub async fn get_state(&self) -> Result { + let url = + format!("{}/feeder_gateway/get_block?blockNumber=latest", self.url); + let json: serde_json::Value = self + .client + .get(&url) + .send() + .await + .context("failed to send gateway request")? + .json() + .await + .context("failed to receive gateway response")?; + + if json["status"].as_str() != Some("ACCEPTED_ON_L2") { + eyre::bail!("gateway: invalid block status"); + } + + let block_number: u64 = json["block_number"] + .as_u64() + .ok_or_eyre("gateway: fetching block_number failed")?; + let block_hash = json["block_hash"] + .as_str() + .map(ToOwned::to_owned) + .ok_or_eyre("gateway: fetching block_hash failed")?; + let root = json["state_root"] + .as_str() + .map(ToOwned::to_owned) + .ok_or_eyre("gateway: fetching state_root failed")?; + Ok(State { + block_number, + block_hash: Felt::try_new(&block_hash)?, + root: Felt::try_new(&root)?, + }) + } +} + +#[cfg(test)] +mod tests { + use wiremock::{ + matchers::{method, path, query_param}, + Mock, MockServer, ResponseTemplate, + }; + + use super::*; + + #[tokio::test] + async fn test_ok() -> Result<()> { + const BLOCK_NUMBER: u64 = 1056427; + const BLOCK_HASH: &str = + "0x7c7b366f1b31a556ace49e1affe3b4ed3cfb5aa328b85307655ea70dadd0cc6"; + const STATE_ROOT: &str = + "0x33d912445ba4f73ce6d910f3952e722aef1c55ee81278b3039b50243278f561"; + + let mock = MockServer::start().await; + Mock::given(method("GET")) + .and(path("/feeder_gateway/get_block")) + .and(query_param("blockNumber", "latest")) + .respond_with(ResponseTemplate::new(200).set_body_json( + serde_json::json!({ + "block_number": BLOCK_NUMBER, + "block_hash": BLOCK_HASH, + "state_root": STATE_ROOT, + "status": "ACCEPTED_ON_L2" + }), + )) + .mount(&mock) + .await; + + let gateway = GatewayClient::new(mock.uri().as_str())?; + let state = gateway.get_state().await?; + + assert_eq!(state.root.as_ref(), STATE_ROOT); + assert_eq!(state.block_number, BLOCK_NUMBER); + assert_eq!(state.block_hash.as_ref(), BLOCK_HASH); + Ok(()) + } +} diff --git a/src/lib.rs b/src/lib.rs index 9230fc91..68a087e7 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -2,6 +2,7 @@ pub mod client; pub mod config; pub mod eth; pub mod exe; +pub mod feeder; #[cfg(not(tarpaulin_include))] // exclude from code-coverage report pub mod gen; From e40743daa9b3ba69d445cdd29aebe13b70834c46 Mon Sep 17 00:00:00 2001 From: dwiekawki Date: Fri, 10 Jan 2025 21:41:55 +0100 Subject: [PATCH 02/22] feat(L2): remove ethereum client & helios --- Cargo.lock | 1582 ++++++--------------------------------------- Cargo.toml | 14 +- examples/call.rs | 6 +- examples/state.rs | 6 +- src/bin/beerus.rs | 2 +- src/client.rs | 32 +- src/config.rs | 205 +----- src/eth.rs | 239 ------- src/lib.rs | 1 - 9 files changed, 227 insertions(+), 1860 deletions(-) delete mode 100644 src/eth.rs diff --git a/Cargo.lock b/Cargo.lock index 4cf27146..60152210 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1,6 +1,6 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. -version = 3 +version = 4 [[package]] name = "Inflector" @@ -45,7 +45,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" dependencies = [ "cfg-if", - "getrandom 0.2.15", + "getrandom", "once_cell", "version_check", "zerocopy", @@ -81,24 +81,6 @@ version = "0.2.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" -[[package]] -name = "alloy-primitives" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0628ec0ba5b98b3370bb6be17b12f23bfce8ee4ad83823325a20546d9b03b78" -dependencies = [ - "alloy-rlp", - "bytes", - "cfg-if", - "const-hex", - "derive_more 0.99.18", - "hex-literal", - "itoa", - "ruint", - "serde", - "tiny-keccak 2.0.2", -] - [[package]] name = "alloy-primitives" version = "0.7.7" @@ -113,7 +95,7 @@ dependencies = [ "itoa", "ruint", "serde", - "tiny-keccak 2.0.2", + "tiny-keccak", ] [[package]] @@ -130,29 +112,7 @@ dependencies = [ "itoa", "paste", "ruint", - "tiny-keccak 2.0.2", -] - -[[package]] -name = "alloy-rlp" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26154390b1d205a4a7ac7352aa2eb4f81f391399d4e2f546fb81a2f8bb383f62" -dependencies = [ - "alloy-rlp-derive", - "arrayvec 0.7.6", - "bytes", -] - -[[package]] -name = "alloy-rlp-derive" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d0f2d905ebd295e7effec65e5f6868d153936130ae718352771de3e7d03c75c" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.79", + "tiny-keccak", ] [[package]] @@ -356,15 +316,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" dependencies = [ "num-traits 0.2.19", - "rand 0.8.5", + "rand", ] -[[package]] -name = "arrayvec" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" - [[package]] name = "arrayvec" version = "0.7.6" @@ -412,15 +366,6 @@ dependencies = [ "zstd-safe 7.2.1", ] -[[package]] -name = "async-lock" -version = "2.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "287272293e9d8c41773cec55e365490fe034813a2f172f502d6ddcf75b2f582b" -dependencies = [ - "event-listener", -] - [[package]] name = "async-trait" version = "0.1.83" @@ -443,15 +388,6 @@ dependencies = [ "rustc_version", ] -[[package]] -name = "atomic" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d818003e740b63afc82337e3160717f4f63078720a810b7b903e70a5d1d2994" -dependencies = [ - "bytemuck", -] - [[package]] name = "atomic-waker" version = "1.1.2" @@ -626,7 +562,7 @@ dependencies = [ "async-trait", "axum", "base64 0.22.1", - "bitvec 1.0.1", + "bitvec", "blockifier 0.8.0-rc.2", "cairo-lang-starknet-classes 2.7.0", "chrono", @@ -635,7 +571,6 @@ dependencies = [ "eyre", "flate2", "gloo-timers 0.3.0", - "helios", "hex", "iamgroot", "katana-core", @@ -692,29 +627,6 @@ dependencies = [ "serde", ] -[[package]] -name = "bindgen" -version = "0.66.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2b84e06fc203107bfbad243f4aba2af864eb7db3b1cf46ea0a023b0b433d2a7" -dependencies = [ - "bitflags 2.6.0", - "cexpr", - "clang-sys", - "lazy_static", - "lazycell", - "log", - "peeking_take_while", - "prettyplease", - "proc-macro2", - "quote", - "regex", - "rustc-hash 1.1.0", - "shlex", - "syn 2.0.79", - "which 4.4.2", -] - [[package]] name = "bindgen" version = "0.68.1" @@ -784,19 +696,6 @@ name = "bitflags" version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" -dependencies = [ - "serde", -] - -[[package]] -name = "bitvec" -version = "0.17.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41262f11d771fd4a61aa3ce019fca363b4b6c282fca9da2a31186d3965a47a5c" -dependencies = [ - "either", - "radium 0.3.0", -] [[package]] name = "bitvec" @@ -805,8 +704,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" dependencies = [ "funty", - "radium 0.7.0", - "serde", + "radium", "tap", "wyz", ] @@ -856,11 +754,11 @@ dependencies = [ "num-traits 0.2.19", "once_cell", "phf", - "rand 0.8.5", + "rand", "rstest", "serde", "serde_json", - "sha2 0.10.8", + "sha2", "sha3", "starknet-types-core", "starknet_api 0.13.0-rc.1 (registry+https://github.com/rust-lang/crates.io-index)", @@ -900,7 +798,7 @@ dependencies = [ "phf", "serde", "serde_json", - "sha2 0.10.8", + "sha2", "sha3", "starknet-types-core", "starknet_api 0.13.0-rc.1 (git+https://github.com/sergey-melnychuk/sequencer.git?tag=beerus-wasm-2024-09-22)", @@ -909,18 +807,6 @@ dependencies = [ "thiserror", ] -[[package]] -name = "blst" -version = "0.3.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4378725facc195f1a538864863f6de233b500a8862747e7f165078a419d5e874" -dependencies = [ - "cc", - "glob", - "threadpool", - "zeroize", -] - [[package]] name = "brotli" version = "6.0.0" @@ -948,7 +834,7 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bf88ba1141d185c399bee5288d850d63b8369520c1eafc32a0430b5b6c287bf4" dependencies = [ - "sha2 0.10.8", + "sha2", "tinyvec", ] @@ -969,12 +855,6 @@ version = "3.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" -[[package]] -name = "byte-slice-cast" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0a5e3906bcbf133e33c1d4d95afc664ad37fbdb9f6568d8043e7ea8c27d93d3" - [[package]] name = "byte-slice-cast" version = "1.2.2" @@ -1029,21 +909,6 @@ dependencies = [ "pkg-config", ] -[[package]] -name = "c-kzg" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac926d808fb72fe09ebf471a091d6d72918876ccf0b4989766093d2d0d24a0ef" -dependencies = [ - "bindgen 0.66.1", - "blst", - "cc", - "glob", - "hex", - "libc", - "serde", -] - [[package]] name = "cached" version = "0.44.0" @@ -1102,7 +967,7 @@ dependencies = [ "indoc", "num-bigint", "num-traits 0.2.19", - "parity-scale-codec 3.6.12", + "parity-scale-codec", "serde", ] @@ -1115,7 +980,7 @@ dependencies = [ "indoc", "num-bigint", "num-traits 0.2.19", - "parity-scale-codec 3.6.12", + "parity-scale-codec", "serde", ] @@ -1128,7 +993,7 @@ dependencies = [ "indoc", "num-bigint", "num-traits 0.2.19", - "parity-scale-codec 3.6.12", + "parity-scale-codec", "serde", ] @@ -1142,7 +1007,7 @@ dependencies = [ "indoc", "num-bigint", "num-traits 0.2.19", - "parity-scale-codec 3.6.12", + "parity-scale-codec", "serde", ] @@ -1155,7 +1020,7 @@ dependencies = [ "indoc", "num-bigint", "num-traits 0.2.19", - "parity-scale-codec 3.6.12", + "parity-scale-codec", "serde", ] @@ -1619,8 +1484,8 @@ dependencies = [ "num-bigint", "num-integer", "num-traits 0.2.19", - "rand 0.8.5", - "sha2 0.10.8", + "rand", + "sha2", "smol_str", "starknet-types-core", "thiserror", @@ -1650,8 +1515,8 @@ dependencies = [ "num-bigint", "num-integer", "num-traits 0.2.19", - "rand 0.8.5", - "sha2 0.10.8", + "rand", + "sha2", "smol_str", "starknet-types-core", "thiserror", @@ -2487,7 +2352,7 @@ dependencies = [ "itertools 0.12.1", "num-bigint", "num-traits 0.2.19", - "parity-scale-codec 3.6.12", + "parity-scale-codec", "schemars", "serde", ] @@ -2519,7 +2384,7 @@ dependencies = [ "log", "num-bigint", "num-traits 0.2.19", - "parity-scale-codec 3.6.12", + "parity-scale-codec", "schemars", "serde", "time", @@ -2547,7 +2412,7 @@ checksum = "58363ad8065ed891e3b14a8191b707677c7c7cb5b9d10030822506786d8d8108" dependencies = [ "anyhow", "bincode", - "bitvec 1.0.1", + "bitvec", "generic-array", "hashbrown 0.14.5", "hex", @@ -2558,11 +2423,11 @@ dependencies = [ "num-integer", "num-prime", "num-traits 0.2.19", - "rand 0.8.5", + "rand", "rust_decimal", "serde", "serde_json", - "sha2 0.10.8", + "sha2", "sha3", "starknet-crypto 0.6.2", "starknet-types-core", @@ -2577,7 +2442,7 @@ source = "git+https://github.com/sergey-melnychuk/cairo-vm?tag=beerus-wasm-2024- dependencies = [ "anyhow", "bincode", - "bitvec 1.0.1", + "bitvec", "generic-array", "hashbrown 0.14.5", "hex", @@ -2589,11 +2454,11 @@ dependencies = [ "num-prime", "num-traits 0.2.19", "parking_lot 0.12.3", - "rand 0.8.5", + "rand", "rust_decimal", "serde", "serde_json", - "sha2 0.10.8", + "sha2", "sha3", "starknet-crypto 0.6.2", "starknet-types-core", @@ -2744,31 +2609,6 @@ version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97" -[[package]] -name = "client" -version = "0.5.5" -source = "git+https://github.com/sergey-melnychuk/helios?branch=beerus-wasm#762a5508a2984b4c82d257b17fbfdc2bdf4fb4d5" -dependencies = [ - "common", - "config", - "consensus", - "ethers", - "execution", - "eyre", - "futures", - "gloo-timers 0.2.6", - "hex", - "jsonrpsee 0.15.1", - "parking_lot 0.11.2", - "serde", - "ssz_rs", - "thiserror", - "tokio", - "tracing", - "wasm-bindgen-futures", - "zduny-wasm-timer", -] - [[package]] name = "clru" version = "0.6.2" @@ -2802,7 +2642,7 @@ dependencies = [ "hmac", "k256", "serde", - "sha2 0.10.8", + "sha2", "thiserror", ] @@ -2818,7 +2658,7 @@ dependencies = [ "hmac", "k256", "serde", - "sha2 0.10.8", + "sha2", "thiserror", ] @@ -2828,13 +2668,13 @@ version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3db8fba409ce3dc04f7d804074039eb68b960b0829161f8e06c95fea3f122528" dependencies = [ - "bitvec 1.0.1", + "bitvec", "coins-bip32 0.8.7", "hmac", "once_cell", "pbkdf2 0.12.2", - "rand 0.8.5", - "sha2 0.10.8", + "rand", + "sha2", "thiserror", ] @@ -2853,7 +2693,7 @@ dependencies = [ "ripemd", "serde", "serde_derive", - "sha2 0.10.8", + "sha2", "sha3", "thiserror", ] @@ -2872,7 +2712,7 @@ dependencies = [ "generic-array", "ripemd", "serde", - "sha2 0.10.8", + "sha2", "sha3", "thiserror", ] @@ -2886,7 +2726,7 @@ dependencies = [ "byteorder", "cfg-if", "const-hex", - "getrandom 0.2.15", + "getrandom", "hidapi-rusb", "js-sys", "log", @@ -2927,72 +2767,6 @@ dependencies = [ "yansi 0.5.1", ] -[[package]] -name = "common" -version = "0.5.5" -source = "git+https://github.com/sergey-melnychuk/helios?branch=beerus-wasm#762a5508a2984b4c82d257b17fbfdc2bdf4fb4d5" -dependencies = [ - "ethers", - "eyre", - "hex", - "serde", - "ssz_rs", - "thiserror", -] - -[[package]] -name = "config" -version = "0.5.5" -source = "git+https://github.com/sergey-melnychuk/helios?branch=beerus-wasm#762a5508a2984b4c82d257b17fbfdc2bdf4fb4d5" -dependencies = [ - "common", - "dirs 4.0.0", - "ethers", - "eyre", - "figment", - "futures", - "hex", - "reqwest 0.11.27", - "retri", - "serde", - "serde_yaml", - "strum 0.24.1", - "thiserror", - "tokio", - "tracing", -] - -[[package]] -name = "consensus" -version = "0.5.5" -source = "git+https://github.com/sergey-melnychuk/helios?branch=beerus-wasm#762a5508a2984b4c82d257b17fbfdc2bdf4fb4d5" -dependencies = [ - "async-trait", - "bytes", - "chrono", - "common", - "config", - "ethers", - "eyre", - "futures", - "getrandom 0.2.15", - "hex", - "openssl", - "parking_lot 0.11.2", - "reqwest 0.11.27", - "retri", - "serde", - "serde_json", - "snowbridge-milagro-bls", - "ssz_rs", - "superstruct", - "thiserror", - "tokio", - "tracing", - "wasm-bindgen-futures", - "zduny-wasm-timer", -] - [[package]] name = "console" version = "0.15.8" @@ -3174,7 +2948,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" dependencies = [ "generic-array", - "rand_core 0.6.4", + "rand_core", "subtle", "zeroize", ] @@ -3198,16 +2972,6 @@ dependencies = [ "cipher", ] -[[package]] -name = "darling" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c" -dependencies = [ - "darling_core 0.13.4", - "darling_macro 0.13.4", -] - [[package]] name = "darling" version = "0.14.4" @@ -3228,20 +2992,6 @@ dependencies = [ "darling_macro 0.20.10", ] -[[package]] -name = "darling_core" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610" -dependencies = [ - "fnv", - "ident_case", - "proc-macro2", - "quote", - "strsim 0.10.0", - "syn 1.0.109", -] - [[package]] name = "darling_core" version = "0.14.4" @@ -3270,17 +3020,6 @@ dependencies = [ "syn 2.0.79", ] -[[package]] -name = "darling_macro" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835" -dependencies = [ - "darling_core 0.13.4", - "quote", - "syn 1.0.109", -] - [[package]] name = "darling_macro" version = "0.14.4" @@ -3509,16 +3248,7 @@ version = "5.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a49173b84e034382284f27f1af4dcbbd231ffa358c0fe316541a7337f376a35" dependencies = [ - "dirs-sys 0.4.1", -] - -[[package]] -name = "dirs" -version = "4.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059" -dependencies = [ - "dirs-sys 0.3.7", + "dirs-sys", ] [[package]] @@ -3527,7 +3257,7 @@ version = "5.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225" dependencies = [ - "dirs-sys 0.4.1", + "dirs-sys", ] [[package]] @@ -3540,17 +3270,6 @@ dependencies = [ "dirs-sys-next", ] -[[package]] -name = "dirs-sys" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6" -dependencies = [ - "libc", - "redox_users", - "winapi", -] - [[package]] name = "dirs-sys" version = "0.4.1" @@ -3638,7 +3357,7 @@ dependencies = [ "generic-array", "group", "pkcs8", - "rand_core 0.6.4", + "rand_core", "sec1", "subtle", "zeroize", @@ -3688,33 +3407,22 @@ checksum = "c34f04666d835ff5d62e058c3995147c06f42fe86ff053337632bca83e42702d" [[package]] name = "enr" -version = "0.9.1" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe81b5c06ecfdbc71dd845216f225f53b62a10cb8a16c946836a3467f701d05b" +checksum = "2a3d8dc56e02f954cac8eb489772c552c473346fc34f67412bb6244fd647f7e4" dependencies = [ "base64 0.21.7", "bytes", "hex", "k256", "log", - "rand 0.8.5", - "rlp 0.5.2", + "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.79", -] - [[package]] name = "env_filter" version = "0.1.2" @@ -3800,11 +3508,11 @@ dependencies = [ "hex", "hmac", "pbkdf2 0.11.0", - "rand 0.8.5", + "rand", "scrypt", "serde", "serde_json", - "sha2 0.10.8", + "sha2", "sha3", "thiserror", "uuid 0.8.2", @@ -3816,7 +3524,7 @@ version = "18.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7413c5f74cc903ea37386a8965a936cbeb334bd270862fdece542c1b2dcbc898" dependencies = [ - "ethereum-types 0.14.1", + "ethereum-types", "hex", "once_cell", "regex", @@ -3824,20 +3532,7 @@ dependencies = [ "serde_json", "sha3", "thiserror", - "uint 0.9.5", -] - -[[package]] -name = "ethbloom" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32cfe1c169414b709cf28aa30c74060bdb830a03a8ba473314d079ac79d80a5f" -dependencies = [ - "crunchy", - "fixed-hash 0.5.2", - "impl-rlp 0.2.1", - "impl-serde 0.2.3", - "tiny-keccak 1.5.0", + "uint", ] [[package]] @@ -3847,26 +3542,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c22d4b5885b6aa2fe5e8b9329fb8d232bf739e434e6b87347c63bdd00c120f60" dependencies = [ "crunchy", - "fixed-hash 0.8.0", - "impl-codec 0.6.0", - "impl-rlp 0.3.0", - "impl-serde 0.4.0", + "fixed-hash", + "impl-codec", + "impl-rlp", + "impl-serde", "scale-info", - "tiny-keccak 2.0.2", -] - -[[package]] -name = "ethereum-types" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba744248e3553a393143d5ebb68939fc3a4ec0c22a269682535f5ffe7fed728c" -dependencies = [ - "ethbloom 0.8.1", - "fixed-hash 0.5.2", - "impl-rlp 0.2.1", - "impl-serde 0.2.3", - "primitive-types 0.6.2", - "uint 0.8.5", + "tiny-keccak", ] [[package]] @@ -3875,20 +3556,21 @@ version = "0.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "02d215cbf040552efcbe99a38372fe80ab9d00268e20012b79fcd0f073edd8ee" dependencies = [ - "ethbloom 0.13.0", - "fixed-hash 0.8.0", - "impl-codec 0.6.0", - "impl-rlp 0.3.0", - "impl-serde 0.4.0", - "primitive-types 0.12.2", + "ethbloom", + "fixed-hash", + "impl-codec", + "impl-rlp", + "impl-serde", + "primitive-types", "scale-info", - "uint 0.9.5", + "uint", ] [[package]] name = "ethers" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs?rev=3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef#3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" +version = "2.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "816841ea989f0c69e459af1cf23a6b0033b19a55424a1ea3a30099becdb8dec0" dependencies = [ "ethers-addressbook", "ethers-contract", @@ -3902,8 +3584,9 @@ dependencies = [ [[package]] name = "ethers-addressbook" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs?rev=3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef#3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" +version = "2.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5495afd16b4faa556c3bba1f21b98b4983e53c1755022377051a975c3b021759" dependencies = [ "ethers-core", "once_cell", @@ -3913,8 +3596,9 @@ dependencies = [ [[package]] name = "ethers-contract" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs?rev=3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef#3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" +version = "2.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fceafa3578c836eeb874af87abacfb041f92b4da0a78a5edd042564b8ecdaaa" dependencies = [ "const-hex", "ethers-contract-abigen", @@ -3931,8 +3615,9 @@ dependencies = [ [[package]] name = "ethers-contract-abigen" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs?rev=3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef#3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" +version = "2.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04ba01fbc2331a38c429eb95d4a570166781f14290ef9fdb144278a90b5a739b" dependencies = [ "Inflector", "const-hex", @@ -3954,8 +3639,9 @@ dependencies = [ [[package]] name = "ethers-contract-derive" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs?rev=3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef#3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" +version = "2.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87689dcabc0051cde10caaade298f9e9093d65f6125c14575db3fd8c669a168f" dependencies = [ "Inflector", "const-hex", @@ -3969,10 +3655,11 @@ dependencies = [ [[package]] name = "ethers-core" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs?rev=3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef#3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" +version = "2.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82d80cc6ad30b14a48ab786523af33b37f28a8623fc06afd55324816ef18fb1f" dependencies = [ - "arrayvec 0.7.6", + "arrayvec", "bytes", "cargo_metadata", "chrono", @@ -3984,22 +3671,23 @@ dependencies = [ "num_enum", "once_cell", "open-fastrlp", - "rand 0.8.5", - "rlp 0.5.2", + "rand", + "rlp", "serde", "serde_json", "strum 0.26.3", "syn 2.0.79", "tempfile", "thiserror", - "tiny-keccak 2.0.2", + "tiny-keccak", "unicode-xid", ] [[package]] name = "ethers-etherscan" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs?rev=3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef#3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" +version = "2.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e79e5973c26d4baf0ce55520bd732314328cabe53193286671b47144145b9649" dependencies = [ "chrono", "ethers-core", @@ -4013,8 +3701,9 @@ dependencies = [ [[package]] name = "ethers-middleware" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs?rev=3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef#3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" +version = "2.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48f9fdf09aec667c099909d91908d5eaf9be1bd0e2500ba4172c1d28bfaa43de" dependencies = [ "async-trait", "auto_impl", @@ -4039,8 +3728,9 @@ dependencies = [ [[package]] name = "ethers-providers" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs?rev=3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef#3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" +version = "2.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6434c9a33891f1effc9c75472e12666db2fa5a0fec4b29af6221680a6fe83ab2" dependencies = [ "async-trait", "auto_impl", @@ -4075,8 +3765,9 @@ dependencies = [ [[package]] name = "ethers-signers" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs?rev=3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef#3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" +version = "2.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "228875491c782ad851773b652dd8ecac62cda8571d3bc32a5853644dd26766c2" dependencies = [ "async-trait", "coins-bip32 0.8.7", @@ -4085,20 +3776,21 @@ dependencies = [ "elliptic-curve", "eth-keystore", "ethers-core", - "rand 0.8.5", - "sha2 0.10.8", + "rand", + "sha2", "thiserror", "tracing", ] [[package]] name = "ethers-solc" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs?rev=3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef#3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" +version = "2.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "66244a771d9163282646dbeffe0e6eca4dda4146b6498644e678ac6089b11edd" dependencies = [ "cfg-if", "const-hex", - "dirs 5.0.1", + "dirs", "dunce", "ethers-core", "glob", @@ -4115,7 +3807,7 @@ dependencies = [ "solang-parser", "svm-rs", "thiserror", - "tiny-keccak 2.0.2", + "tiny-keccak", "tokio", "tracing", "walkdir", @@ -4123,47 +3815,14 @@ dependencies = [ ] [[package]] -name = "event-listener" -version = "2.5.3" +name = "eyre" +version = "0.6.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" - -[[package]] -name = "execution" -version = "0.5.5" -source = "git+https://github.com/sergey-melnychuk/helios?branch=beerus-wasm#762a5508a2984b4c82d257b17fbfdc2bdf4fb4d5" -dependencies = [ - "async-trait", - "bytes", - "common", - "consensus", - "ethers", - "eyre", - "futures", - "hex", - "hyper 0.14.30", - "openssl", - "reqwest 0.11.27", - "revm", - "serde", - "serde_json", - "ssz_rs", - "thiserror", - "tokio", - "tracing", - "triehash-ethereum", - "wasm-bindgen-futures", -] - -[[package]] -name = "eyre" -version = "0.6.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cd915d99f24784cdc19fd37ef22b97e3ff0ae756c7e492e9fbfe897d61e2aec" -dependencies = [ - "indenter", - "once_cell", -] +checksum = "7cd915d99f24784cdc19fd37ef22b97e3ff0ae756c7e492e9fbfe897d61e2aec" +dependencies = [ + "indenter", + "once_cell", +] [[package]] name = "faster-hex" @@ -4183,24 +3842,10 @@ version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" dependencies = [ - "rand_core 0.6.4", + "rand_core", "subtle", ] -[[package]] -name = "figment" -version = "0.10.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8cb01cd46b0cf372153850f4c6c272d9cbea2da513e07538405148f95bd789f3" -dependencies = [ - "atomic", - "pear", - "serde", - "toml", - "uncased", - "version_check", -] - [[package]] name = "filetime" version = "0.2.25" @@ -4213,18 +3858,6 @@ dependencies = [ "windows-sys 0.59.0", ] -[[package]] -name = "fixed-hash" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3367952ceb191f4ab95dd5685dc163ac539e36202f9fcfd0cb22f9f9c542fefc" -dependencies = [ - "byteorder", - "rand 0.7.3", - "rustc-hex", - "static_assertions", -] - [[package]] name = "fixed-hash" version = "0.8.0" @@ -4232,7 +3865,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" dependencies = [ "byteorder", - "rand 0.8.5", + "rand", "rustc-hex", "static_assertions", ] @@ -4474,17 +4107,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "getrandom" -version = "0.1.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce" -dependencies = [ - "cfg-if", - "libc", - "wasi 0.9.0+wasi-snapshot-preview1", -] - [[package]] name = "getrandom" version = "0.2.15" @@ -4494,7 +4116,7 @@ dependencies = [ "cfg-if", "js-sys", "libc", - "wasi 0.11.0+wasi-snapshot-preview1", + "wasi", "wasm-bindgen", ] @@ -5339,26 +4961,6 @@ dependencies = [ "regex-syntax 0.8.5", ] -[[package]] -name = "gloo-net" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9902a044653b26b99f7e3693a42f171312d9be8b26b5697bd1e43ad1f8a35e10" -dependencies = [ - "futures-channel", - "futures-core", - "futures-sink", - "gloo-utils", - "js-sys", - "pin-project", - "serde", - "serde_json", - "thiserror", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", -] - [[package]] name = "gloo-timers" version = "0.2.6" @@ -5383,19 +4985,6 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "gloo-utils" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "037fcb07216cb3a30f7292bd0176b050b7b9a052ba830ef7d5d65f6dc64ba58e" -dependencies = [ - "js-sys", - "serde", - "serde_json", - "wasm-bindgen", - "web-sys", -] - [[package]] name = "good_lp" version = "1.8.1" @@ -5413,7 +5002,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" dependencies = [ "ff", - "rand_core 0.6.4", + "rand_core", "subtle", ] @@ -5455,12 +5044,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "hash-db" -version = "0.15.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d23bd4e7b5eda0d0f3a307e8b381fdc8ba9000f26fbe912250c0a4cc3956364a" - [[package]] name = "hashbrown" version = "0.12.3" @@ -5538,18 +5121,6 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" -[[package]] -name = "helios" -version = "0.5.5" -source = "git+https://github.com/sergey-melnychuk/helios?branch=beerus-wasm#762a5508a2984b4c82d257b17fbfdc2bdf4fb4d5" -dependencies = [ - "client", - "common", - "config", - "consensus", - "execution", -] - [[package]] name = "hermit-abi" version = "0.3.9" @@ -5738,22 +5309,6 @@ dependencies = [ "want", ] -[[package]] -name = "hyper-rustls" -version = "0.23.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1788965e61b367cd03a62950836d5cd41560c3577d90e40e0819373194d1661c" -dependencies = [ - "http 0.2.12", - "hyper 0.14.30", - "log", - "rustls 0.20.9", - "rustls-native-certs 0.6.3", - "tokio", - "tokio-rustls 0.23.4", - "webpki-roots 0.22.6", -] - [[package]] name = "hyper-rustls" version = "0.24.2" @@ -5905,31 +5460,13 @@ dependencies = [ "hashbrown 0.14.5", ] -[[package]] -name = "impl-codec" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1be51a921b067b0eaca2fad532d9400041561aa922221cc65f95a85641c6bf53" -dependencies = [ - "parity-scale-codec 1.3.7", -] - [[package]] name = "impl-codec" version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba6a270039626615617f3f36d15fc827041df3b78c439da2cadfa47455a77f2f" dependencies = [ - "parity-scale-codec 3.6.12", -] - -[[package]] -name = "impl-rlp" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f7a72f11830b52333f36e3b09a288333888bf54380fd0ac0790a3c31ab0f3c5" -dependencies = [ - "rlp 0.4.6", + "parity-scale-codec", ] [[package]] @@ -5938,25 +5475,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f28220f89297a075ddc7245cd538076ee98b01f2a9c23a53a4f1105d5a322808" dependencies = [ - "rlp 0.5.2", -] - -[[package]] -name = "impl-serde" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58e3cae7e99c7ff5a995da2cf78dd0a5383740eda71d98cf7b1910c301ac69b8" -dependencies = [ - "serde", -] - -[[package]] -name = "impl-serde" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4551f042f3438e64dbd6226b20527fc84a6e1fe65688b58746a2f53623f25f5c" -dependencies = [ - "serde", + "rlp", ] [[package]] @@ -6051,12 +5570,6 @@ version = "2.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5" -[[package]] -name = "inlinable_string" -version = "0.1.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8fae54786f62fb2918dcfae3d568594e50eb9b5c25bf04371af6fe7516452fb" - [[package]] name = "inout" version = "0.1.3" @@ -6073,9 +5586,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222" dependencies = [ "cfg-if", - "js-sys", - "wasm-bindgen", - "web-sys", ] [[package]] @@ -6228,93 +5738,17 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "jsonrpsee" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8bd0d559d5e679b1ab2f869b486a11182923863b1b3ee8b421763cdd707b783a" -dependencies = [ - "jsonrpsee-client-transport", - "jsonrpsee-core 0.15.1", - "jsonrpsee-http-client", - "jsonrpsee-http-server", - "jsonrpsee-proc-macros 0.15.1", - "jsonrpsee-types 0.15.1", - "jsonrpsee-wasm-client", - "jsonrpsee-ws-client", - "jsonrpsee-ws-server", - "tracing", -] - [[package]] name = "jsonrpsee" version = "0.16.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "367a292944c07385839818bb71c8d76611138e2dedb0677d035b8da21d29c78b" dependencies = [ - "jsonrpsee-core 0.16.3", - "jsonrpsee-proc-macros 0.16.3", + "jsonrpsee-core", + "jsonrpsee-proc-macros", "jsonrpsee-server", - "jsonrpsee-types 0.16.3", - "tracing", -] - -[[package]] -name = "jsonrpsee-client-transport" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8752740ecd374bcbf8b69f3e80b0327942df76f793f8d4e60d3355650c31fb74" -dependencies = [ - "anyhow", - "futures-channel", - "futures-timer", - "futures-util", - "gloo-net", - "http 0.2.12", - "jsonrpsee-core 0.15.1", - "jsonrpsee-types 0.15.1", - "pin-project", - "rustls-native-certs 0.6.3", - "soketto", - "thiserror", - "tokio", - "tokio-rustls 0.23.4", - "tokio-util", + "jsonrpsee-types", "tracing", - "webpki-roots 0.22.6", -] - -[[package]] -name = "jsonrpsee-core" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3dc3e9cf2ba50b7b1d7d76a667619f82846caa39e8e8daa8a4962d74acaddca" -dependencies = [ - "anyhow", - "arrayvec 0.7.6", - "async-lock", - "async-trait", - "beef", - "futures-channel", - "futures-timer", - "futures-util", - "globset", - "http 0.2.12", - "hyper 0.14.30", - "jsonrpsee-types 0.15.1", - "lazy_static", - "parking_lot 0.12.3", - "rand 0.8.5", - "rustc-hash 1.1.0", - "serde", - "serde_json", - "soketto", - "thiserror", - "tokio", - "tracing", - "tracing-futures", - "unicase", - "wasm-bindgen-futures", ] [[package]] @@ -6324,16 +5758,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2b5dde66c53d6dcdc8caea1874a45632ec0fcf5b437789f1e45766a1512ce803" dependencies = [ "anyhow", - "arrayvec 0.7.6", + "arrayvec", "async-trait", "beef", "futures-channel", "futures-util", "globset", "hyper 0.14.30", - "jsonrpsee-types 0.16.3", + "jsonrpsee-types", "parking_lot 0.12.3", - "rand 0.8.5", + "rand", "rustc-hash 1.1.0", "serde", "serde_json", @@ -6343,56 +5777,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "jsonrpsee-http-client" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52f7c0e2333ab2115c302eeb4f137c8a4af5ab609762df68bbda8f06496677c9" -dependencies = [ - "async-trait", - "hyper 0.14.30", - "hyper-rustls 0.23.2", - "jsonrpsee-core 0.15.1", - "jsonrpsee-types 0.15.1", - "rustc-hash 1.1.0", - "serde", - "serde_json", - "thiserror", - "tokio", - "tracing", - "tracing-futures", -] - -[[package]] -name = "jsonrpsee-http-server" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03802f0373a38c2420c70b5144742d800b509e2937edc4afb116434f07120117" -dependencies = [ - "futures-channel", - "futures-util", - "hyper 0.14.30", - "jsonrpsee-core 0.15.1", - "jsonrpsee-types 0.15.1", - "serde", - "serde_json", - "tokio", - "tracing", - "tracing-futures", -] - -[[package]] -name = "jsonrpsee-proc-macros" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd67957d4280217247588ac86614ead007b301ca2fa9f19c19f880a536f029e3" -dependencies = [ - "proc-macro-crate 1.3.1", - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "jsonrpsee-proc-macros" version = "0.16.3" @@ -6416,8 +5800,8 @@ dependencies = [ "futures-util", "http 0.2.12", "hyper 0.14.30", - "jsonrpsee-core 0.16.3", - "jsonrpsee-types 0.16.3", + "jsonrpsee-core", + "jsonrpsee-types", "serde", "serde_json", "soketto", @@ -6428,20 +5812,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "jsonrpsee-types" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e290bba767401b646812f608c099b922d8142603c9e73a50fb192d3ac86f4a0d" -dependencies = [ - "anyhow", - "beef", - "serde", - "serde_json", - "thiserror", - "tracing", -] - [[package]] name = "jsonrpsee-types" version = "0.16.3" @@ -6456,49 +5826,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "jsonrpsee-wasm-client" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "597b4eb94730e7695d0a2a429bc37a12e6e84d12680fdafb9b8f5f53652aab57" -dependencies = [ - "jsonrpsee-client-transport", - "jsonrpsee-core 0.15.1", - "jsonrpsee-types 0.15.1", -] - -[[package]] -name = "jsonrpsee-ws-client" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ee5feddd5188e62ac08fcf0e56478138e581509d4730f3f7be9b57dd402a4ff" -dependencies = [ - "http 0.2.12", - "jsonrpsee-client-transport", - "jsonrpsee-core 0.15.1", - "jsonrpsee-types 0.15.1", -] - -[[package]] -name = "jsonrpsee-ws-server" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d488ba74fb369e5ab68926feb75a483458b88e768d44319f37e4ecad283c7325" -dependencies = [ - "futures-channel", - "futures-util", - "http 0.2.12", - "jsonrpsee-core 0.15.1", - "jsonrpsee-types 0.15.1", - "serde_json", - "soketto", - "tokio", - "tokio-stream", - "tokio-util", - "tracing", - "tracing-futures", -] - [[package]] name = "jsonwebtoken" version = "8.3.0" @@ -6523,7 +5850,7 @@ dependencies = [ "ecdsa", "elliptic-curve", "once_cell", - "sha2 0.10.8", + "sha2", "signature", ] @@ -6614,7 +5941,7 @@ dependencies = [ "anyhow", "dojo-metrics", "hyper 0.14.30", - "jsonrpsee 0.16.3", + "jsonrpsee", "katana-core", "katana-db", "katana-executor", @@ -6658,7 +5985,7 @@ dependencies = [ "flate2", "katana-cairo", "lazy_static", - "rand 0.8.5", + "rand", "serde", "serde_json", "serde_with 2.3.3", @@ -6693,7 +6020,7 @@ dependencies = [ "anyhow", "dojo-metrics", "futures", - "jsonrpsee 0.16.3", + "jsonrpsee", "katana-core", "katana-executor", "katana-pool", @@ -6713,7 +6040,7 @@ name = "katana-rpc-api" version = "1.0.0-alpha.9" source = "git+https://github.com/dojoengine/dojo?tag=v1.0.0-alpha.9#e42ce0c220a59d75c5b08e87a81de12cfdc27a55" dependencies = [ - "jsonrpsee 0.16.3", + "jsonrpsee", "katana-core", "katana-primitives", "katana-rpc-types", @@ -6729,7 +6056,7 @@ dependencies = [ "anyhow", "derive_more 0.99.18", "futures", - "jsonrpsee 0.16.3", + "jsonrpsee", "katana-cairo", "katana-core", "katana-executor", @@ -6780,17 +6107,6 @@ dependencies = [ "cpufeatures", ] -[[package]] -name = "keccak-hasher" -version = "0.1.1" -source = "git+https://github.com/openethereum/parity-ethereum?rev=55c90d4016505317034e3e98f699af07f5404b63#55c90d4016505317034e3e98f699af07f5404b63" -dependencies = [ - "ethereum-types 0.8.0", - "hash-db", - "plain_hasher", - "tiny-keccak 1.5.0", -] - [[package]] name = "kstring" version = "2.0.2" @@ -6817,7 +6133,7 @@ dependencies = [ "regex-syntax 0.8.5", "string_cache", "term", - "tiny-keccak 2.0.2", + "tiny-keccak", "unicode-xid", "walkdir", ] @@ -6839,7 +6155,7 @@ checksum = "bbc2a4da0d9e52ccfe6306801a112e81a8fc0c76aa3e4449fefeda7fef72bb34" dependencies = [ "lambdaworks-math", "serde", - "sha2 0.10.8", + "sha2", "sha3", ] @@ -6893,7 +6209,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4" dependencies = [ "cfg-if", - "windows-targets 0.48.5", + "windows-targets 0.52.6", ] [[package]] @@ -7180,7 +6496,7 @@ checksum = "80e04d1dcff3aae0704555fe5fee3bcfaf3d1fdf8a7e521d5b9d2b42acb52cec" dependencies = [ "hermit-abi 0.3.9", "libc", - "wasi 0.11.0+wasi-snapshot-preview1", + "wasi", "windows-sys 0.52.0", ] @@ -7220,7 +6536,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ac06db03ec2f46ee0ecdca1a1c34a99c0d188a0d83439b84bf0cb4b386e4ab09" dependencies = [ "matrixmultiply", - "num-complex 0.2.4", + "num-complex", "num-integer", "num-traits 0.2.19", "rawpointer", @@ -7274,20 +6590,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "num" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23" -dependencies = [ - "num-bigint", - "num-complex 0.4.6", - "num-integer", - "num-iter", - "num-rational", - "num-traits 0.2.19", -] - [[package]] name = "num-bigint" version = "0.4.6" @@ -7296,7 +6598,7 @@ checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9" dependencies = [ "num-integer", "num-traits 0.2.19", - "rand 0.8.5", + "rand", "serde", ] @@ -7310,15 +6612,6 @@ dependencies = [ "num-traits 0.2.19", ] -[[package]] -name = "num-complex" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" -dependencies = [ - "num-traits 0.2.19", -] - [[package]] name = "num-conv" version = "0.1.0" @@ -7334,17 +6627,6 @@ dependencies = [ "num-traits 0.2.19", ] -[[package]] -name = "num-iter" -version = "0.1.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf" -dependencies = [ - "autocfg", - "num-integer", - "num-traits 0.2.19", -] - [[package]] name = "num-modular" version = "0.5.1" @@ -7362,14 +6644,14 @@ version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e238432a7881ec7164503ccc516c014bf009be7984cde1ba56837862543bdec3" dependencies = [ - "bitvec 1.0.1", + "bitvec", "either", "lru", "num-bigint", "num-integer", "num-modular", "num-traits 0.2.19", - "rand 0.8.5", + "rand", ] [[package]] @@ -7485,10 +6767,10 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "786393f80485445794f6043fd3138854dd109cc6c4bd1a6383db304c9ce9b9ce" dependencies = [ - "arrayvec 0.7.6", + "arrayvec", "auto_impl", "bytes", - "ethereum-types 0.14.1", + "ethereum-types", "open-fastrlp-derive", ] @@ -7536,15 +6818,6 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" -[[package]] -name = "openssl-src" -version = "300.3.2+3.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a211a18d945ef7e648cc6e0058f4c548ee46aab922ea203e0d30e966ea23647b" -dependencies = [ - "cc", -] - [[package]] name = "openssl-sys" version = "0.9.103" @@ -7553,7 +6826,6 @@ checksum = "7f9e8deee91df40a943c71b917e5874b951d32a802526c85721ce3b776c929d6" dependencies = [ "cc", "libc", - "openssl-src", "pkg-config", "vcpkg", ] @@ -7608,27 +6880,15 @@ dependencies = [ "winapi", ] -[[package]] -name = "parity-scale-codec" -version = "1.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4b26b16c7687c3075982af47719e481815df30bc544f7a6690763a25ca16e9d" -dependencies = [ - "arrayvec 0.5.2", - "bitvec 0.17.4", - "byte-slice-cast 0.3.5", - "serde", -] - [[package]] name = "parity-scale-codec" version = "3.6.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "306800abfa29c7f16596b5970a588435e3d5b3149683d00c12b699cc19f895ee" dependencies = [ - "arrayvec 0.7.6", - "bitvec 1.0.1", - "byte-slice-cast 1.2.2", + "arrayvec", + "bitvec", + "byte-slice-cast", "impl-trait-for-tuples", "parity-scale-codec-derive", "serde", @@ -7701,7 +6961,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7676374caaee8a325c9e7a2ae557f216c5563a171d6997b0ef8a65af35147700" dependencies = [ "base64ct", - "rand_core 0.6.4", + "rand_core", "subtle", ] @@ -7750,7 +7010,7 @@ dependencies = [ "digest 0.10.7", "hmac", "password-hash", - "sha2 0.10.8", + "sha2", ] [[package]] @@ -7763,29 +7023,6 @@ dependencies = [ "hmac", ] -[[package]] -name = "pear" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdeeaa00ce488657faba8ebf44ab9361f9365a97bd39ffb8a60663f57ff4b467" -dependencies = [ - "inlinable_string", - "pear_codegen", - "yansi 1.0.1", -] - -[[package]] -name = "pear_codegen" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bab5b985dc082b345f812b7df84e1bef27e7207b39e448439ba8bd69c93f147" -dependencies = [ - "proc-macro2", - "proc-macro2-diagnostics", - "quote", - "syn 2.0.79", -] - [[package]] name = "peeking_take_while" version = "0.1.2" @@ -7844,7 +7081,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0" dependencies = [ "phf_shared 0.11.2", - "rand 0.8.5", + "rand", ] [[package]] @@ -7932,15 +7169,6 @@ version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" -[[package]] -name = "plain_hasher" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e19e6491bdde87c2c43d70f4c194bc8a758f2eb732df00f61e43f7362e3b4cc" -dependencies = [ - "crunchy", -] - [[package]] name = "portable-atomic" version = "1.9.0" @@ -8000,31 +7228,18 @@ dependencies = [ "syn 2.0.79", ] -[[package]] -name = "primitive-types" -version = "0.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4336f4f5d5524fa60bcbd6fe626f9223d8142a50e7053e979acdf0da41ab975" -dependencies = [ - "fixed-hash 0.5.2", - "impl-codec 0.4.2", - "impl-rlp 0.2.1", - "impl-serde 0.3.2", - "uint 0.8.5", -] - [[package]] name = "primitive-types" version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b34d9fd68ae0b74a41b21c03c2f62847aa0ffea044eee893b4c140b37e244e2" dependencies = [ - "fixed-hash 0.8.0", - "impl-codec 0.6.0", - "impl-rlp 0.3.0", - "impl-serde 0.4.0", + "fixed-hash", + "impl-codec", + "impl-rlp", + "impl-serde", "scale-info", - "uint 0.9.5", + "uint", ] [[package]] @@ -8079,19 +7294,6 @@ dependencies = [ "unicode-ident", ] -[[package]] -name = "proc-macro2-diagnostics" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.79", - "version_check", - "yansi 1.0.1", -] - [[package]] name = "procfs" version = "0.16.0" @@ -8134,8 +7336,8 @@ dependencies = [ "bitflags 2.6.0", "lazy_static", "num-traits 0.2.19", - "rand 0.8.5", - "rand_chacha 0.3.1", + "rand", + "rand_chacha", "rand_xorshift", "regex-syntax 0.8.5", "unarray", @@ -8151,7 +7353,7 @@ dependencies = [ "libc", "once_cell", "raw-cpuid", - "wasi 0.11.0+wasi-snapshot-preview1", + "wasi", "web-sys", "winapi", ] @@ -8181,7 +7383,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fadfaed2cd7f389d0161bb73eeb07b7b78f8691047a6f3e73caaeae55310a4a6" dependencies = [ "bytes", - "rand 0.8.5", + "rand", "ring 0.17.8", "rustc-hash 2.0.0", "rustls 0.23.13", @@ -8223,12 +7425,6 @@ dependencies = [ "home", ] -[[package]] -name = "radium" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "def50a86306165861203e7f84ecffbbdfdea79f0e51039b33de1e952358c47ac" - [[package]] name = "radium" version = "0.7.0" @@ -8239,23 +7435,10 @@ checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" name = "radix_trie" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c069c179fcdc6a2fe24d8d18305cf085fdbd4f922c041943e203685d6a1c58fd" -dependencies = [ - "endian-type", - "nibble_vec", -] - -[[package]] -name = "rand" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" +checksum = "c069c179fcdc6a2fe24d8d18305cf085fdbd4f922c041943e203685d6a1c58fd" dependencies = [ - "getrandom 0.1.16", - "libc", - "rand_chacha 0.2.2", - "rand_core 0.5.1", - "rand_hc", + "endian-type", + "nibble_vec", ] [[package]] @@ -8265,18 +7448,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" dependencies = [ "libc", - "rand_chacha 0.3.1", - "rand_core 0.6.4", -] - -[[package]] -name = "rand_chacha" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" -dependencies = [ - "ppv-lite86", - "rand_core 0.5.1", + "rand_chacha", + "rand_core", ] [[package]] @@ -8286,16 +7459,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" dependencies = [ "ppv-lite86", - "rand_core 0.6.4", -] - -[[package]] -name = "rand_core" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" -dependencies = [ - "getrandom 0.1.16", + "rand_core", ] [[package]] @@ -8304,16 +7468,7 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom 0.2.15", -] - -[[package]] -name = "rand_hc" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" -dependencies = [ - "rand_core 0.5.1", + "getrandom", ] [[package]] @@ -8322,7 +7477,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" dependencies = [ - "rand_core 0.6.4", + "rand_core", ] [[package]] @@ -8393,7 +7548,7 @@ version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" dependencies = [ - "getrandom 0.2.15", + "getrandom", "libredox", "thiserror", ] @@ -8576,69 +7731,6 @@ dependencies = [ "syn 2.0.79", ] -[[package]] -name = "retri" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6262146231c1ef2e31ad7b2a2492bc652fafd6b76568da7b63ac1d5f3674ee4" -dependencies = [ - "zduny-wasm-timer", -] - -[[package]] -name = "revm" -version = "3.5.0" -source = "git+https://github.com/bluealloy/revm?rev=23cbac479f616eba5ab11ddfe6d5814b9c492202#23cbac479f616eba5ab11ddfe6d5814b9c492202" -dependencies = [ - "auto_impl", - "revm-interpreter", - "revm-precompile", - "serde", - "serde_json", -] - -[[package]] -name = "revm-interpreter" -version = "1.3.0" -source = "git+https://github.com/bluealloy/revm?rev=23cbac479f616eba5ab11ddfe6d5814b9c492202#23cbac479f616eba5ab11ddfe6d5814b9c492202" -dependencies = [ - "revm-primitives", - "serde", -] - -[[package]] -name = "revm-precompile" -version = "2.2.0" -source = "git+https://github.com/bluealloy/revm?rev=23cbac479f616eba5ab11ddfe6d5814b9c492202#23cbac479f616eba5ab11ddfe6d5814b9c492202" -dependencies = [ - "c-kzg", - "k256", - "num", - "once_cell", - "revm-primitives", - "ripemd", - "secp256k1", - "sha2 0.10.8", - "substrate-bn", -] - -[[package]] -name = "revm-primitives" -version = "1.3.0" -source = "git+https://github.com/bluealloy/revm?rev=23cbac479f616eba5ab11ddfe6d5814b9c492202#23cbac479f616eba5ab11ddfe6d5814b9c492202" -dependencies = [ - "alloy-primitives 0.4.2", - "alloy-rlp", - "auto_impl", - "bitflags 2.6.0", - "bitvec 1.0.1", - "c-kzg", - "enumn", - "hashbrown 0.14.5", - "hex", - "serde", -] - [[package]] name = "rfc6979" version = "0.4.0" @@ -8672,7 +7764,7 @@ checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" dependencies = [ "cc", "cfg-if", - "getrandom 0.2.15", + "getrandom", "libc", "spin 0.9.8", "untrusted 0.9.0", @@ -8697,15 +7789,6 @@ dependencies = [ "libc", ] -[[package]] -name = "rlp" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1190dcc8c3a512f1eef5d09bb8c84c7f39e1054e174d1795482e18f5272f2e73" -dependencies = [ - "rustc-hex", -] - [[package]] name = "rlp" version = "0.5.2" @@ -8792,9 +7875,8 @@ version = "1.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2c3cc4c2511671f327125da14133d0c5c5d137f006a1017a16f557bc85b16286" dependencies = [ - "alloy-rlp", "proptest", - "rand 0.8.5", + "rand", "ruint-macro", "serde", "valuable", @@ -8852,7 +7934,7 @@ version = "1.36.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b082d80e3e3cc52b2ed634388d436fe1f4de6af5786cc2de9ba9737527bdf555" dependencies = [ - "arrayvec 0.7.6", + "arrayvec", "num-traits 0.2.19", ] @@ -8902,18 +7984,6 @@ dependencies = [ "windows-sys 0.52.0", ] -[[package]] -name = "rustls" -version = "0.20.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b80e3dec595989ea8510028f30c408a4630db12c9cbb8de34203b89d6577e99" -dependencies = [ - "log", - "ring 0.16.20", - "sct", - "webpki", -] - [[package]] name = "rustls" version = "0.21.12" @@ -9075,27 +8145,26 @@ dependencies = [ [[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 = [ - "bitvec 1.0.1", "cfg-if", - "derive_more 0.99.18", - "parity-scale-codec 3.6.12", + "derive_more 1.0.0", + "parity-scale-codec", "scale-info-derive", ] [[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.2.0", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.79", ] [[package]] @@ -9159,7 +8228,7 @@ dependencies = [ "serde-value", "serde_json", "serde_repr", - "sha2 0.10.8", + "sha2", "smallvec", "smol_str", "tar", @@ -9283,7 +8352,7 @@ dependencies = [ "hmac", "pbkdf2 0.11.0", "salsa20", - "sha2 0.10.8", + "sha2", ] [[package]] @@ -9310,24 +8379,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "secp256k1" -version = "0.27.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25996b82292a7a57ed3508f052cfff8640d38d32018784acd714758b43da9c8f" -dependencies = [ - "secp256k1-sys", -] - -[[package]] -name = "secp256k1-sys" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70a129b9e9efbfb223753b9163c4ab3b13cff7fd9c7f010fbac25ab4099fa07e" -dependencies = [ - "cc", -] - [[package]] name = "security-framework" version = "2.11.1" @@ -9546,19 +8597,6 @@ dependencies = [ "syn 2.0.79", ] -[[package]] -name = "serde_yaml" -version = "0.9.34+deprecated" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" -dependencies = [ - "indexmap 2.5.0", - "itoa", - "ryu", - "serde", - "unsafe-libyaml", -] - [[package]] name = "sha-1" version = "0.9.8" @@ -9589,19 +8627,6 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bbfa15b3dddfee50a0fff136974b3e1bde555604ba463834a7eb7deb6417705d" -[[package]] -name = "sha2" -version = "0.9.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" -dependencies = [ - "block-buffer 0.9.0", - "cfg-if", - "cpufeatures", - "digest 0.9.0", - "opaque-debug", -] - [[package]] name = "sha2" version = "0.10.8" @@ -9644,7 +8669,7 @@ version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "da03fa3b94cc19e3ebfc88c4229c49d8f08cdbd1228870a45f0ffdf84988e14b" dependencies = [ - "dirs 5.0.1", + "dirs", ] [[package]] @@ -9679,7 +8704,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" dependencies = [ "digest 0.10.7", - "rand_core 0.6.4", + "rand_core", ] [[package]] @@ -9730,30 +8755,6 @@ dependencies = [ "serde", ] -[[package]] -name = "snowbridge-amcl" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "460a9ed63cdf03c1b9847e8a12a5f5ba19c4efd5869e4a737e05be25d7c427e5" -dependencies = [ - "parity-scale-codec 3.6.12", - "scale-info", -] - -[[package]] -name = "snowbridge-milagro-bls" -version = "1.5.2" -source = "git+https://github.com/Snowfork/milagro_bls?rev=6a95c9e33c6a41d9137761e593d53742ebb964de#6a95c9e33c6a41d9137761e593d53742ebb964de" -dependencies = [ - "hex", - "lazy_static", - "parity-scale-codec 3.6.12", - "rand 0.8.5", - "scale-info", - "snowbridge-amcl", - "zeroize", -] - [[package]] name = "socket2" version = "0.5.7" @@ -9776,7 +8777,7 @@ dependencies = [ "http 0.2.12", "httparse", "log", - "rand 0.8.5", + "rand", "sha-1", ] @@ -9823,35 +8824,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec63571489873d4506683915840eeb1bb16b3198ee4894cc6f2fe3013d505e56" dependencies = [ "ndarray", - "num-complex 0.2.4", + "num-complex", "num-traits 0.1.43", ] -[[package]] -name = "ssz_rs" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "057291e5631f280978fa9c8009390663ca4613359fc1318e36a8c24c392f6d1f" -dependencies = [ - "bitvec 1.0.1", - "hex", - "num-bigint", - "serde", - "sha2 0.9.9", - "ssz_rs_derive", -] - -[[package]] -name = "ssz_rs_derive" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f07d54c4d01a1713eb363b55ba51595da15f6f1211435b71466460da022aa140" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "stable_deref_trait" version = "1.2.0" @@ -9861,7 +8837,7 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" [[package]] name = "starkli" version = "0.3.5" -source = "git+https://github.com/ICavlek/starkli?branch=ic/starkli_as_lib#905ae9c14b57ba5de2dea6dbbb4bfc4296fc4740" +source = "git+https://github.com/ICavlek/starkli?branch=ic%2Fstarkli_as_lib#905ae9c14b57ba5de2dea6dbbb4bfc4296fc4740" dependencies = [ "anyhow", "async-trait", @@ -9885,7 +8861,7 @@ dependencies = [ "num-bigint", "num-integer", "num-traits 0.2.19", - "rand 0.8.5", + "rand", "rayon", "regex", "rpassword", @@ -9893,7 +8869,7 @@ dependencies = [ "serde_json", "serde_json_pythonic", "serde_with 2.3.3", - "sha2 0.10.8", + "sha2", "shellexpand", "starknet 0.11.0 (git+https://github.com/xJonathanLEI/starknet-rs?rev=db1fa598232f0698d942cc974f481b5d888ac080)", "starknet-crypto 0.7.1", @@ -10060,7 +9036,7 @@ dependencies = [ "num-integer", "num-traits 0.2.19", "rfc6979", - "sha2 0.10.8", + "sha2", "starknet-crypto-codegen 0.3.3", "starknet-curve 0.3.0", "starknet-ff", @@ -10080,7 +9056,7 @@ dependencies = [ "num-integer", "num-traits 0.2.19", "rfc6979", - "sha2 0.10.8", + "sha2", "starknet-crypto-codegen 0.3.3", "starknet-curve 0.4.2", "starknet-ff", @@ -10099,7 +9075,7 @@ dependencies = [ "num-integer", "num-traits 0.2.19", "rfc6979", - "sha2 0.10.8", + "sha2", "starknet-crypto-codegen 0.4.0 (git+https://github.com/kariy/starknet-rs?branch=dojo-patch)", "starknet-curve 0.5.0 (git+https://github.com/kariy/starknet-rs?branch=dojo-patch)", "starknet-types-core", @@ -10118,7 +9094,7 @@ dependencies = [ "num-integer", "num-traits 0.2.19", "rfc6979", - "sha2 0.10.8", + "sha2", "starknet-crypto-codegen 0.4.0 (git+https://github.com/xJonathanLEI/starknet-rs?rev=db1fa598232f0698d942cc974f481b5d888ac080)", "starknet-curve 0.5.0 (git+https://github.com/xJonathanLEI/starknet-rs?rev=db1fa598232f0698d942cc974f481b5d888ac080)", "starknet-types-core", @@ -10138,7 +9114,7 @@ dependencies = [ "num-integer", "num-traits 0.2.19", "rfc6979", - "sha2 0.10.8", + "sha2", "starknet-curve 0.5.1", "starknet-types-core", "zeroize", @@ -10226,7 +9202,7 @@ checksum = "7abf1b44ec5b18d87c1ae5f54590ca9d0699ef4dd5b2ffa66fc97f24613ec585" dependencies = [ "ark-ff", "crypto-bigint", - "getrandom 0.2.15", + "getrandom", "hex", ] @@ -10257,9 +9233,9 @@ checksum = "59c85e0a0f4563ae95dfeae14ea0f0c70610efc0ec2462505c64eff5765e7b97" dependencies = [ "async-trait", "auto_impl", - "ethereum-types 0.14.1", + "ethereum-types", "flate2", - "getrandom 0.2.15", + "getrandom", "log", "reqwest 0.11.27", "serde", @@ -10277,9 +9253,9 @@ source = "git+https://github.com/xJonathanLEI/starknet-rs?rev=db1fa598232f0698d9 dependencies = [ "async-trait", "auto_impl", - "ethereum-types 0.14.1", + "ethereum-types", "flate2", - "getrandom 0.2.15", + "getrandom", "log", "reqwest 0.11.27", "serde", @@ -10300,8 +9276,8 @@ dependencies = [ "auto_impl", "crypto-bigint", "eth-keystore", - "getrandom 0.2.15", - "rand 0.8.5", + "getrandom", + "rand", "starknet-core 0.11.1 (git+https://github.com/kariy/starknet-rs?branch=dojo-patch)", "starknet-crypto 0.7.2", "thiserror", @@ -10318,8 +9294,8 @@ dependencies = [ "coins-ledger", "crypto-bigint", "eth-keystore", - "getrandom 0.2.15", - "rand 0.8.5", + "getrandom", + "rand", "semver", "starknet-core 0.11.1 (git+https://github.com/xJonathanLEI/starknet-rs?rev=db1fa598232f0698d942cc974f481b5d888ac080)", "starknet-crypto 0.7.1", @@ -10347,14 +9323,14 @@ version = "0.13.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b505c9c076d9fce854304bd743c93ea540ebea6b16ec96819b07343a3aa2c7c" dependencies = [ - "bitvec 1.0.1", + "bitvec", "cairo-lang-starknet-classes 2.8.2 (registry+https://github.com/rust-lang/crates.io-index)", "derive_more 0.99.18", "hex", "indexmap 2.5.0", "itertools 0.12.1", "once_cell", - "primitive-types 0.12.2", + "primitive-types", "serde", "serde_json", "sha3", @@ -10370,7 +9346,7 @@ name = "starknet_api" version = "0.13.0-rc.1" source = "git+https://github.com/sergey-melnychuk/sequencer.git?tag=beerus-wasm-2024-09-22#52de8d635b25fd52346520b7feb18faeebe7a45e" dependencies = [ - "bitvec 1.0.1", + "bitvec", "cairo-lang-starknet-classes 2.8.2 (registry+https://github.com/rust-lang/crates.io-index)", "derive_more 0.99.18", "hashbrown 0.14.5", @@ -10378,7 +9354,7 @@ dependencies = [ "indexmap 2.5.0", "itertools 0.12.1", "once_cell", - "primitive-types 0.12.2", + "primitive-types", "serde", "serde_json", "sha3", @@ -10425,9 +9401,6 @@ name = "strum" version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f" -dependencies = [ - "strum_macros 0.24.3", -] [[package]] name = "strum" @@ -10483,46 +9456,19 @@ dependencies = [ "syn 2.0.79", ] -[[package]] -name = "substrate-bn" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b5bbfa79abbae15dd642ea8176a21a635ff3c00059961d1ea27ad04e5b441c" -dependencies = [ - "byteorder", - "crunchy", - "lazy_static", - "rand 0.8.5", - "rustc-hex", -] - [[package]] name = "subtle" version = "2.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" -[[package]] -name = "superstruct" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f4e1f478a7728f8855d7e620e9a152cf8932c6614f86564c886f9b8141f3201" -dependencies = [ - "darling 0.13.4", - "itertools 0.10.5", - "proc-macro2", - "quote", - "smallvec", - "syn 1.0.109", -] - [[package]] name = "svm-rs" version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "11297baafe5fa0c99d5722458eac6a5e25c01eb1b8e5cd137f54079093daa7a4" dependencies = [ - "dirs 5.0.1", + "dirs", "fs2", "hex", "once_cell", @@ -10530,7 +9476,7 @@ dependencies = [ "semver", "serde", "serde_json", - "sha2 0.10.8", + "sha2", "thiserror", "url", "zip", @@ -10694,15 +9640,6 @@ dependencies = [ "once_cell", ] -[[package]] -name = "threadpool" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d050e60b33d41c19108b32cea32164033a9013fe3b46cbd4457559bfbf77afaa" -dependencies = [ - "num_cpus", -] - [[package]] name = "time" version = "0.3.36" @@ -10736,15 +9673,6 @@ dependencies = [ "time-core", ] -[[package]] -name = "tiny-keccak" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d8a021c69bb74a44ccedb824a046447e2c84a01df9e5c20779750acb38e11b2" -dependencies = [ - "crunchy", -] - [[package]] name = "tiny-keccak" version = "2.0.2" @@ -10820,17 +9748,6 @@ dependencies = [ "tokio", ] -[[package]] -name = "tokio-rustls" -version = "0.23.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c43ee83903113e03984cb9e5cebe6c04a5116269e900e3ddba8f068a62adda59" -dependencies = [ - "rustls 0.20.9", - "tokio", - "webpki", -] - [[package]] name = "tokio-rustls" version = "0.24.1" @@ -10951,7 +9868,7 @@ dependencies = [ "indexmap 1.9.3", "pin-project", "pin-project-lite", - "rand 0.8.5", + "rand", "slab", "tokio", "tokio-util", @@ -11090,26 +10007,6 @@ dependencies = [ "tracing-log", ] -[[package]] -name = "triehash" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1631b201eb031b563d2e85ca18ec8092508e262a3196ce9bd10a67ec87b9f5c" -dependencies = [ - "hash-db", - "rlp 0.5.2", -] - -[[package]] -name = "triehash-ethereum" -version = "0.2.0" -source = "git+https://github.com/openethereum/parity-ethereum?rev=55c90d4016505317034e3e98f699af07f5404b63#55c90d4016505317034e3e98f699af07f5404b63" -dependencies = [ - "ethereum-types 0.8.0", - "keccak-hasher", - "triehash", -] - [[package]] name = "triomphe" version = "0.1.13" @@ -11138,7 +10035,7 @@ dependencies = [ "http 0.2.12", "httparse", "log", - "rand 0.8.5", + "rand", "rustls 0.21.12", "sha1", "thiserror", @@ -11178,18 +10075,6 @@ version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" -[[package]] -name = "uint" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9db035e67dfaf7edd9aebfe8676afcd63eed53c8a4044fed514c8cccf1835177" -dependencies = [ - "byteorder", - "crunchy", - "rustc-hex", - "static_assertions", -] - [[package]] name = "uint" version = "0.9.5" @@ -11208,7 +10093,7 @@ version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7c8a2469e56e6e5095c82ccd3afb98dad95f7af7929aab6d8ba8d6e0f73657da" dependencies = [ - "arrayvec 0.7.6", + "arrayvec", ] [[package]] @@ -11217,15 +10102,6 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" -[[package]] -name = "uncased" -version = "0.9.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1b88fcfe09e89d3866a5c11019378088af2d24c3fbd4f0543f96b479ec90697" -dependencies = [ - "version_check", -] - [[package]] name = "unescaper" version = "0.1.5" @@ -11289,12 +10165,6 @@ version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" -[[package]] -name = "unsafe-libyaml" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861" - [[package]] name = "untrusted" version = "0.7.1" @@ -11355,7 +10225,7 @@ version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7" dependencies = [ - "getrandom 0.2.15", + "getrandom", "serde", ] @@ -11365,7 +10235,7 @@ version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "81dfa00651efa65069b0b6b651f4aaa31ba9e3c3ce0137aaad053604ee7e0314" dependencies = [ - "getrandom 0.2.15", + "getrandom", ] [[package]] @@ -11448,12 +10318,6 @@ dependencies = [ "try-lock", ] -[[package]] -name = "wasi" -version = "0.9.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" - [[package]] name = "wasi" version = "0.11.0+wasi-snapshot-preview1" @@ -11560,25 +10424,6 @@ dependencies = [ "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", - "untrusted 0.9.0", -] - -[[package]] -name = "webpki-roots" -version = "0.22.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6c71e40d7d2c34a5106301fb632274ca37242cd0c9d3e64dbece371a40a2d87" -dependencies = [ - "webpki", -] - [[package]] name = "webpki-roots" version = "0.25.4" @@ -12014,21 +10859,6 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" -[[package]] -name = "zduny-wasm-timer" -version = "0.2.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f22d6a02cbc84ea1993b0b341833a55a0866a3378c3a76e0ca664bc2574e370" -dependencies = [ - "futures", - "js-sys", - "parking_lot 0.12.3", - "pin-utils", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", -] - [[package]] name = "zerocopy" version = "0.7.35" diff --git a/Cargo.toml b/Cargo.toml index 6a9486f3..d602d789 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -18,8 +18,6 @@ lto = true serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" async-trait = "0.1.82" -## Tokio WASM support: https://docs.rs/tokio/latest/tokio/#wasm-support -tokio = { version = "1", features = ["sync", "macros", "io-util", "rt", "time"] } eyre = "0.6.12" tracing = "0.1.40" tracing-subscriber = "0.3.17" @@ -29,10 +27,6 @@ iamgroot = { git = "https://github.com/sergey-melnychuk/iamgroot", tag = "v0.2.8 regex = "1.11.1" once_cell = "1.16.0-pre.1" -# There is a bug in ethers so we should pin its version -# to the exact version that Helios is using -ethers = { git = "https://github.com/gakonst/ethers-rs", rev = "3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" } - starknet-types-core = "0.1.7" starknet-crypto = "0.7.1" @@ -44,24 +38,28 @@ validator = { version = "0.18.1", features = ["derive"] } url = "2.5.1" toml = "0.8.19" lru = "0.12.5" +ethers = "2.0.14" [target.'cfg(not(target_arch = "wasm32"))'.dependencies] +tokio = { version = "1", features = ["sync", "macros", "io-util", "rt-multi-thread", "time"] } + blockifier = { git = "https://github.com/sergey-melnychuk/sequencer.git", tag = "beerus-wasm-2024-09-22", version = "=0.8.0-rc.2", features = ["cairo-vm-std"] } starknet_api = { git = "https://github.com/sergey-melnychuk/sequencer.git", tag = "beerus-wasm-2024-09-22", version = "0.13.0-rc.1", features = ["cairo-vm-std"] } cairo-lang-starknet-classes = { git = "https://github.com/sergey-melnychuk/cairo.git", tag = "beerus-wasm-2024-09-22" } -helios = { git = "https://github.com/sergey-melnychuk/helios", branch = "beerus-wasm" } reqwest = { version = "0.12.8", default-features = false, features = ["json", "rustls-tls"] } ureq = { version = "2.10.1", features = ["json"] } [target.'cfg(target_arch = "wasm32")'.dependencies] +## Tokio WASM support: https://docs.rs/tokio/latest/tokio/#wasm-support +tokio = { version = "1", features = ["sync", "macros", "io-util", "rt", "time"] } + blockifier = { git = "https://github.com/sergey-melnychuk/sequencer.git", tag = "beerus-wasm-2024-09-22", version = "=0.8.0-rc.2" } starknet_api = { git = "https://github.com/sergey-melnychuk/sequencer.git", tag = "beerus-wasm-2024-09-22", version = "0.13.0-rc.1" } cairo-lang-starknet-classes = { git = "https://github.com/sergey-melnychuk/cairo.git", tag = "beerus-wasm-2024-09-22" } -helios = { git = "https://github.com/sergey-melnychuk/helios", branch = "beerus-wasm", default-features = false, features = ["beerus-wasm"] } reqwest = { version = "0.12.3", default-features = false, features = ["json"] } gloo-timers = { version = "0.3.0", features = ["futures"] } diff --git a/examples/call.rs b/examples/call.rs index 4a6f5658..b2e0d826 100644 --- a/examples/call.rs +++ b/examples/call.rs @@ -11,10 +11,6 @@ async fn main() -> Result<()> { .context("ALCHEMY_API_KEY is missing")?; let config = Config { - ethereum_rpc: format!( - "https://eth-mainnet.g.alchemy.com/v2/{api_key}" - ), - gateway_url: "https://alpha-mainnet.starknet.io".to_owned(), starknet_rpc: format!( "https://starknet-mainnet.g.alchemy.com/starknet/version/rpc/v0_7/{api_key}" ), @@ -34,7 +30,7 @@ async fn main() -> Result<()> { calldata: vec![], }; - let state = beerus.get_l1_state().await?; + let state = beerus.get_state().await?; let res = beerus.execute(calldata, state)?; println!("{:#?}", res); diff --git a/examples/state.rs b/examples/state.rs index 5be82f98..e0ee93d9 100644 --- a/examples/state.rs +++ b/examples/state.rs @@ -10,10 +10,6 @@ async fn main() -> Result<()> { .context("ALCHEMY_API_KEY is missing")?; let config = Config { - ethereum_rpc: format!( - "https://eth-mainnet.g.alchemy.com/v2/{api_key}" - ), - gateway_url: "https://alpha-mainnet.starknet.io".to_owned(), starknet_rpc: format!( "https://starknet-mainnet.g.alchemy.com/starknet/version/rpc/v0_7/{api_key}" ), @@ -23,7 +19,7 @@ async fn main() -> Result<()> { let http = Http::new(); let beerus = Client::new(&config, http).await?; - let state = beerus.get_l1_state().await?; + let state = beerus.get_state().await?; tracing::info!("{state:#?}"); Ok(()) diff --git a/src/bin/beerus.rs b/src/bin/beerus.rs index 779a7cb0..127263e3 100644 --- a/src/bin/beerus.rs +++ b/src/bin/beerus.rs @@ -17,7 +17,7 @@ async fn main() -> eyre::Result<()> { let http = Http::new(); let beerus = beerus::client::Client::new(&config.client, http).await?; - let state = beerus.get_l1_state().await?; + let state = beerus.get_state().await?; tracing::info!(?state, "initialized"); let state = Arc::new(RwLock::new(state)); diff --git a/src/client.rs b/src/client.rs index 35e90dbf..34844588 100644 --- a/src/client.rs +++ b/src/client.rs @@ -1,7 +1,6 @@ -use eyre::{Context, Result}; +use eyre::Result; -use crate::config::{check_chain_id, Config}; -use crate::eth::{EthereumClient, Helios}; +use crate::config::{get_gateway_url, Config}; use crate::feeder::GatewayClient; use crate::gen::client::Client as StarknetClient; use crate::gen::{gen, Felt, FunctionCall, Rpc}; @@ -109,7 +108,6 @@ pub struct Client< + 'static, > { starknet: StarknetClient, - ethereum: EthereumClient, gateway: GatewayClient, http: T, } @@ -127,15 +125,9 @@ impl< if rpc_spec_version != RPC_SPEC_VERSION { eyre::bail!("RPC spec version mismatch: expected {RPC_SPEC_VERSION} but got {rpc_spec_version}"); } - let network = - check_chain_id(&config.ethereum_rpc, &config.starknet_rpc).await?; - let ethereum = EthereumClient::new(config, network).await?; - let gateway = GatewayClient::new(&config.gateway_url)?; - Ok(Self { starknet, ethereum, gateway, http }) - } - - pub fn ethereum(&self) -> &Helios { - &self.ethereum.helios + let url = get_gateway_url(&config.starknet_rpc).await?; + let gateway = GatewayClient::new(url)?; + Ok(Self { starknet, gateway, http }) } pub fn starknet(&self) -> &StarknetClient { @@ -161,20 +153,6 @@ impl< .collect() } - pub async fn get_l1_state(&self) -> Result { - let (block_number, block_hash, state_root) = self - .ethereum - .starknet_state() - .await - .context("beerus: get starknet state")?; - - Ok(State { - block_number, - block_hash: as_felt(block_hash.as_bytes())?, - root: as_felt(state_root.as_bytes())?, - }) - } - pub async fn get_state(&self) -> Result { self.gateway.get_state().await } diff --git a/src/config.rs b/src/config.rs index 88f64bf0..86c1947d 100644 --- a/src/config.rs +++ b/src/config.rs @@ -4,7 +4,6 @@ use std::path::Path; use eyre::{eyre, Context, Result}; -use helios::config::networks::Network; use serde::Deserialize; use validator::Validate; @@ -12,9 +11,6 @@ use validator::Validate; const DEFAULT_DATA_DIR: &str = "tmp"; const DEFAULT_POLL_SECS: u64 = 5; -const MAINNET_ETHEREUM_CHAINID: &str = "0x1"; -const SEPOLIA_ETHEREUM_CHAINID: &str = "0xaa36a7"; - pub const MAINNET_STARKNET_CHAINID: &str = "0x534e5f4d41494e"; pub const SEPOLIA_STARKNET_CHAINID: &str = "0x534e5f5345504f4c4941"; @@ -34,10 +30,6 @@ pub struct ServerConfig { #[derive(Clone, Deserialize, Debug, Validate)] pub struct Config { - #[validate(url)] - pub ethereum_rpc: String, - #[validate(url)] - pub gateway_url: String, #[validate(url)] pub starknet_rpc: String, #[cfg(not(target_arch = "wasm32"))] @@ -72,10 +64,6 @@ impl ServerConfig { }; Ok(Self { client: Config { - ethereum_rpc: std::env::var("ETHEREUM_RPC") - .context("ETHEREUM_RPC env var missing")?, - gateway_url: std::env::var("GATEWAY_URL") - .context("GATEWAY_URL is missing")?, starknet_rpc: std::env::var("STARKNET_RPC") .context("STARKNET_RPC env var missing")?, #[cfg(not(target_arch = "wasm32"))] @@ -93,40 +81,13 @@ impl ServerConfig { } } -pub async fn check_chain_id( - ethereum_rpc: &str, - starknet_rpc: &str, -) -> Result { - let ethereum_chain_id = call_method(ethereum_rpc, "eth_chainId").await?; - let starknet_chain_id = - call_method(starknet_rpc, "starknet_chainId").await?; - - if ethereum_chain_id == MAINNET_ETHEREUM_CHAINID - && starknet_chain_id == MAINNET_STARKNET_CHAINID - { - return Ok(Network::MAINNET); +pub async fn get_gateway_url(starknet_rpc: &str) -> Result<&'static str> { + let chain_id = call_method(starknet_rpc, "starknet_chainId").await?; + match chain_id.as_str() { + MAINNET_STARKNET_CHAINID => Ok("https://alpha-mainnet.starknet.io"), + SEPOLIA_STARKNET_CHAINID => Ok("https://alpha-sepolia.starknet.io"), + _ => eyre::bail!("Unexpected chain id: {}", chain_id) } - - if ethereum_chain_id == SEPOLIA_ETHEREUM_CHAINID - && starknet_chain_id == SEPOLIA_STARKNET_CHAINID - { - return Ok(Network::SEPOLIA); - } - - #[cfg(feature = "testing")] - if starknet_chain_id == KATANA_STARKNET_CHAINID { - return match ethereum_chain_id.as_str() { - MAINNET_ETHEREUM_CHAINID => Ok(Network::MAINNET), - SEPOLIA_ETHEREUM_CHAINID => Ok(Network::SEPOLIA), - _ => { - eyre::bail!( - "Unexpected Ethereum chain_id: {ethereum_chain_id}" - ); - } - }; - } - - eyre::bail!("chain_id mismatch: ethereum={ethereum_chain_id}, starknet={starknet_chain_id}") } pub fn check_data_dir>(path: &P) -> Result<()> { @@ -175,31 +136,11 @@ async fn call_method(url: &str, method: &str) -> Result { #[cfg(test)] mod tests { use super::*; - use wiremock::{ - matchers::body_partial_json, Mock, MockServer, ResponseTemplate, - }; - - async fn mock( - patterns: &[(serde_json::Value, serde_json::Value)], - ) -> MockServer { - let server = MockServer::start().await; - for (request, response) in patterns { - Mock::given(body_partial_json(request)) - .respond_with( - ResponseTemplate::new(200).set_body_json(response), - ) - .mount(&server) - .await; - } - server - } #[tokio::test] async fn wrong_urls() { let config = ServerConfig { client: Config { - ethereum_rpc: "foo".to_string(), - gateway_url: "baz".to_string(), starknet_rpc: "bar".to_string(), data_dir: Default::default(), }, @@ -209,145 +150,13 @@ mod tests { let response = config.client.validate(); assert!(response.is_err()); - assert!(response.unwrap_err().to_string().contains("ethereum_rpc")); - } - - #[tokio::test] - async fn test_mainnet_detected() { - let server = mock(&[ - ( - serde_json::json!({ - "method": "eth_chainId" - }), - serde_json::json!({ - "id": 0, - "jsonrpc": "2.0", - "result": MAINNET_ETHEREUM_CHAINID - }), - ), - ( - serde_json::json!({ - "method": "starknet_chainId" - }), - serde_json::json!({ - "id": 0, - "jsonrpc": "2.0", - "result": MAINNET_STARKNET_CHAINID - }), - ), - ]) - .await; - - let rpc = format!("http://{}/", server.address()); - let network = check_chain_id(&rpc, &rpc).await.expect("check_chain_id"); - assert_eq!(network, Network::MAINNET); - } - - #[tokio::test] - async fn test_testnet_detected() { - let server = mock(&[ - ( - serde_json::json!({ - "method": "eth_chainId" - }), - serde_json::json!({ - "id": 0, - "jsonrpc": "2.0", - "result": SEPOLIA_ETHEREUM_CHAINID - }), - ), - ( - serde_json::json!({ - "method": "starknet_chainId" - }), - serde_json::json!({ - "id": 0, - "jsonrpc": "2.0", - "result": SEPOLIA_STARKNET_CHAINID - }), - ), - ]) - .await; - - let rpc = format!("http://{}/", server.address()); - let network = check_chain_id(&rpc, &rpc).await.expect("check_chain_id"); - assert_eq!(network, Network::SEPOLIA); - } - - #[tokio::test] - async fn test_chain_mismatch() { - let server = mock(&[ - ( - serde_json::json!({ - "method": "eth_chainId" - }), - serde_json::json!({ - "id": 0, - "jsonrpc": "2.0", - "result": "0xA" - }), - ), - ( - serde_json::json!({ - "method": "starknet_chainId" - }), - serde_json::json!({ - "id": 0, - "jsonrpc": "2.0", - "result": "0xB" - }), - ), - ]) - .await; - - let rpc = format!("http://{}/", server.address()); - let result = check_chain_id(&rpc, &rpc).await; - assert_eq!( - result.unwrap_err().to_string(), - "chain_id mismatch: ethereum=0xA, starknet=0xB" - ); - } - - #[tokio::test] - async fn test_chain_error() { - let server = mock(&[ - ( - serde_json::json!({ - "method": "eth_chainId" - }), - serde_json::json!({ - "id": 0, - "jsonrpc": "2.0", - "result": "0xcafebabe" - }), - ), - ( - serde_json::json!({ - "method": "starknet_chainId" - }), - serde_json::json!({ - "id": 0, - "jsonrpc": "2.0", - "error": "computer says no" - }), - ), - ]) - .await; - - let rpc = format!("http://{}/", server.address()); - let result = check_chain_id(&rpc, &rpc).await; - assert_eq!( - result.unwrap_err().to_string(), - "rpc error: computer says no" - ); + assert!(response.unwrap_err().to_string().contains("starknet_rpc")); } #[tokio::test] async fn wrong_poll_secs() { let config = ServerConfig { client: Config { - ethereum_rpc: "foo".to_string(), - gateway_url: "baz".to_string(), starknet_rpc: "bar".to_string(), data_dir: Default::default(), }, diff --git a/src/eth.rs b/src/eth.rs deleted file mode 100644 index 4951c526..00000000 --- a/src/eth.rs +++ /dev/null @@ -1,239 +0,0 @@ -use std::str::FromStr; -#[cfg(target_arch = "wasm32")] -use web_time::Instant; - -use ethers::types::{Address, Bytes, SyncingStatus, H256}; -use eyre::{Context, Result}; -use helios::client::{Client, ClientBuilder}; -use helios::config::checkpoints; -use helios::config::networks::Network; - -#[cfg(target_arch = "wasm32")] -use helios::prelude::ConfigDB as DB; -#[cfg(not(target_arch = "wasm32"))] -use helios::prelude::FileDB as DB; -use helios::types::{BlockTag, CallOpts}; - -use crate::config::Config; - -#[cfg(target_arch = "wasm32")] -mod setup { - pub const MAINNET_CONSENSUS_RPC: &str = - "http://127.0.0.1:3000/www.lightclientdata.org"; - pub const MAINNET_FALLBACK_RPC: &str = - "http://127.0.0.1:3000/sync-mainnet.beaconcha.in"; - - pub const SEPOLIA_CONSENSUS_RPC: &str = - "http://127.0.0.1:3000/unstable.sepolia.beacon-api.nimbus.team"; - pub const SEPOLIA_FALLBACK_RPC: &str = - "http://127.0.0.1:3000/sync-sepolia.beaconcha.in"; -} - -#[cfg(not(target_arch = "wasm32"))] -mod setup { - pub const MAINNET_CONSENSUS_RPC: &str = "https://www.lightclientdata.org"; - pub const MAINNET_FALLBACK_RPC: &str = "https://sync-mainnet.beaconcha.in"; - - pub const SEPOLIA_CONSENSUS_RPC: &str = - "http://unstable.sepolia.beacon-api.nimbus.team"; - pub const SEPOLIA_FALLBACK_RPC: &str = "https://sync-sepolia.beaconcha.in"; -} - -const MAINNET_CC_ADDRESS: &str = "c662c410C0ECf747543f5bA90660f6ABeBD9C8c4"; - -const SEPOLIA_CC_ADDRESS: &str = "E2Bb56ee936fd6433DC0F6e7e3b8365C906AA057"; - -use setup::*; - -pub type Helios = Client; - -pub struct EthereumClient { - pub helios: Client, - starknet_core_contract_address: Address, -} - -impl EthereumClient { - pub async fn new(config: &Config, network: Network) -> Result { - #[cfg(not(target_arch = "wasm32"))] - let mut helios = - get_client(&config.ethereum_rpc, network, &config.data_dir).await?; - - #[cfg(target_arch = "wasm32")] - let mut helios = get_client(&config.ethereum_rpc, network).await?; - - helios.start().await.context("helios start")?; - while let SyncingStatus::IsSyncing(sync) = - helios.syncing().await.context("helios sync")? - { - tracing::info!(head=?sync.highest_block, "syncing"); - sleep(std::time::Duration::from_secs(1)).await; - } - - Ok(Self { - helios, - starknet_core_contract_address: get_core_contract_address( - &network, - )?, - }) - } - - pub async fn latest(&self) -> Result<(u64, H256)> { - let block_number = self - .helios - .get_block_number() - .await - .context("helios:get_block_number")? - .as_u64(); - let ret = self - .helios - .get_block_by_number(BlockTag::Number(block_number), false) - .await - .context("helios:get_block_by_number")? - .map(|block| (block_number, block.hash)) - .ok_or_else(|| eyre::eyre!("Failed to fetch latest block"))?; - Ok(ret) - } - - pub async fn starknet_state(&self) -> Result<(u64, H256, H256)> { - let (number, _) = self.latest().await?; - let tag = BlockTag::Number(number); - - #[cfg(target_arch = "wasm32")] - let now = Instant::now(); - - let data = 0x35befa5du32.to_be_bytes(); // keccak("stateBlockNumber()") - let block_number: [u8; 32] = self - .call(&data, tag) - .await - .context("helios: state block number")?; - let block_number: [u8; 8] = block_number[24..].try_into().unwrap(); - let block_number = u64::from_be_bytes(block_number); - - #[cfg(target_arch = "wasm32")] - log_latency("stateBlockNumber", &now); - - #[cfg(target_arch = "wasm32")] - let now = Instant::now(); - - let data = 0x382d83e3u32.to_be_bytes(); // keccak("stateBlockHash()") - let block_hash: H256 = - self.call(&data, tag).await.context("helios: state block hash")?; - - #[cfg(target_arch = "wasm32")] - log_latency("stateBlockHash", &now); - - #[cfg(target_arch = "wasm32")] - let now = Instant::now(); - - let data = 0x9588eca2u32.to_be_bytes(); // keccak("stateRoot()")" - let root: H256 = - self.call(&data, tag).await.context("helios: state root")?; - - #[cfg(target_arch = "wasm32")] - log_latency("stateRoot", &now); - - tracing::debug!(block_number, ?block_hash, ?root, "starknet state"); - - Ok((block_number, block_hash, root)) - } - - async fn call>( - &self, - data: &[u8], - tag: BlockTag, - ) -> Result { - let opts = CallOpts { - from: None, - to: Some(self.starknet_core_contract_address), - gas: None, - gas_price: None, - value: None, - data: Some(Bytes::from(data.to_vec())), - }; - - let ret = self.helios.call(&opts, tag).await.context("helios: call")?; - - if ret.len() != N { - eyre::bail!("Expected {} bytes but got {}!", N, ret.len()); - } - let sized: [u8; N] = ret.try_into().unwrap(); - Ok(sized.into()) - } -} - -#[cfg(target_arch = "wasm32")] -fn log_latency(method: &str, instant: &Instant) { - let millis = instant.elapsed().as_millis(); - let message = format!("call to {method} completed in {millis} ms"); - web_sys::console::log_1(&message.into()); -} - -async fn get_client( - rpc: &str, - network: Network, - #[cfg(not(target_arch = "wasm32"))] data_dir: &str, -) -> Result> { - let consensus_rpc = - get_consensus_rpc(&network).context("consensus rpc url")?; - let fallback_rpc = - get_fallback_address(&network).context("fallback rpc url")?; - let checkpoint = get_checkpoint(&network).await.context("checkpoint")?; - - let builder = ClientBuilder::new() - .network(network) - .consensus_rpc(consensus_rpc) - .execution_rpc(rpc) - .checkpoint(&checkpoint) - .load_external_fallback() - .fallback(fallback_rpc); - - #[cfg(not(target_arch = "wasm32"))] - let builder = builder.data_dir(data_dir.into()); - - builder.build() -} - -fn get_core_contract_address(network: &Network) -> Result
{ - match network { - Network::MAINNET => Ok(Address::from_str(MAINNET_CC_ADDRESS)?), - Network::SEPOLIA => Ok(Address::from_str(SEPOLIA_CC_ADDRESS)?), - network => eyre::bail!("unsupported network: {network:?}"), - } -} - -fn get_consensus_rpc(network: &Network) -> Result<&str> { - match network { - Network::MAINNET => Ok(MAINNET_CONSENSUS_RPC), - Network::SEPOLIA => Ok(SEPOLIA_CONSENSUS_RPC), - network => eyre::bail!("unsupported network: {network:?}"), - } -} - -fn get_fallback_address(network: &Network) -> Result<&str> { - match network { - Network::MAINNET => Ok(MAINNET_FALLBACK_RPC), - Network::SEPOLIA => Ok(SEPOLIA_FALLBACK_RPC), - network => eyre::bail!("unsupported network: {network:?}"), - } -} - -async fn get_checkpoint(network: &Network) -> Result { - if !matches!(network, Network::MAINNET | Network::SEPOLIA) { - eyre::bail!("unsupported network: {:?}", network); - } - - let cf = checkpoints::CheckpointFallback::new().build().await?; - let checkpoint = cf.fetch_latest_checkpoint(network).await?; - Ok(format!("{checkpoint:x}")) -} - -async fn sleep(delay: std::time::Duration) { - #[cfg(not(target_arch = "wasm32"))] - tokio::time::sleep(delay).await; - - #[cfg(target_arch = "wasm32")] - { - let millis = delay.as_millis() as u32; - gloo_timers::future::TimeoutFuture::new(millis).await; - } -} diff --git a/src/lib.rs b/src/lib.rs index 68a087e7..fdcb8eb2 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,6 +1,5 @@ pub mod client; pub mod config; -pub mod eth; pub mod exe; pub mod feeder; From 7fdc2867783f5dcbd4280d1b0036ffbbd9942ea9 Mon Sep 17 00:00:00 2001 From: dwiekawki Date: Fri, 10 Jan 2025 21:45:49 +0100 Subject: [PATCH 03/22] style: fmt --- src/config.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/config.rs b/src/config.rs index 86c1947d..2e480025 100644 --- a/src/config.rs +++ b/src/config.rs @@ -86,7 +86,7 @@ pub async fn get_gateway_url(starknet_rpc: &str) -> Result<&'static str> { match chain_id.as_str() { MAINNET_STARKNET_CHAINID => Ok("https://alpha-mainnet.starknet.io"), SEPOLIA_STARKNET_CHAINID => Ok("https://alpha-sepolia.starknet.io"), - _ => eyre::bail!("Unexpected chain id: {}", chain_id) + _ => eyre::bail!("Unexpected chain id: {}", chain_id), } } From 106de4f3faaa112b2e1d45b91abe9dc7bf2beb07 Mon Sep 17 00:00:00 2001 From: dwiekawki Date: Fri, 10 Jan 2025 21:53:55 +0100 Subject: [PATCH 04/22] chore(deps): remove `ethers` --- Cargo.lock | 782 ++--------------------------------------------- Cargo.toml | 3 +- src/exe/cache.rs | 10 +- 3 files changed, 30 insertions(+), 765 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 60152210..bdd23e7b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2,16 +2,6 @@ # It is not intended for manual editing. version = 4 -[[package]] -name = "Inflector" -version = "0.11.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe438c63458706e03479442743baae6c88256498e6431708f6dfc520a26515d3" -dependencies = [ - "lazy_static", - "regex", -] - [[package]] name = "addr2line" version = "0.24.1" @@ -100,9 +90,9 @@ dependencies = [ [[package]] name = "alloy-primitives" -version = "0.8.5" +version = "0.8.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "260d3ff3bff0bb84599f032a2f2c6828180b0ea0cd41fdaf44f39cef3ba41861" +checksum = "3aeeb5825c2fc8c2662167058347cd0cafc3cb15bcb5cdb1758a63c2dca0409e" dependencies = [ "bytes", "cfg-if", @@ -377,17 +367,6 @@ dependencies = [ "syn 2.0.79", ] -[[package]] -name = "async_io_stream" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6d7b9decdf35d8908a7e3ef02f64c5e9b1695e230154c0e8de3969142d9b94c" -dependencies = [ - "futures", - "pharos", - "rustc_version", -] - [[package]] name = "atomic-waker" version = "1.1.2" @@ -557,7 +536,7 @@ dependencies = [ name = "beerus" version = "0.6.1" dependencies = [ - "alloy-primitives 0.8.5", + "alloy-primitives 0.8.13", "anyhow", "async-trait", "axum", @@ -567,10 +546,9 @@ dependencies = [ "cairo-lang-starknet-classes 2.7.0", "chrono", "clap", - "ethers", "eyre", "flate2", - "gloo-timers 0.3.0", + "gloo-timers", "hex", "iamgroot", "katana-core", @@ -2630,22 +2608,6 @@ version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "67ba02a97a2bd10f4b59b25c7973101c79642302776489e030cd13cdab09ed15" -[[package]] -name = "coins-bip32" -version = "0.8.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b6be4a5df2098cd811f3194f64ddb96c267606bffd9689ac7b0160097b01ad3" -dependencies = [ - "bs58", - "coins-core 0.8.7", - "digest 0.10.7", - "hmac", - "k256", - "serde", - "sha2", - "thiserror", -] - [[package]] name = "coins-bip32" version = "0.11.1" @@ -2653,7 +2615,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "66c43ff7fd9ff522219058808a259e61423335767b1071d5b346de60d9219657" dependencies = [ "bs58", - "coins-core 0.11.1", + "coins-core", "digest 0.10.7", "hmac", "k256", @@ -2662,42 +2624,6 @@ dependencies = [ "thiserror", ] -[[package]] -name = "coins-bip39" -version = "0.8.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3db8fba409ce3dc04f7d804074039eb68b960b0829161f8e06c95fea3f122528" -dependencies = [ - "bitvec", - "coins-bip32 0.8.7", - "hmac", - "once_cell", - "pbkdf2 0.12.2", - "rand", - "sha2", - "thiserror", -] - -[[package]] -name = "coins-core" -version = "0.8.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5286a0843c21f8367f7be734f89df9b822e0321d8bcce8d6e735aadff7d74979" -dependencies = [ - "base64 0.21.7", - "bech32", - "bs58", - "digest 0.10.7", - "generic-array", - "hex", - "ripemd", - "serde", - "serde_derive", - "sha2", - "sha3", - "thiserror", -] - [[package]] name = "coins-core" version = "0.11.1" @@ -3405,24 +3331,6 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c34f04666d835ff5d62e058c3995147c06f42fe86ff053337632bca83e42702d" -[[package]] -name = "enr" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a3d8dc56e02f954cac8eb489772c552c473346fc34f67412bb6244fd647f7e4" -dependencies = [ - "base64 0.21.7", - "bytes", - "hex", - "k256", - "log", - "rand", - "rlp", - "serde", - "sha3", - "zeroize", -] - [[package]] name = "env_filter" version = "0.1.2" @@ -3507,7 +3415,7 @@ dependencies = [ "digest 0.10.7", "hex", "hmac", - "pbkdf2 0.11.0", + "pbkdf2", "rand", "scrypt", "serde", @@ -3518,23 +3426,6 @@ dependencies = [ "uuid 0.8.2", ] -[[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", - "uint", -] - [[package]] name = "ethbloom" version = "0.13.0" @@ -3543,10 +3434,8 @@ checksum = "c22d4b5885b6aa2fe5e8b9329fb8d232bf739e434e6b87347c63bdd00c120f60" dependencies = [ "crunchy", "fixed-hash", - "impl-codec", "impl-rlp", "impl-serde", - "scale-info", "tiny-keccak", ] @@ -3558,262 +3447,12 @@ checksum = "02d215cbf040552efcbe99a38372fe80ab9d00268e20012b79fcd0f073edd8ee" dependencies = [ "ethbloom", "fixed-hash", - "impl-codec", "impl-rlp", "impl-serde", "primitive-types", - "scale-info", "uint", ] -[[package]] -name = "ethers" -version = "2.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "816841ea989f0c69e459af1cf23a6b0033b19a55424a1ea3a30099becdb8dec0" -dependencies = [ - "ethers-addressbook", - "ethers-contract", - "ethers-core", - "ethers-etherscan", - "ethers-middleware", - "ethers-providers", - "ethers-signers", - "ethers-solc", -] - -[[package]] -name = "ethers-addressbook" -version = "2.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5495afd16b4faa556c3bba1f21b98b4983e53c1755022377051a975c3b021759" -dependencies = [ - "ethers-core", - "once_cell", - "serde", - "serde_json", -] - -[[package]] -name = "ethers-contract" -version = "2.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fceafa3578c836eeb874af87abacfb041f92b4da0a78a5edd042564b8ecdaaa" -dependencies = [ - "const-hex", - "ethers-contract-abigen", - "ethers-contract-derive", - "ethers-core", - "ethers-providers", - "futures-util", - "once_cell", - "pin-project", - "serde", - "serde_json", - "thiserror", -] - -[[package]] -name = "ethers-contract-abigen" -version = "2.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04ba01fbc2331a38c429eb95d4a570166781f14290ef9fdb144278a90b5a739b" -dependencies = [ - "Inflector", - "const-hex", - "dunce", - "ethers-core", - "ethers-etherscan", - "eyre", - "prettyplease", - "proc-macro2", - "quote", - "regex", - "reqwest 0.11.27", - "serde", - "serde_json", - "syn 2.0.79", - "toml", - "walkdir", -] - -[[package]] -name = "ethers-contract-derive" -version = "2.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87689dcabc0051cde10caaade298f9e9093d65f6125c14575db3fd8c669a168f" -dependencies = [ - "Inflector", - "const-hex", - "ethers-contract-abigen", - "ethers-core", - "proc-macro2", - "quote", - "serde_json", - "syn 2.0.79", -] - -[[package]] -name = "ethers-core" -version = "2.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82d80cc6ad30b14a48ab786523af33b37f28a8623fc06afd55324816ef18fb1f" -dependencies = [ - "arrayvec", - "bytes", - "cargo_metadata", - "chrono", - "const-hex", - "elliptic-curve", - "ethabi", - "generic-array", - "k256", - "num_enum", - "once_cell", - "open-fastrlp", - "rand", - "rlp", - "serde", - "serde_json", - "strum 0.26.3", - "syn 2.0.79", - "tempfile", - "thiserror", - "tiny-keccak", - "unicode-xid", -] - -[[package]] -name = "ethers-etherscan" -version = "2.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e79e5973c26d4baf0ce55520bd732314328cabe53193286671b47144145b9649" -dependencies = [ - "chrono", - "ethers-core", - "reqwest 0.11.27", - "semver", - "serde", - "serde_json", - "thiserror", - "tracing", -] - -[[package]] -name = "ethers-middleware" -version = "2.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48f9fdf09aec667c099909d91908d5eaf9be1bd0e2500ba4172c1d28bfaa43de" -dependencies = [ - "async-trait", - "auto_impl", - "ethers-contract", - "ethers-core", - "ethers-etherscan", - "ethers-providers", - "ethers-signers", - "futures-channel", - "futures-locks", - "futures-util", - "instant", - "reqwest 0.11.27", - "serde", - "serde_json", - "thiserror", - "tokio", - "tracing", - "tracing-futures", - "url", -] - -[[package]] -name = "ethers-providers" -version = "2.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6434c9a33891f1effc9c75472e12666db2fa5a0fec4b29af6221680a6fe83ab2" -dependencies = [ - "async-trait", - "auto_impl", - "base64 0.21.7", - "bytes", - "const-hex", - "enr", - "ethers-core", - "futures-core", - "futures-timer", - "futures-util", - "hashers", - "http 0.2.12", - "instant", - "jsonwebtoken", - "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", -] - -[[package]] -name = "ethers-signers" -version = "2.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "228875491c782ad851773b652dd8ecac62cda8571d3bc32a5853644dd26766c2" -dependencies = [ - "async-trait", - "coins-bip32 0.8.7", - "coins-bip39", - "const-hex", - "elliptic-curve", - "eth-keystore", - "ethers-core", - "rand", - "sha2", - "thiserror", - "tracing", -] - -[[package]] -name = "ethers-solc" -version = "2.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66244a771d9163282646dbeffe0e6eca4dda4146b6498644e678ac6089b11edd" -dependencies = [ - "cfg-if", - "const-hex", - "dirs", - "dunce", - "ethers-core", - "glob", - "home", - "md-5", - "num_cpus", - "once_cell", - "path-slash", - "rayon", - "regex", - "semver", - "serde", - "serde_json", - "solang-parser", - "svm-rs", - "thiserror", - "tiny-keccak", - "tokio", - "tracing", - "walkdir", - "yansi 0.5.1", -] - [[package]] name = "eyre" version = "0.6.12" @@ -3922,16 +3561,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 = "fs4" version = "0.7.0" @@ -4004,16 +3633,6 @@ version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" -[[package]] -name = "futures-locks" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45ec6fe3675af967e67c5536c0b9d44e34e6c52f86bedc4ea49c5317b8e94d06" -dependencies = [ - "futures-channel", - "futures-task", -] - [[package]] name = "futures-macro" version = "0.3.30" @@ -4042,10 +3661,6 @@ name = "futures-timer" version = "3.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24" -dependencies = [ - "gloo-timers 0.2.6", - "send_wrapper 0.4.0", -] [[package]] name = "futures-util" @@ -4065,15 +3680,6 @@ dependencies = [ "slab", ] -[[package]] -name = "fxhash" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" -dependencies = [ - "byteorder", -] - [[package]] name = "genco" version = "0.17.9" @@ -4956,21 +4562,9 @@ checksum = "15f1ce686646e7f1e19bf7d5533fe443a45dbfb990e00629110797578b42fb19" dependencies = [ "aho-corasick", "bstr", - "log", - "regex-automata 0.4.8", - "regex-syntax 0.8.5", -] - -[[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", + "log", + "regex-automata 0.4.8", + "regex-syntax 0.8.5", ] [[package]] @@ -5081,15 +4675,6 @@ dependencies = [ "foldhash", ] -[[package]] -name = "hashers" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2bca93b15ea5a746f220e56587f71e73c6165eab783df9e26590069953e3c30" -dependencies = [ - "fxhash", -] - [[package]] name = "hdrhistogram" version = "7.5.4" @@ -5826,20 +5411,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "jsonwebtoken" -version = "8.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6971da4d9c3aa03c3d8f3ff0f4155b534aad021292003895a469716b2a230378" -dependencies = [ - "base64 0.21.7", - "pem", - "ring 0.16.20", - "serde", - "serde_json", - "simple_asn1", -] - [[package]] name = "k256" version = "0.13.4" @@ -6175,7 +5746,7 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" dependencies = [ - "spin 0.9.8", + "spin", ] [[package]] @@ -6348,16 +5919,6 @@ dependencies = [ "rawpointer", ] -[[package]] -name = "md-5" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf" -dependencies = [ - "cfg-if", - "digest 0.10.7", -] - [[package]] name = "memchr" version = "2.7.4" @@ -6695,27 +6256,6 @@ dependencies = [ "libc", ] -[[package]] -name = "num_enum" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e613fc340b2220f734a8595782c551f1250e969d87d3be1ae0579e8d4065179" -dependencies = [ - "num_enum_derive", -] - -[[package]] -name = "num_enum_derive" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" -dependencies = [ - "proc-macro-crate 3.2.0", - "proc-macro2", - "quote", - "syn 2.0.79", -] - [[package]] name = "num_threads" version = "0.1.7" @@ -6761,31 +6301,6 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" -[[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 = "open-fastrlp-derive" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "003b2be5c6c53c1cfeb0a238b8a1c3915cd410feb684457a36c10038f764bb1c" -dependencies = [ - "bytes", - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "openssl" version = "0.10.66" @@ -6986,12 +6501,6 @@ dependencies = [ "once_cell", ] -[[package]] -name = "path-slash" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e91099d4268b0e11973f036e885d652fb0b21fedcf69738c627f94db6a44f42" - [[package]] name = "pathdiff" version = "0.2.1" @@ -7013,31 +6522,12 @@ dependencies = [ "sha2", ] -[[package]] -name = "pbkdf2" -version = "0.12.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2" -dependencies = [ - "digest 0.10.7", - "hmac", -] - [[package]] name = "peeking_take_while" version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" -[[package]] -name = "pem" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8835c273a76a90455d7344889b0964598e3316e2a79ede8e36f16bdcf2228b8" -dependencies = [ - "base64 0.13.1", -] - [[package]] name = "percent-encoding" version = "2.3.1" @@ -7054,16 +6544,6 @@ dependencies = [ "indexmap 2.5.0", ] -[[package]] -name = "pharos" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9567389417feee6ce15dd6527a8a1ecac205ef62c2932bcf3d9f6fc5b78b414" -dependencies = [ - "futures", - "rustc_version", -] - [[package]] name = "phf" version = "0.11.2" @@ -7238,7 +6718,6 @@ dependencies = [ "impl-codec", "impl-rlp", "impl-serde", - "scale-info", "uint", ] @@ -7384,7 +6863,7 @@ checksum = "fadfaed2cd7f389d0161bb73eeb07b7b78f8691047a6f3e73caaeae55310a4a6" dependencies = [ "bytes", "rand", - "ring 0.17.8", + "ring", "rustc-hash 2.0.0", "rustls 0.23.13", "slab", @@ -7741,21 +7220,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "ring" -version = "0.16.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc" -dependencies = [ - "cc", - "libc", - "once_cell", - "spin 0.5.2", - "untrusted 0.7.1", - "web-sys", - "winapi", -] - [[package]] name = "ring" version = "0.17.8" @@ -7766,8 +7230,8 @@ dependencies = [ "cfg-if", "getrandom", "libc", - "spin 0.9.8", - "untrusted 0.9.0", + "spin", + "untrusted", "windows-sys 0.52.0", ] @@ -7796,21 +7260,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bb919243f34364b6bd2fc10ef797edbfa75f33c252e7998527479c6d6b47e1ec" dependencies = [ "bytes", - "rlp-derive", "rustc-hex", ] -[[package]] -name = "rlp-derive" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e33d7b2abe0c340d8797fe2907d3f20d3b5ea5908683618bfe80df7f621f672a" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "roaring" version = "0.10.6" @@ -7991,7 +7443,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e" dependencies = [ "log", - "ring 0.17.8", + "ring", "rustls-webpki 0.101.7", "sct", ] @@ -8005,7 +7457,7 @@ dependencies = [ "aws-lc-rs", "log", "once_cell", - "ring 0.17.8", + "ring", "rustls-pki-types", "rustls-webpki 0.102.8", "subtle", @@ -8068,8 +7520,8 @@ version = "0.101.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" dependencies = [ - "ring 0.17.8", - "untrusted 0.9.0", + "ring", + "untrusted", ] [[package]] @@ -8079,9 +7531,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "64ca1bc8749bd4cf37b5ce386cc146580777b4e8572c7b97baf22c83f444bee9" dependencies = [ "aws-lc-rs", - "ring 0.17.8", + "ring", "rustls-pki-types", - "untrusted 0.9.0", + "untrusted", ] [[package]] @@ -8143,30 +7595,6 @@ dependencies = [ "winapi-util", ] -[[package]] -name = "scale-info" -version = "2.11.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "346a3b32eba2640d17a9cb5927056b08f3de90f65b72fe09402c2ad07d684d0b" -dependencies = [ - "cfg-if", - "derive_more 1.0.0", - "parity-scale-codec", - "scale-info-derive", -] - -[[package]] -name = "scale-info-derive" -version = "2.11.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6630024bf739e2179b91fb424b28898baf819414262c5d376677dbff1fe7ebf" -dependencies = [ - "proc-macro-crate 3.2.0", - "proc-macro2", - "quote", - "syn 2.0.79", -] - [[package]] name = "scarb" version = "2.8.3" @@ -8350,7 +7778,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9f9e24d2b632954ded8ab2ef9fea0a0c769ea56ea98bddbafbad22caeeadf45d" dependencies = [ "hmac", - "pbkdf2 0.11.0", + "pbkdf2", "salsa20", "sha2", ] @@ -8361,8 +7789,8 @@ version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" dependencies = [ - "ring 0.17.8", - "untrusted 0.9.0", + "ring", + "untrusted", ] [[package]] @@ -8411,18 +7839,6 @@ dependencies = [ "serde", ] -[[package]] -name = "send_wrapper" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f638d531eccd6e23b980caf34876660d38e265409d8e99b397ab71eb3612fad0" - -[[package]] -name = "send_wrapper" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73" - [[package]] name = "serde" version = "1.0.210" @@ -8707,18 +8123,6 @@ dependencies = [ "rand_core", ] -[[package]] -name = "simple_asn1" -version = "0.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adc4e5204eb1910f40f9cfa375f6f05b68c3abac4b6fd879c8ff5e7ae8a0a085" -dependencies = [ - "num-bigint", - "num-traits 0.2.19", - "thiserror", - "time", -] - [[package]] name = "siphasher" version = "0.3.11" @@ -8781,26 +8185,6 @@ dependencies = [ "sha-1", ] -[[package]] -name = "solang-parser" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c425ce1c59f4b154717592f0bdf4715c3a1d55058883622d3157e1f0908a5b26" -dependencies = [ - "itertools 0.11.0", - "lalrpop", - "lalrpop-util", - "phf", - "thiserror", - "unicode-xid", -] - -[[package]] -name = "spin" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" - [[package]] name = "spin" version = "0.9.8" @@ -9290,7 +8674,7 @@ source = "git+https://github.com/xJonathanLEI/starknet-rs?rev=db1fa598232f0698d9 dependencies = [ "async-trait", "auto_impl", - "coins-bip32 0.11.1", + "coins-bip32", "coins-ledger", "crypto-bigint", "eth-keystore", @@ -9408,15 +8792,6 @@ version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "290d54ea6f91c969195bdbcd7442c8c2a2ba87da8bf60a7ee86a235d4bc1e125" -[[package]] -name = "strum" -version = "0.26.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" -dependencies = [ - "strum_macros 0.26.4", -] - [[package]] name = "strum_macros" version = "0.24.3" @@ -9443,45 +8818,12 @@ dependencies = [ "syn 2.0.79", ] -[[package]] -name = "strum_macros" -version = "0.26.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" -dependencies = [ - "heck 0.5.0", - "proc-macro2", - "quote", - "rustversion", - "syn 2.0.79", -] - [[package]] name = "subtle" version = "2.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" -[[package]] -name = "svm-rs" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11297baafe5fa0c99d5722458eac6a5e25c01eb1b8e5cd137f54079093daa7a4" -dependencies = [ - "dirs", - "fs2", - "hex", - "once_cell", - "reqwest 0.11.27", - "semver", - "serde", - "serde_json", - "sha2", - "thiserror", - "url", - "zip", -] - [[package]] name = "syn" version = "1.0.109" @@ -9780,21 +9122,6 @@ dependencies = [ "tokio", ] -[[package]] -name = "tokio-tungstenite" -version = "0.20.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "212d5dcb2a1ce06d81107c3d0ffa3121fe974b73f068c8282cb1c32328113b6c" -dependencies = [ - "futures-util", - "log", - "rustls 0.21.12", - "tokio", - "tokio-rustls 0.24.1", - "tungstenite", - "webpki-roots 0.25.4", -] - [[package]] name = "tokio-util" version = "0.7.12" @@ -9968,16 +9295,6 @@ dependencies = [ "valuable", ] -[[package]] -name = "tracing-futures" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2" -dependencies = [ - "pin-project", - "tracing", -] - [[package]] name = "tracing-log" version = "0.2.0" @@ -10023,26 +9340,6 @@ version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" -[[package]] -name = "tungstenite" -version = "0.20.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e3dac10fd62eaf6617d3a904ae222845979aec67c615d1c842b4002c7666fb9" -dependencies = [ - "byteorder", - "bytes", - "data-encoding", - "http 0.2.12", - "httparse", - "log", - "rand", - "rustls 0.21.12", - "sha1", - "thiserror", - "url", - "utf-8", -] - [[package]] name = "typed-builder" version = "0.20.0" @@ -10165,12 +9462,6 @@ version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" -[[package]] -name = "untrusted" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" - [[package]] name = "untrusted" version = "0.9.0" @@ -10207,12 +9498,6 @@ dependencies = [ "serde", ] -[[package]] -name = "utf-8" -version = "0.7.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" - [[package]] name = "utf8parse" version = "0.2.2" @@ -10787,25 +10072,6 @@ dependencies = [ "url", ] -[[package]] -name = "ws_stream_wasm" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7999f5f4217fe3818726b66257a4475f71e74ffd190776ad053fa159e50737f5" -dependencies = [ - "async_io_stream", - "futures", - "js-sys", - "log", - "pharos", - "rustc_version", - "send_wrapper 0.6.0", - "thiserror", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", -] - [[package]] name = "wyz" version = "0.5.1" @@ -10914,7 +10180,7 @@ dependencies = [ "crossbeam-utils", "flate2", "hmac", - "pbkdf2 0.11.0", + "pbkdf2", "sha1", "time", "zstd 0.11.2+zstd.1.5.2", diff --git a/Cargo.toml b/Cargo.toml index d602d789..e6dec78e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -38,7 +38,7 @@ validator = { version = "0.18.1", features = ["derive"] } url = "2.5.1" toml = "0.8.19" lru = "0.12.5" -ethers = "2.0.14" +alloy-primitives = { version = "0.8.5", default-features = false } [target.'cfg(not(target_arch = "wasm32"))'.dependencies] @@ -69,7 +69,6 @@ web-time = "1.1.0" [dev-dependencies] anyhow = "1.0.92" -alloy-primitives = { version = "0.8.5", default-features = false } chrono = "0.4.38" clap = "4.5.20" katana-core = { git = "https://github.com/dojoengine/dojo", tag = "v1.0.0-alpha.9" } diff --git a/src/exe/cache.rs b/src/exe/cache.rs index a9ff4555..831a15fb 100644 --- a/src/exe/cache.rs +++ b/src/exe/cache.rs @@ -1,5 +1,5 @@ +use alloy_primitives::U256; use blockifier::state::state_api::{State as BlockifierState, StateReader}; -use ethers::types::U256; use lru::LruCache; use starknet_api::{core::ContractAddress, state::StorageKey}; use starknet_types_core::felt::Felt as StarkFelt; @@ -37,8 +37,8 @@ mod storage { ) -> Key { ( block_hash.as_ref().parse().unwrap(), - contract_address.0.key().to_bytes_be().into(), - storage_key.0.key().to_bytes_be().into(), + U256::from_be_bytes(contract_address.0.key().to_bytes_be()), + U256::from_be_bytes(storage_key.0.key().to_bytes_be()), ) } } @@ -71,7 +71,7 @@ mod class_hash { ) -> Key { ( block_hash.as_ref().parse().unwrap(), - contract_address.0.key().to_bytes_be().into(), + U256::from_be_bytes(contract_address.0.key().to_bytes_be()), ) } } @@ -104,7 +104,7 @@ mod contract_class { ) -> Key { ( block_hash.as_ref().parse().unwrap(), - class_hash.0.to_bytes_be().into(), + U256::from_be_bytes(class_hash.0.to_bytes_be()), ) } } From b898c5a219c64cf09eccb8cc5f7906f09af00ddc Mon Sep 17 00:00:00 2001 From: dwiekawki Date: Fri, 10 Jan 2025 21:59:00 +0100 Subject: [PATCH 05/22] chore: switch default poll period to 30 seconds --- src/config.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/config.rs b/src/config.rs index 2e480025..c93aed79 100644 --- a/src/config.rs +++ b/src/config.rs @@ -9,7 +9,7 @@ use validator::Validate; #[cfg(not(target_arch = "wasm32"))] const DEFAULT_DATA_DIR: &str = "tmp"; -const DEFAULT_POLL_SECS: u64 = 5; +const DEFAULT_POLL_SECS: u64 = 30; pub const MAINNET_STARKNET_CHAINID: &str = "0x534e5f4d41494e"; pub const SEPOLIA_STARKNET_CHAINID: &str = "0x534e5f5345504f4c4941"; From f5730f8c5e9777ccb416c2cf72e40ea578e3f2ca Mon Sep 17 00:00:00 2001 From: dwiekawki Date: Fri, 10 Jan 2025 23:37:04 +0100 Subject: [PATCH 06/22] chore: remove unused constant --- src/config.rs | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/config.rs b/src/config.rs index c93aed79..ce7ee550 100644 --- a/src/config.rs +++ b/src/config.rs @@ -14,9 +14,6 @@ const DEFAULT_POLL_SECS: u64 = 30; pub const MAINNET_STARKNET_CHAINID: &str = "0x534e5f4d41494e"; pub const SEPOLIA_STARKNET_CHAINID: &str = "0x534e5f5345504f4c4941"; -#[cfg(feature = "testing")] -const KATANA_STARKNET_CHAINID: &str = "0x4b4154414e41"; - #[derive(Clone, Deserialize, Debug, Validate)] pub struct ServerConfig { #[serde(flatten)] From e07553962432844f57c30850fc96aa528ad2ceb3 Mon Sep 17 00:00:00 2001 From: dwiekawki Date: Fri, 10 Jan 2025 23:37:20 +0100 Subject: [PATCH 07/22] chore: remove `testing` feature --- Cargo.toml | 1 - 1 file changed, 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index e6dec78e..fd36c7e6 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -9,7 +9,6 @@ license = "MIT" [features] default = ["rpc"] rpc = ["dep:axum"] -testing = [] [profile.release] lto = true From 19ddc457ad2af059485c0ce4ea39e37c5bd5fe39 Mon Sep 17 00:00:00 2001 From: dwiekawki Date: Fri, 10 Jan 2025 23:51:27 +0100 Subject: [PATCH 08/22] feat(L2): add `gateway_url` config param --- examples/call.rs | 1 + examples/state.rs | 1 + src/client.rs | 6 +++++- src/config.rs | 5 +++++ 4 files changed, 12 insertions(+), 1 deletion(-) diff --git a/examples/call.rs b/examples/call.rs index b2e0d826..54fbdcd9 100644 --- a/examples/call.rs +++ b/examples/call.rs @@ -14,6 +14,7 @@ async fn main() -> Result<()> { starknet_rpc: format!( "https://starknet-mainnet.g.alchemy.com/starknet/version/rpc/v0_7/{api_key}" ), + gateway_url: None, data_dir: "tmp".to_owned(), }; diff --git a/examples/state.rs b/examples/state.rs index e0ee93d9..5073e610 100644 --- a/examples/state.rs +++ b/examples/state.rs @@ -13,6 +13,7 @@ async fn main() -> Result<()> { starknet_rpc: format!( "https://starknet-mainnet.g.alchemy.com/starknet/version/rpc/v0_7/{api_key}" ), + gateway_url: None, data_dir: "tmp".to_owned(), }; diff --git a/src/client.rs b/src/client.rs index 34844588..5a572e12 100644 --- a/src/client.rs +++ b/src/client.rs @@ -125,7 +125,11 @@ impl< if rpc_spec_version != RPC_SPEC_VERSION { eyre::bail!("RPC spec version mismatch: expected {RPC_SPEC_VERSION} but got {rpc_spec_version}"); } - let url = get_gateway_url(&config.starknet_rpc).await?; + let url = if let Some(url) = config.gateway_url.as_ref() { + url.as_str() + } else { + get_gateway_url(&config.starknet_rpc).await? + }; let gateway = GatewayClient::new(url)?; Ok(Self { starknet, gateway, http }) } diff --git a/src/config.rs b/src/config.rs index ce7ee550..7141d4cb 100644 --- a/src/config.rs +++ b/src/config.rs @@ -29,6 +29,8 @@ pub struct ServerConfig { pub struct Config { #[validate(url)] pub starknet_rpc: String, + #[validate(url)] + pub gateway_url: Option, #[cfg(not(target_arch = "wasm32"))] #[serde(default = "default_data_dir")] pub data_dir: String, @@ -63,6 +65,7 @@ impl ServerConfig { client: Config { starknet_rpc: std::env::var("STARKNET_RPC") .context("STARKNET_RPC env var missing")?, + gateway_url: std::env::var("GATEWAY_URL").ok(), #[cfg(not(target_arch = "wasm32"))] data_dir: std::env::var("DATA_DIR") .unwrap_or_else(|_| default_data_dir()), @@ -139,6 +142,7 @@ mod tests { let config = ServerConfig { client: Config { starknet_rpc: "bar".to_string(), + gateway_url: None, data_dir: Default::default(), }, poll_secs: 300, @@ -155,6 +159,7 @@ mod tests { let config = ServerConfig { client: Config { starknet_rpc: "bar".to_string(), + gateway_url: None, data_dir: Default::default(), }, poll_secs: 9999, From 7c6ece28c4b124810baa209d8153bf3440763acc Mon Sep 17 00:00:00 2001 From: dwiekawki Date: Sat, 11 Jan 2025 00:24:57 +0100 Subject: [PATCH 09/22] feat(L2/wasm): remove `helios` & `ethers` --- web/app.js | 2 +- web/beerus-web/Cargo.lock | 3621 ++----------------------------------- web/beerus-web/Cargo.toml | 7 +- web/beerus-web/src/lib.rs | 40 +- 4 files changed, 174 insertions(+), 3496 deletions(-) diff --git a/web/app.js b/web/app.js index d9231063..c4a711ab 100644 --- a/web/app.js +++ b/web/app.js @@ -162,7 +162,7 @@ document.addEventListener("DOMContentLoaded", () => { return; } const config = JSON.stringify({ - ethereum_url: `http://127.0.0.1:3000/eth-mainnet.g.alchemy.com/v2/${alchemyKey}`, + gateway_rpc: 'http://127.0.0.1:3000/alpha-mainnet.starknet.io', starknet_url: `http://127.0.0.1:3000/starknet-mainnet.g.alchemy.com/starknet/version/rpc/v0_7/${alchemyKey}` }); worker.postMessage(config); diff --git a/web/beerus-web/Cargo.lock b/web/beerus-web/Cargo.lock index 7ebd8e65..397c9905 100644 --- a/web/beerus-web/Cargo.lock +++ b/web/beerus-web/Cargo.lock @@ -1,16 +1,6 @@ # This file is automatically @generated by Cargo. # It is not intended for manual editing. -version = 3 - -[[package]] -name = "Inflector" -version = "0.11.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe438c63458706e03479442743baae6c88256498e6431708f6dfc520a26515d3" -dependencies = [ - "lazy_static", - "regex", -] +version = 4 [[package]] name = "addr2line" @@ -27,17 +17,6 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" -[[package]] -name = "aes" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0" -dependencies = [ - "cfg-if", - "cipher", - "cpufeatures", -] - [[package]] name = "ahash" version = "0.8.11" @@ -67,57 +46,18 @@ checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" [[package]] name = "alloy-primitives" -version = "0.4.2" +version = "0.8.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0628ec0ba5b98b3370bb6be17b12f23bfce8ee4ad83823325a20546d9b03b78" +checksum = "788bb18e8f61d5d9340b52143f27771daf7e1dccbaf2741621d2493f9debf52e" dependencies = [ - "alloy-rlp", "bytes", "cfg-if", "const-hex", - "derive_more 0.99.18", - "hex-literal", + "derive_more 1.0.0", "itoa", + "paste", "ruint", - "serde", - "tiny-keccak 2.0.2", -] - -[[package]] -name = "alloy-rlp" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da0822426598f95e45dd1ea32a738dac057529a709ee645fcc516ffa4cbde08f" -dependencies = [ - "alloy-rlp-derive", - "arrayvec 0.7.6", - "bytes", -] - -[[package]] -name = "alloy-rlp-derive" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b09cae092c27b6f1bde952653a22708691802e57bfef4a2973b80bea21efd3f" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.85", -] - -[[package]] -name = "android-tzdata" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" - -[[package]] -name = "android_system_properties" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" -dependencies = [ - "libc", + "tiny-keccak", ] [[package]] @@ -154,7 +94,7 @@ dependencies = [ "ark-serialize", "ark-std", "derivative", - "digest 0.10.7", + "digest", "itertools 0.10.5", "num-bigint", "num-traits 0.2.19", @@ -229,7 +169,7 @@ checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" dependencies = [ "ark-serialize-derive", "ark-std", - "digest 0.10.7", + "digest", "num-bigint", ] @@ -251,15 +191,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" dependencies = [ "num-traits 0.2.19", - "rand 0.8.5", + "rand", ] -[[package]] -name = "arrayvec" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" - [[package]] name = "arrayvec" version = "0.7.6" @@ -281,15 +215,6 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9" -[[package]] -name = "async-lock" -version = "2.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "287272293e9d8c41773cec55e365490fe034813a2f172f502d6ddcf75b2f582b" -dependencies = [ - "event-listener", -] - [[package]] name = "async-trait" version = "0.1.83" @@ -301,37 +226,6 @@ dependencies = [ "syn 2.0.85", ] -[[package]] -name = "async_io_stream" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6d7b9decdf35d8908a7e3ef02f64c5e9b1695e230154c0e8de3969142d9b94c" -dependencies = [ - "futures", - "pharos", - "rustc_version", -] - -[[package]] -name = "atomic" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d818003e740b63afc82337e3160717f4f63078720a810b7b903e70a5d1d2994" -dependencies = [ - "bytemuck", -] - -[[package]] -name = "auto_impl" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.85", -] - [[package]] name = "autocfg" version = "1.4.0" @@ -353,71 +247,31 @@ dependencies = [ "windows-targets 0.52.6", ] -[[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" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" - [[package]] name = "base64" version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" -[[package]] -name = "base64ct" -version = "1.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" - -[[package]] -name = "bech32" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d86b93f97252c47b41663388e6d155714a9d0c398b99f1005cbc5f978b29f445" - -[[package]] -name = "beef" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a8241f3ebb85c056b509d4327ad0358fbbba6ffb340bf388f26350aeda225b1" -dependencies = [ - "serde", -] - [[package]] name = "beerus" version = "0.6.1" dependencies = [ + "alloy-primitives", "async-trait", - "base64 0.22.1", - "bitvec 1.0.1", + "base64", + "bitvec", "blockifier", "cairo-lang-starknet-classes 2.7.0", - "ethers", "eyre", "flate2", - "gloo-timers 0.3.0", - "helios", + "gloo-timers", "hex", "iamgroot", "lru", "once_cell", "regex", - "reqwest 0.12.9", + "reqwest", "serde", "serde_json", "starknet-crypto 0.7.2", @@ -442,13 +296,11 @@ dependencies = [ "async-trait", "beerus", "console_error_panic_hook", - "ethers", - "helios", "iamgroot", "js-sys", "num-bigint", "num-traits 0.2.19", - "reqwest 0.12.9", + "reqwest", "serde", "serde_json", "tokio", @@ -466,29 +318,6 @@ dependencies = [ "serde", ] -[[package]] -name = "bindgen" -version = "0.66.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2b84e06fc203107bfbad243f4aba2af864eb7db3b1cf46ea0a023b0b433d2a7" -dependencies = [ - "bitflags 2.6.0", - "cexpr", - "clang-sys", - "lazy_static", - "lazycell", - "log", - "peeking_take_while", - "prettyplease", - "proc-macro2", - "quote", - "regex", - "rustc-hash 1.1.0", - "shlex", - "syn 2.0.85", - "which", -] - [[package]] name = "bit-set" version = "0.5.3" @@ -515,19 +344,6 @@ name = "bitflags" version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" -dependencies = [ - "serde", -] - -[[package]] -name = "bitvec" -version = "0.17.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41262f11d771fd4a61aa3ce019fca363b4b6c282fca9da2a31186d3965a47a5c" -dependencies = [ - "either", - "radium 0.3.0", -] [[package]] name = "bitvec" @@ -536,21 +352,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" dependencies = [ "funty", - "radium 0.7.0", - "serde", + "radium", "tap", "wyz", ] -[[package]] -name = "block-buffer" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" -dependencies = [ - "generic-array", -] - [[package]] name = "block-buffer" version = "0.10.4" @@ -591,7 +397,7 @@ dependencies = [ "phf", "serde", "serde_json", - "sha2 0.10.8", + "sha2", "sha3", "starknet-types-core", "starknet_api", @@ -600,28 +406,6 @@ dependencies = [ "thiserror", ] -[[package]] -name = "blst" -version = "0.3.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4378725facc195f1a538864863f6de233b500a8862747e7f165078a419d5e874" -dependencies = [ - "cc", - "glob", - "threadpool", - "zeroize", -] - -[[package]] -name = "bs58" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf88ba1141d185c399bee5288d850d63b8369520c1eafc32a0430b5b6c287bf4" -dependencies = [ - "sha2 0.10.8", - "tinyvec", -] - [[package]] name = "bstr" version = "1.10.0" @@ -638,24 +422,12 @@ version = "3.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" -[[package]] -name = "byte-slice-cast" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0a5e3906bcbf133e33c1d4d95afc664ad37fbdb9f6568d8043e7ea8c27d93d3" - [[package]] name = "byte-slice-cast" version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c" -[[package]] -name = "bytemuck" -version = "1.19.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8334215b81e418a0a7bdb8ef0849474f40bb10c8b71f1c4ed315cff49f32494d" - [[package]] name = "byteorder" version = "1.5.0" @@ -667,45 +439,6 @@ name = "bytes" version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9ac0150caa2ae65ca5bd83f25c7de183dea78d4d366469f148435e2acfbad0da" -dependencies = [ - "serde", -] - -[[package]] -name = "bzip2" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8" -dependencies = [ - "bzip2-sys", - "libc", -] - -[[package]] -name = "bzip2-sys" -version = "0.1.11+1.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc" -dependencies = [ - "cc", - "libc", - "pkg-config", -] - -[[package]] -name = "c-kzg" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac926d808fb72fe09ebf471a091d6d72918876ccf0b4989766093d2d0d24a0ef" -dependencies = [ - "bindgen", - "blst", - "cc", - "glob", - "hex", - "libc", - "serde", -] [[package]] name = "cached" @@ -752,7 +485,7 @@ dependencies = [ "indoc", "num-bigint", "num-traits 0.2.19", - "parity-scale-codec 3.6.12", + "parity-scale-codec", "serde", ] @@ -766,7 +499,7 @@ dependencies = [ "indoc", "num-bigint", "num-traits 0.2.19", - "parity-scale-codec 3.6.12", + "parity-scale-codec", "serde", ] @@ -988,8 +721,8 @@ dependencies = [ "num-bigint", "num-integer", "num-traits 0.2.19", - "rand 0.8.5", - "sha2 0.10.8", + "rand", + "sha2", "smol_str", "starknet-types-core", "thiserror", @@ -1343,7 +1076,7 @@ dependencies = [ "itertools 0.12.1", "num-bigint", "num-traits 0.2.19", - "parity-scale-codec 3.6.12", + "parity-scale-codec", "schemars", "serde", ] @@ -1370,7 +1103,7 @@ source = "git+https://github.com/sergey-melnychuk/cairo-vm.git?tag=beerus-wasm-2 dependencies = [ "anyhow", "bincode", - "bitvec 1.0.1", + "bitvec", "generic-array", "hashbrown 0.14.5", "hex", @@ -1382,11 +1115,11 @@ dependencies = [ "num-prime", "num-traits 0.2.19", "parking_lot 0.12.3", - "rand 0.8.5", + "rand", "rust_decimal", "serde", "serde_json", - "sha2 0.10.8", + "sha2", "sha3", "starknet-crypto 0.6.2", "starknet-types-core", @@ -1394,58 +1127,15 @@ dependencies = [ "zip", ] -[[package]] -name = "camino" -version = "1.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b96ec4966b5813e2c0507c1f86115c8c5abaadc3980879c3424042a02fd1ad3" -dependencies = [ - "serde", -] - -[[package]] -name = "cargo-platform" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24b1f0365a6c6bb4020cd05806fd0d33c44d38046b8bd7f0e40814b9763cabfc" -dependencies = [ - "serde", -] - -[[package]] -name = "cargo_metadata" -version = "0.18.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d886547e41f740c616ae73108f6eb70afe6d940c7bc697cb30f13daec073037" -dependencies = [ - "camino", - "cargo-platform", - "semver", - "serde", - "serde_json", - "thiserror", -] - [[package]] name = "cc" version = "1.1.31" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2e7962b54006dcfcc61cb72735f4d89bb97061dd6a7ed882ec6b8ee53714c6f" dependencies = [ - "jobserver", - "libc", "shlex", ] -[[package]] -name = "cexpr" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766" -dependencies = [ - "nom", -] - [[package]] name = "cfg-if" version = "1.0.0" @@ -1459,231 +1149,47 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" [[package]] -name = "chrono" -version = "0.4.38" +name = "colored" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" +checksum = "cbf2150cce219b664a8a70df7a1f933836724b503f8a413af9365b4dcc4d90b8" dependencies = [ - "android-tzdata", - "iana-time-zone", - "js-sys", - "num-traits 0.2.19", - "wasm-bindgen", - "windows-targets 0.52.6", + "lazy_static", + "windows-sys 0.48.0", ] [[package]] -name = "cipher" -version = "0.4.4" +name = "console_error_panic_hook" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" +checksum = "a06aeb73f470f66dcdbf7223caeebb85984942f22f1adb2a088cf9668146bbbc" dependencies = [ - "crypto-common", - "inout", + "cfg-if", + "wasm-bindgen", ] [[package]] -name = "clang-sys" -version = "1.8.1" +name = "const-fnv1a-hash" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4" -dependencies = [ - "glob", - "libc", - "libloading", -] +checksum = "32b13ea120a812beba79e34316b3942a857c86ec1593cb34f27bb28272ce2cca" [[package]] -name = "client" -version = "0.5.5" -source = "git+https://github.com/sergey-melnychuk/helios?branch=beerus-wasm#762a5508a2984b4c82d257b17fbfdc2bdf4fb4d5" +name = "const-hex" +version = "1.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4b0485bab839b018a8f1723fc5391819fea5f8f0f32288ef8a735fd096b6160c" dependencies = [ - "common", - "config", - "consensus", - "ethers", - "execution", - "eyre", - "futures", - "gloo-timers 0.2.6", + "cfg-if", + "cpufeatures", "hex", - "jsonrpsee", - "parking_lot 0.11.2", + "proptest", "serde", - "ssz_rs", - "thiserror", - "tokio", - "tracing", - "wasm-bindgen-futures", - "zduny-wasm-timer", ] [[package]] -name = "coins-bip32" -version = "0.8.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b6be4a5df2098cd811f3194f64ddb96c267606bffd9689ac7b0160097b01ad3" -dependencies = [ - "bs58", - "coins-core", - "digest 0.10.7", - "hmac", - "k256", - "serde", - "sha2 0.10.8", - "thiserror", -] - -[[package]] -name = "coins-bip39" -version = "0.8.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3db8fba409ce3dc04f7d804074039eb68b960b0829161f8e06c95fea3f122528" -dependencies = [ - "bitvec 1.0.1", - "coins-bip32", - "hmac", - "once_cell", - "pbkdf2 0.12.2", - "rand 0.8.5", - "sha2 0.10.8", - "thiserror", -] - -[[package]] -name = "coins-core" -version = "0.8.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5286a0843c21f8367f7be734f89df9b822e0321d8bcce8d6e735aadff7d74979" -dependencies = [ - "base64 0.21.7", - "bech32", - "bs58", - "digest 0.10.7", - "generic-array", - "hex", - "ripemd", - "serde", - "serde_derive", - "sha2 0.10.8", - "sha3", - "thiserror", -] - -[[package]] -name = "colored" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cbf2150cce219b664a8a70df7a1f933836724b503f8a413af9365b4dcc4d90b8" -dependencies = [ - "lazy_static", - "windows-sys 0.48.0", -] - -[[package]] -name = "common" -version = "0.5.5" -source = "git+https://github.com/sergey-melnychuk/helios?branch=beerus-wasm#762a5508a2984b4c82d257b17fbfdc2bdf4fb4d5" -dependencies = [ - "ethers", - "eyre", - "hex", - "serde", - "ssz_rs", - "thiserror", -] - -[[package]] -name = "config" -version = "0.5.5" -source = "git+https://github.com/sergey-melnychuk/helios?branch=beerus-wasm#762a5508a2984b4c82d257b17fbfdc2bdf4fb4d5" -dependencies = [ - "common", - "dirs 4.0.0", - "ethers", - "eyre", - "figment", - "futures", - "hex", - "reqwest 0.11.27", - "retri", - "serde", - "serde_yaml", - "strum 0.24.1", - "thiserror", - "tokio", - "tracing", -] - -[[package]] -name = "consensus" -version = "0.5.5" -source = "git+https://github.com/sergey-melnychuk/helios?branch=beerus-wasm#762a5508a2984b4c82d257b17fbfdc2bdf4fb4d5" -dependencies = [ - "async-trait", - "bytes", - "chrono", - "common", - "config", - "ethers", - "eyre", - "futures", - "getrandom 0.2.15", - "hex", - "openssl", - "parking_lot 0.11.2", - "reqwest 0.11.27", - "retri", - "serde", - "serde_json", - "snowbridge-milagro-bls", - "ssz_rs", - "superstruct", - "thiserror", - "tokio", - "tracing", - "wasm-bindgen-futures", - "zduny-wasm-timer", -] - -[[package]] -name = "console_error_panic_hook" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a06aeb73f470f66dcdbf7223caeebb85984942f22f1adb2a088cf9668146bbbc" -dependencies = [ - "cfg-if", - "wasm-bindgen", -] - -[[package]] -name = "const-fnv1a-hash" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32b13ea120a812beba79e34316b3942a857c86ec1593cb34f27bb28272ce2cca" - -[[package]] -name = "const-hex" -version = "1.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0121754e84117e65f9d90648ee6aa4882a6e63110307ab73967a4c5e7e69e586" -dependencies = [ - "cfg-if", - "cpufeatures", - "hex", - "proptest", - "serde", -] - -[[package]] -name = "const-oid" -version = "0.9.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" - -[[package]] -name = "const_format" -version = "0.2.33" +name = "const_format" +version = "0.2.33" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "50c655d81ff1114fb0dcdea9225ea9f0cc712a6f8d189378e82bdf62a473a64b" dependencies = [ @@ -1701,12 +1207,6 @@ dependencies = [ "unicode-xid", ] -[[package]] -name = "constant_time_eq" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" - [[package]] name = "convert_case" version = "0.4.0" @@ -1722,22 +1222,6 @@ dependencies = [ "unicode-segmentation", ] -[[package]] -name = "core-foundation" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" -dependencies = [ - "core-foundation-sys", - "libc", -] - -[[package]] -name = "core-foundation-sys" -version = "0.8.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" - [[package]] name = "cpufeatures" version = "0.2.14" @@ -1794,7 +1278,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" dependencies = [ "generic-array", - "rand_core 0.6.4", "subtle", "zeroize", ] @@ -1809,25 +1292,6 @@ dependencies = [ "typenum", ] -[[package]] -name = "ctr" -version = "0.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835" -dependencies = [ - "cipher", -] - -[[package]] -name = "darling" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c" -dependencies = [ - "darling_core 0.13.4", - "darling_macro 0.13.4", -] - [[package]] name = "darling" version = "0.14.4" @@ -1848,20 +1312,6 @@ dependencies = [ "darling_macro 0.20.10", ] -[[package]] -name = "darling_core" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610" -dependencies = [ - "fnv", - "ident_case", - "proc-macro2", - "quote", - "strsim 0.10.0", - "syn 1.0.109", -] - [[package]] name = "darling_core" version = "0.14.4" @@ -1890,17 +1340,6 @@ dependencies = [ "syn 2.0.85", ] -[[package]] -name = "darling_macro" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835" -dependencies = [ - "darling_core 0.13.4", - "quote", - "syn 1.0.109", -] - [[package]] name = "darling_macro" version = "0.14.4" @@ -1923,31 +1362,6 @@ dependencies = [ "syn 2.0.85", ] -[[package]] -name = "data-encoding" -version = "2.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" - -[[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", -] - [[package]] name = "derivative" version = "2.2.0" @@ -1990,6 +1404,7 @@ dependencies = [ "proc-macro2", "quote", "syn 2.0.85", + "unicode-xid", ] [[package]] @@ -2007,45 +1422,17 @@ dependencies = [ "nu-ansi-term", ] -[[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 0.10.4", - "const-oid", + "block-buffer", "crypto-common", "subtle", ] -[[package]] -name = "dirs" -version = "4.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059" -dependencies = [ - "dirs-sys 0.3.7", -] - -[[package]] -name = "dirs" -version = "5.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225" -dependencies = [ - "dirs-sys 0.4.1", -] - [[package]] name = "dirs-next" version = "2.0.0" @@ -2056,29 +1443,6 @@ dependencies = [ "dirs-sys-next", ] -[[package]] -name = "dirs-sys" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6" -dependencies = [ - "libc", - "redox_users", - "winapi", -] - -[[package]] -name = "dirs-sys" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" -dependencies = [ - "libc", - "option-ext", - "redox_users", - "windows-sys 0.48.0", -] - [[package]] name = "dirs-sys-next" version = "0.1.2" @@ -2090,57 +1454,18 @@ dependencies = [ "winapi", ] -[[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", - "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 0.6.4", - "sec1", - "subtle", - "zeroize", -] - [[package]] name = "ena" version = "0.14.3" @@ -2151,488 +1476,31 @@ dependencies = [ ] [[package]] -name = "encoding_rs" -version = "0.8.35" +name = "equivalent" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3" -dependencies = [ - "cfg-if", -] +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" [[package]] -name = "enr" -version = "0.9.1" +name = "eyre" +version = "0.6.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe81b5c06ecfdbc71dd845216f225f53b62a10cb8a16c946836a3467f701d05b" +checksum = "7cd915d99f24784cdc19fd37ef22b97e3ff0ae756c7e492e9fbfe897d61e2aec" dependencies = [ - "base64 0.21.7", - "bytes", - "hex", - "k256", - "log", - "rand 0.8.5", - "rlp 0.5.2", - "serde", - "sha3", - "zeroize", + "indenter", + "once_cell", ] [[package]] -name = "enumn" -version = "0.1.14" +name = "fixed-hash" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f9ed6b3789237c8a0c1c505af1c7eb2c560df6186f01b098c3a1064ea532f38" +checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.85", -] - -[[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.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" -dependencies = [ - "libc", - "windows-sys 0.52.0", -] - -[[package]] -name = "eth-keystore" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fda3bf123be441da5260717e0661c25a2fd9cb2b2c1d20bf2e05580047158ab" -dependencies = [ - "aes", - "ctr", - "digest 0.10.7", - "hex", - "hmac", - "pbkdf2 0.11.0", - "rand 0.8.5", - "scrypt", - "serde", - "serde_json", - "sha2 0.10.8", - "sha3", - "thiserror", - "uuid", -] - -[[package]] -name = "ethabi" -version = "18.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7413c5f74cc903ea37386a8965a936cbeb334bd270862fdece542c1b2dcbc898" -dependencies = [ - "ethereum-types 0.14.1", - "hex", - "once_cell", - "regex", - "serde", - "serde_json", - "sha3", - "thiserror", - "uint 0.9.5", -] - -[[package]] -name = "ethbloom" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32cfe1c169414b709cf28aa30c74060bdb830a03a8ba473314d079ac79d80a5f" -dependencies = [ - "crunchy", - "fixed-hash 0.5.2", - "impl-rlp 0.2.1", - "impl-serde 0.2.3", - "tiny-keccak 1.5.0", -] - -[[package]] -name = "ethbloom" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c22d4b5885b6aa2fe5e8b9329fb8d232bf739e434e6b87347c63bdd00c120f60" -dependencies = [ - "crunchy", - "fixed-hash 0.8.0", - "impl-codec 0.6.0", - "impl-rlp 0.3.0", - "impl-serde 0.4.0", - "scale-info", - "tiny-keccak 2.0.2", -] - -[[package]] -name = "ethereum-types" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba744248e3553a393143d5ebb68939fc3a4ec0c22a269682535f5ffe7fed728c" -dependencies = [ - "ethbloom 0.8.1", - "fixed-hash 0.5.2", - "impl-rlp 0.2.1", - "impl-serde 0.2.3", - "primitive-types 0.6.2", - "uint 0.8.5", -] - -[[package]] -name = "ethereum-types" -version = "0.14.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02d215cbf040552efcbe99a38372fe80ab9d00268e20012b79fcd0f073edd8ee" -dependencies = [ - "ethbloom 0.13.0", - "fixed-hash 0.8.0", - "impl-codec 0.6.0", - "impl-rlp 0.3.0", - "impl-serde 0.4.0", - "primitive-types 0.12.2", - "scale-info", - "uint 0.9.5", -] - -[[package]] -name = "ethers" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs?rev=3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef#3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" -dependencies = [ - "ethers-addressbook", - "ethers-contract", - "ethers-core", - "ethers-etherscan", - "ethers-middleware", - "ethers-providers", - "ethers-signers", - "ethers-solc", -] - -[[package]] -name = "ethers-addressbook" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs?rev=3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef#3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" -dependencies = [ - "ethers-core", - "once_cell", - "serde", - "serde_json", -] - -[[package]] -name = "ethers-contract" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs?rev=3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef#3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" -dependencies = [ - "const-hex", - "ethers-contract-abigen", - "ethers-contract-derive", - "ethers-core", - "ethers-providers", - "futures-util", - "once_cell", - "pin-project", - "serde", - "serde_json", - "thiserror", -] - -[[package]] -name = "ethers-contract-abigen" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs?rev=3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef#3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" -dependencies = [ - "Inflector", - "const-hex", - "dunce", - "ethers-core", - "ethers-etherscan", - "eyre", - "prettyplease", - "proc-macro2", - "quote", - "regex", - "reqwest 0.11.27", - "serde", - "serde_json", - "syn 2.0.85", - "toml", - "walkdir", -] - -[[package]] -name = "ethers-contract-derive" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs?rev=3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef#3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" -dependencies = [ - "Inflector", - "const-hex", - "ethers-contract-abigen", - "ethers-core", - "proc-macro2", - "quote", - "serde_json", - "syn 2.0.85", -] - -[[package]] -name = "ethers-core" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs?rev=3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef#3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" -dependencies = [ - "arrayvec 0.7.6", - "bytes", - "cargo_metadata", - "chrono", - "const-hex", - "elliptic-curve", - "ethabi", - "generic-array", - "k256", - "num_enum", - "once_cell", - "open-fastrlp", - "rand 0.8.5", - "rlp 0.5.2", - "serde", - "serde_json", - "strum 0.26.3", - "syn 2.0.85", - "tempfile", - "thiserror", - "tiny-keccak 2.0.2", - "unicode-xid", -] - -[[package]] -name = "ethers-etherscan" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs?rev=3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef#3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" -dependencies = [ - "chrono", - "ethers-core", - "reqwest 0.11.27", - "semver", - "serde", - "serde_json", - "thiserror", - "tracing", -] - -[[package]] -name = "ethers-middleware" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs?rev=3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef#3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" -dependencies = [ - "async-trait", - "auto_impl", - "ethers-contract", - "ethers-core", - "ethers-etherscan", - "ethers-providers", - "ethers-signers", - "futures-channel", - "futures-locks", - "futures-util", - "instant", - "reqwest 0.11.27", - "serde", - "serde_json", - "thiserror", - "tokio", - "tracing", - "tracing-futures", - "url", -] - -[[package]] -name = "ethers-providers" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs?rev=3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef#3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" -dependencies = [ - "async-trait", - "auto_impl", - "base64 0.21.7", - "bytes", - "const-hex", - "enr", - "ethers-core", - "futures-core", - "futures-timer", - "futures-util", - "hashers", - "http 0.2.12", - "instant", - "jsonwebtoken", - "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", -] - -[[package]] -name = "ethers-signers" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs?rev=3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef#3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" -dependencies = [ - "async-trait", - "coins-bip32", - "coins-bip39", - "const-hex", - "elliptic-curve", - "eth-keystore", - "ethers-core", - "rand 0.8.5", - "sha2 0.10.8", - "thiserror", - "tracing", -] - -[[package]] -name = "ethers-solc" -version = "2.0.13" -source = "git+https://github.com/gakonst/ethers-rs?rev=3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef#3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" -dependencies = [ - "cfg-if", - "const-hex", - "dirs 5.0.1", - "dunce", - "ethers-core", - "glob", - "home", - "md-5", - "num_cpus", - "once_cell", - "path-slash", - "rayon", - "regex", - "semver", - "serde", - "serde_json", - "solang-parser", - "svm-rs", - "thiserror", - "tiny-keccak 2.0.2", - "tokio", - "tracing", - "walkdir", - "yansi 0.5.1", -] - -[[package]] -name = "event-listener" -version = "2.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" - -[[package]] -name = "execution" -version = "0.5.5" -source = "git+https://github.com/sergey-melnychuk/helios?branch=beerus-wasm#762a5508a2984b4c82d257b17fbfdc2bdf4fb4d5" -dependencies = [ - "async-trait", - "bytes", - "common", - "consensus", - "ethers", - "eyre", - "futures", - "hex", - "hyper 0.14.31", - "openssl", - "reqwest 0.11.27", - "revm", - "serde", - "serde_json", - "ssz_rs", - "thiserror", - "tokio", - "tracing", - "triehash-ethereum", - "wasm-bindgen-futures", -] - -[[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.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" - -[[package]] -name = "ff" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" -dependencies = [ - "rand_core 0.6.4", - "subtle", -] - -[[package]] -name = "figment" -version = "0.10.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8cb01cd46b0cf372153850f4c6c272d9cbea2da513e07538405148f95bd789f3" -dependencies = [ - "atomic", - "pear", - "serde", - "toml", - "uncased", - "version_check", -] - -[[package]] -name = "fixed-hash" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3367952ceb191f4ab95dd5685dc163ac539e36202f9fcfd0cb22f9f9c542fefc" -dependencies = [ - "byteorder", - "rand 0.7.3", - "rustc-hex", - "static_assertions", -] - -[[package]] -name = "fixed-hash" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" -dependencies = [ - "byteorder", - "rand 0.8.5", - "rustc-hex", - "static_assertions", + "byteorder", + "rand", + "rustc-hex", + "static_assertions", ] [[package]] @@ -2663,21 +1531,6 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f81ec6369c545a7d40e4589b5597581fa1c441fe1cce96dd1de43159910a36a2" -[[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" @@ -2687,16 +1540,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" @@ -2711,7 +1554,6 @@ checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876" dependencies = [ "futures-channel", "futures-core", - "futures-executor", "futures-io", "futures-sink", "futures-task", @@ -2734,44 +1576,12 @@ 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-locks" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45ec6fe3675af967e67c5536c0b9d44e34e6c52f86bedc4ea49c5317b8e94d06" -dependencies = [ - "futures-channel", - "futures-task", -] - -[[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.85", -] - [[package]] name = "futures-sink" version = "0.3.31" @@ -2784,41 +1594,17 @@ 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 0.2.6", - "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 = "fxhash" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" -dependencies = [ - "byteorder", ] [[package]] @@ -2851,18 +1637,6 @@ checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" dependencies = [ "typenum", "version_check", - "zeroize", -] - -[[package]] -name = "getrandom" -version = "0.1.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce" -dependencies = [ - "cfg-if", - "libc", - "wasi 0.9.0+wasi-snapshot-preview1", ] [[package]] @@ -2874,7 +1648,7 @@ dependencies = [ "cfg-if", "js-sys", "libc", - "wasi 0.11.0+wasi-snapshot-preview1", + "wasi", "wasm-bindgen", ] @@ -2884,12 +1658,6 @@ version = "0.31.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" -[[package]] -name = "glob" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" - [[package]] name = "globset" version = "0.4.15" @@ -2903,38 +1671,6 @@ dependencies = [ "regex-syntax", ] -[[package]] -name = "gloo-net" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9902a044653b26b99f7e3693a42f171312d9be8b26b5697bd1e43ad1f8a35e10" -dependencies = [ - "futures-channel", - "futures-core", - "futures-sink", - "gloo-utils", - "js-sys", - "pin-project", - "serde", - "serde_json", - "thiserror", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", -] - -[[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 = "gloo-timers" version = "0.3.0" @@ -2947,19 +1683,6 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "gloo-utils" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "037fcb07216cb3a30f7292bd0176b050b7b9a052ba830ef7d5d65f6dc64ba58e" -dependencies = [ - "js-sys", - "serde", - "serde_json", - "wasm-bindgen", - "web-sys", -] - [[package]] name = "good_lp" version = "1.8.1" @@ -2970,42 +1693,6 @@ dependencies = [ "minilp", ] -[[package]] -name = "group" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" -dependencies = [ - "ff", - "rand_core 0.6.4", - "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.6.0", - "slab", - "tokio", - "tokio-util", - "tracing", -] - -[[package]] -name = "hash-db" -version = "0.15.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d23bd4e7b5eda0d0f3a307e8b381fdc8ba9000f26fbe912250c0a4cc3956364a" - [[package]] name = "hashbrown" version = "0.12.3" @@ -3043,15 +1730,6 @@ dependencies = [ "foldhash", ] -[[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.3.3" @@ -3067,24 +1745,6 @@ 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 = "helios" -version = "0.5.5" -source = "git+https://github.com/sergey-melnychuk/helios?branch=beerus-wasm#762a5508a2984b4c82d257b17fbfdc2bdf4fb4d5" -dependencies = [ - "client", - "common", - "config", - "consensus", - "execution", -] - [[package]] name = "hermit-abi" version = "0.3.9" @@ -3092,19 +1752,10 @@ 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 = "hex-literal" -version = "0.4.1" +name = "hex" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46" +checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" [[package]] name = "hmac" @@ -3112,27 +1763,7 @@ version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" dependencies = [ - "digest 0.10.7", -] - -[[package]] -name = "home" -version = "0.5.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" -dependencies = [ - "windows-sys 0.52.0", -] - -[[package]] -name = "http" -version = "0.2.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1" -dependencies = [ - "bytes", - "fnv", - "itoa", + "digest", ] [[package]] @@ -3146,17 +1777,6 @@ dependencies = [ "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" @@ -3164,7 +1784,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" dependencies = [ "bytes", - "http 1.1.0", + "http", ] [[package]] @@ -3175,8 +1795,8 @@ checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f" dependencies = [ "bytes", "futures-util", - "http 1.1.0", - "http-body 1.0.1", + "http", + "http-body", "pin-project-lite", ] @@ -3186,36 +1806,6 @@ version = "1.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7d71d3574edd2771538b901e6549113b4006ece66150fb69c0fb6d9a2adae946" -[[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.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c08302e8fa335b151b788c775ff56e7a03ae64ff85c548ee820fecb70356e85" -dependencies = [ - "bytes", - "futures-channel", - "futures-core", - "futures-util", - "h2", - "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.5.0" @@ -3225,8 +1815,8 @@ dependencies = [ "bytes", "futures-channel", "futures-util", - "http 1.1.0", - "http-body 1.0.1", + "http", + "http-body", "httparse", "itoa", "pin-project-lite", @@ -3235,36 +1825,6 @@ dependencies = [ "want", ] -[[package]] -name = "hyper-rustls" -version = "0.23.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1788965e61b367cd03a62950836d5cd41560c3577d90e40e0819373194d1661c" -dependencies = [ - "http 0.2.12", - "hyper 0.14.31", - "log", - "rustls 0.20.9", - "rustls-native-certs", - "tokio", - "tokio-rustls 0.23.4", - "webpki-roots 0.22.6", -] - -[[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.31", - "rustls 0.21.12", - "tokio", - "tokio-rustls 0.24.1", -] - [[package]] name = "hyper-rustls" version = "0.27.3" @@ -3272,28 +1832,15 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08afdbb5c31130e3034af566421053ab03787c640246a446327f550d11bcb333" dependencies = [ "futures-util", - "http 1.1.0", - "hyper 1.5.0", + "http", + "hyper", "hyper-util", - "rustls 0.23.16", + "rustls", "rustls-pki-types", "tokio", - "tokio-rustls 0.26.0", + "tokio-rustls", "tower-service", - "webpki-roots 0.26.6", -] - -[[package]] -name = "hyper-tls" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" -dependencies = [ - "bytes", - "hyper 0.14.31", - "native-tls", - "tokio", - "tokio-native-tls", + "webpki-roots", ] [[package]] @@ -3305,9 +1852,9 @@ dependencies = [ "bytes", "futures-channel", "futures-util", - "http 1.1.0", - "http-body 1.0.1", - "hyper 1.5.0", + "http", + "http-body", + "hyper", "pin-project-lite", "socket2", "tokio", @@ -3329,29 +1876,6 @@ dependencies = [ "tracing-subscriber", ] -[[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", -] - -[[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 = "id-arena" version = "2.2.1" @@ -3390,58 +1914,13 @@ dependencies = [ "winapi-util", ] -[[package]] -name = "impl-codec" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1be51a921b067b0eaca2fad532d9400041561aa922221cc65f95a85641c6bf53" -dependencies = [ - "parity-scale-codec 1.3.7", -] - [[package]] name = "impl-codec" version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba6a270039626615617f3f36d15fc827041df3b78c439da2cadfa47455a77f2f" dependencies = [ - "parity-scale-codec 3.6.12", -] - -[[package]] -name = "impl-rlp" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f7a72f11830b52333f36e3b09a288333888bf54380fd0ac0790a3c31ab0f3c5" -dependencies = [ - "rlp 0.4.6", -] - -[[package]] -name = "impl-rlp" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f28220f89297a075ddc7245cd538076ee98b01f2a9c23a53a4f1105d5a322808" -dependencies = [ - "rlp 0.5.2", -] - -[[package]] -name = "impl-serde" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58e3cae7e99c7ff5a995da2cf78dd0a5383740eda71d98cf7b1910c301ac69b8" -dependencies = [ - "serde", -] - -[[package]] -name = "impl-serde" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4551f042f3438e64dbd6226b20527fc84a6e1fe65688b58746a2f53623f25f5c" -dependencies = [ - "serde", + "parity-scale-codec", ] [[package]] @@ -3504,21 +1983,6 @@ version = "2.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5" -[[package]] -name = "inlinable_string" -version = "0.1.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8fae54786f62fb2918dcfae3d568594e50eb9b5c25bf04371af6fe7516452fb" - -[[package]] -name = "inout" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5" -dependencies = [ - "generic-array", -] - [[package]] name = "instant" version = "0.1.13" @@ -3526,9 +1990,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222" dependencies = [ "cfg-if", - "js-sys", - "wasm-bindgen", - "web-sys", ] [[package]] @@ -3559,244 +2020,24 @@ dependencies = [ name = "itertools" version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" -dependencies = [ - "either", -] - -[[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.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0" -dependencies = [ - "libc", -] - -[[package]] -name = "js-sys" -version = "0.3.72" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9" -dependencies = [ - "wasm-bindgen", -] - -[[package]] -name = "jsonrpsee" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8bd0d559d5e679b1ab2f869b486a11182923863b1b3ee8b421763cdd707b783a" -dependencies = [ - "jsonrpsee-client-transport", - "jsonrpsee-core", - "jsonrpsee-http-client", - "jsonrpsee-http-server", - "jsonrpsee-proc-macros", - "jsonrpsee-types", - "jsonrpsee-wasm-client", - "jsonrpsee-ws-client", - "jsonrpsee-ws-server", - "tracing", -] - -[[package]] -name = "jsonrpsee-client-transport" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8752740ecd374bcbf8b69f3e80b0327942df76f793f8d4e60d3355650c31fb74" -dependencies = [ - "anyhow", - "futures-channel", - "futures-timer", - "futures-util", - "gloo-net", - "http 0.2.12", - "jsonrpsee-core", - "jsonrpsee-types", - "pin-project", - "rustls-native-certs", - "soketto", - "thiserror", - "tokio", - "tokio-rustls 0.23.4", - "tokio-util", - "tracing", - "webpki-roots 0.22.6", -] - -[[package]] -name = "jsonrpsee-core" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3dc3e9cf2ba50b7b1d7d76a667619f82846caa39e8e8daa8a4962d74acaddca" -dependencies = [ - "anyhow", - "arrayvec 0.7.6", - "async-lock", - "async-trait", - "beef", - "futures-channel", - "futures-timer", - "futures-util", - "globset", - "http 0.2.12", - "hyper 0.14.31", - "jsonrpsee-types", - "lazy_static", - "parking_lot 0.12.3", - "rand 0.8.5", - "rustc-hash 1.1.0", - "serde", - "serde_json", - "soketto", - "thiserror", - "tokio", - "tracing", - "tracing-futures", - "unicase", - "wasm-bindgen-futures", -] - -[[package]] -name = "jsonrpsee-http-client" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52f7c0e2333ab2115c302eeb4f137c8a4af5ab609762df68bbda8f06496677c9" -dependencies = [ - "async-trait", - "hyper 0.14.31", - "hyper-rustls 0.23.2", - "jsonrpsee-core", - "jsonrpsee-types", - "rustc-hash 1.1.0", - "serde", - "serde_json", - "thiserror", - "tokio", - "tracing", - "tracing-futures", -] - -[[package]] -name = "jsonrpsee-http-server" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03802f0373a38c2420c70b5144742d800b509e2937edc4afb116434f07120117" -dependencies = [ - "futures-channel", - "futures-util", - "hyper 0.14.31", - "jsonrpsee-core", - "jsonrpsee-types", - "serde", - "serde_json", - "tokio", - "tracing", - "tracing-futures", -] - -[[package]] -name = "jsonrpsee-proc-macros" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd67957d4280217247588ac86614ead007b301ca2fa9f19c19f880a536f029e3" -dependencies = [ - "proc-macro-crate 1.3.1", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "jsonrpsee-types" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e290bba767401b646812f608c099b922d8142603c9e73a50fb192d3ac86f4a0d" -dependencies = [ - "anyhow", - "beef", - "serde", - "serde_json", - "thiserror", - "tracing", -] - -[[package]] -name = "jsonrpsee-wasm-client" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "597b4eb94730e7695d0a2a429bc37a12e6e84d12680fdafb9b8f5f53652aab57" -dependencies = [ - "jsonrpsee-client-transport", - "jsonrpsee-core", - "jsonrpsee-types", -] - -[[package]] -name = "jsonrpsee-ws-client" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ee5feddd5188e62ac08fcf0e56478138e581509d4730f3f7be9b57dd402a4ff" -dependencies = [ - "http 0.2.12", - "jsonrpsee-client-transport", - "jsonrpsee-core", - "jsonrpsee-types", -] - -[[package]] -name = "jsonrpsee-ws-server" -version = "0.15.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d488ba74fb369e5ab68926feb75a483458b88e768d44319f37e4ecad283c7325" -dependencies = [ - "futures-channel", - "futures-util", - "http 0.2.12", - "jsonrpsee-core", - "jsonrpsee-types", - "serde_json", - "soketto", - "tokio", - "tokio-stream", - "tokio-util", - "tracing", - "tracing-futures", +checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" +dependencies = [ + "either", ] [[package]] -name = "jsonwebtoken" -version = "8.3.0" +name = "itoa" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6971da4d9c3aa03c3d8f3ff0f4155b534aad021292003895a469716b2a230378" -dependencies = [ - "base64 0.21.7", - "pem", - "ring 0.16.20", - "serde", - "serde_json", - "simple_asn1", -] +checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" [[package]] -name = "k256" -version = "0.13.4" +name = "js-sys" +version = "0.3.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6e3919bbaa2945715f0bb6d3934a173d1e9a59ac23767fbaaef277265a7411b" +checksum = "6a88f1bda2bd75b0452a14784937d796722fdebfe50df998aeb3f0b7603019a9" dependencies = [ - "cfg-if", - "ecdsa", - "elliptic-curve", - "once_cell", - "sha2 0.10.8", - "signature", + "wasm-bindgen", ] [[package]] @@ -3808,17 +2049,6 @@ dependencies = [ "cpufeatures", ] -[[package]] -name = "keccak-hasher" -version = "0.1.1" -source = "git+https://github.com/openethereum/parity-ethereum?rev=55c90d4016505317034e3e98f699af07f5404b63#55c90d4016505317034e3e98f699af07f5404b63" -dependencies = [ - "ethereum-types 0.8.0", - "hash-db", - "plain_hasher", - "tiny-keccak 1.5.0", -] - [[package]] name = "lalrpop" version = "0.20.2" @@ -3836,7 +2066,7 @@ dependencies = [ "regex-syntax", "string_cache", "term", - "tiny-keccak 2.0.2", + "tiny-keccak", "unicode-xid", "walkdir", ] @@ -3858,7 +2088,7 @@ checksum = "bbc2a4da0d9e52ccfe6306801a112e81a8fc0c76aa3e4449fefeda7fef72bb34" dependencies = [ "lambdaworks-math", "serde", - "sha2 0.10.8", + "sha2", "sha3", ] @@ -3878,31 +2108,15 @@ version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" dependencies = [ - "spin 0.9.8", + "spin", ] -[[package]] -name = "lazycell" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" - [[package]] name = "libc" version = "0.2.161" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e9489c2807c139ffd9c1794f4af0ebe86a828db53ecdc7fea2111d0fed085d1" -[[package]] -name = "libloading" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4" -dependencies = [ - "cfg-if", - "windows-targets 0.52.6", -] - [[package]] name = "libm" version = "0.2.11" @@ -3919,12 +2133,6 @@ dependencies = [ "libc", ] -[[package]] -name = "linux-raw-sys" -version = "0.4.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" - [[package]] name = "lock_api" version = "0.4.12" @@ -3959,16 +2167,6 @@ dependencies = [ "rawpointer", ] -[[package]] -name = "md-5" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf" -dependencies = [ - "cfg-if", - "digest 0.10.7", -] - [[package]] name = "memchr" version = "2.7.4" @@ -4014,27 +2212,10 @@ checksum = "80e04d1dcff3aae0704555fe5fee3bcfaf3d1fdf8a7e521d5b9d2b42acb52cec" dependencies = [ "hermit-abi", "libc", - "wasi 0.11.0+wasi-snapshot-preview1", + "wasi", "windows-sys 0.52.0", ] -[[package]] -name = "native-tls" -version = "0.2.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8614eb2c83d59d1c8cc974dd3f920198647674a0a035e1af1fa58707e317466" -dependencies = [ - "libc", - "log", - "openssl", - "openssl-probe", - "openssl-sys", - "schannel", - "security-framework", - "security-framework-sys", - "tempfile", -] - [[package]] name = "ndarray" version = "0.13.1" @@ -4042,7 +2223,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ac06db03ec2f46ee0ecdca1a1c34a99c0d188a0d83439b84bf0cb4b386e4ab09" dependencies = [ "matrixmultiply", - "num-complex 0.2.4", + "num-complex", "num-integer", "num-traits 0.2.19", "rawpointer", @@ -4074,20 +2255,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "num" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23" -dependencies = [ - "num-bigint", - "num-complex 0.4.6", - "num-integer", - "num-iter", - "num-rational", - "num-traits 0.2.19", -] - [[package]] name = "num-bigint" version = "0.4.6" @@ -4096,7 +2263,7 @@ checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9" dependencies = [ "num-integer", "num-traits 0.2.19", - "rand 0.8.5", + "rand", "serde", ] @@ -4110,21 +2277,6 @@ dependencies = [ "num-traits 0.2.19", ] -[[package]] -name = "num-complex" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" -dependencies = [ - "num-traits 0.2.19", -] - -[[package]] -name = "num-conv" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" - [[package]] name = "num-integer" version = "0.1.46" @@ -4134,17 +2286,6 @@ dependencies = [ "num-traits 0.2.19", ] -[[package]] -name = "num-iter" -version = "0.1.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf" -dependencies = [ - "autocfg", - "num-integer", - "num-traits 0.2.19", -] - [[package]] name = "num-modular" version = "0.5.1" @@ -4162,14 +2303,14 @@ version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e238432a7881ec7164503ccc516c014bf009be7984cde1ba56837862543bdec3" dependencies = [ - "bitvec 1.0.1", + "bitvec", "either", "lru", "num-bigint", "num-integer", "num-modular", "num-traits 0.2.19", - "rand 0.8.5", + "rand", ] [[package]] @@ -4203,37 +2344,6 @@ dependencies = [ "libm", ] -[[package]] -name = "num_cpus" -version = "1.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" -dependencies = [ - "hermit-abi", - "libc", -] - -[[package]] -name = "num_enum" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e613fc340b2220f734a8595782c551f1250e969d87d3be1ae0579e8d4065179" -dependencies = [ - "num_enum_derive", -] - -[[package]] -name = "num_enum_derive" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" -dependencies = [ - "proc-macro-crate 3.2.0", - "proc-macro2", - "quote", - "syn 2.0.85", -] - [[package]] name = "object" version = "0.36.5" @@ -4255,124 +2365,21 @@ version = "11.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b410bbe7e14ab526a0e86877eb47c6996a2bd7746f027ba551028c925390e4e9" -[[package]] -name = "opaque-debug" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" - -[[package]] -name = "open-fastrlp" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "786393f80485445794f6043fd3138854dd109cc6c4bd1a6383db304c9ce9b9ce" -dependencies = [ - "arrayvec 0.7.6", - "auto_impl", - "bytes", - "ethereum-types 0.14.1", - "open-fastrlp-derive", -] - -[[package]] -name = "open-fastrlp-derive" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "003b2be5c6c53c1cfeb0a238b8a1c3915cd410feb684457a36c10038f764bb1c" -dependencies = [ - "bytes", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "openssl" -version = "0.10.68" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6174bc48f102d208783c2c84bf931bb75927a617866870de8a4ea85597f871f5" -dependencies = [ - "bitflags 2.6.0", - "cfg-if", - "foreign-types", - "libc", - "once_cell", - "openssl-macros", - "openssl-sys", -] - -[[package]] -name = "openssl-macros" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.85", -] - -[[package]] -name = "openssl-probe" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" - -[[package]] -name = "openssl-src" -version = "300.4.0+3.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a709e02f2b4aca747929cca5ed248880847c650233cf8b8cdc48f40aaf4898a6" -dependencies = [ - "cc", -] - -[[package]] -name = "openssl-sys" -version = "0.9.104" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45abf306cbf99debc8195b66b7346498d7b10c210de50418b5ccd7ceba08c741" -dependencies = [ - "cc", - "libc", - "openssl-src", - "pkg-config", - "vcpkg", -] - -[[package]] -name = "option-ext" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" - [[package]] name = "overload" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" -[[package]] -name = "parity-scale-codec" -version = "1.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4b26b16c7687c3075982af47719e481815df30bc544f7a6690763a25ca16e9d" -dependencies = [ - "arrayvec 0.5.2", - "bitvec 0.17.4", - "byte-slice-cast 0.3.5", - "serde", -] - [[package]] name = "parity-scale-codec" version = "3.6.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "306800abfa29c7f16596b5970a588435e3d5b3149683d00c12b699cc19f895ee" dependencies = [ - "arrayvec 0.7.6", - "bitvec 1.0.1", - "byte-slice-cast 1.2.2", + "arrayvec", + "bitvec", + "byte-slice-cast", "impl-trait-for-tuples", "parity-scale-codec-derive", "serde", @@ -4384,7 +2391,7 @@ version = "3.6.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d830939c76d294956402033aee57a6da7b438f2294eb94864c37b0569053a42c" dependencies = [ - "proc-macro-crate 3.2.0", + "proc-macro-crate", "proc-macro2", "quote", "syn 1.0.109", @@ -4438,17 +2445,6 @@ dependencies = [ "windows-targets 0.52.6", ] -[[package]] -name = "password-hash" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7676374caaee8a325c9e7a2ae557f216c5563a171d6997b0ef8a65af35147700" -dependencies = [ - "base64ct", - "rand_core 0.6.4", - "subtle", -] - [[package]] name = "paste" version = "1.0.15" @@ -4461,72 +2457,6 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "17359afc20d7ab31fdb42bb844c8b3bb1dabd7dcf7e68428492da7f16966fcef" -[[package]] -name = "path-slash" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e91099d4268b0e11973f036e885d652fb0b21fedcf69738c627f94db6a44f42" - -[[package]] -name = "pbkdf2" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917" -dependencies = [ - "digest 0.10.7", - "hmac", - "password-hash", - "sha2 0.10.8", -] - -[[package]] -name = "pbkdf2" -version = "0.12.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2" -dependencies = [ - "digest 0.10.7", - "hmac", -] - -[[package]] -name = "pear" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdeeaa00ce488657faba8ebf44ab9361f9365a97bd39ffb8a60663f57ff4b467" -dependencies = [ - "inlinable_string", - "pear_codegen", - "yansi 1.0.1", -] - -[[package]] -name = "pear_codegen" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bab5b985dc082b345f812b7df84e1bef27e7207b39e448439ba8bd69c93f147" -dependencies = [ - "proc-macro2", - "proc-macro2-diagnostics", - "quote", - "syn 2.0.85", -] - -[[package]] -name = "peeking_take_while" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" - -[[package]] -name = "pem" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8835c273a76a90455d7344889b0964598e3316e2a79ede8e36f16bdcf2228b8" -dependencies = [ - "base64 0.13.1", -] - [[package]] name = "percent-encoding" version = "2.3.1" @@ -4543,16 +2473,6 @@ dependencies = [ "indexmap 2.6.0", ] -[[package]] -name = "pharos" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9567389417feee6ce15dd6527a8a1ecac205ef62c2932bcf3d9f6fc5b78b414" -dependencies = [ - "futures", - "rustc_version", -] - [[package]] name = "phf" version = "0.11.2" @@ -4570,7 +2490,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "48e4cc64c2ad9ebe670cb8fd69dd50ae301650392e81c05f9bfcb2d5bdbc24b0" dependencies = [ "phf_shared 0.11.2", - "rand 0.8.5", + "rand", ] [[package]] @@ -4610,68 +2530,17 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5be167a7af36ee22fe3115051bc51f6e6c7054c9348e28deb4f49bd6f705a315" -[[package]] -name = "pin-project" -version = "1.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be57f64e946e500c8ee36ef6331845d40a93055567ec57e8fae13efd33759b95" -dependencies = [ - "pin-project-internal", -] - -[[package]] -name = "pin-project-internal" -version = "1.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c0f5fad0874fc7abcd4d750e76917eaebbecaa2c20bde22e1dbeeba8beb758c" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.85", -] - [[package]] name = "pin-project-lite" version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "915a1e146535de9163f3987b8944ed8cf49a18bb0056bcebcdcece385cece4ff" - -[[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" -dependencies = [ - "der", - "spki", -] - -[[package]] -name = "pkg-config" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" - -[[package]] -name = "plain_hasher" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e19e6491bdde87c2c43d70f4c194bc8a758f2eb732df00f61e43f7362e3b4cc" -dependencies = [ - "crunchy", -] +checksum = "915a1e146535de9163f3987b8944ed8cf49a18bb0056bcebcdcece385cece4ff" [[package]] -name = "powerfmt" -version = "0.2.0" +name = "pin-utils" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "ppv-lite86" @@ -4695,30 +2564,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3ae130e2f271fbc2ac3a40fb1d07180839cdbbe443c7a27e1e3c13c5cac0116d" dependencies = [ "diff", - "yansi 1.0.1", -] - -[[package]] -name = "prettyplease" -version = "0.2.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64d1ec885c64d0457d564db4ec299b2dae3f9c02808b8ad9c3a089c591b18033" -dependencies = [ - "proc-macro2", - "syn 2.0.85", -] - -[[package]] -name = "primitive-types" -version = "0.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4336f4f5d5524fa60bcbd6fe626f9223d8142a50e7053e979acdf0da41ab975" -dependencies = [ - "fixed-hash 0.5.2", - "impl-codec 0.4.2", - "impl-rlp 0.2.1", - "impl-serde 0.3.2", - "uint 0.8.5", + "yansi", ] [[package]] @@ -4727,22 +2573,10 @@ version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b34d9fd68ae0b74a41b21c03c2f62847aa0ffea044eee893b4c140b37e244e2" dependencies = [ - "fixed-hash 0.8.0", - "impl-codec 0.6.0", - "impl-rlp 0.3.0", - "impl-serde 0.4.0", - "scale-info", - "uint 0.9.5", -] - -[[package]] -name = "proc-macro-crate" -version = "1.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" -dependencies = [ - "once_cell", - "toml_edit 0.19.15", + "fixed-hash", + "impl-codec", + "impl-serde", + "uint", ] [[package]] @@ -4751,7 +2585,7 @@ version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" dependencies = [ - "toml_edit 0.22.22", + "toml_edit", ] [[package]] @@ -4787,19 +2621,6 @@ dependencies = [ "unicode-ident", ] -[[package]] -name = "proc-macro2-diagnostics" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.85", - "version_check", - "yansi 1.0.1", -] - [[package]] name = "proptest" version = "1.5.0" @@ -4807,12 +2628,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d" dependencies = [ "bitflags 2.6.0", - "lazy_static", "num-traits 0.2.19", - "rand 0.8.5", - "rand_chacha 0.3.1", + "rand", + "rand_chacha", "rand_xorshift", - "regex-syntax", "unarray", ] @@ -4827,7 +2646,7 @@ dependencies = [ "quinn-proto", "quinn-udp", "rustc-hash 2.0.0", - "rustls 0.23.16", + "rustls", "socket2", "thiserror", "tokio", @@ -4841,10 +2660,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fadfaed2cd7f389d0161bb73eeb07b7b78f8691047a6f3e73caaeae55310a4a6" dependencies = [ "bytes", - "rand 0.8.5", - "ring 0.17.8", + "rand", + "ring", "rustc-hash 2.0.0", - "rustls 0.23.16", + "rustls", "slab", "thiserror", "tinyvec", @@ -4874,31 +2693,12 @@ dependencies = [ "proc-macro2", ] -[[package]] -name = "radium" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "def50a86306165861203e7f84ecffbbdfdea79f0e51039b33de1e952358c47ac" - [[package]] name = "radium" version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" -[[package]] -name = "rand" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" -dependencies = [ - "getrandom 0.1.16", - "libc", - "rand_chacha 0.2.2", - "rand_core 0.5.1", - "rand_hc", -] - [[package]] name = "rand" version = "0.8.5" @@ -4906,18 +2706,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" dependencies = [ "libc", - "rand_chacha 0.3.1", - "rand_core 0.6.4", -] - -[[package]] -name = "rand_chacha" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" -dependencies = [ - "ppv-lite86", - "rand_core 0.5.1", + "rand_chacha", + "rand_core", ] [[package]] @@ -4927,16 +2717,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" dependencies = [ "ppv-lite86", - "rand_core 0.6.4", -] - -[[package]] -name = "rand_core" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" -dependencies = [ - "getrandom 0.1.16", + "rand_core", ] [[package]] @@ -4945,16 +2726,7 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom 0.2.15", -] - -[[package]] -name = "rand_hc" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" -dependencies = [ - "rand_core 0.5.1", + "getrandom", ] [[package]] @@ -4963,7 +2735,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" dependencies = [ - "rand_core 0.6.4", + "rand_core", ] [[package]] @@ -4972,26 +2744,6 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3" -[[package]] -name = "rayon" -version = "1.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" -dependencies = [ - "either", - "rayon-core", -] - -[[package]] -name = "rayon-core" -version = "1.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" -dependencies = [ - "crossbeam-deque", - "crossbeam-utils", -] - [[package]] name = "redox_syscall" version = "0.2.16" @@ -5016,7 +2768,7 @@ version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" dependencies = [ - "getrandom 0.2.15", + "getrandom", "libredox", "thiserror", ] @@ -5056,65 +2808,21 @@ version = "1.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba39f3699c378cd8970968dcbff9c43159ea4cfbd88d43c00b22f2ef10a435d2" -[[package]] -name = "reqwest" -version = "0.11.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62" -dependencies = [ - "base64 0.21.7", - "bytes", - "encoding_rs", - "futures-core", - "futures-util", - "h2", - "http 0.2.12", - "http-body 0.4.6", - "hyper 0.14.31", - "hyper-rustls 0.24.2", - "hyper-tls", - "ipnet", - "js-sys", - "log", - "mime", - "native-tls", - "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", - "tokio", - "tokio-native-tls", - "tokio-rustls 0.24.1", - "tower-service", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", - "webpki-roots 0.25.4", - "winreg", -] - [[package]] name = "reqwest" version = "0.12.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a77c62af46e79de0a562e1a9849205ffcb7fc1238876e9bd743357570e04046f" dependencies = [ - "base64 0.22.1", + "base64", "bytes", "futures-core", "futures-util", - "http 1.1.0", - "http-body 1.0.1", + "http", + "http-body", "http-body-util", - "hyper 1.5.0", - "hyper-rustls 0.27.3", + "hyper", + "hyper-rustls", "hyper-util", "ipnet", "js-sys", @@ -5124,87 +2832,24 @@ dependencies = [ "percent-encoding", "pin-project-lite", "quinn", - "rustls 0.23.16", - "rustls-pemfile 2.2.0", + "rustls", + "rustls-pemfile", "rustls-pki-types", "serde", "serde_json", "serde_urlencoded", - "sync_wrapper 1.0.1", + "sync_wrapper", "tokio", - "tokio-rustls 0.26.0", + "tokio-rustls", "tower-service", "url", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", - "webpki-roots 0.26.6", + "webpki-roots", "windows-registry", ] -[[package]] -name = "retri" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6262146231c1ef2e31ad7b2a2492bc652fafd6b76568da7b63ac1d5f3674ee4" -dependencies = [ - "zduny-wasm-timer", -] - -[[package]] -name = "revm" -version = "3.5.0" -source = "git+https://github.com/bluealloy/revm?rev=23cbac479f616eba5ab11ddfe6d5814b9c492202#23cbac479f616eba5ab11ddfe6d5814b9c492202" -dependencies = [ - "auto_impl", - "revm-interpreter", - "revm-precompile", - "serde", - "serde_json", -] - -[[package]] -name = "revm-interpreter" -version = "1.3.0" -source = "git+https://github.com/bluealloy/revm?rev=23cbac479f616eba5ab11ddfe6d5814b9c492202#23cbac479f616eba5ab11ddfe6d5814b9c492202" -dependencies = [ - "revm-primitives", - "serde", -] - -[[package]] -name = "revm-precompile" -version = "2.2.0" -source = "git+https://github.com/bluealloy/revm?rev=23cbac479f616eba5ab11ddfe6d5814b9c492202#23cbac479f616eba5ab11ddfe6d5814b9c492202" -dependencies = [ - "c-kzg", - "k256", - "num", - "once_cell", - "revm-primitives", - "ripemd", - "secp256k1", - "sha2 0.10.8", - "substrate-bn", -] - -[[package]] -name = "revm-primitives" -version = "1.3.0" -source = "git+https://github.com/bluealloy/revm?rev=23cbac479f616eba5ab11ddfe6d5814b9c492202#23cbac479f616eba5ab11ddfe6d5814b9c492202" -dependencies = [ - "alloy-primitives", - "alloy-rlp", - "auto_impl", - "bitflags 2.6.0", - "bitvec 1.0.1", - "c-kzg", - "enumn", - "hashbrown 0.14.5", - "hex", - "serde", -] - [[package]] name = "rfc6979" version = "0.4.0" @@ -5215,21 +2860,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "ring" -version = "0.16.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc" -dependencies = [ - "cc", - "libc", - "once_cell", - "spin 0.5.2", - "untrusted 0.7.1", - "web-sys", - "winapi", -] - [[package]] name = "ring" version = "0.17.8" @@ -5238,62 +2868,21 @@ checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" dependencies = [ "cc", "cfg-if", - "getrandom 0.2.15", + "getrandom", "libc", - "spin 0.9.8", - "untrusted 0.9.0", + "spin", + "untrusted", "windows-sys 0.52.0", ] -[[package]] -name = "ripemd" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd124222d17ad93a644ed9d011a40f4fb64aa54275c08cc216524a9ea82fb09f" -dependencies = [ - "digest 0.10.7", -] - -[[package]] -name = "rlp" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1190dcc8c3a512f1eef5d09bb8c84c7f39e1054e174d1795482e18f5272f2e73" -dependencies = [ - "rustc-hex", -] - -[[package]] -name = "rlp" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb919243f34364b6bd2fc10ef797edbfa75f33c252e7998527479c6d6b47e1ec" -dependencies = [ - "bytes", - "rlp-derive", - "rustc-hex", -] - -[[package]] -name = "rlp-derive" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e33d7b2abe0c340d8797fe2907d3f20d3b5ea5908683618bfe80df7f621f672a" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "ruint" version = "1.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2c3cc4c2511671f327125da14133d0c5c5d137f006a1017a16f557bc85b16286" dependencies = [ - "alloy-rlp", "proptest", - "rand 0.8.5", + "rand", "ruint-macro", "serde", "valuable", @@ -5341,7 +2930,7 @@ version = "1.36.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b082d80e3e3cc52b2ed634388d436fe1f4de6af5786cc2de9ba9737527bdf555" dependencies = [ - "arrayvec 0.7.6", + "arrayvec", "num-traits 0.2.19", ] @@ -5378,43 +2967,6 @@ dependencies = [ "semver", ] -[[package]] -name = "rustix" -version = "0.38.38" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa260229e6538e52293eeb577aabd09945a09d6d9cc0fc550ed7529056c2e32a" -dependencies = [ - "bitflags 2.6.0", - "errno", - "libc", - "linux-raw-sys", - "windows-sys 0.52.0", -] - -[[package]] -name = "rustls" -version = "0.20.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b80e3dec595989ea8510028f30c408a4630db12c9cbb8de34203b89d6577e99" -dependencies = [ - "log", - "ring 0.16.20", - "sct", - "webpki", -] - -[[package]] -name = "rustls" -version = "0.21.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e" -dependencies = [ - "log", - "ring 0.17.8", - "rustls-webpki 0.101.7", - "sct", -] - [[package]] name = "rustls" version = "0.23.16" @@ -5423,34 +2975,13 @@ checksum = "eee87ff5d9b36712a58574e12e9f0ea80f915a5b0ac518d322b24a465617925e" dependencies = [ "log", "once_cell", - "ring 0.17.8", + "ring", "rustls-pki-types", - "rustls-webpki 0.102.8", + "rustls-webpki", "subtle", "zeroize", ] -[[package]] -name = "rustls-native-certs" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00" -dependencies = [ - "openssl-probe", - "rustls-pemfile 1.0.4", - "schannel", - "security-framework", -] - -[[package]] -name = "rustls-pemfile" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" -dependencies = [ - "base64 0.21.7", -] - [[package]] name = "rustls-pemfile" version = "2.2.0" @@ -5466,25 +2997,15 @@ version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "16f1201b3c9a7ee8039bcadc17b7e605e2945b27eee7631788c1bd2b0643674b" -[[package]] -name = "rustls-webpki" -version = "0.101.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" -dependencies = [ - "ring 0.17.8", - "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", + "ring", "rustls-pki-types", - "untrusted 0.9.0", + "untrusted", ] [[package]] @@ -5520,64 +3041,21 @@ dependencies = [ name = "salsa-macros" version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd3904a4ba0a9d0211816177fd34b04c7095443f8cdacd11175064fe541c8fe2" -dependencies = [ - "heck 0.3.3", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "salsa20" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97a22f5af31f73a954c10289c93e8a50cc23d971e80ee446f1f6f7137a088213" -dependencies = [ - "cipher", -] - -[[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 = "scale-info" -version = "2.11.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1aa7ffc1c0ef49b0452c6e2986abf2b07743320641ffd5fc63d552458e3b779b" -dependencies = [ - "bitvec 1.0.1", - "cfg-if", - "derive_more 1.0.0", - "parity-scale-codec 3.6.12", - "scale-info-derive", -] - -[[package]] -name = "scale-info-derive" -version = "2.11.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46385cc24172cf615450267463f937c10072516359b3ff1cb24228a4a08bf951" +checksum = "cd3904a4ba0a9d0211816177fd34b04c7095443f8cdacd11175064fe541c8fe2" dependencies = [ - "proc-macro-crate 3.2.0", + "heck 0.3.3", "proc-macro2", "quote", - "syn 2.0.85", + "syn 1.0.109", ] [[package]] -name = "schannel" -version = "0.1.26" +name = "same-file" +version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01227be5826fa0690321a2ba6c5cd57a19cf3f6a09e76973b58e61de6ab9d1c1" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" dependencies = [ - "windows-sys 0.59.0", + "winapi-util", ] [[package]] @@ -5611,103 +3089,11 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" -[[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 0.10.8", -] - -[[package]] -name = "sct" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" -dependencies = [ - "ring 0.17.8", - "untrusted 0.9.0", -] - -[[package]] -name = "sec1" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" -dependencies = [ - "base16ct", - "der", - "generic-array", - "pkcs8", - "subtle", - "zeroize", -] - -[[package]] -name = "secp256k1" -version = "0.27.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25996b82292a7a57ed3508f052cfff8640d38d32018784acd714758b43da9c8f" -dependencies = [ - "secp256k1-sys", -] - -[[package]] -name = "secp256k1-sys" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70a129b9e9efbfb223753b9163c4ab3b13cff7fd9c7f010fbac25ab4099fa07e" -dependencies = [ - "cc", -] - -[[package]] -name = "security-framework" -version = "2.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" -dependencies = [ - "bitflags 2.6.0", - "core-foundation", - "core-foundation-sys", - "libc", - "security-framework-sys", -] - -[[package]] -name = "security-framework-sys" -version = "2.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea4a292869320c0272d7bc55a5a6aafaff59b4f63404a003887b679a2e05b4b6" -dependencies = [ - "core-foundation-sys", - "libc", -] - [[package]] name = "semver" version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" -dependencies = [ - "serde", -] - -[[package]] -name = "send_wrapper" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f638d531eccd6e23b980caf34876660d38e265409d8e99b397ab71eb3612fad0" - -[[package]] -name = "send_wrapper" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73" [[package]] name = "serde" @@ -5746,7 +3132,6 @@ version = "1.0.132" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d726bfaff4b320266d395898905d0eba0345aae23b54aee3a737e260fd46db03" dependencies = [ - "indexmap 2.6.0", "itoa", "memchr", "ryu", @@ -5774,56 +3159,6 @@ dependencies = [ "serde", ] -[[package]] -name = "serde_yaml" -version = "0.9.34+deprecated" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" -dependencies = [ - "indexmap 2.6.0", - "itoa", - "ryu", - "serde", - "unsafe-libyaml", -] - -[[package]] -name = "sha-1" -version = "0.9.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99cd6713db3cf16b6c84e06321e049a9b9f699826e16096d23bbcc44d15d51a6" -dependencies = [ - "block-buffer 0.9.0", - "cfg-if", - "cpufeatures", - "digest 0.9.0", - "opaque-debug", -] - -[[package]] -name = "sha1" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" -dependencies = [ - "cfg-if", - "cpufeatures", - "digest 0.10.7", -] - -[[package]] -name = "sha2" -version = "0.9.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" -dependencies = [ - "block-buffer 0.9.0", - "cfg-if", - "cpufeatures", - "digest 0.9.0", - "opaque-debug", -] - [[package]] name = "sha2" version = "0.10.8" @@ -5832,7 +3167,7 @@ checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" dependencies = [ "cfg-if", "cpufeatures", - "digest 0.10.7", + "digest", ] [[package]] @@ -5841,7 +3176,7 @@ version = "0.10.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" dependencies = [ - "digest 0.10.7", + "digest", "keccak", ] @@ -5860,28 +3195,6 @@ version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" -[[package]] -name = "signature" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" -dependencies = [ - "digest 0.10.7", - "rand_core 0.6.4", -] - -[[package]] -name = "simple_asn1" -version = "0.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adc4e5204eb1910f40f9cfa375f6f05b68c3abac4b6fd879c8ff5e7ae8a0a085" -dependencies = [ - "num-bigint", - "num-traits 0.2.19", - "thiserror", - "time", -] - [[package]] name = "siphasher" version = "0.3.11" @@ -5912,30 +3225,6 @@ dependencies = [ "serde", ] -[[package]] -name = "snowbridge-amcl" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "460a9ed63cdf03c1b9847e8a12a5f5ba19c4efd5869e4a737e05be25d7c427e5" -dependencies = [ - "parity-scale-codec 3.6.12", - "scale-info", -] - -[[package]] -name = "snowbridge-milagro-bls" -version = "1.5.2" -source = "git+https://github.com/Snowfork/milagro_bls?rev=6a95c9e33c6a41d9137761e593d53742ebb964de#6a95c9e33c6a41d9137761e593d53742ebb964de" -dependencies = [ - "hex", - "lazy_static", - "parity-scale-codec 3.6.12", - "rand 0.8.5", - "scale-info", - "snowbridge-amcl", - "zeroize", -] - [[package]] name = "socket2" version = "0.5.7" @@ -5946,57 +3235,12 @@ dependencies = [ "windows-sys 0.52.0", ] -[[package]] -name = "soketto" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41d1c5305e39e09653383c2c7244f2f78b3bcae37cf50c64cb4789c9f5096ec2" -dependencies = [ - "base64 0.13.1", - "bytes", - "futures", - "httparse", - "log", - "rand 0.8.5", - "sha-1", -] - -[[package]] -name = "solang-parser" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c425ce1c59f4b154717592f0bdf4715c3a1d55058883622d3157e1f0908a5b26" -dependencies = [ - "itertools 0.11.0", - "lalrpop", - "lalrpop-util", - "phf", - "thiserror", - "unicode-xid", -] - -[[package]] -name = "spin" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" - [[package]] name = "spin" version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" -[[package]] -name = "spki" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d" -dependencies = [ - "base64ct", - "der", -] - [[package]] name = "sprs" version = "0.7.1" @@ -6004,35 +3248,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec63571489873d4506683915840eeb1bb16b3198ee4894cc6f2fe3013d505e56" dependencies = [ "ndarray", - "num-complex 0.2.4", + "num-complex", "num-traits 0.1.43", ] -[[package]] -name = "ssz_rs" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "057291e5631f280978fa9c8009390663ca4613359fc1318e36a8c24c392f6d1f" -dependencies = [ - "bitvec 1.0.1", - "hex", - "num-bigint", - "serde", - "sha2 0.9.9", - "ssz_rs_derive", -] - -[[package]] -name = "ssz_rs_derive" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f07d54c4d01a1713eb363b55ba51595da15f6f1211435b71466460da022aa140" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "stable_deref_trait" version = "1.2.0" @@ -6052,7 +3271,7 @@ dependencies = [ "num-integer", "num-traits 0.2.19", "rfc6979", - "sha2 0.10.8", + "sha2", "starknet-crypto-codegen", "starknet-curve 0.3.0", "starknet-ff", @@ -6072,7 +3291,7 @@ dependencies = [ "num-integer", "num-traits 0.2.19", "rfc6979", - "sha2 0.10.8", + "sha2", "starknet-crypto-codegen", "starknet-curve 0.4.2", "starknet-ff", @@ -6092,7 +3311,7 @@ dependencies = [ "num-integer", "num-traits 0.2.19", "rfc6979", - "sha2 0.10.8", + "sha2", "starknet-curve 0.5.1", "starknet-types-core", "zeroize", @@ -6144,7 +3363,7 @@ checksum = "7abf1b44ec5b18d87c1ae5f54590ca9d0699ef4dd5b2ffa66fc97f24613ec585" dependencies = [ "ark-ff", "crypto-bigint", - "getrandom 0.2.15", + "getrandom", "hex", ] @@ -6168,7 +3387,7 @@ name = "starknet_api" version = "0.13.0-rc.1" source = "git+https://github.com/sergey-melnychuk/sequencer.git?tag=beerus-wasm-2024-09-22#52de8d635b25fd52346520b7feb18faeebe7a45e" dependencies = [ - "bitvec 1.0.1", + "bitvec", "cairo-lang-starknet-classes 2.8.4", "derive_more 0.99.18", "hashbrown 0.14.5", @@ -6176,7 +3395,7 @@ dependencies = [ "indexmap 2.6.0", "itertools 0.12.1", "once_cell", - "primitive-types 0.12.2", + "primitive-types", "serde", "serde_json", "sha3", @@ -6223,9 +3442,6 @@ name = "strum" version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f" -dependencies = [ - "strum_macros 0.24.3", -] [[package]] name = "strum" @@ -6233,15 +3449,6 @@ version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "290d54ea6f91c969195bdbcd7442c8c2a2ba87da8bf60a7ee86a235d4bc1e125" -[[package]] -name = "strum" -version = "0.26.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" -dependencies = [ - "strum_macros 0.26.4", -] - [[package]] name = "strum_macros" version = "0.24.3" @@ -6268,72 +3475,12 @@ dependencies = [ "syn 2.0.85", ] -[[package]] -name = "strum_macros" -version = "0.26.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" -dependencies = [ - "heck 0.5.0", - "proc-macro2", - "quote", - "rustversion", - "syn 2.0.85", -] - -[[package]] -name = "substrate-bn" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b5bbfa79abbae15dd642ea8176a21a635ff3c00059961d1ea27ad04e5b441c" -dependencies = [ - "byteorder", - "crunchy", - "lazy_static", - "rand 0.8.5", - "rustc-hex", -] - [[package]] name = "subtle" version = "2.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" -[[package]] -name = "superstruct" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f4e1f478a7728f8855d7e620e9a152cf8932c6614f86564c886f9b8141f3201" -dependencies = [ - "darling 0.13.4", - "itertools 0.10.5", - "proc-macro2", - "quote", - "smallvec", - "syn 1.0.109", -] - -[[package]] -name = "svm-rs" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11297baafe5fa0c99d5722458eac6a5e25c01eb1b8e5cd137f54079093daa7a4" -dependencies = [ - "dirs 5.0.1", - "fs2", - "hex", - "once_cell", - "reqwest 0.11.27", - "semver", - "serde", - "serde_json", - "sha2 0.10.8", - "thiserror", - "url", - "zip", -] - [[package]] name = "syn" version = "1.0.109" @@ -6356,12 +3503,6 @@ dependencies = [ "unicode-ident", ] -[[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.1" @@ -6371,46 +3512,12 @@ dependencies = [ "futures-core", ] -[[package]] -name = "system-configuration" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" -dependencies = [ - "bitflags 1.3.2", - "core-foundation", - "system-configuration-sys", -] - -[[package]] -name = "system-configuration-sys" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" -dependencies = [ - "core-foundation-sys", - "libc", -] - [[package]] name = "tap" version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" -[[package]] -name = "tempfile" -version = "3.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b" -dependencies = [ - "cfg-if", - "fastrand", - "once_cell", - "rustix", - "windows-sys 0.59.0", -] - [[package]] name = "term" version = "0.7.0" @@ -6472,55 +3579,6 @@ dependencies = [ "once_cell", ] -[[package]] -name = "threadpool" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d050e60b33d41c19108b32cea32164033a9013fe3b46cbd4457559bfbf77afaa" -dependencies = [ - "num_cpus", -] - -[[package]] -name = "time" -version = "0.3.36" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885" -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.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf" -dependencies = [ - "num-conv", - "time-core", -] - -[[package]] -name = "tiny-keccak" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d8a021c69bb74a44ccedb824a046447e2c84a01df9e5c20779750acb38e11b2" -dependencies = [ - "crunchy", -] - [[package]] name = "tiny-keccak" version = "2.0.2" @@ -6573,88 +3631,17 @@ dependencies = [ "syn 2.0.85", ] -[[package]] -name = "tokio-native-tls" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" -dependencies = [ - "native-tls", - "tokio", -] - -[[package]] -name = "tokio-rustls" -version = "0.23.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c43ee83903113e03984cb9e5cebe6c04a5116269e900e3ddba8f068a62adda59" -dependencies = [ - "rustls 0.20.9", - "tokio", - "webpki", -] - -[[package]] -name = "tokio-rustls" -version = "0.24.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" -dependencies = [ - "rustls 0.21.12", - "tokio", -] - [[package]] name = "tokio-rustls" version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4" dependencies = [ - "rustls 0.23.16", + "rustls", "rustls-pki-types", "tokio", ] -[[package]] -name = "tokio-stream" -version = "0.1.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f4e6ce100d0eb49a2734f8c0812bcd324cf357d21810932c5df6b96ef2b86f1" -dependencies = [ - "futures-core", - "pin-project-lite", - "tokio", -] - -[[package]] -name = "tokio-tungstenite" -version = "0.20.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "212d5dcb2a1ce06d81107c3d0ffa3121fe974b73f068c8282cb1c32328113b6c" -dependencies = [ - "futures-util", - "log", - "rustls 0.21.12", - "tokio", - "tokio-rustls 0.24.1", - "tungstenite", - "webpki-roots 0.25.4", -] - -[[package]] -name = "tokio-util" -version = "0.7.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61e7c3654c13bcd040d4a03abee2c75b1d14a37b423cf5a813ceae1cc903ec6a" -dependencies = [ - "bytes", - "futures-core", - "futures-io", - "futures-sink", - "pin-project-lite", - "tokio", -] - [[package]] name = "toml" version = "0.8.19" @@ -6664,7 +3651,7 @@ dependencies = [ "serde", "serde_spanned", "toml_datetime", - "toml_edit 0.22.22", + "toml_edit", ] [[package]] @@ -6676,17 +3663,6 @@ dependencies = [ "serde", ] -[[package]] -name = "toml_edit" -version = "0.19.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" -dependencies = [ - "indexmap 2.6.0", - "toml_datetime", - "winnow 0.5.40", -] - [[package]] name = "toml_edit" version = "0.22.22" @@ -6697,7 +3673,7 @@ dependencies = [ "serde", "serde_spanned", "toml_datetime", - "winnow 0.6.20", + "winnow", ] [[package]] @@ -6738,16 +3714,6 @@ dependencies = [ "valuable", ] -[[package]] -name = "tracing-futures" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2" -dependencies = [ - "pin-project", - "tracing", -] - [[package]] name = "tracing-log" version = "0.2.0" @@ -6773,26 +3739,6 @@ dependencies = [ "tracing-log", ] -[[package]] -name = "triehash" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1631b201eb031b563d2e85ca18ec8092508e262a3196ce9bd10a67ec87b9f5c" -dependencies = [ - "hash-db", - "rlp 0.5.2", -] - -[[package]] -name = "triehash-ethereum" -version = "0.2.0" -source = "git+https://github.com/openethereum/parity-ethereum?rev=55c90d4016505317034e3e98f699af07f5404b63#55c90d4016505317034e3e98f699af07f5404b63" -dependencies = [ - "ethereum-types 0.8.0", - "keccak-hasher", - "triehash", -] - [[package]] name = "triomphe" version = "0.1.14" @@ -6809,44 +3755,12 @@ version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" -[[package]] -name = "tungstenite" -version = "0.20.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e3dac10fd62eaf6617d3a904ae222845979aec67c615d1c842b4002c7666fb9" -dependencies = [ - "byteorder", - "bytes", - "data-encoding", - "http 0.2.12", - "httparse", - "log", - "rand 0.8.5", - "rustls 0.21.12", - "sha1", - "thiserror", - "url", - "utf-8", -] - [[package]] name = "typenum" version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" -[[package]] -name = "uint" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9db035e67dfaf7edd9aebfe8676afcd63eed53c8a4044fed514c8cccf1835177" -dependencies = [ - "byteorder", - "crunchy", - "rustc-hex", - "static_assertions", -] - [[package]] name = "uint" version = "0.9.5" @@ -6865,15 +3779,6 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" -[[package]] -name = "uncased" -version = "0.9.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1b88fcfe09e89d3866a5c11019378088af2d24c3fbd4f0543f96b479ec90697" -dependencies = [ - "version_check", -] - [[package]] name = "unescaper" version = "0.1.5" @@ -6883,12 +3788,6 @@ dependencies = [ "thiserror", ] -[[package]] -name = "unicase" -version = "2.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e51b68083f157f853b6379db119d1c1be0e6e4dec98101079dec41f6f5cf6df" - [[package]] name = "unicode-bidi" version = "0.3.17" @@ -6922,18 +3821,6 @@ version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" -[[package]] -name = "unsafe-libyaml" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861" - -[[package]] -name = "untrusted" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" - [[package]] name = "untrusted" version = "0.9.0" @@ -6946,16 +3833,16 @@ version = "2.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b74fc6b57825be3373f7054754755f03ac3a8f5d70015ccad699ba2029956f4a" dependencies = [ - "base64 0.22.1", + "base64", "flate2", "log", "once_cell", - "rustls 0.23.16", + "rustls", "rustls-pki-types", "serde", "serde_json", "url", - "webpki-roots 0.26.6", + "webpki-roots", ] [[package]] @@ -6969,22 +3856,6 @@ dependencies = [ "percent-encoding", ] -[[package]] -name = "utf-8" -version = "0.7.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" - -[[package]] -name = "uuid" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7" -dependencies = [ - "getrandom 0.2.15", - "serde", -] - [[package]] name = "validator" version = "0.18.1" @@ -7021,12 +3892,6 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" -[[package]] -name = "vcpkg" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" - [[package]] name = "version_check" version = "0.9.5" @@ -7052,12 +3917,6 @@ dependencies = [ "try-lock", ] -[[package]] -name = "wasi" -version = "0.9.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" - [[package]] name = "wasi" version = "0.11.0+wasi-snapshot-preview1" @@ -7151,31 +4010,6 @@ dependencies = [ "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", - "untrusted 0.9.0", -] - -[[package]] -name = "webpki-roots" -version = "0.22.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6c71e40d7d2c34a5106301fb632274ca37242cd0c9d3e64dbece371a40a2d87" -dependencies = [ - "webpki", -] - -[[package]] -name = "webpki-roots" -version = "0.25.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" - [[package]] name = "webpki-roots" version = "0.26.6" @@ -7185,18 +4019,6 @@ dependencies = [ "rustls-pki-types", ] -[[package]] -name = "which" -version = "4.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" -dependencies = [ - "either", - "home", - "once_cell", - "rustix", -] - [[package]] name = "winapi" version = "0.3.9" @@ -7228,15 +4050,6 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" -[[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.6", -] - [[package]] name = "windows-registry" version = "0.2.0" @@ -7415,15 +4228,6 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" -[[package]] -name = "winnow" -version = "0.5.40" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" -dependencies = [ - "memchr", -] - [[package]] name = "winnow" version = "0.6.20" @@ -7433,35 +4237,6 @@ dependencies = [ "memchr", ] -[[package]] -name = "winreg" -version = "0.50.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" -dependencies = [ - "cfg-if", - "windows-sys 0.48.0", -] - -[[package]] -name = "ws_stream_wasm" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7999f5f4217fe3818726b66257a4475f71e74ffd190776ad053fa159e50737f5" -dependencies = [ - "async_io_stream", - "futures", - "js-sys", - "log", - "pharos", - "rustc_version", - "send_wrapper 0.6.0", - "thiserror", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", -] - [[package]] name = "wyz" version = "0.5.1" @@ -7486,33 +4261,12 @@ version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d422e8e38ec76e2f06ee439ccc765e9c6a9638b9e7c9f2e8255e4d41e8bd852" -[[package]] -name = "yansi" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" - [[package]] name = "yansi" version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" -[[package]] -name = "zduny-wasm-timer" -version = "0.2.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f22d6a02cbc84ea1993b0b341833a55a0866a3378c3a76e0ca664bc2574e370" -dependencies = [ - "futures", - "js-sys", - "parking_lot 0.12.3", - "pin-utils", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", -] - [[package]] name = "zerocopy" version = "0.7.35" @@ -7560,45 +4314,8 @@ version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261" dependencies = [ - "aes", "byteorder", - "bzip2", - "constant_time_eq", "crc32fast", "crossbeam-utils", "flate2", - "hmac", - "pbkdf2 0.11.0", - "sha1", - "time", - "zstd", -] - -[[package]] -name = "zstd" -version = "0.11.2+zstd.1.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20cc960326ece64f010d2d2107537f26dc589a6573a316bd5b1dba685fa5fde4" -dependencies = [ - "zstd-safe", -] - -[[package]] -name = "zstd-safe" -version = "5.0.2+zstd.1.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d2a5585e04f9eea4b2a3d1eca508c4dee9592a89ef6f450c11719da0726f4db" -dependencies = [ - "libc", - "zstd-sys", -] - -[[package]] -name = "zstd-sys" -version = "2.0.13+zstd.1.5.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38ff0f21cfee8f97d94cef41359e0c89aa6113028ab0291aa8ca0038995a95aa" -dependencies = [ - "cc", - "pkg-config", ] diff --git a/web/beerus-web/Cargo.toml b/web/beerus-web/Cargo.toml index 6a876383..0cbe4395 100644 --- a/web/beerus-web/Cargo.toml +++ b/web/beerus-web/Cargo.toml @@ -17,14 +17,11 @@ serde_json = "1.0.127" tokio = { version = "1", features = ["sync", "macros", "io-util", "rt", "time"] } -web-sys = "0.3.69" +js-sys = "0.3.70" +web-sys = { version = "0.3.69", features = ["console"] } wasm-bindgen = "0.2.92" wasm-bindgen-futures = "0.4.37" -ethers = { git = "https://github.com/gakonst/ethers-rs", rev = "3bf1a9e0d698e9fdfc91d0353878901af5a5c5ef" } -helios = { git = "https://github.com/sergey-melnychuk/helios", branch = "beerus-wasm", default-features = false, features = ["beerus-wasm"] } -js-sys = "0.3.70" - iamgroot = { git = "https://github.com/sergey-melnychuk/iamgroot", tag = "v0.2.8" } async-trait = "0.1.82" console_error_panic_hook = "0.1.7" diff --git a/web/beerus-web/src/lib.rs b/web/beerus-web/src/lib.rs index 9d39c360..d0439b66 100644 --- a/web/beerus-web/src/lib.rs +++ b/web/beerus-web/src/lib.rs @@ -1,12 +1,6 @@ use std::rc::Rc; use wasm_bindgen::prelude::*; -const MAINNET_ETHEREUM_CHAINID: &str = "0x1"; -const SEPOLIA_ETHEREUM_CHAINID: &str = "0xaa36a7"; - -const MAINNET_STARKNET_CHAINID: &str = "0x534e5f4d41494e"; -const SEPOLIA_STARKNET_CHAINID: &str = "0x534e5f5345504f4c4941"; - pub mod dto { use serde::{Deserialize, Serialize}; @@ -19,7 +13,7 @@ pub mod dto { #[derive(Serialize, Deserialize)] pub struct Config { - pub ethereum_url: String, + pub gateway_url: String, pub starknet_url: String, } } @@ -116,34 +110,6 @@ async fn post( Ok(response) } -async fn call(client: &reqwest::Client, url: &str, method: &str) -> Result { - let request = serde_json::json!({ - "jsonrpc": "2.0", - "method": method, - "params": [], - "id": 0 - }); - let response: serde_json::Value = post(&client, url, &request).await - .map_err(|e| JsValue::from_str(&e.to_string()))?; - response["result"] - .as_str() - .map(|result| result.to_owned()) - .ok_or_else(|| JsValue::from_str(&format!("Result missing for '{method}'."))) -} - -async fn check(config: &dto::Config) -> Result<(), JsValue> { - let client = reqwest::Client::new(); - let ethereum_chain = call(&client, &config.ethereum_url, "eth_chainId").await?; - let starknet_chain = call(&client, &config.starknet_url, "starknet_chainId").await?; - match (ethereum_chain.as_str(), starknet_chain.as_str()) { - (MAINNET_ETHEREUM_CHAINID, MAINNET_STARKNET_CHAINID) => Ok(()), - (SEPOLIA_ETHEREUM_CHAINID, SEPOLIA_STARKNET_CHAINID) => Ok(()), - _ => { - Err(JsValue::from_str(&format!("Chain ID mismatch ethereum={ethereum_chain} starknet={starknet_chain}"))) - } - } -} - #[wasm_bindgen] pub fn set_panic_hook() { std::panic::set_hook(Box::new(console_error_panic_hook::hook)); @@ -162,10 +128,8 @@ impl Beerus { pub async fn new(config_json: &str, f: js_sys::Function) -> Result { let config: dto::Config = serde_json::from_str(config_json) .map_err(|e| JsValue::from_str(&format!("beerus: invalid config JSON: {e:?}")))?; - check(&config).await - .map_err(|e| JsValue::from_str(&format!("beerus: invalid RPC config: {e:?}")))?; let config = beerus::config::Config { - ethereum_rpc: config.ethereum_url, + gateway_url: Some(config.gateway_url), starknet_rpc: config.starknet_url, }; let beerus = beerus::client::Client::new(&config, Http(Rc::new(f))) From 83f781e905ba1e3bc263eb6402bb1453eb456325 Mon Sep 17 00:00:00 2001 From: dwiekawki Date: Sat, 11 Jan 2025 00:31:52 +0100 Subject: [PATCH 10/22] chore(ci): fix `wasm` job --- web/beerus-web/Cargo.toml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/web/beerus-web/Cargo.toml b/web/beerus-web/Cargo.toml index 0cbe4395..14c18812 100644 --- a/web/beerus-web/Cargo.toml +++ b/web/beerus-web/Cargo.toml @@ -28,3 +28,6 @@ console_error_panic_hook = "0.1.7" num-traits = "0.2.19" num-bigint = "0.4.6" + +[lints.rust] +unexpected_cfgs = { level = "warn", check-cfg = ['cfg(wasm_bindgen_unstable_test_coverage)'] } From a1be96fa44e2bfcd445711f847f5e7a3915dc781 Mon Sep 17 00:00:00 2001 From: dwiekawki Date: Mon, 13 Jan 2025 16:37:52 +0100 Subject: [PATCH 11/22] chore(docs): remove `Helios` mentions --- README.md | 14 ++++---------- doc/architecture.md | 37 +++++++------------------------------ 2 files changed, 11 insertions(+), 40 deletions(-) diff --git a/README.md b/README.md index 13f90777..21947c02 100644 --- a/README.md +++ b/README.md @@ -7,8 +7,7 @@

Beerus

- Beerus is a Starknet Light Client inspired by and using - [Helios](https://github.com/a16z/helios/). + Beerus is a stateless and (soon to be completely) trustless Starknet Light Client. ## Project updates @@ -128,11 +127,6 @@ We recommend using one of these providers: More API providers can be found [here](https://docs.starknet.io/documentation/tools/api-services/). -##### Ethereum RPC endpoint -For the Ethereum RPC provider, there are no special requirements. The provider must support [Ethereum JSON-RPC Specification](https://ethereum.github.io/execution-apis/api-documentation/) - -*NOTE: we rely on [helios](https://github.com/a16z/helios) for both valid checkpoint values and consensus rpc urls* - ## Development #### Build @@ -144,12 +138,12 @@ cargo build --release #### Test ```bash -cargo test +cargo test --skip deploy_account_on_sepolia ## Run integration tests against live endpoint export STARKNET_MAINNET_URL=https://starknet-mainnet.g.alchemy.com/starknet/version/rpc/v0_7/${ALCHEMY_API_KEY} export STARKNET_SEPOLIA_URL=https://starknet-sepolia.g.alchemy.com/starknet/version/rpc/v0_7/${ALCHEMY_API_KEY} -BEERUS_TEST_RUN=1 cargo test +BEERUS_TEST_RUN=1 cargo test --skip deploy_account_on_sepolia ``` #### Docker @@ -159,7 +153,7 @@ docker build . -t beerus ``` ```bash -docker run -e ETHEREUM_RPC= -e STARKNET_RPC= -it beerus +docker run -e STARKNET_RPC= -it beerus ``` #### Examples diff --git a/doc/architecture.md b/doc/architecture.md index d3924e46..61e2f4ce 100644 --- a/doc/architecture.md +++ b/doc/architecture.md @@ -10,8 +10,7 @@ Beerus Architecture Overview * JSON-RPC spec (generated code: `src/gen.rs`) - Starknet spec 0.7.1 (`etc/spec/starknet/0.7.1`) - Generated by `iamgroot` (Rust DTO codegen tool) -* Ethereum client (`src/eth.rs`) - - Based on `helios` Ethereum light client +* Feeder Gateway client (`src/feeder.rs`) * Merkle proof check (`src/proof.rs`) * Stateless execution (`src/exe/mod.rs`) - `blockifier` @@ -25,35 +24,13 @@ Beerus Architecture Overview ```mermaid sequenceDiagram -Beerus->>Helios: Start -loop Sync -Helios->>(Beacon Chain): Query Beacon Chain -(Beacon Chain)->>Helios: Beacon Chain data -end -Note right of Helios: Helios is ready -Helios->>Beerus: Synced Note right of Beerus: Beerus is ready -Beerus->>Helios: Query State -Beerus->>Helios: Get Latest Block -Helios->>(Ethereum RPC): Get Latest Block -(Ethereum RPC)->>Helios: Latest Block Number -Helios->>Beerus: Latest Block Number - -Beerus->>Helios: Call stateBlockNumber() -Helios->>(Ethereum RPC): Call Starknet Core Contract -(Ethereum RPC)->>Helios: Get Result -Helios->>Beerus: Get Result - -Beerus->>Helios: Call stateBlockHash() -Helios->>(Ethereum RPC): Call Starknet Core Contract -(Ethereum RPC)->>Helios: Get Result -Helios->>Beerus: Get Result - -Beerus->>Helios: Call stateRoot() -Helios->>(Ethereum RPC): Call Starknet Core Contract -(Ethereum RPC)->>Helios: Get Result -Helios->>Beerus: Get Result - +Beerus->>Feeder: Query State +Beerus->>Feeder: Get Latest Block +Feeder->>(Starknet RPC): Get Latest Block +(Starknet RPC)->>Feeder: Latest Block Number +Feeder->>Feeder: Verify received block +Feeder->>Beerus: Latest Block Number Beerus->>Beerus: Store Current State ``` From 0a13418a8430b729af7d7e006f18bbf80b7be92c Mon Sep 17 00:00:00 2001 From: dwiekawki Date: Mon, 13 Jan 2025 16:38:25 +0100 Subject: [PATCH 12/22] chore: remove `helios_` prefixes --- src/rpc.rs | 68 +++++++++++++++++++++++++++--------------------------- 1 file changed, 34 insertions(+), 34 deletions(-) diff --git a/src/rpc.rs b/src/rpc.rs index edc27e77..f758d903 100644 --- a/src/rpc.rs +++ b/src/rpc.rs @@ -639,7 +639,7 @@ mod tests { async fn setup_test_env( starknet_server: &MockServer, - helios_block_num: u64, + block_num: u64, starknet_response_block_num: u64, starknet_response_block_hash: &str, expect_request: u64, @@ -654,7 +654,7 @@ mod tests { .expect(expect_request) .mount_as_scoped(starknet_server) .await; - let state = make_state(helios_block_num, "0x27"); + let state = make_state(block_num, "0x27"); let context = make_context("127.0.0.1:3030", &starknet_server.uri(), state); @@ -663,7 +663,7 @@ mod tests { async fn resolve_block_by_number_test( requested_starknet_block_num: u64, - helios_block_num: u64, + block_num: u64, starknet_response_block_num: u64, expect_request: u64, ) -> Result<(BlockId, Felt), jsonrpc::Error> { @@ -673,7 +673,7 @@ mod tests { let (_mock_guard, context) = setup_test_env( &starknet_server, - helios_block_num, + block_num, starknet_response_block_num, "0x3", expect_request, @@ -686,7 +686,7 @@ mod tests { async fn resolve_block_by_hash_test( requested_starknet_block_hash: &str, - helios_block_num: u64, + block_num: u64, starknet_response_block_hash: &str, starknet_response_block_num: u64, expect_request: u64, @@ -697,7 +697,7 @@ mod tests { let (_mock_guard, context) = setup_test_env( &starknet_server, - helios_block_num, + block_num, starknet_response_block_num, starknet_response_block_hash, expect_request, @@ -710,7 +710,7 @@ mod tests { async fn resolve_block_id_test( block: BlockId, - helios_block_num: u64, + block_num: u64, starknet_response_block_num: u64, starknet_response_block_hash: &str, expect_request: u64, @@ -719,7 +719,7 @@ mod tests { let (_mock_guard, context) = setup_test_env( &starknet_server, - helios_block_num, + block_num, starknet_response_block_num, starknet_response_block_hash, expect_request, @@ -732,13 +732,13 @@ mod tests { #[tokio::test] async fn resolve_block_by_number_request_lower_success() { let requested_starknet_block_num = 3; - let helios_state_block_num = 27; + let state_block_num = 27; let starknet_response_block_number = 3; let expected_num_request = 1; let result = resolve_block_by_number_test( requested_starknet_block_num, - helios_state_block_num, + state_block_num, starknet_response_block_number, expected_num_request, ) @@ -755,13 +755,13 @@ mod tests { #[tokio::test] async fn resolve_block_by_number_request_higher_success() { let requested_starknet_block_num = 42; - let helios_state_block_num = 27; + let state_block_num = 27; let starknet_response_block_number = 42; let expected_num_request = 0; let result = resolve_block_by_number_test( requested_starknet_block_num, - helios_state_block_num, + state_block_num, starknet_response_block_number, expected_num_request, ) @@ -770,7 +770,7 @@ mod tests { assert!(result.is_ok()); let (returned_block, _) = result.unwrap(); assert!(eq( - &block_from_number(helios_state_block_num), + &block_from_number(state_block_num), &returned_block )); } @@ -778,13 +778,13 @@ mod tests { #[tokio::test] async fn resolve_block_by_number_same_success() { let requested_starknet_block_num = 27; - let helios_state_block_num = 27; + let state_block_num = 27; let starknet_response_block_number = requested_starknet_block_num; let expected_num_request = 0; let result = resolve_block_by_number_test( requested_starknet_block_num, - helios_state_block_num, + state_block_num, starknet_response_block_number, expected_num_request, ) @@ -801,13 +801,13 @@ mod tests { #[tokio::test] async fn resolve_block_by_number_wrong_number_return() { let requested_starknet_block_num = 5; - let helios_state_block_num = 27; + let state_block_num = 27; let starknet_response_block_number = 999; let expected_num_request = 1; let result = resolve_block_by_number_test( requested_starknet_block_num, - helios_state_block_num, + state_block_num, starknet_response_block_number, expected_num_request, ) @@ -819,14 +819,14 @@ mod tests { #[tokio::test] async fn resolve_block_by_hash_different_success() { let requested_starknet_block_hash = "0x3"; - let helios_state_block_num = 27; + let state_block_num = 27; let starknet_response_block_hash = requested_starknet_block_hash; let starknet_response_block_num = 3; let expected_num_request = 1; let result = resolve_block_by_hash_test( requested_starknet_block_hash, - helios_state_block_num, + state_block_num, starknet_response_block_hash, starknet_response_block_num, expected_num_request, @@ -844,14 +844,14 @@ mod tests { #[tokio::test] async fn resolve_block_by_hash_same_success() { let requested_starknet_block_hash = "0x27"; - let helios_state_block_num = 27; + let state_block_num = 27; let starknet_response_block_hash = requested_starknet_block_hash; let starknet_response_block_num = 27; let expected_num_request = 0; let result = resolve_block_by_hash_test( requested_starknet_block_hash, - helios_state_block_num, + state_block_num, starknet_response_block_hash, starknet_response_block_num, expected_num_request, @@ -869,14 +869,14 @@ mod tests { #[tokio::test] async fn resolve_block_by_hash_wrong_number_return_error() { let requested_starknet_block_hash = "0x99"; - let helios_state_block_num = 27; + let state_block_num = 27; let starknet_response_block_hash = requested_starknet_block_hash; let starknet_response_block_num = 27; let expected_num_request = 1; let result = resolve_block_by_hash_test( requested_starknet_block_hash, - helios_state_block_num, + state_block_num, starknet_response_block_hash, starknet_response_block_num, expected_num_request, @@ -889,14 +889,14 @@ mod tests { #[tokio::test] async fn resolve_block_by_hash_wrong_hash_return_error() { let requested_starknet_block_hash = "0x99"; - let helios_state_block_num = 27; + let state_block_num = 27; let starknet_response_block_hash = "0xbad"; let starknet_response_block_num = 3; let expected_num_request = 1; let result = resolve_block_by_hash_test( requested_starknet_block_hash, - helios_state_block_num, + state_block_num, starknet_response_block_hash, starknet_response_block_num, expected_num_request, @@ -909,14 +909,14 @@ mod tests { #[tokio::test] async fn resolve_block_id_number_success() { let request_block = block_from_number(3); - let helios_block_num = 27; + let block_num = 27; let starknet_response_block_num = 3; let starknet_response_block_hash = "0x3"; let expected_num_request = 1; let result = resolve_block_id_test( request_block.clone(), - helios_block_num, + block_num, starknet_response_block_num, starknet_response_block_hash, expected_num_request, @@ -931,14 +931,14 @@ mod tests { #[tokio::test] async fn resolve_block_id_hash_success() { let request_block = block_from_hash("0x3"); - let helios_block_num = 27; + let block_num = 27; let starknet_response_block_num = 3; let starknet_response_block_hash = "0x3"; let expected_num_request = 1; let result = resolve_block_id_test( request_block.clone(), - helios_block_num, + block_num, starknet_response_block_num, starknet_response_block_hash, expected_num_request, @@ -953,14 +953,14 @@ mod tests { #[tokio::test] async fn resolve_block_id_tag_latest_success() { let request_block = block_from_tag("latest"); - let helios_block_num = 27; + let block_num = 27; let starknet_response_block_num = 33; let starknet_response_block_hash = "0x33"; let expected_num_request = 0; let result = resolve_block_id_test( request_block.clone(), - helios_block_num, + block_num, starknet_response_block_num, starknet_response_block_hash, expected_num_request, @@ -969,20 +969,20 @@ mod tests { assert!(result.is_ok()); let (returned_block, _) = result.unwrap(); - assert!(eq(&block_from_number(helios_block_num), &returned_block)); + assert!(eq(&block_from_number(block_num), &returned_block)); } #[tokio::test] async fn resolve_block_id_tag_pending_error() { let request_block = block_from_tag("pending"); - let helios_block_num = 27; + let block_num = 27; let starknet_response_block_num = 33; let starknet_response_block_hash = "0x33"; let expected_num_request = 0; let result = resolve_block_id_test( request_block.clone(), - helios_block_num, + block_num, starknet_response_block_num, starknet_response_block_hash, expected_num_request, From 5d95eebe0f6dd2bf6360f56e68ce562317ec20f0 Mon Sep 17 00:00:00 2001 From: dwiekawki Date: Mon, 13 Jan 2025 16:50:18 +0100 Subject: [PATCH 13/22] tests: ignore `deploy_account_on_sepolia` by default --- .github/workflows/account_deployment.yml | 4 ++-- .github/workflows/check.yml | 2 +- README.md | 4 ++-- doc/coverage.md | 8 ++++---- tests/rpc.rs | 1 + 5 files changed, 10 insertions(+), 9 deletions(-) diff --git a/.github/workflows/account_deployment.yml b/.github/workflows/account_deployment.yml index a667faae..b23c8f46 100644 --- a/.github/workflows/account_deployment.yml +++ b/.github/workflows/account_deployment.yml @@ -1,7 +1,7 @@ name: account-deployment on: - schedule: - - cron: '0 10 1 * *' + ## Run the test manually on demand + workflow_dispatch: env: RUSTFLAGS: -D warnings diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 9f498409..51eed499 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -35,7 +35,7 @@ jobs: - uses: dtolnay/rust-toolchain@stable - uses: Swatinem/rust-cache@v2 - run: rm -rf /opt/hostedtoolcache - - run: cargo test -- --skip deploy_account_on_sepolia + - run: cargo test wasm: runs-on: ubuntu-latest diff --git a/README.md b/README.md index 21947c02..4bcf8fa5 100644 --- a/README.md +++ b/README.md @@ -138,12 +138,12 @@ cargo build --release #### Test ```bash -cargo test --skip deploy_account_on_sepolia +cargo test ## Run integration tests against live endpoint export STARKNET_MAINNET_URL=https://starknet-mainnet.g.alchemy.com/starknet/version/rpc/v0_7/${ALCHEMY_API_KEY} export STARKNET_SEPOLIA_URL=https://starknet-sepolia.g.alchemy.com/starknet/version/rpc/v0_7/${ALCHEMY_API_KEY} -BEERUS_TEST_RUN=1 cargo test --skip deploy_account_on_sepolia +BEERUS_TEST_RUN=1 cargo test ``` #### Docker diff --git a/doc/coverage.md b/doc/coverage.md index 0e83513a..8bc89d02 100644 --- a/doc/coverage.md +++ b/doc/coverage.md @@ -14,8 +14,8 @@ cargo install cargo-tarpaulin ## WARNING: Commit any changes made to ./web/* first, or they will be lost rm -rf web/* -export STARKNET_MAINNET_URL: https://starknet-mainnet.g.alchemy.com/starknet/version/rpc/v0_7/${ALCHEMY_KEY} -export STARKNET_SEPOLIA_URL: https://starknet-sepolia.g.alchemy.com/starknet/version/rpc/v0_7/${ALCHEMY_KEY} +export STARKNET_MAINNET_URL="https://starknet-mainnet.g.alchemy.com/starknet/version/rpc/v0_7/${ALCHEMY_KEY}" +export STARKNET_SEPOLIA_URL="https://starknet-sepolia.g.alchemy.com/starknet/version/rpc/v0_7/${ALCHEMY_KEY}" BEERUS_TEST_RUN=1 cargo tarpaulin --out html ## Restore content of ./web @@ -60,7 +60,7 @@ Use [llvm-cov](https://github.com/taiki-e/cargo-llvm-cov): ``` cargo +stable install cargo-llvm-cov --locked -export STARKNET_MAINNET_URL: https://starknet-mainnet.g.alchemy.com/starknet/version/rpc/v0_7/${ALCHEMY_KEY} -export STARKNET_SEPOLIA_URL: https://starknet-sepolia.g.alchemy.com/starknet/version/rpc/v0_7/${ALCHEMY_KEY} +export STARKNET_MAINNET_URL="https://starknet-mainnet.g.alchemy.com/starknet/version/rpc/v0_7/${ALCHEMY_KEY}" +export STARKNET_SEPOLIA_URL="https://starknet-sepolia.g.alchemy.com/starknet/version/rpc/v0_7/${ALCHEMY_KEY}" BEERUS_TEST_RUN=1 cargo llvm-cov --html ``` diff --git a/tests/rpc.rs b/tests/rpc.rs index 13922910..55b6ac58 100644 --- a/tests/rpc.rs +++ b/tests/rpc.rs @@ -542,6 +542,7 @@ async fn account_call() -> Result<(), Error> { } #[tokio::test] +#[ignore = "Needs to be run explicitly: deploys an account to the testnet"] async fn deploy_account_on_sepolia() -> Result<(), Error> { let ctx = setup!("sepolia"); From 8533ef4cefe4cafb2fe26f8301c9a336d8532b66 Mon Sep 17 00:00:00 2001 From: dwiekawki Date: Mon, 13 Jan 2025 16:56:49 +0100 Subject: [PATCH 14/22] chore(config): remove `ethereum_rpc` config param --- README.md | 23 ++++------------------- etc/conf/.env.example | 14 +++++++------- etc/conf/beerus.toml | 2 +- 3 files changed, 12 insertions(+), 27 deletions(-) diff --git a/README.md b/README.md index 4bcf8fa5..71a93049 100644 --- a/README.md +++ b/README.md @@ -54,28 +54,14 @@ The successful result should look similar to the one below: | field | example | description | | ----------- | ----------- | ----------- | -| ethereum_rpc | https://eth-mainnet.g.alchemy.com/v2/{YOUR_API_KEY}| untrusted L1 node provider url | -| starknet_rpc | https://starknet-mainnet.g.alchemy.com/starknet/version/rpc/v0_7/{YOUR_API_KEY}| untrusted L2 node provider url | +| starknet_rpc | https://starknet-mainnet.g.alchemy.com/starknet/version/rpc/v0_7/{YOUR_API_KEY} | Starknet service provider URL | +| gateway_url | https://alpha-mainnet.starknet.io | `OPTIONAL` Feeder Gateway base URL | | data_dir | tmp | `OPTIONAL` location to store both L1 and L2 data | | poll_secs | 5 | `OPTIONAL` seconds to wait for querying sn state, min = 1 and max = 3600 | | rpc_addr | 127.0.0.1:3030 | `OPTIONAL` local address to listen for rpc reqs | -When you select a network, check that `ethereum_rpc` and `starknet_rpc` urls also point to their corresponding networks. For example: - -MAINNET -``` -ethereum_rpc = "https://eth-mainnet.g.alchemy.com/v2/{YOUR_API_KEY}" -starknet_rpc = "https://starknet-mainnet.g.alchemy.com/starknet/version/rpc/v0_7/{YOUR_API_KEY}" -``` -SEPOLIA -``` -ethereum_rpc = "https://eth-sepolia.g.alchemy.com/v2/{YOUR_API_KEY}" -starknet_rpc = "https://starknet-sepolia.g.alchemy.com/starknet/version/rpc/v0_7/{YOUR_API_KEY}" -``` - -#### RPC providers -Beerus relies on TWO untrusted RPC endpoints, one for L1 (Ethereum), and one for L2 (Starknet). -As these are untrusted they will typically not be nodes run on your local host or your local network. +#### RPC provider +Beerus relies on Starknet RPC service provider and on Feeder Gateway URL. ##### Starknet RPC endpoint Beerus expects serving the [v0.7.1 of the Starknet OpenRPC specs](https://github.com/starkware-libs/starknet-specs/tree/v0.7.1). @@ -124,7 +110,6 @@ We recommend using one of these providers: - [Chainstack](https://docs.chainstack.com/docs/starknet-tooling) - [Reddio](https://docs.reddio.com/guide/node/starknet.html#grab-starknet-sepolia-endpoint) - More API providers can be found [here](https://docs.starknet.io/documentation/tools/api-services/). ## Development diff --git a/etc/conf/.env.example b/etc/conf/.env.example index 6458f7f1..e0c65d78 100644 --- a/etc/conf/.env.example +++ b/etc/conf/.env.example @@ -1,11 +1,11 @@ -# Ethereum execution RPC URL -ETHEREUM_RPC=https://eth-mainnet.g.alchemy.com/v2/ - -# StarkNet RPC URL, e.g. infura or pathfinder +# Starknet RPC URL, e.g. infura or pathfinder STARKNET_RPC=https://starknet-mainnet.g.alchemy.com/v2/ -# OPTIONAL -> Path to data directory for node data +# Starknet Feeder Gateway base URL (OPTIONAL) +GATEWAY_URL=https://alpha-mainnet.starknet.io + +# Path to data directory for node data (OPTIONAL) DATA_DIR=tmp -# OPTIONAL -> Poll interval seconds -POLL_SECS=5 +# Poll interval seconds (OPTIONAL) +POLL_SECS=30 diff --git a/etc/conf/beerus.toml b/etc/conf/beerus.toml index 898739ee..b7670d0b 100644 --- a/etc/conf/beerus.toml +++ b/etc/conf/beerus.toml @@ -1,4 +1,4 @@ -ethereum_rpc = "https://eth-mainnet.g.alchemy.com/v2/" +gateway_url = "https://alpha-mainnet.starknet.io" starknet_rpc = "https://starknet-mainnet.g.alchemy.com/starknet/version/rpc/v0.6/" data_dir = "tmp" poll_secs = 5 From cb20cc8c3d30f9327c47770c0d2363faa1af1edf Mon Sep 17 00:00:00 2001 From: dwiekawki Date: Mon, 13 Jan 2025 17:25:05 +0100 Subject: [PATCH 15/22] docs(cov): update coverage report --- doc/coverage.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/coverage.html b/doc/coverage.html index 3301fc5f..e5a99d9d 100644 --- a/doc/coverage.html +++ b/doc/coverage.html @@ -118,7 +118,7 @@