Commit Graph

151 Commits

Author SHA1 Message Date
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 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 b3c8852bcf FinalityEngine in substrate relay (#1374)
* introduce FinalityEngine in relay code

* add FinalityEngine to relay

* spelling

* fix test compilation

* Update relays/lib-substrate-relay/src/finality/source.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
Adrian Catangiu 14b27a0209 Update Substrate/Polkadot/Cumulus references (#1364)
cumulus: b468d0c33e
polkadot: 827792ca833396c82c726eda0bc2ad32ecddba73
substrate: 666f39b8a22108f57732215de006518738034ba2

bump serde_json to 1.0.79

sync changes from https://github.com/paritytech/substrate/pull/11022

fixed clippy warnings

Signed-off-by: acatangiu <adrian@parity.io>
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 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 ba2b0b086c Mortal conversion rate updater transactions (#1257)
* merge all similar update_conversion_rate functions

* stall timeout in conversion rate update loop

* fmt

* fix
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 2bf5b23262 edition = "2021" (#1346) 2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 9b4d44bcfa Increase rate from metric when estimating fee (#1340)
* ignore errors when dumping logs and container is missing

* fixed typo

* print correct payload length

* increase conversion rate a bit when estimating fee (to avoid message rejects when rate update tx is active)

* fmt
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky e822bbf8ab fixed mess with conversion rates (#1338) 2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky dd7404f249 fix conversion rate override in token swap (#1336) 2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky cfdb9fe7f6 Override conversion rate when computing message fee (#1261)
* override conversion rate when message is sent

* spelling + fmt

* add --conversion-rate-override cli option

* try to read conversion rate from cmd output

* fix output

* fmt
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 0ef401ae53 Revert "Revert "override conversion rate in estimate-message-fee RPC (#1189)" (#1275)" (#1333)
This reverts commit ffd25db46c5855bcef6710b53d5ca3325ce54e56.
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 e656e0089e Reinitialize bridge relay subcommand (#1331)
* reinitialize bridge subcommand

* PolkadotToKusama in reinit-bridge
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 60f82cf459 removed extra *_RUNTIME_VERSION consts from relay code (#1330) 2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 36443f3d54 use mortal transactions in transaction resubmitter (#1326) 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 d4e692e429 increase relay balance guard limits for Polkadot<>Kusama bridge (#1308) 2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 145bce5f25 Fix mandatory headers scanning in on-demand relay (#1306)
* more logging in on-demand headerss

* remove `maximal_headers_difference` concept from on-demand-relay

* another leftover from previous on-demand version

* removed extra log

* fmt
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky e190c35c95 fix session length of Rococo and Wococo (#1304) 2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky c0f6509d40 Fix ss58 prefixes of Polkadot, Kusama and Westend used by relay (#1298)
* fix ss58 prefixes of Polkadot, Kusama and Westend

* fmt
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 fe34a526bb Relay balance metrics (#1291)
* relay balance metrics

* convert balance to "main" tokens in balance metrics

* add balances widgets to maintenance dashboard
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky a9334bb609 support version mode cli options in send-message subcommand (#1284) 2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky c4837d2368 do not start spec_version guard when version mode is set to auto (#1278) 2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 00f68e7722 Move benchmarks from Rialto to Millau (#1277)
* move brnchmarks from Rialto to Millau

* fix limits test
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky eb5a3eecd2 Revert "override conversion rate in estimate-message-fee RPC (#1189)" (#1275)
This reverts commit ad4299f6c91ce4c50cb6fbc739a0c788e2920956.
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky 741484214e override conversion rate in estimate-message-fee RPC (#1189) 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
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
Tomasz Drwięga bbd3f1229a Bump relay version to 1.0.0 (#1249) 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 e675b13042 Refactor finality relay helpers (#1220)
* refactor finality relay helper definitions

* add missing doc

* removed commented code

* fmt

* disable rustfmt for macro

* move best_finalized method const to relay chain def
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky f84590817b Update Rococo/Wococo version + prepare relay for Rococo<>Wococo bridge (#1241)
* update Rococo version + create relayers fund account

* start finality relay guards when complex relay is started
2024-04-10 10:28:37 +02:00
Tomasz Drwięga e69e94d4f9 Enable offchain indexing for Rialto/Millau nodes (#1239)
* Enable off-chain indexing for Rialto & Millau nodes

* cargo fmt --all

* cargo +nightly fmt --all

* fmt is weird.
2024-04-10 10:28:37 +02:00
Adrian Catangiu 1fb70c7ed7 Integrate BEEFY with Rialto & Millau runtimes (#1227)
* Add Beefy pallet to Rialto runtime

* Add Beefy gadget to Rialto node

* Add MMR pallet to Rialto runtime

* Add Beefy pallet to Millau runtime

* Add Beefy gadget to Millau node

* Add MMR pallet to Millau runtime

* Add pallet_beefy_mmr to Millau runtime

* Add pallet_beefy_mmr to Rialto runtime

* Implement MMR and BEEFY APIs in Rialto

* fix unit tests

- should_encode_bridge_send_message_call() tests for new
  runtime encoding resulted from newly added pallets.
- runtime size_of::<Call>() slightly increased from newly
  added pallets.

* fix grumbles

* tighten clippy allowances

* fix more grumbles

* Add MMR RPC to Rialto and Millau nodes

Also implement MmrApi in Millau runtime.

* rialto: use upstream polkadot_client::RuntimeApiCollection
2024-04-10 10:28:37 +02:00
Antonio Dropulic 7b30098a12 update dependencies (#1229) 2024-04-10 10:28:37 +02:00
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 57f3f36cb1 Remove unused PoA<>Substrate bridge (#1210)
* Decouple the PoA bridge code from Rialto
* Remove Rialto PoA bridge code
* Remove relays/bin-ethereum code
* Remove relays/client-ethereum code
* Remove modules/ethereum code
* Remove modules/ethereum-contract-builtin code
* Remove PoA bridge documentation
* Remove primitives/ethereum-poa code
* Decouple Rialto from currency-exchange
* Fix building with runtime-benchmarks
* Fix should_encode_bridge_send_message_call test
    Because we removed some runtime modules/pallets, the
    substrate2substrate bridge pallet has a different index within
    the runtime so its calls have a different encoding.
    Update the test to use the new encoding.
* Update readme - no more PoA bridge
* Remove deployments/bridges/poa-rialto
    Also removes:
    - deployments/networks/eth-poa.yml
    - deployments/networks/OpenEthereum.Dockerfile
* Remove deployments/dev/poa-config
* Update deployments readme - no more PoA bridge
* Remove eth-related scripts
    Deletes:
    - deployments/networks/eth-poa.yml
    - scripts/run-openethereum-node.sh
* Remove poa-relay from gitlab-ci
* Dockerfiles to use substrate-relay as default
* Remove modules/currency-exchange code
* Remove primitives/currency-exchange code

Signed-off-by: acatangiu <adrian@parity.io>
2024-04-10 10:28:37 +02:00
fewensa 19201175e6 Custom relay strategy (#1198)
* Add relayer strategy

* Add default relayer strategy

* default relayer strategy

* expose relayer strategy

* fix compile

* fix compile

* docs

* Rename Relayer to Relay, keep RelayerDecide

* split `DefaultRelayerStrategy` into `AltruisticRelayerStrategy` and `RationalRelayerStrategy`

* Remove relayer mode

* Remove unused import

* Rename `RelayerStrategy` to `RelayStrategy`

* Add missing docs

* clippy

* clippy

* clippy

* clippy

* Revert `relayer_mode` and add `MixStrategy`

* Add `EnforcementStrategy`

* fix bug and simplify relay strategy

* Update message_lane_loop.rs

* Update messages_target.rs

* clippy

* clippy

* clippy

* clippy

* clippy

* clippy

* clippy

* fix test

* fix test

* test

test

test

fix test
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky c2b38ba530 fix clippy things (#1200) 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 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
Svyatoslav Nikolsky 6396239e18 cargo +nightly fmt --all (#1192) 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 7b4f1c2236 Limit max call size of Rialto/Millau runtimes (#1187)
* max call size <= 230 bytes

* fix benchmarks
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky b60df0849c replace collective flip with babe randomness in Rialto (#1188)
* replace collective flip with babe randomness in Rialto

* fmt

* fix test
2024-04-10 10:28:37 +02:00
Svyatoslav Nikolsky f4a82d4e81 fix/ignore cargo deny issues (#1183) 2024-04-10 10:28:37 +02:00