Merge bulletin chain changes into polkadot staging (#2574)

* polkadot-staging for v1.0.0

* Add polkadot bulletin chain primitives (#2542)

* add polkadot bulletin chain primitives

* also impl ChainWithMessages

* clippy

* instead of requiring sp_std::vec::Vec import when using runtime API generation macro, let's use full type path directly in macro (#2551)

* Polkadot Bulletin Chain client (#2552)

* relay-polkadot-bulletin-client

* generate Polkadot Bulletin Chain Runtime

* Add relays that will be used in Polkadot Bulletin <> Polkadot.BH bridge (#2556)

* added Polkadot.BH <> Polkadot Bulletin chain relays

* uncommented ED stuff

* complex PolkadotBulletin <> Polkadot.BH relay

* removed TODO

* spelling

* prepare refund extension infra to add refund extension for messages from standalone chain (#2558)

* prepare refund extension infra to add refund extension for messages from standalone chain

* spelling

* apply adapter to fix compilation

* clippy

* added POLKADOT_BULLETIN_CHAIN_ID constant

* RefundBridgedGrandpaMessages to refund transaction costs for messages coming to/from bridged standalone/relay chain (#2566)

* RefundBridgedGrandpaMessages to refund transaction costs for messages coming to/from bridged standalone/relay chain

* clippy

* fix compilation

* fix codec dependency (#2567)

* Support message relay limits override (#2570)

* support message relay limits overrides for bridges

* spelling

* export EXTRA_STORAGE_PROOF_SIZE for Polkadot Bulletin (#2572)
This commit is contained in:
Svyatoslav Nikolsky
2023-09-19 15:02:41 +03:00
committed by Bastian Köcher
parent 4cd9e2fe79
commit 0bbd2b20a2
41 changed files with 3351 additions and 361 deletions
@@ -29,11 +29,18 @@ pub use relay_substrate_client::calls::{SystemCall, UtilityCall};
/// Unchecked BridgeHubPolkadot extrinsic.
pub type UncheckedExtrinsic = bp_bridge_hub_polkadot::UncheckedExtrinsic<Call, SignedExtension>;
// The indirect pallet call used to sync `Kusama` GRANDPA finality to `BHPolkadot`.
/// The indirect pallet call used to sync `Kusama` GRANDPA finality to `BHPolkadot`.
pub type BridgeKusamaGrandpaCall = BridgeGrandpaCallOf<bp_kusama::Kusama>;
// The indirect pallet call used to sync `BridgeHubKusama` messages to `BridgeHubPolkadot`.
/// The indirect pallet call used to sync `BridgeHubKusama` messages to `BridgeHubPolkadot`.
pub type BridgeKusamaMessagesCall = BridgeMessagesCallOf<bp_bridge_hub_kusama::BridgeHubKusama>;
/// The indirect pallet call used to sync `PolkadotBulletin` GRANDPA finality to `BHPolkadot`.
pub type BridgePolkadotBulletinGrandpaCall =
BridgeGrandpaCallOf<bp_polkadot_bulletin::PolkadotBulletin>;
/// The indirect pallet call used to sync `PolkadotBulletin` messages to `BridgeHubPolkadot`.
pub type BridgePolkadotBulletinMessagesCall =
BridgeMessagesCallOf<bp_polkadot_bulletin::PolkadotBulletin>;
/// `BridgeHubPolkadot` Runtime `Call` enum.
///
/// The enum represents a subset of possible `Call`s we can send to `BridgeHubPolkadot` chain.
@@ -52,15 +59,22 @@ pub enum Call {
#[codec(index = 40)]
Utility(UtilityCall<Call>),
/// Kusama bridge pallet.
/// Kusama grandpa bridge pallet.
#[codec(index = 51)]
BridgeKusamaGrandpa(BridgeKusamaGrandpaCall),
/// Kusama parachain bridge pallet.
/// Kusama parachains bridge pallet.
#[codec(index = 52)]
BridgeKusamaParachain(BridgeParachainCall),
/// Kusama messages bridge pallet.
#[codec(index = 53)]
BridgeKusamaMessages(BridgeKusamaMessagesCall),
/// Polkadot Bulletin grandpa bridge pallet.
#[codec(index = 55)]
BridgePolkadotBulletinGrandpa(BridgePolkadotBulletinGrandpaCall),
/// Polkadot Bulletin messages bridge pallet.
#[codec(index = 56)]
BridgePolkadotBulletinMessages(BridgePolkadotBulletinMessagesCall),
}
impl From<UtilityCall<Call>> for Call {