Commit Graph

2849 Commits

Author SHA1 Message Date
Bastian Köcher fce5872698 Switch types to use RuntimeDebug instead of gated Debug (#4652)
* Switch types to use `RuntimeDebug` instead of gated `Debug`

This is useful for when you want to debug in wasm and enable the
`force-debug` feature of `sp-debug-derive`.

* Fixes

* 🤦
2022-01-11 12:28:48 +01:00
Keith Yeung 185e301fdd Move XCM runtime configurations into their own files (#4644)
* Move XCM runtime configurations into their own files

* Update copyright year

* Fix compilation errors

* Import XCM types in westend runtime unit tests
2022-01-11 09:09:34 +00:00
Denis Pisarev 3ce6f9212c CI: remove rococo from CI (#4666)
* CI: remove rococo from CI

* CI: typo

* CI: another typo

Co-authored-by: CI system <>
2022-01-10 18:28:06 +01:00
Seun Lanlege 88cfa86d72 bye bye tes-runner (#4680) 2022-01-10 15:38:24 +01:00
Robert Klotzner 9514caee88 Small mostly doc improvements (#4661)
* Better docs on non initialized state.

* Document better what is happening.

* More precise errors.

* cargo fmt
2022-01-10 12:28:20 +01:00
sandreim 0da05cac26 Remove sleep from tests (#4639)
* Remove sleep and use polkadot test service

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* updates

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Fix other tests

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Run metrics tests separately

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* copy some substrate utilities

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* update runtime metric test

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Remove sleep from cli tests

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* cargo

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Polkadot companion for Substrate#10463 (#4519)

* Grandpa and Beefy protocol names include chain id

Signed-off-by: acatangiu <adrian@parity.io>

* chain_spec: include fork id

* use simplified protocol name

* fix after merge

* avoid using hash default, even for protocol names

* update lockfile for substrate

Co-authored-by: parity-processbot <>

* configuration: Update upgrade validation delay doc (#4662)

* typo

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* review feedback

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* cargo lock

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* use testnet profile

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Don't run with runtime-benchmark feature

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* conditional compile up one level

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

Co-authored-by: Sergei Shulepov <sergei@parity.io>
2022-01-10 11:00:46 +00:00
Bastian Köcher c342e99261 Companion: code-substitute: Switch from block_hash to block_number (#4667)
* Companion: code-substitute: Switch from `block_hash` to `block_number`

* Update Substrate
2022-01-10 09:49:44 +01:00
Sergei Shulepov 20f9b2c421 paras: fix weight computation (#4673)
Looks like it is an artifact of prior code and now it is redundant.
2022-01-07 13:25:53 -06:00
Sergei Shulepov d752f8664a pvf-precheck: PVF pre-checker subsystem (#4643)
This commit implements the last major piece of #3211: the subsystem that
tracks PVFs that require voting, issues pre-check requests to
candidate-validation and makes sure that the votes are submitted to the
chain.
2022-01-07 18:10:23 +00:00
Chevdor db790e967f Fix command to check substrate base ref (#4671) 2022-01-07 17:14:20 +00:00
Javier Viola c03e60baa0 [zombinet] initial implementation of zombienet backchannel (#4377) 2022-01-07 17:48:10 +01:00
Kian Paimani d5cb81a62a Fix locked deposits of Nicks pallet (#4656)
* refund the lost deposit of historical nick module

* Fix doc

* add comments etc.

* guard it better

* more log

* fix build
2022-01-07 15:05:54 +00:00
Kian Paimani 8ac3f5f23b Fix locked deposit of council voters (#4655)
* Fix locked deposit of council voters

* add account ids as comment
2022-01-07 15:05:28 +00:00
Robert Klotzner 2f1643b430 Better error for spurious cache misses. (#4669)
Happened on Kusama for some not yet known reason.
2022-01-07 10:23:20 +00:00
Andronik c805500dfb zombinet: bump collator image (#4668) 2022-01-07 09:04:20 +01:00
Adrian Catangiu 5cc5b674f9 Companion for Substrate#10568 - Add new BEEFY RPC (#4638)
* support best Beefy RPC through arc<mutex>

* beefy RPC through lockless message passing - wip

Not working because channel can't be simply opened and receiver passed
to `rpc_extensions_builder` because `rpc_extensions_builder` has to be
`Fn` and not `FnOnce`... and and Receiver side of mpsc can't be cloned

yay!..

* beefy RPC through lockless message passing

* beefy: use specialized type definitions

* bubble up service errors from BEEFY RPC

* update lockfile for substrate

Co-authored-by: parity-processbot <>
2022-01-06 14:33:50 +00:00
Alexander Samusev 041543882b [ci] .gitlab-ci.yml chores (#4663)
* rename malus.Dockerfile

* ci chores

* fix pipeline
2022-01-06 12:25:24 +01:00
Sergei Shulepov b9e6d96c87 configuration: Update upgrade validation delay doc (#4662) 2022-01-05 23:06:00 +01:00
Adrian Catangiu 80606491e4 Polkadot companion for Substrate#10463 (#4519)
* Grandpa and Beefy protocol names include chain id

Signed-off-by: acatangiu <adrian@parity.io>

* chain_spec: include fork id

* use simplified protocol name

* fix after merge

* avoid using hash default, even for protocol names

* update lockfile for substrate

Co-authored-by: parity-processbot <>
2022-01-05 17:43:08 +00:00
sandreim b93c6e68ab Parachain runtime metrics followup (#4602)
* initial changes

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* fmt

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* remove file

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Remove pallet

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* fix copyright year

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Remove metric registration op

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Register runtime metrics in client

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* fmt

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* fix build without `runtime-metrics`

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* reduce visibility

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* remove metric prefix logic, use hardcoded

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* fix

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* review feedback

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Split CounterVec api so it doesn't need mutability

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Const beautify

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* fix

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Fix

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* fix docs

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Merge web ui feedback.

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2022-01-05 15:33:02 +02:00
Adrian Catangiu 8a6ca36ad0 Bump serde_json from 1.0.73 to 1.0.74 (#4659)
Signed-off-by: acatangiu <adrian@parity.io>
2022-01-05 15:09:21 +02:00
Kian Paimani 18532b671a Fully enable bags-list pallet in polkadot runtime (#4653)
* Fully enable bags-list pallet in polkadot runtime

* cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=polkadot-dev --steps=50 --repeat=20 --pallet=pallet_staking --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/polkadot/src/weights/

* cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=pallet_staking --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/

* cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=pallet_staking --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/

Co-authored-by: Parity Bot <admin@parity.io>
2022-01-05 12:27:29 +00:00
Andronik 868556256e lower debug level for testnet build (#4658) 2022-01-04 13:38:50 +00:00
Andronik aff88a864a collator-protocol: short-term fixes for connectivity (#4640)
* collator-protocol: add to reserved peers on every relay parent

* bump collator slots from 25 to 100

* collator-protocol: reduce inactivity timeout from 24s to 5s

* try to satisfy spellcheck

* add connection log

* fmt

* bring a warn back

* gather validators across all active leaves
2022-01-04 12:58:47 +01:00
Robert Klotzner 83c8afcbb9 Don't change rep on timeout in collator protocol. (#4642)
* Don't change rep on timeout in collator protocol.

* Fix tests.

* Fixes.
2022-01-04 11:40:20 +00:00
Zeke Mostov 712b53f468 Update remote ext test default uri (#4654) 2022-01-04 09:08:22 +01:00
Martin Pugh 2f7b042cc4 Update RELEASE.md to reflect reality (#4570)
There have been some subtle changes to the release process since this document was last updated. This PR updates the RELEASE.md to reflect these changes.
2022-01-03 16:40:48 +01:00
Keith Yeung 5047ef8eff Set CurrentCodeHash before running some dispatchable benchmarks (#4645)
* Set CurrentCodeHash before running some dispatchable benchmarks

* Use insert instead of put

* Actually hash the ValidationCode

* cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_paras.rs

Co-authored-by: Parity Bot <admin@parity.io>
2022-01-03 02:05:37 +00:00
Sergei Shulepov 575775a19f paras: split tests (#4636)
This is only a module structure change: the tests module was promoted to
have its own file.
2022-01-02 22:03:34 -04:00
dependabot[bot] 5f7726958d Bump quote from 1.0.10 to 1.0.14 (#4632)
Bumps [quote](https://github.com/dtolnay/quote) from 1.0.10 to 1.0.14.
- [Release notes](https://github.com/dtolnay/quote/releases)
- [Commits](https://github.com/dtolnay/quote/compare/1.0.10...1.0.14)

---
updated-dependencies:
- dependency-name: quote
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-02 20:49:25 +01:00
dependabot[bot] bab7c8d4f1 Bump pin-project from 1.0.8 to 1.0.9 (#4606)
* Bump pin-project from 1.0.8 to 1.0.9

Bumps [pin-project](https://github.com/taiki-e/pin-project) from 1.0.8 to 1.0.9.
- [Release notes](https://github.com/taiki-e/pin-project/releases)
- [Changelog](https://github.com/taiki-e/pin-project/blob/main/CHANGELOG.md)
- [Commits](https://github.com/taiki-e/pin-project/compare/v1.0.8...v1.0.9)

---
updated-dependencies:
- dependency-name: pin-project
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update pin-project to fix compilation

* Also bump the old ones

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Bastian Köcher <info@kchr.de>
2022-01-02 18:25:56 +01:00
Sergei Shulepov 78b3dc214a chore: fix copy&paste and tidy comments (#4646)
As was brought up in [here][og], we have some copy&paste comments. I
fixed them and also took liberty of fixing some other places.
Specifically, those that say "module" instead of contemporary "pallet".

[og]:
https://github.com/paritytech/polkadot/pull/4603#discussion_r776971291
2022-01-01 18:13:17 +01:00
Sergei Shulepov 49722d2846 derive Copy and Clone for Upgrade signals (#4637) (#4647)
Motivation is to resolve [this
TODO](https://github.com/paritytech/cumulus/blob/b9ba74892ad6199128a45703b89ff06f429be7fa/test/relay-sproof-builder/src/lib.rs#L73) eventually
2022-01-01 16:49:46 +00:00
Sergei Shulepov 5f6a03925a paras: fix upgrade restriction signal (#4603)
Closes #3971

Read the linked issue.

Apart from that, this addresses the concern raised in this [comment] by
just adding a test. I couldn't find a clean way to reconcile a block
number delay with a PVF voting TTL, so I just resorted to rely on the
test. Should be fine for now.

[comment]: https://github.com/paritytech/polkadot/pull/4457#discussion_r770517562
2021-12-31 15:32:40 +00:00
Sergei Shulepov 72a92eaf9e configuration: Rename validation_upgrade_{frequency -> cooldown} (#4635)
This just renames a member of `HostConfiguration` from
validation_upgrade_frequency to -//-_cooldown.

As was already pointed out in #4460 the existing name is a misnomer, the
member actually represents a minimum time period between upgrades, which
is neatly expressed by a word cooldown.

I've been planning this rename already for some time and the term is
already used in paras module:

https://github.com/paritytech/polkadot/blob/1394b70d493a3b4bea7a9ae14af094081bc84456/runtime/parachains/src/paras.rs#L1568-L1574
2021-12-30 20:24:47 +00:00
dependabot[bot] 86a9658f7c Bump lru from 0.7.1 to 0.7.2 (#4633)
Bumps [lru](https://github.com/jeromefroe/lru-rs) from 0.7.1 to 0.7.2.
- [Release notes](https://github.com/jeromefroe/lru-rs/releases)
- [Changelog](https://github.com/jeromefroe/lru-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jeromefroe/lru-rs/compare/0.7.1...0.7.2)

---
updated-dependencies:
- dependency-name: lru
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-29 20:53:06 +01:00
Sergei Shulepov 4bf62d85a6 paras: add governance control dispatchables (#4575)
* paras: add governance control dispatchables

Adds a couple of functions for governance control for the paras module
in the anticipation of PVF pre-checking enabling.

Specifically, this commit adds a function for pre-registering a PVF that
governance trusts enough. This function will come in handy in case there
is a parachain that does not follow the GoAhead signal. That is, does
not include https://github.com/paritytech/cumulus/pull/517.

This may be not an exhaustive list of the functions that may come in
handy. Any suggestions to add more are welcome.

* cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_paras.rs

* cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=polkadot-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/polkadot/src/weights/runtime_parachains_paras.rs

* cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_paras.rs

* cargo run --quiet --release --features runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_paras.rs

Co-authored-by: Parity Bot <admin@parity.io>
2021-12-29 15:42:10 +01:00
Andronik a44349f652 custom cargo profiles for production (#4627)
* add custom profiles and specify MSVR as 1.57

* fix host-perf-check command

* use testnet profile for CI images

* do not do lto for testnet profile

* fix artifact path

* test with testnet profile to reuse build artifacts

* Revert "fix host-perf-check command"

This reverts commit f1d15492204b8251685a97636cbb5a5f394f21da.

* bump zombienet version

Co-authored-by: Javier Viola <javier@parity.io>
2021-12-29 14:10:40 +00:00
Sergei Shulepov 1394b70d49 pvf-precheck: update implementers' guide (#4612)
This commit incorporates the changes made to the runtime in the
following PRs:

- https://github.com/paritytech/polkadot/pull/4408
- https://github.com/paritytech/polkadot/pull/4457
- https://github.com/paritytech/polkadot/pull/4540
- https://github.com/paritytech/polkadot/pull/4542
- https://github.com/paritytech/polkadot/pull/4581

Note that this PR does not include the description of the PVF
pre-checker subsystem. This should be addressed within
https://github.com/paritytech/polkadot/issues/4611

Co-authored-by: sandreim <54316454+sandreim@users.noreply.github.com>
2021-12-29 14:32:08 +01:00
Keith Yeung cf509bdb51 Use derive macro to generate XcmWeightInfo trait (#4618)
* Use derive macro to generate XcmWeightInfo trait

* Move the Weight type alias out of proc macro
2021-12-29 06:38:11 +00:00
dependabot[bot] ebfe0b7168 Bump proc-macro2 from 1.0.34 to 1.0.36 (#4619)
Bumps [proc-macro2](https://github.com/dtolnay/proc-macro2) from 1.0.34 to 1.0.36.
- [Release notes](https://github.com/dtolnay/proc-macro2/releases)
- [Commits](https://github.com/dtolnay/proc-macro2/compare/1.0.34...1.0.36)

---
updated-dependencies:
- dependency-name: proc-macro2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-29 01:57:10 +00:00
sandreim 90d986121d Add Parachain Grafana dashboards (#4578)
* Read me.

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Add dashboards and readme

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Update root readme

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Add dashboard links in readme

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* updates

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* Updates

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>

* bump zombienet version

Co-authored-by: Javier Viola <javier@parity.io>
2021-12-28 20:18:13 +00:00
Sergei Shulepov 87c753e35c collation-gen: don't hash validation code (#4628)
* runtime-api: add validation_code_hash API

This is the first step to close
https://github.com/paritytech/polkadot/issues/4524

* collation-gen: don't hash validation code

Closes https://github.com/paritytech/polkadot/issues/4524
2021-12-28 20:16:28 +00:00
Sergei Shulepov 91aff5d341 runtime-api: add validation_code_hash API (#4629)
This is the first step to close
https://github.com/paritytech/polkadot/issues/4524
2021-12-28 20:16:03 +00:00
Sergei Shulepov b49291dc76 configuration: validation_upgrade_delay consistency (#4583)
Closes #4248

Impose additional constraint on configuration consistency:
`validation_upgrade_delay` should not be less than or equal to 1.

See the original issue for more details.
2021-12-28 16:46:51 +01:00
Sergei Shulepov a17162afa8 paras: fix placeholder weight (#4625)
Setting zero as weight may be a source of problems.

The problem is, a rogue validator can shove a lot of duplicated votes
and thus fill a block with work that may well exceed the weight limit.
2021-12-28 15:04:11 +01:00
Sergei Shulepov 3c226d9dcf configuration: Consistency checks for PVF pre-checking (#4580)
As was suggested by Alexander Popiak [here][comment], this commit
checks the consistency of the configuration.

[comment]:
https://github.com/paritytech/polkadot/pull/4420#discussion_r764796519
2021-12-28 14:53:52 +01:00
sandreim 979fa1f5ab Bump sleep from 10 to 30s (#4613)
Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>
2021-12-27 18:44:42 +01:00
Sergei Shulepov 4d76878759 configuration: Unified consistency checks (#4581)
This commit refactors the consistency checks. Instead of each individual
setter performs its checks locally, we delegate those checks to the
already existing function `check_consistency`. This removes duplication
and simplifies the logic.

A motivating example of this one is the next PR in the stack that will
introduce a check for a field, which validity depends on the validity of
other two fields. Without this refactoring we will have to place a check
not only to the field in question, but also to the other two fields so
that if they are changed they do not violate consistency criteria. It's
easy to imagine how this can go unwieldy with the number of checks.

This also adds a test that verifies that the default chain spec host
configuration is consistent.
2021-12-27 14:09:13 +00:00
Andronik Ordian d077ac2c5e zombienet: fixed adder-collator image for the smoke test (#4600)
* zombinet: fixed adder-collator image for the smoke test

* update COL_IMAGE

* bump zombienet version

* try a different version

Co-authored-by: Javier Viola <javier@parity.io>
2021-12-27 13:29:37 +01:00