Commit Graph

45 Commits

Author SHA1 Message Date
Svyatoslav Nikolsky bbf8b51f9c Unify metric names (#1209)
* unify metric names

* refactor standalone metrics

* headers sync metrics

* post-merge fix

* fix compilation

* fmt

* fix dashboards

* fix local dashboards

* update Rococo/Wococo runtime version

* remove commented code

* fixed grumbles

* fmt

* fixed widget names
2024-04-10 10:28:37 +02:00
Adrian Catangiu 2a6b065a91 Remove unused relays/headers (#1216)
* Decouple `relays/client-substrate` from `headers_relay`
* Remove `blocks_in_state` from `SyncLoopMetrics`
    This metric was only relevant for PoA <> Substrate bridge.
* Move `sync_loop_metrics.rs` to `relays/finality`
* Remove unused `SyncLoopMetrics::update()`
* Hook up SyncLoopMetrics to finality_loop
* Delete now unused `relays/headers`

Signed-off-by: acatangiu <adrian@parity.io>
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
Vladislav 5842968273 Unify error enums in substrate and ethereum clients with thiserror (#1094)
* Unify error enums in substrate and ethereum clients with `thiserror`

Related to https://github.com/paritytech/parity-bridges-common/issues/857

* Add license pre-amble

* rustfmt

* Fix spelling
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
David f3eefc9df9 Upgrade jsonrpsee to v0.3 (#1051)
* Upgrade `jsonrpsee` to v0.3

* whitespace

* fmt

Co-authored-by: Svyatoslav Nikolsky <svyatonik@gmail.com>
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 70f87e826c Add rialto-parachain runtime and node (#1142)
* Substrate: 63b32fbaa2764c0a8ee76b70cdfa0fcb59b7181f
Polkadot:  7229ab87acf5bc5d4d10655ad1a9819a1e317442
Cumulus:   d5284b0e78

* rialto parachain runtime

* fixed tests

* add node + bump refs (not compiling yet):
Substrate:           630422d6108cbaaca893ab213dde69f3bdaa1f6b
Polkadot:            7229ab87acf5bc5d4d10655ad1a9819a1e317442
Cumulus:             5af2990cfd
GrandpaBridgeGadget: c152c45ac331eb8ab40d956ab1d008d181810ef4

* fix compilation (collator is not working)

* more fixes

* fmt

* spellcheck

* fix warnings

* fix compilation

* fmt

* trigger CI

* trigger CI

* Revert "trigger CI"

This reverts commit a31f53cec47909817b31a48f3c9f1abd9321f72c.

* benchmarks

* fix benchmarks

* fix again

* Revert "Revert "trigger CI""

This reverts commit 1dea8b42ac8bca830dea982fd2613eb89d607a6c.

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

This reverts commit 8fb74fa5eba483b7f6a3ce3e25a60757aef4c6bc.

* try fix

* lost lock file

* spellcheck

* try to disable sccache for cargo check

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

This reverts commit f157461482d4c1d19156715c4b1ee2acb169531b.

* try to disable again

* disable sccache for test
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
Svyatoslav Nikolsky 7730e417a8 Increase pause before messages generation start (#1126)
* increase pause before messages generation start

* spelling
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
Svyatoslav Nikolsky 03a54df398 Fix delivery transaction estimation used by rational relayer (#1109)
* fix delivery transaction estimation in greedy relayer

* fixed typo

* improve logging

* improve logging

* fmt

* fix compilation

* fmt

* Update relays/lib-substrate-relay/src/messages_target.rs

Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com>

* review

Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com>
2024-04-10 10:28:37 +02:00
Antonio Dropulic 5c71f0e996 Refactor substrate messages source and substrate messages target (#1105)
* Remove redundant generic parameters from SubstrateMessagesSource

* Remove redundant generic parameters from SubstrateMessagesTarget

* use uniform alias naming

* use aliases instead of fully quallified syntax

* pr feedback
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
Squirrel 8b52cd2593 Remove unused deps (#1102)
* remove unused dev deps

* Removing unused deps
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 3ef4574594 Stored conversion rate updater (#1005)
* update conversion rate: initial commit

* Rialto=Polkadot && Millau=Kusama + actually update conversion rates

* update deployment scripts and readme

* allow non-zero difference between stored and real rates

* dummy commit

* Revert "dummy commit"

This reverts commit a438198180a8385feeaaca60c9d2da0950465215.

* clippy

* #[allow(clippy::float_cmp)] in conversion rate update

* dummy

* Revert "dummy"

This reverts commit 90cd6e47cda56f655e94dbef76138e6cc58d664a.

* spell

* shared_value_ref() -> get()

* Revert "shared_value_ref() -> get()"

This reverts commit 20aa30de6a59b2099cfba3e9676e71200b7bb468.
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 69d41127bc Fix Westend -> Millau sync (#1064)
* read justifications from stream using channel + task that fills that channel

* Arc<Mutex> -> Mutex
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 09d30894d1 When restarting client, also "restart" tokio runtime (#1065)
* remember new tokio runtime on reconnect

* compilation
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 63d6fc436a use tokio reactor to execute jsonrpsee futures (#1061) 2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 6103fbe40b Update jsonrpsee reference (#1049)
* update jsonrpsee

* test

* Revert "test"

This reverts commit 2b69652ab92ff0d9649088c76faed2c94384540d.
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 db0216dabb estimate transaction fee (#1015) 2024-04-10 10:28:37 +02:00
kaichao 010588e95a Allow Root to assume SourceAccount. (#1011)
* Allow Root to assume SourceAccount.

* fmt code
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky c69c682a4c Add --only-mandatory-headers mode (#1004) 2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 09df16612b Messages relayer operating mode (#995)
* introduce relayer mode enum

* removed MaximalReward mode

* TODO

* Saturating -> SaturatingAdd

* ref issue in TODOs

* Update relays/messages/src/message_race_delivery.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 4a47452c20 Move ChainWithBalances::NativeBalance -> Chain::Balance (#990)
* move ChainWithBalances::NativeBalance -> Chain::Balance

* dummy commit

* Revert "dummy commit"

This reverts commit c00642153d260685a91d4fffbc424d225741fceb.
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 6301ae0636 Always run on-demand headers relay in complex relay (#975)
* always run on-demand headers relay in complex relay

* fix compilation
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky f8f8f42a89 in auto-relays keep trying to connect to nodes until connection is established (#971) 2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 4321d20d2f jsonrpsee alpha6 (#938) 2024-04-10 10:28:37 +02:00
Niklas Adolfsson f857771ce8 Update jsonrpsee to 0.2.0-alpha.5 (#914)
* update jsonrpsee to 0.2.0-alpha.5

* cargo fmt
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 5e26ba4999 (temporarily) Switch to jsonrpsee master (#913)
* (temporarily) switch to jsonrpsee master

* removed param used for tests
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky e2131724fb Complex headers+messages Millau<->Rialto relay (#878)
* complex headers+messages relay

* post-merge fix

* fix + test issue with on-demand not starting
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 0d60f42b5e Use Substrate state_getReadProof RPC method to get storage proofs (#893)
* use Substrate state_getReadProof method instead of pallet-bridge-messages-rpc

* Fix typo

Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com>
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky a783775ca5 RestartNeeded is a connection error (#894) 2024-04-10 10:28:37 +02:00
Hernando Castano b569f201cf Bump jsonrpsee to Alpha.3 (#892)
* Bump `jsonrpsee` to `alpha.3`

* Arc-ify `WsClient`
2024-04-10 10:28:37 +02:00
Hernando Castano c6ae74725b Bump Substrate (#871)
* Bump Substrate

* Change usage of "Module" to "Pallet"

Related Substrate PR: https://github.com/paritytech/substrate/pull/8372

* Add `OnSetCode` config param

Related Substrate PR: https://github.com/paritytech/substrate/pull/8496

* Update Aura Slot duration time type

Related Substrate PR: https://github.com/paritytech/substrate/pull/8386

* Add `OnSetCode` to mock runtimes

* Add support for multiple justifications

Related Substrate PR: https://github.com/paritytech/substrate/pull/7640

* Use updated justification type in more places

* Make GenesisConfig type non-optional

Related Substrate PR: https://github.com/paritytech/substrate/pull/8275

* Update service to use updated telemetry

Related Substrate PR: https://github.com/paritytech/substrate/pull/8143

* Appease Clippy
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 67cdca8aa4 Use GrandpaJustification instead of Vec<u8> in Pallet API (#847)
* Stop passing raw encoded justifications to pallet API

By having the API accept a struct-ified justification we are able to
better utilize the justifications fields for weight calculations.

* Update relayer code to use decoded justifications

* Add justification to `expect()` statement

* Fix some imports

* Make justification wrapper contain decoded justification

* Rename some fields

* Get rid of warnings

* Appease Clippy

* Only decode justification once at init time

* Remove unnecessary method

* Remove justification wrapper

This became kinda unnecessary since we could implement the FinalityProof
trait on GrandpaJustification directly.
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
Svyatoslav Nikolsky 4e4e9a8e4e on-demand headers relay (#833)
* on-demand headers relay

* bool::then

* move file

* atomic submit_signed_extrinsic

* remove cli options from future

* test on-demand relay

* TODOs

* fixed initialization call for Westend -> Millau

* Update relays/client-substrate/src/client.rs

Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com>

* removed on_demand_headers_relay.rs

* on_demand_headers_relay traces

* fix compilation

* fmt

* docs

Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com>
2024-04-10 10:28:37 +02:00
Tomasz Drwięga acb872fbb0 Flatten back the structure (#837)
* Remove chains.

* Move relay clients.

* Flatten generic.

* Fix fmt.
2024-04-10 10:28:37 +02:00