Commit Graph

169 Commits

Author SHA1 Message Date
Gavin Wood ca379cf7c8 Companion for #10896: Minor Uniques pallet improvements (#1070)
* Formatting

* Add set_accept_ownership weight

* Revert lock file

* Fixes

* Fixed

* Revert lock

* Fixes

* Bump Substrate
2022-03-07 11:02:03 +01:00
Sebastian Kunert e495168051 Support running relay chain full node as non-collator (#1069)
* Run relay chain full node not as collator

* Clean up
2022-03-04 17:02:37 +01:00
Bastian Köcher b78414e951 polkadot-collator: Switch to wasm only (#1054)
* polkadot-collator: Switch to wasm only

This switches the polkadot-collator to run everything in wasm only mode. While we should not that
yet with the relay chain, because it can happen that we run out of memory (very unlikely). On the
relay chain that would be bad, because we only have at max 2 sessions to bring everything back, for
Parachains that isn't such a problem as they would only stall and we could roll out a release that
fixes it. Besides that, Parachain validation on the relay chain happens in Wasm already all the time
and there is the memory usage even higher then on block import.

* cargo fmt

* remove unused var

Co-authored-by: Squirrel <gilescope@gmail.com>
2022-03-02 11:44:53 +00:00
Dan Shields 62ccc85392 Update Cumulus to common Cargo formmating scheme (#1050)
* Update throughout with common Cargo formating scheme
2022-03-02 00:07:29 -07:00
Dan Shields bd4f30259a Add wasmtime feature to all parachain clients (#1058)
* add wasmtime feature to all parachain clients

* Apply suggestions from code review

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2022-03-01 20:41:21 +00:00
Sebastian Kunert bc532724b0 Introduce rpc client for relay chain full node (#963)
* Initial network interface preparations

* Implement get_storage_by_key

* Implement `validators` and `session_index_for_child`

* Implement persisted_validation_data and candidate_pending_availability

* Fix method name for persisted_validation_data and add encoded params

* Implement `retrieve_dmq_contents` and `retrieve_all_inbound_hrmp_channel_contents`

* Implement `prove_read`

* Introduce separate RPC client, expose JsonRpSee errors

* Simplify closure in call_remote_runtime_function

* Implement import stream, upgrade JsonRpSee

* Implement finality stream

* Remove unused method from interface

* Implement `is_major_syncing`

* Implement `wait_on_block`

* Fix tests

* Unify error handling `ApiError`

* Replace WaitError with RelayChainError

* Wrap BlockChainError in RelayChainError

* Unify error handling in relay chain intefaces

* Fix return type of proof method

* Improve error handling of new methods

* Improve error handling and move logging outside of interface

* Clean up

* Remove unwanted changes, clean up

* Remove unused import

* Add format for StatemachineError and remove nused From trait

* Use 'thiserror' crate to simplify error handling

* Expose error for overseer, further simplify error handling

* Reintroduce network interface

* Implement cli option

* Adjust call_state method to use hashes

* Disable PoV recovery when RPC is used

* Add integration test for network full node

* Use Hash instead of BlockId to ensure compatibility with RPC interface

* Fix cargo check warnings

* Implement retries

* Remove `expect` statements from code

* Update jsonrpsee to 0.8.0 and make collator keys optional

* Make cli arguments conflicting

* Remove unused `block_status` method

* Add clippy fixes

* Cargo fmt

* Validate relay chain rpc url

* Clean up dependencies and add one more integration test

* Clean up

* Clean up dependencies of relay-chain-network

* Use hash instead of blockid for rpc methods

* Fix tests

* Update client/cli/src/lib.rs

Co-authored-by: Koute <koute@users.noreply.github.com>

* Improve error message of cli validation

* Add rpc client constructor

* Do not use debug formatting for errors

* Improve logging for remote runtime methods

* Only retry on transport problems

* Use PHash by value, rename test

* Improve tracing, return error  on relay-chain-interface build

* Fix naming, use generics instead of deserializing manually

* Rename RelayChainLocal and RelayChainNetwork

* lock

* Format

* Use impl trait for encodable runtime payload

* Only instantiate full node in tests when we need it

* Upgrade scale-codec to 3.0.0

* Improve expect log

Co-authored-by: Koute <koute@users.noreply.github.com>
2022-03-01 12:37:51 +01:00
wigy a59f02bc3f Companion to "Updating scale to v3" (#1013)
* Updating dependencies

* Adapting code to scale v3

* cargo fmt

* Fix compilation

* Update Cargo.lock

* TIL  exists

Co-authored-by: Bastian Köcher <info@kchr.de>
2022-02-25 13:40:24 +00:00
Bastian Köcher c6363e4682 Remove the last node-primitives leftover... (#1047) 2022-02-23 22:52:17 +01:00
Alexander Theißen ac1088fed9 Add canvas-rococo chainspec (#1031) 2022-02-23 16:19:14 +00:00
dependabot[bot] 3b839476d9 Bump clap from 3.0.7 to 3.1.1 (#1035)
* Bump clap from 3.0.7 to 3.1.1

Bumps [clap](https://github.com/clap-rs/clap) from 3.0.7 to 3.1.1.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v3.0.7...v3.1.1)

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

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

* Fix up deprecated usages

* cargo fmt

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com>
2022-02-23 08:31:24 +00:00
André Silva 719127cac3 Companion for substrate#10878 (#993)
* companion for slot duration changes

* fix aura inherent data provider

* update lockfile for {"polkadot"}

Co-authored-by: parity-processbot <>
2022-02-22 22:27:29 +00:00
Bastian Köcher c8a935d38f Remove node-primitives (#1032)
This is a crate that shouldn't be used outside of the Substrate Node. Here the correct crate is the
`polkadot-core-primitives` to get the `Balance` type.
2022-02-22 23:19:19 +01:00
dependabot[bot] bd35fcdc62 Bump assert_cmd from 0.12.2 to 2.0.4 (#1037)
Bumps [assert_cmd](https://github.com/assert-rs/assert_cmd) from 0.12.2 to 2.0.4.
- [Release notes](https://github.com/assert-rs/assert_cmd/releases)
- [Changelog](https://github.com/assert-rs/assert_cmd/blob/master/CHANGELOG.md)
- [Commits](https://github.com/assert-rs/assert_cmd/compare/v0.12.2...v2.0.4)

---
updated-dependencies:
- dependency-name: assert_cmd
  dependency-type: direct:production
  update-type: version-update:semver-major
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-22 21:06:27 +01:00
dependabot[bot] 39f069e831 Bump nix from 0.17.0 to 0.23.1 (#1017)
Bumps [nix](https://github.com/nix-rust/nix) from 0.17.0 to 0.23.1.
- [Release notes](https://github.com/nix-rust/nix/releases)
- [Changelog](https://github.com/nix-rust/nix/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nix-rust/nix/compare/v0.17.0...v0.23.1)

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

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-22 16:50:13 +01:00
dependabot[bot] 64a0b0e41b Bump hex-literal from 0.2.1 to 0.3.4 (#1028)
Bumps [hex-literal](https://github.com/RustCrypto/utils) from 0.2.1 to 0.3.4.
- [Release notes](https://github.com/RustCrypto/utils/releases)
- [Commits](https://github.com/RustCrypto/utils/compare/hex-literal-v0.2.1...hex-literal-v0.3.4)

---
updated-dependencies:
- dependency-name: hex-literal
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-22 16:49:46 +01:00
Alexander Theißen 1864a61706 canvas: Run migrations defined by pallet-contracts (#1011)
* Run migrations defined by pallet-contracts

* cargo fmt
2022-02-21 15:28:25 +00:00
Alexander Theißen 8988ecb938 canvas: More refactoring (#997)
* canvas: Move contracts config to own file

* Reduce usage of parameter_types where possible

* Fix try-runtime compilation
2022-02-21 11:59:29 +00:00
Alexander Theißen 16b1ce796a canvas: Add sudo (#1010) 2022-02-21 11:45:43 +00:00
Squirrel 2c73873527 Remove migrations that have been executed. (#986) 2022-02-21 11:25:54 +00:00
Alexander Theißen 2ebe089f99 Bump state version (#1009) 2022-02-21 10:57:56 +00:00
Bastian Köcher a17b173a87 Fix relay chain node name (#1008)
Before this fix the relay chain node name was always a random generated, because we did not had
implemented all the required methods of the `CliConfiguration` trait.
2022-02-21 11:34:23 +01:00
Alexander Theißen 6766b8106a Move Canvas xcm config to own module (#994) 2022-02-21 08:14:18 +00:00
Alexander Theißen 4d319d0fae Add canvas-kusama runtime (#980)
* Added kanvas runtime

* Fix up benchmarking

* Fixup markdown stucture

* replace :emoji_name: by utf8
* fix up header hierarchy

* Merge canvas README

* Only use "Canvas" as a name

* Remove reference to Rocanvas
2022-02-17 16:18:48 -05:00
Keith Yeung d166c78b17 Move XCM configurations out into its own module (#981)
* Move XCM configurations out into its own module

* Revert removal of the AccountNonceApi
2022-02-11 15:59:48 -08:00
Squirrel 4515e3ec7e bump tx version (#966) (#975) 2022-02-10 16:19:16 +00:00
Squirrel 999748757b collective flip migration removed, uniques added (#965) (#974)
Co-authored-by: Ignacio Palacios <ignacio.palacios.santos@gmail.com>
2022-02-10 16:17:57 +00:00
Squirrel ce2fca24f0 new weights for release-parachains-v7.0.0 (#951) (#973)
Co-authored-by: Ignacio Palacios <ignacio.palacios.santos@gmail.com>
2022-02-10 16:16:31 +00:00
Squirrel acf37d29cc Set statemin runtime versions (#971) 2022-02-10 16:15:49 +00:00
Squirrel 8e276aecb1 Bump collator version (#970)
Co-authored-by: Wilfried Kopp <wilfried@parity.io>
2022-02-10 16:12:33 +00:00
yjh e6e5d1bb0a Fix some typos for client (#968)
* chore: fix typos for consensus

* chore: fix typos for RelayChainError
2022-02-09 11:20:00 +01:00
Chris Sosnin 8a98067d96 Remove unused cli param (#941) 2022-02-01 12:03:54 +01:00
Keith Yeung d793334bbd Add the ability to suspend or resume XCM execution on the XCMP queue (#896)
* Add the ability to suspend or resume XCM execution on the XCMP queue

* Rename QueueActive to QueueSuspended

* Add the ability to suspend the DMP queue

* Rename XCMP to DMP in comments where appropriate

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

* Add a bypass for XCMP queue suspension

* Revert "Add the ability to suspend the DMP queue"

This reverts commit 363ca09b41e40fce3f2740e7ab78f5c54781ca5c.

* Change controller origin to either root or council-issued origin

* Rename to ControllerOriginConverter

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
2022-01-31 12:12:09 +00:00
Squirrel c69b749290 Add safe_xcm_version to Genesis Specs (#743) (#904)
* Add safe_xcm_version to Genesis Specs (#743)

* add safe_xcm_version to genesis specs

* cargo +nightly fmt

* Point to xcm latest version

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
2022-01-26 11:11:03 +00:00
Sebastian Kunert dacd0aed5e Unify RelayChainInterface error handling and introduce async (#909) 2022-01-25 18:27:54 +01:00
WMQ cbae45a27d fix: remove duplicate event of pallet_balances (#933)
* fix: remove duplicate event of pallet_balances

https://github.com/paritytech/substrate/blob/master/frame/support/src/traits/tokens/currency.rs#L158
https://github.com/paritytech/substrate/blob/master/frame/balances/src/lib.rs#L1647

Since 0.9.12 of substrate, there is no need for a separate of balances event in runtime.

* Update impls.rs
2022-01-25 12:50:00 +01:00
Qinxuan Chen e802dcad1d Companion for substrate#10632 (#895)
* Companion for substrate#10632

Signed-off-by: koushiro <koushiro.cqx@gmail.com>

* cargo update -p clap

Signed-off-by: koushiro <koushiro.cqx@gmail.com>

* Update substrate

* update lockfile for {"polkadot"}

Co-authored-by: Keith Yeung <kungfukeith11@gmail.com>
Co-authored-by: parity-processbot <>
2022-01-25 11:42:59 +00:00
Bastian Köcher 12fc58d1bb Update Substrate & Polkadot (#930)
* Update Substrate & Polkadot

* Hmm

* Set workspace hint path

* Test

* Use absolute path

* Update again
2022-01-22 20:49:01 +00:00
Bastian Köcher 035f7cee9f pov-recovery: Enable pov-recovery as well on full nodes (#927)
* pov-recovery: Enable pov-recovery as well on full nodes

Pov recovery was before only enabled for collators. The reason behind this was prevention of spam of
the relay chain for block recovery. However, recent events has shown that this wasn't a good idea.
So, this pr enables pov-recover for normal full nodes as well, but with a much higher delay before
trying to recover a block. This means that full nodes will wait in minimum 2.5 minutes and in
maximum 5 minutes before recovering a block. This should give collators in "normal mode" enough time
to recover a block (they wait in maximum 6 seconds after they have seen a new candidate in the relay
chain) before recovering a block. So, we should hopefully not spam the relay chain.

* FMT

* Fixes

* Fix documentation
2022-01-21 20:16:11 +01:00
Oliver Tale-Yazdi ab76ff5313 Use define_benchmarks! (#926)
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
2022-01-21 17:13:23 +00:00
Squirrel 6ff23e90ed Bump the collator version (#747) (#919)
Co-authored-by: Chevdor <chevdor@users.noreply.github.com>
2022-01-21 11:45:56 +00:00
Keith Yeung 8c28d4c669 Companion for paritytech/polkadot#4712 (#901)
* Rename ParentIsDefault to ParentIsAllZeroes

* Fixes

* Create ParentAccounts for respective networks

* Fixes

* Use b"Parent" as the basis for generating parent AccountId

* Fixes

* Use preset parent account ID

* update lockfile for {"polkadot"}

Co-authored-by: parity-processbot <>
2022-01-21 11:40:27 +00:00
Bastian Köcher dedb4f7bf7 Statemint: Support running statemint only with ed25519 (#923)
* Statemint: Support running statemint only with ed25519

* FMT

* Update polkadot-parachains/parachains-common/src/lib.rs

Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com>

Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com>
2022-01-21 09:17:02 +01:00
Squirrel c262414e4a merge of: Add system weights to Statemint (#762) (#918)
* Add system weights to Statemint (#762)

* waiting for weights from bm

* frame_system weights added

* cargo toml fix + fmt

* removed non-existent set_changes_trie_config

Co-authored-by: Ignacio Palacios <ignacio.palacios.santos@gmail.com>
2022-01-21 08:11:01 +00:00
Oliver Tale-Yazdi 7b2b99eefe co #4746: Require MaxEncodedLen per default (#917)
* Add `without_storage_info`

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

* Add `without_storage_info`

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

* Add `without_storage_info`

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

* Add `without_storage_info`

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

* update lockfile for {"polkadot"}

* Run `cargo update -p sp-io`

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

Co-authored-by: parity-processbot <>
2022-01-20 13:51:37 +00:00
Kian Paimani 76af7ee82c Add the uniques migration for statemine (#911)
* Add the uniques migration for statemine

* return weight from on_runtime_upgrade (#914)

need to return the weight from on_runtimie_upgrade().

* cargo update -p sp-io

* cargo update -p polkadot-primitives

Co-authored-by: hamidra <hamid.alipour@gmail.com>
2022-01-20 10:14:31 +01:00
Squirrel 93fcd0adbc Update Statemint prefix (#916)
Co-authored-by: Ricardo Rius <ricardo@parity.io>
2022-01-19 16:58:37 +01:00
Squirrel eea1a655de weights update statemine v6 (#754) (#915)
Co-authored-by: Ignacio Palacios <ignacio.palacios.santos@gmail.com>
2022-01-19 15:12:24 +00:00
Squirrel b196e93b87 Add Statemint Genesis Values (#817) (#905)
* Add Statemint Genesis Values (#817)

* add some docs to genesis scripts

* move statemint test chainspec

* add initial (draft) version of statemint chain spec

* adjust genesis value script

* add Statemint genesis Aura keys

* add bootnodes to statemint-genesis spec

* Add checks, debug and doc (#790)

* Add checks, debug and doc

* Update scripts/generate_genesis_value.sh

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

* Update scripts/generate_genesis_value.sh

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

* default to official shell rpc endpoint for genesis values

* remove statemint test chain spec

* add Statemint chain spec and genesis values

* sort statemint genesis values

* some script docs adjustments

Co-authored-by: Chevdor <chevdor@users.noreply.github.com>

* cargo fmt

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
Co-authored-by: Chevdor <chevdor@users.noreply.github.com>
2022-01-19 10:43:46 +00:00
Squirrel d03ef1d5ab Configure Statemint and Statemine to Allow Teleports (#912)
* configure pallet-xcm to allow teleports but forbid generic sends

* bump spec_version

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
2022-01-19 08:57:13 +00:00
Squirrel fbae81ddb9 bump transaction_version due to parachain_system change (#748) (#903)
Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
2022-01-18 20:01:34 +01:00