Serban Iorga
56d4013878
Propagate message verification errors ( #2114 )
...
* Propagate message verification errors
* Replace parse_finalized_storage_proof() with storage_proof_checker()
* small fixes
* fix comment
2024-04-10 10:28:37 +02:00
Branislav Kontur
db53d68e9b
Removed relayer_account: &AccountId from MessageDispatch ( #2080 )
...
* SourceBridgeHubChain/TargetBridgeHubChain replaced with RelayerAccountChain
* Fix
* Removed `relayer_account: &AccountId` from `MessageDispatch`
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
f659ebed7a
fail with InsufficientDispatchWeight if dispatch_weight doesn't cover weight of all bundled messages ( #2018 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
fd3ebdf138
MaxRequests -> MaxFreeMandatoryHeadersPerBlock in pallet-bridge-grandpa ( #1997 )
...
* MaxRequests -> MaxFreeMandatoryHeadersPerBlock in pallet-bridge-grandpa
* fix comment
* fix comment
* fix comment
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
74b0eca59c
added UpdatedBestFinalizedHeader event to pallet-bridge-grandpa ( #1967 )
2024-04-10 10:28:37 +02:00
Branislav Kontur
874ab44e00
Bump substrate/polkadot/cumulus ( #1962 )
...
* Bump substrate/polkadot/cumulus
* sp_finality_grandpa - >sp_consensus_grandpa
* sp_beefy -> sp_consensus_beefy
* pallet_randomness_collective_flip -> pallet_insecure_randomness_collective_flip
* fix
* Cumulus parachain stuff
* Cumulus parachain stuff one more
* Millau/Rialto runtimes
* Removed pallet_insecure_randomness_collective_flip
* Millau node
* Removed session historial
* TMP: just try disable all fetches
* Docs in gitlab.yml
2024-04-10 10:28:37 +02:00
Serban Iorga
e7debc4b09
Fix init-bridge ( #1900 )
2024-04-10 10:28:37 +02:00
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
1d6e8a9a26
optimize justification before submit ( #1887 )
...
* optimize justification before submit
* fmt
* spelling
* clippy
* fmt again
* aaand compilation
* clippy
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
c9c6d566d0
RefundRelayerForMessagesFromParachain improvements ( #1879 )
...
* RefundRelayerForMessagesFromParachain improvements
* Address code review comments
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
4982d1c2e5
MaxValues for maps in parachain maps ( #1868 )
...
* MaxValues for maps in parachain maps
* fix compilation
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
bae329c66e
"refund" proof size in GRANDPa pallet ( #1863 )
...
* "refund" proof size in GRANDPa pallet
* clippy
* extra_proof_size_bytes_works
* use saturated_into
* fix review comments
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
e75d872aa7
MaxValues limit for storage maps in the pallet-bridge-grandpa ( #1861 )
...
* MaxValues limit for storage maps in the pallet-bridge-grandpa
* remove use from the future PR
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
cd12d1438e
Fix HeadersToKeep and MaxBridgedAuthorities in Millau benchmarks ( #1851 )
...
* fix `HeadersToKeep` and `MaxBridgedAuthorities` in Millau benchmarks
* typo
* impl review suggestion
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
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
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
Branislav Kontur
52542b11d4
Check origin? ( #1718 )
...
* Check origin?
* Removed ensure_signed
* clippy
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
161d861d9b
Signed extension to refund relayer at the target chain ( #1657 )
...
* add utlity pallet to the Millau runtime
* RefundRelayerForMessagesDeliveryFromParachain prototype
* done with RefundRelayerForMessagesDeliveryFromParachain::post_dispatch
* parse calls
* check batch for obsolete headers/messages
* fmt
* shorten generic arg names + add parachain id generic arg
* check lane_id
* impl all state read functions
* fix typos from review
* renamed extension + reference issue from TODO
* tests for pre-dispaytch
* renamed extension source file
* tests for post-dispatch
* abstract fee calculation
* clippy
* actually fix clippy
* Update bin/runtime-common/src/refund_relayer_extension.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 >
* Update bin/runtime-common/src/refund_relayer_extension.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 >
Co-authored-by: Adrian Catangiu <adrian@parity.io >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
7014046485
only store header state root (pallet-bridge-grandpa) ( #1699 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
6dcecf4425
Reintroduce header chain trait ( #1622 )
...
* reintroduce header chain trait
* renive BridgedChainWithMessages::maximal_extrinsic_size
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
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
6c26aae035
increase max header size of Rialto and Millau (512 -> 1024) ( #1603 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
be2a13c747
Remove without_storage_info from parachains pallet ( #1596 )
...
* remove without_storage_info from pallet-bridge-parachains
* fix benchmarks
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
f38852f661
Remove pallet::without_storage_info from bridge GRANDPA pallet ( #1478 )
...
* remove pallet::without_storage_info from bridge GRANDPA pallet
* StoredBridgedHeader
* spelling
* fix benchmarks
* MAX_BRIDGED_AUTHORITIES: 256 -> 2048
* Update modules/grandpa/src/storage_types.rs
Co-authored-by: Adrian Catangiu <adrian@parity.io >
* Update modules/grandpa/src/storage_types.rs
Co-authored-by: Adrian Catangiu <adrian@parity.io >
* moved max authorities + header size to chain primitives
* removed unused code
* new -> try_new
* fix benchmarks compilation
Co-authored-by: Adrian Catangiu <adrian@parity.io >
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
ea1f46ff45
Add another condition to the reject-obsolete-parachain-heads extension ( #1505 )
...
* add another condition to the reject-obsolete-parachain-heads extension
* add tracing to obsolete-tx-extensions
* fix tests
* extension_rejects_header_from_new_relay_block_with_same_hash
* fmt
* fix benchmarks
2024-04-10 10:28:37 +02:00
Serban Iorga
ec76490ddb
Test pallet owner calls using macro
...
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 >
2024-04-10 10:28:37 +02:00
Serban Iorga
6b67d6b262
Define const LOG_TARGET for bridge pallets
...
Signed-off-by: Serban Iorga <serban@parity.io >
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
a97dedb50f
Store both block number and hash in best finalized storage value ( #1475 )
...
* store both block number and hash in BestFinalized
* also fix relay code
* spelling
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
31a2be845c
Fix on-different-forks metrics during initialization ( #1468 )
...
* fix on-different-forks metrics during initialization
* "initialize" parachain finality pallet in on-demand parachains relay
* decrease converstion rate requests count
* more error logging
* fix compilation
* clippy
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
5340ee5ab5
Added tracked parachains filter ( #1432 )
...
* added trackerd parachains filter + changed some docs
* fix compilation
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
f64357e7e8
CheckBridgedBlockNumber signed extension to reject duplicate header-submit transactions ( #1352 )
...
* CheckBridgedBlockNumber signed extension to reject duplicate header submit transactions
* fix depends_on
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
eb1e48edba
pub use WeightInfo in Grandpa + Messsages pallets ( #1370 )
2024-04-10 10:28:37 +02:00
Adrian Catangiu
d04b018630
Few typos and clippy fixes ( #1362 )
...
* fix typos
* clippy fixes
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
097a28418b
Add some tests to check integrity of chain constants + bridge configuration ( #1316 )
...
* add some tests to check integrity of chain constants + bridge configuration
* try to use named parameters where possible
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
Svyatoslav Nikolsky
0fa8c02e7a
when GRANDPA pallet is halted, relay shall not submit finality transactions ( #1288 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
bb249eff15
verify that GRANDPA pallet is not initialized before submitting initialization transaction ( #1267 )
...
* verify that GRANDPA pallet is not initialized before submitting initialization transaction
* spelling
2024-04-10 10:28:37 +02:00
Antonio Dropulic
7b30098a12
update dependencies ( #1229 )
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
5beeb9b4d6
fixed set_operational in GRANDPA pallet ( #1226 )
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
084da4343d
Box large arguments of GRANDPA pallet ( #1154 )
...
* box large arguments
* benchmarks
* fix
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky
b9bd14562b
set fee for importing mandatory headers to zero ( #1127 )
2024-04-10 10:28:37 +02:00
Hernando Castano
75df85f52a
Make CI happy again ( #1086 )
...
* Appease `cargo-spellcheck`
* Increase logging for `cargo-spellcheck`
* Fix config file name
2024-04-10 10:28:37 +02:00