Svyatoslav Nikolsky
498a3e83d0
Weight+size limits for bridge GRANDPA pallet calls ( #1882 )
...
* weight+size limits for bridge GRANDPA pallet calls
* continue
* fixed all tests
* some changes to refund computations
* post_dispatch_refunds_relayer_in_all_finality_batch_with_extra_weight
* - dup code
* do not return Pays::No if call is above weight/size limits
* relayer_pays_tx_fee_when_submitting_huge_mandatory_header and relayer_pays_tx_fee_when_submitting_justification_with_long_ancestry_votes
* clippy
* fmt
* clippy
* small change in docs
* fixed GRANDPA-limits constants for Polkadot-like chains
* clippy
* clippy + spelling
* Update primitives/polkadot-core/src/lib.rs
Co-authored-by: Adrian Catangiu <adrian@parity.io >
* Update bin/runtime-common/src/refund_relayer_extension.rs
Co-authored-by: Adrian Catangiu <adrian@parity.io >
* reverted unnecessary change
* GrandpaJustification::max_reasonable_size
---------
Co-authored-by: Adrian Catangiu <adrian@parity.io >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
c6c39be967
ChainWithGrandpa in primitives ( #1885 )
...
* ChainWithGrandpa in primitives
* clippy ++ spelling
* fix benchmarks comppilation
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
25c17feb23
Reject storage proofs with unused nodes: begin ( #1878 )
...
* reject storage proofs with unused nodes: begin
* fix ignores_parachain_head_if_it_is_missing_from_storage_proof
* message_proof_is_rejected_if_it_has_duplicate_trie_nodes && message_proof_is_rejected_if_it_has_unused_trie_nodes
* proof_with_duplicate_items_is_rejected and proof_with_unused_items_is_rejected
* clippy
* fix benchmarks compilation
* impl From<Error> for &'static str
* fix review comments
* added comment
2024-04-10 10:28:37 +02:00
Serban Iorga
5c40f9e5f1
Use parity-util-mem 0.12.0 ( #1856 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
411150b7be
Decrease number of GRANDPA authorities in Polkadot-like chains from 100_000 to 2_048 ( #1852 )
...
* decrease number of GRANDPA authorities in Polkadot-like chains from 100_000 to 2048
* spelling
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
a091b8405e
Update Substrate/Polkadot/Cumulus dependencies + weights v2 ( #1850 )
...
* cargo update
* weights v2
* clippy
* no spellcheck for weights.rs
* fix proof_size component in MAXIMUM_BLOCK_WEIGHT constants
* "fix" proof_size in select_delivery_transaction_limits_works
* spellcheck
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
2ff3a7aa38
Add integrity check for signed extensions ( #1780 )
...
* Add integrity check for signed extensions
* Remove unneeded type specification
2024-04-10 10:28:37 +02:00
Serban Iorga
8a4f984a7a
Define separate signed extension for BHR/BHW ( #1776 )
...
- Make signed extensions for indirect runtimes more extensible
- Define separate signed extension for BHR/BHW
2024-04-10 10:28:37 +02:00
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
Svyatoslav Nikolsky
c81afc3e93
increase MAX_UNREWARDED_RELAYERS_IN_CONFIRMATION_TX and MAX_UNCONFIRMED_MESSAGES_IN_CONFIRMATION_TX for RBH/WBH ( #1765 )
...
* increase MAX_UNREWARDED_RELAYERS_IN_CONFIRMATION_TX and MAX_UNCONFIRMED_MESSAGES_IN_CONFIRMATION_TX for RBH/WBH
* moved MAX_UNREWARDED_RELAYERS_IN_CONFIRMATION_TX and MAX_UNCONFIRMED_MESSAGES_IN_CONFIRMATION_TX to cumulus bridge primitives
* typo
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
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
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
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
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
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
Branislav Kontur
7ad5b0fe56
Bump codec version 3.0.0 -> 3.1.5 + unify parity-scale-codec vs codec ( #1552 )
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
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
03c2f06a27
Parachains finality relay ( #1199 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
f54bd6c779
Parachains finality pallet ( #1068 )
...
* parachains finality
* parachains pallet test
* demo of how to configure GRANDPA pallet instance
* allow instances in parachains pallet
* spellcheck
* TODO + fix
* fmt
* removed invalid storage_keys file
* change all hashers to Blake2_128Concat
* use Twox64Concat for insertion position
* fix build
* fix compilation
* change ParaId and ParaHead types
* TODOs -> TODOs with issues refs
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
c538a39816
Switch to gav-xcm-v3 branch to be able to test bridges + XCMv3 integration ( #1378 )
...
* switch to gav-xcm-v3 branch (wip)
* add comment
* play with CI
* keep playing with CI
* play with CI
* trigger CI
* Revert "trigger CI"
This reverts commit fc35ac648fe6a3ea8e710a2e07dfee7d8762c6c4.
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
65c2c0ccce
Update Substrate/Polkadot/Cumulus references ( #1353 )
...
* cumulus: 4e95228291
polkadot: 975e780ae0d988dc033f400ba822d14b326ee5b9
substrate: 89fcb3e4f62d221d4e161a437768e77d6265889e
* fix refs
* sync changes from https://github.com/paritytech/polkadot/pull/3828
* sync changes from https://github.com/paritytech/polkadot/pull/4387
* sync changes from https://github.com/paritytech/polkadot/pull/3940
* sync with changes from https://github.com/paritytech/polkadot/pull/4493
* sync with changes from https://github.com/paritytech/polkadot/pull/4958
* sync with changes from https://github.com/paritytech/polkadot/pull/3889
* sync with changes from https://github.com/paritytech/polkadot/pull/5033
* sync with changes from https://github.com/paritytech/polkadot/pull/5065
* compilation fixes
* fixed prometheus endpoint startup (it now requires to be spawned within tokio context)
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
2bf5b23262
edition = "2021" ( #1346 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
bc1dcb7548
fix clippy issues ( #1332 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
6f1c4f8beb
impl Decode for SignedExtensions (otherwise transaction resubmitter panicks) ( #1325 )
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
ea2d6f898d
Bump Substrate/Polkadot/Cumulus refs ( #1295 )
...
Substrate: 31d90c202d6df9ce3837ee55587b604619a912ba
Polkadot: 60df3c55c711c2872872d6220f98b2611340e051
Cumulus: a9630551c2
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
4cdd959057
Refactor message relay helpers ( #1234 )
...
* refactor message relay helpers
* single standalone_metrics function
* fixed tests
* clippy + fmt
* removed commented code
* add calls tracing
* fix spelling
* cargo fmt
* -commented code
* fix build again
* post-merge build fix
* clippy + fmt
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
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
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
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
Xavier Lau
3d4d66456d
Code Cleaning ( #1124 )
...
* Remove Trailing Space
* Correct Source Chain Name
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
d554639380
added missing constants to Kusama/Polkadot primitives ( #1114 )
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
f5f73537a8
bump dependencies before start referencing polkadot repo ( #1048 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
f321b07606
Rococo <> Wococo relayer balance guard ( #998 )
...
* relayer balance guards in Rococo <> Wococo
* removed printlns
* update constant
* update constant
* start balance guard for Wococo -> Rococo
* Update relays/bin-substrate/src/chains/wococo_headers_to_rococo.rs
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* Update relays/bin-substrate/src/chains/wococo_headers_to_rococo.rs
Co-authored-by: Hernando Castano <HCastano@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
f6fd87f39e
fix polkadot primitives ( #908 )
2024-04-10 10:28:37 +02:00
Hernando Castano
81d4eb9ea6
Westend Mock Runtime and Client ( #874 )
...
* Copy-Pasta Call code from mock Rococo to mock Westend runtime
* Update Westend client to include signing and call related code
* Add missing part of license header
* Move `account_info_storage_key` to `polkadot-core` crate
2024-04-10 10:28:37 +02:00
Hernando Castano
025a9cad59
Weights for pallet-bridge-grandpa ( #815 )
...
* Add benchmarking skeleton
* Allow runtime to indicate concrete header type for benches
* Set up skeleton for benchmark tests
* Play around with mutating bench header
* Create a working test for benchmarking
* Add benches related to enacting authority set changes
* Add bench for checking effect of prec-commits/vote ancestries
* Use new `no_std` test utils in benchmarks
* Support pallet instances in benchmarking
* Use correct benchmarking instance macro
* Add instance to runtime benchmark helper impl
* Start using new justification creation API
* Allow mock header's number to be specified
* Set up benches with correct fork/depth parameters
* Use new pallet name during runtime bench setup
* Use correct `set_id` in tests
* Limit number of forks as workaround to get tests passing
* Use number of authorities which matches number of forks
* Make sure test post-conditions are checked properly
* Only read `CurrentAuthoritySet` from storage once
* Add combined benchmark for `submit_finality_proof`
* Add bench test
* Introduce config bounds related to justification verification
* Use config consts from pallet in benchmarking
* Return data relevant to benchmarks from helper functions
* Annotate `submit_finality_proof` with autogenerated weights
* Return actual weight after call execution
* Ignore Clippy warnings in bench template
* Update benchmark template
* Use `test-utils` to create test headers
* Clarify that helper is only for messages benches
* Add more documentation to benches
* Update TODOs
* Clarify return types in comment
* Fix pallet name post-merge
* Update NOTE to a TODO item
* Indicate that Config params are max values, not actual values
* Change Config validator count type to be `u32`
* Return decoded justification instead of fields
* Add missing trait bounds for tests
* Correctly issue weight refund
Thanks for spotting this Tomek!
* Update comment
* Add note about SESSION_LENGTH
* Fix benchmarking code
2024-04-10 10:28:37 +02:00
Tomasz Drwięga
51fc83941b
Rococo (mocky)Runtime and Client ( #841 )
...
* Implement fake rococo runtime.
* Generate correct storage key.
* cargo fmt --all
* Move client-rococo.
* Satisfy clippy.
* Apply suggestions from code review
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
* Address review comments.
* Clippy again.
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com >
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
Svyatoslav Nikolsky
715258785f
Added some ML-related constants for polkadot-like chains ( #822 )
...
* added some ML-related constants for polkadot-like chains
* comment
2024-04-10 10:28:37 +02:00