From a00ba2ad7b9a7262affda5d071b704d48eacb0c1 Mon Sep 17 00:00:00 2001 From: Matthias Seitz Date: Fri, 5 May 2023 17:05:46 +0200 Subject: [PATCH] chore: dont panic on unsupported tag (#2578) --- crates/interfaces/src/provider.rs | 5 +++++ crates/storage/provider/src/traits/state.rs | 8 ++------ 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/crates/interfaces/src/provider.rs b/crates/interfaces/src/provider.rs index 54a5592efb..45c05a780c 100644 --- a/crates/interfaces/src/provider.rs +++ b/crates/interfaces/src/provider.rs @@ -92,4 +92,9 @@ pub enum ProviderError { /// Unable to compute state root on top of historical block #[error("Unable to compute state root on top of historical block")] StateRootNotAvailableForHistoricalBlock, + + #[error("Safe tag currently unsupported")] + SafeTagUnsupported, + #[error("Finalized tag currently unsupported")] + FinalizedTagUnsupported, } diff --git a/crates/storage/provider/src/traits/state.rs b/crates/storage/provider/src/traits/state.rs index 464b916a0a..00ffa2029b 100644 --- a/crates/storage/provider/src/traits/state.rs +++ b/crates/storage/provider/src/traits/state.rs @@ -115,12 +115,8 @@ pub trait StateProviderFactory: Send + Sync { ) -> Result> { match number_or_tag { BlockNumberOrTag::Latest => self.latest(), - BlockNumberOrTag::Finalized => { - todo!() - } - BlockNumberOrTag::Safe => { - todo!() - } + BlockNumberOrTag::Finalized => Err(ProviderError::FinalizedTagUnsupported.into()), + BlockNumberOrTag::Safe => Err(ProviderError::SafeTagUnsupported.into()), BlockNumberOrTag::Earliest => self.history_by_block_number(0), BlockNumberOrTag::Pending => self.pending(), BlockNumberOrTag::Number(num) => self.history_by_block_number(num),