From 7ce5ce6a850bf9dddcef4e05f92297617652713b Mon Sep 17 00:00:00 2001 From: James Date: Tue, 30 Dec 2025 15:43:28 -0500 Subject: [PATCH 1/4] thing: thing thing the thing --- Cargo.lock | 1 + Cargo.toml | 1 + src/quincey.rs | 30 +++++++++++++----------------- src/tasks/submit/flashbots.rs | 1 + src/tasks/submit/prep.rs | 25 +++++++++++++------------ 5 files changed, 29 insertions(+), 29 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 56e5e3f..bb25c2a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2447,6 +2447,7 @@ dependencies = [ "alloy-hardforks 0.4.5", "axum 0.7.9", "eyre", + "futures-util", "init4-bin-base", "openssl", "reqwest", diff --git a/Cargo.toml b/Cargo.toml index 4e806e7..ba9d165 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -56,6 +56,7 @@ tokio = { version = "1.36.0", features = ["full", "macros", "rt-multi-thread"] } tokio-stream = "0.1.17" url = "2.5.4" thiserror = "2.0.17" +futures-util = "0.3.31" [dev-dependencies] alloy-hardforks = "0.4.0" diff --git a/src/quincey.rs b/src/quincey.rs index 2e2bb33..69ef136 100644 --- a/src/quincey.rs +++ b/src/quincey.rs @@ -25,13 +25,23 @@ pub enum QuinceyError { /// Error contacting the remote quincey API. #[error("Error contacting quincey API: {0}")] - Remote(#[from] reqwest::Error), + Remote(reqwest::Error), /// Error with the owned signet. #[error("Error with owned signet: {0}")] Owned(#[from] eyre::Report), } +impl From for QuinceyError { + fn from(err: reqwest::Error) -> Self { + if err.status() == Some(reqwest::StatusCode::FORBIDDEN) { + QuinceyError::NotOurSlot + } else { + QuinceyError::Remote(err) + } + } +} + /// A quincey client for making requests to the Quincey API. #[derive(Debug, Clone)] pub enum Quincey { @@ -89,23 +99,9 @@ impl Quincey { let token = token.secret().await?; - let resp = client - .post(url.clone()) - .json(sig_request) - .bearer_auth(token) - .send() - .await - .map_err(QuinceyError::Remote)?; - - if resp.status() == reqwest::StatusCode::FORBIDDEN { - return Err(QuinceyError::NotOurSlot); - } + let resp = client.post(url.clone()).json(sig_request).bearer_auth(token).send().await?; - resp.error_for_status() - .map_err(QuinceyError::Remote)? - .json::() - .await - .map_err(QuinceyError::Remote) + resp.error_for_status()?.json::().await.map_err(QuinceyError::Remote) } /// Get a signature for the provided request, by either using the owned diff --git a/src/tasks/submit/flashbots.rs b/src/tasks/submit/flashbots.rs index 3c4fd8b..02cbe6c 100644 --- a/src/tasks/submit/flashbots.rs +++ b/src/tasks/submit/flashbots.rs @@ -112,6 +112,7 @@ impl FlashbotsTask { ); let tx = prep.prep_transaction(sim_result.prev_host()).await?; + let sendable = self .host_provider() .fill(tx.into_request()) diff --git a/src/tasks/submit/prep.rs b/src/tasks/submit/prep.rs index cf35dd9..40cb795 100644 --- a/src/tasks/submit/prep.rs +++ b/src/tasks/submit/prep.rs @@ -11,6 +11,7 @@ use alloy::{ rpc::types::TransactionRequest, sol_types::SolCall, }; +use futures_util::FutureExt; use init4_bin_base::deps::metrics::counter; use signet_sim::BuiltBlock; use signet_types::{SignRequest, SignResponse}; @@ -103,14 +104,13 @@ impl<'a> SubmitPrep<'a> { } /// Encodes the rollup block into a sidecar. + #[instrument(skip(self), level = "debug")] async fn build_sidecar(&self) -> eyre::Result { - let sidecar = self.block.encode_blob::().build()?; - - Ok(sidecar) + self.block.encode_blob::().build().map_err(Into::into) } /// Build a signature and header input for the host chain transaction. - async fn build_input(&self) -> eyre::Result> { + async fn build_input(&self) -> eyre::Result { let (v, r, s) = self.quincey_signature().await?; let header = Zenith::BlockHeader { @@ -120,19 +120,21 @@ impl<'a> SubmitPrep<'a> { rewardAddress: self.sig_request().ru_reward_address, blockDataHash: *self.block.contents_hash(), }; - debug!(?header.hostBlockNumber, "built zenith block header"); - - let data = Zenith::submitBlockCall { header, v, r, s, _4: Bytes::new() }.abi_encode(); + let call = Zenith::submitBlockCall { header, v, r, s, _4: Bytes::new() }; - Ok(data) + Ok(call.abi_encode().into()) } /// Create a new transaction request for the host chain. async fn new_tx_request(&self) -> eyre::Result { - let nonce = - self.provider.get_transaction_count(self.provider.default_signer_address()).await?; + let nonce_fut = self + .provider + .get_transaction_count(self.provider.default_signer_address()) + .into_future() + .map(|res| res.map_err(Into::into)); - let (sidecar, input) = try_join!(self.build_sidecar(), self.build_input())?; + let (nonce, sidecar, input) = + try_join!(nonce_fut, self.build_sidecar(), self.build_input())?; let tx = TransactionRequest::default() .with_blob_sidecar(sidecar) @@ -144,7 +146,6 @@ impl<'a> SubmitPrep<'a> { } /// Prepares a transaction for submission to the host chain. - #[instrument(skip_all, level = "debug")] pub async fn prep_transaction(self, prev_host: &Header) -> eyre::Result { let req = self.new_tx_request().in_current_span().await?; Ok(Bumpable::new(req, prev_host)) From 666e8ade17c0c22d20dac21822f41ce75aea9c21 Mon Sep 17 00:00:00 2001 From: James Date: Tue, 30 Dec 2025 16:23:50 -0500 Subject: [PATCH 2/4] refactor: remove waiting span --- Cargo.lock | 710 ++++++++++++++++++++++------------------------- src/tasks/env.rs | 59 ++-- 2 files changed, 341 insertions(+), 428 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index bb25c2a..aaffa23 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -97,9 +97,9 @@ checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] name = "alloy" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f07655fedc35188f3c50ff8fc6ee45703ae14ef1bc7ae7d80e23a747012184e3" +checksum = "f609fb6392508278b276906d6247ea44f5777e448db95444fa39e89b7aee896a" dependencies = [ "alloy-consensus", "alloy-contract", @@ -126,9 +126,9 @@ dependencies = [ [[package]] name = "alloy-chains" -version = "0.2.23" +version = "0.2.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35d744058a9daa51a8cf22a3009607498fcf82d3cf4c5444dd8056cdf651f471" +checksum = "b163ff4acf0eac29af05a911397cc418a76e153467b859398adc26cb9335a611" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -139,9 +139,9 @@ dependencies = [ [[package]] name = "alloy-consensus" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e318e25fb719e747a7e8db1654170fc185024f3ed5b10f86c08d448a912f6e2" +checksum = "f3dcd2b4e208ce5477de90ccdcbd4bde2c8fb06af49a443974e92bb8f2c5e93f" dependencies = [ "alloy-eips", "alloy-primitives", @@ -167,9 +167,9 @@ dependencies = [ [[package]] name = "alloy-consensus-any" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "364380a845193a317bcb7a5398fc86cdb66c47ebe010771dde05f6869bf9e64a" +checksum = "ee5655f234985f5ab1e31bef7e02ed11f0a899468cf3300e061e1b96e9e11de0" dependencies = [ "alloy-consensus", "alloy-eips", @@ -182,9 +182,9 @@ dependencies = [ [[package]] name = "alloy-contract" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d39c80ffc806f27a76ed42f3351a455f3dc4f81d6ff92c8aad2cf36b7d3a34" +checksum = "7f01b6d8e5b4f3222aaf7f18613a7292e2fbc9163fe120649cd1b078ca534349" dependencies = [ "alloy-consensus", "alloy-dyn-abi", @@ -205,9 +205,9 @@ dependencies = [ [[package]] name = "alloy-core" -version = "1.4.1" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ca96214615ec8cf3fa2a54b32f486eb49100ca7fe7eb0b8c1137cd316e7250a" +checksum = "9d4087016b0896051dd3d03e0bedda2f4d4d1689af8addc8450288c63a9e5f68" dependencies = [ "alloy-dyn-abi", "alloy-json-abi", @@ -218,9 +218,9 @@ dependencies = [ [[package]] name = "alloy-dyn-abi" -version = "1.4.1" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdff496dd4e98a81f4861e66f7eaf5f2488971848bb42d9c892f871730245c8" +checksum = "369f5707b958927176265e8a58627fc6195e5dfa5c55689396e68b241b3a72e6" dependencies = [ "alloy-json-abi", "alloy-primitives", @@ -283,9 +283,9 @@ dependencies = [ [[package]] name = "alloy-eips" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4c4d7c5839d9f3a467900c625416b24328450c65702eb3d8caff8813e4d1d33" +checksum = "6847d641141b92a1557094aa6c236cbe49c06fb24144d4a21fe6acb970c15888" dependencies = [ "alloy-eip2124", "alloy-eip2930", @@ -315,7 +315,7 @@ checksum = "527b47dc39850c6168002ddc1f7a2063e15d26137c1bb5330f6065a7524c1aa9" dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-hardforks 0.4.5", + "alloy-hardforks 0.4.7", "alloy-primitives", "alloy-rpc-types-engine", "alloy-rpc-types-eth", @@ -331,9 +331,9 @@ dependencies = [ [[package]] name = "alloy-genesis" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ba4b1be0988c11f0095a2380aa596e35533276b8fa6c9e06961bbfe0aebcac5" +checksum = "fe3192fca2eb0b0c4b122b3c2d8254496b88a4e810558dddd3ea2f30ad9469df" dependencies = [ "alloy-eips", "alloy-primitives", @@ -359,9 +359,9 @@ dependencies = [ [[package]] name = "alloy-hardforks" -version = "0.4.5" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d9a33550fc21fd77a3f8b63e99969d17660eec8dcc50a95a80f7c9964f7680b" +checksum = "83ba208044232d14d4adbfa77e57d6329f51bc1acc21f5667bb7db72d88a0831" dependencies = [ "alloy-chains", "alloy-eip2124", @@ -373,9 +373,9 @@ dependencies = [ [[package]] name = "alloy-json-abi" -version = "1.4.1" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5513d5e6bd1cba6bdcf5373470f559f320c05c8c59493b6e98912fbe6733943f" +checksum = "84e3cf01219c966f95a460c95f1d4c30e12f6c18150c21a30b768af2a2a29142" dependencies = [ "alloy-primitives", "alloy-sol-type-parser", @@ -385,9 +385,9 @@ dependencies = [ [[package]] name = "alloy-json-rpc" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f72cf87cda808e593381fb9f005ffa4d2475552b7a6c5ac33d087bf77d82abd0" +checksum = "d4ab3330e491053e9608b2a315f147357bb8acb9377a988c1203f2e8e2b296c9" dependencies = [ "alloy-primitives", "alloy-sol-types", @@ -400,9 +400,9 @@ dependencies = [ [[package]] name = "alloy-network" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12aeb37b6f2e61b93b1c3d34d01ee720207c76fe447e2a2c217e433ac75b17f5" +checksum = "c1e22ff194b1e34b4defd1e257e3fe4dce0eee37451c7757a1510d6b23e7379a" dependencies = [ "alloy-consensus", "alloy-consensus-any", @@ -426,9 +426,9 @@ dependencies = [ [[package]] name = "alloy-network-primitives" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abd29ace62872083e30929cd9b282d82723196d196db589f3ceda67edcc05552" +checksum = "b8a6cbb9f431bdad294eebb5af9b293d6979e633bfe5468d1e87c1421a858265" dependencies = [ "alloy-consensus", "alloy-eips", @@ -439,9 +439,9 @@ dependencies = [ [[package]] name = "alloy-node-bindings" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2b000c0790644bd4effe719f4272f0023167567ca9534e4e071f6f18c4f7e44" +checksum = "7e9e5dae7d2be44904dba55bb8b538e5de89fdb9e50b3f0f163277b729285011" dependencies = [ "alloy-genesis", "alloy-hardforks 0.2.13", @@ -460,9 +460,9 @@ dependencies = [ [[package]] name = "alloy-primitives" -version = "1.4.1" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "355bf68a433e0fd7f7d33d5a9fc2583fde70bf5c530f63b80845f8da5505cf28" +checksum = "f6a0fb18dd5fb43ec5f0f6a20be1ce0287c79825827de5744afaa6c957737c33" dependencies = [ "alloy-rlp", "arbitrary", @@ -481,6 +481,7 @@ dependencies = [ "proptest", "proptest-derive 0.6.0", "rand 0.9.2", + "rapidhash", "ruint", "rustc-hash 2.1.1", "serde", @@ -490,9 +491,9 @@ dependencies = [ [[package]] name = "alloy-provider" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b710636d7126e08003b8217e24c09f0cca0b46d62f650a841736891b1ed1fc1" +checksum = "3f5dde1abc3d582e53d139904fcdd8b2103f0bd03e8f2acb4292edbbaeaa7e6e" dependencies = [ "alloy-chains", "alloy-consensus", @@ -539,9 +540,9 @@ dependencies = [ [[package]] name = "alloy-pubsub" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdd4c64eb250a18101d22ae622357c6b505e158e9165d4c7974d59082a600c5e" +checksum = "acbfe0a3c553a027f722185fb574124d205147fffb309cae52d0a2094f076887" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -578,14 +579,14 @@ checksum = "64b728d511962dda67c1bc7ea7c03736ec275ed2cf4c35d9585298ac9ccf3b73" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] name = "alloy-rpc-client" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0882e72d2c1c0c79dcf4ab60a67472d3f009a949f774d4c17d0bdb669cfde05" +checksum = "5a94bdef2710322c6770be08689fee0878c2ad75615b8fc40e05d7f3c9618c0b" dependencies = [ "alloy-json-rpc", "alloy-primitives", @@ -609,9 +610,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39cf1398cb33aacb139a960fa3d8cf8b1202079f320e77e952a0b95967bf7a9f" +checksum = "811a573c8080e1b492d488e6a240ec5dd7677d7167e91ce9cb4d0ec1fcac8027" dependencies = [ "alloy-primitives", "alloy-rpc-types-anvil", @@ -628,9 +629,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-admin" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65a583d2029b171301f5dcf122aa2ef443a65a373778ec76540d999691ae867d" +checksum = "3d2d901eeaf99067f54c97a98c8afddcb9f63e35af1efe0ce8d45d04f9223e50" dependencies = [ "alloy-genesis", "alloy-primitives", @@ -640,9 +641,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-anvil" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3ce4c24e416bd0f17fceeb2f26cd8668df08fe19e1dc02f9d41c3b8ed1e93e0" +checksum = "838ca94be532a929f27961851000ec8bbbaeb06e2a2bcca44fac7855a2fe0f6f" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -652,9 +653,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-any" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a63fb40ed24e4c92505f488f9dd256e2afaed17faa1b7a221086ebba74f4122" +checksum = "12df0b34551ca2eab8ec83b56cb709ee5da991737282180d354a659b907f00dc" dependencies = [ "alloy-consensus-any", "alloy-rpc-types-eth", @@ -663,9 +664,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-beacon" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16633087e23d8d75161c3a59aa183203637b817a5a8d2f662f612ccb6d129af0" +checksum = "32598a2443750a2e884c1b48efccaeeaae75e7eb4e0f13df9146b78107b4c301" dependencies = [ "alloy-eips", "alloy-primitives", @@ -683,9 +684,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-debug" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4936f579d9d10eae01772b2ab3497f9d568684f05f26f8175e12f9a1a2babc33" +checksum = "6c49a3a168a5bf18f1cf7ed5723a650aebe714edf7665b53dacf5707716733d0" dependencies = [ "alloy-primitives", "derive_more", @@ -695,9 +696,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-engine" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c60bdce3be295924122732b7ecd0b2495ce4790bedc5370ca7019c08ad3f26e" +checksum = "ffe16cd1dea6089902ec609e04261a9ae6d11ec66005ba24c1f97f0eefbc0fa9" dependencies = [ "alloy-consensus", "alloy-eips", @@ -716,9 +717,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-eth" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9eae0c7c40da20684548cbc8577b6b7447f7bf4ddbac363df95e3da220e41e72" +checksum = "b7f9f130511b8632686dfe6f9909b38d7ae4c68de3ce17d28991400646a39b25" dependencies = [ "alloy-consensus", "alloy-consensus-any", @@ -738,9 +739,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-mev" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81c0dd81c24944cfbf45b5df7cd149d9cd3e354db81ccf08aa47e0e05be8ab97" +checksum = "fdeb95f21ba043cbbbc074f7af9c7bb22e2727de02dc3fe95d5ae963a96767a6" dependencies = [ "alloy-consensus", "alloy-eips", @@ -753,9 +754,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-trace" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef206a4b8d436fbb7cf2e6a61c692d11df78f9382becc3c9a283bd58e64f0583" +checksum = "cafe859944638c5d57d1a3a0034cdb5d07c98c37de8adce5508f28834acf958f" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -767,9 +768,9 @@ dependencies = [ [[package]] name = "alloy-rpc-types-txpool" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecb5a795264a02222f9534435b8f40dcbd88de8e9d586647884aae24f389ebf2" +checksum = "afaa06544e36f223b99b1415a12911230fd527994f020736c3c7950d5080208e" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -779,9 +780,9 @@ dependencies = [ [[package]] name = "alloy-serde" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0df1987ed0ff2d0159d76b52e7ddfc4e4fbddacc54d2fbee765e0d14d7c01b5" +checksum = "067b718d2e6ac1bb889341fcc7a250cfa49bcd3ba4f23923f1c1eb1f2b10cb7c" dependencies = [ "alloy-primitives", "arbitrary", @@ -791,9 +792,9 @@ dependencies = [ [[package]] name = "alloy-signer" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ff69deedee7232d7ce5330259025b868c5e6a52fa8dffda2c861fb3a5889b24" +checksum = "acff6b251740ef473932386d3b71657d3825daebf2217fb41a7ef676229225d4" dependencies = [ "alloy-primitives", "async-trait", @@ -806,9 +807,9 @@ dependencies = [ [[package]] name = "alloy-signer-aws" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc8784b7567d5cfdad7450c5c71ddbdc12b288b82ea559be7a5363c28f774210" +checksum = "a4111255269e2d96b7e064ffa98f94ebc51c8e18d43501a10808c316e6d5a4d6" dependencies = [ "alloy-consensus", "alloy-network", @@ -825,9 +826,9 @@ dependencies = [ [[package]] name = "alloy-signer-local" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72cfe0be3ec5a8c1a46b2e5a7047ed41121d360d97f4405bb7c1c784880c86cb" +checksum = "c9129ef31975d987114c27c9930ee817cf3952355834d47f2fdf4596404507e8" dependencies = [ "alloy-consensus", "alloy-network", @@ -844,23 +845,23 @@ dependencies = [ [[package]] name = "alloy-sol-macro" -version = "1.4.1" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3ce480400051b5217f19d6e9a82d9010cdde20f1ae9c00d53591e4a1afbb312" +checksum = "09eb18ce0df92b4277291bbaa0ed70545d78b02948df756bbd3d6214bf39a218" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] name = "alloy-sol-macro-expander" -version = "1.4.1" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d792e205ed3b72f795a8044c52877d2e6b6e9b1d13f431478121d8d4eaa9028" +checksum = "95d9fa2daf21f59aa546d549943f10b5cce1ae59986774019fbedae834ffe01b" dependencies = [ "alloy-json-abi", "alloy-sol-macro-input", @@ -870,16 +871,16 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", "syn-solidity", "tiny-keccak", ] [[package]] name = "alloy-sol-macro-input" -version = "1.4.1" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bd1247a8f90b465ef3f1207627547ec16940c35597875cdc09c49d58b19693c" +checksum = "9396007fe69c26ee118a19f4dee1f5d1d6be186ea75b3881adf16d87f8444686" dependencies = [ "alloy-json-abi", "const-hex", @@ -889,15 +890,15 @@ dependencies = [ "proc-macro2", "quote", "serde_json", - "syn 2.0.111", + "syn 2.0.112", "syn-solidity", ] [[package]] name = "alloy-sol-type-parser" -version = "1.4.1" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "954d1b2533b9b2c7959652df3076954ecb1122a28cc740aa84e7b0a49f6ac0a9" +checksum = "af67a0b0dcebe14244fc92002cd8d96ecbf65db4639d479f5fcd5805755a4c27" dependencies = [ "serde", "winnow", @@ -905,9 +906,9 @@ dependencies = [ [[package]] name = "alloy-sol-types" -version = "1.4.1" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70319350969a3af119da6fb3e9bddb1bce66c9ea933600cb297c8b1850ad2a3c" +checksum = "09aeea64f09a7483bdcd4193634c7e5cf9fd7775ee767585270cd8ce2d69dc95" dependencies = [ "alloy-json-abi", "alloy-primitives", @@ -917,9 +918,9 @@ dependencies = [ [[package]] name = "alloy-transport" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be98b07210d24acf5b793c99b759e9a696e4a2e67593aec0487ae3b3e1a2478c" +checksum = "bec1fb08ee484e615f24867c0b154fff5722bb00176102a16868c6532b7c3623" dependencies = [ "alloy-json-rpc", "auto_impl", @@ -940,9 +941,9 @@ dependencies = [ [[package]] name = "alloy-transport-http" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4198a1ee82e562cab85e7f3d5921aab725d9bd154b6ad5017f82df1695877c97" +checksum = "64b722073c76f2de7e118d546ee1921c50710f97feb32aed50db94cfa5b663e1" dependencies = [ "alloy-json-rpc", "alloy-transport", @@ -955,9 +956,9 @@ dependencies = [ [[package]] name = "alloy-transport-ipc" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8db249779ebc20dc265920c7e706ed0d31dbde8627818d1cbde60919b875bb0" +checksum = "bdedcf401aab4b96d8b5e6638b79d04a6afb96c0bfcb50a2324fbadfe65c47b3" dependencies = [ "alloy-json-rpc", "alloy-pubsub", @@ -975,15 +976,14 @@ dependencies = [ [[package]] name = "alloy-transport-ws" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ad2344a12398d7105e3722c9b7a7044ea837128e11d453604dec6e3731a86e2" +checksum = "942210908f0c56941097f5653a5f334546940e6fd9073495b257e52216469feb" dependencies = [ "alloy-pubsub", "alloy-transport", "futures", "http 1.4.0", - "rustls 0.23.31", "serde_json", "tokio", "tokio-tungstenite", @@ -993,9 +993,9 @@ dependencies = [ [[package]] name = "alloy-trie" -version = "0.9.1" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3412d52bb97c6c6cc27ccc28d4e6e8cf605469101193b50b0bd5813b1f990b5" +checksum = "2b77b56af09ead281337d06b1d036c88e2dc8a2e45da512a532476dbee94912b" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -1013,14 +1013,14 @@ dependencies = [ [[package]] name = "alloy-tx-macros" -version = "1.1.3" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "333544408503f42d7d3792bfc0f7218b643d968a03d2c0ed383ae558fb4a76d0" +checksum = "04950a13cc4209d8e9b78f306e87782466bad8538c94324702d061ff03e211c9" dependencies = [ "darling 0.21.3", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -1099,7 +1099,7 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -1241,7 +1241,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "62945a2f7e6de02a31fe400aa489f0e0f5b2502e69f95f853adb82a96c7a6b60" dependencies = [ "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -1279,7 +1279,7 @@ dependencies = [ "num-traits", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -1368,7 +1368,7 @@ checksum = "213888f660fddcca0d257e88e54ac05bca01885f258ccdf695bafd77031bb69d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -1454,7 +1454,7 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -1465,7 +1465,7 @@ checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -1503,7 +1503,7 @@ checksum = "ffdcb70bdbc4d478427380519163274ac86e52916e10f0a8889adf0f96d3fee7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -1776,9 +1776,9 @@ dependencies = [ [[package]] name = "aws-smithy-json" -version = "0.61.8" +version = "0.61.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6864c190cbb8e30cf4b77b2c8f3b6dfffa697a09b7218d2f7cd3d4c4065a9f7" +checksum = "49fa1213db31ac95288d981476f78d05d9cbb0353d22cdf3472cc05bb02f6551" dependencies = [ "aws-smithy-types", ] @@ -1928,11 +1928,11 @@ dependencies = [ [[package]] name = "axum" -version = "0.8.7" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b098575ebe77cb6d14fc7f32749631a6e44edbef6b796f89b020e99ba20d425" +checksum = "8b52af3cb4058c895d37317bb27508dccc8e5f2d39454016b297bf4a400597b8" dependencies = [ - "axum-core 0.5.5", + "axum-core 0.5.6", "bytes", "form_urlencoded", "futures-util", @@ -1982,9 +1982,9 @@ dependencies = [ [[package]] name = "axum-core" -version = "0.5.5" +version = "0.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59446ce19cd142f8833f856eb31f3eb097812d1479ab224f54d72428ca21ea22" +checksum = "08c78f31d7b1291f7ee735c1c6780ccde7785daae9a9206026862dab7d8792d1" dependencies = [ "bytes", "futures-core", @@ -2105,7 +2105,7 @@ dependencies = [ "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.111", + "syn 2.0.112", "which", ] @@ -2124,7 +2124,7 @@ dependencies = [ "regex", "rustc-hash 2.1.1", "shlex", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -2142,7 +2142,7 @@ dependencies = [ "regex", "rustc-hash 2.1.1", "shlex", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -2339,7 +2339,7 @@ dependencies = [ "cow-utils", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", "synstructure", ] @@ -2395,7 +2395,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -2444,7 +2444,7 @@ version = "1.0.0-rc.0" dependencies = [ "alloy", "alloy-chains", - "alloy-hardforks 0.4.5", + "alloy-hardforks 0.4.7", "axum 0.7.9", "eyre", "futures-util", @@ -2470,9 +2470,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.19.0" +version = "3.19.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46c5e41b57b8bba42a04676d81cb89e9ee8e859a1a66f80a5a72e1cb76b34d43" +checksum = "5dd9dc738b7a8311c7ade152424974d8115f2cdad61e8dab8dac9f2362298510" [[package]] name = "byte-slice-cast" @@ -2503,7 +2503,7 @@ checksum = "f9abbd1bc6865053c427f7198e6af43bfdedc55ab791faed4fbd361d789575ff" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -2656,7 +2656,7 @@ dependencies = [ "num-traits", "serde", "wasm-bindgen", - "windows-link 0.2.1", + "windows-link", ] [[package]] @@ -2711,7 +2711,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -3053,7 +3053,7 @@ dependencies = [ "crossterm_winapi", "document-features", "parking_lot", - "rustix 1.1.2", + "rustix 1.1.3", "winapi", ] @@ -3128,7 +3128,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -3162,7 +3162,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -3177,7 +3177,7 @@ dependencies = [ "quote", "serde", "strsim", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -3188,7 +3188,7 @@ checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" dependencies = [ "darling_core 0.20.11", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -3199,7 +3199,7 @@ checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81" dependencies = [ "darling_core 0.21.3", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -3252,7 +3252,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8d162beedaa69905488a8da94f5ac3edb4dd4788b732fadb7bd120b2625c1976" dependencies = [ "data-encoding", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -3311,7 +3311,7 @@ checksum = "ef941ded77d15ca19b40374869ac6000af1c9f2a4c0f3d4c70926287e6364a8f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -3322,7 +3322,7 @@ checksum = "1e567bd82dcff979e4b03460c307b3cdc9e96fde3d73bed1496d2bc75d9dd62a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -3343,7 +3343,7 @@ dependencies = [ "darling 0.20.11", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -3353,29 +3353,29 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c" dependencies = [ "derive_builder_core", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] name = "derive_more" -version = "2.1.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10b768e943bed7bf2cab53df09f4bc34bfd217cdb57d971e769874c9a6710618" +checksum = "d751e9e49156b02b44f9c1815bcb94b984cdcc4396ecc32521c739452808b134" dependencies = [ "derive_more-impl", ] [[package]] name = "derive_more-impl" -version = "2.1.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d286bfdaf75e988b4a78e013ecd79c581e06399ab53fbacd2d916c2f904f30b" +checksum = "799a97264921d8623a957f6c3b9011f3b5492f557bbb7a5a19b7fa6d06ba8dcb" dependencies = [ "convert_case", "proc-macro2", "quote", "rustc_version 0.4.1", - "syn 2.0.111", + "syn 2.0.112", "unicode-xid", ] @@ -3495,7 +3495,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -3542,7 +3542,7 @@ checksum = "1ec431cd708430d5029356535259c5d645d60edd3d39c54e5eea9782d46caa7d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -3594,7 +3594,7 @@ dependencies = [ "enum-ordinalize", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -3664,7 +3664,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -3684,7 +3684,7 @@ checksum = "8ca9601fb2d62598ee17836250842873a413586e5d7ed88b356e38ddbb0ec631" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -3704,7 +3704,7 @@ checksum = "44f23cf4b44bfce11a86ace86f8a73ffdec849c9fd00a386a53d278bd9e81fb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -3780,7 +3780,7 @@ dependencies = [ "darling 0.20.11", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -4079,7 +4079,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -4130,16 +4130,17 @@ checksum = "42012b0f064e01aa58b545fe3727f90f7dd4020f4a3ea735b50344965f5a57e9" [[package]] name = "generator" -version = "0.8.7" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "605183a538e3e2a9c1038635cc5c2d194e2ee8fd0d1b66b8349fad7dbacce5a2" +checksum = "52f04ae4152da20c76fe800fa48659201d5cf627c5149ca0b707b69d7eef6cf9" dependencies = [ "cc", "cfg-if", "libc", "log", "rustversion", - "windows 0.61.3", + "windows-link", + "windows-result 0.4.1", ] [[package]] @@ -4878,7 +4879,7 @@ checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -4949,7 +4950,7 @@ dependencies = [ "async-trait", "aws-config", "aws-sdk-kms", - "axum 0.8.7", + "axum 0.8.8", "chrono", "eyre", "init4-from-env-derive", @@ -4985,7 +4986,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -5028,7 +5029,7 @@ dependencies = [ "indoc", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -5075,9 +5076,9 @@ checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" [[package]] name = "iri-string" -version = "0.7.9" +version = "0.7.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f867b9d1d896b67beb18518eda36fdb77a32ea590de864f1325b294a6d14397" +checksum = "c91338f0783edbd6195decb37bae672fd3b165faffb89bf7b9e6942f8b1a731a" dependencies = [ "memchr", "serde", @@ -5127,9 +5128,9 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.15" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" +checksum = "92ecc6618181def0457392ccd0ee51198e065e016d1d527a7ac1b6dc7c1f09d2" [[package]] name = "jni" @@ -5277,7 +5278,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -5451,7 +5452,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55" dependencies = [ "cfg-if", - "windows-link 0.2.1", + "windows-link", ] [[package]] @@ -5492,13 +5493,13 @@ dependencies = [ [[package]] name = "libredox" -version = "0.1.10" +version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "416f7e718bdb06000964960ffa43b4335ad4012ae8b99060261aa4a8088d5ccb" +checksum = "3d0b95e02c851351f877147b7deea7b1afb1df71b63aa5f8270716e0c5720616" dependencies = [ "bitflags 2.10.0", "libc", - "redox_syscall", + "redox_syscall 0.7.0", ] [[package]] @@ -5648,7 +5649,7 @@ checksum = "1b27834086c65ec3f9387b096d66e99f221cf081c2b738042aa252bcd41204e3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -5726,7 +5727,7 @@ dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -5895,9 +5896,9 @@ dependencies = [ [[package]] name = "moka" -version = "0.12.11" +version = "0.12.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8261cd88c312e0004c1d51baad2980c66528dfdb2bee62003e643a4d8f86b077" +checksum = "a3dec6bd31b08944e08b58fd99373893a6c17054d6f3ea5006cc894f4f4eee2a" dependencies = [ "crossbeam-channel", "crossbeam-epoch", @@ -5905,7 +5906,6 @@ dependencies = [ "equivalent", "parking_lot", "portable-atomic", - "rustc_version 0.4.1", "smallvec", "tagptr", "uuid", @@ -5967,7 +5967,7 @@ dependencies = [ "libc", "log", "openssl", - "openssl-probe", + "openssl-probe 0.1.6", "openssl-sys", "schannel", "security-framework 2.11.1", @@ -6011,9 +6011,9 @@ checksum = "5e0826a989adedc2a244799e823aece04662b66609d96af8dff7ac6df9a8925d" [[package]] name = "ntapi" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4" +checksum = "c70f219e21142367c70c0b30c6a9e3a14d55b4d12a204d897fbec83a0363f081" dependencies = [ "winapi", ] @@ -6137,7 +6137,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -6278,7 +6278,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -6287,6 +6287,12 @@ version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" +[[package]] +name = "openssl-probe" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f50d9b3dabb09ecd771ad0aa242ca6894994c130308ca3d7684634df8037391" + [[package]] name = "openssl-src" version = "300.5.4+3.5.4" @@ -6527,7 +6533,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -6554,9 +6560,9 @@ checksum = "2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1" dependencies = [ "cfg-if", "libc", - "redox_syscall", + "redox_syscall 0.5.18", "smallvec", - "windows-link 0.2.1", + "windows-link", ] [[package]] @@ -6642,7 +6648,7 @@ dependencies = [ "phf_shared", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -6671,7 +6677,7 @@ checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -6716,9 +6722,9 @@ dependencies = [ [[package]] name = "portable-atomic" -version = "1.11.1" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483" +checksum = "f89776e4d69bb58bc6993e99ffa1d11f228b839984854c7daeb5d37f87cbe950" [[package]] name = "potential_utf" @@ -6761,7 +6767,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b" dependencies = [ "proc-macro2", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -6790,7 +6796,7 @@ version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "219cb19e96be00ab2e37d6e299658a0cfa83e52429179969b0f0121b4ac46983" dependencies = [ - "toml_edit 0.23.9", + "toml_edit 0.23.10+spec-1.0.0", ] [[package]] @@ -6812,14 +6818,14 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] name = "proc-macro2" -version = "1.0.103" +version = "1.0.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ee95bc4ef87b8d5ba32e8b7714ccc834865276eab0aed5c9958d00ec45f49e8" +checksum = "9695f8df41bb4f3d222c95a67532365f569318332d03d5f3f67f37b20e6ebdf0" dependencies = [ "unicode-ident", ] @@ -6846,7 +6852,7 @@ checksum = "25485360a54d6861439d60facef26de713b1e126bf015ec8f98239467a2b82f7" dependencies = [ "bitflags 2.10.0", "procfs-core 0.18.0", - "rustix 1.1.2", + "rustix 1.1.3", ] [[package]] @@ -6897,7 +6903,7 @@ checksum = "4ee1c9ac207483d5e7db4940700de86a9aae46ef90c48b57f99fe7edb8345e49" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -6908,7 +6914,7 @@ checksum = "095a99f75c69734802359b682be8daaf8980296731f6470434ea2c652af1dd30" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -6941,7 +6947,7 @@ dependencies = [ "itertools 0.14.0", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -6954,7 +6960,7 @@ dependencies = [ "itertools 0.14.0", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -7154,6 +7160,16 @@ dependencies = [ "rand_core 0.9.3", ] +[[package]] +name = "rapidhash" +version = "4.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2988730ee014541157f48ce4dcc603940e00915edc3c7f9a8d78092256bb2493" +dependencies = [ + "rand 0.9.2", + "rustversion", +] + [[package]] name = "ratatui" version = "0.29.0" @@ -7219,6 +7235,15 @@ dependencies = [ "bitflags 2.10.0", ] +[[package]] +name = "redox_syscall" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49f3fe0889e69e2ae9e41f4d6c4c0181701d00e4697b356fb1f74173a5e0ee27" +dependencies = [ + "bitflags 2.10.0", +] + [[package]] name = "redox_users" version = "0.4.6" @@ -7258,7 +7283,7 @@ checksum = "b7186006dcb21920990093f30e3dea63b7d6e977bf1256be20c3563a5db070da" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -7308,9 +7333,9 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.12.26" +version = "0.12.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b4c14b2d9afca6a60277086b0cc6a6ae0b568f6f7916c943a8cdc79f8be240f" +checksum = "eddd3ca559203180a307f12d114c268abf583f59b03cb906fd0b3ff8646c1147" dependencies = [ "base64 0.22.1", "bytes", @@ -7622,7 +7647,7 @@ source = "git+https://github.com/paradigmxyz/reth?tag=v1.9.1#3afe69a5738459a7cb5 dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -8166,7 +8191,7 @@ dependencies = [ "alloy-chains", "alloy-consensus", "alloy-eips", - "alloy-hardforks 0.4.5", + "alloy-hardforks 0.4.7", "alloy-primitives", "alloy-rlp", "bytes", @@ -8243,7 +8268,7 @@ version = "1.9.1" source = "git+https://github.com/paradigmxyz/reth?tag=v1.9.1#3afe69a5738459a7cb5f46c598c7f541a1510f32" dependencies = [ "alloy-eip2124", - "alloy-hardforks 0.4.5", + "alloy-hardforks 0.4.7", "alloy-primitives", "auto_impl", "once_cell", @@ -10189,22 +10214,19 @@ dependencies = [ [[package]] name = "rmp" -version = "0.8.14" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "228ed7c16fa39782c3b3468e974aec2795e9089153cd08ee2e9aefb3613334c4" +checksum = "4ba8be72d372b2c9b35542551678538b562e7cf86c3315773cae48dfbfe7790c" dependencies = [ - "byteorder", "num-traits", - "paste", ] [[package]] name = "rmp-serde" -version = "1.3.0" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52e599a477cf9840e92f2cde9a7189e67b42c57532749bf90aea6ec10facd4db" +checksum = "72f81bee8c8ef9b577d1681a70ebbc962c232461e397b22c208c43c04b67a155" dependencies = [ - "byteorder", "rmp", "serde", ] @@ -10248,9 +10270,9 @@ dependencies = [ [[package]] name = "ruint" -version = "1.17.0" +version = "1.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a68df0380e5c9d20ce49534f292a36a7514ae21350726efe1865bdb1fa91d278" +checksum = "c141e807189ad38a07276942c6623032d3753c8859c146104ac2e4d68865945a" dependencies = [ "alloy-rlp", "arbitrary", @@ -10344,9 +10366,9 @@ dependencies = [ [[package]] name = "rustix" -version = "1.1.2" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd15f8a2c5551a84d56efdc1cd049089e409ac19a3072d5037a17fd70719ff3e" +checksum = "146c9e247ccc180c1f61615433868c99f3de3ae256a30a43b49f67c2d9171f34" dependencies = [ "bitflags 2.10.0", "errno", @@ -10385,11 +10407,11 @@ dependencies = [ [[package]] name = "rustls-native-certs" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9980d917ebb0c0536119ba501e90834767bffc3d60641457fd84a1f3fd337923" +checksum = "612460d5f7bea540c490b2b6395d8e34a953e52b491accd6c86c8164c5932a63" dependencies = [ - "openssl-probe", + "openssl-probe 0.2.0", "rustls-pki-types", "schannel", "security-framework 3.5.1", @@ -10397,9 +10419,9 @@ dependencies = [ [[package]] name = "rustls-pki-types" -version = "1.13.1" +version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "708c0f9d5f54ba0272468c1d306a52c495b31fa155e91bc25371e6df7996908c" +checksum = "21e6f2ab2928ca4291b86736a8bd920a277a399bba1589409d72154ff87c1282" dependencies = [ "web-time", "zeroize", @@ -10474,9 +10496,9 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.20" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" +checksum = "a50f4cf475b65d88e057964e0e9bb1f0aa9bbb2036dc65c64596b42932536984" [[package]] name = "ryu-js" @@ -10516,9 +10538,9 @@ dependencies = [ [[package]] name = "schemars" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9558e172d4e8533736ba97870c4b2cd63f84b382a3d6eb063da41b91cce17289" +checksum = "54e910108742c57a770f492731f99be216a52fadd361b06c8fb59d74ccc267d2" dependencies = [ "dyn-clone", "ref-cast", @@ -10733,21 +10755,21 @@ checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] name = "serde_json" -version = "1.0.145" +version = "1.0.148" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c" +checksum = "3084b546a1dd6289475996f182a22aba973866ea8e8b02c51d9f46b1336a22da" dependencies = [ "indexmap 2.12.1", "itoa", "memchr", - "ryu", "serde", "serde_core", + "zmij", ] [[package]] @@ -10794,7 +10816,7 @@ dependencies = [ "indexmap 1.9.3", "indexmap 2.12.1", "schemars 0.9.0", - "schemars 1.1.0", + "schemars 1.2.0", "serde_core", "serde_json", "serde_with_macros", @@ -10810,7 +10832,7 @@ dependencies = [ "darling 0.21.3", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -10912,10 +10934,11 @@ dependencies = [ [[package]] name = "signal-hook-registry" -version = "1.4.7" +version = "1.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7664a098b8e616bdfcc2dc0e9ac44eb231eedf41db4e9fe95d8d32ec728dedad" +checksum = "c4db69cba1110affc0e9f7bcd48bbf87b3f4fc7c61fc9155afd4c469eb3d6c1b" dependencies = [ + "errno", "libc", ] @@ -10978,9 +11001,9 @@ dependencies = [ [[package]] name = "signet-bundle" -version = "0.16.0-rc.2" +version = "0.16.0-rc.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e7d8f75a65c722e770cf1ab5c1e1f9e4a9c8ec0b76a5f2d1e91ef2ea692ed7c" +checksum = "798ab2a1c26956850724cc634a5c2d4b7cad26357e0c04fd8fb14550a9a7925d" dependencies = [ "alloy", "serde", @@ -10993,9 +11016,9 @@ dependencies = [ [[package]] name = "signet-constants" -version = "0.16.0-rc.2" +version = "0.16.0-rc.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "400b78415e974a152264ae25043a4b43acf26395f5c2baa4a95e779216b11bab" +checksum = "e8bca806e04425b23a9be93d67b0e77c7b0f1651e5e606608670e2949ecaf7ac" dependencies = [ "alloy", "serde", @@ -11028,9 +11051,9 @@ dependencies = [ [[package]] name = "signet-evm" -version = "0.16.0-rc.2" +version = "0.16.0-rc.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fc7e39afb0290915b56fae7d22dc5941604b3cd8e81acfe3ecbe1a42dac7044" +checksum = "e25ebd544a36b448fcff1dac4423aeaf418ed6915c80a3e7fdbda55dc1224b2d" dependencies = [ "alloy", "signet-extract", @@ -11044,9 +11067,9 @@ dependencies = [ [[package]] name = "signet-extract" -version = "0.16.0-rc.2" +version = "0.16.0-rc.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cbf1e96ad1e7fe20226f8bb496c590f2048ef7b8028732d53ce3cfe26fb2e438" +checksum = "7633b8197dbc66bd5ccedaffff64b8b30ee674ecc2dca99bf267e5e6853a7d94" dependencies = [ "alloy", "signet-types", @@ -11069,9 +11092,9 @@ dependencies = [ [[package]] name = "signet-journal" -version = "0.16.0-rc.2" +version = "0.16.0-rc.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f2a4e7d6808f534f8e922e1f6589c4f5fc13630f72a1aba6b8598f6b2b8465b" +checksum = "d660692d92ba4e5da457506e5db70a3682c0bb9bc7bae009e9d2ecaa63ba5b17" dependencies = [ "alloy", "futures-util", @@ -11097,9 +11120,9 @@ dependencies = [ [[package]] name = "signet-sim" -version = "0.16.0-rc.2" +version = "0.16.0-rc.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4879db028badb035d290ebfc4289fc6d82b1cdf95fa3fccac128468e9122d53f" +checksum = "66d3e51af0d15d43cc44960ccdb90074231001f8ca17f53f2160ab9bcf9102f2" dependencies = [ "alloy", "parking_lot", @@ -11115,9 +11138,9 @@ dependencies = [ [[package]] name = "signet-tx-cache" -version = "0.16.0-rc.2" +version = "0.16.0-rc.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1317f058cea863c441f9a3f0cfbb035b95e6906f7c6326b2268a1c644a53b2af" +checksum = "97edbbb9cbdc0a6dec53ff152070044772634465801688edec1703abbc5ed150" dependencies = [ "alloy", "eyre", @@ -11132,9 +11155,9 @@ dependencies = [ [[package]] name = "signet-types" -version = "0.16.0-rc.2" +version = "0.16.0-rc.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b6ec867caa3f75393afee4c37653dc8b004754bfde931ed84923bff6d899913" +checksum = "afecc04b772c6383df1867789c0feb542c7628043a131ddd51462fcb283ad70c" dependencies = [ "alloy", "chrono", @@ -11146,9 +11169,9 @@ dependencies = [ [[package]] name = "signet-zenith" -version = "0.16.0-rc.2" +version = "0.16.0-rc.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2fc53981adbd064967608180ab4ea012bf099a79ff06f1a393c0005fc142235" +checksum = "e67c6142536277fbf00375269eed8b764cc00d4c87551afe57921745b5dc6e3a" dependencies = [ "alloy", "alloy-core", @@ -11330,7 +11353,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -11342,7 +11365,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -11364,9 +11387,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.111" +version = "2.0.112" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "390cc9a294ab71bdb1aa2e99d13be9c753cd2d7bd6560c77118597410c4d2e87" +checksum = "21f182278bf2d2bcb3c88b1b08a37df029d71ce3d3ae26168e3c653b213b99d4" dependencies = [ "proc-macro2", "quote", @@ -11375,14 +11398,14 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "1.4.1" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff790eb176cc81bb8936aed0f7b9f14fc4670069a2d371b3e3b0ecce908b2cb3" +checksum = "5f92d01b5de07eaf324f7fca61cc6bd3d82bbc1de5b6c963e6fe79e86f36580d" dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -11402,7 +11425,7 @@ checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -11470,14 +11493,14 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.23.0" +version = "3.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d31c77bdf42a745371d260a26ca7163f1e0924b64afa0b688e61b5a9fa02f16" +checksum = "655da9c7eb6305c55742045d5a8d2037996d61d8de95806335c7c86ce0f82e9c" dependencies = [ "fastrand", "getrandom 0.3.4", "once_cell", - "rustix 1.1.2", + "rustix 1.1.3", "windows-sys 0.61.2", ] @@ -11513,7 +11536,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -11524,7 +11547,7 @@ checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -11670,7 +11693,7 @@ checksum = "af407857209536a95c8e56f8231ef2c2e2aff839b22e07a1ffcbc617e9db9fa5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -11770,9 +11793,9 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "0.7.3" +version = "0.7.5+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2cdb639ebbc97961c51720f858597f7f24c4fc295327923af55b74c3c724533" +checksum = "92e1cfed4a3038bc5a127e35a2d360f145e1f4b971b551a2ba5fd7aedf7e1347" dependencies = [ "serde_core", ] @@ -11793,21 +11816,21 @@ dependencies = [ [[package]] name = "toml_edit" -version = "0.23.9" +version = "0.23.10+spec-1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d7cbc3b4b49633d57a0509303158ca50de80ae32c265093b24c414705807832" +checksum = "84c8b9f757e028cee9fa244aea147aab2a9ec09d5325a9b01e0a49730c2b5269" dependencies = [ "indexmap 2.12.1", - "toml_datetime 0.7.3", + "toml_datetime 0.7.5+spec-1.1.0", "toml_parser", "winnow", ] [[package]] name = "toml_parser" -version = "1.0.4" +version = "1.0.6+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0cbe268d35bdb4bb5a56a2de88d0ad0eb70af5384a99d648cd4b3d04039800e" +checksum = "a3198b4b0a8e11f09dd03e133c0280504d0801269e9afa46362ffde1cbeebf44" dependencies = [ "winnow", ] @@ -11941,9 +11964,9 @@ checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" [[package]] name = "tracing" -version = "0.1.43" +version = "0.1.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d15d90a0b5c19378952d479dc858407149d7bb45a14de0142f6c534b16fc647" +checksum = "63e71662fa4b2a2c3a26f570f037eb95bb1f85397f3cd8076caed2f026a6d100" dependencies = [ "log", "pin-project-lite", @@ -11971,14 +11994,14 @@ checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] name = "tracing-core" -version = "0.1.35" +version = "0.1.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a04e24fab5c89c6a36eb8558c9656f30d81de51dfa4d3b45f26b21d61fa0a6c" +checksum = "db97caf9d906fbde555dd62fa95ddba9eecfd14cb388e4f491a66d74cd5fb79a" dependencies = [ "once_cell", "valuable", @@ -12127,7 +12150,7 @@ dependencies = [ "darling 0.20.11", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -12493,7 +12516,7 @@ dependencies = [ "bumpalo", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", "wasm-bindgen-shared", ] @@ -12648,38 +12671,16 @@ dependencies = [ "windows-targets 0.52.6", ] -[[package]] -name = "windows" -version = "0.61.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9babd3a767a4c1aef6900409f85f5d53ce2544ccdfaa86dad48c91782c6d6893" -dependencies = [ - "windows-collections 0.2.0", - "windows-core 0.61.2", - "windows-future 0.2.1", - "windows-link 0.1.3", - "windows-numerics 0.2.0", -] - [[package]] name = "windows" version = "0.62.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "527fadee13e0c05939a6a05d5bd6eec6cd2e3dbd648b9f8e447c6518133d8580" dependencies = [ - "windows-collections 0.3.2", + "windows-collections", "windows-core 0.62.2", - "windows-future 0.3.2", - "windows-numerics 0.3.1", -] - -[[package]] -name = "windows-collections" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3beeceb5e5cfd9eb1d76b381630e82c4241ccd0d27f1a39ed41b2760b255c5e8" -dependencies = [ - "windows-core 0.61.2", + "windows-future", + "windows-numerics", ] [[package]] @@ -12703,19 +12704,6 @@ dependencies = [ "windows-targets 0.52.6", ] -[[package]] -name = "windows-core" -version = "0.61.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0fdd3ddb90610c7638aa2b3a3ab2904fb9e5cdbecc643ddb3647212781c4ae3" -dependencies = [ - "windows-implement 0.60.2", - "windows-interface 0.59.3", - "windows-link 0.1.3", - "windows-result 0.3.4", - "windows-strings 0.4.2", -] - [[package]] name = "windows-core" version = "0.62.2" @@ -12724,20 +12712,9 @@ checksum = "b8e83a14d34d0623b51dce9581199302a221863196a1dde71a7663a4c2be9deb" dependencies = [ "windows-implement 0.60.2", "windows-interface 0.59.3", - "windows-link 0.2.1", + "windows-link", "windows-result 0.4.1", - "windows-strings 0.5.1", -] - -[[package]] -name = "windows-future" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc6a41e98427b19fe4b73c550f060b59fa592d7d686537eebf9385621bfbad8e" -dependencies = [ - "windows-core 0.61.2", - "windows-link 0.1.3", - "windows-threading 0.1.0", + "windows-strings", ] [[package]] @@ -12747,8 +12724,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e1d6f90251fe18a279739e78025bd6ddc52a7e22f921070ccdc67dde84c605cb" dependencies = [ "windows-core 0.62.2", - "windows-link 0.2.1", - "windows-threading 0.2.1", + "windows-link", + "windows-threading", ] [[package]] @@ -12759,7 +12736,7 @@ checksum = "9107ddc059d5b6fbfbffdfa7a7fe3e22a226def0b2608f72e9d552763d3e1ad7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -12770,7 +12747,7 @@ checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -12781,7 +12758,7 @@ checksum = "29bee4b38ea3cde66011baa44dba677c432a78593e202392d1e9070cf2a7fca7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -12792,31 +12769,15 @@ checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] -[[package]] -name = "windows-link" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" - [[package]] name = "windows-link" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" -[[package]] -name = "windows-numerics" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9150af68066c4c5c07ddc0ce30421554771e528bde427614c61038bc2c92c2b1" -dependencies = [ - "windows-core 0.61.2", - "windows-link 0.1.3", -] - [[package]] name = "windows-numerics" version = "0.3.1" @@ -12824,7 +12785,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6e2e40844ac143cdb44aead537bbf727de9b044e107a0f1220392177d15b0f26" dependencies = [ "windows-core 0.62.2", - "windows-link 0.2.1", + "windows-link", ] [[package]] @@ -12833,9 +12794,9 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "02752bf7fbdcce7f2a27a742f798510f3e5ad88dbe84871e5168e2120c3d5720" dependencies = [ - "windows-link 0.2.1", + "windows-link", "windows-result 0.4.1", - "windows-strings 0.5.1", + "windows-strings", ] [[package]] @@ -12847,31 +12808,13 @@ dependencies = [ "windows-targets 0.52.6", ] -[[package]] -name = "windows-result" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6" -dependencies = [ - "windows-link 0.1.3", -] - [[package]] name = "windows-result" version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5" dependencies = [ - "windows-link 0.2.1", -] - -[[package]] -name = "windows-strings" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57" -dependencies = [ - "windows-link 0.1.3", + "windows-link", ] [[package]] @@ -12880,7 +12823,7 @@ version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091" dependencies = [ - "windows-link 0.2.1", + "windows-link", ] [[package]] @@ -12934,7 +12877,7 @@ version = "0.61.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" dependencies = [ - "windows-link 0.2.1", + "windows-link", ] [[package]] @@ -12989,7 +12932,7 @@ version = "0.53.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3" dependencies = [ - "windows-link 0.2.1", + "windows-link", "windows_aarch64_gnullvm 0.53.1", "windows_aarch64_msvc 0.53.1", "windows_i686_gnu 0.53.1", @@ -13000,22 +12943,13 @@ dependencies = [ "windows_x86_64_msvc 0.53.1", ] -[[package]] -name = "windows-threading" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b66463ad2e0ea3bbf808b7f1d371311c80e115c0b71d60efc142cafbcfb057a6" -dependencies = [ - "windows-link 0.1.3", -] - [[package]] name = "windows-threading" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3949bd5b99cafdf1c7ca86b43ca564028dfe27d66958f2470940f73d86d75b37" dependencies = [ - "windows-link 0.2.1", + "windows-link", ] [[package]] @@ -13270,7 +13204,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32e45ad4206f6d2479085147f02bc2ef834ac85886624a23575ae137c8aa8156" dependencies = [ "libc", - "rustix 1.1.2", + "rustix 1.1.3", ] [[package]] @@ -13310,7 +13244,7 @@ checksum = "b659052874eb698efe5b9e8cf382204678a0086ebf46982b79d6ca3182927e5d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", "synstructure", ] @@ -13331,7 +13265,7 @@ checksum = "d8a8d209fdf45cf5138cbb5a506f6b52522a25afccc534d1475dad8e31105c6a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -13351,7 +13285,7 @@ checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", "synstructure", ] @@ -13366,13 +13300,13 @@ dependencies = [ [[package]] name = "zeroize_derive" -version = "1.4.2" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" +checksum = "85a5b4158499876c763cb03bc4e49185d3cccbabb15b33c627f7884f43db852e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] [[package]] @@ -13406,9 +13340,15 @@ checksum = "eadce39539ca5cb3985590102671f2567e659fca9666581ad3411d59207951f3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.112", ] +[[package]] +name = "zmij" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77cc0158b0d3103d58e9e82bdbe9cf9289d80dbcf4e686ff16730eb9e5814d1a" + [[package]] name = "zstd" version = "0.13.3" diff --git a/src/tasks/env.rs b/src/tasks/env.rs index 372b2c4..2d65397 100644 --- a/src/tasks/env.rs +++ b/src/tasks/env.rs @@ -276,26 +276,7 @@ impl EnvTask { drop(span); - // This span will be updated at the end of each loop iteration. - let mut span = info_span!( - parent: None, - "SimEnv", - confirmed.host.number = "initial", - confirmed.ru.number = "initial", - confirmed.ru.hash = "initial", - confirmed.timestamp = 0, - confirmed.slot = 0, - sim.host.number = "initial", - sim.ru.number = "initial", - sim.slot = 0, - trace_id = tracing::field::Empty, - ); - - while let Some(rollup_header) = rollup_headers - .next() - .instrument(info_span!(parent: &span, "waiting_for_notification")) - .await - { + while let Some(rollup_header) = rollup_headers.next().await { let host_block_number = self.config.constants.rollup_block_to_host_block_num(rollup_header.number); let rollup_block_number = rollup_header.number; @@ -306,17 +287,23 @@ impl EnvTask { .expect("valid timestamp"); let sim_slot = self.config.slot_calculator.current_slot().expect("chain has started"); - // Populate span fields. + // Create a `SimEnv` span + let span = info_span!( + parent: None, + "SimEnv", + confirmed.host.number = host_block_number, + confirmed.host.hash = tracing::field::Empty, + confirmed.ru.number = rollup_block_number, + confirmed.ru.hash = %rollup_header.hash, + confirmed.timestamp = rollup_header.timestamp, + confirmed.slot = confirmed_slot, + sim.host.number = host_block_number + 1, + sim.ru.number = rollup_block_number + 1, + sim.slot = sim_slot, + trace_id = tracing::field::Empty, + ); // Ensure that we record the OpenTelemetry trace ID in the span. span.record("trace_id", span.context().span().span_context().trace_id().to_string()); - span.record("confirmed.host.number", host_block_number); - span.record("confirmed.ru.number", rollup_block_number); - span.record("confirmed.ru.hash", rollup_header.hash.to_string()); - span.record("confirmed.timestamp", rollup_header.timestamp); - span.record("confirmed.slot", confirmed_slot); - span.record("sim.slot", sim_slot); - span.record("sim.host.number", host_block_number + 1); - span.record("sim.ru.number", rollup_block_number + 1); let (host_block_res, quincey_res) = tokio::join!( self.host_provider @@ -389,20 +376,6 @@ impl EnvTask { tracing::debug!("receiver dropped, stopping task"); break; } - - // Create a new span for the next iteration. - span = info_span!( - "SimEnv", - confirmed.host.number = host_block_number + 1, - confirmed.ru.number = rollup_block_number + 1, - confirmed.ru.hash = tracing::field::Empty, - confirmed.timestamp = tracing::field::Empty, - confirmed.slot = tracing::field::Empty, - sim.host.number = host_block_number + 2, - sim.ru.number = rollup_block_number + 2, - sim.slot = tracing::field::Empty, - trace_id = tracing::field::Empty, - ); } } From 74eaa720c54479d881a43ce9b38a61364a763a4c Mon Sep 17 00:00:00 2001 From: James Date: Tue, 30 Dec 2025 17:01:06 -0500 Subject: [PATCH 3/4] chore; builder init span --- Cargo.lock | 44 ++++++++++++++++++++++---------------------- bin/builder.rs | 3 ++- 2 files changed, 24 insertions(+), 23 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index aaffa23..70e1440 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4942,9 +4942,9 @@ dependencies = [ [[package]] name = "init4-bin-base" -version = "0.18.0-rc.1" +version = "0.18.0-rc.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7024fa2e5ac11f6c6230f37fbb527264896653e5b7804695b08d8ffb4f2712f5" +checksum = "e854bc4e02dc08a6ae5a10282f8ac5cc2433449027bfa7f772860ae81a8b3602" dependencies = [ "alloy", "async-trait", @@ -4952,7 +4952,6 @@ dependencies = [ "aws-sdk-kms", "axum 0.8.8", "chrono", - "eyre", "init4-from-env-derive", "metrics", "metrics-exporter-prometheus 0.18.1", @@ -11001,9 +11000,9 @@ dependencies = [ [[package]] name = "signet-bundle" -version = "0.16.0-rc.3" +version = "0.16.0-rc.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "798ab2a1c26956850724cc634a5c2d4b7cad26357e0c04fd8fb14550a9a7925d" +checksum = "ee7441b4a14a8223444fc7095cb2076b99da955b3f6a0aef8c1cd322744b42e3" dependencies = [ "alloy", "serde", @@ -11016,9 +11015,9 @@ dependencies = [ [[package]] name = "signet-constants" -version = "0.16.0-rc.3" +version = "0.16.0-rc.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8bca806e04425b23a9be93d67b0e77c7b0f1651e5e606608670e2949ecaf7ac" +checksum = "3be087eaa5bb90faf4daaf707441061a09bfc6ca24f1eb3cc0886d46186f19a7" dependencies = [ "alloy", "serde", @@ -11051,9 +11050,9 @@ dependencies = [ [[package]] name = "signet-evm" -version = "0.16.0-rc.3" +version = "0.16.0-rc.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e25ebd544a36b448fcff1dac4423aeaf418ed6915c80a3e7fdbda55dc1224b2d" +checksum = "f519eb8ef2764735884a2ad3e408b4f04da9af5d8f2d12d0c7ce9a783bae1c8f" dependencies = [ "alloy", "signet-extract", @@ -11067,9 +11066,9 @@ dependencies = [ [[package]] name = "signet-extract" -version = "0.16.0-rc.3" +version = "0.16.0-rc.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7633b8197dbc66bd5ccedaffff64b8b30ee674ecc2dca99bf267e5e6853a7d94" +checksum = "f4d2c3c2b7f6f5f4ac1784b5717ed38189210fe9d5d1dc707d129dbd976f56e5" dependencies = [ "alloy", "signet-types", @@ -11092,9 +11091,9 @@ dependencies = [ [[package]] name = "signet-journal" -version = "0.16.0-rc.3" +version = "0.16.0-rc.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d660692d92ba4e5da457506e5db70a3682c0bb9bc7bae009e9d2ecaa63ba5b17" +checksum = "ebe8679f251b3d7e351e84eedd59e4cf7ba69efec8db5c0368ab1bbb0372dbb5" dependencies = [ "alloy", "futures-util", @@ -11120,9 +11119,9 @@ dependencies = [ [[package]] name = "signet-sim" -version = "0.16.0-rc.3" +version = "0.16.0-rc.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66d3e51af0d15d43cc44960ccdb90074231001f8ca17f53f2160ab9bcf9102f2" +checksum = "6e60b93af24681df12d01f2b93c9f38ff22fb6478328fdd9ec223dd8cfeae5fa" dependencies = [ "alloy", "parking_lot", @@ -11138,26 +11137,27 @@ dependencies = [ [[package]] name = "signet-tx-cache" -version = "0.16.0-rc.3" +version = "0.16.0-rc.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97edbbb9cbdc0a6dec53ff152070044772634465801688edec1703abbc5ed150" +checksum = "da1c4994a2ec8c7a9bcd7e5e010c3c77768dbe70df55f4bbea4cecbf582291a8" dependencies = [ "alloy", - "eyre", "reqwest", "serde", "signet-bundle", "signet-constants", "signet-types", + "thiserror 2.0.17", "tracing", + "url", "uuid", ] [[package]] name = "signet-types" -version = "0.16.0-rc.3" +version = "0.16.0-rc.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afecc04b772c6383df1867789c0feb542c7628043a131ddd51462fcb283ad70c" +checksum = "69f6a76ac7bde250d179f33809da995ad48ae7c680de9e8072ec250d4c719498" dependencies = [ "alloy", "chrono", @@ -11169,9 +11169,9 @@ dependencies = [ [[package]] name = "signet-zenith" -version = "0.16.0-rc.3" +version = "0.16.0-rc.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e67c6142536277fbf00375269eed8b764cc00d4c87551afe57921745b5dc6e3a" +checksum = "33e3a21eb4c250ca9ed6c5512da17f6024a12054ae291bc1b73ba8bfc5ad05c7" dependencies = [ "alloy", "alloy-core", diff --git a/bin/builder.rs b/bin/builder.rs index f8378d5..88a9e39 100644 --- a/bin/builder.rs +++ b/bin/builder.rs @@ -13,7 +13,8 @@ use tokio::select; #[tokio::main(flavor = "multi_thread")] async fn main() -> eyre::Result<()> { let _guard = init4_bin_base::init4(); - let init_span_guard = info_span!("builder initialization"); + let init_span_guard = info_span!("builder initialization").entered(); + builder::config_from_env(); // Set up env and metrics tasks From f585686e61bb5d55197473b5e88df46f5041d233 Mon Sep 17 00:00:00 2001 From: James Date: Tue, 30 Dec 2025 17:14:19 -0500 Subject: [PATCH 4/4] refactor: use new cache and quiet errors --- src/tasks/cache/bundle.rs | 71 +++++++++++++++++-------------------- src/tasks/env.rs | 19 +++++----- tests/bundle_poller_test.rs | 2 +- 3 files changed, 44 insertions(+), 48 deletions(-) diff --git a/src/tasks/cache/bundle.rs b/src/tasks/cache/bundle.rs index ab0ad24..f107999 100644 --- a/src/tasks/cache/bundle.rs +++ b/src/tasks/cache/bundle.rs @@ -1,14 +1,13 @@ //! Bundler service responsible for fetching bundles and sending them to the simulator. use crate::config::BuilderConfig; -use init4_bin_base::perms::SharedToken; -use reqwest::{Client, Url}; -use signet_tx_cache::types::{TxCacheBundle, TxCacheBundlesResponse}; +use init4_bin_base::perms::tx_cache::BuilderTxCache; +use signet_tx_cache::{TxCacheError, types::TxCacheBundle}; use tokio::{ sync::mpsc::{UnboundedReceiver, UnboundedSender, unbounded_channel}, task::JoinHandle, time::{self, Duration}, }; -use tracing::{Instrument, debug, error, trace, trace_span}; +use tracing::{Instrument, error, trace, trace_span}; /// Poll interval for the bundle poller in milliseconds. const POLL_INTERVAL_MS: u64 = 1000; @@ -18,10 +17,10 @@ const POLL_INTERVAL_MS: u64 = 1000; pub struct BundlePoller { /// The builder configuration values. config: &'static BuilderConfig, - /// Authentication module that periodically fetches and stores auth tokens. - token: SharedToken, - /// Holds a Reqwest client - client: Client, + + /// Client for the tx cache. + tx_cache: BuilderTxCache, + /// Defines the interval at which the bundler polls the tx-pool for bundles. poll_interval_ms: u64, } @@ -42,26 +41,9 @@ impl BundlePoller { /// Creates a new BundlePoller from the provided builder config and with the specified poll interval in ms. pub fn new_with_poll_interval_ms(poll_interval_ms: u64) -> Self { let config = crate::config(); - let token = config.oauth_token(); - Self { config, token, client: Client::new(), poll_interval_ms } - } - - /// Fetches bundles from the transaction cache and returns them. - pub async fn check_bundle_cache(&mut self) -> eyre::Result> { - let bundle_url: Url = self.config.tx_pool_url.join("bundles")?; - let token = - self.token.secret().await.map_err(|e| eyre::eyre!("Failed to read token: {e}"))?; - - self.client - .get(bundle_url) - .bearer_auth(token) - .send() - .await? - .error_for_status()? - .json() - .await - .map(|resp: TxCacheBundlesResponse| resp.bundles) - .map_err(Into::into) + let cache = signet_tx_cache::TxCache::new(config.tx_pool_url.clone()); + let tx_cache = BuilderTxCache::new(cache, config.oauth_token()); + Self { config, tx_cache, poll_interval_ms } } /// Returns the poll duration as a [`Duration`]. @@ -69,7 +51,27 @@ impl BundlePoller { Duration::from_millis(self.poll_interval_ms) } - async fn task_future(mut self, outbound: UnboundedSender) { + /// Checks the bundle cache for new bundles. + pub async fn check_bundle_cache(&self) -> Result, TxCacheError> { + let res = self.tx_cache.get_bundles().await; + + match res { + Ok(bundles) => { + trace!(count = ?bundles.len(), "found bundles"); + Ok(bundles) + } + Err(TxCacheError::NotOurSlot) => { + trace!("Not our slot to fetch bundles"); + Err(TxCacheError::NotOurSlot) + } + Err(err) => { + error!(?err, "Failed to fetch bundles from tx-cache"); + Err(err) + } + } + } + + async fn task_future(self, outbound: UnboundedSender) { loop { let span = trace_span!("BundlePoller::loop", url = %self.config.tx_pool_url); @@ -85,17 +87,10 @@ impl BundlePoller { // exit the span after the check. drop(_guard); - if let Ok(bundles) = self - .check_bundle_cache() - .instrument(span.clone()) - .await - .inspect_err(|err| debug!(%err, "Error fetching bundles")) - { - let _guard = span.entered(); - trace!(count = ?bundles.len(), "found bundles"); + if let Ok(bundles) = self.check_bundle_cache().instrument(span.clone()).await { for bundle in bundles.into_iter() { if let Err(err) = outbound.send(bundle) { - error!(err = ?err, "Failed to send bundle - channel is dropped"); + span_debug!(span, ?err, "Failed to send bundle - channel is dropped"); break; } } diff --git a/src/tasks/env.rs b/src/tasks/env.rs index 2d65397..b33939d 100644 --- a/src/tasks/env.rs +++ b/src/tasks/env.rs @@ -287,10 +287,10 @@ impl EnvTask { .expect("valid timestamp"); let sim_slot = self.config.slot_calculator.current_slot().expect("chain has started"); - // Create a `SimEnv` span + // Create a `BlockConstruction` span let span = info_span!( parent: None, - "SimEnv", + "BlockConstruction", confirmed.host.number = host_block_number, confirmed.host.hash = tracing::field::Empty, confirmed.ru.number = rollup_block_number, @@ -321,7 +321,7 @@ impl EnvTask { Err(QuinceyError::NotOurSlot) => { span_debug!( span, - "not our slot according to quincey - skipping block submission" + "not our slot according to quincey - skipping block construction" ); continue; } @@ -329,7 +329,7 @@ impl EnvTask { span_error!( span, %err, - "error during quincey preflight check - skipping block submission" + "error during quincey preflight check - skipping block construction" ); continue; } @@ -339,16 +339,17 @@ impl EnvTask { let host_block_opt = res_unwrap_or_continue!( host_block_res, span, - error!("error fetching previous host block - skipping block submission") + error!("error fetching previous host block - skipping block construction") ); let host_header = opt_unwrap_or_continue!( host_block_opt, span, - warn!("previous host block not found - skipping block submission") + warn!("previous host block not found - skipping block construction") ) - .header - .inner; + .header; + + span.record("confirmed.host.hash", host_header.hash.to_string()); if rollup_header.timestamp != host_header.timestamp { span_warn!( @@ -362,7 +363,7 @@ impl EnvTask { // Construct the block env using the previous block header let rollup_env = self.construct_rollup_env(rollup_header.into()); - let host_env = self.construct_host_env(host_header); + let host_env = self.construct_host_env(host_header.inner); span_info!( span, diff --git a/tests/bundle_poller_test.rs b/tests/bundle_poller_test.rs index c49ac8f..440e057 100644 --- a/tests/bundle_poller_test.rs +++ b/tests/bundle_poller_test.rs @@ -7,7 +7,7 @@ async fn test_bundle_poller_roundtrip() -> Result<()> { setup_logging(); setup_test_config(); - let mut bundle_poller = builder::tasks::cache::BundlePoller::new(); + let bundle_poller = builder::tasks::cache::BundlePoller::new(); let _ = bundle_poller.check_bundle_cache().await?;