Serban Iorga
9bfad80664
Add basic equivocation detection pipeline schema ( #2338 ) ( #2341 )
...
* Move finality Engine to finality_base folder
* Define SubstrateFinalityPipeline
Extract basic parts of SubstrateFinalitySyncPipeline into
SubstrateFinalityPipeline
* Add equivocation detection pipeline
* Fix comment
2024-04-10 10:28:37 +02:00
Branislav Kontur
f25a5f0409
Support for kusama-polkadot relaying ( #2128 )
2024-04-10 10:28:37 +02:00
Serban Iorga
9dfa496d15
Use generated runtimes for BHR/BHW ( #2106 )
...
* Use generated runtimes for BHR/BHW
* Deduplicate BHR/BHW runtimes
* Add script for regenerating runtimes
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
9b57f2181c
Kusama <> Polkadot relay prototype ( #1982 )
...
* moved bridge declarations to dedicated folder
* Kusama <> Polkadot bridges declaration
* support for Kusama <> Polkadot bridge in CLI
* update dictionary
2024-04-10 10:28:37 +02:00
Serban Iorga
b2832575f6
Add tool for auto generating runtime code from metadata ( #1812 )
...
* Create CLI tool for generating indirect runtimes code
* Use the generated runtime for rialto parachain
* Avoid autogenerated files when executing cargo spellcheck
* Fix clippy warning
2024-04-10 10:28:37 +02:00
Serban Iorga
5d875d05d3
Use named parameters for indirect calls ( #1823 )
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
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
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
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
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
f35b4f4897
Extract unsigned tx from the SignParam structure ( #1561 )
...
* change sign_transaction method
* clippy
* rustup update && clippy
* remove redudnant clone
2024-04-10 10:28:37 +02:00
Branislav Kontur
260dad5110
Bko cosmetics ( #1550 )
...
* Bump log version to 0.4.17
* Removed unnecesseray dependency + rename BridgeGrandpaMillauCall to BridgeGrandpaCall
2024-04-10 10:28:37 +02:00
Serban Iorga
a2dcb1b4ad
Move bridge definitions
...
Move bridge definitions to their specific folder.
Signed-off-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Serban Iorga
e1fd877b80
CLI refactoring
...
* [CLI] Make bridge definitions more complete
* [CLI] Refactor relay_headers_and_messages
Signed-off-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
88e95388bb
Remove obsolete bridges ( #1491 )
...
* remove Rococo<>Wococo bridge mentions
* remove Kusama <> Polkadot bridge mentions
* fmt
* remove unneeded mocked runtimes && trait impls for obsolete bridges
* remove unused deps
2024-04-10 10:28:37 +02:00
Serban Iorga
46c0400f26
[CLI] Remove some macros
...
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 >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
5f2f61ced5
messages bridge between RialtoParachain and Millau ( #1218 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
b3c8852bcf
FinalityEngine in substrate relay ( #1374 )
...
* introduce FinalityEngine in relay code
* add FinalityEngine to relay
* spelling
* fix test compilation
* Update relays/lib-substrate-relay/src/finality/source.rs
Co-authored-by: Adrian Catangiu <adrian@parity.io >
Co-authored-by: Adrian Catangiu <adrian@parity.io >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
60f82cf459
removed extra *_RUNTIME_VERSION consts from relay code ( #1330 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
efa3e97210
Encode and estimate Rococo/Wococo/Kusama/Polkadot messages ( #1322 )
...
* encode and estimate Rococo/Wococo/Kusama/Polkadot messages
* allow send-message for non-bundled chains
* weight -> dispatch-weight
* fmt
* fix spelling
2024-04-10 10:28:37 +02:00
fewensa
3aff81a707
Change submit transaction spec_version and transaction_version query from chain ( #1248 )
...
* The `spec_version` and `transaction_version` query from chain
* fix compile
* Lint
* Custom spec_version and transaction_version
* runtime version params struct opt
* runtime version cli
* cli params
* Add missing types defined
* fix compile
* debug cli
* clippy
* clippy
* Query spec_version and transaction_version same times
* Fix vars
* Wrap option
* Wrap option
* Try fix ci
* Change follow suggestions
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
e23266c7e6
Bump dependencies ( #1180 )
...
* substrate: d0f6c1c60da22e04dd25c2eca46ebfe6f1571af0
polkadot: dd4b2e6a34a08a01b876d14641e99e7011be3463
cumulus: 9379cd6c18
* fmt
* fixed lost refs
* spelling
* benckhmarks
* fmt
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
6396239e18
cargo +nightly fmt --all ( #1192 )
2024-04-10 10:28:37 +02:00
hacpy
bd70de8b8b
Match substrate's fmt ( #1148 )
...
* Alter gitlab.
* Use substrate's rustfmt.toml
* cargo +nightly fmt --all
* Fix spellcheck.
* cargo +nightly fmt --all
* format.
* Fix spellcheck and fmt
* fmt?
* Fix spellcheck
Co-authored-by: Tomasz Drwięga <tomasz@parity.io >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
2db84b74cc
Polkadot <> Kusama relayers ( #1122 )
...
* relay headers between Kusama and Polkadot
* relay messages between Kusama and Polkadot
* complex Kusama <> Polkadot relayer
* expose relayer_fund_account_id from messages pallet
* create relayers fund accounts on Kusama/Polkadot + some more fixes
* fmt
* fix compilation
* compilation + clippy
* compilation
* MAXIMAL_BALANCE_DECREASE_PER_DAY for K<>P header relays
* fmt
* deduplicate tests
* Update modules/messages/src/lib.rs
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
* extract storage_parameter_key function
* other grumbles
* fix
* fmt
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
1df7076c4f
Transactions resubmitter ( #1083 )
...
* resubmit transactions: start
* resubmit transactions: continue
* enable resubmitter in deployments
* clippy
* spellcheck
* Update relays/client-substrate/src/chain.rs
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
* fix compilation
* fix compilation
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
864c830618
Emit mortal transactions from relay ( #1073 )
...
* mortal relay transactions
* sign block hash for mortal transactions
* TransactionEraOf
* add explanation
* enable mortal transactions for Westend -> Millau headers relay
* clippy
* spellcheck
2024-04-10 10:28:37 +02:00
fewensa
8cb2633437
Common crate for substrate-relay ( #1082 )
...
* lib-substrate-relay
* pass to build
* remove unused file
* clippy && tests
* Changed follow suggestions
* License
* Make changes follow suggested
* docs
* fix fmt
2024-04-10 10:28:37 +02:00
Tomasz Waszczyk
f86d101d7c
Fix full spellcheck ( #1076 )
...
* fix(spellcheck): test of fixing
* fix(hunspell): improved many typos etc.
* fix(hunspell): all errors solved
* fix(hunspell): extended scope of files - the build should fail
* Return error code.
* Fix spelling, sort dictionary.
* fix(hunspell): added fix to gitlabs check
* fix(typo): one typo and test of verification on github
* fix(typo): one typo
Co-authored-by: Tomasz Drwięga <tomasz@parity.io >
2024-04-10 10:28:37 +02:00
halfpint104
84da766881
Use kebab-case for bridge arguments ( #1036 )
...
* Updates bridge CLI arguments to be kebab case
* Updates scripts to use kebab case for bridge initialisation and relaying of headers/messages
* Updates message sending subcommand to be kebab case
* Updates documentation for message sending subcommand
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
165730a2c2
Rococo <> Wococo messages relay ( #1030 )
...
* MessagesInstance -> BridgedMessagesInstance
* Chain::ID -> Bridge::THIS_CHAIN_ID+Bridge::BRIDGED_CHAIN_ID
* FromBridgedChainEncodedMessageCall<B> -> FromBridgedChainEncodedMessageCall<DecodedCall>
* impl Parameter for ()
* copypaste storage_map_final_key to avoid different runtime references/dummy runtimes
* moved dummy runtime from primitives to relay client
* Rococo <> Wococo messages relays
* send R<>W messages using relay
* fmt
* return Result from get_dispatch_info
* fix benchmarks compilation
* clippy
2024-04-10 10:28:37 +02:00
Hernando Castano
7dc564a067
Add Wococo<>Rococo Header Relayer ( #925 )
...
* Add Wococo primitives crate
* Add more Wococo boilerplate code
* Add CLI support for initializing the Wococo<>Rococo bridge
* Add support for relaying headers between Rococo and Wococo
* Fix test
* RustFmt
* Fix compilation issues related to enum naming
* Bump Rococo `spec_version`
* Remove stray Westend references
2024-04-10 10:28:37 +02:00
Hernando Castano
76625ed180
Remove Westend<>Rococo header sync ( #940 )
...
* Remove scripts for Westend<>Rococo header sync
* Remove Westend<>Rococo header sync code
* Remove Westend<>Rococo init bridge CLI option
* Modify Westend mock call to be placeholder
* Fix call encoding test
2024-04-10 10:28:37 +02:00
Hernando Castano
bca83fd020
Westend<>Rococo Headers Relay ( #875 )
...
* Add modules for Rococo<>Westend header sync
* Use mock Westend and Rococo finaltiy tx calls
* Add Westend<>Rococo variants to `init_bridge`
* Add Westend<>Rococo variants to `relay_headers`
* Simplify the Rococo and Westend signing params
* Add `submit_finality_proof` mock Call variant
* Add note to more closely match `initialize` Call variant
* Accidentally committed `cargo-expand`ed code 🤦
* Add `initialize` Call variant to Rococo mock
* Fix call enums.
* Add explainatory comment.
* clippy.
* Add issue number.
* De-duplicate metrics customisation.
* Add comments to Rococo/Westend runtimes.
* Add scale-encoding compatibility test.
* Fix tests.
* Clippy.
Co-authored-by: Tomasz Drwięga <tomasz@parity.io >
2024-04-10 10:28:37 +02:00
Tomasz Drwięga
9f01c459bd
CLI: Send Message ( #886 )
...
* Send Message WiP
* It compiles.
* Add tests.
* Use common macro.
* Nicer balance display.
* Get rid of redundant send_message_call function.
* Fix clippy.
Co-authored-by: Svyatoslav Nikolsky <svyatonik@gmail.com >
2024-04-10 10:28:37 +02:00
Tomasz Drwięga
1dbba1b95b
De-duplicate signing/connection params. ( #861 )
...
Co-authored-by: Hernando Castano <hernando@hcastano.com >
2024-04-10 10:28:37 +02:00
Tomasz Drwięga
904b9f4da5
Make relay CLI generic ( #849 )
...
* Start generalizing rialto-millau commands.
* cargo fmt --all
* Introduce generic balance.
* Unify message payloads.
* cargo fmt --all
* init - generic
* Attempt to unify send message.
* Start moving things around.
* cargo fmt --all
* Move init-bridge.
* cargo fmt --all
* Improve UX of bridge argument.
* Fix clippy.
* Fix docs and scripts.
* Add docs.
* Apply suggestions from code review
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* Fix copyright.
* Add issue numbers.
* More todos.
* Update comments.
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
2024-04-10 10:28:37 +02:00