Branislav Kontur
5fdc89d651
Bump xcm-v3 + substrate ( #1767 )
...
* Bump xcm-v3 + substrate
* More fixes
* Added `#[pallet::call_index`
* Fixes for MMR (TODO:plese check)
* More call indexes
* Cumulus bump
* Fixes for mmr
* Fixes for weights
* Fixes for xcm
* MMR fixes + cargo fmt
* Fix some rpc errors (bump jsonrpsee version)
* Fix cumulus stuff
* Fixes cumulus
* clippy
* more clipy
* Fix test + unused deps
* PR fixes
* cargo update (bump xcm-v3)
Co-authored-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Branislav Kontur
3c4cce9eef
cargo machete removed unused deps (#1761 )
2024-04-10 10:28:37 +02:00
Serban Iorga
b63287da20
Remove sp-version dependency from bin-substrate ( #1758 )
2024-04-10 10:28:37 +02:00
Serban Iorga
b4c338f77d
Set R/WococoBridgeHub bundle runtime version ( #1756 )
...
* Define SimpleRuntimeVersion
* Set R/WococoBridgeHub bundle runtime version
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
70eb076ab2
Expose relay version metric ( #1750 )
...
* expose relay version metric
* spelling
* and clippy
* clippy
* typo
* use version directly and determine git commit
* typos and leftovers
2024-04-10 10:28:37 +02:00
Serban Iorga
444dbe7173
Use indirect runtime calls for RialtoParachain ( #1753 )
...
* Use indirect runtime calls for RialtoParachain
* Code review fixes
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
e0e84b734b
fix nightly clippy again ( #1752 )
2024-04-10 10:28:37 +02:00
Serban Iorga
c387f7a4b9
Remove TODO ( #1749 )
2024-04-10 10:28:37 +02:00
Serban Iorga
63a538a9bb
Deduplicate pallet call structs used for indirect runtime calls ( #1744 )
...
* Small changes
* Define generic bridge pallets call structs
* polkadot-core SignedExtension simplifications
- we don't seem to need to pass the Call as a generic param
- we can use codec(skip) instead of implementing Encode and Decode
* Split BridgeHubRococo and BridgeHubWococo calls
* code review fixes
2024-04-10 10:28:37 +02:00
Serban Iorga
64f03aaa0b
Improve relayer initialization behaviour ( #1743 )
...
Wait until the initialization transaction is finalized/lost.
2024-04-10 10:28:37 +02:00
Serban Iorga
4a10ccb118
Remove CliChain::KeyPair ( #1741 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
03425b33ae
Use TypedLaneId instead of LaneId ( #1738 )
...
* TypedLaneId -> LaneId
* fix benchmarks compilation
2024-04-10 10:28:37 +02:00
Serban Iorga
41daa32acb
Simplify read_client_state() ( #1739 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
15e7d828ea
Expose metrics of on-demand relay chain headers sync from with-parachain complex relays ( #1737 )
...
* expose metrics of on-demand relay chain headers sync from with-parachain complex relays
* spelling
* remove renundant arg
2024-04-10 10:28:37 +02:00
Serban Iorga
9495e1cfcb
Handle SIGTERM for the docker containers + relay ( #1735 )
...
* Handle SIGTERM for some docker containers
* Implement SIGTERM handling for the relay
2024-04-10 10:28:37 +02:00
Serban Iorga
e47f1e42e0
Replace BATCH_CALL_SUPPORTED ( #1733 )
...
* Simplify submit_and_watch_signed_extrinsic
The way submit_and_watch_signed_extrinsic is used now, we can always
derive the SignParam from other params. If in the future we need more
customization possibilities, we can define a new method.
* Simplify submit_signed_extrinsic
* Send maybe_batch_tx as a parameter
Send `maybe_batch_tx` as a parameter to `submit_proof()`. This way we
can deduplicate the logic that submits the extrinsic for
`messages_source and `messages_target` and we can simplify the logic in
the race loop a bit.
* Define BatchProofTransaction
Deduplicate BatchConfirmationTransaction and BatchDeliveryTransaction by
replacing both of them with BatchProofTransaction
* Define ChainWithUtilityPallet and BatchCallBuilderConstructor
- Define `ChainWithUtilityPallet` in order to be able to associate the
batching functionality with chains
- Defining `BatchCallBuilderConstructor` in order to have a more reliable
way of checking whether an end of a messages pipeline supports batching
or no. `BatchCallBuilderConstructor::new_builder()` returns an
`Option<BatchCallBuilder>`.This is a bit safer because each time a caller
tries to start creating a batch call, it will call `new_builder()` and
will be required to handle the returned `Option`. Before we only had a
bool `BATCH_CALL_SUPPORTED` the caller could have forgetten to check.
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
1b9b134f30
Do not require new headers if lane is empty ( #1725 )
...
* do not require new headers if lane is empty
* handle edge case (need proof-of-delivery-confirmations to be able to submit delivery tx) in required_source_header_at_target
* clippy
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
b51da6451d
remove messages pallet owner relay argument ( #1728 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
3906131d53
remove BatchDeliveryTransaction::new and BatchConfirmationTransaction::new to avoid expects ( #1726 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
be27bd5e97
Batch transactions in complex relays ( #1669 )
...
* batch transactions in message relay: API prototype
* get rid of Box<dyn BatchTransaction> and actually submit it
* test batch transactions
* message_lane_loop_works_with_batch_transactions
* removed logger
* BatchConfirmationTransaction + BatchDeliveryTransaction
* more prototyping
* fmt
* continue with batch calls
* impl BatchCallBuilder for ()
* BatchDeliveryTransaction impl
* BundledBatchCallBuilder
* proper impl of BundledBatchCallBuilder + use it in RialtoParachain -> Millau
* impl prove_header in OnDemandHeadersRelay
* impl OnDemandParachainsRelay::prove_header (needs extensive tests)
* added a couple of TODOs
* return Result<Option<BatchTx>> when asking for more headers
* prove headers when reauire_* is called && return proper headers from required_header_id
* split parachains::prove_header and test select_headers_to_prove
* more traces and leave TODOs
* use finality stream in SubstrateFinalitySource::prove_block_finality
* prove parachain head at block, selected by headers relay
* const ANCIENT_BLOCK_THRESHOLD
* TODO -> proof
* clippy and spelling
* BatchCallBuilder::build_batch_call() returns Result
* read first proof from two streams
* FailedToFindFinalityProof -> FinalityProofNotFound
* changed select_headers_to_prove to version from PR review
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
a732a04ed4
fix pallet names at bridge hubs ( #1722 )
2024-04-10 10:28:37 +02:00
Serban Iorga
bde1629f86
Remove SOURCE_PARACHAIN_PARA_ID ( #1716 )
...
* Remove SOURCE_PARACHAIN_PARA_ID
Remove SubstrateParachainsPipeline::SOURCE_PARACHAIN_PARA_ID
* Avoid duplicate ChainBase and ParachainBase implementations
* Replace ChainShadow with UnderlyingChainProvider
2024-04-10 10:28:37 +02:00
Serban Iorga
ba75e63fcd
Remove WeightToFee ( #1713 )
...
* Remove WeightToFee
* Remove leftover
2024-04-10 10:28:37 +02:00
Serban Iorga
e85b3fd998
Fix bridge hub rococo/wococo weights ( #1712 )
...
* Fix bridge hub rococo/wococo weights
* Remove SS58Prefix
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
d63a75697c
Only store header state root (pallet-bridge-parachains) ( #1701 )
...
* store block number ++ state root in parachains pallet
* fixed parachains finality APIs
* (test commit)
* removed test code
* deduplicated code a bit
* removed commented code
* spelling
* Update modules/parachains/src/lib.rs
Co-authored-by: Adrian Catangiu <adrian@parity.io >
* Update modules/parachains/src/lib.rs
Co-authored-by: Adrian Catangiu <adrian@parity.io >
* Update modules/parachains/src/mock.rs
Co-authored-by: Adrian Catangiu <adrian@parity.io >
* added comment
Co-authored-by: Adrian Catangiu <adrian@parity.io >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
2c5e2f09eb
New relayer rewards scheme integration ( #1652 )
...
* relayer rewards integration: initial commit
* added refund-relayer-extension to the millau runtime
* spelling
* spelling again
* new -> Default
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
66dfd2dcae
fix clippy ( #1698 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
7ab985718a
added version guards to RBH<>WBH GRANDPA finality (and complex) relay ( #1697 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
9c8f8a90e7
removed ESTIMATE_MESSAGE_FEE_METHOD ( #1696 )
2024-04-10 10:28:37 +02:00
Branislav Kontur
9cea69349f
dry-run mode for init bridge command (#1690 )
...
* `dry-run` mode for init bridge command
* fix clippy
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
b99267764c
fix clippy ( #1668 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
c03d99cd09
fix clippy ( #1664 )
2024-04-10 10:28:37 +02:00
Serban Iorga
7b74940539
Add RococoBridgeHub <> WococoBridgeHub full 2 way bridge ( #1663 )
...
* Add RococoBridgeHub <> WococoBridgeHub full 2 way bridge
* Use StorageMapKeyProvider instead of account_info_storage_key()
Avoid duplicating storage_map_final_key()
* clippy + leftovers
2024-04-10 10:28:37 +02:00
Branislav Kontur
786db04bbc
Fixes fo ro/wo bridge ( #1661 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
9da22df16b
Complex parachain <> parachain relay ( #1637 )
...
* complex parachain <> parachain relay
* spelling
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
8c845602cf
Remove message fee + message send calls ( #1642 )
...
* remove message fee
* it is compiling!
* fixes + fmt
* more cleanup
* more cleanup
* restore MessageDeliveryAndDispatchPayment since we'll need relayer rewards
* started rational relayer removal
* more removal
* removed estimate fee subcommand
* remove DispatchFeePayment
* more removals
* removed conversion rates && some metrics
* - unneeded associated type
* - OutboundMessageFee
* fix benchmarks compilation
* fmt
* test + fix benchmarks
* fix send message
* clippy
2024-04-10 10:28:37 +02:00
Branislav Kontur
6c4728f1cc
Rococo/Wococo bridge hub relay integration ( #1565 )
...
* [BridgeHub] Added bridge-hub-rococo/wococo clients with bridge-hub-rococo-runtime
* [BridgeHub] Add init-bridge stuff for bridge-hub-rococo/wococo
* [BridgeHub] Add init-bridge stuff for bridge-hub-rococo/wococo
* [BridgeHub] Fixed Call-encoding for init-bridge rococo runtime wrapper
* Final index update to runtime calls
* [BridgeHub] Add init-bridge stuff for bridge-hub-rococo/wococo (otherside)
* Added runtime best_finalized functions + relay-headers init
* Renaming and change BridgeHubRococo/Wococo to Rococo/Wococo config
* [BridgeHub] Add relay-parachains (Rococo/Wococo)
* Missing stuff for adding xcm messaging to BridgeHub
* extracted parachain IDs to the primitives
* fix compilation
* Fixes
* Init setup for Rococo->Wococo messaging support
* Removed unused AccountId from `trait MessagesBridge`
* Removed unused trait SenderOrigin
* Small fixes
* Cleaning after master-merge
* Fixes
* Fixes
* Fixes
* Fixes
* Fixes:
- align WeightToFee with BridgeHubRococo runtime
- MAX_HEADER_SIZE
- updated TODOs
* Added relay_messages cfg for BridgeHubWococo -> BridgeHubRococo
Co-authored-by: Svyatoslav Nikolsky <svyatonik@gmail.com >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
3e00c5c022
Statemine primitives ( #1625 )
...
* Statemine primitives
* ref issue in TODO
* fix TODO
2024-04-10 10:28:37 +02:00
Branislav Kontur
2c0b6b73e0
Bump xcm v3 + substrate
...
* Bumping substrate/polkadot/cumulus
* Update Cargo.lock
* Fixes
* Fixes for mmr
* Bump clap
* Fix for millau - added CompatibilityMode
* Fixes for rialto-parachain
* Align everywhere branch='master' and just use overrides from main Cargo.toml
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
a979340e49
refactor transaction sign scheme ( #1621 )
2024-04-10 10:28:37 +02:00
Serban Iorga
01538bc5fa
Finality loop: get block justification and authorities change by consensus engine ID ( #1619 )
...
* SignedBlock: get justification by consensus engine id
* Define ConsensusLogReader
Making the check for authority changes more generic
* cod review changes
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
f58e076ca2
fixes for nightly clippy ( #1618 )
2024-04-10 10:28:37 +02:00
Serban Iorga
4f796ce803
Define SubstrateBeefy RPC client ( #1615 )
2024-04-10 10:28:37 +02:00
Serban Iorga
a372fd6394
Fix parachains_loop::tests::minimal_working_case
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
e97bb57564
weights v1.5: iteration 2 ( #1613 )
2024-04-10 10:28:37 +02:00
Serban Iorga
597ea49664
Finality loop - cosmetic changes ( #1609 )
...
* Move some logic to RestartableFinalityProofsStream
* Move some logic to `Transaction`
* Avoid unnecessary split_off
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
a3dc2d2748
Bump Substrate/Polkadot/Cumulus refs (aka Weights v1.5) ( #1597 )
...
* update Substrate + Polkadot + Cumulus refs
* Origin -> RuntimeOrigin
* weights v1.5
* update refs once again + `cargo test -p pallet-bridge-grandpa` works
* started work on `cargo test -p pallet-bridge-messages`
* cargo test -p pallet-bridge-relayers
* cargo test -p pallet-bridge-parachains
* cargo test -p millau-runtime
* cargo test -p bridge-runtime-common
* cargo test -p rialto-runtime
* cargo test -p rialto-parachain-runtime
* cargo test -p millau-bridge-node
* cargo test -p rialto-bridge-node
* cargo test -p rialto-parachain-collator
* cargo test -p messages-relay
* cargo test -p parachains-relay
* cargo test -p substrate-relay
* cargo test --all
* cargo check -p millau-runtime --locked --features runtime-benchmarks
* fix remaining test
* fmt
* try to allow clippy failure temporarily
* Revert "try to allow clippy failure temporarily"
This reverts commit d1b6593580f07e0dbeecb7ab0aa92cee98888ed3.
* use min_by
* Revert "use min_by"
This reverts commit 33042f49ed37e8dd0505370289e17f03bf1a56ee.
* Revert "Revert "use min_by""
This reverts commit 1d2204f0b14dc81e5650bb574dedb5fa78c7097d.
* trigger CI
* Revert "trigger CI"
This reverts commit 259d91b5606743bba9d043c69f07eac6c8700ef5.
* new day, new clippy warning
* more clippy issues
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
9e1847d12a
Fix new nightly clippy issues ( #1604 )
...
* clipy
* revert some fixes that newest clippy reports as issues, but older does not
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
6f9bda5db0
MillauWeight -> BridgeWeight ( #1593 )
2024-04-10 10:28:37 +02:00
Branislav Kontur
d64815cdef
Cleaning deps + satisfy `cargo build --release --all-targets --all-fe… ( #1587 )
...
* Cleaning deps + satisfy `cargo build --release --all-targets --all-features`
* PR fixes
2024-04-10 10:28:37 +02:00