* Reexport paste from `sp-runtime` in `bp-runtime` to aviod including `paste` dependency everywhere
* Add import `bp_runtime` to macro calls: decl_bridge_finality_runtime_apis/decl_bridge_messages_runtime_apis
* Adjustments for the xcm messages sending logic
Signed-off-by: Serban Iorga <serban@parity.io>
* Deduplicate XCM destination
Signed-off-by: Serban Iorga <serban@parity.io>
* [send_message] small changes
Signed-off-by: Serban Iorga <serban@parity.io>
* Define CustomNetworkId
Right now we use some associations between Rialto, RialtoParachain and
Millau chains and chains defined in the NetworkId enum. But if we are
not carreful we might do mistakes like:
In Millau:
pub const ThisNetwork: NetworkId = Kusama;
pub const RialtoNetwork: NetworkId = Polkadot;
In Rialto:
pub const ThisNetwork: NetworkId = Kusama;
pub const MillauNetwork: NetworkId = Polkadot;
We're introducing CustomNetworkId to have a centralized mapping between
NetworkId chains and our custom chains.
Signed-off-by: Serban Iorga <serban@parity.io>
* Revert "Deduplicate XCM destination"
This reverts commit 3a0a950e1d7484e3ecac45f5c00b152f0485cd11.
Signed-off-by: Serban Iorga <serban@parity.io>
* generated_message_details() -> Simplifications
- avoid using a HashMap for `messages_to_refine`. It seems that a vec is
enough
- minimize the number of conversions between `OutboundMessageDetails` and
`MessageDetails`
- use references where possible in order to minimize the number of
intermediary Vecs
- simplify `make_message_details_map()` logic, reduce its scope and rename
it to `validate_out_msgs_details()`
Signed-off-by: Serban Iorga <serban@parity.io>
* Define typed_state_call()
Signed-off-by: Serban Iorga <serban@parity.io>
* Call To*InboundLaneApi::message_details() with single messages
Signed-off-by: Serban Iorga <serban@parity.io>
* Call To*InboundLaneApi::message_details() with batched messages
Signed-off-by: Serban Iorga <serban@parity.io>
* validate_out_msgs_details() -> change check
* Define split_msgs_to_refine()
Signed-off-by: Serban Iorga <serban@parity.io>
Signed-off-by: Serban Iorga <serban@parity.io>
* decrease parameters range in grandpa benchmarks
* fix messages benchmarks
* update all weights
* dealing with failed test (WiP)
* Revert "dealing with failed test (WiP)"
This reverts commit 0379d24bcf0692da5813968d83e0cbc918ac4691.
* proper tests fix
Refactor the implementations for the following CLI methods in order to
avoid using macros:
- init_bridge
- relay_headers
- relay_parachains
Signed-off-by: Serban Iorga <serban@parity.io>
Add unit test in order to check that the submit_parachain_heads() call
returns an error when the pallet is halted.
Signed-off-by: Serban Iorga <serban@parity.io>
Define macro that generates tests for set_owner() and set_operating_mode()
in order to avoid duplicate code.
Signed-off-by: Serban Iorga <serban@parity.io>
Unify the operating mode for bridge pallets
- define the OperationMode trait and BasicOperatingMode enum
- use the OperationMode trait in all the bridge pallets
- use BasicOperatingMode instead of IsHalted for the Grandpa pallet
- use BasicOperatingMode as part of MessagesOperatingMode
Signed-off-by: Serban Iorga <serban@parity.io>