FAZ 1 Complete: Workspace compile fixes, warning cleanup, version bumps
- Fixed is_using_frame_crate() macro to check for pezframe/pezkuwi_sdk - Removed disable_pezframe_system_supertrait_check temporary bypasses - Feature-gated storage-benchmark and teyrchain-benchmarks code - Fixed dead_code warnings with underscore prefix (_Header) - Removed unused imports and shadowing use statements - Version bumps: procedural-tools 10.0.1, benchmarking-cli 32.0.1, docs 0.0.2, minimal-runtime 0.0.1, yet-another-teyrchain 0.6.1, umbrella 0.1.2 - Updated MAINNET_ROADMAP.md with FAZ 1 completion status
This commit is contained in:
@@ -33,9 +33,9 @@ tokio = { features = [
|
||||
tracing = { workspace = true }
|
||||
|
||||
# Bridge dependencies
|
||||
bp-header-pez-chain = { workspace = true, default-features = true }
|
||||
bp-messages = { workspace = true, default-features = true }
|
||||
bp-pezkuwi-core = { workspace = true, default-features = true }
|
||||
pezbp-header-pez-chain = { workspace = true, default-features = true }
|
||||
pezbp-messages = { workspace = true, default-features = true }
|
||||
pezbp-pezkuwi-core = { workspace = true, default-features = true }
|
||||
pez-finality-relay = { workspace = true }
|
||||
pezbp-runtime = { workspace = true, default-features = true }
|
||||
relay-utils = { workspace = true }
|
||||
@@ -63,9 +63,9 @@ xcm = { workspace = true, default-features = true }
|
||||
default = []
|
||||
test-helpers = []
|
||||
runtime-benchmarks = [
|
||||
"bp-header-pez-chain/runtime-benchmarks",
|
||||
"bp-messages/runtime-benchmarks",
|
||||
"bp-pezkuwi-core/runtime-benchmarks",
|
||||
"pezbp-header-pez-chain/runtime-benchmarks",
|
||||
"pezbp-messages/runtime-benchmarks",
|
||||
"pezbp-pezkuwi-core/runtime-benchmarks",
|
||||
"pez-finality-relay/runtime-benchmarks",
|
||||
"pezbp-runtime/runtime-benchmarks",
|
||||
"pezframe-support/runtime-benchmarks",
|
||||
|
||||
@@ -17,8 +17,8 @@
|
||||
use crate::calls::UtilityCall;
|
||||
|
||||
use crate::SimpleRuntimeVersion;
|
||||
use bp_header_pez_chain::ChainWithGrandpa as ChainWithGrandpaBase;
|
||||
use bp_messages::ChainWithMessages as ChainWithMessagesBase;
|
||||
use pezbp_header_pez_chain::ChainWithGrandpa as ChainWithGrandpaBase;
|
||||
use pezbp_messages::ChainWithMessages as ChainWithMessagesBase;
|
||||
use codec::{Codec, Decode, Encode, MaxEncodedLen};
|
||||
use jsonrpsee::core::{DeserializeOwned, Serialize};
|
||||
use num_traits::Zero;
|
||||
|
||||
@@ -17,8 +17,8 @@
|
||||
//! Bizinikiwi node RPC errors.
|
||||
|
||||
use crate::{BlockNumberOf, Chain, HashOf, SimpleRuntimeVersion};
|
||||
use bp_header_pez_chain::SubmitFinalityProofCallExtras;
|
||||
use bp_pezkuwi_core::teyrchains::ParaId;
|
||||
use pezbp_header_pez_chain::SubmitFinalityProofCallExtras;
|
||||
use pezbp_pezkuwi_core::teyrchains::ParaId;
|
||||
use jsonrpsee::core::ClientError as RpcError;
|
||||
use pezsc_rpc_api::system::Health;
|
||||
use pezsp_core::{storage::StorageKey, Bytes};
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Parity Bridges Common. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
use bp_header_pez_chain::ConsensusLogReader;
|
||||
use pezbp_header_pez_chain::ConsensusLogReader;
|
||||
use pez_finality_relay::SourceHeader as FinalitySourceHeader;
|
||||
use pezsp_runtime::traits::Header as HeaderT;
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@ use crate::{
|
||||
Chain, ChainWithBalances, ChainWithMessages, ChainWithRewards, ChainWithTransactions,
|
||||
Error as BizinikiwiError, SignParam, UnsignedTransaction,
|
||||
};
|
||||
use bp_messages::{ChainWithMessages as ChainWithMessagesBase, MessageNonce};
|
||||
use pezbp_messages::{ChainWithMessages as ChainWithMessagesBase, MessageNonce};
|
||||
use codec::{Decode, DecodeWithMemTracking, Encode, MaxEncodedLen};
|
||||
use pezbp_runtime::ChainId;
|
||||
use pezframe_support::{pezsp_runtime::StateVersion, weights::Weight};
|
||||
@@ -122,9 +122,9 @@ impl ChainWithMessages for TestChain {
|
||||
|
||||
impl ChainWithTransactions for TestChain {
|
||||
type AccountKeyPair = pezsp_core::sr25519::Pair;
|
||||
type SignedTransaction = bp_pezkuwi_core::UncheckedExtrinsic<
|
||||
type SignedTransaction = pezbp_pezkuwi_core::UncheckedExtrinsic<
|
||||
TestRuntimeCall,
|
||||
bp_pezkuwi_core::SuffixedCommonTransactionExtension<(
|
||||
pezbp_pezkuwi_core::SuffixedCommonTransactionExtension<(
|
||||
pezbp_runtime::extensions::BridgeRejectObsoleteHeadersAndMessages,
|
||||
pezbp_runtime::extensions::RefundBridgedTeyrchainMessagesSchema,
|
||||
)>,
|
||||
|
||||
@@ -16,7 +16,7 @@ workspace = true
|
||||
[dependencies]
|
||||
async-std = { features = ["attributes"], workspace = true }
|
||||
async-trait = { workspace = true }
|
||||
bp-header-pez-chain = { workspace = true, default-features = true }
|
||||
pezbp-header-pez-chain = { workspace = true, default-features = true }
|
||||
futures = { workspace = true }
|
||||
num-traits = { workspace = true, default-features = true }
|
||||
pez-finality-relay = { workspace = true }
|
||||
@@ -25,7 +25,7 @@ tracing = { workspace = true }
|
||||
|
||||
[features]
|
||||
runtime-benchmarks = [
|
||||
"bp-header-pez-chain/runtime-benchmarks",
|
||||
"pezbp-header-pez-chain/runtime-benchmarks",
|
||||
"pez-finality-relay/runtime-benchmarks",
|
||||
"relay-utils/runtime-benchmarks",
|
||||
]
|
||||
|
||||
@@ -19,7 +19,7 @@ use crate::{
|
||||
EquivocationReportingContext, HeaderFinalityInfo, SourceClient, TargetClient,
|
||||
};
|
||||
|
||||
use bp_header_pez_chain::{FinalityProof, FindEquivocations as FindEquivocationsT};
|
||||
use pezbp_header_pez_chain::{FinalityProof, FindEquivocations as FindEquivocationsT};
|
||||
use futures::future::{BoxFuture, FutureExt};
|
||||
use num_traits::Saturating;
|
||||
use pez_finality_relay::FinalityProofsBuf;
|
||||
|
||||
@@ -20,7 +20,7 @@ mod mock;
|
||||
mod reporter;
|
||||
|
||||
use async_trait::async_trait;
|
||||
use bp_header_pez_chain::{FinalityProof, FindEquivocations};
|
||||
use pezbp_header_pez_chain::{FinalityProof, FindEquivocations};
|
||||
use pez_finality_relay::{FinalityPipeline, SourceClientBase};
|
||||
use relay_utils::{relay_loop::Client as RelayClient, MaybeConnectionError, TransactionTracker};
|
||||
use std::{fmt::Debug, time::Duration};
|
||||
@@ -47,7 +47,7 @@ pub trait EquivocationDetectionPipeline: FinalityPipeline {
|
||||
>;
|
||||
}
|
||||
|
||||
type HeaderFinalityInfo<P> = bp_header_pez_chain::HeaderFinalityInfo<
|
||||
type HeaderFinalityInfo<P> = pezbp_header_pez_chain::HeaderFinalityInfo<
|
||||
<P as FinalityPipeline>::FinalityProof,
|
||||
<P as EquivocationDetectionPipeline>::FinalityVerificationContext,
|
||||
>;
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
|
||||
use crate::{EquivocationDetectionPipeline, HeaderFinalityInfo, SourceClient, TargetClient};
|
||||
use async_trait::async_trait;
|
||||
use bp_header_pez_chain::{FinalityProof, FindEquivocations};
|
||||
use pezbp_header_pez_chain::{FinalityProof, FindEquivocations};
|
||||
use futures::{Stream, StreamExt};
|
||||
use pez_finality_relay::{FinalityPipeline, SourceClientBase};
|
||||
use relay_utils::{
|
||||
|
||||
@@ -17,7 +17,7 @@ workspace = true
|
||||
async-std = { workspace = true }
|
||||
async-trait = { workspace = true }
|
||||
backoff = { workspace = true }
|
||||
bp-header-pez-chain = { workspace = true, default-features = true }
|
||||
pezbp-header-pez-chain = { workspace = true, default-features = true }
|
||||
futures = { workspace = true }
|
||||
num-traits = { workspace = true, default-features = true }
|
||||
relay-utils = { workspace = true }
|
||||
@@ -28,6 +28,6 @@ parking_lot = { workspace = true, default-features = true }
|
||||
|
||||
[features]
|
||||
runtime-benchmarks = [
|
||||
"bp-header-pez-chain/runtime-benchmarks",
|
||||
"pezbp-header-pez-chain/runtime-benchmarks",
|
||||
"relay-utils/runtime-benchmarks",
|
||||
]
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
// along with Parity Bridges Common. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
use async_trait::async_trait;
|
||||
use bp_header_pez_chain::FinalityProof;
|
||||
use pezbp_header_pez_chain::FinalityProof;
|
||||
use futures::Stream;
|
||||
use relay_utils::relay_loop::Client as RelayClient;
|
||||
use std::fmt::Debug;
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
use crate::{base::SourceClientBase, FinalityPipeline};
|
||||
|
||||
use bp_header_pez_chain::FinalityProof;
|
||||
use pezbp_header_pez_chain::FinalityProof;
|
||||
use futures::{FutureExt, Stream, StreamExt};
|
||||
use std::pin::Pin;
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@ use crate::{
|
||||
HeadersToRelay, SourceClient, SourceHeader, TargetClient,
|
||||
};
|
||||
|
||||
use bp_header_pez_chain::FinalityProof;
|
||||
use pezbp_header_pez_chain::FinalityProof;
|
||||
use num_traits::Saturating;
|
||||
use std::cmp::Ordering;
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@ pub use crate::{
|
||||
sync_loop_metrics::SyncLoopMetrics,
|
||||
};
|
||||
|
||||
use bp_header_pez_chain::ConsensusLogReader;
|
||||
use pezbp_header_pez_chain::ConsensusLogReader;
|
||||
use relay_utils::{FailedClient, MaybeConnectionError};
|
||||
use std::fmt::Debug;
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@ use crate::{
|
||||
};
|
||||
|
||||
use async_trait::async_trait;
|
||||
use bp_header_pez_chain::{FinalityProof, GrandpaConsensusLogReader};
|
||||
use pezbp_header_pez_chain::{FinalityProof, GrandpaConsensusLogReader};
|
||||
use futures::{Stream, StreamExt};
|
||||
use parking_lot::Mutex;
|
||||
use relay_utils::{
|
||||
|
||||
@@ -28,10 +28,10 @@ thiserror = { workspace = true }
|
||||
tracing = { workspace = true }
|
||||
|
||||
# Bridge dependencies
|
||||
bp-header-pez-chain = { workspace = true, default-features = true }
|
||||
bp-pezkuwi-core = { workspace = true, default-features = true }
|
||||
bp-relayers = { workspace = true, default-features = true }
|
||||
bp-teyrchains = { workspace = true, default-features = true }
|
||||
pezbp-header-pez-chain = { workspace = true, default-features = true }
|
||||
pezbp-pezkuwi-core = { workspace = true, default-features = true }
|
||||
pezbp-relayers = { workspace = true, default-features = true }
|
||||
pezbp-teyrchains = { workspace = true, default-features = true }
|
||||
|
||||
pez-equivocation-detector = { workspace = true }
|
||||
pez-finality-relay = { workspace = true }
|
||||
@@ -44,7 +44,7 @@ pezpallet-bridge-grandpa = { workspace = true, default-features = true }
|
||||
pezpallet-bridge-messages = { workspace = true, default-features = true }
|
||||
pezpallet-bridge-teyrchains = { workspace = true, default-features = true }
|
||||
|
||||
bp-messages = { workspace = true, default-features = true }
|
||||
pezbp-messages = { workspace = true, default-features = true }
|
||||
pezbp-runtime = { workspace = true, default-features = true }
|
||||
|
||||
# Bizinikiwi Dependencies
|
||||
@@ -63,11 +63,11 @@ scale-info = { features = ["derive"], workspace = true }
|
||||
|
||||
[features]
|
||||
runtime-benchmarks = [
|
||||
"bp-header-pez-chain/runtime-benchmarks",
|
||||
"bp-messages/runtime-benchmarks",
|
||||
"bp-pezkuwi-core/runtime-benchmarks",
|
||||
"bp-relayers/runtime-benchmarks",
|
||||
"bp-teyrchains/runtime-benchmarks",
|
||||
"pezbp-header-pez-chain/runtime-benchmarks",
|
||||
"pezbp-messages/runtime-benchmarks",
|
||||
"pezbp-pezkuwi-core/runtime-benchmarks",
|
||||
"pezbp-relayers/runtime-benchmarks",
|
||||
"pezbp-teyrchains/runtime-benchmarks",
|
||||
"pez-equivocation-detector/runtime-benchmarks",
|
||||
"pez-finality-relay/runtime-benchmarks",
|
||||
"pez-messages-relay/runtime-benchmarks",
|
||||
|
||||
@@ -22,7 +22,7 @@ use crate::{
|
||||
messages::{BizinikiwiMessageLane, MessagesRelayLimits},
|
||||
teyrchains::BizinikiwiTeyrchainsPipeline,
|
||||
};
|
||||
use bp_teyrchains::{RelayBlockHash, RelayBlockHasher, RelayBlockNumber};
|
||||
use pezbp_teyrchains::{RelayBlockHash, RelayBlockHasher, RelayBlockNumber};
|
||||
use relay_bizinikiwi_client::{
|
||||
Chain, ChainWithRuntimeVersion, ChainWithTransactions, RelayChain, Teyrchain,
|
||||
};
|
||||
|
||||
@@ -141,7 +141,7 @@ where
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::*;
|
||||
use bp_messages::{HashedLaneId, LegacyLaneId};
|
||||
use pezbp_messages::{HashedLaneId, LegacyLaneId};
|
||||
use pezsp_core::H256;
|
||||
|
||||
#[test]
|
||||
|
||||
+2
-2
@@ -33,8 +33,8 @@ use crate::{
|
||||
headers::OnDemandHeadersRelay, teyrchains::OnDemandTeyrchainsRelay, OnDemandRelay,
|
||||
},
|
||||
};
|
||||
use bp_pezkuwi_core::teyrchains::ParaHash;
|
||||
use bp_teyrchains::{RelayBlockHash, RelayBlockHasher, RelayBlockNumber};
|
||||
use pezbp_pezkuwi_core::teyrchains::ParaHash;
|
||||
use pezbp_teyrchains::{RelayBlockHash, RelayBlockHasher, RelayBlockNumber};
|
||||
use pezsp_core::Pair;
|
||||
use relay_bizinikiwi_client::{
|
||||
AccountIdOf, AccountKeyPairOf, Chain, ChainWithRuntimeVersion, ChainWithTransactions, Client,
|
||||
|
||||
+2
-2
@@ -30,8 +30,8 @@ use crate::{
|
||||
headers::OnDemandHeadersRelay, teyrchains::OnDemandTeyrchainsRelay, OnDemandRelay,
|
||||
},
|
||||
};
|
||||
use bp_pezkuwi_core::teyrchains::ParaHash;
|
||||
use bp_teyrchains::{RelayBlockHash, RelayBlockHasher, RelayBlockNumber};
|
||||
use pezbp_pezkuwi_core::teyrchains::ParaHash;
|
||||
use pezbp_teyrchains::{RelayBlockHash, RelayBlockHasher, RelayBlockNumber};
|
||||
use pezsp_core::Pair;
|
||||
use relay_bizinikiwi_client::{
|
||||
AccountIdOf, AccountKeyPairOf, Chain, ChainWithRuntimeVersion, ChainWithTransactions, Client,
|
||||
|
||||
@@ -26,7 +26,7 @@ use async_trait::async_trait;
|
||||
use clap::Parser;
|
||||
use pezsp_core::Pair;
|
||||
|
||||
use bp_messages::MessageNonce;
|
||||
use pezbp_messages::MessageNonce;
|
||||
use pezbp_runtime::HeaderIdProvider;
|
||||
use pezsp_runtime::traits::TryConvert;
|
||||
use relay_bizinikiwi_client::{
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
|
||||
use async_std::sync::Mutex;
|
||||
use async_trait::async_trait;
|
||||
use bp_pezkuwi_core::BlockNumber as RelayBlockNumber;
|
||||
use pezbp_pezkuwi_core::BlockNumber as RelayBlockNumber;
|
||||
use clap::Parser;
|
||||
use pezbp_runtime::HeaderIdProvider;
|
||||
use relay_bizinikiwi_client::{Client, Teyrchain};
|
||||
|
||||
@@ -25,7 +25,7 @@ use crate::{
|
||||
};
|
||||
|
||||
use async_trait::async_trait;
|
||||
use bp_header_pez_chain::HeaderFinalityInfo;
|
||||
use pezbp_header_pez_chain::HeaderFinalityInfo;
|
||||
use pez_equivocation_detector::TargetClient;
|
||||
use pezbp_runtime::{BlockNumberOf, HashOf};
|
||||
use pezsp_runtime::traits::Header;
|
||||
|
||||
@@ -24,7 +24,7 @@ use crate::{
|
||||
};
|
||||
|
||||
use async_trait::async_trait;
|
||||
use bp_header_pez_chain::justification::{GrandpaJustification, JustificationVerificationContext};
|
||||
use pezbp_header_pez_chain::justification::{GrandpaJustification, JustificationVerificationContext};
|
||||
use pez_finality_relay::{
|
||||
FinalityPipeline, FinalitySyncPipeline, HeadersToRelay, SourceClient, TargetClient,
|
||||
};
|
||||
@@ -175,13 +175,13 @@ macro_rules! generate_submit_finality_proof_call_builder {
|
||||
<$pipeline as $crate::finality_base::BizinikiwiFinalityPipeline>::SourceChain
|
||||
>
|
||||
>,
|
||||
proof: bp_header_pez_chain::justification::GrandpaJustification<
|
||||
proof: pezbp_header_pez_chain::justification::GrandpaJustification<
|
||||
relay_bizinikiwi_client::HeaderOf<
|
||||
<$pipeline as $crate::finality_base::BizinikiwiFinalityPipeline>::SourceChain
|
||||
>
|
||||
>,
|
||||
_is_free_execution_expected: bool,
|
||||
_context: bp_header_pez_chain::justification::JustificationVerificationContext,
|
||||
_context: pezbp_header_pez_chain::justification::JustificationVerificationContext,
|
||||
) -> relay_bizinikiwi_client::CallOf<
|
||||
<$pipeline as $crate::finality_base::BizinikiwiFinalityPipeline>::TargetChain
|
||||
> {
|
||||
@@ -215,13 +215,13 @@ macro_rules! generate_submit_finality_proof_ex_call_builder {
|
||||
<$pipeline as $crate::finality_base::BizinikiwiFinalityPipeline>::SourceChain
|
||||
>
|
||||
>,
|
||||
proof: bp_header_pez_chain::justification::GrandpaJustification<
|
||||
proof: pezbp_header_pez_chain::justification::GrandpaJustification<
|
||||
relay_bizinikiwi_client::HeaderOf<
|
||||
<$pipeline as $crate::finality_base::BizinikiwiFinalityPipeline>::SourceChain
|
||||
>
|
||||
>,
|
||||
is_free_execution_expected: bool,
|
||||
context: bp_header_pez_chain::justification::JustificationVerificationContext,
|
||||
context: pezbp_header_pez_chain::justification::JustificationVerificationContext,
|
||||
) -> relay_bizinikiwi_client::CallOf<
|
||||
<$pipeline as $crate::finality_base::BizinikiwiFinalityPipeline>::TargetChain
|
||||
> {
|
||||
|
||||
@@ -25,7 +25,7 @@ use crate::{
|
||||
|
||||
use async_std::sync::{Arc, Mutex};
|
||||
use async_trait::async_trait;
|
||||
use bp_header_pez_chain::FinalityProof;
|
||||
use pezbp_header_pez_chain::FinalityProof;
|
||||
use codec::Decode;
|
||||
use futures::{
|
||||
select,
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
|
||||
use crate::error::Error;
|
||||
use async_trait::async_trait;
|
||||
use bp_header_pez_chain::{
|
||||
use pezbp_header_pez_chain::{
|
||||
justification::{
|
||||
verify_and_optimize_justification, GrandpaEquivocationsFinder, GrandpaJustification,
|
||||
JustificationVerificationContext,
|
||||
@@ -189,15 +189,15 @@ impl<C: ChainWithGrandpa> Engine<C> for Grandpa<C> {
|
||||
pezsp_consensus_grandpa::EquivocationProof<HashOf<C>, BlockNumberOf<C>>;
|
||||
type EquivocationsFinder = GrandpaEquivocationsFinder<C>;
|
||||
type KeyOwnerProof = C::KeyOwnerProof;
|
||||
type InitializationData = bp_header_pez_chain::InitializationData<C::Header>;
|
||||
type InitializationData = pezbp_header_pez_chain::InitializationData<C::Header>;
|
||||
type OperatingMode = BasicOperatingMode;
|
||||
|
||||
fn is_initialized_key() -> StorageKey {
|
||||
bp_header_pez_chain::storage_keys::best_finalized_key(C::WITH_CHAIN_GRANDPA_PALLET_NAME)
|
||||
pezbp_header_pez_chain::storage_keys::best_finalized_key(C::WITH_CHAIN_GRANDPA_PALLET_NAME)
|
||||
}
|
||||
|
||||
fn pezpallet_operating_mode_key() -> StorageKey {
|
||||
bp_header_pez_chain::storage_keys::pezpallet_operating_mode_key(
|
||||
pezbp_header_pez_chain::storage_keys::pezpallet_operating_mode_key(
|
||||
C::WITH_CHAIN_GRANDPA_PALLET_NAME,
|
||||
)
|
||||
}
|
||||
@@ -242,7 +242,7 @@ impl<C: ChainWithGrandpa> Engine<C> for Grandpa<C> {
|
||||
header: &C::Header,
|
||||
proof: &Self::FinalityProof,
|
||||
) -> SubmitFinalityProofCallExtras {
|
||||
bp_header_pez_chain::submit_finality_proof_limits_extras::<C>(header, proof)
|
||||
pezbp_header_pez_chain::submit_finality_proof_limits_extras::<C>(header, proof)
|
||||
}
|
||||
|
||||
/// Prepare initialization data for the GRANDPA verifier pezpallet.
|
||||
@@ -356,7 +356,7 @@ impl<C: ChainWithGrandpa> Engine<C> for Grandpa<C> {
|
||||
}
|
||||
}
|
||||
|
||||
Ok(bp_header_pez_chain::InitializationData {
|
||||
Ok(pezbp_header_pez_chain::InitializationData {
|
||||
header: Box::new(initial_header),
|
||||
authority_list: initial_authorities_set,
|
||||
set_id: if schedules_change {
|
||||
@@ -373,7 +373,7 @@ impl<C: ChainWithGrandpa> Engine<C> for Grandpa<C> {
|
||||
at: HashOf<TargetChain>,
|
||||
) -> Result<Self::FinalityVerificationContext, BizinikiwiError> {
|
||||
let current_authority_set_key =
|
||||
bp_header_pez_chain::storage_keys::current_authority_set_key(
|
||||
pezbp_header_pez_chain::storage_keys::current_authority_set_key(
|
||||
C::WITH_CHAIN_GRANDPA_PALLET_NAME,
|
||||
);
|
||||
let authority_set: AuthoritySet = target_client
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
|
||||
use crate::TaggedAccount;
|
||||
|
||||
use bp_relayers::{RewardsAccountOwner, RewardsAccountParams};
|
||||
use pezbp_relayers::{RewardsAccountOwner, RewardsAccountParams};
|
||||
use codec::{Decode, EncodeLike};
|
||||
use pez_messages_relay::Labeled;
|
||||
use pezframe_system::AccountInfo;
|
||||
|
||||
@@ -26,7 +26,7 @@ use crate::{
|
||||
};
|
||||
|
||||
use async_std::sync::Arc;
|
||||
use bp_messages::{
|
||||
use pezbp_messages::{
|
||||
target_chain::FromBridgedChainMessagesProof, ChainWithMessages as _, MessageNonce,
|
||||
};
|
||||
use codec::{Codec, Encode, EncodeLike};
|
||||
@@ -459,7 +459,7 @@ macro_rules! generate_receive_message_proof_call_builder {
|
||||
<$pipeline as $crate::messages::BizinikiwiMessageLane>::LaneId
|
||||
>,
|
||||
messages_count: u32,
|
||||
dispatch_weight: bp_messages::Weight,
|
||||
dispatch_weight: pezbp_messages::Weight,
|
||||
_trace_call: bool,
|
||||
) -> relay_bizinikiwi_client::CallOf<
|
||||
<$pipeline as $crate::messages::BizinikiwiMessageLane>::TargetChain
|
||||
@@ -686,7 +686,7 @@ where
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::*;
|
||||
use bp_messages::{
|
||||
use pezbp_messages::{
|
||||
source_chain::FromBridgedChainMessagesDeliveryProof, LaneIdType, UnrewardedRelayersState,
|
||||
};
|
||||
use relay_bizinikiwi_client::calls::{UtilityCall as MockUtilityCall, UtilityCall};
|
||||
@@ -698,7 +698,7 @@ mod tests {
|
||||
#[codec(index = 123)]
|
||||
Utility(UtilityCall<RuntimeCall>),
|
||||
}
|
||||
pub type CodegenBridgeMessagesCall = bp_messages::BridgeMessagesCall<
|
||||
pub type CodegenBridgeMessagesCall = pezbp_messages::BridgeMessagesCall<
|
||||
u64,
|
||||
Box<FromBridgedChainMessagesProof<mock::BridgedHeaderHash, mock::TestLaneIdType>>,
|
||||
FromBridgedChainMessagesDeliveryProof<mock::BridgedHeaderHash, mock::TestLaneIdType>,
|
||||
@@ -825,7 +825,7 @@ mod tests {
|
||||
#[allow(unexpected_cfgs)]
|
||||
mod mock {
|
||||
use super::super::*;
|
||||
use bp_messages::{target_chain::ForbidInboundMessages, HashedLaneId};
|
||||
use pezbp_messages::{target_chain::ForbidInboundMessages, HashedLaneId};
|
||||
use pezbp_runtime::ChainId;
|
||||
use pezframe_support::derive_impl;
|
||||
use pezsp_core::H256;
|
||||
@@ -888,7 +888,7 @@ mod tests {
|
||||
}
|
||||
}
|
||||
|
||||
impl bp_messages::ChainWithMessages for ThisUnderlyingChain {
|
||||
impl pezbp_messages::ChainWithMessages for ThisUnderlyingChain {
|
||||
const WITH_CHAIN_MESSAGES_PALLET_NAME: &'static str = "";
|
||||
const MAX_UNREWARDED_RELAYERS_IN_CONFIRMATION_TX: MessageNonce = 16;
|
||||
const MAX_UNCONFIRMED_MESSAGES_IN_CONFIRMATION_TX: MessageNonce = 1000;
|
||||
@@ -918,7 +918,7 @@ mod tests {
|
||||
}
|
||||
}
|
||||
|
||||
impl bp_messages::ChainWithMessages for BridgedUnderlyingChain {
|
||||
impl pezbp_messages::ChainWithMessages for BridgedUnderlyingChain {
|
||||
const WITH_CHAIN_MESSAGES_PALLET_NAME: &'static str = "";
|
||||
const MAX_UNREWARDED_RELAYERS_IN_CONFIRMATION_TX: MessageNonce = 16;
|
||||
const MAX_UNCONFIRMED_MESSAGES_IN_CONFIRMATION_TX: MessageNonce = 1000;
|
||||
@@ -926,7 +926,7 @@ mod tests {
|
||||
|
||||
pub struct BridgedHeaderChain;
|
||||
|
||||
impl bp_header_pez_chain::HeaderChain<BridgedUnderlyingChain> for BridgedHeaderChain {
|
||||
impl pezbp_header_pez_chain::HeaderChain<BridgedUnderlyingChain> for BridgedHeaderChain {
|
||||
fn finalized_header_state_root(
|
||||
_hash: HashOf<BridgedUnderlyingChain>,
|
||||
) -> Option<HashOf<BridgedUnderlyingChain>> {
|
||||
|
||||
@@ -31,7 +31,7 @@ use crate::{
|
||||
|
||||
use async_std::sync::Arc;
|
||||
use async_trait::async_trait;
|
||||
use bp_messages::{
|
||||
use pezbp_messages::{
|
||||
storage_keys::{operating_mode_key, outbound_lane_data_key},
|
||||
target_chain::FromBridgedChainMessagesProof,
|
||||
ChainWithMessages as _, InboundMessageDetails, MessageNonce, MessagePayload,
|
||||
@@ -63,7 +63,7 @@ use std::ops::RangeInclusive;
|
||||
pub type BizinikiwiMessagesProof<C, L> = (Weight, FromBridgedChainMessagesProof<HashOf<C>, L>);
|
||||
type MessagesToRefine<'a> = Vec<(MessagePayload, &'a mut OutboundMessageDetails)>;
|
||||
|
||||
/// Outbound lane data - for backwards compatibility with `bp_messages::OutboundLaneData` which has
|
||||
/// Outbound lane data - for backwards compatibility with `pezbp_messages::OutboundLaneData` which has
|
||||
/// additional `lane_state` attribute.
|
||||
///
|
||||
/// TODO: remove - https://github.com/pezkuwichain/pezkuwi-sdk/issues/22
|
||||
@@ -247,7 +247,7 @@ where
|
||||
|
||||
// for pay-at-target messages we may want to ask target chain for
|
||||
// refined dispatch weight
|
||||
let msg_key = bp_messages::storage_keys::message_key(
|
||||
let msg_key = pezbp_messages::storage_keys::message_key(
|
||||
P::TargetChain::WITH_CHAIN_MESSAGES_PALLET_NAME,
|
||||
&self.lane_id,
|
||||
out_msg_details.nonce,
|
||||
@@ -338,7 +338,7 @@ where
|
||||
> {
|
||||
let mut storage_keys = Vec::with_capacity(nonces.saturating_len() as usize);
|
||||
for message_nonce in nonces.clone() {
|
||||
let message_key = bp_messages::storage_keys::message_key(
|
||||
let message_key = pezbp_messages::storage_keys::message_key(
|
||||
P::TargetChain::WITH_CHAIN_MESSAGES_PALLET_NAME,
|
||||
&self.lane_id,
|
||||
message_nonce,
|
||||
@@ -593,7 +593,7 @@ fn split_msgs_to_refine<Source: Chain + ChainWithMessages, Target: Chain, LaneId
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::*;
|
||||
use bp_messages::{HashedLaneId, LaneIdType};
|
||||
use pezbp_messages::{HashedLaneId, LaneIdType};
|
||||
use relay_bizinikiwi_client::test_chain::TestChain;
|
||||
|
||||
/// Lane identifier type used for tests.
|
||||
@@ -604,7 +604,7 @@ mod tests {
|
||||
) -> Vec<OutboundMessageDetails> {
|
||||
nonces
|
||||
.into_iter()
|
||||
.map(|nonce| bp_messages::OutboundMessageDetails {
|
||||
.map(|nonce| pezbp_messages::OutboundMessageDetails {
|
||||
nonce,
|
||||
dispatch_weight: Weight::zero(),
|
||||
size: 0,
|
||||
@@ -761,17 +761,17 @@ mod tests {
|
||||
let bytes_without_state =
|
||||
vec![1, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0];
|
||||
let bytes_with_state = {
|
||||
// add state byte `bp_messages::LaneState::Opened`
|
||||
// add state byte `pezbp_messages::LaneState::Opened`
|
||||
let mut b = bytes_without_state.clone();
|
||||
b.push(0);
|
||||
b
|
||||
};
|
||||
|
||||
let full = bp_messages::OutboundLaneData {
|
||||
let full = pezbp_messages::OutboundLaneData {
|
||||
oldest_unpruned_nonce: 1,
|
||||
latest_received_nonce: 2,
|
||||
latest_generated_nonce: 3,
|
||||
state: bp_messages::LaneState::Opened,
|
||||
state: pezbp_messages::LaneState::Opened,
|
||||
};
|
||||
assert_eq!(full.encode(), bytes_with_state);
|
||||
assert_ne!(full.encode(), bytes_without_state);
|
||||
|
||||
@@ -34,7 +34,7 @@ use crate::{
|
||||
|
||||
use async_std::sync::Arc;
|
||||
use async_trait::async_trait;
|
||||
use bp_messages::{
|
||||
use pezbp_messages::{
|
||||
source_chain::FromBridgedChainMessagesDeliveryProof, storage_keys::inbound_lane_data_key,
|
||||
ChainWithMessages as _, LaneState, MessageNonce, UnrewardedRelayer, UnrewardedRelayersState,
|
||||
};
|
||||
@@ -55,7 +55,7 @@ use std::{collections::VecDeque, convert::TryFrom, ops::RangeInclusive};
|
||||
pub type BizinikiwiMessagesDeliveryProof<C, L> =
|
||||
(UnrewardedRelayersState, FromBridgedChainMessagesDeliveryProof<HashOf<C>, L>);
|
||||
|
||||
/// Inbound lane data - for backwards compatibility with `bp_messages::InboundLaneData` which has
|
||||
/// Inbound lane data - for backwards compatibility with `pezbp_messages::InboundLaneData` which has
|
||||
/// additional `lane_state` attribute.
|
||||
///
|
||||
/// TODO: remove - https://github.com/pezkuwichain/pezkuwi-sdk/issues/22
|
||||
@@ -66,14 +66,14 @@ struct LegacyInboundLaneData<RelayerId> {
|
||||
}
|
||||
impl<RelayerId> Default for LegacyInboundLaneData<RelayerId> {
|
||||
fn default() -> Self {
|
||||
let full = bp_messages::InboundLaneData::default();
|
||||
let full = pezbp_messages::InboundLaneData::default();
|
||||
Self { relayers: full.relayers, last_confirmed_nonce: full.last_confirmed_nonce }
|
||||
}
|
||||
}
|
||||
|
||||
impl<RelayerId> LegacyInboundLaneData<RelayerId> {
|
||||
pub fn last_delivered_nonce(self) -> MessageNonce {
|
||||
bp_messages::InboundLaneData {
|
||||
pezbp_messages::InboundLaneData {
|
||||
relayers: self.relayers,
|
||||
last_confirmed_nonce: self.last_confirmed_nonce,
|
||||
// we don't care about the state here
|
||||
@@ -85,7 +85,7 @@ impl<RelayerId> LegacyInboundLaneData<RelayerId> {
|
||||
|
||||
impl<RelayerId> From<LegacyInboundLaneData<RelayerId>> for UnrewardedRelayersState {
|
||||
fn from(value: LegacyInboundLaneData<RelayerId>) -> Self {
|
||||
(&bp_messages::InboundLaneData {
|
||||
(&pezbp_messages::InboundLaneData {
|
||||
relayers: value.relayers,
|
||||
last_confirmed_nonce: value.last_confirmed_nonce,
|
||||
// we don't care about the state here
|
||||
@@ -366,7 +366,7 @@ fn make_messages_delivery_call<P: BizinikiwiMessageLane>(
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::*;
|
||||
use bp_messages::{DeliveredMessages, UnrewardedRelayer};
|
||||
use pezbp_messages::{DeliveredMessages, UnrewardedRelayer};
|
||||
use codec::Encode;
|
||||
|
||||
#[test]
|
||||
@@ -374,13 +374,13 @@ mod tests {
|
||||
let bytes_without_state =
|
||||
vec![4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0];
|
||||
let bytes_with_state = {
|
||||
// add state byte `bp_messages::LaneState::Opened`
|
||||
// add state byte `pezbp_messages::LaneState::Opened`
|
||||
let mut b = bytes_without_state.clone();
|
||||
b.push(0);
|
||||
b
|
||||
};
|
||||
|
||||
let full = bp_messages::InboundLaneData::<u8> {
|
||||
let full = pezbp_messages::InboundLaneData::<u8> {
|
||||
relayers: vec![UnrewardedRelayer {
|
||||
relayer: Default::default(),
|
||||
messages: DeliveredMessages { begin: 2, end: 5 },
|
||||
@@ -388,7 +388,7 @@ mod tests {
|
||||
.into_iter()
|
||||
.collect(),
|
||||
last_confirmed_nonce: 6,
|
||||
state: bp_messages::LaneState::Opened,
|
||||
state: pezbp_messages::LaneState::Opened,
|
||||
};
|
||||
assert_eq!(full.encode(), bytes_with_state);
|
||||
assert_ne!(full.encode(), bytes_without_state);
|
||||
|
||||
@@ -20,7 +20,7 @@ use crate::finality::SubmitFinalityProofCallBuilder;
|
||||
|
||||
use async_std::sync::{Arc, Mutex};
|
||||
use async_trait::async_trait;
|
||||
use bp_header_pez_chain::ConsensusLogReader;
|
||||
use pezbp_header_pez_chain::ConsensusLogReader;
|
||||
use futures::{select, FutureExt};
|
||||
use num_traits::{One, Saturating, Zero};
|
||||
use pezbp_runtime::HeaderIdProvider;
|
||||
|
||||
@@ -31,8 +31,8 @@ use async_std::{
|
||||
sync::{Arc, Mutex},
|
||||
};
|
||||
use async_trait::async_trait;
|
||||
use bp_pezkuwi_core::teyrchains::{ParaHash, ParaId};
|
||||
use bp_teyrchains::{RelayBlockHash, RelayBlockHasher, RelayBlockNumber};
|
||||
use pezbp_pezkuwi_core::teyrchains::{ParaHash, ParaId};
|
||||
use pezbp_teyrchains::{RelayBlockHash, RelayBlockHasher, RelayBlockNumber};
|
||||
use futures::{select, FutureExt};
|
||||
use num_traits::Zero;
|
||||
use pezbp_runtime::HeaderIdProvider;
|
||||
|
||||
@@ -18,8 +18,8 @@
|
||||
//! teyrchain finality proofs synchronization pipelines.
|
||||
|
||||
use async_trait::async_trait;
|
||||
use bp_pezkuwi_core::teyrchains::{ParaHash, ParaHeadsProof, ParaId};
|
||||
use bp_teyrchains::{RelayBlockHash, RelayBlockHasher, RelayBlockNumber};
|
||||
use pezbp_pezkuwi_core::teyrchains::{ParaHash, ParaHeadsProof, ParaId};
|
||||
use pezbp_teyrchains::{RelayBlockHash, RelayBlockHasher, RelayBlockNumber};
|
||||
use pezpallet_bridge_teyrchains::{Call as BridgeTeyrchainsCall, Config as BridgeTeyrchainsConfig};
|
||||
use relay_bizinikiwi_client::{
|
||||
CallOf, Chain, ChainWithTransactions, HeaderIdOf, RelayChain, Teyrchain,
|
||||
|
||||
@@ -22,8 +22,8 @@ use crate::{
|
||||
};
|
||||
use async_std::sync::{Arc, Mutex};
|
||||
use async_trait::async_trait;
|
||||
use bp_pezkuwi_core::teyrchains::{ParaHash, ParaHead, ParaHeadsProof, ParaId};
|
||||
use bp_teyrchains::teyrchain_head_storage_key_at_source;
|
||||
use pezbp_pezkuwi_core::teyrchains::{ParaHash, ParaHead, ParaHeadsProof, ParaId};
|
||||
use pezbp_teyrchains::teyrchain_head_storage_key_at_source;
|
||||
use codec::Decode;
|
||||
use pezbp_runtime::HeaderIdProvider;
|
||||
use relay_bizinikiwi_client::{
|
||||
|
||||
@@ -24,11 +24,11 @@ use crate::{
|
||||
};
|
||||
|
||||
use async_trait::async_trait;
|
||||
use bp_pezkuwi_core::{
|
||||
use pezbp_pezkuwi_core::{
|
||||
teyrchains::{ParaHash, ParaHeadsProof, ParaId},
|
||||
BlockNumber as RelayBlockNumber,
|
||||
};
|
||||
use bp_teyrchains::{
|
||||
use pezbp_teyrchains::{
|
||||
ImportedParaHeadsKeyProvider, ParaInfo, ParaStoredHeaderData, ParasInfoKeyProvider,
|
||||
};
|
||||
use pezbp_runtime::{
|
||||
|
||||
@@ -23,7 +23,7 @@ parking_lot = { workspace = true, default-features = true }
|
||||
tracing = { workspace = true }
|
||||
|
||||
# Bridge Dependencies
|
||||
bp-messages = { workspace = true, default-features = true }
|
||||
pezbp-messages = { workspace = true, default-features = true }
|
||||
pez-finality-relay = { workspace = true }
|
||||
relay-utils = { workspace = true }
|
||||
|
||||
@@ -34,7 +34,7 @@ pezsp-core = { workspace = true }
|
||||
|
||||
[features]
|
||||
runtime-benchmarks = [
|
||||
"bp-messages/runtime-benchmarks",
|
||||
"pezbp-messages/runtime-benchmarks",
|
||||
"pez-finality-relay/runtime-benchmarks",
|
||||
"relay-utils/runtime-benchmarks",
|
||||
]
|
||||
|
||||
@@ -29,7 +29,7 @@ use std::{collections::BTreeMap, fmt::Debug, future::Future, ops::RangeInclusive
|
||||
use async_trait::async_trait;
|
||||
use futures::{channel::mpsc::unbounded, future::FutureExt, stream::StreamExt};
|
||||
|
||||
use bp_messages::{MessageNonce, UnrewardedRelayersState, Weight};
|
||||
use pezbp_messages::{MessageNonce, UnrewardedRelayersState, Weight};
|
||||
use relay_utils::{
|
||||
interval, metrics::MetricsParams, process_future_result, relay_loop::Client as RelayClient,
|
||||
retry_backoff, FailedClient, TransactionTracker,
|
||||
@@ -471,7 +471,7 @@ async fn run_until_connection_lost<P: MessageLane, SC: SourceClient<P>, TC: Targ
|
||||
pub(crate) mod tests {
|
||||
use std::sync::Arc;
|
||||
|
||||
use bp_messages::{HashedLaneId, LaneIdType, LegacyLaneId};
|
||||
use pezbp_messages::{HashedLaneId, LaneIdType, LegacyLaneId};
|
||||
use futures::stream::StreamExt;
|
||||
use parking_lot::Mutex;
|
||||
use relay_utils::{HeaderId, MaybeConnectionError, TrackedTransactionStatus};
|
||||
|
||||
@@ -18,7 +18,7 @@ use std::{collections::VecDeque, marker::PhantomData, ops::RangeInclusive};
|
||||
use async_trait::async_trait;
|
||||
use futures::stream::FusedStream;
|
||||
|
||||
use bp_messages::{MessageNonce, UnrewardedRelayersState, Weight};
|
||||
use pezbp_messages::{MessageNonce, UnrewardedRelayersState, Weight};
|
||||
use relay_utils::{FailedClient, TrackedTransactionStatus, TransactionTracker};
|
||||
|
||||
use crate::{
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
use num_traits::Zero;
|
||||
use std::ops::RangeInclusive;
|
||||
|
||||
use bp_messages::{MessageNonce, Weight};
|
||||
use pezbp_messages::{MessageNonce, Weight};
|
||||
|
||||
use crate::{
|
||||
message_lane::MessageLane,
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
use crate::message_lane_loop::{BatchTransaction, ClientState, NoncesSubmitArtifacts};
|
||||
|
||||
use async_trait::async_trait;
|
||||
use bp_messages::MessageNonce;
|
||||
use pezbp_messages::MessageNonce;
|
||||
use futures::{
|
||||
future::{FutureExt, TryFutureExt},
|
||||
stream::{FusedStream, StreamExt},
|
||||
|
||||
@@ -28,7 +28,7 @@ use crate::{
|
||||
};
|
||||
|
||||
use async_trait::async_trait;
|
||||
use bp_messages::MessageNonce;
|
||||
use pezbp_messages::MessageNonce;
|
||||
use futures::stream::FusedStream;
|
||||
use relay_utils::{FailedClient, TrackedTransactionStatus, TransactionTracker};
|
||||
use std::{marker::PhantomData, ops::RangeInclusive};
|
||||
|
||||
@@ -22,7 +22,7 @@ use crate::message_race_loop::{
|
||||
};
|
||||
|
||||
use async_trait::async_trait;
|
||||
use bp_messages::MessageNonce;
|
||||
use pezbp_messages::MessageNonce;
|
||||
use relay_utils::HeaderId;
|
||||
use std::{collections::VecDeque, fmt::Debug, marker::PhantomData, ops::RangeInclusive};
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@ use crate::{
|
||||
message_lane_loop::{SourceClientState, TargetClientState},
|
||||
};
|
||||
|
||||
use bp_messages::{HashedLaneId, LegacyLaneId, MessageNonce};
|
||||
use pezbp_messages::{HashedLaneId, LegacyLaneId, MessageNonce};
|
||||
use pez_finality_relay::SyncLoopMetrics;
|
||||
use relay_utils::metrics::{
|
||||
metric_name, register, GaugeVec, Metric, Opts, PrometheusError, Registry, U64,
|
||||
|
||||
@@ -21,7 +21,7 @@ relay-utils = { workspace = true }
|
||||
tracing = { workspace = true }
|
||||
|
||||
# Bridge dependencies
|
||||
bp-pezkuwi-core = { workspace = true, default-features = true }
|
||||
pezbp-pezkuwi-core = { workspace = true, default-features = true }
|
||||
relay-bizinikiwi-client = { workspace = true }
|
||||
|
||||
[dev-dependencies]
|
||||
@@ -30,7 +30,7 @@ relay-bizinikiwi-client = { features = ["test-helpers"], workspace = true }
|
||||
|
||||
[features]
|
||||
runtime-benchmarks = [
|
||||
"bp-pezkuwi-core/runtime-benchmarks",
|
||||
"pezbp-pezkuwi-core/runtime-benchmarks",
|
||||
"relay-bizinikiwi-client/runtime-benchmarks",
|
||||
"relay-utils/runtime-benchmarks",
|
||||
]
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
use crate::{teyrchains_loop_metrics::TeyrchainsLoopMetrics, TeyrchainsPipeline};
|
||||
|
||||
use async_trait::async_trait;
|
||||
use bp_pezkuwi_core::{
|
||||
use pezbp_pezkuwi_core::{
|
||||
teyrchains::{ParaHash, ParaHeadsProof, ParaId},
|
||||
BlockNumber as RelayBlockNumber,
|
||||
};
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with Parity Bridges Common. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
use bp_pezkuwi_core::teyrchains::ParaId;
|
||||
use pezbp_pezkuwi_core::teyrchains::ParaId;
|
||||
use relay_utils::{
|
||||
metrics::{metric_name, register, Gauge, Metric, PrometheusError, Registry, U64},
|
||||
UniqueSaturatedInto,
|
||||
|
||||
Reference in New Issue
Block a user