Commit Graph

450 Commits

Author SHA1 Message Date
Branislav Kontur 2718ed2709 typo (#2690) 2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky df09e83ccb backport https://github.com/paritytech/polkadot-sdk/pull/2139 (#2673) 2024-04-10 10:28:37 +02:00
Branislav Kontur 3787b032c2 Nit from polkadot-sdk (#2665) 2024-04-10 10:28:37 +02:00
Branislav Kontur b66320ab4a Adjusted constant because for measuring we used mistakenly rococo constants (#2664)
* Adjusted constant because for measuring we used mistakenly rococo constants

* typo
2024-04-10 10:28:37 +02:00
Branislav Kontur a3e6ce4f94 Add Rococo<>Westend bridge support/relay (#2647)
* Added Rococo<>Westend primitives

* Latest fashion

* WIP

* Temporary hack for AssetHubWestend to Millau

* typo

* tool/runtime-codegen tweaks

* Rococo<>Westend relay part

* zepter

* Unify `Parachain` vs `Parachains`
2024-04-10 10:28:37 +02:00
dependabot[bot] fdff205f7b Bump scale-info from 2.9.0 to 2.10.0
Bumps [scale-info](https://github.com/paritytech/scale-info) from 2.9.0 to 2.10.0.
- [Release notes](https://github.com/paritytech/scale-info/releases)
- [Changelog](https://github.com/paritytech/scale-info/blob/master/CHANGELOG.md)
- [Commits](https://github.com/paritytech/scale-info/compare/v2.9.0...v2.10.0)

---
updated-dependencies:
- dependency-name: scale-info
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-10 10:28:37 +02:00
Branislav Kontur f539157da2 Backport from polkadot-sdk with actual master (#2633)
* Backport from `polkadot-sdk`

* lingua stuff

* Fixes

* Fix

* Features?

* Fix - v5 -> v6

* zepter format features

* try zepter with CI

* Fix imports

* Fix

* Fix

* Fix

* Revert zepther pipeline
2024-04-10 10:28:37 +02:00
Serban Iorga dcd2debbb2 Grandpa justifications: Avoid duplicate vote ancestries (#2634) (#2635)
* Grandpa justifications: Avoid duplicate vote ancestries
2024-04-10 10:28:37 +02:00
Adrian Catangiu 0067c9fa7c add missing crate descriptions (#2629) 2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky a47f3d40f7 https://gitlab.parity.io/parity/mirrors/polkadot-sdk/-/jobs/3833103 (#2589) 2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 4dc99c4602 Backport changes from polkadot-sdk (#2588)
* backport https://github.com/paritytech/polkadot-sdk/pull/1543

* another backport
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 0bbd2b20a2 Merge bulletin chain changes into polkadot staging (#2574)
* polkadot-staging for v1.0.0

* Add polkadot bulletin chain primitives (#2542)

* add polkadot bulletin chain primitives

* also impl ChainWithMessages

* clippy

* instead of requiring sp_std::vec::Vec import when using runtime API generation macro, let's use full type path directly in macro (#2551)

* Polkadot Bulletin Chain client (#2552)

* relay-polkadot-bulletin-client

* generate Polkadot Bulletin Chain Runtime

* Add relays that will be used in Polkadot Bulletin <> Polkadot.BH bridge (#2556)

* added Polkadot.BH <> Polkadot Bulletin chain relays

* uncommented ED stuff

* complex PolkadotBulletin <> Polkadot.BH relay

* removed TODO

* spelling

* prepare refund extension infra to add refund extension for messages from standalone chain (#2558)

* prepare refund extension infra to add refund extension for messages from standalone chain

* spelling

* apply adapter to fix compilation

* clippy

* added POLKADOT_BULLETIN_CHAIN_ID constant

* RefundBridgedGrandpaMessages to refund transaction costs for messages coming to/from bridged standalone/relay chain (#2566)

* RefundBridgedGrandpaMessages to refund transaction costs for messages coming to/from bridged standalone/relay chain

* clippy

* fix compilation

* fix codec dependency (#2567)

* Support message relay limits override (#2570)

* support message relay limits overrides for bridges

* spelling

* export EXTRA_STORAGE_PROOF_SIZE for Polkadot Bulletin (#2572)
2024-04-10 10:28:37 +02:00
Serban Iorga 4cd9e2fe79 Add unit tests for the equivocation detection loop (#2571)
* Add unit tests for the equivocation detection loop

* clippy

* use std::future::pending()
2024-04-10 10:28:37 +02:00
dependabot[bot] 99e7b3f94e Bump trie-db from 0.27.1 to 0.28.0
Bumps [trie-db](https://github.com/paritytech/trie) from 0.27.1 to 0.28.0.
- [Commits](https://github.com/paritytech/trie/compare/trie-db-v0.27.1...trie-db-v0.28.0)

---
updated-dependencies:
- dependency-name: trie-db
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-10 10:28:37 +02:00
Branislav Kontur a0c9ad5d96 Backport for polkadot-sdk#1446 (#2546)
* Backport for polkadot-sdk#1446

* Cargo.toml
2024-04-10 10:28:37 +02:00
Serban Iorga 4dd35b639d bridges subtree fixes (#2528) 2024-04-10 10:28:37 +02:00
Serban Iorga 2c26640ac3 polkadot-staging branch: Use polkadot-sdk dependencies (#2524)
* Use polkadot-sdk dependencies

* Fix ring-proof ref

* Fix Beefy

* Fix imports

* Simple runtimes fixes

* Fix substrate-relay

* Add ParaAssignmentProvider for Rialto

* Rialto chain_spec fix

* Fix Rialto build

* Fix Rialto pvf workers

* Allow rialto-parachain deprecated features warnings
2024-04-10 10:28:37 +02:00
Serban Iorga 9216b781fd Backport polkadot-sdk changes to polkadot-staging (#2518)
* Asynchronous backing PR (#2300)

* Update substrate & polkadot

* min changes to make async backing compile

* (async backing) parachain-system: track limitations for unincluded blocks (#2438)

* unincluded segment draft

* read para head from storage proof

* read_para_head -> read_included_para_head

* Provide pub interface

* add errors

* fix unincluded segment update

* BlockTracker -> Ancestor

* add a dmp limit

* Read para head depending on the storage switch

* doc comments

* storage items docs

* add a sanity check on block initialize

* Check watermark

* append to the segment on block finalize

* Move segment update into set_validation_data

* Resolve para head todo

* option watermark

* fix comment

* Drop dmq check

* fix weight

* doc-comments on inherent invariant

* Remove TODO

* add todo

* primitives tests

* pallet tests

* doc comments

* refactor unincluded segment length into a ConsensusHook (#2501)

* refactor unincluded segment length into a ConsensusHook

* add docs

* refactor bandwidth_out calculation

Co-authored-by: Chris Sosnin <48099298+slumber@users.noreply.github.com>

* test for limits from impl

* fmt

* make tests compile

* update comment

* uncomment test

* fix collator test by adding parent to state proof

* patch HRMP watermark rules for unincluded segment

* get consensus-common tests to pass, using unincluded segment

* fix unincluded segment tests

* get all tests passing

* fmt

* rustdoc CI

* aura-ext: limit the number of authored blocks per slot (#2551)

* aura_ext consensus hook

* reverse dependency

* include weight into hook

* fix tests

* remove stray println

Co-authored-by: Chris Sosnin <48099298+slumber@users.noreply.github.com>

* fix test warning

* fix doc link

---------

Co-authored-by: Chris Sosnin <48099298+slumber@users.noreply.github.com>
Co-authored-by: Chris Sosnin <chris125_@live.com>

* parachain-system: ignore go ahead signal once upgrade is processed (#2594)

* handle goahead signal for unincluded segment

* doc comment

* add test

* parachain-system: drop processed messages from inherent data (#2590)

* implement `drop_processed_messages`

* drop messages based on relay parent number

* adjust tests

* drop changes to mqc

* fix comment

* drop test

* drop more dead code

* clippy

* aura-ext: check slot in consensus hook and remove all `CheckInherents` logic (#2658)

* aura-ext: check slot in consensus hook

* convert relay chain slot

* Make relay chain slot duration generic

* use fixed velocity hook for pallets with aura

* purge timestamp inherent

* fix warning

* adjust runtime tests

* fix slots in tests

* Make `xcm-emulator` test pass for new consensus hook (#2722)

* add pallets on_initialize

* tests pass

* add AuraExt on_init

* ".git/.scripts/commands/fmt/fmt.sh"

---------

Co-authored-by: command-bot <>

---------

Co-authored-by: Ignacio Palacios <ignacio.palacios.santos@gmail.com>

* update polkadot git refs

* CollationGenerationConfig closure is now optional (#2772)

* CollationGenerationConfig closure is now optional

* fix test

* propagate network-protocol-staging feature (#2899)

* Feature Flagging Consensus Hook Type Parameter (#2911)

* First pass

* fmt

* Added as default feature in tomls

* Changed to direct dependency feature

* Dealing with clippy error

* Update pallets/parachain-system/src/lib.rs

Co-authored-by: asynchronous rob <rphmeier@gmail.com>

---------

Co-authored-by: asynchronous rob <rphmeier@gmail.com>

* fmt

* bump deps and remove warning

* parachain-system: update RelevantMessagingState according to the unincluded segment (#2948)

* mostly address 2471 with a bug introduced

* adjust relevant messaging state after computing total

* fmt

* max -> min

* fix test implementation of xcmp source

* add test

* fix test message sending logic

* fix + test

* add more to unincluded segment test

* fmt

---------

Co-authored-by: Chris Sosnin <chris125_@live.com>

* Integrate new Aura / Parachain Consensus Logic in Parachain-Template / Polkadot-Parachain (#2864)

* add a comment

* refactor client/service utilities

* deprecate start_collator

* update parachain-template

* update test-service in the same way

* update polkadot-parachain crate

* fmt

* wire up new SubmitCollation message

* some runtime utilities for implementing unincluded segment runtime APIs

* allow parachains to configure their level of sybil-resistance when starting the network

* make aura-ext compile

* update to specify sybil resistance levels

* fmt

* specify relay chain slot duration in milliseconds

* update Aura to explicitly produce Send futures

also, make relay_chain_slot_duration a Duration

* add authoring duration to basic collator and document params

* integrate new basic collator into parachain-template

* remove assert_send used for testing

* basic-aura: only author when parent included

* update polkadot-parachain-bin

* fmt

* some fixes

* fixes

* add a RelayNumberMonotonicallyIncreases

* add a utility function for initializing subsystems

* some logging for timestamp adjustment

* fmt

* some fixes for lookahead collator

* add a log

* update `find_potential_parents` to account for sessions

* bound the loop

* restore & deprecate old start_collator and start_full_node functions.

* remove unnecessary await calls

* fix warning

* clippy

* more clippy

* remove unneeded logic

* ci

* update comment

Co-authored-by: Marcin S. <marcin@bytedude.com>

* (async backing) restore `CheckInherents` for backwards-compatibility (#2977)

* bring back timestamp

* Restore CheckInherents

* revert to empty CheckInherents

* make CheckInherents optional

* attempt

* properly end system blocks

* add some more comments

* ignore failing system parachain tests

* update refs after main feature branch merge

* comment out the offending tests because CI runs ignored tests

* fix warnings

* fmt

* revert to polkadot master

* cargo update -p polkadot-primitives -p sp-io

---------

Co-authored-by: asynchronous rob <rphmeier@gmail.com>
Co-authored-by: Ignacio Palacios <ignacio.palacios.santos@gmail.com>
Co-authored-by: Bradley Olson <34992650+BradleyOlson64@users.noreply.github.com>
Co-authored-by: Marcin S. <marcin@bytedude.com>
Co-authored-by: eskimor <eskimor@users.noreply.github.com>
Co-authored-by: Andronik <write@reusable.software>
(cherry picked from commit 6ef1117685)

* Companion: restructure macro related exports (#3015)

* restructure macro related exports

* restructure macro related exports

* wip

* wip

* update cargo lock

* refactor RuntimeDebug on unincluded segment

* fmt

* Companion: restructure `benchmarking` macro related exports (#3039)

* wip

* wip

* restructure benchmarking macro related exports

* add cargo lock

---------

Co-authored-by: parity-processbot <>
(cherry picked from commit 8349c8d18a)

* Add missing workspace members (#3056)

* Add dependencies

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Add missing workspace members

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Fix more

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

---------

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
(cherry picked from commit 44499cf262)

* Add CI for monorepo (#1145)

* Add CI for monorepo

* fix frame tests

* Format features

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* add note for skipping tests and disable test-linux-stable-all

* Fix tests and compile issues (#1152)

* Fix feature dependant import

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Bump test timeout

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Remove feature gate

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Add resolver 2

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Remove old lockfile

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Format features

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

---------

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Fix check-dependency-rules

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* rm test-runtime

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Actually fix script

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* enable cargo-check-each-crate-macos

* Run check-each-crate on 6 machines (#1163)

---------

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
(cherry picked from commit e49493442a)

* Fix features (#1194)

* Manually fix conflicting ?

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Remove duplicates

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Autofix feature propagation

zepter lint propagate-feature --feature try-runtime --left-side-feature-missing=ignore --workspace --fix --feature-enables-dep="try-runtime:frame-try-runtime"
zepter lint propagate-feature --feature runtime-benchmarks --left-side-feature-missing=ignore --workspace --fix --feature-enables-dep="runtime-benchmarks:frame-benchmarking"
zepter lint propagate-feature --feature std --left-side-feature-missing=ignore --workspace --fix
zepter f f

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Bump zepter

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Add some duplicates

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Revert "Add some duplicates"

This reverts commit c6ce627273881c478f5b34f23d3a67db632dbebf.

* Remove default enabled features

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Bump Zepter

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Bump in correct location 🤦

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* DNM: Add some mistakes

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* DNM: Add some mistakes

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Revert "DNM: Add some mistakes"

This reverts commit d469b3f0ba2aaed5f35f6ff5995f99e682da5800.

* Revert "DNM: Add some mistakes"

This reverts commit d892a73a35cac01e3721bdba74574b88bd04f83c.

---------

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
(cherry picked from commit 0400ed9075)

* Fix build profiles (#1229)

* Fix build profiles

Closes https://github.com/paritytech/polkadot-sdk/issues/1155

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Manually set version to 1.0.0

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Use workspace repo

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* 'Authors and Edition from workspace

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

---------

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
(cherry picked from commit dcda0e50f5)

* Set test crates to nopublish (#1240)

* Set test crates to nopublish

* Don't publish more crates

* Set even more crates to nopublish

---------

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
(cherry picked from commit 1c7ef1f232)

* Add missing licenses and tune the scanning workflow (#1288)

* Add missing Cumulus licenses

* Typo

* Add missing Substrate licenses

* Single job checking the sub-repos in steps

* Remove dates

* Remove dates

* Add missing (C)

* Update FRAME UI tests

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Update more UI tests

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

---------

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
(cherry picked from commit bfb241d7f3)

* Restructure `dispatch` macro related exports (#1162)

* restructure dispatch macro related exports

* moved Dispatchable to lib.rs

* fix .gitignore final newline

* ".git/.scripts/commands/fmt/fmt.sh"

* fix rustdocs

* wip

---------

Co-authored-by: Liam Aharon <liam.aharon@hotmail.com>
Co-authored-by: command-bot <>
Co-authored-by: ordian <write@reusable.software>
(cherry picked from commit bdbe982970)

* Fixes

* Fix clippy

---------

Co-authored-by: Chris Sosnin <48099298+slumber@users.noreply.github.com>
Co-authored-by: Juan <juangirini@gmail.com>
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
Co-authored-by: Alexander Samusev <41779041+alvicsam@users.noreply.github.com>
Co-authored-by: Lulu <morgan@parity.io>
Co-authored-by: Przemek Rzad <roopert7@gmail.com>
2024-04-10 10:28:37 +02:00
Serban Iorga 1bbc77fee1 Start the equivocation detection loop from the complex relayer (#2507) (#2512)
* Impl SubstrateEquivocationDetectionPipeline for Millau

* Impl SubstrateEquivocationDetectionPipeline for Rialto

* Make BridgeHubSignedExtension more generic

* Define generate_report_equivocation_call_builder!() macro

* Impl SubstrateEquivocationDetectionPipeline for Rococo

* Impl SubstrateEquivocationDetectionPipeline for Wococo

* Impl SubstrateEquivocationDetectionPipeline for Kusama

* Impl SubstrateEquivocationDetectionPipeline for Polkadot

* Complex relayer simplification

- remove `signer` and `transactions_mortality` and add `tx_params`
- change the order of some fields

* Add equivocation detection CLI traits

* Complex relayer: start equivocation detectin loop

* Update runtimes regeneration script

* Equivocation loop: Fix infinite loop

* Revert "Complex relayer: start equivocation detectin loop"

This reverts commit b518ef85679d73654f9f0e2add38cd3839552057.

* Add subcommand for starting the equivocation detection loop

* Fixes

* Initialize empty metrics for the equivocations detector loop
2024-04-10 10:28:37 +02:00
Serban Iorga 588508acd4 Backport: Implement basic equivocations detection loop (#2375)
* Implement basic equivocations detection loop (#2367)

* FinalityProofsBuf adjustments

- store a Vec<FinalityProof>
- transform prune `buf_limit` to Option

* FinalityProof: add target_header_hash()

* Target client: implement best_synced_header_hash()

* Implement first version of the equivocations detection loop

* Address code review comments

* Leftover

* polkadot-staging adjustments
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 31a6cbeafb Dynamic fees for bridges-v1 (#2294)
* impl backpressure in the XcmBlobHaulerAdapter

* LocalXcmQueueManager + more adapters

* OnMessageDelviered callback

* forbid mesage delivery transactions when the channel between target bridge hub and target asset hub is suspended

* pallet-xcm-bridge-hub-router

* removed commented code

* improvements and tests for palle-xcm-bridge-router

* use LocalXcmChannel in XcmBlobMessageDispatch

* new tests for logic changes in messages pallet

* tests for LocalXcmQueueSuspender

* tests for LocalXcmQueueMessageProcessor

* tests for new logic in the XcmBlobHaulerAdapter

* fix other tests in the bridge-runtime-common

* extension_reject_call_when_dispatcher_is_inactive

* benchmarks for pallet-xcm-bridge-hub-router

* get rid of redundant storage value

* add new pallet to verify-pallets-build.sh

* fixing spellcheck, clippy and rustdoc

* trigger CI

* Revert "trigger CI"

This reverts commit 48f1ba032334e3c6d8470436483736988aa060ac.

* change log target for xcm bridge router pallet

* Update modules/xcm-bridge-hub-router/src/lib.rs

Co-authored-by: Branislav Kontur <bkontur@gmail.com>

* use saturated_len where possible

* fmt

* (Suggestion) Ability to externalize configuration for `ExporterFor` (#2313)

* Ability to externalize configuration for `ExporterFor`
(Replaced `BridgedNetworkId/SiblingBridgeHubLocation` with `Bridges: ExporterFor`)

* Fix millau

* Compile fix

* Return back `BridgedNetworkId` but as optional filter

* Replaced `BaseFee` with fees from inner `Bridges: ExporterFor`

* typo

* Clippy

* Rename LocalXcmChannel to XcmChannelStatusProvider (#2319)

* Rename LocalXcmChannel to XcmChannelStatusProvider

* fmt

* added/fixed some docs

* Dynamic fees v1: report congestion status to sending chain (#2318)

* report congestion status: changes at the sending chain

* OnMessagesDelivered is back

* report congestion status: changes at the bridge hub

* moer logging

* fix? benchmarks

* spelling

* tests for XcmBlobHaulerAdapter and LocalXcmQueueManager

* tests for messages pallet

* fix typo

* rustdoc

* Update modules/messages/src/lib.rs

* apply review suggestions

* ".git/.scripts/commands/fmt/fmt.sh"

* Added `XcmBridgeHubRouterCall::report_bridge_status` encodings for AHK/P (#2350)

* Added `XcmBridgeHubRouterCall::report_bridge_status` encodings for AHK/P

* Spellcheck

* Added const for `XcmBridgeHubRouterTransactCallMaxWeight`

* Cargo.lock

* Introduced base delivery fee constants

* Congestion messages as Optional to turn on/off `supports_congestion_detection`

* Spellcheck

* Ability to externalize dest for benchmarks

* Ability to externalize dest for benchmarks

---------

Co-authored-by: Branislav Kontur <bkontur@gmail.com>
Co-authored-by: command-bot <>
2024-04-10 10:28:37 +02:00
Serban Iorga 48cae06a77 Add equivocation detector crate and implement clients (#2348) (#2353)
* Split FinalitySyncPipeline and SourceClient

* Move some logic to finality_base

* Add empty equivocation detection clients

* Add equivocation reporting logic to the source client

* Use convenience trait for SubstrateFinalitySyncPipeline

* Define JustificationVerificationContext for GRANDPA

* Equivocation source client: finality_verification_context()

* Equivocation source client: synced_headers_finality_info()

* reuse HeaderFinalityInfo

* Define EquivocationsFinder

* Fix spellcheck

* Address review comments

* Avoid equivocations lookup errors
2024-04-10 10:28:37 +02:00
Branislav Kontur 8ebef157a9 Backport fix (for wasm std env) (#2339)
* Backport fix (for wasm `std` env)

* Cargo.lock

* Polkadot/Westend

* Cargo.lock
2024-04-10 10:28:37 +02:00
Serban Iorga bccd6e893e Grandpa: Store the authority set changes (#2336) (#2337)
* Grandpa: Store the authority set changes
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky f42b883745 remove message sender origin (#2322) 2024-04-10 10:28:37 +02:00
Serban Iorga 7807b9de93 GRANDPA module: store accepted justifications (#2298) (#2301)
Store accepted justifications in events.
2024-04-10 10:28:37 +02:00
Serban Iorga 5f73a456c5 GRANDPA justifications: equivocation detection primitives (#2295) (#2297)
* GRANDPA justifications: equivocation detection primitives

- made the justification verification logic more customizable
- added support for parsing multiple justifications and extracting
  equivocations
- split the logic into multiple files
- split the errors into multiple enums
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 57550eb867 More backports from Cumulus subtree to polkadot-staging (#2283)
* more backports from Cumulus subtree

* spelling

* fmt

* trigger CI

* Revert "trigger CI"

This reverts commit b009d732aa26d006a7f2b48878ee864c338c49d5.

* Revert "Revert "trigger CI""

This reverts commit 715606a75948124962b14dbb260cf3aed01bc665.

* Revert "Revert "Revert "trigger CI"""

This reverts commit dc0d2233da86fd12a77216008e59bd38fcbb2fac.
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 4d42bb22f3 Update dependecies (#2277) (#2281)
* cargo update -p parachain-info

* flush

* it compiles

* clippy

* temporary add more logging to cargo deny

* Revert "temporary add more logging to cargo deny"

This reverts commit 20daa88bca6d9a01dbe933579b1d57ae5c3a7bd8.

* list installed Rust binaries before running cargo deny

* changed prev commit

* once again

* try cargo update?

* post-update fixes (nothing important)
2024-04-10 10:28:37 +02:00
Serban Iorga b4c7ffd3d3 GRANDPA: optimize votes_ancestries when needed (#2262) (#2264)
* GRANDPA: optimize votes_ancestries when needed

* Address review comments
2024-04-10 10:28:37 +02:00
Serban Iorga c5f24cb761 Implement RuntimeDebug for GrandpaJustification (#2254) 2024-04-10 10:28:37 +02:00
Serban Iorga fc0aa382ab Deduplicate Grandpa consensus log reading logic (#2245) (#2246) 2024-04-10 10:28:37 +02:00
Branislav Kontur d327c9e0a8 Fix deps from Cumulus (#2244)
* Fix deps

* Fix deps
2024-04-10 10:28:37 +02:00
Branislav Kontur 320aea743b Nits for subtree (#2241)
* Updated version according to Cumulus

* Renaming

* Cargo.lock
2024-04-10 10:28:37 +02:00
Adrian Catangiu cc1966ff43 minor doc fix (#2207) 2024-04-10 10:28:37 +02:00
Adrian Catangiu 564cc5ead7 expose test utilities to be used in BH paras (#2142)
Signed-off-by: acatangiu <adrian@parity.io>
2024-04-10 10:28:37 +02:00
Branislav Kontur 4330d0491c Bump polkadot/substrate (#2134)
* Bump polkadot/substrate

* Fix millau network service

* Fix polkadot_node_core_pvf_worker

* Fix sc-network

* Fix parachain rpc stuff

* Check `integrity-test` for `bridge-runtime-common`

* Backport fix from cumulus https://github.com/paritytech/cumulus/pull/2585/files#diff-5a942d80670b5ef31bb18b5acacab93ff30512d7cd21c19d7da364f76f6bb5c3 because of https://gitlab.parity.io/parity/mirrors/cumulus/-/jobs/2842938

* TODO

* Bump cumulus
2024-04-10 10:28:37 +02:00
Branislav Kontur 7188765244 BHK/P alignments (#2115)
* Constants

* Unused import?

* Cargo.lock

* Unused deps

* TODO: fix doc or reimport?

* Try to aviod redefine para_id constant for `RefundableParachainId`

* Checked and removed TODOs
2024-04-10 10:28:37 +02:00
Serban Iorga d80d2a5039 Cosmetics (#2124)
* Cosmetics

* Address PR comment
2024-04-10 10:28:37 +02:00
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
dependabot[bot] cffc8e3a7b Bump scale-info from 2.5.0 to 2.6.0
Bumps [scale-info](https://github.com/paritytech/scale-info) from 2.5.0 to 2.6.0.
- [Release notes](https://github.com/paritytech/scale-info/releases)
- [Changelog](https://github.com/paritytech/scale-info/blob/master/CHANGELOG.md)
- [Commits](https://github.com/paritytech/scale-info/commits)

---
updated-dependencies:
- dependency-name: scale-info
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky c17f625770 Add more logs to relayer and message pallets (#2082)
* add more logs

* unused import

* fmt
2024-04-10 10:28:37 +02:00
Branislav Kontur f7cc060d9b Nits (#2083) 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 53e1b7e264 Slash relayers for invalid transactions (#2025)
* slash relayer balance for invalid transactions

* require some gap before unstake is possible

* more clippy

* log priority boost

* add issue ref to TODO

* fix typo

* is_message_delivery_call -> is_receive_messages_proof_call

* moved is_receive_messages_proof_call above

* only slash relayers for priority transactions

* Update primitives/relayers/src/registration.rs

Co-authored-by: Adrian Catangiu <adrian@parity.io>

* Update primitives/relayers/src/registration.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>

* Update modules/relayers/src/lib.rs

Co-authored-by: Adrian Catangiu <adrian@parity.io>

* Update primitives/relayers/src/registration.rs

Co-authored-by: Adrian Catangiu <adrian@parity.io>

* benificiary -> beneficiary

---------

Co-authored-by: Adrian Catangiu <adrian@parity.io>
2024-04-10 10:28:37 +02:00
Serban Iorga 13ecaf1eca Small simplifications (#2050) 2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 512d43fabe Revert dispatch-results (#2048)
* Revert "Reintroduce msg dispatch status reporting (#2027)"

This reverts commit 38bb051e3d778ee2f5e9451f89cf479a71fd68f8.

* post-revert fix
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky bd583d6334 update refs (#2041) 2024-04-10 10:28:37 +02:00
Serban Iorga b8f4086095 Define RangeInclusiveExt (#2037)
* Define RangeInclusiveExt

* Use RangeInclusiveExt

* Add docs
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 9e48162df2 refund extra weight in receive_messages_delivery_proof call (#2031) 2024-04-10 10:28:37 +02:00