From 7267154bffb72c9c692425b12465fcddb0c3e43f Mon Sep 17 00:00:00 2001 From: Fiiranek Date: Fri, 26 Sep 2025 16:33:02 +0200 Subject: [PATCH 01/24] Add `DevetClient` --- crates/sncast/src/helpers/devnet_client.rs | 116 +++++++++++++++++++ crates/sncast/src/helpers/mod.rs | 1 + crates/sncast/tests/helpers/constants.rs | 1 + crates/sncast/tests/helpers/devnet.rs | 4 +- crates/sncast/tests/helpers/devnet_client.rs | 43 +++++++ crates/sncast/tests/helpers/mod.rs | 1 + 6 files changed, 164 insertions(+), 2 deletions(-) create mode 100644 crates/sncast/src/helpers/devnet_client.rs create mode 100644 crates/sncast/tests/helpers/devnet_client.rs diff --git a/crates/sncast/src/helpers/devnet_client.rs b/crates/sncast/src/helpers/devnet_client.rs new file mode 100644 index 0000000000..01ef8787f5 --- /dev/null +++ b/crates/sncast/src/helpers/devnet_client.rs @@ -0,0 +1,116 @@ +use crate::AccountData; +use ::serde::{Deserialize, Serialize, de::DeserializeOwned}; +use anyhow::Error; +use reqwest::Client; +use serde_json::json; +use starknet_types_core::felt::Felt; +use url::Url; + +/// A Devnet-RPC client. +#[derive(Debug, Clone)] +pub struct DevnetClient { + client: Client, + url: Url, +} + +/// All Devnet-RPC methods as listed in the official docs. +#[derive(Debug, Clone, Copy, Serialize, Deserialize)] +pub enum DevnetClientMethod { + /// The `devnet_getConfig` method. + #[serde(rename = "devnet_getConfig")] + GetConfig, + + /// The `devnet_getPredeployedAccounts` method. + #[serde(rename = "devnet_getPredeployedAccounts")] + GetPredeployedAccounts, +} + +impl DevnetClient { + /// Constructs a new [`DevnetClient`] from a transport. + #[must_use] + pub fn new(url: &str) -> Self { + let url = Url::parse(url).expect("Invalid URL"); + Self { + client: Client::new(), + url, + } + } +} + +impl DevnetClient { + async fn send_request(&self, method: DevnetClientMethod, params: P) -> Result + where + P: Serialize + Send + Sync, + R: DeserializeOwned, + { + let res = self + .client + .post(self.url.clone()) + .header("Content-Type", "application/json") + .json(&json!({ + "jsonrpc": "2.0", + "method": method, + "params": params, + "id": 1, + })) + .send() + .await + .expect("Error occured during request") + .json::() + .await; + + match res { + Ok(res_body) => { + if let Some(error) = res_body.get("error") { + Err(anyhow::anyhow!("RPC error: {error}")) + } else if let Some(result) = res_body.get("result") { + serde_json::from_value(result.clone()).map_err(anyhow::Error::from) + } else { + Err(anyhow::anyhow!("Malformed RPC response: {res_body}")) + } + } + Err(e) => Err(anyhow::anyhow!(e.to_string())), + } + } + + /// Fetches the current Devnet configuration. + pub async fn get_config(&self) -> Result { + self.send_request(DevnetClientMethod::GetConfig, json!({})) + .await + } + + /// Fetches the list of predeployed accounts in Devnet. + pub async fn get_predeployed_accounts(&self) -> Result, Error> { + self.send_request(DevnetClientMethod::GetPredeployedAccounts, json!({})) + .await + } +} + +#[derive(Debug, Serialize, Deserialize)] +pub struct Config { + pub seed: u32, + pub account_contract_class_hash: Felt, + pub total_accounts: u8, +} + +#[derive(Debug, Serialize, Deserialize)] +pub struct PredeployedAccount { + pub address: Felt, + pub private_key: Felt, + pub public_key: Felt, +} + +impl From<&PredeployedAccount> for AccountData { + fn from(predeployed_account: &PredeployedAccount) -> Self { + Self { + address: Some(predeployed_account.address), + private_key: predeployed_account.private_key, + public_key: predeployed_account.public_key, + class_hash: None, + salt: None, + deployed: None, + legacy: None, + account_type: None, + } + } +} diff --git a/crates/sncast/src/helpers/mod.rs b/crates/sncast/src/helpers/mod.rs index 66f7c099c3..ffa467da29 100644 --- a/crates/sncast/src/helpers/mod.rs +++ b/crates/sncast/src/helpers/mod.rs @@ -4,6 +4,7 @@ pub mod braavos; pub mod config; pub mod configuration; pub mod constants; +pub mod devnet_client; pub mod fee; pub mod interactive; pub mod output_format; diff --git a/crates/sncast/tests/helpers/constants.rs b/crates/sncast/tests/helpers/constants.rs index 320b4ad038..2e1316bcc0 100644 --- a/crates/sncast/tests/helpers/constants.rs +++ b/crates/sncast/tests/helpers/constants.rs @@ -9,6 +9,7 @@ pub const SEPOLIA_RPC_URL: &str = "http://188.34.188.184:7070/rpc/v0_9"; pub const URL: &str = "http://127.0.0.1:5055/rpc"; pub const NETWORK: &str = "testnet"; pub const SEED: u32 = 1_053_545_548; +pub const ACCOUNTS_NUMBER: u8 = 20; // Block number used by devnet to fork the Sepolia testnet network in the tests pub const FORK_BLOCK_NUMBER: u32 = 721_720; diff --git a/crates/sncast/tests/helpers/devnet.rs b/crates/sncast/tests/helpers/devnet.rs index ae74d36f70..c1b3ae8645 100644 --- a/crates/sncast/tests/helpers/devnet.rs +++ b/crates/sncast/tests/helpers/devnet.rs @@ -1,4 +1,4 @@ -use crate::helpers::constants::{FORK_BLOCK_NUMBER, SEED, SEPOLIA_RPC_URL, URL}; +use crate::helpers::constants::{ACCOUNTS_NUMBER, FORK_BLOCK_NUMBER, SEED, SEPOLIA_RPC_URL, URL}; use crate::helpers::fixtures::{ deploy_braavos_account, deploy_cairo_0_account, deploy_keystore_account, deploy_latest_oz_account, deploy_ready_account, @@ -49,7 +49,7 @@ fn start_devnet() { "--initial-balance", "9999999999999999999999999999999", "--accounts", - "20", + &ACCOUNTS_NUMBER.to_string(), ]) .stdout(Stdio::null()) .spawn() diff --git a/crates/sncast/tests/helpers/devnet_client.rs b/crates/sncast/tests/helpers/devnet_client.rs new file mode 100644 index 0000000000..e8b5e4f9c1 --- /dev/null +++ b/crates/sncast/tests/helpers/devnet_client.rs @@ -0,0 +1,43 @@ +use num_traits::ToPrimitive; +use sncast::helpers::{constants::OZ_CLASS_HASH, devnet_client::DevnetClient}; +use starknet::macros::felt; + +use crate::helpers::constants::{ACCOUNTS_NUMBER, SEED, URL}; + +#[tokio::test] +async fn test_get_config() { + let devnet_client = DevnetClient::new(URL); + let config = devnet_client + .get_config() + .await + .expect("Failed to get config"); + + assert!(config.account_contract_class_hash == OZ_CLASS_HASH); + assert!(config.seed == SEED); + assert!(config.total_accounts == ACCOUNTS_NUMBER); +} + +#[tokio::test] +async fn test_get_predeployed_accounts() { + let devnet_client = DevnetClient::new(URL); + let predeployed_accounts = devnet_client + .get_predeployed_accounts() + .await + .expect("Failed to get predeployed accounts"); + + assert!(predeployed_accounts.len().to_u8().unwrap() == ACCOUNTS_NUMBER); + + let first_account = &predeployed_accounts[0]; + assert!( + first_account.address + == felt!("0x06f4621e7ad43707b3f69f9df49425c3d94fdc5ab2e444bfa0e7e4edeff7992d") + ); + assert!( + first_account.private_key + == felt!("0x0000000000000000000000000000000056c12e097e49ea382ca8eadec0839401") + ); + assert!( + first_account.public_key + == felt!("0x048234b9bc6c1e749f4b908d310d8c53dae6564110b05ccf79016dca8ce7dfac") + ); +} diff --git a/crates/sncast/tests/helpers/mod.rs b/crates/sncast/tests/helpers/mod.rs index 0a90c4ae2b..7c766c56d2 100644 --- a/crates/sncast/tests/helpers/mod.rs +++ b/crates/sncast/tests/helpers/mod.rs @@ -1,5 +1,6 @@ pub mod constants; pub mod devnet; +pub mod devnet_client; pub mod env; pub mod fee; pub mod fixtures; From 0e933b4182a4df2f7e56207599e97b1587869b53 Mon Sep 17 00:00:00 2001 From: Fiiranek Date: Fri, 26 Sep 2025 16:37:08 +0200 Subject: [PATCH 02/24] Rename `DevnetClient` -> `DevnetProvider` --- crates/sncast/src/helpers/account.rs | 61 ++++++++++++++++++- .../{devnet_client.rs => devnet_provider.rs} | 16 ++--- crates/sncast/src/helpers/mod.rs | 2 +- .../{devnet_client.rs => devnet_provider.rs} | 10 +-- crates/sncast/tests/helpers/mod.rs | 2 +- 5 files changed, 74 insertions(+), 17 deletions(-) rename crates/sncast/src/helpers/{devnet_client.rs => devnet_provider.rs} (87%) rename crates/sncast/tests/helpers/{devnet_client.rs => devnet_provider.rs} (80%) diff --git a/crates/sncast/src/helpers/account.rs b/crates/sncast/src/helpers/account.rs index c01447bd5b..d1b6f5aa18 100644 --- a/crates/sncast/src/helpers/account.rs +++ b/crates/sncast/src/helpers/account.rs @@ -1,6 +1,11 @@ -use crate::NestedMap; -use anyhow::Result; +use crate::{NestedMap, build_account, helpers::devnet_provider::DevnetProvider}; +use anyhow::{Result, bail}; use camino::Utf8PathBuf; +use starknet::{ + accounts::SingleOwnerAccount, + providers::{JsonRpcClient, Provider, jsonrpc::HttpTransport}, + signers::LocalWallet, +}; use std::collections::HashSet; use std::fs; @@ -48,3 +53,55 @@ pub fn load_accounts(accounts_file: &Utf8PathBuf) -> Result { Ok(accounts) } + +pub fn account_exists_in_accounts_file( + account_name: &str, + network_name: &str, + accounts_file: &Utf8PathBuf, +) -> Result { + let items = load_accounts(accounts_file)?; + + if items[network_name].is_null() { + bail!("Network with name {network_name} does not exist in accounts file"); + } + + Ok(!items[network_name][account_name].is_null()) +} + +#[must_use] +pub fn is_devnet_account(account: &str) -> bool { + account.starts_with("devnet-") +} + +pub async fn get_account_from_devnet<'a>( + account: &str, + provider: &'a JsonRpcClient, + url: &str, +) -> Result, LocalWallet>> { + let account_number: u8 = account + .strip_prefix("devnet-") + .map(|s| s.parse::().expect("Invalid devnet account number")) + .context("Failed to parse devnet account number")?; + + let devnet_provider = DevnetProvider::new(url); + let devnet_config = devnet_provider.get_config().await?; + + if account_number >= devnet_config.total_accounts { + bail!( + "Devnet account number must be between 1 and {}", + devnet_config.total_accounts + ); + } + + let devnet_accounts = devnet_provider.get_predeployed_accounts().await?; + let predeployed_account = devnet_accounts + .get((account_number - 1) as usize) + .expect("Failed to get devnet account") + .to_owned(); + + let account_data = AccountData::from(predeployed_account); + + let chain_id = provider.chain_id().await?; + + build_account(account_data, chain_id, provider).await +} diff --git a/crates/sncast/src/helpers/devnet_client.rs b/crates/sncast/src/helpers/devnet_provider.rs similarity index 87% rename from crates/sncast/src/helpers/devnet_client.rs rename to crates/sncast/src/helpers/devnet_provider.rs index 01ef8787f5..fd41945a44 100644 --- a/crates/sncast/src/helpers/devnet_client.rs +++ b/crates/sncast/src/helpers/devnet_provider.rs @@ -8,14 +8,14 @@ use url::Url; /// A Devnet-RPC client. #[derive(Debug, Clone)] -pub struct DevnetClient { +pub struct DevnetProvider { client: Client, url: Url, } /// All Devnet-RPC methods as listed in the official docs. #[derive(Debug, Clone, Copy, Serialize, Deserialize)] -pub enum DevnetClientMethod { +pub enum DevnetProviderMethod { /// The `devnet_getConfig` method. #[serde(rename = "devnet_getConfig")] GetConfig, @@ -25,8 +25,8 @@ pub enum DevnetClientMethod { GetPredeployedAccounts, } -impl DevnetClient { - /// Constructs a new [`DevnetClient`] from a transport. +impl DevnetProvider { + /// Constructs a new [`DevnetProvider`] from a transport. #[must_use] pub fn new(url: &str) -> Self { let url = Url::parse(url).expect("Invalid URL"); @@ -37,8 +37,8 @@ impl DevnetClient { } } -impl DevnetClient { - async fn send_request(&self, method: DevnetClientMethod, params: P) -> Result +impl DevnetProvider { + async fn send_request(&self, method: DevnetProviderMethod, params: P) -> Result where P: Serialize + Send + Sync, R: DeserializeOwned, @@ -75,13 +75,13 @@ impl DevnetClient { /// Fetches the current Devnet configuration. pub async fn get_config(&self) -> Result { - self.send_request(DevnetClientMethod::GetConfig, json!({})) + self.send_request(DevnetProviderMethod::GetConfig, json!({})) .await } /// Fetches the list of predeployed accounts in Devnet. pub async fn get_predeployed_accounts(&self) -> Result, Error> { - self.send_request(DevnetClientMethod::GetPredeployedAccounts, json!({})) + self.send_request(DevnetProviderMethod::GetPredeployedAccounts, json!({})) .await } } diff --git a/crates/sncast/src/helpers/mod.rs b/crates/sncast/src/helpers/mod.rs index ffa467da29..fb7ba5df70 100644 --- a/crates/sncast/src/helpers/mod.rs +++ b/crates/sncast/src/helpers/mod.rs @@ -4,7 +4,7 @@ pub mod braavos; pub mod config; pub mod configuration; pub mod constants; -pub mod devnet_client; +pub mod devnet_provider; pub mod fee; pub mod interactive; pub mod output_format; diff --git a/crates/sncast/tests/helpers/devnet_client.rs b/crates/sncast/tests/helpers/devnet_provider.rs similarity index 80% rename from crates/sncast/tests/helpers/devnet_client.rs rename to crates/sncast/tests/helpers/devnet_provider.rs index e8b5e4f9c1..dbe5d31c17 100644 --- a/crates/sncast/tests/helpers/devnet_client.rs +++ b/crates/sncast/tests/helpers/devnet_provider.rs @@ -1,13 +1,13 @@ use num_traits::ToPrimitive; -use sncast::helpers::{constants::OZ_CLASS_HASH, devnet_client::DevnetClient}; +use sncast::helpers::{constants::OZ_CLASS_HASH, devnet_provider::DevnetProvider}; use starknet::macros::felt; use crate::helpers::constants::{ACCOUNTS_NUMBER, SEED, URL}; #[tokio::test] async fn test_get_config() { - let devnet_client = DevnetClient::new(URL); - let config = devnet_client + let devnet_provider = DevnetProvider::new(URL); + let config = devnet_provider .get_config() .await .expect("Failed to get config"); @@ -19,8 +19,8 @@ async fn test_get_config() { #[tokio::test] async fn test_get_predeployed_accounts() { - let devnet_client = DevnetClient::new(URL); - let predeployed_accounts = devnet_client + let devnet_provider = DevnetProvider::new(URL); + let predeployed_accounts = devnet_provider .get_predeployed_accounts() .await .expect("Failed to get predeployed accounts"); diff --git a/crates/sncast/tests/helpers/mod.rs b/crates/sncast/tests/helpers/mod.rs index 7c766c56d2..6530eebdc3 100644 --- a/crates/sncast/tests/helpers/mod.rs +++ b/crates/sncast/tests/helpers/mod.rs @@ -1,6 +1,6 @@ pub mod constants; pub mod devnet; -pub mod devnet_client; +pub mod devnet_provider; pub mod env; pub mod fee; pub mod fixtures; From 5db4ffead07aa198943bc3792697ad28295530cc Mon Sep 17 00:00:00 2001 From: Fiiranek Date: Fri, 26 Sep 2025 16:39:03 +0200 Subject: [PATCH 03/24] Remove `account_exists_in_accounts_file` --- crates/sncast/src/helpers/account.rs | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/crates/sncast/src/helpers/account.rs b/crates/sncast/src/helpers/account.rs index d1b6f5aa18..f108e28758 100644 --- a/crates/sncast/src/helpers/account.rs +++ b/crates/sncast/src/helpers/account.rs @@ -54,20 +54,6 @@ pub fn load_accounts(accounts_file: &Utf8PathBuf) -> Result { Ok(accounts) } -pub fn account_exists_in_accounts_file( - account_name: &str, - network_name: &str, - accounts_file: &Utf8PathBuf, -) -> Result { - let items = load_accounts(accounts_file)?; - - if items[network_name].is_null() { - bail!("Network with name {network_name} does not exist in accounts file"); - } - - Ok(!items[network_name][account_name].is_null()) -} - #[must_use] pub fn is_devnet_account(account: &str) -> bool { account.starts_with("devnet-") From c2baa3e54c4a562cf2582aafe351b0520129fbdc Mon Sep 17 00:00:00 2001 From: Fiiranek Date: Fri, 26 Sep 2025 16:42:25 +0200 Subject: [PATCH 04/24] Refactor test --- .../sncast/tests/helpers/devnet_provider.rs | 25 +++++++++---------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/crates/sncast/tests/helpers/devnet_provider.rs b/crates/sncast/tests/helpers/devnet_provider.rs index dbe5d31c17..2e89e9cd25 100644 --- a/crates/sncast/tests/helpers/devnet_provider.rs +++ b/crates/sncast/tests/helpers/devnet_provider.rs @@ -1,5 +1,8 @@ use num_traits::ToPrimitive; -use sncast::helpers::{constants::OZ_CLASS_HASH, devnet_provider::DevnetProvider}; +use sncast::helpers::{ + constants::OZ_CLASS_HASH, + devnet_provider::{DevnetProvider, PredeployedAccount}, +}; use starknet::macros::felt; use crate::helpers::constants::{ACCOUNTS_NUMBER, SEED, URL}; @@ -28,16 +31,12 @@ async fn test_get_predeployed_accounts() { assert!(predeployed_accounts.len().to_u8().unwrap() == ACCOUNTS_NUMBER); let first_account = &predeployed_accounts[0]; - assert!( - first_account.address - == felt!("0x06f4621e7ad43707b3f69f9df49425c3d94fdc5ab2e444bfa0e7e4edeff7992d") - ); - assert!( - first_account.private_key - == felt!("0x0000000000000000000000000000000056c12e097e49ea382ca8eadec0839401") - ); - assert!( - first_account.public_key - == felt!("0x048234b9bc6c1e749f4b908d310d8c53dae6564110b05ccf79016dca8ce7dfac") - ); + let expected_first_account = PredeployedAccount { + address: felt!("0x06f4621e7ad43707b3f69f9df49425c3d94fdc5ab2e444bfa0e7e4edeff7992d"), + private_key: felt!("0x0000000000000000000000000000000056c12e097e49ea382ca8eadec0839401"), + public_key: felt!("0x048234b9bc6c1e749f4b908d310d8c53dae6564110b05ccf79016dca8ce7dfac"), + }; + assert!(first_account.address == expected_first_account.address); + assert!(first_account.private_key == expected_first_account.private_key); + assert!(first_account.public_key == expected_first_account.public_key); } From 22132859270f9bfbf64d7b25e4aa52913252b4ce Mon Sep 17 00:00:00 2001 From: Fiiranek Date: Fri, 26 Sep 2025 17:04:06 +0200 Subject: [PATCH 05/24] Remove functions --- crates/sncast/src/helpers/account.rs | 47 ++-------------------------- 1 file changed, 2 insertions(+), 45 deletions(-) diff --git a/crates/sncast/src/helpers/account.rs b/crates/sncast/src/helpers/account.rs index f108e28758..c01447bd5b 100644 --- a/crates/sncast/src/helpers/account.rs +++ b/crates/sncast/src/helpers/account.rs @@ -1,11 +1,6 @@ -use crate::{NestedMap, build_account, helpers::devnet_provider::DevnetProvider}; -use anyhow::{Result, bail}; +use crate::NestedMap; +use anyhow::Result; use camino::Utf8PathBuf; -use starknet::{ - accounts::SingleOwnerAccount, - providers::{JsonRpcClient, Provider, jsonrpc::HttpTransport}, - signers::LocalWallet, -}; use std::collections::HashSet; use std::fs; @@ -53,41 +48,3 @@ pub fn load_accounts(accounts_file: &Utf8PathBuf) -> Result { Ok(accounts) } - -#[must_use] -pub fn is_devnet_account(account: &str) -> bool { - account.starts_with("devnet-") -} - -pub async fn get_account_from_devnet<'a>( - account: &str, - provider: &'a JsonRpcClient, - url: &str, -) -> Result, LocalWallet>> { - let account_number: u8 = account - .strip_prefix("devnet-") - .map(|s| s.parse::().expect("Invalid devnet account number")) - .context("Failed to parse devnet account number")?; - - let devnet_provider = DevnetProvider::new(url); - let devnet_config = devnet_provider.get_config().await?; - - if account_number >= devnet_config.total_accounts { - bail!( - "Devnet account number must be between 1 and {}", - devnet_config.total_accounts - ); - } - - let devnet_accounts = devnet_provider.get_predeployed_accounts().await?; - let predeployed_account = devnet_accounts - .get((account_number - 1) as usize) - .expect("Failed to get devnet account") - .to_owned(); - - let account_data = AccountData::from(predeployed_account); - - let chain_id = provider.chain_id().await?; - - build_account(account_data, chain_id, provider).await -} From 64c8c5b0da637936b34e2243b9a845c53b4f7180 Mon Sep 17 00:00:00 2001 From: Fiiranek Date: Fri, 26 Sep 2025 17:50:57 +0200 Subject: [PATCH 06/24] Fix typo --- crates/sncast/src/helpers/devnet_provider.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crates/sncast/src/helpers/devnet_provider.rs b/crates/sncast/src/helpers/devnet_provider.rs index fd41945a44..74dde27c0b 100644 --- a/crates/sncast/src/helpers/devnet_provider.rs +++ b/crates/sncast/src/helpers/devnet_provider.rs @@ -55,7 +55,7 @@ impl DevnetProvider { })) .send() .await - .expect("Error occured during request") + .expect("Error occurred during request") .json::() .await; From fa4af768bb217d3e49371e2a0bf2a81088cddc21 Mon Sep 17 00:00:00 2001 From: Fiiranek Date: Mon, 29 Sep 2025 12:25:07 +0200 Subject: [PATCH 07/24] Little refactor --- crates/sncast/src/helpers/devnet_provider.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/crates/sncast/src/helpers/devnet_provider.rs b/crates/sncast/src/helpers/devnet_provider.rs index 74dde27c0b..dcec9e31c1 100644 --- a/crates/sncast/src/helpers/devnet_provider.rs +++ b/crates/sncast/src/helpers/devnet_provider.rs @@ -26,7 +26,7 @@ pub enum DevnetProviderMethod { } impl DevnetProvider { - /// Constructs a new [`DevnetProvider`] from a transport. + /// Constructs a new [`DevnetProvider`] from given url. #[must_use] pub fn new(url: &str) -> Self { let url = Url::parse(url).expect("Invalid URL"); @@ -62,7 +62,7 @@ impl DevnetProvider { match res { Ok(res_body) => { if let Some(error) = res_body.get("error") { - Err(anyhow::anyhow!("RPC error: {error}")) + Err(anyhow::anyhow!(error.to_string())) } else if let Some(result) = res_body.get("result") { serde_json::from_value(result.clone()).map_err(anyhow::Error::from) } else { From 53de06406db5258be4f6f170993f10d794188e38 Mon Sep 17 00:00:00 2001 From: Artur Michalek Date: Mon, 29 Sep 2025 20:19:39 +0200 Subject: [PATCH 08/24] Use fixed version of cairo deps --- Cargo.toml | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 0f435fd4e3..74fdc61545 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -36,18 +36,18 @@ license-file = "LICENSE" blockifier = { version = "0.15.0-rc.3", features = ["testing", "tracing"] } bigdecimal = "0.4.8" starknet_api = "0.15.0-rc.3" -cairo-lang-casm = { version = "2.12.0", features = ["serde"] } -cairo-lang-sierra = "2.12.0" -cairo-lang-utils = "2.12.0" -cairo-lang-starknet = "2.12.0" -cairo-lang-filesystem = "2.12.0" -cairo-lang-diagnostics = "2.12.0" -cairo-lang-sierra-type-size = "2.12.0" -cairo-lang-syntax = "2.12.0" -cairo-lang-test-plugin = "2.12.0" -cairo-lang-starknet-classes = "2.12.0" -cairo-lang-parser = "2.12.0" -cairo-lang-sierra-to-casm = "2.12.0" +cairo-lang-casm = { version = "=2.12.0", features = ["serde"] } +cairo-lang-sierra = "=2.12.0" +cairo-lang-utils = "=2.12.0" +cairo-lang-starknet = "=2.12.0" +cairo-lang-filesystem = "=2.12.0" +cairo-lang-diagnostics = "=2.12.0" +cairo-lang-sierra-type-size = "=2.12.0" +cairo-lang-syntax = "=2.12.0" +cairo-lang-test-plugin = "=2.12.0" +cairo-lang-starknet-classes = "=2.12.0" +cairo-lang-parser = "=2.12.0" +cairo-lang-sierra-to-casm = "=2.12.0" cairo-vm = "=2.3.1" cairo-annotations = "0.5.2" dirs = "6.0.0" From b32ed808c238042307723ae6d4dddae740d0a6c5 Mon Sep 17 00:00:00 2001 From: Artur Michalek Date: Mon, 29 Sep 2025 20:19:49 +0200 Subject: [PATCH 09/24] Release 0.50.0 --- CHANGELOG.md | 2 + Cargo.lock | 725 ++++++++++-------- Cargo.toml | 2 +- ..._188_184_7070_rpc_v0_9_54060_v0_50_0.json} | 2 +- .../Cargo.lock | 193 ++--- .../Cargo.toml | 2 +- .../Scarb.toml | 2 +- crates/snforge-scarb-plugin/Cargo.lock | 2 +- crates/snforge-scarb-plugin/Cargo.toml | 2 +- crates/snforge-scarb-plugin/Scarb.toml | 2 +- docs/book.toml | 2 +- sncast_std/Scarb.lock | 2 +- sncast_std/Scarb.toml | 2 +- snforge_std/Scarb.lock | 4 +- snforge_std/Scarb.toml | 2 +- snforge_std_deprecated/Scarb.toml | 2 +- 16 files changed, 491 insertions(+), 457 deletions(-) rename crates/forge/tests/data/forking/.snfoundry_cache/{http___188_34_188_184_7070_rpc_v0_9_54060_v0_49_0.json => http___188_34_188_184_7070_rpc_v0_9_54060_v0_50_0.json} (99%) diff --git a/CHANGELOG.md b/CHANGELOG.md index f84240db7e..0e736fc681 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [0.50.0] - 2025-09-29 + ### Forge #### Added diff --git a/Cargo.lock b/Cargo.lock index 10c62c59b9..7c8da1ff61 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4,9 +4,9 @@ version = 4 [[package]] name = "addr2line" -version = "0.24.2" +version = "0.25.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1" +checksum = "1b5d307320b3181d6d7954e663bd7c774a838b8220fe0593c86d9fb09f498b4b" dependencies = [ "gimli", ] @@ -55,12 +55,6 @@ version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" -[[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" @@ -87,9 +81,9 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.11" +version = "1.0.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "862ed96ca487e809f1c8e5a8447f6ee2cf102f846893800b20cebdf541fc6bbd" +checksum = "5192cca8006f1fd4f7237516f40fa183bb07f8fbdfedaa0036de5ea9b0b45e78" [[package]] name = "anstyle-parse" @@ -122,9 +116,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.99" +version = "1.0.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0674a1ddeecb70197781e945de4b3b8ffb61fa939a5597bcf48503737663100" +checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61" [[package]] name = "apollo_compile_to_native_types" @@ -177,11 +171,11 @@ dependencies = [ [[package]] name = "apollo_metrics" -version = "0.15.0-rc.3" +version = "0.15.0-rc.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00d819befc97f0ad6b7ab85546f2dc3546fb4e0faab4b330c3c46824309257c8" +checksum = "eddd44db0a445e928fd4e78641587ef33e4391f186418089511998a90c2f1f2e" dependencies = [ - "indexmap 2.11.0", + "indexmap 2.11.4", "metrics", "num-traits", "paste", @@ -551,9 +545,9 @@ checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" [[package]] name = "axum" -version = "0.8.4" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "021e862c184ae977658b36c4500f7feac3221ca5da43e3f25bd04ab6c79a29b5" +checksum = "98e529aee37b5c8206bb4bf4c44797127566d72f76952c970bd3d1e85de8f4e2" dependencies = [ "axum-core", "bytes", @@ -570,8 +564,7 @@ dependencies = [ "mime", "percent-encoding", "pin-project-lite", - "rustversion", - "serde", + "serde_core", "serde_json", "serde_path_to_error", "serde_urlencoded", @@ -585,9 +578,9 @@ dependencies = [ [[package]] name = "axum-core" -version = "0.5.2" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68464cd0412f486726fb3373129ef5d2993f90c34bc2bc1c1e9943b2f4fc7ca6" +checksum = "0ac7a6beb1182c7e30253ee75c3e918080bfb83f5a3023bcdf7209d85fd147e6" dependencies = [ "bytes", "futures-core", @@ -596,7 +589,6 @@ dependencies = [ "http-body-util", "mime", "pin-project-lite", - "rustversion", "sync_wrapper", "tower-layer", "tower-service", @@ -605,9 +597,9 @@ dependencies = [ [[package]] name = "backtrace" -version = "0.3.75" +version = "0.3.76" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6806a6321ec58106fea15becdad98371e28d92ccbc7c8f1b3b6dd724fe8f1002" +checksum = "bb531853791a215d7c62a30daf0dde835f381ab5de4589cfe7c649d2cbe92bd6" dependencies = [ "addr2line", "cfg-if", @@ -615,7 +607,7 @@ dependencies = [ "miniz_oxide", "object", "rustc-demangle", - "windows-targets 0.52.6", + "windows-link 0.2.0", ] [[package]] @@ -740,9 +732,9 @@ dependencies = [ [[package]] name = "blockifier" -version = "0.15.0-rc.3" +version = "0.15.0-rc.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56888e7ed4421c6eeb2b0bc44a715b24cd1d9d3cc6b06e1e80b6688d5b93a313" +checksum = "63be42f5ff48f7f9065b8b03d137fece1cc153c7aefcffb267abd5abd6e4e09a" dependencies = [ "anyhow", "apollo_compile_to_native_types", @@ -761,7 +753,7 @@ dependencies = [ "cairo-vm", "dashmap", "derive_more 0.99.20", - "indexmap 2.11.0", + "indexmap 2.11.4", "itertools 0.12.1", "keccak", "log", @@ -788,9 +780,9 @@ dependencies = [ [[package]] name = "blockifier_test_utils" -version = "0.15.0-rc.3" +version = "0.15.0-rc.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81be5b363638f8618dda40b810bd768e5cdfa3bc8810a04c37db6d994e87f9d3" +checksum = "feefdfee072986f1203ee7f04a3b81e7c354ce45242a726299b56f91dcba0859" dependencies = [ "apollo_infra_utils", "cairo-lang-starknet-classes", @@ -902,14 +894,14 @@ dependencies = [ "starknet-types-core", "strum 0.27.2", "strum_macros 0.27.2", - "thiserror 2.0.16", + "thiserror 2.0.17", ] [[package]] name = "cairo-lang-casm" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fe853af0ccb1b54b0194d9bd77fd5d74825650226cb4e56f8c5f4bacac3d9b1" +checksum = "5fcb67fa250ab8eb216e626dc58ed04081286885005519875bfbcfbb66485f33" dependencies = [ "cairo-lang-utils", "indoc", @@ -921,9 +913,9 @@ dependencies = [ [[package]] name = "cairo-lang-compiler" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10f1d4581b52a0d6a151aafed3fae5b28fac3abcad5af6cea405d7786407deab" +checksum = "c4172274cc72c13e6bed80ba984b008ae66e2dab6baef2a2b507d901199e1905" dependencies = [ "anyhow", "cairo-lang-defs", @@ -943,23 +935,23 @@ dependencies = [ "rust-analyzer-salsa", "semver", "smol_str", - "thiserror 2.0.16", + "thiserror 2.0.17", ] [[package]] name = "cairo-lang-debug" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2257450e0cab180e677efde875c05fef61e522e859bf2930127a9269b13d285" +checksum = "87be3c3a2351b0931ce482c70b407e042c8cf952fdd4751c739c50078edad67b" dependencies = [ "cairo-lang-utils", ] [[package]] name = "cairo-lang-defs" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f012263db353ea6603227b8ae0f0c6a8afe4f7ae1e35d965a154b9940d70df61" +checksum = "db0dce1e9c902b91ec11d6baf0478537db91be457e7b0b03b1395f8daa3c7fe6" dependencies = [ "bincode", "cairo-lang-debug", @@ -978,9 +970,9 @@ dependencies = [ [[package]] name = "cairo-lang-diagnostics" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9478358838cfc24a9e70b27ab6f15fcd743077aa6eae3075c2a3642b05b2be07" +checksum = "d4a040088f9b8ec09ad7e2a461490276b17b9abd0eb4c5e95b8d87d66ca04255" dependencies = [ "cairo-lang-debug", "cairo-lang-filesystem", @@ -990,9 +982,9 @@ dependencies = [ [[package]] name = "cairo-lang-eq-solver" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ecf1d9e5a6e691675221334f7e48daa12c56521a097f35357b53cae80db8dd7" +checksum = "fe2a4ed344b143eceaf818d7212a45a5d6dc9e50ebfc5afabb30ff05d8298261" dependencies = [ "cairo-lang-utils", "good_lp", @@ -1000,9 +992,9 @@ dependencies = [ [[package]] name = "cairo-lang-filesystem" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47d139fb25755cbfe8b72530c280f391b02953dbb4d744d58d21ca61711bba3f" +checksum = "694930930f52a131a0f82fa92d213874ac24aad2638cd73e43790e4339cd42c6" dependencies = [ "cairo-lang-debug", "cairo-lang-utils", @@ -1016,9 +1008,9 @@ dependencies = [ [[package]] name = "cairo-lang-formatter" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36a597b7cbb9c1fa0b59ca1f2dc46b673931dc491806ff3d974e11921129f62d" +checksum = "c006f5a9342e77da68b07962ba419c20dfb6e0ba8f9e3b16a49cc131f3fbe709" dependencies = [ "anyhow", "cairo-lang-diagnostics", @@ -1030,14 +1022,14 @@ dependencies = [ "ignore", "itertools 0.14.0", "serde", - "thiserror 2.0.16", + "thiserror 2.0.17", ] [[package]] name = "cairo-lang-lowering" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "895b833b2e6e46847281d10f79d6ccbd0980d564115e36e9600a8e90514da81f" +checksum = "8db13296247c54c0be19efbc26c0d2be7758b8a459052931ff5b92ac71f9e670" dependencies = [ "assert_matches", "bincode", @@ -1062,9 +1054,9 @@ dependencies = [ [[package]] name = "cairo-lang-parser" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8db9da7f45d86489add2118fa4ea7cf1217bfec2b32908f2b9ed0e3954e45d0a" +checksum = "a3f75b0baca6666107c47d9d8d40684c99c82c930924eb85a13db90bc795928c" dependencies = [ "cairo-lang-diagnostics", "cairo-lang-filesystem", @@ -1083,9 +1075,9 @@ dependencies = [ [[package]] name = "cairo-lang-plugins" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c281268bc974f27771929ffad54a8e61aa28f7de1d16fcf2d484528847c185ac" +checksum = "1ac54f473248dfb00311b35b809e043e2e6ca3e288e63f3876c6ac3509d3c433" dependencies = [ "cairo-lang-defs", "cairo-lang-diagnostics", @@ -1108,9 +1100,9 @@ checksum = "123ac0ecadf31bacae77436d72b88fa9caef2b8e92c89ce63a125ae911a12fae" [[package]] name = "cairo-lang-proc-macros" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1692891334517dae27cfdc2a23c9205a99e88823b6be48a25636f0eeb24903fc" +checksum = "8b62a7d9aa7a499d9189248f2b474b2bdb57877cd4de1d71ab40a8c06de446e3" dependencies = [ "cairo-lang-debug", "quote", @@ -1119,22 +1111,22 @@ dependencies = [ [[package]] name = "cairo-lang-project" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3162a2534953db6dba28c1b4e911e201410abb3970679048ae9d8efca3185a8" +checksum = "755c0793df2fd2f6f2b119b09b844014779b05943541e6c90019540eb4aecf5f" dependencies = [ "cairo-lang-filesystem", "cairo-lang-utils", "serde", - "thiserror 2.0.16", + "thiserror 2.0.17", "toml", ] [[package]] name = "cairo-lang-runnable-utils" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ce4a4b1794fc48757c23310b6cf3de40176bdaab24f9c6de4f1d442108f93d3" +checksum = "f15491e1671043a61b9f97d14d7e0542b5cb53a5247b57bcd1014ccc5f9e91d6" dependencies = [ "cairo-lang-casm", "cairo-lang-sierra", @@ -1145,14 +1137,14 @@ dependencies = [ "cairo-lang-utils", "cairo-vm", "itertools 0.14.0", - "thiserror 2.0.16", + "thiserror 2.0.17", ] [[package]] name = "cairo-lang-runner" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a9678e6962534df9f441b149790d590ac6ae95574d24f1e130afe2c24454242" +checksum = "45ac53dbf7eb23495ea035a1b15b4045ad858cdf6fc40301473d16dde0d37471" dependencies = [ "ark-ff 0.5.0", "ark-secp256k1 0.5.0", @@ -1175,14 +1167,14 @@ dependencies = [ "sha2", "smol_str", "starknet-types-core", - "thiserror 2.0.16", + "thiserror 2.0.17", ] [[package]] name = "cairo-lang-semantic" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "957d1321013e3cead7fe777ef0e2e2293c2cc0c483e0c965efa98f93ad836b25" +checksum = "bb70bf8a95400e0c853374a6c10e79cf750ba9004ad2eca15dcd87034af995f7" dependencies = [ "cairo-lang-debug", "cairo-lang-defs", @@ -1207,9 +1199,9 @@ dependencies = [ [[package]] name = "cairo-lang-sierra" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc19ef658d46da7735185397e04791e841168dc0ae3ad762f1bf48f2a490720d" +checksum = "104eba8e6509ecd4e96cac9cd3dee9f0c698bfc8cba0097b32f6378eaac3edd8" dependencies = [ "anyhow", "cairo-lang-utils", @@ -1229,14 +1221,14 @@ dependencies = [ "sha3", "smol_str", "starknet-types-core", - "thiserror 2.0.16", + "thiserror 2.0.17", ] [[package]] name = "cairo-lang-sierra-ap-change" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "796dcd14c9120a0c3480656a870ab921c66bbfaa4dfc6ca4a3b20668ddaee1a7" +checksum = "9131235c4854d3c483a3d363cbfa70b6c2e8b5ca05e37ecbb9edc4a5dfc2e186" dependencies = [ "cairo-lang-eq-solver", "cairo-lang-sierra", @@ -1245,14 +1237,14 @@ dependencies = [ "itertools 0.14.0", "num-bigint", "num-traits", - "thiserror 2.0.16", + "thiserror 2.0.17", ] [[package]] name = "cairo-lang-sierra-gas" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a8f1448c80729780b581382b9979e06ad39fa70a878f8bf1eb436e736880e14" +checksum = "b6d9d0fed2440c8ea6717e9580d0efa4b10e07415ca9508afe2d9cb9be8aca64" dependencies = [ "cairo-lang-eq-solver", "cairo-lang-sierra", @@ -1261,14 +1253,14 @@ dependencies = [ "itertools 0.14.0", "num-bigint", "num-traits", - "thiserror 2.0.16", + "thiserror 2.0.17", ] [[package]] name = "cairo-lang-sierra-generator" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6cf960c78fc865b1df80c1ac71cd43d8fdb5a95e5dcd680556a60cf6c5132ce" +checksum = "873d0ebb98354c061a9b8f81c2a1e58c7c4e746aa3f96c7e42c427216b2d9ca1" dependencies = [ "cairo-lang-debug", "cairo-lang-defs", @@ -1290,9 +1282,9 @@ dependencies = [ [[package]] name = "cairo-lang-sierra-to-casm" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bde6acc78b96b9e18e0cb6ba4236b0090b7ce91e6758e57e44a0b17d401086e1" +checksum = "4a47906641d467f18f2035c5017bee4afd6e118eba80e217b82a03b678764919" dependencies = [ "assert_matches", "cairo-lang-casm", @@ -1306,14 +1298,14 @@ dependencies = [ "num-bigint", "num-traits", "starknet-types-core", - "thiserror 2.0.16", + "thiserror 2.0.17", ] [[package]] name = "cairo-lang-sierra-type-size" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a74f2a90f33f1328d5eb7522432219a4af20de29b5500de96503d16a5b83592" +checksum = "1a7cc6bb50cc23e0252a48a1b2ee9b17edcb74d2dab86c70b095bcd287ecfd66" dependencies = [ "cairo-lang-sierra", "cairo-lang-utils", @@ -1321,9 +1313,9 @@ dependencies = [ [[package]] name = "cairo-lang-starknet" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8b1eea1ef1447020cd5f810820d546fe56b5904bc26fd883399d412ac5a9c0c" +checksum = "2f8264e92d3b921dd72656c8c80d85342d7f7ffd8fa5a77c13862620c9f27240" dependencies = [ "anyhow", "cairo-lang-compiler", @@ -1347,15 +1339,15 @@ dependencies = [ "serde_json", "smol_str", "starknet-types-core", - "thiserror 2.0.16", + "thiserror 2.0.17", "typetag", ] [[package]] name = "cairo-lang-starknet-classes" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b2bfe0e756ea74ab045625cf4e7d766290f9085abd44a2ef62e41552116f1e3" +checksum = "0d46f87d7dc5ee23ff1e67cb88210f3273ee97b82efc84e30f5abf17a96d7510" dependencies = [ "cairo-lang-casm", "cairo-lang-sierra", @@ -1371,14 +1363,14 @@ dependencies = [ "sha3", "smol_str", "starknet-types-core", - "thiserror 2.0.16", + "thiserror 2.0.17", ] [[package]] name = "cairo-lang-syntax" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4df3767d1f764a24c07b0547489d2ad80ef011d6b4e8bab5e853624348e72d3" +checksum = "0638177321676b1ffc6350e3d7a62cd3d48df46d90bfc561b32a38589f0eeee0" dependencies = [ "cairo-lang-debug", "cairo-lang-filesystem", @@ -1394,9 +1386,9 @@ dependencies = [ [[package]] name = "cairo-lang-syntax-codegen" -version = "2.12.1" +version = "2.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7c3560464f6e243259a20906b0e173c7600e59e459bbc3beb620cd656b037ae" +checksum = "0d00ae64466774b6e34a91c4a66202778b17ef5a844a6f668436e28d71ccb9b2" dependencies = [ "genco", "xshell", @@ -1404,9 +1396,9 @@ dependencies = [ [[package]] name = "cairo-lang-test-plugin" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0d11cc191cf980457a39de7ce7ca8133bb77df4d4f23b6374a11f8204db5eb3" +checksum = "43110b7397ba63a594e79f52c61c7be1ff295b5b460d123ef68099569ccc0a44" dependencies = [ "anyhow", "cairo-lang-compiler", @@ -1432,9 +1424,9 @@ dependencies = [ [[package]] name = "cairo-lang-test-utils" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03ddd9bfe3166875daee9864c4f79c6e4610ca597ab934e9961d4734b6855ddd" +checksum = "d325a9afabf56b9d20de7799fa370f83a673fc0a9ff62e0abcabf62cb1efbff9" dependencies = [ "cairo-lang-formatter", "cairo-lang-utils", @@ -1445,12 +1437,12 @@ dependencies = [ [[package]] name = "cairo-lang-utils" -version = "2.12.1" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e414e98233e2d0ee7a4259e39e4281092aab91f0cc4f1335c63dc44d1abeeff" +checksum = "3443f4fc17986f362f5b87cd8c37dafeadf5e0a0909a19f2541cd55baae25a74" dependencies = [ "hashbrown 0.15.5", - "indexmap 2.11.0", + "indexmap 2.11.4", "itertools 0.14.0", "num-bigint", "num-traits", @@ -1497,24 +1489,24 @@ dependencies = [ "sha3", "starknet-crypto 0.7.4 (registry+https://github.com/rust-lang/crates.io-index)", "starknet-types-core", - "thiserror 2.0.16", + "thiserror 2.0.17", "zip", ] [[package]] name = "camino" -version = "1.1.12" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd0b03af37dad7a14518b7691d81acb0f8222604ad3d1b02f6b4bed5188c0cd5" +checksum = "276a59bf2b2c967788139340c9f0c5b12d7fd6630315c15c217e559de85d2609" dependencies = [ - "serde", + "serde_core", ] [[package]] name = "cc" -version = "1.2.35" +version = "1.2.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "590f9024a68a8c40351881787f1934dc11afd69090f5edb6831464694d836ea3" +checksum = "e1354349954c6fc9cb0deab020f27f783cf0b604e8bb754dc4658ecf0d29c35f" dependencies = [ "find-msvc-tools", "shlex", @@ -1534,7 +1526,7 @@ checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" [[package]] name = "cheatnet" -version = "0.49.0" +version = "0.50.0" dependencies = [ "anyhow", "bimap", @@ -1553,7 +1545,7 @@ dependencies = [ "foundry-ui", "fs2", "glob", - "indexmap 2.11.0", + "indexmap 2.11.4", "indoc", "k256", "num-bigint", @@ -1573,7 +1565,7 @@ dependencies = [ "starknet_api", "tempfile", "test-case", - "thiserror 2.0.16", + "thiserror 2.0.17", "tokio", "universal-sierra-compiler-api", "url", @@ -1581,17 +1573,16 @@ dependencies = [ [[package]] name = "chrono" -version = "0.4.41" +version = "0.4.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c469d952047f47f91b68d1cba3f10d63c11d73e4636f24f08daf0278abf01c4d" +checksum = "145052bdd345b87320e369255277e3fb5152762ad123a901ef5c262dd38fe8d2" dependencies = [ - "android-tzdata", "iana-time-zone", "js-sys", "num-traits", "serde", "wasm-bindgen", - "windows-link", + "windows-link 0.2.0", ] [[package]] @@ -1606,9 +1597,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.47" +version = "4.5.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7eac00902d9d136acd712710d71823fb8ac8004ca445a89e73a41d45aa712931" +checksum = "e2134bb3ea021b78629caa971416385309e0131b351b25e01dc16fb54e1b5fae" dependencies = [ "clap_builder", "clap_derive", @@ -1616,9 +1607,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.47" +version = "4.5.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ad9bbf750e73b5884fb8a211a9424a1906c1e156724260fdae972f31d70e1d6" +checksum = "c2ba64afa3c0a6df7fa517765e31314e983f51dda798ffba27b988194fb65dc9" dependencies = [ "anstream", "anstyle", @@ -1628,9 +1619,9 @@ dependencies = [ [[package]] name = "clap_complete" -version = "4.5.57" +version = "4.5.58" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d9501bd3f5f09f7bbee01da9a511073ed30a80cd7a509f1214bb74eadea71ad" +checksum = "75bf0b32ad2e152de789bb635ea4d3078f6b838ad7974143e99b99f45a04af4a" dependencies = [ "clap", ] @@ -1732,15 +1723,14 @@ checksum = "32b13ea120a812beba79e34316b3942a857c86ec1593cb34f27bb28272ce2cca" [[package]] name = "const-hex" -version = "1.15.0" +version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dccd746bf9b1038c0507b7cec21eb2b11222db96a2902c96e8c185d6d20fb9c4" +checksum = "b6407bff74dea37e0fa3dc1c1c974e5d46405f0c987bf9997a0762adce71eda6" dependencies = [ "cfg-if", "cpufeatures", - "hex", "proptest", - "serde", + "serde_core", ] [[package]] @@ -1805,7 +1795,7 @@ dependencies = [ "starknet", "starknet-types-core", "starknet_api", - "thiserror 2.0.16", + "thiserror 2.0.17", ] [[package]] @@ -1956,12 +1946,12 @@ dependencies = [ [[package]] name = "darling" -version = "0.20.11" +version = "0.21.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee" +checksum = "9cdf337090841a411e2a7f3deb9187445851f91b309c0c0a29e05f74a00a48c0" dependencies = [ - "darling_core 0.20.11", - "darling_macro 0.20.11", + "darling_core 0.21.3", + "darling_macro 0.21.3", ] [[package]] @@ -1980,9 +1970,9 @@ dependencies = [ [[package]] name = "darling_core" -version = "0.20.11" +version = "0.21.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d00b9596d185e565c2207a0b01f8bd1a135483d02d9b7b0a54b11da8d53412e" +checksum = "1247195ecd7e3c85f83c8d2a366e4210d588e802133e1e355180a9870b517ea4" dependencies = [ "fnv", "ident_case", @@ -2005,11 +1995,11 @@ dependencies = [ [[package]] name = "darling_macro" -version = "0.20.11" +version = "0.21.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" +checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81" dependencies = [ - "darling_core 0.20.11", + "darling_core 0.21.3", "quote", "syn 2.0.106", ] @@ -2050,7 +2040,7 @@ dependencies = [ "starknet", "starknet-types-core", "test-case", - "thiserror 2.0.16", + "thiserror 2.0.17", "tokio", "url", ] @@ -2091,7 +2081,7 @@ dependencies = [ "starknet", "starknet-types-core", "starknet_api", - "thiserror 2.0.16", + "thiserror 2.0.17", ] [[package]] @@ -2107,12 +2097,12 @@ dependencies = [ [[package]] name = "deranged" -version = "0.5.3" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d630bccd429a5bb5a64b5e94f693bfc48c9f8566418fda4c494cc94f911f87cc" +checksum = "a41953f86f8a05768a6cda24def994fd2f424b04ec5c719cf89989779f199071" dependencies = [ "powerfmt", - "serde", + "serde_core", ] [[package]] @@ -2255,7 +2245,7 @@ dependencies = [ "libc", "option-ext", "redox_users 0.5.2", - "windows-sys 0.60.2", + "windows-sys 0.61.1", ] [[package]] @@ -2297,7 +2287,7 @@ checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10" [[package]] name = "docs" -version = "0.49.0" +version = "0.50.0" dependencies = [ "anyhow", "camino", @@ -2308,7 +2298,7 @@ dependencies = [ "serde_json", "shell-words", "tempfile", - "toml_edit", + "toml_edit 0.22.27", "walkdir", ] @@ -2457,22 +2447,23 @@ checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "erased-serde" -version = "0.4.6" +version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e004d887f51fcb9fef17317a2f3525c887d8aa3f4f50fed920816a688284a5b7" +checksum = "259d404d09818dec19332e31d94558aeb442fea04c817006456c24b5460bbd4b" dependencies = [ "serde", + "serde_core", "typeid", ] [[package]] name = "errno" -version = "0.3.13" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "778e2ac28f6c47af28e4907f13ffd1e1ddbd400980a9abd7c8df189bf578a5ad" +checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.60.2", + "windows-sys 0.61.1", ] [[package]] @@ -2563,9 +2554,9 @@ dependencies = [ [[package]] name = "find-msvc-tools" -version = "0.1.0" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e178e4fba8a2726903f6ba98a6d221e76f9c12c650d5dc0e6afdc50677b49650" +checksum = "1ced73b1dacfc750a6db6c0a0c3a3853c8b41997e2e2c563dc90804ae6867959" [[package]] name = "fixed-hash" @@ -2639,7 +2630,7 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" [[package]] name = "forge" -version = "0.49.0" +version = "0.50.0" dependencies = [ "anyhow", "assert_fs", @@ -2685,7 +2676,7 @@ dependencies = [ "test-case", "test_utils", "tokio", - "toml_edit", + "toml_edit 0.22.27", "tracing", "tracing-chrome", "tracing-subscriber", @@ -2696,7 +2687,7 @@ dependencies = [ [[package]] name = "forge_runner" -version = "0.49.0" +version = "0.50.0" dependencies = [ "anyhow", "blockifier", @@ -2736,7 +2727,7 @@ dependencies = [ "strum 0.27.2", "strum_macros 0.27.2", "tokio", - "toml_edit", + "toml_edit 0.22.27", "tracing", "universal-sierra-compiler-api", "url", @@ -2754,7 +2745,7 @@ dependencies = [ [[package]] name = "foundry-ui" -version = "0.49.0" +version = "0.50.0" dependencies = [ "anyhow", "console", @@ -2942,15 +2933,15 @@ dependencies = [ "js-sys", "libc", "r-efi", - "wasi 0.14.3+wasi-0.2.4", + "wasi 0.14.7+wasi-0.2.4", "wasm-bindgen", ] [[package]] name = "gimli" -version = "0.31.1" +version = "0.32.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" +checksum = "e629b9b98ef3dd8afe6ca2bd0f89306cec16d43d907889945bc5d6687f2f13c7" [[package]] name = "glob" @@ -3015,7 +3006,7 @@ dependencies = [ "futures-core", "futures-sink", "http", - "indexmap 2.11.0", + "indexmap 2.11.4", "slab", "tokio", "tokio-util", @@ -3059,6 +3050,12 @@ dependencies = [ "serde", ] +[[package]] +name = "hashbrown" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d" + [[package]] name = "hashlink" version = "0.8.4" @@ -3205,9 +3202,9 @@ dependencies = [ [[package]] name = "hyper-util" -version = "0.1.16" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d9b05277c7e8da2c93a568989bb6207bef0112e8d17df7a6eda4a3cf143bc5e" +checksum = "3c6995591a8f1380fcb4ba966a252a4b29188d51d2b89e3a252f5305be65aea8" dependencies = [ "base64 0.22.1", "bytes", @@ -3231,9 +3228,9 @@ dependencies = [ [[package]] name = "iana-time-zone" -version = "0.1.63" +version = "0.1.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0c919e5debc312ad217002b8048a17b7d83f80703865bbfcfebb0458b0b27d8" +checksum = "33e57f83510bb73707521ebaffa789ec8caf86f9657cad665b092b581d40e9fb" dependencies = [ "android_system_properties", "core-foundation-sys", @@ -3490,13 +3487,14 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.11.0" +version = "2.11.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2481980430f9f78649238835720ddccc57e52df14ffce1c6f37391d61b563e9" +checksum = "4b0f83760fb341a774ed326568e19f5a863af4a952def8c39f9ab92fd95b88e5" dependencies = [ "equivalent", - "hashbrown 0.15.5", + "hashbrown 0.16.0", "serde", + "serde_core", ] [[package]] @@ -3622,9 +3620,9 @@ checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" [[package]] name = "js-sys" -version = "0.3.77" +version = "0.3.81" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" +checksum = "ec48937a97411dcb524a265206ccd4c90bb711fca92b2792c407f268825b9305" dependencies = [ "once_cell", "wasm-bindgen", @@ -3736,9 +3734,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.175" +version = "0.2.176" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a82ae493e598baaea5209805c49bbf2ea7de956d50d7da0da1164f9c6d28543" +checksum = "58f929b4d672ea937a23a1ab494143d968337a5f47e56d0815df1e0890ddf174" [[package]] name = "libm" @@ -3748,9 +3746,9 @@ checksum = "f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de" [[package]] name = "libredox" -version = "0.1.9" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "391290121bad3d37fbddad76d8f5d1c1c314cfc646d143d7e07a3086ddff0ce3" +checksum = "416f7e718bdb06000964960ffa43b4335ad4012ae8b99060261aa4a8088d5ccb" dependencies = [ "bitflags 2.9.4", "libc", @@ -3764,9 +3762,9 @@ checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" [[package]] name = "linux-raw-sys" -version = "0.9.4" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" +checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039" [[package]] name = "litemap" @@ -3786,9 +3784,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.27" +version = "0.4.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" +checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432" [[package]] name = "lru" @@ -3838,9 +3836,9 @@ dependencies = [ [[package]] name = "memchr" -version = "2.7.5" +version = "2.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0" +checksum = "f52b00d39961fc5b2736ea853c9cc86238e165017a493d1d5c8eac6bdc4cc273" [[package]] name = "memoffset" @@ -4139,9 +4137,9 @@ checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" [[package]] name = "object" -version = "0.36.7" +version = "0.37.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87" +checksum = "ff76201f031d8863c38aa7f905eca4f53abbfa15f609db4277d44cd8938f33fe" dependencies = [ "memchr", ] @@ -4361,20 +4359,20 @@ checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220" [[package]] name = "pest" -version = "2.8.1" +version = "2.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1db05f56d34358a8b1066f67cbb203ee3e7ed2ba674a6263a1d5ec6db2204323" +checksum = "21e0a3a33733faeaf8651dfee72dd0f388f0c8e5ad496a3478fa5a922f49cfa8" dependencies = [ "memchr", - "thiserror 2.0.16", + "thiserror 2.0.17", "ucd-trie", ] [[package]] name = "pest_derive" -version = "2.8.1" +version = "2.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb056d9e8ea77922845ec74a1c4e8fb17e7c218cc4fc11a15c5d25e189aa40bc" +checksum = "bc58706f770acb1dbd0973e6530a3cff4746fb721207feb3a8a6064cd0b6c663" dependencies = [ "pest", "pest_generator", @@ -4382,9 +4380,9 @@ dependencies = [ [[package]] name = "pest_generator" -version = "2.8.1" +version = "2.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87e404e638f781eb3202dc82db6760c8ae8a1eeef7fb3fa8264b2ef280504966" +checksum = "6d4f36811dfe07f7b8573462465d5cb8965fffc2e71ae377a33aecf14c2c9a2f" dependencies = [ "pest", "pest_meta", @@ -4395,9 +4393,9 @@ dependencies = [ [[package]] name = "pest_meta" -version = "2.8.1" +version = "2.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edd1101f170f5903fde0914f899bb503d9ff5271d7ba76bbb70bea63690cc0d5" +checksum = "42919b05089acbd0a5dcd5405fb304d17d1053847b81163d09c4ad18ce8e8420" dependencies = [ "pest", "sha2", @@ -4410,7 +4408,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" dependencies = [ "fixedbitset 0.4.2", - "indexmap 2.11.0", + "indexmap 2.11.4", ] [[package]] @@ -4420,7 +4418,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3672b37090dbd86368a4145bc067582552b29c27377cad4e0a306c97f9bd7772" dependencies = [ "fixedbitset 0.5.7", - "indexmap 2.11.0", + "indexmap 2.11.4", ] [[package]] @@ -4617,11 +4615,11 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "3.3.0" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edce586971a4dfaa28950c6f18ed55e0406c1ab88bbce2c6f6293a7aaba73d35" +checksum = "219cb19e96be00ab2e37d6e299658a0cfa83e52429179969b0f0121b4ac46983" dependencies = [ - "toml_edit", + "toml_edit 0.23.6", ] [[package]] @@ -4674,9 +4672,9 @@ dependencies = [ [[package]] name = "proptest" -version = "1.7.0" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fcdab19deb5195a31cf7726a210015ff1496ba1464fd42cb4f537b8b01b471f" +checksum = "2bb0be07becd10686a0bb407298fb425360a5c44a663774406340c59a22de4ce" dependencies = [ "bitflags 2.9.4", "lazy_static 1.5.0", @@ -4717,7 +4715,7 @@ dependencies = [ "rustc-hash 2.1.1", "rustls", "socket2 0.6.0", - "thiserror 2.0.16", + "thiserror 2.0.17", "tokio", "tracing", "web-time", @@ -4738,7 +4736,7 @@ dependencies = [ "rustls", "rustls-pki-types", "slab", - "thiserror 2.0.16", + "thiserror 2.0.17", "tinyvec", "tracing", "web-time", @@ -4760,9 +4758,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.40" +version = "1.0.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" +checksum = "ce25767e7b499d1b604768e7cde645d14cc8584231ea6b295e9c9eb22c02e1d1" dependencies = [ "proc-macro2", ] @@ -4911,23 +4909,23 @@ checksum = "a4e608c6638b9c18977b00b475ac1f28d14e84b27d8d42f70e0bf1e3dec127ac" dependencies = [ "getrandom 0.2.16", "libredox", - "thiserror 2.0.16", + "thiserror 2.0.17", ] [[package]] name = "ref-cast" -version = "1.0.24" +version = "1.0.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a0ae411dbe946a674d89546582cea4ba2bb8defac896622d6496f14c23ba5cf" +checksum = "f354300ae66f76f1c85c5f84693f0ce81d747e2c3f21a45fef496d89c960bf7d" dependencies = [ "ref-cast-impl", ] [[package]] name = "ref-cast-impl" -version = "1.0.24" +version = "1.0.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1165225c21bff1f3bbce98f5a1f889949bc902d3575308cc7b0de30b4f6d27c7" +checksum = "b7186006dcb21920990093f30e3dea63b7d6e977bf1256be20c3563a5db070da" dependencies = [ "proc-macro2", "quote", @@ -4936,9 +4934,9 @@ dependencies = [ [[package]] name = "regex" -version = "1.11.2" +version = "1.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23d7fd106d8c02486a8d64e778353d1cffe08ce79ac2e82f540c86d0facf6912" +checksum = "8b5288124840bee7b386bc413c487869b360b2b4ec421ea56425128692f2a82c" dependencies = [ "aho-corasick", "memchr", @@ -4948,9 +4946,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.10" +version = "0.4.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b9458fa0bfeeac22b5ca447c63aaf45f28439a709ccd244698632f9aa6394d6" +checksum = "833eb9ce86d40ef33cb1306d8accf7bc8ec2bfea4355cbdebb3df68b40925cad" dependencies = [ "aho-corasick", "memchr", @@ -5135,7 +5133,7 @@ dependencies = [ "starknet", "starknet-types-core", "starknet_api", - "thiserror 2.0.16", + "thiserror 2.0.17", ] [[package]] @@ -5144,7 +5142,7 @@ version = "0.17.0-pre.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "719825638c59fd26a55412a24561c7c5bcf54364c88b9a7a04ba08a6eafaba8d" dependencies = [ - "indexmap 2.11.0", + "indexmap 2.11.4", "lock_api", "oorandom", "parking_lot", @@ -5179,9 +5177,9 @@ dependencies = [ [[package]] name = "rust_decimal" -version = "1.37.2" +version = "1.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b203a6425500a03e0919c42d3c47caca51e79f1132046626d2c8871c5092035d" +checksum = "c8975fc98059f365204d635119cf9c5a60ae67b841ed49b5422a9a7e56cdfac0" dependencies = [ "arrayvec", "num-traits", @@ -5235,22 +5233,22 @@ dependencies = [ [[package]] name = "rustix" -version = "1.0.8" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11181fbabf243db407ef8df94a6ce0b2f9a733bd8be4ad02b4eda9602296cac8" +checksum = "cd15f8a2c5551a84d56efdc1cd049089e409ac19a3072d5037a17fd70719ff3e" dependencies = [ "bitflags 2.9.4", "errno", "libc", - "linux-raw-sys 0.9.4", - "windows-sys 0.60.2", + "linux-raw-sys 0.11.0", + "windows-sys 0.61.1", ] [[package]] name = "rustls" -version = "0.23.31" +version = "0.23.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0ebcbd2f03de0fc1122ad9bb24b127a5a6cd51d72604a3f3c50ac459762b6cc" +checksum = "cd3c25631629d034ce7cd9940adc9d45762d46de2b0f57193c4443b92c6d4d40" dependencies = [ "once_cell", "ring", @@ -5272,9 +5270,9 @@ dependencies = [ [[package]] name = "rustls-webpki" -version = "0.103.4" +version = "0.103.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a17884ae0c1b773f1ccd2bd4a8c72f16da897310a98b0e84bf349ad5ead92fc" +checksum = "8572f3c2cb9934231157b45499fc41e1f58c589fdfb81a844ba873265e80f8eb" dependencies = [ "ring", "rustls-pki-types", @@ -5362,7 +5360,7 @@ dependencies = [ "serde", "serde_json", "shared", - "thiserror 2.0.16", + "thiserror 2.0.17", "universal-sierra-compiler-api", "which", ] @@ -5377,7 +5375,7 @@ dependencies = [ "semver", "serde", "serde_json", - "thiserror 2.0.16", + "thiserror 2.0.17", ] [[package]] @@ -5412,11 +5410,11 @@ dependencies = [ [[package]] name = "schannel" -version = "0.1.27" +version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d" +checksum = "891d81b926048e76efe18581bf793546b4c0eaf8448d72be8de2bbee5fd166e1" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.61.1", ] [[package]] @@ -5516,9 +5514,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.14.0" +version = "2.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49db231d56a190491cb4aeda9527f1ad45345af50b0851622a7adb8c03b01c32" +checksum = "cc1f0cbffaac4852523ce30d8bd3c5cdc873501d96ff467ca09b6767bb8cd5c0" dependencies = [ "core-foundation-sys", "libc", @@ -5526,19 +5524,21 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.26" +version = "1.0.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0" +checksum = "d767eb0aabc880b29956c35734170f26ed551a859dbd361d140cdbeca61ab1e2" dependencies = [ "serde", + "serde_core", ] [[package]] name = "serde" -version = "1.0.219" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" +checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" dependencies = [ + "serde_core", "serde_derive", ] @@ -5552,11 +5552,20 @@ dependencies = [ "serde", ] +[[package]] +name = "serde_core" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" +dependencies = [ + "serde_derive", +] + [[package]] name = "serde_derive" -version = "1.0.219" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" +checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", @@ -5576,14 +5585,15 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.143" +version = "1.0.145" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d401abef1d108fbd9cbaebc3e46611f4b1021f714a0597a71f41ee463f5f4a5a" +checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c" dependencies = [ "itoa", "memchr", "ryu", "serde", + "serde_core", ] [[package]] @@ -5599,12 +5609,13 @@ dependencies = [ [[package]] name = "serde_path_to_error" -version = "0.1.17" +version = "0.1.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59fab13f937fa393d08645bf3a84bdfe86e296747b506ada67bb15f10f218b2a" +checksum = "10a9ff822e371bb5403e391ecd83e182e0e77ba7f6fe0160b795797109d1b457" dependencies = [ "itoa", "serde", + "serde_core", ] [[package]] @@ -5630,15 +5641,15 @@ dependencies = [ [[package]] name = "serde_with" -version = "3.14.0" +version = "3.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2c45cd61fefa9db6f254525d46e392b852e0e61d9a1fd36e5bd183450a556d5" +checksum = "c522100790450cf78eeac1507263d0a350d4d5b30df0c8e1fe051a10c22b376e" dependencies = [ "base64 0.22.1", "chrono", "hex", "indexmap 1.9.3", - "indexmap 2.11.0", + "indexmap 2.11.4", "schemars 0.9.0", "schemars 1.0.4", "serde", @@ -5650,11 +5661,11 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "3.14.0" +version = "3.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de90945e6565ce0d9a25098082ed4ee4002e047cb59892c318d66821e14bb30f" +checksum = "327ada00f7d64abaac1e55a6911e90cf665aa051b9a561c7006c157f4633135e" dependencies = [ - "darling 0.20.11", + "darling 0.21.3", "proc-macro2", "quote", "syn 2.0.106", @@ -5839,7 +5850,7 @@ dependencies = [ [[package]] name = "sncast" -version = "0.49.0" +version = "0.50.0" dependencies = [ "anyhow", "async-trait", @@ -5894,10 +5905,10 @@ dependencies = [ "starknet-types-core", "tempfile", "test-case", - "thiserror 2.0.16", + "thiserror 2.0.17", "tokio", "toml", - "toml_edit", + "toml_edit 0.22.27", "universal-sierra-compiler-api", "url", "walkdir", @@ -6012,7 +6023,7 @@ dependencies = [ "flate2", "foldhash", "hex", - "indexmap 2.11.0", + "indexmap 2.11.4", "num-traits", "serde", "serde_json", @@ -6034,7 +6045,7 @@ dependencies = [ "flate2", "foldhash", "hex", - "indexmap 2.11.0", + "indexmap 2.11.4", "num-traits", "serde", "serde_json", @@ -6199,7 +6210,7 @@ dependencies = [ "derive_more 0.99.20", "flate2", "hex", - "indexmap 2.11.0", + "indexmap 2.11.4", "itertools 0.12.1", "num-bigint", "num-traits", @@ -6372,24 +6383,24 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "tempfile" -version = "3.21.0" +version = "3.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15b61f8f20e3a6f7e0649d825294eaf317edce30f82cf6026e7e4cb9222a7d1e" +checksum = "2d31c77bdf42a745371d260a26ca7163f1e0924b64afa0b688e61b5a9fa02f16" dependencies = [ "fastrand", "getrandom 0.3.3", "once_cell", - "rustix 1.0.8", - "windows-sys 0.60.2", + "rustix 1.1.2", + "windows-sys 0.61.1", ] [[package]] name = "term" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a43bddab41f8626c7bdaab872bbba75f8df5847b516d77c569c746e2ae5eb746" +checksum = "2111ef44dae28680ae9752bb89409e7310ca33a8c621ebe7b106cf5c928b3ac0" dependencies = [ - "windows-sys 0.60.2", + "windows-sys 0.61.1", ] [[package]] @@ -6466,11 +6477,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.16" +version = "2.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3467d614147380f2e4e374161426ff399c91084acd2363eaf549172b3d5e60c0" +checksum = "f63587ca0f12b72a0600bcba1d40081f830876000bb46dd2337a3051618f4fc8" dependencies = [ - "thiserror-impl 2.0.16", + "thiserror-impl 2.0.17", ] [[package]] @@ -6486,9 +6497,9 @@ dependencies = [ [[package]] name = "thiserror-impl" -version = "2.0.16" +version = "2.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c5e1be1c48b9172ee610da68fd9cd2770e7a4056cb3fc98710ee6906f0c7960" +checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913" dependencies = [ "proc-macro2", "quote", @@ -6506,11 +6517,12 @@ dependencies = [ [[package]] name = "time" -version = "0.3.43" +version = "0.3.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83bde6f1ec10e72d583d91623c939f623002284ef622b87de38cfd546cbf2031" +checksum = "91e7d9e3bb61134e77bde20dd4825b97c010155709965fedf0f49bb138e52a9d" dependencies = [ "deranged", + "itoa", "num-conv", "powerfmt", "serde", @@ -6620,9 +6632,9 @@ dependencies = [ [[package]] name = "tokio-rustls" -version = "0.26.2" +version = "0.26.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e727b36a1a0e8b74c376ac2211e40c2c8af09fb4013c60d910495810f008e9b" +checksum = "1729aa945f29d91ba541258c8df89027d5792d85a8841fb65e8bf0f4ede4ef61" dependencies = [ "rustls", "tokio", @@ -6649,8 +6661,8 @@ checksum = "dc1beb996b9d83529a9e75c17a1686767d148d70663143c7854d8b4a09ced362" dependencies = [ "serde", "serde_spanned", - "toml_datetime", - "toml_edit", + "toml_datetime 0.6.11", + "toml_edit 0.22.27", ] [[package]] @@ -6662,20 +6674,50 @@ dependencies = [ "serde", ] +[[package]] +name = "toml_datetime" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32f1085dec27c2b6632b04c80b3bb1b4300d6495d1e129693bdda7d91e72eec1" +dependencies = [ + "serde_core", +] + [[package]] name = "toml_edit" version = "0.22.27" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" dependencies = [ - "indexmap 2.11.0", + "indexmap 2.11.4", "serde", "serde_spanned", - "toml_datetime", + "toml_datetime 0.6.11", "toml_write", "winnow", ] +[[package]] +name = "toml_edit" +version = "0.23.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3effe7c0e86fdff4f69cdd2ccc1b96f933e24811c5441d44904e8683e27184b" +dependencies = [ + "indexmap 2.11.4", + "toml_datetime 0.7.2", + "toml_parser", + "winnow", +] + +[[package]] +name = "toml_parser" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cf893c33be71572e0e9aa6dd15e6677937abd686b066eac3f8cd3531688a627" +dependencies = [ + "winnow", +] + [[package]] name = "toml_write" version = "0.1.2" @@ -6852,9 +6894,9 @@ checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" [[package]] name = "typetag" -version = "0.2.20" +version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73f22b40dd7bfe8c14230cf9702081366421890435b2d625fa92b4acc4c3de6f" +checksum = "be2212c8a9b9bcfca32024de14998494cf9a5dfa59ea1b829de98bac374b86bf" dependencies = [ "erased-serde", "inventory", @@ -6865,9 +6907,9 @@ dependencies = [ [[package]] name = "typetag-impl" -version = "0.2.20" +version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35f5380909ffc31b4de4f4bdf96b877175a016aa2ca98cee39fcfd8c4d53d952" +checksum = "27a7a9b72ba121f6f1f6c3632b85604cac41aedb5ddc70accbebb6cac83de846" dependencies = [ "proc-macro2", "quote", @@ -6916,7 +6958,7 @@ version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c01d12e3a56a4432a8b436f293c25f4808bdf9e9f9f98f9260bba1f1bc5a1f26" dependencies = [ - "thiserror 2.0.16", + "thiserror 2.0.17", ] [[package]] @@ -6927,9 +6969,9 @@ checksum = "5c1cb5db39152898a79168971543b1cb5020dff7fe43c8dc468b0885f5e29df5" [[package]] name = "unicode-ident" -version = "1.0.18" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" +checksum = "f63a545481291138910575129486daeaf8ac54aee4387fe7906919f7830c7d9d" [[package]] name = "unicode-normalization" @@ -7115,30 +7157,40 @@ checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" [[package]] name = "wasi" -version = "0.14.3+wasi-0.2.4" +version = "0.14.7+wasi-0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "883478de20367e224c0090af9cf5f9fa85bed63a95c1abf3afc5c083ebc06e8c" +dependencies = [ + "wasip2", +] + +[[package]] +name = "wasip2" +version = "1.0.1+wasi-0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a51ae83037bdd272a9e28ce236db8c07016dd0d50c27038b3f407533c030c95" +checksum = "0562428422c63773dad2c345a1882263bbf4d65cf3f42e90921f787ef5ad58e7" dependencies = [ "wit-bindgen", ] [[package]] name = "wasm-bindgen" -version = "0.2.100" +version = "0.2.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5" +checksum = "c1da10c01ae9f1ae40cbfac0bac3b1e724b320abfcf52229f80b547c0d250e2d" dependencies = [ "cfg-if", "once_cell", "rustversion", "wasm-bindgen-macro", + "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-backend" -version = "0.2.100" +version = "0.2.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6" +checksum = "671c9a5a66f49d8a47345ab942e2cb93c7d1d0339065d4f8139c486121b43b19" dependencies = [ "bumpalo", "log", @@ -7150,9 +7202,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.50" +version = "0.4.54" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "555d470ec0bc3bb57890405e5d4322cc9ea83cebb085523ced7be4144dac1e61" +checksum = "7e038d41e478cc73bae0ff9b36c60cff1c98b8f38f8d7e8061e79ee63608ac5c" dependencies = [ "cfg-if", "js-sys", @@ -7163,9 +7215,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.100" +version = "0.2.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407" +checksum = "7ca60477e4c59f5f2986c50191cd972e3a50d8a95603bc9434501cf156a9a119" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -7173,9 +7225,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.100" +version = "0.2.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" +checksum = "9f07d2f20d4da7b26400c9f4a0511e6e0345b040694e8a75bd41d578fa4421d7" dependencies = [ "proc-macro2", "quote", @@ -7186,18 +7238,18 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.100" +version = "0.2.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d" +checksum = "bad67dc8b2a1a6e5448428adec4c3e84c43e561d8c9ee8a9e5aabeb193ec41d1" dependencies = [ "unicode-ident", ] [[package]] name = "web-sys" -version = "0.3.77" +version = "0.3.81" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2" +checksum = "9367c417a924a74cae129e6a2ae3b47fabb1f8995595ab474029da749a8be120" dependencies = [ "js-sys", "wasm-bindgen", @@ -7230,7 +7282,7 @@ checksum = "24d643ce3fd3e5b54854602a080f34fb10ab75e0b813ee32d00ca2b44fa74762" dependencies = [ "either", "env_home", - "rustix 1.0.8", + "rustix 1.1.2", "winsafe", ] @@ -7252,11 +7304,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.10" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0978bf7171b3d90bac376700cb56d606feb40f251a475a5d6634613564460b22" +checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.60.2", + "windows-sys 0.61.1", ] [[package]] @@ -7267,22 +7319,22 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "windows-core" -version = "0.61.2" +version = "0.62.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0fdd3ddb90610c7638aa2b3a3ab2904fb9e5cdbecc643ddb3647212781c4ae3" +checksum = "6844ee5416b285084d3d3fffd743b925a6c9385455f64f6d4fa3031c4c2749a9" dependencies = [ "windows-implement", "windows-interface", - "windows-link", - "windows-result", - "windows-strings", + "windows-link 0.2.0", + "windows-result 0.4.0", + "windows-strings 0.5.0", ] [[package]] name = "windows-implement" -version = "0.60.0" +version = "0.60.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a47fddd13af08290e67f4acabf4b459f647552718f683a7b415d290ac744a836" +checksum = "edb307e42a74fb6de9bf3a02d9712678b22399c87e6fa869d6dfcd8c1b7754e0" dependencies = [ "proc-macro2", "quote", @@ -7291,9 +7343,9 @@ dependencies = [ [[package]] name = "windows-interface" -version = "0.59.1" +version = "0.59.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd9211b69f8dcdfa817bfd14bf1c97c9188afa36f4750130fcdf3f400eca9fa8" +checksum = "c0abd1ddbc6964ac14db11c7213d6532ef34bd9aa042c2e5935f59d7908b46a5" dependencies = [ "proc-macro2", "quote", @@ -7306,15 +7358,21 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" +[[package]] +name = "windows-link" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "45e46c0661abb7180e7b9c281db115305d49ca1709ab8242adf09666d2173c65" + [[package]] name = "windows-registry" version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b8a9ed28765efc97bbc954883f4e6796c33a06546ebafacbabee9696967499e" dependencies = [ - "windows-link", - "windows-result", - "windows-strings", + "windows-link 0.1.3", + "windows-result 0.3.4", + "windows-strings 0.4.2", ] [[package]] @@ -7323,7 +7381,16 @@ version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6" dependencies = [ - "windows-link", + "windows-link 0.1.3", +] + +[[package]] +name = "windows-result" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7084dcc306f89883455a206237404d3eaf961e5bd7e0f312f7c91f57eb44167f" +dependencies = [ + "windows-link 0.2.0", ] [[package]] @@ -7332,7 +7399,16 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57" dependencies = [ - "windows-link", + "windows-link 0.1.3", +] + +[[package]] +name = "windows-strings" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7218c655a553b0bed4426cf54b20d7ba363ef543b52d515b3e48d7fd55318dda" +dependencies = [ + "windows-link 0.2.0", ] [[package]] @@ -7368,7 +7444,16 @@ version = "0.60.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" dependencies = [ - "windows-targets 0.53.3", + "windows-targets 0.53.4", +] + +[[package]] +name = "windows-sys" +version = "0.61.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f109e41dd4a3c848907eb83d5a42ea98b3769495597450cf6d153507b166f0f" +dependencies = [ + "windows-link 0.2.0", ] [[package]] @@ -7404,11 +7489,11 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.53.3" +version = "0.53.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5fe6031c4041849d7c496a8ded650796e7b6ecc19df1a431c1a363342e5dc91" +checksum = "2d42b7b7f66d2a06854650af09cfdf8713e427a439c97ad65a6375318033ac4b" dependencies = [ - "windows-link", + "windows-link 0.2.0", "windows_aarch64_gnullvm 0.53.0", "windows_aarch64_msvc 0.53.0", "windows_i686_gnu 0.53.0", @@ -7597,9 +7682,9 @@ dependencies = [ [[package]] name = "wit-bindgen" -version = "0.45.0" +version = "0.46.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "052283831dbae3d879dc7f51f3d92703a316ca49f91540417d38591826127814" +checksum = "f17a85883d4e6d00e8a97c586de764dabcc06133f7f1d55dce5cdc070ad7fe59" [[package]] name = "writeable" @@ -7680,18 +7765,18 @@ dependencies = [ [[package]] name = "zerocopy" -version = "0.8.26" +version = "0.8.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1039dd0d3c310cf05de012d8a39ff557cb0d23087fd44cad61df08fc31907a2f" +checksum = "0894878a5fa3edfd6da3f88c4805f4c8558e2b996227a3d864f47fe11e38282c" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.26" +version = "0.8.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ecf5b4cc5364572d7f4c329661bcc82724222973f2cab6f050a4e5c22f75181" +checksum = "88d2b8d9c68ad2b9e4340d7832716a4d21a22a1154777ad56ea55c51a9cf3831" dependencies = [ "proc-macro2", "quote", diff --git a/Cargo.toml b/Cargo.toml index 74fdc61545..d3be266688 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -26,7 +26,7 @@ inherits = "release" debug-assertions = true [workspace.package] -version = "0.49.0" +version = "0.50.0" edition = "2024" repository = "https://github.com/foundry-rs/starknet-foundry" license = "MIT" diff --git a/crates/forge/tests/data/forking/.snfoundry_cache/http___188_34_188_184_7070_rpc_v0_9_54060_v0_49_0.json b/crates/forge/tests/data/forking/.snfoundry_cache/http___188_34_188_184_7070_rpc_v0_9_54060_v0_50_0.json similarity index 99% rename from crates/forge/tests/data/forking/.snfoundry_cache/http___188_34_188_184_7070_rpc_v0_9_54060_v0_49_0.json rename to crates/forge/tests/data/forking/.snfoundry_cache/http___188_34_188_184_7070_rpc_v0_9_54060_v0_50_0.json index 0ca124ea83..a8d83c7aad 100644 --- a/crates/forge/tests/data/forking/.snfoundry_cache/http___188_34_188_184_7070_rpc_v0_9_54060_v0_49_0.json +++ b/crates/forge/tests/data/forking/.snfoundry_cache/http___188_34_188_184_7070_rpc_v0_9_54060_v0_50_0.json @@ -1 +1 @@ -{"cache_version":"0_49_0","storage_at":{"0x202de98471a4fae6bcbabb96cab00437d381abc58b02509043778074d6781e9":{"0x206f38f7e4f15e87567361213c28f235cccdaa1d7fd34c9db1dfe9489c6a091":"0x14d"}},"nonce_at":{},"class_hash_at":{"0x202de98471a4fae6bcbabb96cab00437d381abc58b02509043778074d6781e9":"0x6a7eb29ee38b0a0b198e39ed6ad458d2e460264b463351a0acfc05822d61550"},"compiled_contract_class":{"0x6a7eb29ee38b0a0b198e39ed6ad458d2e460264b463351a0acfc05822d61550":{"sierra_program":["0x1","0x3","0x0","0x2","0x1","0x0","0xff","0x1","0x23","0x52616e6765436865636b","0x0","0x4761734275696c74696e","0x66656c74323532","0x4172726179","0x1","0x2","0x536e617073686f74","0x3","0x537472756374","0x1baeba72e79e9db2587cf44fedb2f3700b2075a5e8e39a562584862c4b71f62","0x4","0x2ee1e2b1b89f8c495f200e4956278a4d47395fe262f27b52e5865c9524c08c3","0x456e756d","0x11c6d8087e00642489f92d2821ad6ebd6532ad1a3b6d12833da6d6810391511","0x6","0x753332","0x53797374656d","0x16a4c8d7c05909052238a862d8cc3e7975bf05a07b3a69c6b28951083a6d672","0xa","0x5","0x9931c641b913035ae674b400b61a51476d506bbe8bba2ff8a6272790aba9e6","0xc","0xb","0x4275696c74696e436f737473","0x117f8dd6812873d3aeeacdfe88181a6eb024b50a122679c11870b3b47a1ec88","0x5af52ee38c32146750e2728e3556e24468de85c9684e8215a6a54f774a0eb9","0xf","0x10","0x3a44698eeaa62b837a805b0dfc46b2c1e4f013d3acf9b3c68ff14f08abc709","0x11","0x10203be321c62a7bd4c060d69539c1fbe065baa9e253c74d2cc48be163e259","0x13","0xcc5e86243f861d2d64b08c35db21013e773ac5cf10097946fe0011304886d5","0x15","0x17b6ecc31946835b0d9d92c2dd7a9c14f29af0371571ae74a1b228828b2242","0x17","0x34f9bd7c6cb2dd4263175964ad75f1ff1461ddc332fbfb274e0fb2a5d7ab968","0x18","0x426f78","0x29d7d57c04a880978e7b3689f6218e507f3be17588744b58dc17762447ad0e7","0x1a","0x123a1e81adcc5bd99f099d588eab8cc3de808fcdce58bd37e7e866729f3bcec","0x1c","0x53746f726167654261736541646472657373","0x53746f7261676541646472657373","0x90d0203c41ad646d024845257a6eceb2f8b59b29ce7420dd518053d2edeedc","0x101dc0399934cc08fa0d6f6f2daead4e4a38cabeea1c743e1fc28d2d6e58e99","0x4e6f6e5a65726f","0x85","0x7265766f6b655f61705f747261636b696e67","0x77697468647261775f676173","0x6272616e63685f616c69676e","0x73746f72655f74656d70","0x66756e6374696f6e5f63616c6c","0x656e756d5f6d61746368","0x7","0x7374727563745f6465636f6e737472756374","0x61727261795f6c656e","0x736e617073686f745f74616b65","0x8","0x64726f70","0x7533325f636f6e7374","0x72656e616d65","0x7533325f6571","0x9","0x61727261795f6e6577","0x66656c743235325f636f6e7374","0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473","0x61727261795f617070656e64","0x7374727563745f636f6e737472756374","0x656e756d5f696e6974","0xd","0x6765745f6275696c74696e5f636f737473","0xe","0x77697468647261775f6761735f616c6c","0x12","0x4f7574206f6620676173","0x496e70757420746f6f2073686f727420666f7220617267756d656e7473","0x14","0x16","0x19","0x61727261795f736e617073686f745f706f705f66726f6e74","0x1b","0x6a756d70","0x756e626f78","0x66656c743235325f616464","0x1d","0x50414e4943","0x444159544148","0x64697361626c655f61705f747261636b696e67","0x73746f726167655f626173655f616464726573735f636f6e7374","0x206f38f7e4f15e87567361213c28f235cccdaa1d7fd34c9db1dfe9489c6a091","0x73746f726167655f616464726573735f66726f6d5f62617365","0x1f","0x73746f726167655f726561645f73797363616c6c","0x20","0x73746f726167655f77726974655f73797363616c6c","0x21","0x647570","0x66656c743235325f69735f7a65726f","0x22","0x66656c743235325f737562","0x2fe","0xffffffffffffffff","0x63","0x54","0x24","0x1e","0x25","0x46","0x26","0x27","0x28","0x29","0x2d","0x2e","0x2f","0x30","0x2a","0x2b","0x2c","0x31","0x3f","0x32","0x33","0x34","0x35","0x36","0x37","0x38","0x39","0x3a","0x3b","0x3c","0x3d","0x3e","0x40","0x41","0x42","0x43","0x44","0x45","0x47","0x48","0x49","0x4a","0x4b","0x4c","0x4d","0x4e","0x4f","0x50","0x51","0x52","0x53","0x55","0x56","0x57","0x58","0x59","0x5a","0x5b","0x5c","0x5d","0x5e","0x5f","0xc6","0x90","0xb9","0xb2","0x121","0xf3","0x114","0x10d","0x19d","0x196","0x187","0x157","0x179","0x172","0x60","0x61","0x62","0x64","0x65","0x66","0x67","0x68","0x69","0x1b2","0x1b7","0x1c1","0x1ed","0x1e7","0x203","0x224","0x229","0x245","0x23f","0x6a","0x262","0x6b","0x6c","0x267","0x6d","0x6e","0x6f","0x272","0x70","0x287","0x71","0x72","0x28c","0x73","0x74","0x75","0x297","0x76","0x77","0x78","0x79","0x7a","0x2d7","0x7b","0x7c","0x2af","0x7d","0x7e","0x2cd","0x7f","0x80","0x2c7","0x81","0x2ec","0x82","0x2f8","0x83","0x84","0xd4","0x12f","0x1ab","0x1c8","0x1cc","0x1f5","0x209","0x20f","0x21c","0x24f","0x255","0x278","0x29e","0x2e6","0x2f2","0x1ae7","0x7060f02090e0d02060a0c060b02070a090606080706060502040203020100","0x617061602090e15060d02070a090614060d02090a1302060a021202111006","0x70a18061f061e02090e10061d060d02090a1c061b02070a1a02060a021918","0x62402090e180623062202090e10060d02070a180621062002090e07060d02","0x10062a062902090e07060628180627062602090e250615060d02090a100609","0x2090e090607062f02090e022e022d18062c062b02090e10061c060d02090a","0x60638020606360c0906371506063602350234023332070606310906100630","0x2413d0606363d0606400207063f3d06063e3d06063c0706063b1506063a39","0x606460706063645070644070606431006063e15090637420606360706063e","0x24c4b060636024a4906063606060636060749060748180606471406064707","0x6063e0906063c1f06063e4d060638100906371d0606361d0606471c060647","0x1d06063c4f0706441506063e4e070644020749060748170606471506064709","0x906373d090637090606360706063c2106063a50060638390906371d06063e","0x65318090637250606382706063a52060638140906372306063e5106063842","0x60638060754060748100606470255540606360c0606360207540607480706","0x63a1006063606073906074839060636020739060748070606400706065654","0x606472c06063a58060638490906370257170906371c0606361c06063c1d06","0x20750060748210606471c06063e06074d0607484d06063602074d0607481f","0x37025b510606360607510607485a0706445907064406075006074850060636","0x65c06072506074806075206074852060636020752060748270606474b0906","0x37610606400607610607486106063602076106074802605f060636025e5d07","0x63a1d090637630606400607630607486306063602076306074802621c0906","0x60748026507060664060758060748580606360207580607482c0606472306","0x207510607482306064763060638610606380267060706446606063e020725","0x90609020269060207023910076a150c076907060207060202690602020268","0x66b18066907420610020c0669060c061502423d07690614060c0214066906","0x1c0769064b0642024b06690649063d02490669063d06390202690602070217","0x269064d061402214d0769061f0642021f0669060218020269061c0614021d","0x69072350074b0250066906500649022306690621061702500669061d061702","0x7690627061f022706690607061d0202690618061c02026906020702026c02","0x2a0669062a0623022a0669060250025206690602210202690625064d022551","0x69065806520258066906542c0727022c066906022502540669062a52075102","0x66d0654026306690651061d026106690615062a025f0669060c0615026d06","0x2000669060006580200066906022c020269060207026663615f0c06660669","0x7206610272066906025f020269060207027170076f6e6c07690700150c096d","0x6230276066906730663027506690607061d02740669066e062a0273066906","0x77a0600026c0669066c0615027a7978096906777675740c66027706690618","0x67e066e027e0669060221020269067b066c020269060207027d067c7b0669","0x82067302820669068106720281066906800671020269067f067002807f0769","0x654028606690679061d028506690678062a02840669066c06150283066906","0x69066c061502880669067d065202026906020702878685840c068706690683","0x8a7c890c068b066906880654028a06690679061d027c06690678062a028906","0x623028d0669060278028c06690602210202690618061c020269060207028b","0x26f0669068e8f0727028f0669060225028e0669068d8c0751028d0669068d","0x9306690607061d029206690671062a029106690670061502900669066f0652","0x3d06790202690617064d02026906020702949392910c069406690690065402","0x69695075102960669069606230296066906027a0295066906022102026906","0xc0615029a0669069906520299066906979807270298066906022502970669","0x9b0c069d0669069a0654026b06690607061d029c06690615062a029b066906","0x29f0669060278029e066906022102026906090679020269060207029d6b9c","0x66906a0a1072702a1066906022502a00669069f9e0751029f0669069f0623","0x690607061d02a506690639062a02a406690610061502a3066906a2065202a2","0xc0769070602070602026906020202a7a6a5a40c06a7066906a3065402a606","0x42064202420669063d063d023d06690609063902026906020702391007a815","0x614024b490769061706420217066906021802026906140614021814076906","0x615021c0669061c0649021d0669064b0617021c0669061806170202690649","0x1f022106690607061d0202690602070202a90269071d1c074b020c0669060c","0x6230223066906025002500669060221020269064d064d024d1f0769062106","0x2270669065125072702250669060225025106690623500751022306690623","0x2c0669061f061d025406690615062a022a0669060c06150252066906270652","0x6d0658026d066906022c02026906020702582c542a0c065806690652065402","0x66906025f02026906020702666307aa615f0769076d150c096d026d066906","0x690661062a020269066e067502706e0769066c0674026c0669060006610200","0x27372710969067a79780976027a066906700663027906690607061d027806","0x6690674067b020269060207027506ab74066907730677025f0669065f0615","0x669067d0623020269067b061c027d7b07690676067d027706690602210276","0x67e066e020269067f064d027f7e0769068180077f028106690677067e0280","0x85067302850669068406720284066906830671020269068206700283820769","0x654028906690672061d028806690671062a02870669065f06150286066906","0x69065f0615028a066906750652020269060207027c8988870c067c06690686","0x8d8c8b0c068e0669068a0654028d06690672061d028c06690671062a028b06","0x51026f0669066f0623026f0669060278028f0669060221020269060207028e","0x930669069206520292066906909107270291066906022502900669066f8f07","0x66906930654029606690607061d029506690666062a029406690663061502","0x60278029806690602210202690609067902026906020702979695940c0697","0x9b0727029b0669060225029a06690699980751029906690699062302990669","0x1d029e06690639062a029d066906100615026b0669069c0652029c0669069a","0x602070602026906020202a09f9e9d0c06a00669066b0654029f0669060706","0x420669063d063d023d06690609063902026906020702391007ac150c076907","0x49076906170642021706690602180202690614061402181407690642064202","0x669061c0649021d0669064b0617021c06690618061702026906490614024b","0x690607061d0202690602070202ad0269071d1c074b020c0669060c0615021c","0x66906025002500669060221020269064d064d024d1f07690621061f022106","0x6512507270225066906022502510669062350075102230669062306230223","0x1f061d025406690615062a022a0669060c0615025206690627065202270669","0x6d066906022c02026906020702582c542a0c0658066906520654022c066906","0x5f02026906020702666307ae615f0769076d150c096d026d0669066d065802","0x63020269066e067502706e0769066c0674026c066906000661020006690602","0xaf73066907710681025f0669065f0615027106690672068002720669067006","0x747a07690679066e0279066906022102026906730682020269060207027806","0x7706690676067302760669067506720275066906740671020269067a067002","0x66906770654027e06690607061d027d06690661062a027b0669065f061502","0x2a02810669065f06150280066906780652020269060207027f7e7d7b0c067f","0x20702848382810c0684066906800654028306690607061d02820669066106","0x6868507510286066906860623028606690602780285066906022102026906","0x630615027c0669068906520289066906878807270288066906022502870669","0x8a0c068d0669067c0654028c06690607061d028b06690666062a028a066906","0x28f0669060278028e066906022102026906090679020269060207028d8c8b","0x669066f90072702900669060225026f0669068f8e0751028f0669068f0623","0x690607061d029406690639062a029306690610061502920669069106520291","0xc0769070602070602026906020202969594930c0696066906920654029506","0x90609021706690615062a02180669060c061502026906020702391007b015","0x60207021c06b14b0669071406840214423d09690649171809830249066906","0x639020269060207022106b24d0669071f0686021f1d0769064b0685020269","0x1802026906510614022551076906230642022306690650063d02500669061d","0x17025406690625061702026906520614022a52076906270642022706690602","0x202690602070202b30269072c54074b0254066906540649022c0669062a06","0x20269066d064d026d580769065f061f025f06690607061d020269064d0670","0x2660669066361075102630669066306230263066906025002610669060221","0x700669063d0615026e0669066c0652026c0669066600072702000669060225","0x2737271700c06730669066e0654027206690658061d027106690642062a02","0x7a7907690778423d096d02780669067806580278066906022c020269060207","0x690677067402770669067606610276066906025f02026906020702757407b4","0x807f078702800669064d067e027f0669067d0663020269067b0675027d7b07","0x82020269060207028206b5810669077e06810279066906790615027e066906","0x6710202690684067002858407690683066e02830669060221020269068106","0x2a028906690679061502880669068706730287066906860672028606690685","0x207028b8a7c890c068b066906880654028a06690607061d027c0669067a06","0x7061d028e0669067a062a028d066906790615028c06690682065202026906","0x269064d0670020269060207026f8f8e8d0c066f0669068c0654028f066906","0x92066906919007510291066906910623029106690602780290066906022102","0x6690674061502950669069406520294066906929307270293066906022502","0x999897960c0699066906950654029806690607061d029706690675062a0296","0x6027a029a0669060221020269061d06790202690621064d02026906020702","0x6b0727026b0669060225029c0669069b9a0751029b0669069b0623029b0669","0x1d02a006690642062a029f0669063d0615029e0669069d0652029d0669069c","0x61c065202026906020702a2a1a09f0c06a20669069e065402a10669060706","0xa3065402a606690607061d02a506690642062a02a40669063d061502a30669","0x2b606690602210202690609067902026906020702a7a6a5a40c06a7066906","0x26a066906022502b8066906b7b6075102b7066906b7062302b70669060278","0x6690639062a02bb06690610061502ba066906b9065202b9066906b86a0727","0x606690602063902bebdbcbb0c06be066906ba065402bd06690607061d02bc","0x607067c0215066906090689020269060207020c06bf090707690706068802","0x23d066906028c0202690602070202c006028b023906690615068a02100669","0x14066906100671023906690642068a02100669060c067c02420669063d068d","0x690618068f020269060207021706c11806690739068e021406690614060902","0x61c0691021d066906140609021c0669064b0690024b06690649066f024906","0x4d0692024d066906028c0202690617064d020269060207021f1d07061f0669","0x6066906028c02235007062306690621069102500669061406090221066906","0x695020c066906070694020907070609066906060693020706690602061d02","0x217066906100696021806690606061d021406690602062a0210150769060c","0x67b020269060207024b06c24906690742067702423d390969061718140997","0x2230669063d061d025006690639062a021d066906091c0798021c06690649","0x69a02214d1f096906255123500c9902250669061d06230251066906150696","0x202690654064d02542a07690627069b020269060207025206c32706690721","0x5f0669066d066b026d066906582c079c0258066906028c022c0669062a0661","0x7026663610906660669065f069d02630669064d061d02610669061f062a02","0x69d026e0669064d061d026c0669061f062a020006690652069e0202690602","0x202690609061c0202690615069f02026906020702706e6c09067006690600","0x7806690671069d02730669063d061d027206690639062a02710669064b069e","0x96023d06690606061d023906690602062a0209066906070694027873720906","0x7021806c4140669071006770210150c096906423d39099702420669060906","0x62a024b0669064906a102490669061706a0021706690614067b0202690602","0x69060207021f1d1c09061f0669064b06a2021d06690615061d021c0669060c","0x69064d06a2025006690615061d02210669060c062a024d0669061806a30202","0xc066906028c020906690607060751020706690602066f0223502109062306","0x60221020269060206750210150706100669060c0693021506690609067e02","0x602a50209066906070607510207066906070623020706690602a402060669","0x1007270210066906022502150669060c090751020c0669060c0623020c0669","0x202690602b602420606420669063d06a7023d0669063906a6023906690615","0x6906150689020269060207021006c5150c0769070906880209066906070639","0x202690602070202c606028b024206690639068a023d0669060c067c023906","0x24206690618068a023d06690610067c021806690614068d0214066906028c","0x69060207024b06c74906690742068e021706690617060902170669063d0671","0x66906020615021f0669060221021d0669061c066f021c06690649068f0202","0x69061d062302270669061f067e0225066906170609025106690606062a0223","0x60207025406c82a0669075006840250214d096906522725512315b7025206","0x615025f0669066d066a026d066906582c07b802582c0769062a0685020269","0x69060207026663610906660669065f06b9026306690621062a02610669064d","0x69060006b9026e06690621062a026c0669064d061502000669065406ba0202","0x7106bb0271066906028c020269064b064d02026906020702706e6c09067006","0x2a0279066906020615027806690673066a0273066906721707b80272066906","0x690602250202690602067502747a790906740669067806b9027a0669060606","0x2150606150669060c06a7020c0669060906a6020906690606070727020706","0x64902150669060218020c0669060906bd020906690602bc0202690607069f","0x18144209ca3d39100969070c1506020cc9020c0669060c06be021506690615","0x24b06690639061d024906690610062a02170669063d06cb02026906020702","0x42062a021d0669061806ce0202690602070202cd06028b021c0669061706cc","0x6d0024d0669061c06cf021c0669061d06cc024b06690614061d0249066906","0x22306690621067b020269060207025006d1210669071f0677021f0669064d","0x520669064b061d022706690649062a02250669065106a102510669062306a0","0x49062a02540669065006a3020269060207022a522709062a0669062506a202","0x6906070695026d582c09066d0669065406a202580669064b061d022c066906","0x66906021802390669061006bd021006690602bc0202690615069f02150c07","0xd3144207690709393d060215d202390669063906be023d0669063d0649023d","0x690642062a021c0669064b06d4024b066906028c0202690602070249171809","0x202690602070202d606028b024d0669061c06d5021f06690614061d021d06","0x4d0669062106d5021f06690617061d021d06690618062a02210669064906d7","0x60207022506da5106690750068102500669062306d902230669064d06d802","0x1d062a022a0669065206dd0252066906270c07dc02270669065106db020269","0x26906020702582c540906580669062a06de022c0669061f061d0254066906","0x610669061f061d025f0669061d062a026d0669062506df020269060c069f02","0x61506580215066906022c0202690602b60263615f0906630669066d06de02","0x769060c06e102026906020702423d07e03910076907150602096d02150669","0x60c061c020269060207021806e30269071406e2021006690610061502140c","0x100615024b06690649066a0249066906170707b802170669060906e4020269","0x269060207021f1d1c09061f0669064b06b9021d06690639062a021c066906","0x6690721061002214d07690650060c0250066906070609020269061806e502","0x270c07e8022706690602e7022506690623090751020269060207025106e623","0x67e025f0669064d0609026d06690639062a02580669061006150252066906","0x2c0684022c542a09690663615f6d5815b70263066906520623026106690625","0x700669066e6c07b8026e6c076906660685020269060207020006e966066907","0x669067106b9027306690654062a02720669062a0615027106690670066a02","0x62a027a0669062a061502790669060006ba02026906020702787372090678","0x269060c061c0202690602070275747a0906750669067906b9027406690654","0x6690677066a0277066906764d07b802760669065106bb0202690609067002","0x27f7e7d09067f0669067b06b9027e06690639062a027d066906100615027b","0x690602210202690607067902026906090670020269060c061c020269060207","0x69060225028206690681800751028106690681062302810669060278028006","0x42062a02860669063d061502850669068406ba028406690682830727028306","0x207020706eb060669070206ea028887860906880669068506b90287066906","0x2150606150669060c06a2020c0669060906a102090669060606a002026906","0xa2023d0669063906a302390669060710072702100669060225020269060207","0x60606ee020269060207020706ed060669070206ec02420606420669063d06","0x22502026906020702150606150669060c06a7020c0669060906ef02090669","0x606420669063d06a7023d0669063906a60239066906071007270210066906","0x9070602494206020c154206020c0209070602494206020c154206020c1f42","0xf109070602494206020c154206020cf009070602494206020c154206020cd4","0x420609f4090706024d420609071d42060cf3021042074206f2023915071506","0x6020915060209f70251061d06f60602100907090707f5070602504206091d","0x9071c42060cfa070602504206091c420609f906025106091d07f807060252","0x6fd0250066106fc0c0907060252060209070915060215fb09070602584206","0xfe02510663"],"contract_class_version":"0.1.0","entry_points_by_type":{"CONSTRUCTOR":[],"EXTERNAL":[{"selector":"0x19c909057a1fa4e06e930f9418d432c08c64bd4bcd4be37d96beecaf3098412","function_idx":3},{"selector":"0x362398bec32bc0ebb411203221a35a0301193a96f317ebe5e40be9f60d15320","function_idx":0},{"selector":"0x39e11d48192e4333233c7eb19d10ad67c362bb28580c604d67884c85da39695","function_idx":1},{"selector":"0x3c90fa28d76cca3d1f524541612bd9b88cc064457761e09c93d034edf542da4","function_idx":2}],"L1_HANDLER":[]},"abi":"[{\"type\": \"impl\", \"name\": \"IHelloStarknetImpl\", \"interface_name\": \"hello_starknet: :hello_starknet: :IHelloStarknet\"}, {\"type\": \"interface\", \"name\": \"hello_starknet: :hello_starknet: :IHelloStarknet\", \"items\": [{\"type\": \"function\", \"name\": \"increase_balance\", \"inputs\": [{\"name\": \"amount\", \"type\": \"core: :felt252\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"get_balance\", \"inputs\": [], \"outputs\": [{\"type\": \"core: :felt252\"}], \"state_mutability\": \"view\"}, {\"type\": \"function\", \"name\": \"do_a_panic\", \"inputs\": [], \"outputs\": [], \"state_mutability\": \"view\"}, {\"type\": \"function\", \"name\": \"do_a_panic_with\", \"inputs\": [{\"name\": \"panic_data\", \"type\": \"core: :array: :Array: :\"}], \"outputs\": [], \"state_mutability\": \"view\"}]}, {\"type\": \"event\", \"name\": \"hello_starknet: :hello_starknet: :HelloStarknet: :Event\", \"kind\": \"enum\", \"variants\": []}]"}},"compiled_class_hash":{}} \ No newline at end of file +{"cache_version":"0_50_0","storage_at":{"0x202de98471a4fae6bcbabb96cab00437d381abc58b02509043778074d6781e9":{"0x206f38f7e4f15e87567361213c28f235cccdaa1d7fd34c9db1dfe9489c6a091":"0x14d"}},"nonce_at":{},"class_hash_at":{"0x202de98471a4fae6bcbabb96cab00437d381abc58b02509043778074d6781e9":"0x6a7eb29ee38b0a0b198e39ed6ad458d2e460264b463351a0acfc05822d61550"},"compiled_contract_class":{"0x6a7eb29ee38b0a0b198e39ed6ad458d2e460264b463351a0acfc05822d61550":{"sierra_program":["0x1","0x3","0x0","0x2","0x1","0x0","0xff","0x1","0x23","0x52616e6765436865636b","0x0","0x4761734275696c74696e","0x66656c74323532","0x4172726179","0x1","0x2","0x536e617073686f74","0x3","0x537472756374","0x1baeba72e79e9db2587cf44fedb2f3700b2075a5e8e39a562584862c4b71f62","0x4","0x2ee1e2b1b89f8c495f200e4956278a4d47395fe262f27b52e5865c9524c08c3","0x456e756d","0x11c6d8087e00642489f92d2821ad6ebd6532ad1a3b6d12833da6d6810391511","0x6","0x753332","0x53797374656d","0x16a4c8d7c05909052238a862d8cc3e7975bf05a07b3a69c6b28951083a6d672","0xa","0x5","0x9931c641b913035ae674b400b61a51476d506bbe8bba2ff8a6272790aba9e6","0xc","0xb","0x4275696c74696e436f737473","0x117f8dd6812873d3aeeacdfe88181a6eb024b50a122679c11870b3b47a1ec88","0x5af52ee38c32146750e2728e3556e24468de85c9684e8215a6a54f774a0eb9","0xf","0x10","0x3a44698eeaa62b837a805b0dfc46b2c1e4f013d3acf9b3c68ff14f08abc709","0x11","0x10203be321c62a7bd4c060d69539c1fbe065baa9e253c74d2cc48be163e259","0x13","0xcc5e86243f861d2d64b08c35db21013e773ac5cf10097946fe0011304886d5","0x15","0x17b6ecc31946835b0d9d92c2dd7a9c14f29af0371571ae74a1b228828b2242","0x17","0x34f9bd7c6cb2dd4263175964ad75f1ff1461ddc332fbfb274e0fb2a5d7ab968","0x18","0x426f78","0x29d7d57c04a880978e7b3689f6218e507f3be17588744b58dc17762447ad0e7","0x1a","0x123a1e81adcc5bd99f099d588eab8cc3de808fcdce58bd37e7e866729f3bcec","0x1c","0x53746f726167654261736541646472657373","0x53746f7261676541646472657373","0x90d0203c41ad646d024845257a6eceb2f8b59b29ce7420dd518053d2edeedc","0x101dc0399934cc08fa0d6f6f2daead4e4a38cabeea1c743e1fc28d2d6e58e99","0x4e6f6e5a65726f","0x85","0x7265766f6b655f61705f747261636b696e67","0x77697468647261775f676173","0x6272616e63685f616c69676e","0x73746f72655f74656d70","0x66756e6374696f6e5f63616c6c","0x656e756d5f6d61746368","0x7","0x7374727563745f6465636f6e737472756374","0x61727261795f6c656e","0x736e617073686f745f74616b65","0x8","0x64726f70","0x7533325f636f6e7374","0x72656e616d65","0x7533325f6571","0x9","0x61727261795f6e6577","0x66656c743235325f636f6e7374","0x496e70757420746f6f206c6f6e6720666f7220617267756d656e7473","0x61727261795f617070656e64","0x7374727563745f636f6e737472756374","0x656e756d5f696e6974","0xd","0x6765745f6275696c74696e5f636f737473","0xe","0x77697468647261775f6761735f616c6c","0x12","0x4f7574206f6620676173","0x496e70757420746f6f2073686f727420666f7220617267756d656e7473","0x14","0x16","0x19","0x61727261795f736e617073686f745f706f705f66726f6e74","0x1b","0x6a756d70","0x756e626f78","0x66656c743235325f616464","0x1d","0x50414e4943","0x444159544148","0x64697361626c655f61705f747261636b696e67","0x73746f726167655f626173655f616464726573735f636f6e7374","0x206f38f7e4f15e87567361213c28f235cccdaa1d7fd34c9db1dfe9489c6a091","0x73746f726167655f616464726573735f66726f6d5f62617365","0x1f","0x73746f726167655f726561645f73797363616c6c","0x20","0x73746f726167655f77726974655f73797363616c6c","0x21","0x647570","0x66656c743235325f69735f7a65726f","0x22","0x66656c743235325f737562","0x2fe","0xffffffffffffffff","0x63","0x54","0x24","0x1e","0x25","0x46","0x26","0x27","0x28","0x29","0x2d","0x2e","0x2f","0x30","0x2a","0x2b","0x2c","0x31","0x3f","0x32","0x33","0x34","0x35","0x36","0x37","0x38","0x39","0x3a","0x3b","0x3c","0x3d","0x3e","0x40","0x41","0x42","0x43","0x44","0x45","0x47","0x48","0x49","0x4a","0x4b","0x4c","0x4d","0x4e","0x4f","0x50","0x51","0x52","0x53","0x55","0x56","0x57","0x58","0x59","0x5a","0x5b","0x5c","0x5d","0x5e","0x5f","0xc6","0x90","0xb9","0xb2","0x121","0xf3","0x114","0x10d","0x19d","0x196","0x187","0x157","0x179","0x172","0x60","0x61","0x62","0x64","0x65","0x66","0x67","0x68","0x69","0x1b2","0x1b7","0x1c1","0x1ed","0x1e7","0x203","0x224","0x229","0x245","0x23f","0x6a","0x262","0x6b","0x6c","0x267","0x6d","0x6e","0x6f","0x272","0x70","0x287","0x71","0x72","0x28c","0x73","0x74","0x75","0x297","0x76","0x77","0x78","0x79","0x7a","0x2d7","0x7b","0x7c","0x2af","0x7d","0x7e","0x2cd","0x7f","0x80","0x2c7","0x81","0x2ec","0x82","0x2f8","0x83","0x84","0xd4","0x12f","0x1ab","0x1c8","0x1cc","0x1f5","0x209","0x20f","0x21c","0x24f","0x255","0x278","0x29e","0x2e6","0x2f2","0x1ae7","0x7060f02090e0d02060a0c060b02070a090606080706060502040203020100","0x617061602090e15060d02070a090614060d02090a1302060a021202111006","0x70a18061f061e02090e10061d060d02090a1c061b02070a1a02060a021918","0x62402090e180623062202090e10060d02070a180621062002090e07060d02","0x10062a062902090e07060628180627062602090e250615060d02090a100609","0x2090e090607062f02090e022e022d18062c062b02090e10061c060d02090a","0x60638020606360c0906371506063602350234023332070606310906100630","0x2413d0606363d0606400207063f3d06063e3d06063c0706063b1506063a39","0x606460706063645070644070606431006063e15090637420606360706063e","0x24c4b060636024a4906063606060636060749060748180606471406064707","0x6063e0906063c1f06063e4d060638100906371d0606361d0606471c060647","0x1d06063c4f0706441506063e4e070644020749060748170606471506064709","0x906373d090637090606360706063c2106063a50060638390906371d06063e","0x65318090637250606382706063a52060638140906372306063e5106063842","0x60638060754060748100606470255540606360c0606360207540607480706","0x63a1006063606073906074839060636020739060748070606400706065654","0x606472c06063a58060638490906370257170906371c0606361c06063c1d06","0x20750060748210606471c06063e06074d0607484d06063602074d0607481f","0x37025b510606360607510607485a0706445907064406075006074850060636","0x65c06072506074806075206074852060636020752060748270606474b0906","0x37610606400607610607486106063602076106074802605f060636025e5d07","0x63a1d090637630606400607630607486306063602076306074802621c0906","0x60748026507060664060758060748580606360207580607482c0606472306","0x207510607482306064763060638610606380267060706446606063e020725","0x90609020269060207023910076a150c076907060207060202690602020268","0x66b18066907420610020c0669060c061502423d07690614060c0214066906","0x1c0769064b0642024b06690649063d02490669063d06390202690602070217","0x269064d061402214d0769061f0642021f0669060218020269061c0614021d","0x69072350074b0250066906500649022306690621061702500669061d061702","0x7690627061f022706690607061d0202690618061c02026906020702026c02","0x2a0669062a0623022a0669060250025206690602210202690625064d022551","0x69065806520258066906542c0727022c066906022502540669062a52075102","0x66d0654026306690651061d026106690615062a025f0669060c0615026d06","0x2000669060006580200066906022c020269060207026663615f0c06660669","0x7206610272066906025f020269060207027170076f6e6c07690700150c096d","0x6230276066906730663027506690607061d02740669066e062a0273066906","0x77a0600026c0669066c0615027a7978096906777675740c66027706690618","0x67e066e027e0669060221020269067b066c020269060207027d067c7b0669","0x82067302820669068106720281066906800671020269067f067002807f0769","0x654028606690679061d028506690678062a02840669066c06150283066906","0x69066c061502880669067d065202026906020702878685840c068706690683","0x8a7c890c068b066906880654028a06690679061d027c06690678062a028906","0x623028d0669060278028c06690602210202690618061c020269060207028b","0x26f0669068e8f0727028f0669060225028e0669068d8c0751028d0669068d","0x9306690607061d029206690671062a029106690670061502900669066f0652","0x3d06790202690617064d02026906020702949392910c069406690690065402","0x69695075102960669069606230296066906027a0295066906022102026906","0xc0615029a0669069906520299066906979807270298066906022502970669","0x9b0c069d0669069a0654026b06690607061d029c06690615062a029b066906","0x29f0669060278029e066906022102026906090679020269060207029d6b9c","0x66906a0a1072702a1066906022502a00669069f9e0751029f0669069f0623","0x690607061d02a506690639062a02a406690610061502a3066906a2065202a2","0xc0769070602070602026906020202a7a6a5a40c06a7066906a3065402a606","0x42064202420669063d063d023d06690609063902026906020702391007a815","0x614024b490769061706420217066906021802026906140614021814076906","0x615021c0669061c0649021d0669064b0617021c0669061806170202690649","0x1f022106690607061d0202690602070202a90269071d1c074b020c0669060c","0x6230223066906025002500669060221020269064d064d024d1f0769062106","0x2270669065125072702250669060225025106690623500751022306690623","0x2c0669061f061d025406690615062a022a0669060c06150252066906270652","0x6d0658026d066906022c02026906020702582c542a0c065806690652065402","0x66906025f02026906020702666307aa615f0769076d150c096d026d066906","0x690661062a020269066e067502706e0769066c0674026c0669060006610200","0x27372710969067a79780976027a066906700663027906690607061d027806","0x6690674067b020269060207027506ab74066907730677025f0669065f0615","0x669067d0623020269067b061c027d7b07690676067d027706690602210276","0x67e066e020269067f064d027f7e0769068180077f028106690677067e0280","0x85067302850669068406720284066906830671020269068206700283820769","0x654028906690672061d028806690671062a02870669065f06150286066906","0x69065f0615028a066906750652020269060207027c8988870c067c06690686","0x8d8c8b0c068e0669068a0654028d06690672061d028c06690671062a028b06","0x51026f0669066f0623026f0669060278028f0669060221020269060207028e","0x930669069206520292066906909107270291066906022502900669066f8f07","0x66906930654029606690607061d029506690666062a029406690663061502","0x60278029806690602210202690609067902026906020702979695940c0697","0x9b0727029b0669060225029a06690699980751029906690699062302990669","0x1d029e06690639062a029d066906100615026b0669069c0652029c0669069a","0x602070602026906020202a09f9e9d0c06a00669066b0654029f0669060706","0x420669063d063d023d06690609063902026906020702391007ac150c076907","0x49076906170642021706690602180202690614061402181407690642064202","0x669061c0649021d0669064b0617021c06690618061702026906490614024b","0x690607061d0202690602070202ad0269071d1c074b020c0669060c0615021c","0x66906025002500669060221020269064d064d024d1f07690621061f022106","0x6512507270225066906022502510669062350075102230669062306230223","0x1f061d025406690615062a022a0669060c0615025206690627065202270669","0x6d066906022c02026906020702582c542a0c0658066906520654022c066906","0x5f02026906020702666307ae615f0769076d150c096d026d0669066d065802","0x63020269066e067502706e0769066c0674026c066906000661020006690602","0xaf73066907710681025f0669065f0615027106690672068002720669067006","0x747a07690679066e0279066906022102026906730682020269060207027806","0x7706690676067302760669067506720275066906740671020269067a067002","0x66906770654027e06690607061d027d06690661062a027b0669065f061502","0x2a02810669065f06150280066906780652020269060207027f7e7d7b0c067f","0x20702848382810c0684066906800654028306690607061d02820669066106","0x6868507510286066906860623028606690602780285066906022102026906","0x630615027c0669068906520289066906878807270288066906022502870669","0x8a0c068d0669067c0654028c06690607061d028b06690666062a028a066906","0x28f0669060278028e066906022102026906090679020269060207028d8c8b","0x669066f90072702900669060225026f0669068f8e0751028f0669068f0623","0x690607061d029406690639062a029306690610061502920669069106520291","0xc0769070602070602026906020202969594930c0696066906920654029506","0x90609021706690615062a02180669060c061502026906020702391007b015","0x60207021c06b14b0669071406840214423d09690649171809830249066906","0x639020269060207022106b24d0669071f0686021f1d0769064b0685020269","0x1802026906510614022551076906230642022306690650063d02500669061d","0x17025406690625061702026906520614022a52076906270642022706690602","0x202690602070202b30269072c54074b0254066906540649022c0669062a06","0x20269066d064d026d580769065f061f025f06690607061d020269064d0670","0x2660669066361075102630669066306230263066906025002610669060221","0x700669063d0615026e0669066c0652026c0669066600072702000669060225","0x2737271700c06730669066e0654027206690658061d027106690642062a02","0x7a7907690778423d096d02780669067806580278066906022c020269060207","0x690677067402770669067606610276066906025f02026906020702757407b4","0x807f078702800669064d067e027f0669067d0663020269067b0675027d7b07","0x82020269060207028206b5810669077e06810279066906790615027e066906","0x6710202690684067002858407690683066e02830669060221020269068106","0x2a028906690679061502880669068706730287066906860672028606690685","0x207028b8a7c890c068b066906880654028a06690607061d027c0669067a06","0x7061d028e0669067a062a028d066906790615028c06690682065202026906","0x269064d0670020269060207026f8f8e8d0c066f0669068c0654028f066906","0x92066906919007510291066906910623029106690602780290066906022102","0x6690674061502950669069406520294066906929307270293066906022502","0x999897960c0699066906950654029806690607061d029706690675062a0296","0x6027a029a0669060221020269061d06790202690621064d02026906020702","0x6b0727026b0669060225029c0669069b9a0751029b0669069b0623029b0669","0x1d02a006690642062a029f0669063d0615029e0669069d0652029d0669069c","0x61c065202026906020702a2a1a09f0c06a20669069e065402a10669060706","0xa3065402a606690607061d02a506690642062a02a40669063d061502a30669","0x2b606690602210202690609067902026906020702a7a6a5a40c06a7066906","0x26a066906022502b8066906b7b6075102b7066906b7062302b70669060278","0x6690639062a02bb06690610061502ba066906b9065202b9066906b86a0727","0x606690602063902bebdbcbb0c06be066906ba065402bd06690607061d02bc","0x607067c0215066906090689020269060207020c06bf090707690706068802","0x23d066906028c0202690602070202c006028b023906690615068a02100669","0x14066906100671023906690642068a02100669060c067c02420669063d068d","0x690618068f020269060207021706c11806690739068e021406690614060902","0x61c0691021d066906140609021c0669064b0690024b06690649066f024906","0x4d0692024d066906028c0202690617064d020269060207021f1d07061f0669","0x6066906028c02235007062306690621069102500669061406090221066906","0x695020c066906070694020907070609066906060693020706690602061d02","0x217066906100696021806690606061d021406690602062a0210150769060c","0x67b020269060207024b06c24906690742067702423d390969061718140997","0x2230669063d061d025006690639062a021d066906091c0798021c06690649","0x69a02214d1f096906255123500c9902250669061d06230251066906150696","0x202690654064d02542a07690627069b020269060207025206c32706690721","0x5f0669066d066b026d066906582c079c0258066906028c022c0669062a0661","0x7026663610906660669065f069d02630669064d061d02610669061f062a02","0x69d026e0669064d061d026c0669061f062a020006690652069e0202690602","0x202690609061c0202690615069f02026906020702706e6c09067006690600","0x7806690671069d02730669063d061d027206690639062a02710669064b069e","0x96023d06690606061d023906690602062a0209066906070694027873720906","0x7021806c4140669071006770210150c096906423d39099702420669060906","0x62a024b0669064906a102490669061706a0021706690614067b0202690602","0x69060207021f1d1c09061f0669064b06a2021d06690615061d021c0669060c","0x69064d06a2025006690615061d02210669060c062a024d0669061806a30202","0xc066906028c020906690607060751020706690602066f0223502109062306","0x60221020269060206750210150706100669060c0693021506690609067e02","0x602a50209066906070607510207066906070623020706690602a402060669","0x1007270210066906022502150669060c090751020c0669060c0623020c0669","0x202690602b602420606420669063d06a7023d0669063906a6023906690615","0x6906150689020269060207021006c5150c0769070906880209066906070639","0x202690602070202c606028b024206690639068a023d0669060c067c023906","0x24206690618068a023d06690610067c021806690614068d0214066906028c","0x69060207024b06c74906690742068e021706690617060902170669063d0671","0x66906020615021f0669060221021d0669061c066f021c06690649068f0202","0x69061d062302270669061f067e0225066906170609025106690606062a0223","0x60207025406c82a0669075006840250214d096906522725512315b7025206","0x615025f0669066d066a026d066906582c07b802582c0769062a0685020269","0x69060207026663610906660669065f06b9026306690621062a02610669064d","0x69060006b9026e06690621062a026c0669064d061502000669065406ba0202","0x7106bb0271066906028c020269064b064d02026906020702706e6c09067006","0x2a0279066906020615027806690673066a0273066906721707b80272066906","0x690602250202690602067502747a790906740669067806b9027a0669060606","0x2150606150669060c06a7020c0669060906a6020906690606070727020706","0x64902150669060218020c0669060906bd020906690602bc0202690607069f","0x18144209ca3d39100969070c1506020cc9020c0669060c06be021506690615","0x24b06690639061d024906690610062a02170669063d06cb02026906020702","0x42062a021d0669061806ce0202690602070202cd06028b021c0669061706cc","0x6d0024d0669061c06cf021c0669061d06cc024b06690614061d0249066906","0x22306690621067b020269060207025006d1210669071f0677021f0669064d","0x520669064b061d022706690649062a02250669065106a102510669062306a0","0x49062a02540669065006a3020269060207022a522709062a0669062506a202","0x6906070695026d582c09066d0669065406a202580669064b061d022c066906","0x66906021802390669061006bd021006690602bc0202690615069f02150c07","0xd3144207690709393d060215d202390669063906be023d0669063d0649023d","0x690642062a021c0669064b06d4024b066906028c0202690602070249171809","0x202690602070202d606028b024d0669061c06d5021f06690614061d021d06","0x4d0669062106d5021f06690617061d021d06690618062a02210669064906d7","0x60207022506da5106690750068102500669062306d902230669064d06d802","0x1d062a022a0669065206dd0252066906270c07dc02270669065106db020269","0x26906020702582c540906580669062a06de022c0669061f061d0254066906","0x610669061f061d025f0669061d062a026d0669062506df020269060c069f02","0x61506580215066906022c0202690602b60263615f0906630669066d06de02","0x769060c06e102026906020702423d07e03910076907150602096d02150669","0x60c061c020269060207021806e30269071406e2021006690610061502140c","0x100615024b06690649066a0249066906170707b802170669060906e4020269","0x269060207021f1d1c09061f0669064b06b9021d06690639062a021c066906","0x6690721061002214d07690650060c0250066906070609020269061806e502","0x270c07e8022706690602e7022506690623090751020269060207025106e623","0x67e025f0669064d0609026d06690639062a02580669061006150252066906","0x2c0684022c542a09690663615f6d5815b70263066906520623026106690625","0x700669066e6c07b8026e6c076906660685020269060207020006e966066907","0x669067106b9027306690654062a02720669062a0615027106690670066a02","0x62a027a0669062a061502790669060006ba02026906020702787372090678","0x269060c061c0202690602070275747a0906750669067906b9027406690654","0x6690677066a0277066906764d07b802760669065106bb0202690609067002","0x27f7e7d09067f0669067b06b9027e06690639062a027d066906100615027b","0x690602210202690607067902026906090670020269060c061c020269060207","0x69060225028206690681800751028106690681062302810669060278028006","0x42062a02860669063d061502850669068406ba028406690682830727028306","0x207020706eb060669070206ea028887860906880669068506b90287066906","0x2150606150669060c06a2020c0669060906a102090669060606a002026906","0xa2023d0669063906a302390669060710072702100669060225020269060207","0x60606ee020269060207020706ed060669070206ec02420606420669063d06","0x22502026906020702150606150669060c06a7020c0669060906ef02090669","0x606420669063d06a7023d0669063906a60239066906071007270210066906","0x9070602494206020c154206020c0209070602494206020c154206020c1f42","0xf109070602494206020c154206020cf009070602494206020c154206020cd4","0x420609f4090706024d420609071d42060cf3021042074206f2023915071506","0x6020915060209f70251061d06f60602100907090707f5070602504206091d","0x9071c42060cfa070602504206091c420609f906025106091d07f807060252","0x6fd0250066106fc0c0907060252060209070915060215fb09070602584206","0xfe02510663"],"contract_class_version":"0.1.0","entry_points_by_type":{"CONSTRUCTOR":[],"EXTERNAL":[{"selector":"0x19c909057a1fa4e06e930f9418d432c08c64bd4bcd4be37d96beecaf3098412","function_idx":3},{"selector":"0x362398bec32bc0ebb411203221a35a0301193a96f317ebe5e40be9f60d15320","function_idx":0},{"selector":"0x39e11d48192e4333233c7eb19d10ad67c362bb28580c604d67884c85da39695","function_idx":1},{"selector":"0x3c90fa28d76cca3d1f524541612bd9b88cc064457761e09c93d034edf542da4","function_idx":2}],"L1_HANDLER":[]},"abi":"[{\"type\": \"impl\", \"name\": \"IHelloStarknetImpl\", \"interface_name\": \"hello_starknet: :hello_starknet: :IHelloStarknet\"}, {\"type\": \"interface\", \"name\": \"hello_starknet: :hello_starknet: :IHelloStarknet\", \"items\": [{\"type\": \"function\", \"name\": \"increase_balance\", \"inputs\": [{\"name\": \"amount\", \"type\": \"core: :felt252\"}], \"outputs\": [], \"state_mutability\": \"external\"}, {\"type\": \"function\", \"name\": \"get_balance\", \"inputs\": [], \"outputs\": [{\"type\": \"core: :felt252\"}], \"state_mutability\": \"view\"}, {\"type\": \"function\", \"name\": \"do_a_panic\", \"inputs\": [], \"outputs\": [], \"state_mutability\": \"view\"}, {\"type\": \"function\", \"name\": \"do_a_panic_with\", \"inputs\": [{\"name\": \"panic_data\", \"type\": \"core: :array: :Array: :\"}], \"outputs\": [], \"state_mutability\": \"view\"}]}, {\"type\": \"event\", \"name\": \"hello_starknet: :hello_starknet: :HelloStarknet: :Event\", \"kind\": \"enum\", \"variants\": []}]"}},"compiled_class_hash":{}} \ No newline at end of file diff --git a/crates/snforge-scarb-plugin-deprecated/Cargo.lock b/crates/snforge-scarb-plugin-deprecated/Cargo.lock index fe7cdab45d..36b7a2a308 100644 --- a/crates/snforge-scarb-plugin-deprecated/Cargo.lock +++ b/crates/snforge-scarb-plugin-deprecated/Cargo.lock @@ -31,9 +31,9 @@ checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] name = "anyhow" -version = "1.0.99" +version = "1.0.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0674a1ddeecb70197781e945de4b3b8ffb61fa939a5597bcf48503737663100" +checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61" [[package]] name = "autocfg" @@ -345,9 +345,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.15.5" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1" +checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d" [[package]] name = "heck" @@ -480,13 +480,14 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.11.0" +version = "2.11.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2481980430f9f78649238835720ddccc57e52df14ffce1c6f37391d61b563e9" +checksum = "4b0f83760fb341a774ed326568e19f5a863af4a952def8c39f9ab92fd95b88e5" dependencies = [ "equivalent", - "hashbrown 0.15.5", + "hashbrown 0.16.0", "serde", + "serde_core", ] [[package]] @@ -512,24 +513,24 @@ checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" [[package]] name = "libc" -version = "0.2.175" +version = "0.2.176" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a82ae493e598baaea5209805c49bbf2ea7de956d50d7da0da1164f9c6d28543" +checksum = "58f929b4d672ea937a23a1ab494143d968337a5f47e56d0815df1e0890ddf174" [[package]] name = "linkme" -version = "0.3.33" +version = "0.3.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1b1703c00b2a6a70738920544aa51652532cacddfec2e162d2e29eae01e665c" +checksum = "5e3283ed2d0e50c06dd8602e0ab319bb048b6325d0bba739db64ed8205179898" dependencies = [ "linkme-impl", ] [[package]] name = "linkme-impl" -version = "0.3.33" +version = "0.3.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04d55ca5d5a14363da83bf3c33874b8feaa34653e760d5216d7ef9829c88001a" +checksum = "e5cec0ec4228b4853bb129c84dbf093a27e6c7a20526da046defc334a1b017f7" dependencies = [ "proc-macro2", "quote", @@ -554,15 +555,15 @@ dependencies = [ [[package]] name = "log" -version = "0.4.27" +version = "0.4.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" +checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432" [[package]] name = "memchr" -version = "2.7.5" +version = "2.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0" +checksum = "f52b00d39961fc5b2736ea853c9cc86238e165017a493d1d5c8eac6bdc4cc273" [[package]] name = "nu-ansi-term" @@ -641,7 +642,7 @@ dependencies = [ "libc", "redox_syscall", "smallvec", - "windows-targets 0.52.6", + "windows-targets", ] [[package]] @@ -682,9 +683,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.40" +version = "1.0.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" +checksum = "ce25767e7b499d1b604768e7cde645d14cc8584231ea6b295e9c9eb22c02e1d1" dependencies = [ "proc-macro2", ] @@ -700,9 +701,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.10" +version = "0.4.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b9458fa0bfeeac22b5ca447c63aaf45f28439a709ccd244698632f9aa6394d6" +checksum = "833eb9ce86d40ef33cb1306d8accf7bc8ec2bfea4355cbdebb3df68b40925cad" dependencies = [ "aho-corasick", "memchr", @@ -783,27 +784,38 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] name = "semver" -version = "1.0.26" +version = "1.0.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0" +checksum = "d767eb0aabc880b29956c35734170f26ed551a859dbd361d140cdbeca61ab1e2" dependencies = [ "serde", + "serde_core", ] [[package]] name = "serde" -version = "1.0.219" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" +checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" +dependencies = [ + "serde_core", + "serde_derive", +] + +[[package]] +name = "serde_core" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.219" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" +checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", @@ -836,7 +848,7 @@ dependencies = [ [[package]] name = "snforge_scarb_plugin_deprecated" -version = "0.49.0" +version = "0.50.0" dependencies = [ "cairo-lang-formatter", "cairo-lang-macro", @@ -888,11 +900,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.16" +version = "2.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3467d614147380f2e4e374161426ff399c91084acd2363eaf549172b3d5e60c0" +checksum = "f63587ca0f12b72a0600bcba1d40081f830876000bb46dd2337a3051618f4fc8" dependencies = [ - "thiserror-impl 2.0.16", + "thiserror-impl 2.0.17", ] [[package]] @@ -908,9 +920,9 @@ dependencies = [ [[package]] name = "thiserror-impl" -version = "2.0.16" +version = "2.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c5e1be1c48b9172ee610da68fd9cd2770e7a4056cb3fc98710ee6906f0c7960" +checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913" dependencies = [ "proc-macro2", "quote", @@ -1015,14 +1027,14 @@ version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c01d12e3a56a4432a8b436f293c25f4808bdf9e9f9f98f9260bba1f1bc5a1f26" dependencies = [ - "thiserror 2.0.16", + "thiserror 2.0.17", ] [[package]] name = "unicode-ident" -version = "1.0.18" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512" +checksum = "f63a545481291138910575129486daeaf8ac54aee4387fe7906919f7830c7d9d" [[package]] name = "url" @@ -1075,11 +1087,11 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.10" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0978bf7171b3d90bac376700cb56d606feb40f251a475a5d6634613564460b22" +checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.60.2", + "windows-sys 0.61.1", ] [[package]] @@ -1090,9 +1102,9 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "windows-link" -version = "0.1.3" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" +checksum = "45e46c0661abb7180e7b9c281db115305d49ca1709ab8242adf09666d2173c65" [[package]] name = "windows-sys" @@ -1100,16 +1112,16 @@ version = "0.59.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" dependencies = [ - "windows-targets 0.52.6", + "windows-targets", ] [[package]] name = "windows-sys" -version = "0.60.2" +version = "0.61.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" +checksum = "6f109e41dd4a3c848907eb83d5a42ea98b3769495597450cf6d153507b166f0f" dependencies = [ - "windows-targets 0.53.3", + "windows-link", ] [[package]] @@ -1118,31 +1130,14 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" dependencies = [ - "windows_aarch64_gnullvm 0.52.6", - "windows_aarch64_msvc 0.52.6", - "windows_i686_gnu 0.52.6", - "windows_i686_gnullvm 0.52.6", - "windows_i686_msvc 0.52.6", - "windows_x86_64_gnu 0.52.6", - "windows_x86_64_gnullvm 0.52.6", - "windows_x86_64_msvc 0.52.6", -] - -[[package]] -name = "windows-targets" -version = "0.53.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5fe6031c4041849d7c496a8ded650796e7b6ecc19df1a431c1a363342e5dc91" -dependencies = [ - "windows-link", - "windows_aarch64_gnullvm 0.53.0", - "windows_aarch64_msvc 0.53.0", - "windows_i686_gnu 0.53.0", - "windows_i686_gnullvm 0.53.0", - "windows_i686_msvc 0.53.0", - "windows_x86_64_gnu 0.53.0", - "windows_x86_64_gnullvm 0.53.0", - "windows_x86_64_msvc 0.53.0", + "windows_aarch64_gnullvm", + "windows_aarch64_msvc", + "windows_i686_gnu", + "windows_i686_gnullvm", + "windows_i686_msvc", + "windows_x86_64_gnu", + "windows_x86_64_gnullvm", + "windows_x86_64_msvc", ] [[package]] @@ -1151,96 +1146,48 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" - [[package]] name = "windows_aarch64_msvc" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" -[[package]] -name = "windows_aarch64_msvc" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" - [[package]] name = "windows_i686_gnu" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" -[[package]] -name = "windows_i686_gnu" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3" - [[package]] name = "windows_i686_gnullvm" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" -[[package]] -name = "windows_i686_gnullvm" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" - [[package]] name = "windows_i686_msvc" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" -[[package]] -name = "windows_i686_msvc" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" - [[package]] name = "windows_x86_64_gnu" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" -[[package]] -name = "windows_x86_64_gnu" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" - [[package]] name = "windows_x86_64_gnullvm" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" - [[package]] name = "windows_x86_64_msvc" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" -[[package]] -name = "windows_x86_64_msvc" -version = "0.53.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" - [[package]] name = "winnow" version = "0.7.13" @@ -1303,18 +1250,18 @@ dependencies = [ [[package]] name = "zerocopy" -version = "0.8.26" +version = "0.8.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1039dd0d3c310cf05de012d8a39ff557cb0d23087fd44cad61df08fc31907a2f" +checksum = "0894878a5fa3edfd6da3f88c4805f4c8558e2b996227a3d864f47fe11e38282c" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.26" +version = "0.8.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ecf5b4cc5364572d7f4c329661bcc82724222973f2cab6f050a4e5c22f75181" +checksum = "88d2b8d9c68ad2b9e4340d7832716a4d21a22a1154777ad56ea55c51a9cf3831" dependencies = [ "proc-macro2", "quote", diff --git a/crates/snforge-scarb-plugin-deprecated/Cargo.toml b/crates/snforge-scarb-plugin-deprecated/Cargo.toml index 0731b42798..7642d004d8 100644 --- a/crates/snforge-scarb-plugin-deprecated/Cargo.toml +++ b/crates/snforge-scarb-plugin-deprecated/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "snforge_scarb_plugin_deprecated" -version = "0.49.0" +version = "0.50.0" edition = "2021" publish = false rust-version = "1.80.1" diff --git a/crates/snforge-scarb-plugin-deprecated/Scarb.toml b/crates/snforge-scarb-plugin-deprecated/Scarb.toml index 515793cd5b..1940309f46 100644 --- a/crates/snforge-scarb-plugin-deprecated/Scarb.toml +++ b/crates/snforge-scarb-plugin-deprecated/Scarb.toml @@ -1,6 +1,6 @@ [package] name = "snforge_scarb_plugin_deprecated" -version = "0.49.0" +version = "0.50.0" edition = "2024_07" include = ["target/scarb/cairo-plugin/"] cairo-version = "<=2.11.4" diff --git a/crates/snforge-scarb-plugin/Cargo.lock b/crates/snforge-scarb-plugin/Cargo.lock index 5b2ef5c6bd..59d1b91a87 100644 --- a/crates/snforge-scarb-plugin/Cargo.lock +++ b/crates/snforge-scarb-plugin/Cargo.lock @@ -860,7 +860,7 @@ dependencies = [ [[package]] name = "snforge_scarb_plugin" -version = "0.49.0" +version = "0.50.0" dependencies = [ "cairo-lang-formatter", "cairo-lang-macro", diff --git a/crates/snforge-scarb-plugin/Cargo.toml b/crates/snforge-scarb-plugin/Cargo.toml index 7075ea3cbd..6aa62cfbce 100644 --- a/crates/snforge-scarb-plugin/Cargo.toml +++ b/crates/snforge-scarb-plugin/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "snforge_scarb_plugin" -version = "0.49.0" +version = "0.50.0" edition = "2024" publish = false rust-version = "1.87.0" diff --git a/crates/snforge-scarb-plugin/Scarb.toml b/crates/snforge-scarb-plugin/Scarb.toml index ec1d5f2088..d274d35c1f 100644 --- a/crates/snforge-scarb-plugin/Scarb.toml +++ b/crates/snforge-scarb-plugin/Scarb.toml @@ -1,6 +1,6 @@ [package] name = "snforge_scarb_plugin" -version = "0.49.0" +version = "0.50.0" edition = "2024_07" include = ["target/scarb/cairo-plugin/"] diff --git a/docs/book.toml b/docs/book.toml index 08d963f8f9..e7c1d2e37c 100644 --- a/docs/book.toml +++ b/docs/book.toml @@ -29,4 +29,4 @@ enable = true level = 0 [preprocessor.variables.variables] -snforge_std_version = "0.49.0" +snforge_std_version = "0.50.0" diff --git a/sncast_std/Scarb.lock b/sncast_std/Scarb.lock index 341898d624..9ec2901808 100644 --- a/sncast_std/Scarb.lock +++ b/sncast_std/Scarb.lock @@ -3,4 +3,4 @@ version = 1 [[package]] name = "sncast_std" -version = "0.49.0" +version = "0.50.0" diff --git a/sncast_std/Scarb.toml b/sncast_std/Scarb.toml index a60ef4c0ea..6b3c10cf37 100644 --- a/sncast_std/Scarb.toml +++ b/sncast_std/Scarb.toml @@ -1,6 +1,6 @@ [package] name = "sncast_std" -version = "0.49.0" +version = "0.50.0" edition = "2023_11" description = "Library used for writing deployment scripts in Cairo" homepage = "https://foundry-rs.github.io/starknet-foundry/starknet/script.html" diff --git a/snforge_std/Scarb.lock b/snforge_std/Scarb.lock index 0159118e28..2b2dec08ee 100644 --- a/snforge_std/Scarb.lock +++ b/snforge_std/Scarb.lock @@ -3,11 +3,11 @@ version = 1 [[package]] name = "snforge_scarb_plugin" -version = "0.49.0" +version = "0.50.0" [[package]] name = "snforge_std" -version = "0.49.0" +version = "0.50.0" dependencies = [ "snforge_scarb_plugin", ] diff --git a/snforge_std/Scarb.toml b/snforge_std/Scarb.toml index 4d34051907..a18937efc2 100644 --- a/snforge_std/Scarb.toml +++ b/snforge_std/Scarb.toml @@ -1,6 +1,6 @@ [package] name = "snforge_std" -version = "0.49.0" +version = "0.50.0" edition = "2024_07" description = "Cairo testing library" documentation = "https://foundry-rs.github.io/starknet-foundry/appendix/snforge-library.html" diff --git a/snforge_std_deprecated/Scarb.toml b/snforge_std_deprecated/Scarb.toml index 1675d16524..af9f5c1439 100644 --- a/snforge_std_deprecated/Scarb.toml +++ b/snforge_std_deprecated/Scarb.toml @@ -1,6 +1,6 @@ [package] name = "snforge_std_deprecated" -version = "0.49.0" +version = "0.50.0" edition = "2024_07" description = "Cairo testing library" documentation = "https://foundry-rs.github.io/starknet-foundry/appendix/snforge-library.html" From 32275417ec009ef3d1ed768572df38c37f58faaf Mon Sep 17 00:00:00 2001 From: Artur Michalek Date: Mon, 29 Sep 2025 20:20:32 +0200 Subject: [PATCH 10/24] Close #3723 --- crates/forge/src/lib.rs | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/crates/forge/src/lib.rs b/crates/forge/src/lib.rs index 8b19cbf8a5..477f94a565 100644 --- a/crates/forge/src/lib.rs +++ b/crates/forge/src/lib.rs @@ -37,9 +37,8 @@ pub const CAIRO_EDITION: &str = "2024_07"; const MINIMAL_SCARB_VERSION: Version = Version::new(2, 10, 0); const MINIMAL_RECOMMENDED_SCARB_VERSION: Version = Version::new(2, 10, 1); const MINIMAL_USC_VERSION: Version = Version::new(2, 0, 0); -// TODO(#3723) Bump `MINIMAL_SNFORGE_STD_VERSION` to 0.50.0 and `MINIMAL_SNFORGE_STD_DEPRECATED_VERSION` to 0.50.0 -const MINIMAL_SNFORGE_STD_VERSION: Version = Version::new(0, 48, 0); -const MINIMAL_SNFORGE_STD_DEPRECATED_VERSION: Version = Version::new(0, 48, 0); +const MINIMAL_SNFORGE_STD_VERSION: Version = Version::new(0, 50, 0); +const MINIMAL_SNFORGE_STD_DEPRECATED_VERSION: Version = Version::new(0, 50, 0); pub const MINIMAL_SCARB_VERSION_FOR_V2_MACROS_REQUIREMENT: Version = Version::new(2, 12, 0); #[derive(Parser, Debug)] From 11215b79561d71ca895f9cc4570afd2069ed047a Mon Sep 17 00:00:00 2001 From: Artur Michalek Date: Mon, 29 Sep 2025 21:19:33 +0200 Subject: [PATCH 11/24] Update tests --- crates/forge/tests/e2e/plugin_versions.rs | 2 +- crates/forge/tests/e2e/running.rs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/crates/forge/tests/e2e/plugin_versions.rs b/crates/forge/tests/e2e/plugin_versions.rs index 19d8e7e1da..73a909ace5 100644 --- a/crates/forge/tests/e2e/plugin_versions.rs +++ b/crates/forge/tests/e2e/plugin_versions.rs @@ -177,7 +177,7 @@ fn new_scarb_old_macros() { assert_stdout_contains( output, formatdoc! {r" - [ERROR] Package snforge_std version does not meet the minimum required version >=0.48.0. Please upgrade snforge_std in Scarb.toml + [ERROR] Package snforge_std version does not meet the minimum required version >=0.50.0. Please upgrade snforge_std in Scarb.toml ", }, ); } diff --git a/crates/forge/tests/e2e/running.rs b/crates/forge/tests/e2e/running.rs index 02462c318d..48911fa764 100644 --- a/crates/forge/tests/e2e/running.rs +++ b/crates/forge/tests/e2e/running.rs @@ -980,7 +980,7 @@ fn incompatible_snforge_std_version_error() { assert_stdout_contains( output, indoc! {r" - [ERROR] Package snforge_std version does not meet the minimum required version >=0.48.0. Please upgrade snforge_std in Scarb.toml + [ERROR] Package snforge_std version does not meet the minimum required version >=0.50.0. Please upgrade snforge_std in Scarb.toml "}, ); } From 1d8443ad16284c7e107569eddca8a33e0fe1d626 Mon Sep 17 00:00:00 2001 From: Artur Michalek Date: Mon, 29 Sep 2025 21:29:42 +0200 Subject: [PATCH 12/24] Lint --- .../file_operations.rs | 2 +- crates/configuration/src/lib.rs | 2 +- .../data-transformer/src/transformer/mod.rs | 4 +-- .../transformer/sierra_abi/complex_types.rs | 20 +++---------- .../src/transformer/sierra_abi/literals.rs | 28 ++++++++----------- .../src/transformer/sierra_abi/macros.rs | 7 ++--- .../src/transformer/sierra_abi/parsing.rs | 5 +--- crates/docs/src/utils.rs | 4 +-- crates/sncast/src/lib.rs | 4 +-- .../src/starknet_commands/account/deploy.rs | 3 +- .../src/starknet_commands/multicall/run.rs | 2 +- .../src/starknet_commands/verify/walnut.rs | 2 +- 12 files changed, 29 insertions(+), 54 deletions(-) diff --git a/crates/cheatnet/src/runtime_extensions/forge_runtime_extension/file_operations.rs b/crates/cheatnet/src/runtime_extensions/forge_runtime_extension/file_operations.rs index 363099f950..156eb28625 100644 --- a/crates/cheatnet/src/runtime_extensions/forge_runtime_extension/file_operations.rs +++ b/crates/cheatnet/src/runtime_extensions/forge_runtime_extension/file_operations.rs @@ -26,7 +26,7 @@ pub(super) fn read_json(path: String) -> Result, EnhancedHintError> { let content = read_to_string(&path)?; let json: Map = serde_json::from_str(&content) - .map_err(|e| anyhow!("Parse JSON error: {} , in file {path}", e.to_string()))?; + .map_err(|e| anyhow!("Parse JSON error: {e} , in file {path}"))?; let data = flatten(&json); let mut result = vec![]; diff --git a/crates/configuration/src/lib.rs b/crates/configuration/src/lib.rs index 6e51b92ab9..dd553fc2e8 100644 --- a/crates/configuration/src/lib.rs +++ b/crates/configuration/src/lib.rs @@ -49,7 +49,7 @@ pub fn get_profile( match get_with_ownership(tool_config, profile_name) { Some(profile_value) => Ok(profile_value), None if profile_name == "default" => Ok(serde_json::Value::Object(Map::default())), - None => Err(anyhow!("Profile [{}] not found in config", profile_name)), + None => Err(anyhow!("Profile [{profile_name}] not found in config")), } } diff --git a/crates/data-transformer/src/transformer/mod.rs b/crates/data-transformer/src/transformer/mod.rs index 0f148dad37..a465fffd28 100644 --- a/crates/data-transformer/src/transformer/mod.rs +++ b/crates/data-transformer/src/transformer/mod.rs @@ -55,9 +55,7 @@ fn process( ensure!( n_inputs == n_arguments, - "Invalid number of arguments: passed {}, expected {}", - n_arguments, - n_inputs, + "Invalid number of arguments: passed {n_arguments}, expected {n_inputs}", ); function diff --git a/crates/data-transformer/src/transformer/sierra_abi/complex_types.rs b/crates/data-transformer/src/transformer/sierra_abi/complex_types.rs index 587fc23257..423f7634c5 100644 --- a/crates/data-transformer/src/transformer/sierra_abi/complex_types.rs +++ b/crates/data-transformer/src/transformer/sierra_abi/complex_types.rs @@ -49,11 +49,7 @@ fn validate_path_argument( if *path_argument.last().unwrap() != param_type.split("::").last().unwrap() && path_argument_joined != param_type { - bail!( - r#"Invalid argument type, expected "{}", got "{}""#, - param_type, - path_argument_joined - ) + bail!(r#"Invalid argument type, expected "{param_type}", got "{path_argument_joined}""#,) } Ok(()) } @@ -236,8 +232,7 @@ impl SupportedCalldataKind for ExprStructCtorCall { { // TODO add message which arguments are invalid (Issue #2549) bail!( - r"Arguments in constructor invocation for struct {} do not match struct arguments in ABI", - expected_type + r"Arguments in constructor invocation for struct {expected_type} do not match struct arguments in ABI", ) } @@ -281,11 +276,7 @@ impl SupportedCalldataKind for ExprPath { find_enum_variant_position(enum_variant_name, enum_path, abi)?; if enum_variant.r#type != "()" { - bail!( - r#"Couldn't find variant "{}" in enum "{}""#, - enum_variant_name, - enum_path_joined - ) + bail!(r#"Couldn't find variant "{enum_variant_name}" in enum "{enum_path_joined}""#,) } Ok(AllowedCalldataArgument::Enum(CalldataEnum::new( @@ -337,10 +328,7 @@ impl SupportedCalldataKind for ExprListParenthesized { db: &SimpleParserDatabase, ) -> Result { let Expr::Tuple(tuple) = parse_expression(expected_type, db)? else { - bail!( - r#"Invalid argument type, expected "{}", got tuple"#, - expected_type - ); + bail!(r#"Invalid argument type, expected "{expected_type}", got tuple"#,); }; let tuple_types = tuple diff --git a/crates/data-transformer/src/transformer/sierra_abi/literals.rs b/crates/data-transformer/src/transformer/sierra_abi/literals.rs index 2ad51468f4..8022e8a331 100644 --- a/crates/data-transformer/src/transformer/sierra_abi/literals.rs +++ b/crates/data-transformer/src/transformer/sierra_abi/literals.rs @@ -52,22 +52,18 @@ impl SupportedCalldataKind for ExprUnary { }; match self.op(db) { - UnaryOperator::Not(_) => bail!( - "Invalid unary operator in expression !{} , only - allowed, got !", - value - ), - UnaryOperator::Desnap(_) => bail!( - "Invalid unary operator in expression *{} , only - allowed, got *", - value - ), - UnaryOperator::BitNot(_) => bail!( - "Invalid unary operator in expression ~{} , only - allowed, got ~", - value - ), - UnaryOperator::At(_) => bail!( - "Invalid unary operator in expression @{} , only - allowed, got @", - value - ), + UnaryOperator::Not(_) => { + bail!("Invalid unary operator in expression !{value} , only - allowed, got !",) + } + UnaryOperator::Desnap(_) => { + bail!("Invalid unary operator in expression *{value} , only - allowed, got *",) + } + UnaryOperator::BitNot(_) => { + bail!("Invalid unary operator in expression ~{value} , only - allowed, got ~",) + } + UnaryOperator::At(_) => { + bail!("Invalid unary operator in expression @{value} , only - allowed, got @",) + } UnaryOperator::Minus(_) => {} } diff --git a/crates/data-transformer/src/transformer/sierra_abi/macros.rs b/crates/data-transformer/src/transformer/sierra_abi/macros.rs index c7b9740304..de9a313092 100644 --- a/crates/data-transformer/src/transformer/sierra_abi/macros.rs +++ b/crates/data-transformer/src/transformer/sierra_abi/macros.rs @@ -23,10 +23,7 @@ impl SupportedCalldataKind for ExprInlineMacro { // We do not expect any other expression in proper ABI let Expr::Path(path) = parse_expression(expected_type, db)? else { - bail!( - "Unexpected expression encountered in ABI: {}. ABI may be invalid", - expected_type - ); + bail!("Unexpected expression encountered in ABI: {expected_type}. ABI may be invalid",); }; let type_parameters_from_abi = path @@ -68,7 +65,7 @@ impl SupportedCalldataKind for ExprInlineMacro { // Check by string; A proper array type in ABI looks exactly like this if !expected_type.contains("core::array::Array") { - bail!(r#"Expected "{}", got array"#, expected_type); + bail!(r#"Expected "{expected_type}", got array"#); } // Array should have exactly one type parameter. ABI is invalid otherwise diff --git a/crates/data-transformer/src/transformer/sierra_abi/parsing.rs b/crates/data-transformer/src/transformer/sierra_abi/parsing.rs index 5c0f3fc763..186e33e0ef 100644 --- a/crates/data-transformer/src/transformer/sierra_abi/parsing.rs +++ b/crates/data-transformer/src/transformer/sierra_abi/parsing.rs @@ -68,10 +68,7 @@ pub fn parse_inline_macro( Simple(simple) => { let macro_name = simple.ident(db).text(db); if macro_name != "array" { - bail!( - r#"Invalid macro name, expected "array![]", got "{}""#, - macro_name - ) + bail!(r#"Invalid macro name, expected "array![]", got "{macro_name}""#,) } } PathSegment::WithGenericArgs(_) => { diff --git a/crates/docs/src/utils.rs b/crates/docs/src/utils.rs index 2b33c8a3b5..1066c084a7 100644 --- a/crates/docs/src/utils.rs +++ b/crates/docs/src/utils.rs @@ -53,9 +53,9 @@ pub fn print_ignored_snippet_message(snippet: &Snippet) { fn get_canonical_path(relative_path: &str) -> Result { Ok(Utf8PathBuf::from_str(relative_path) - .map_err(|e| anyhow!("Failed to create Utf8PathBuf: {}", e))? + .map_err(|e| anyhow!("Failed to create Utf8PathBuf: {e}"))? .canonicalize_utf8() - .map_err(|e| anyhow!("Failed to canonicalize path: {}", e))? + .map_err(|e| anyhow!("Failed to canonicalize path: {e}"))? .to_string()) } diff --git a/crates/sncast/src/lib.rs b/crates/sncast/src/lib.rs index 9cdb7d6336..46c3c15e49 100644 --- a/crates/sncast/src/lib.rs +++ b/crates/sncast/src/lib.rs @@ -682,8 +682,8 @@ pub fn raise_if_empty(value: &str, value_name: &str) -> Result<()> { pub fn check_account_file_exists(accounts_file_path: &Utf8PathBuf) -> Result<()> { if !accounts_file_path.exists() { - bail! {"Accounts file = {} does not exist! If you do not have an account create one with `account create` command \ - or if you're using a custom accounts file, make sure to supply correct path to it with `--accounts-file` argument.", accounts_file_path} + bail! {"Accounts file = {accounts_file_path} does not exist! If you do not have an account create one with `account create` command \ + or if you're using a custom accounts file, make sure to supply correct path to it with `--accounts-file` argument." } } Ok(()) } diff --git a/crates/sncast/src/starknet_commands/account/deploy.rs b/crates/sncast/src/starknet_commands/account/deploy.rs index 1a0a2bc3ee..bd5c2f4423 100644 --- a/crates/sncast/src/starknet_commands/account/deploy.rs +++ b/crates/sncast/src/starknet_commands/account/deploy.rs @@ -322,8 +322,7 @@ where match result { Err(AccountFactoryError::Provider(error)) => match error { StarknetError(ClassHashNotFound) => Err(anyhow!( - "Provided class hash {:#x} does not exist", - class_hash, + "Provided class hash {class_hash:#x} does not exist", )), _ => Err(handle_rpc_error(error)), }, diff --git a/crates/sncast/src/starknet_commands/multicall/run.rs b/crates/sncast/src/starknet_commands/multicall/run.rs index e753378ff8..9d32faef9e 100644 --- a/crates/sncast/src/starknet_commands/multicall/run.rs +++ b/crates/sncast/src/starknet_commands/multicall/run.rs @@ -126,7 +126,7 @@ pub async fn run( }); } Some(unsupported) => { - anyhow::bail!("Unsupported call type found = {}", unsupported); + anyhow::bail!("Unsupported call type found = {unsupported}"); } None => anyhow::bail!("Field `call_type` is missing in a call specification"), } diff --git a/crates/sncast/src/starknet_commands/verify/walnut.rs b/crates/sncast/src/starknet_commands/verify/walnut.rs index 189d4ad38c..790f766fa9 100644 --- a/crates/sncast/src/starknet_commands/verify/walnut.rs +++ b/crates/sncast/src/starknet_commands/verify/walnut.rs @@ -104,7 +104,7 @@ impl VerificationInterface<'_> for WalnutVerificationInterface { Ok(VerifyResponse { message }) } else { let message = api_res.text().await.context("Failed to verify contract")?; - Err(anyhow::anyhow!("{}", message)) + Err(anyhow::anyhow!("{message}")) } } From 42e78470bfd43109e5e61ec63db782cf4820aa79 Mon Sep 17 00:00:00 2001 From: Artur Michalek Date: Tue, 30 Sep 2025 09:25:33 +0200 Subject: [PATCH 13/24] Update CHANGELOG.md --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0e736fc681..b5b21f1613 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,6 +18,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 #### Changed - Minimal supported `Scarb` version is now `2.10.0` (updated from `2.9.1`) +- Minimal supported `snforge_std` and `snforge_std_deprecated` version is now `0.50.0` #### Fixed From 66fa96c8439d0c3181f875f48abe538b5e647465 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Artur=20Micha=C5=82ek?= <52135326+cptartur@users.noreply.github.com> Date: Tue, 30 Sep 2025 09:30:20 +0200 Subject: [PATCH 14/24] Release 0.50.0 lint (#3769) Closes # ## Introduced changes - ## Checklist - [ ] Linked relevant issue - [ ] Updated relevant documentation - [ ] Added relevant tests - [ ] Performed self-review of the code - [ ] Added changes to `CHANGELOG.md` --- .../file_operations.rs | 2 +- crates/configuration/src/lib.rs | 2 +- .../data-transformer/src/transformer/mod.rs | 4 +-- .../transformer/sierra_abi/complex_types.rs | 20 +++---------- .../src/transformer/sierra_abi/literals.rs | 28 ++++++++----------- .../src/transformer/sierra_abi/macros.rs | 7 ++--- .../src/transformer/sierra_abi/parsing.rs | 5 +--- crates/docs/src/utils.rs | 4 +-- crates/sncast/src/lib.rs | 4 +-- .../src/starknet_commands/account/deploy.rs | 3 +- .../src/starknet_commands/multicall/run.rs | 2 +- .../src/starknet_commands/verify/walnut.rs | 2 +- 12 files changed, 29 insertions(+), 54 deletions(-) diff --git a/crates/cheatnet/src/runtime_extensions/forge_runtime_extension/file_operations.rs b/crates/cheatnet/src/runtime_extensions/forge_runtime_extension/file_operations.rs index 363099f950..156eb28625 100644 --- a/crates/cheatnet/src/runtime_extensions/forge_runtime_extension/file_operations.rs +++ b/crates/cheatnet/src/runtime_extensions/forge_runtime_extension/file_operations.rs @@ -26,7 +26,7 @@ pub(super) fn read_json(path: String) -> Result, EnhancedHintError> { let content = read_to_string(&path)?; let json: Map = serde_json::from_str(&content) - .map_err(|e| anyhow!("Parse JSON error: {} , in file {path}", e.to_string()))?; + .map_err(|e| anyhow!("Parse JSON error: {e} , in file {path}"))?; let data = flatten(&json); let mut result = vec![]; diff --git a/crates/configuration/src/lib.rs b/crates/configuration/src/lib.rs index 6e51b92ab9..dd553fc2e8 100644 --- a/crates/configuration/src/lib.rs +++ b/crates/configuration/src/lib.rs @@ -49,7 +49,7 @@ pub fn get_profile( match get_with_ownership(tool_config, profile_name) { Some(profile_value) => Ok(profile_value), None if profile_name == "default" => Ok(serde_json::Value::Object(Map::default())), - None => Err(anyhow!("Profile [{}] not found in config", profile_name)), + None => Err(anyhow!("Profile [{profile_name}] not found in config")), } } diff --git a/crates/data-transformer/src/transformer/mod.rs b/crates/data-transformer/src/transformer/mod.rs index 0f148dad37..a465fffd28 100644 --- a/crates/data-transformer/src/transformer/mod.rs +++ b/crates/data-transformer/src/transformer/mod.rs @@ -55,9 +55,7 @@ fn process( ensure!( n_inputs == n_arguments, - "Invalid number of arguments: passed {}, expected {}", - n_arguments, - n_inputs, + "Invalid number of arguments: passed {n_arguments}, expected {n_inputs}", ); function diff --git a/crates/data-transformer/src/transformer/sierra_abi/complex_types.rs b/crates/data-transformer/src/transformer/sierra_abi/complex_types.rs index 587fc23257..423f7634c5 100644 --- a/crates/data-transformer/src/transformer/sierra_abi/complex_types.rs +++ b/crates/data-transformer/src/transformer/sierra_abi/complex_types.rs @@ -49,11 +49,7 @@ fn validate_path_argument( if *path_argument.last().unwrap() != param_type.split("::").last().unwrap() && path_argument_joined != param_type { - bail!( - r#"Invalid argument type, expected "{}", got "{}""#, - param_type, - path_argument_joined - ) + bail!(r#"Invalid argument type, expected "{param_type}", got "{path_argument_joined}""#,) } Ok(()) } @@ -236,8 +232,7 @@ impl SupportedCalldataKind for ExprStructCtorCall { { // TODO add message which arguments are invalid (Issue #2549) bail!( - r"Arguments in constructor invocation for struct {} do not match struct arguments in ABI", - expected_type + r"Arguments in constructor invocation for struct {expected_type} do not match struct arguments in ABI", ) } @@ -281,11 +276,7 @@ impl SupportedCalldataKind for ExprPath { find_enum_variant_position(enum_variant_name, enum_path, abi)?; if enum_variant.r#type != "()" { - bail!( - r#"Couldn't find variant "{}" in enum "{}""#, - enum_variant_name, - enum_path_joined - ) + bail!(r#"Couldn't find variant "{enum_variant_name}" in enum "{enum_path_joined}""#,) } Ok(AllowedCalldataArgument::Enum(CalldataEnum::new( @@ -337,10 +328,7 @@ impl SupportedCalldataKind for ExprListParenthesized { db: &SimpleParserDatabase, ) -> Result { let Expr::Tuple(tuple) = parse_expression(expected_type, db)? else { - bail!( - r#"Invalid argument type, expected "{}", got tuple"#, - expected_type - ); + bail!(r#"Invalid argument type, expected "{expected_type}", got tuple"#,); }; let tuple_types = tuple diff --git a/crates/data-transformer/src/transformer/sierra_abi/literals.rs b/crates/data-transformer/src/transformer/sierra_abi/literals.rs index 2ad51468f4..8022e8a331 100644 --- a/crates/data-transformer/src/transformer/sierra_abi/literals.rs +++ b/crates/data-transformer/src/transformer/sierra_abi/literals.rs @@ -52,22 +52,18 @@ impl SupportedCalldataKind for ExprUnary { }; match self.op(db) { - UnaryOperator::Not(_) => bail!( - "Invalid unary operator in expression !{} , only - allowed, got !", - value - ), - UnaryOperator::Desnap(_) => bail!( - "Invalid unary operator in expression *{} , only - allowed, got *", - value - ), - UnaryOperator::BitNot(_) => bail!( - "Invalid unary operator in expression ~{} , only - allowed, got ~", - value - ), - UnaryOperator::At(_) => bail!( - "Invalid unary operator in expression @{} , only - allowed, got @", - value - ), + UnaryOperator::Not(_) => { + bail!("Invalid unary operator in expression !{value} , only - allowed, got !",) + } + UnaryOperator::Desnap(_) => { + bail!("Invalid unary operator in expression *{value} , only - allowed, got *",) + } + UnaryOperator::BitNot(_) => { + bail!("Invalid unary operator in expression ~{value} , only - allowed, got ~",) + } + UnaryOperator::At(_) => { + bail!("Invalid unary operator in expression @{value} , only - allowed, got @",) + } UnaryOperator::Minus(_) => {} } diff --git a/crates/data-transformer/src/transformer/sierra_abi/macros.rs b/crates/data-transformer/src/transformer/sierra_abi/macros.rs index c7b9740304..de9a313092 100644 --- a/crates/data-transformer/src/transformer/sierra_abi/macros.rs +++ b/crates/data-transformer/src/transformer/sierra_abi/macros.rs @@ -23,10 +23,7 @@ impl SupportedCalldataKind for ExprInlineMacro { // We do not expect any other expression in proper ABI let Expr::Path(path) = parse_expression(expected_type, db)? else { - bail!( - "Unexpected expression encountered in ABI: {}. ABI may be invalid", - expected_type - ); + bail!("Unexpected expression encountered in ABI: {expected_type}. ABI may be invalid",); }; let type_parameters_from_abi = path @@ -68,7 +65,7 @@ impl SupportedCalldataKind for ExprInlineMacro { // Check by string; A proper array type in ABI looks exactly like this if !expected_type.contains("core::array::Array") { - bail!(r#"Expected "{}", got array"#, expected_type); + bail!(r#"Expected "{expected_type}", got array"#); } // Array should have exactly one type parameter. ABI is invalid otherwise diff --git a/crates/data-transformer/src/transformer/sierra_abi/parsing.rs b/crates/data-transformer/src/transformer/sierra_abi/parsing.rs index 5c0f3fc763..186e33e0ef 100644 --- a/crates/data-transformer/src/transformer/sierra_abi/parsing.rs +++ b/crates/data-transformer/src/transformer/sierra_abi/parsing.rs @@ -68,10 +68,7 @@ pub fn parse_inline_macro( Simple(simple) => { let macro_name = simple.ident(db).text(db); if macro_name != "array" { - bail!( - r#"Invalid macro name, expected "array![]", got "{}""#, - macro_name - ) + bail!(r#"Invalid macro name, expected "array![]", got "{macro_name}""#,) } } PathSegment::WithGenericArgs(_) => { diff --git a/crates/docs/src/utils.rs b/crates/docs/src/utils.rs index 2b33c8a3b5..1066c084a7 100644 --- a/crates/docs/src/utils.rs +++ b/crates/docs/src/utils.rs @@ -53,9 +53,9 @@ pub fn print_ignored_snippet_message(snippet: &Snippet) { fn get_canonical_path(relative_path: &str) -> Result { Ok(Utf8PathBuf::from_str(relative_path) - .map_err(|e| anyhow!("Failed to create Utf8PathBuf: {}", e))? + .map_err(|e| anyhow!("Failed to create Utf8PathBuf: {e}"))? .canonicalize_utf8() - .map_err(|e| anyhow!("Failed to canonicalize path: {}", e))? + .map_err(|e| anyhow!("Failed to canonicalize path: {e}"))? .to_string()) } diff --git a/crates/sncast/src/lib.rs b/crates/sncast/src/lib.rs index 9cdb7d6336..46c3c15e49 100644 --- a/crates/sncast/src/lib.rs +++ b/crates/sncast/src/lib.rs @@ -682,8 +682,8 @@ pub fn raise_if_empty(value: &str, value_name: &str) -> Result<()> { pub fn check_account_file_exists(accounts_file_path: &Utf8PathBuf) -> Result<()> { if !accounts_file_path.exists() { - bail! {"Accounts file = {} does not exist! If you do not have an account create one with `account create` command \ - or if you're using a custom accounts file, make sure to supply correct path to it with `--accounts-file` argument.", accounts_file_path} + bail! {"Accounts file = {accounts_file_path} does not exist! If you do not have an account create one with `account create` command \ + or if you're using a custom accounts file, make sure to supply correct path to it with `--accounts-file` argument." } } Ok(()) } diff --git a/crates/sncast/src/starknet_commands/account/deploy.rs b/crates/sncast/src/starknet_commands/account/deploy.rs index 1a0a2bc3ee..bd5c2f4423 100644 --- a/crates/sncast/src/starknet_commands/account/deploy.rs +++ b/crates/sncast/src/starknet_commands/account/deploy.rs @@ -322,8 +322,7 @@ where match result { Err(AccountFactoryError::Provider(error)) => match error { StarknetError(ClassHashNotFound) => Err(anyhow!( - "Provided class hash {:#x} does not exist", - class_hash, + "Provided class hash {class_hash:#x} does not exist", )), _ => Err(handle_rpc_error(error)), }, diff --git a/crates/sncast/src/starknet_commands/multicall/run.rs b/crates/sncast/src/starknet_commands/multicall/run.rs index e753378ff8..9d32faef9e 100644 --- a/crates/sncast/src/starknet_commands/multicall/run.rs +++ b/crates/sncast/src/starknet_commands/multicall/run.rs @@ -126,7 +126,7 @@ pub async fn run( }); } Some(unsupported) => { - anyhow::bail!("Unsupported call type found = {}", unsupported); + anyhow::bail!("Unsupported call type found = {unsupported}"); } None => anyhow::bail!("Field `call_type` is missing in a call specification"), } diff --git a/crates/sncast/src/starknet_commands/verify/walnut.rs b/crates/sncast/src/starknet_commands/verify/walnut.rs index 189d4ad38c..790f766fa9 100644 --- a/crates/sncast/src/starknet_commands/verify/walnut.rs +++ b/crates/sncast/src/starknet_commands/verify/walnut.rs @@ -104,7 +104,7 @@ impl VerificationInterface<'_> for WalnutVerificationInterface { Ok(VerifyResponse { message }) } else { let message = api_res.text().await.context("Failed to verify contract")?; - Err(anyhow::anyhow!("{}", message)) + Err(anyhow::anyhow!("{message}")) } } From dc03f274be5b1c3370781e2dfcd3135dfb5fdf74 Mon Sep 17 00:00:00 2001 From: Fiiranek Date: Wed, 1 Oct 2025 10:46:05 +0200 Subject: [PATCH 15/24] Apply code review suggestion --- crates/sncast/tests/helpers/constants.rs | 6 +++--- crates/sncast/tests/helpers/devnet.rs | 12 +++++++----- crates/sncast/tests/helpers/devnet_provider.rs | 8 ++++---- 3 files changed, 14 insertions(+), 12 deletions(-) diff --git a/crates/sncast/tests/helpers/constants.rs b/crates/sncast/tests/helpers/constants.rs index 2e1316bcc0..b41d0a5437 100644 --- a/crates/sncast/tests/helpers/constants.rs +++ b/crates/sncast/tests/helpers/constants.rs @@ -8,11 +8,11 @@ pub const SEPOLIA_RPC_URL: &str = "http://188.34.188.184:7070/rpc/v0_9"; pub const URL: &str = "http://127.0.0.1:5055/rpc"; pub const NETWORK: &str = "testnet"; -pub const SEED: u32 = 1_053_545_548; -pub const ACCOUNTS_NUMBER: u8 = 20; +pub const DEVNET_SEED: u32 = 1_053_545_548; +pub const DEVNET_ACCOUNTS_NUMBER: u8 = 20; // Block number used by devnet to fork the Sepolia testnet network in the tests -pub const FORK_BLOCK_NUMBER: u32 = 721_720; +pub const DEVNET_FORK_BLOCK_NUMBER: u32 = 721_720; pub const CONTRACTS_DIR: &str = "tests/data/contracts"; pub const SCRIPTS_DIR: &str = "tests/data/scripts"; diff --git a/crates/sncast/tests/helpers/devnet.rs b/crates/sncast/tests/helpers/devnet.rs index c1b3ae8645..9b2c1539eb 100644 --- a/crates/sncast/tests/helpers/devnet.rs +++ b/crates/sncast/tests/helpers/devnet.rs @@ -1,4 +1,6 @@ -use crate::helpers::constants::{ACCOUNTS_NUMBER, FORK_BLOCK_NUMBER, SEED, SEPOLIA_RPC_URL, URL}; +use crate::helpers::constants::{ + DEVNET_ACCOUNTS_NUMBER, DEVNET_FORK_BLOCK_NUMBER, DEVNET_SEED, SEPOLIA_RPC_URL, URL, +}; use crate::helpers::fixtures::{ deploy_braavos_account, deploy_cairo_0_account, deploy_keystore_account, deploy_latest_oz_account, deploy_ready_account, @@ -39,17 +41,17 @@ fn start_devnet() { "--port", &port, "--seed", - &SEED.to_string(), + &DEVNET_SEED.to_string(), "--state-archive-capacity", "full", "--fork-network", SEPOLIA_RPC_URL, "--fork-block", - &FORK_BLOCK_NUMBER.to_string(), + &DEVNET_FORK_BLOCK_NUMBER.to_string(), "--initial-balance", "9999999999999999999999999999999", "--accounts", - &ACCOUNTS_NUMBER.to_string(), + &DEVNET_ACCOUNTS_NUMBER.to_string(), ]) .stdout(Stdio::null()) .spawn() @@ -80,7 +82,7 @@ fn start_devnet() { #[dtor] fn stop_devnet() { let port = Url::parse(URL).unwrap().port().unwrap_or(80).to_string(); - let pattern = format!("starknet-devnet.*{port}.*{SEED}"); + let pattern = format!("starknet-devnet.*{port}.*{DEVNET_SEED}"); Command::new("pkill") .args(["-f", &pattern]) diff --git a/crates/sncast/tests/helpers/devnet_provider.rs b/crates/sncast/tests/helpers/devnet_provider.rs index 2e89e9cd25..3e554c4a5c 100644 --- a/crates/sncast/tests/helpers/devnet_provider.rs +++ b/crates/sncast/tests/helpers/devnet_provider.rs @@ -5,7 +5,7 @@ use sncast::helpers::{ }; use starknet::macros::felt; -use crate::helpers::constants::{ACCOUNTS_NUMBER, SEED, URL}; +use crate::helpers::constants::{DEVNET_ACCOUNTS_NUMBER, DEVNET_SEED, URL}; #[tokio::test] async fn test_get_config() { @@ -16,8 +16,8 @@ async fn test_get_config() { .expect("Failed to get config"); assert!(config.account_contract_class_hash == OZ_CLASS_HASH); - assert!(config.seed == SEED); - assert!(config.total_accounts == ACCOUNTS_NUMBER); + assert!(config.seed == DEVNET_SEED); + assert!(config.total_accounts == DEVNET_ACCOUNTS_NUMBER); } #[tokio::test] @@ -28,7 +28,7 @@ async fn test_get_predeployed_accounts() { .await .expect("Failed to get predeployed accounts"); - assert!(predeployed_accounts.len().to_u8().unwrap() == ACCOUNTS_NUMBER); + assert!(predeployed_accounts.len().to_u8().unwrap() == DEVNET_ACCOUNTS_NUMBER); let first_account = &predeployed_accounts[0]; let expected_first_account = PredeployedAccount { From 3a1f4634071e25d80e2b654ec2cebc33622f859b Mon Sep 17 00:00:00 2001 From: Fiiranek Date: Wed, 1 Oct 2025 10:48:37 +0200 Subject: [PATCH 16/24] Fix `Cargo.lock` --- Cargo.lock | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Cargo.lock b/Cargo.lock index 7c8da1ff61..0bd41f9913 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -5909,6 +5909,9 @@ dependencies = [ "tokio", "toml", "toml_edit 0.22.27", + "tracing", + "tracing-log", + "tracing-subscriber", "universal-sierra-compiler-api", "url", "walkdir", From a6c82524ff8dcd252244c23fa11721e1eb7c4d7b Mon Sep 17 00:00:00 2001 From: Fiiranek Date: Wed, 1 Oct 2025 20:13:29 +0200 Subject: [PATCH 17/24] Fix changelog --- CHANGELOG.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index cb7d2563b0..843ffcd2f5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,8 +7,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] -## [0.50.0] - 2025-09-29 - ### Forge #### Changed From de848e86384b52f2d7d522f17c60b178163b602c Mon Sep 17 00:00:00 2001 From: Fiiranek Date: Wed, 1 Oct 2025 20:14:34 +0200 Subject: [PATCH 18/24] Remove redundant comments --- crates/sncast/src/helpers/devnet_provider.rs | 3 --- 1 file changed, 3 deletions(-) diff --git a/crates/sncast/src/helpers/devnet_provider.rs b/crates/sncast/src/helpers/devnet_provider.rs index dcec9e31c1..5f8d313815 100644 --- a/crates/sncast/src/helpers/devnet_provider.rs +++ b/crates/sncast/src/helpers/devnet_provider.rs @@ -16,17 +16,14 @@ pub struct DevnetProvider { /// All Devnet-RPC methods as listed in the official docs. #[derive(Debug, Clone, Copy, Serialize, Deserialize)] pub enum DevnetProviderMethod { - /// The `devnet_getConfig` method. #[serde(rename = "devnet_getConfig")] GetConfig, - /// The `devnet_getPredeployedAccounts` method. #[serde(rename = "devnet_getPredeployedAccounts")] GetPredeployedAccounts, } impl DevnetProvider { - /// Constructs a new [`DevnetProvider`] from given url. #[must_use] pub fn new(url: &str) -> Self { let url = Url::parse(url).expect("Invalid URL"); From 2718462e7045869f3f4ea48c20e5e4acdc6f7953 Mon Sep 17 00:00:00 2001 From: Fiiranek Date: Wed, 1 Oct 2025 20:14:52 +0200 Subject: [PATCH 19/24] Apply code review suggestion --- crates/sncast/src/helpers/devnet_provider.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/crates/sncast/src/helpers/devnet_provider.rs b/crates/sncast/src/helpers/devnet_provider.rs index 5f8d313815..0b82a35281 100644 --- a/crates/sncast/src/helpers/devnet_provider.rs +++ b/crates/sncast/src/helpers/devnet_provider.rs @@ -1,6 +1,6 @@ use crate::AccountData; use ::serde::{Deserialize, Serialize, de::DeserializeOwned}; -use anyhow::Error; +use anyhow::{Context, Error}; use reqwest::Client; use serde_json::json; use starknet_types_core::felt::Felt; @@ -52,7 +52,7 @@ impl DevnetProvider { })) .send() .await - .expect("Error occurred during request") + .context("Error occurred during request")? .json::() .await; From 24802a6fa78173a19845e3169fab58752ec94f2b Mon Sep 17 00:00:00 2001 From: Fiiranek Date: Thu, 2 Oct 2025 15:30:24 +0200 Subject: [PATCH 20/24] Apply code review suggestions --- crates/sncast/src/helpers/devnet_provider.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/crates/sncast/src/helpers/devnet_provider.rs b/crates/sncast/src/helpers/devnet_provider.rs index 0b82a35281..8d836923da 100644 --- a/crates/sncast/src/helpers/devnet_provider.rs +++ b/crates/sncast/src/helpers/devnet_provider.rs @@ -35,7 +35,7 @@ impl DevnetProvider { } impl DevnetProvider { - async fn send_request(&self, method: DevnetProviderMethod, params: P) -> Result + async fn send_request(&self, method: DevnetProviderMethod, params: P) -> anyhow::Result where P: Serialize + Send + Sync, R: DeserializeOwned, @@ -52,7 +52,7 @@ impl DevnetProvider { })) .send() .await - .context("Error occurred during request")? + .context("Failed to parse response")? .json::() .await; @@ -63,7 +63,7 @@ impl DevnetProvider { } else if let Some(result) = res_body.get("result") { serde_json::from_value(result.clone()).map_err(anyhow::Error::from) } else { - Err(anyhow::anyhow!("Malformed RPC response: {res_body}")) + panic!("Malformed RPC response: {res_body}") } } Err(e) => Err(anyhow::anyhow!(e.to_string())), From fd670521dba32d21f6a151cf0c8e38398afeccce Mon Sep 17 00:00:00 2001 From: Fiiranek Date: Thu, 2 Oct 2025 15:50:30 +0200 Subject: [PATCH 21/24] Add `DevnetProvider.ensure_alive()` --- crates/sncast/src/helpers/devnet_provider.rs | 23 +++++++++++++++- .../sncast/tests/helpers/devnet_provider.rs | 26 ++++++++++++++++++- 2 files changed, 47 insertions(+), 2 deletions(-) diff --git a/crates/sncast/src/helpers/devnet_provider.rs b/crates/sncast/src/helpers/devnet_provider.rs index 8d836923da..e37ac9f3fc 100644 --- a/crates/sncast/src/helpers/devnet_provider.rs +++ b/crates/sncast/src/helpers/devnet_provider.rs @@ -1,6 +1,6 @@ use crate::AccountData; use ::serde::{Deserialize, Serialize, de::DeserializeOwned}; -use anyhow::{Context, Error}; +use anyhow::{Context, Error, ensure}; use reqwest::Client; use serde_json::json; use starknet_types_core::felt::Felt; @@ -81,6 +81,27 @@ impl DevnetProvider { self.send_request(DevnetProviderMethod::GetPredeployedAccounts, json!({})) .await } + + /// Ensures the Devnet instance is alive. + pub async fn ensure_alive(&self) -> Result<(), Error> { + let is_alive = self + .client + .get(format!( + "{}/is_alive", + self.url.to_string().replace("/rpc", "") + )) + .send() + .await + .map(|res| res.status().is_success()) + .unwrap_or(false); + + ensure!( + is_alive, + "Node at {} is not responding to the Devnet health check (GET `/is_alive`). It may not be a Devnet instance or it may be down.", + self.url + ); + Ok(()) + } } #[derive(Debug, Serialize, Deserialize)] diff --git a/crates/sncast/tests/helpers/devnet_provider.rs b/crates/sncast/tests/helpers/devnet_provider.rs index 3e554c4a5c..0242bfb580 100644 --- a/crates/sncast/tests/helpers/devnet_provider.rs +++ b/crates/sncast/tests/helpers/devnet_provider.rs @@ -5,7 +5,7 @@ use sncast::helpers::{ }; use starknet::macros::felt; -use crate::helpers::constants::{DEVNET_ACCOUNTS_NUMBER, DEVNET_SEED, URL}; +use crate::helpers::constants::{DEVNET_ACCOUNTS_NUMBER, DEVNET_SEED, SEPOLIA_RPC_URL, URL}; #[tokio::test] async fn test_get_config() { @@ -40,3 +40,27 @@ async fn test_get_predeployed_accounts() { assert!(first_account.private_key == expected_first_account.private_key); assert!(first_account.public_key == expected_first_account.public_key); } + +#[tokio::test] +async fn test_is_alive_happy_case() { + let devnet_provider = DevnetProvider::new(URL); + devnet_provider + .ensure_alive() + .await + .expect("Failed to ensure the devnet is alive"); +} + +#[tokio::test] +async fn test_is_alive_fails_on_sepolia_node() { + let devnet_provider = DevnetProvider::new(SEPOLIA_RPC_URL); + let res = devnet_provider.ensure_alive().await; + assert!(res.is_err(), "Expected an error"); + + let err = res.unwrap_err().to_string(); + assert!( + err == format!( + "Node at {SEPOLIA_RPC_URL} is not responding to the Devnet health check (GET `/is_alive`). It may not be a Devnet instance or it may be down." + ), + "Unexpected error message: {err}" + ); +} From fe1214d1571a8789df971cc2ada61128aef79a73 Mon Sep 17 00:00:00 2001 From: Fiiranek Date: Thu, 2 Oct 2025 15:52:27 +0200 Subject: [PATCH 22/24] Apply code review suggestion --- crates/sncast/src/helpers/devnet_provider.rs | 22 ++++++++------------ 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/crates/sncast/src/helpers/devnet_provider.rs b/crates/sncast/src/helpers/devnet_provider.rs index e37ac9f3fc..88cdcc028e 100644 --- a/crates/sncast/src/helpers/devnet_provider.rs +++ b/crates/sncast/src/helpers/devnet_provider.rs @@ -52,21 +52,17 @@ impl DevnetProvider { })) .send() .await - .context("Failed to parse response")? + .context("Failed to send request")? .json::() - .await; + .await + .context("Failed to parse response")?; - match res { - Ok(res_body) => { - if let Some(error) = res_body.get("error") { - Err(anyhow::anyhow!(error.to_string())) - } else if let Some(result) = res_body.get("result") { - serde_json::from_value(result.clone()).map_err(anyhow::Error::from) - } else { - panic!("Malformed RPC response: {res_body}") - } - } - Err(e) => Err(anyhow::anyhow!(e.to_string())), + if let Some(error) = res.get("error") { + Err(anyhow::anyhow!(error.to_string())) + } else if let Some(result) = res.get("result") { + serde_json::from_value(result.clone()).map_err(anyhow::Error::from) + } else { + panic!("Malformed RPC response: {res}") } } From fc0bb1d3e86a9807542fb1e9eb33c4a15e1725c5 Mon Sep 17 00:00:00 2001 From: Fiiranek Date: Fri, 3 Oct 2025 13:57:20 +0200 Subject: [PATCH 23/24] Remove assertions --- crates/sncast/tests/helpers/devnet_provider.rs | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/crates/sncast/tests/helpers/devnet_provider.rs b/crates/sncast/tests/helpers/devnet_provider.rs index 0242bfb580..2bda35cc72 100644 --- a/crates/sncast/tests/helpers/devnet_provider.rs +++ b/crates/sncast/tests/helpers/devnet_provider.rs @@ -29,16 +29,6 @@ async fn test_get_predeployed_accounts() { .expect("Failed to get predeployed accounts"); assert!(predeployed_accounts.len().to_u8().unwrap() == DEVNET_ACCOUNTS_NUMBER); - - let first_account = &predeployed_accounts[0]; - let expected_first_account = PredeployedAccount { - address: felt!("0x06f4621e7ad43707b3f69f9df49425c3d94fdc5ab2e444bfa0e7e4edeff7992d"), - private_key: felt!("0x0000000000000000000000000000000056c12e097e49ea382ca8eadec0839401"), - public_key: felt!("0x048234b9bc6c1e749f4b908d310d8c53dae6564110b05ccf79016dca8ce7dfac"), - }; - assert!(first_account.address == expected_first_account.address); - assert!(first_account.private_key == expected_first_account.private_key); - assert!(first_account.public_key == expected_first_account.public_key); } #[tokio::test] From fdb41d400eb8967f8374910bdc430ed9d0008c23 Mon Sep 17 00:00:00 2001 From: Fiiranek Date: Fri, 3 Oct 2025 15:49:37 +0200 Subject: [PATCH 24/24] Fix linting --- crates/sncast/tests/helpers/devnet_provider.rs | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/crates/sncast/tests/helpers/devnet_provider.rs b/crates/sncast/tests/helpers/devnet_provider.rs index 2bda35cc72..7ca47d2c49 100644 --- a/crates/sncast/tests/helpers/devnet_provider.rs +++ b/crates/sncast/tests/helpers/devnet_provider.rs @@ -1,11 +1,6 @@ -use num_traits::ToPrimitive; -use sncast::helpers::{ - constants::OZ_CLASS_HASH, - devnet_provider::{DevnetProvider, PredeployedAccount}, -}; -use starknet::macros::felt; - use crate::helpers::constants::{DEVNET_ACCOUNTS_NUMBER, DEVNET_SEED, SEPOLIA_RPC_URL, URL}; +use num_traits::ToPrimitive; +use sncast::helpers::{constants::OZ_CLASS_HASH, devnet_provider::DevnetProvider}; #[tokio::test] async fn test_get_config() {