Svyatoslav Nikolsky
95c30c780c
update Substrate/Polkadot/Cumulus refs ( #1562 )
...
* update Substrate/Polkadot/Cumulus refs
* finality-grandpa 0.16
* fix miillau-runtime compilation
* fix rialto runtime compilation
* fixed rialto-parachain runtime compilation
* backport GRANDPA test fixes
* helper instead of removed record_all_keys
* substrate-relay is compiling
* millau-bridge-node at least compiles
* rialto-bridge-node at least compiles
* rialto-parachain-collator compiles
* fixings tests (wip)
* fmt
* fixed BEEFY alert
* clippy
* removed unused dep
* -extra var
* move Leaf to mod mmr
* fix benchmarks
2024-04-10 10:28:37 +02:00
Serban Iorga
ad38cdb873
Follow-up on #1068 ( #1567 )
...
* BestParaHead small changes
Signed-off-by: Serban Iorga <serban@parity.io >
* Renamings
Signed-off-by: Serban Iorga <serban@parity.io >
* Use ParaInfo in parachains loop
Signed-off-by: Serban Iorga <serban@parity.io >
* Define StorageMapKeyProvider
Signed-off-by: Serban Iorga <serban@parity.io >
* CR fixes
Signed-off-by: Serban Iorga <serban@parity.io >
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
793321fcfc
Reexport paste from sp-runtime in bp-runtime to aviod including paste dependency everywhere ( #1556 )
...
* 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
2024-04-10 10:28:37 +02:00
Serban Iorga
77af92b17b
Follow-up on #1419 ( #1531 )
...
* Parachains source cosmetic changes
- Make `ParaHashAtSource` more generic
- Modify `on_chain_parachain_header` to return `HeaderId`
- Shortening variable names
Signed-off-by: Serban Iorga <serban@parity.io >
* Change ParachainsSource::max_head_id type
Change ParachainsSource::max_head_id to Arc<Mutex<NoopOption>>
Signed-off-by: Serban Iorga <serban@parity.io >
* code review changes
2024-04-10 10:28:37 +02:00
Serban Iorga
7969459d07
Change Runtime APIs best_finalized() signature
...
Change Runtime APIs best_finalized() signature to return Option<HeaderId>
Signed-off-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Serban Iorga
cd36d1e15f
Define StorageDoubleMapKeyProvider
...
Signed-off-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Serban Iorga
5d9bd1d0b5
Reduce the number of macros used for SignedExtensions
...
Reduce the number of macros used for SignedExtensions
Signed-off-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Serban Iorga
dc38e3d079
Define HeaderIdProvider trait
...
Define HeaderIdProvider trait
Signed-off-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
ceefd1b05d
remove account derivation functions ( #1498 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
7d97e576d0
Remove without_storage_info for messages pallet ( #1487 )
...
* draft: remove without_storage_info for messages pallet
* some cleanup
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
d11d9fd0b7
Parachain loop metrics ( #1484 )
...
* parachain loop metrics
* some fixes
* mini refactoring
* add tests
2024-04-10 10:28:37 +02:00
Serban Iorga
f8ff3c9142
Unify the operating mode for bridge pallets ( #1483 )
...
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 >
2024-04-10 10:28:37 +02:00
Serban Iorga
ff342fafa9
Avoid duplicate function definitions
...
Avoid duplicate function definitions for:
- ensure_owner_or_root()
- ensure_not_halted()
- set_owner()
- set_operating_mode() / set_operational()
Signed-off-by: Serban Iorga <serban@parity.io >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
b870fe74f8
Parachains pallet benchmarks ( #1436 )
...
* added parachains pallet benchmarks
* deduplicate insertion of bridged header
* pruning weight
* fixes
* fix compilation
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
d582061dff
Remove support for encoded-call messaging from relay and runtime integration code ( #1376 )
...
* remove support for encoded-call messaging
* continue cleanup
* continue cleanup
* continue cleanup
* more cleanpup
* more cleanup
* fmt
* continue cleanup
* spellcheck
* rename
* fix benchmarks
* mention encoded-calls-messaging tag
* fixing deployments
* fix messages generation
* fmt
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
Svyatoslav Nikolsky
214febc46a
expose fee multiplier metrics in messages relay ( #1312 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
22b1e456ab
move storage keys computation to primitivs ( #1254 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
edd1724957
Fix storage parameter name computation ( #1238 )
...
* fixed storage_parameter_key
* added test for storage_parameter_key
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
1ef41a59be
Message transactions mortality ( #1191 )
...
* transactions mortality in message and complex relays
* logging + enable in test deployments
* spellcheck
* fmt
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
a635048b8a
Register-parachain subcommand of substrate-relay ( #1170 )
...
* register parachain relay subcommand
* revert cargo patch
* added basic test
* fmt
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
4b525f4fe1
Token swap pallet benchmarks ( #1174 )
...
* token swap benchmarks
* spellcheck
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
c0df990b90
copypasted -> copied ( #1168 )
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
87cbb382d9
Fix/ignore clippy warnings ( #1157 )
...
* fix/ignore clippy
* --locked check && test
* RUSTC_WRAPPER="" for clippy-nightly, check-nightly, test-nightly
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
5dbf6ba78c
Relay subcommand that performs token RLT <> MLAU token swap ( #1141 )
...
* token swap relay
* token swap subcommand fixes
* fmt
* removed debug traces
* removed commented code
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
Chevdor
3295b0c388
chore: spellchecker fixes ( #1130 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
7369ff9d70
Move some associated types from relay_substrate_client::Chain to bp_runtime::Chain ( #1087 )
...
* move some associated types from relay_substrate_client::Chain to bp_runtime::Chain
* dummy commit
* Revert "dummy commit"
This reverts commit 81bc64aa092df115a7c68e7bb7ca5e83ec31fd20.
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
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
Svyatoslav Nikolsky
20b7f341e1
pay dispatch fee at target chain ( #911 )
...
* pay dispatch fee at target chain
* refund unspent dispatch weight to messages relayer
* test that transfer actually happens
* pay-at-target-cchain benchmarks + fix previous benchmarks (invalid signature)
* include/exclude pay-dispatch-fee weight from delivery_and_dispatch_fee/delivery tx cost
* remvoe some redundant traces
* enum DispatchFeePayment {}
* typo
* update docs
* (revert removal of valid check)
* Update modules/messages/src/benchmarking.rs
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
* Update modules/messages/src/benchmarking.rs
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
* Update modules/messages/src/benchmarking.rs
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
* Update modules/messages/src/benchmarking.rs
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
Co-authored-by: Tomasz Drwięga <tomasz@parity.io >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
ff7f8ad098
pass source and target chain ids to account_ownership_proof ( #963 )
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
Svyatoslav Nikolsky
cb90ea0979
Pre-create metrics registry before loop is started + administrative metrics ( #848 )
...
* administrative metrics
* fmt
* fix compilation
* fix compilation again
* and another one
* remove GenericLoopMetrics
* chttp -> isahc
* remove redundant marker
* not about price metrics
* fmt
2024-04-10 10:28:37 +02:00
Hernando Castano
21baffc832
Update Copyright Date to 2021 ( #864 )
...
* Update copyright date to 2021
* Bump date in license header template
2024-04-10 10:28:37 +02:00
Hernando Castano
8d122b03f1
Rename Finality Verifier and Call Dispatch Pallets ( #838 )
...
* Rename `pallet-finality-verifier` to `pallet-bridge-grandpa`
* Missed some CamelCase ones
* Update logging target in GRANDPA pallet
* Rename `pallet-bridge-call-dispatch` to `pallet-bridge-dispatch`
* Rename the dispatch pallet folder
* Update logging target in Dispatch pallet
* Missed a couple
* Format the repo
* Stop listing individual pallets in Compose logs
* Use correct pallet name in module doc comments
* Add `pallet-bridge-dispatch` to README project layout
* Sort crate names in TOML files
* Rename `pallet-bridge-grandpa` runtime Call alias
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
4105575794
Rename pallet-message-lane into pallet-bridge-messages ( #834 )
...
* use runtime:: prefix for message-lane pallet traces
* renamed message-lane (module and primitives) folder into messages
* replace "message lane" with "messages" where appropriate
2024-04-10 10:28:37 +02:00
Tomasz Drwięga
84cd93f936
Add Westend & Rococo primitives ( #808 )
...
* Move chain primitives to a sub-folder.
* Update workspace members.
* Extract core parts of polkadot.
* cargo fmt --all
* Remove TODO.
* cargo fmt --all
* Fix crate names.
* Add to the latest API.
* cargo fmt --all
* Add nested lock files to ignore (generated during cargo fmt)
* Fix compilation.
* cargo fmt --all
* Fix ignore pattern.
* Address review comments.
2024-04-10 10:28:37 +02:00
Hernando Castano
51db99ea79
Move Storage Parser from Bridge Pallet ( #793 )
...
* Move storage proof checker to runtime primtives
* Add method for parsing storage proofs
* Use finality-verifier pallet in runtime-common
* Get bridge pallet compiling again
* Use storage prover from bp-runtime in a few more places
* Don't leak `std` items from proof helper into `no-std` builds
* Fix benchmarking compilation
* Remove unused import in fuzzer
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
85bb45b5d3
ForbidOutboundMessages and ForbidInboundMessages ( #735 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
2f457775bb
Account proof size in weight formula ( #679 )
...
* fix broken message lane benchmarks
* proof-size related benchmarks
* impl Size for proof parameters
* include proof weight into weight formula
* left TODO
* fixed proof size
* WeightInfoExt::receive_messages_proof_weight
* charge for extra message bytes delivery in send_message
* removed default impl of WeightsInfoExt
* moved weight formulas to WeightInfoExt
* receive_messages_proof_outbound_lane_state_overhead is included twice in weight
* typo
* typo
* fixed TODO
* more asserts
* started wotk on message-lane documentation
* expected_extra_storage_proof_size() is actually expected in delivery confirmation tx
* update README.md
* ensure_able_to_receive_confirmation
* test rialto message lane weights
* removed TODO
* removed unnecessary trait requirements
* fixed arguments
* fix compilation
* decreased basic delivery tx weight
* fmt
* clippy
* Update modules/message-lane/src/benchmarking.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* structs
* Update primitives/millau/src/lib.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* removed readme.md
* removed obsolete trait bounds
* Revert "removed readme.md"
This reverts commit 50b7376a41687a94c27bf77565434be153f87ca1.
* Update bin/runtime-common/src/messages.rs
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
* Update bin/runtime-common/src/messages.rs
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
* Update bin/runtime-common/src/messages.rs
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
* Update bin/runtime-common/src/messages.rs
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
* Update bin/runtime-common/src/messages.rs
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
* Update bin/runtime-common/src/messages.rs
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
* Update bin/runtime-common/src/messages.rs
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
* PreComputedSize
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
2024-04-10 10:28:37 +02:00
Hernando Castano
e4f195d14c
Make Account Derivation More Unique ( #686 )
...
* Use more unique prefix when generating account IDs
* Update derived addresses used in tests
* Make `account` prefix more unique
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
* Update test account IDs again
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
820407ee98
send_message weight now depends on message size (#603 )
...
* `send_message` weight now depends on message size
* fix tests
* Update modules/message-lane/src/benchmarking.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* Update modules/message-lane/src/benchmarking.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
2d08a9d213
Polkadot integration ( #542 )
...
* kusama primitives + client
* polkadot primitives + client
* lost Chain definitions
* fix compilation and fmt
* Update primitives/runtime/src/lib.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
2024-04-10 10:28:37 +02:00
Hernando Castano
951aa36c2b
Add Derived Account Origins to Dispatcher ( #519 )
...
* Update some docs
* Add derived account origin
* Add tests for derived origin
* Do a little bit of cleanup
* Change Origin type to use AccountIds instead of Public keys
* Update (most) tests to use new Origin types
* Remove redundant test
* Update `runtime-common` tests to use new Origin types
* Remove unused import
* Fix documentation around origin verification
* Update config types to use AccountIds in runtime
* Update Origin type used in message relay
* Use correct type when verifying message origin
* Make CallOrigin docs more consistent
* Use AccountIds instead of Public keys in Runtime types
* Introduce trait for converting AccountIds
* Bring back standalone function for deriving account IDs
* Remove AccountIdConverter configuration trait
* Remove old bridge_account_id derivation function
* Handle target ID decoding errors more gracefully
* Update message-lane to use new AccountId derivation
* Update merged code to use new Origin types
* Use explicit conversion between H256 and AccountIds
* Make relayer fund account a config option in `message-lane` pallet
* Add note about deriving the same account on different chains
* Fix test weight
* Use AccountId instead of Public key when signing Calls
* Semi-hardcode relayer fund address into Message Lane pallet
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
74249a0896
Integrate message-lane module RPCs into Rialto/Millau nodes ( #458 )
...
* integrate message-lane RPCs into Millau and Rialto runtime
* fmt
* use instance in InboundLanes
* moved RialtoMessageLaneKeys/MillauMessageLaneKeys inside rpc_extensions_builder to ease Substrate refs update
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
e2d9b6393d
Integrate Rialto <-> Millau message lanes into Millau/Rialto runtimes ( #386 )
...
* millau -> rialto lanes integration
* extrace common message-lane integration types into bridge-runtime-common
* rialto_messages.rs in Millau runtime
* tests
* Update bin/rialto/runtime/src/millau_messages.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* RELAYER_INTEREST_PERCENT -> RELAYER_FEE_PERCENT
* Update bin/runtime-common/src/messages.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* estimate_message_dispatch_and_delivery_fee returns Result
* Update bin/rialto/runtime/src/millau_messages.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* Update bin/rialto/runtime/src/millau_messages.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* Update bin/rialto/runtime/src/millau_messages.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* fmt
* mowed weight formula to primitives
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
2024-04-10 10:28:37 +02:00