mirror of
https://github.com/pezkuwichain/pezkuwi-runtime-templates.git
synced 2026-06-14 05:11:01 +00:00
V1.7.0 (#121)
* upgrade to v1.7.0 from v1.6.0 * update rust version * fix dalek and tests (use rust-src in components) * remove pallet template
This commit is contained in:
@@ -55,8 +55,6 @@ jobs:
|
|||||||
|
|
||||||
- name: install rust toolchain
|
- name: install rust toolchain
|
||||||
uses: actions-rust-lang/setup-rust-toolchain@v1
|
uses: actions-rust-lang/setup-rust-toolchain@v1
|
||||||
with:
|
|
||||||
components: rust-src
|
|
||||||
|
|
||||||
- name: Install toml-sort
|
- name: Install toml-sort
|
||||||
run: cargo install --git https://github.com/4meta5/toml_sort
|
run: cargo install --git https://github.com/4meta5/toml_sort
|
||||||
|
|||||||
Generated
+1425
-1332
File diff suppressed because it is too large
Load Diff
+96
-101
@@ -1,129 +1,124 @@
|
|||||||
[workspace]
|
[workspace]
|
||||||
members = [
|
members = ["node", "runtime", "template-fuzzer"]
|
||||||
"node",
|
|
||||||
"pallets/template",
|
|
||||||
"runtime",
|
|
||||||
"template-fuzzer",
|
|
||||||
]
|
|
||||||
resolver = "2"
|
resolver = "2"
|
||||||
|
|
||||||
[workspace.package]
|
[workspace.package]
|
||||||
authors = [ "OpenZeppelin" ]
|
authors = ["OpenZeppelin"]
|
||||||
description = "Runtime template(s) for Polkadot Para{chains, cores}"
|
description = "Runtime template(s) for Polkadot Para{chains, cores}"
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
license = "GPL-3.0-only"
|
license = "GPL-3.0-only"
|
||||||
repository = "https://github.com/OpenZeppelin/polkadot-runtime-template"
|
repository = "https://github.com/OpenZeppelin/polkadot-runtime-template"
|
||||||
|
|
||||||
[workspace.dependencies]
|
[workspace.dependencies]
|
||||||
clap = { version = "4.4.6", features = [ "derive" ] }
|
clap = { version = "4.4.6", features = ["derive"] }
|
||||||
color-print = "0.3.4"
|
color-print = "0.3.4"
|
||||||
futures = "0.3.28"
|
futures = "0.3.28"
|
||||||
hex-literal = "0.4.1"
|
hex-literal = "0.4.1"
|
||||||
jsonrpsee = { version = "0.16.3", features = [ "server" ] }
|
jsonrpsee = { version = "0.20.3", features = ["server"] }
|
||||||
log = { version = "0.4.20", default-features = false }
|
log = { version = "0.4.20", default-features = false }
|
||||||
parity-scale-codec = { version = "3.0.0", default-features = false, features = [ "derive", "max-encoded-len" ] }
|
parity-scale-codec = { version = "3.0.0", default-features = false, features = [
|
||||||
|
"derive",
|
||||||
|
"max-encoded-len",
|
||||||
|
] }
|
||||||
scale-info = { version = "2.10.0", default-features = false }
|
scale-info = { version = "2.10.0", default-features = false }
|
||||||
serde = { version = "1.0.188", default-features = false }
|
serde = { version = "1.0.188", default-features = false }
|
||||||
serde_json = "1.0.108"
|
serde_json = "1.0.108"
|
||||||
smallvec = "1.11.0"
|
smallvec = "1.11.0"
|
||||||
|
|
||||||
# Local
|
|
||||||
pallet-template = { path = "pallets/template", default-features = false }
|
|
||||||
|
|
||||||
# Substrate
|
# Substrate
|
||||||
frame-benchmarking = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
frame-benchmarking = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
frame-benchmarking-cli = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
frame-benchmarking-cli = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
frame-executive = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
frame-executive = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
frame-support = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
frame-support = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
frame-system = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
frame-system = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
frame-system-benchmarking = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
frame-system-benchmarking = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
frame-system-rpc-runtime-api = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
frame-system-rpc-runtime-api = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
frame-try-runtime = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
frame-try-runtime = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
pallet-assets = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
pallet-assets = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
pallet-aura = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
pallet-aura = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
pallet-authorship = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
pallet-authorship = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
pallet-balances = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
pallet-balances = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
pallet-message-queue = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
pallet-message-queue = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
pallet-multisig = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
pallet-multisig = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
pallet-proxy = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
pallet-proxy = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
pallet-session = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
pallet-session = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
pallet-sudo = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
pallet-sudo = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
pallet-timestamp = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
pallet-timestamp = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
pallet-transaction-payment = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
pallet-transaction-payment = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
pallet-transaction-payment-rpc = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
pallet-transaction-payment-rpc = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
pallet-utility = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
pallet-utility = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sc-basic-authorship = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sc-basic-authorship = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sc-chain-spec = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sc-chain-spec = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sc-cli = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sc-cli = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sc-client-api = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sc-client-api = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sc-consensus = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sc-consensus = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sc-executor = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sc-executor = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sc-network = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sc-network = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sc-network-sync = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sc-network-sync = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sc-offchain = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sc-offchain = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sc-rpc = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sc-rpc = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sc-service = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sc-service = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sc-sysinfo = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sc-sysinfo = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sc-telemetry = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sc-telemetry = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sc-tracing = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sc-tracing = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sc-transaction-pool = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sc-transaction-pool = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sc-transaction-pool-api = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sc-transaction-pool-api = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sp-api = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sp-api = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sp-block-builder = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sp-block-builder = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sp-blockchain = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sp-blockchain = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sp-consensus-aura = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sp-consensus-aura = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sp-core = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sp-core = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sp-genesis-builder = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sp-genesis-builder = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sp-inherents = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sp-inherents = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sp-io = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0" }
|
sp-io = { git = "https://github.com/paritytech/polkadot-sdk", tag = "polkadot-v1.7.0" }
|
||||||
sp-keystore = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sp-keystore = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sp-offchain = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sp-offchain = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sp-runtime = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sp-runtime = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sp-session = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sp-session = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sp-state-machine = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sp-state-machine = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sp-std = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sp-std = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sp-timestamp = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sp-timestamp = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sp-transaction-pool = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sp-transaction-pool = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
sp-version = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
sp-version = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
substrate-build-script-utils = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0" }
|
substrate-build-script-utils = { git = "https://github.com/paritytech/polkadot-sdk", tag = "polkadot-v1.7.0" }
|
||||||
substrate-frame-rpc-system = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
substrate-frame-rpc-system = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
substrate-prometheus-endpoint = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
substrate-prometheus-endpoint = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
substrate-wasm-builder = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0" }
|
substrate-wasm-builder = { git = "https://github.com/paritytech/polkadot-sdk", tag = "polkadot-v1.7.0" }
|
||||||
|
|
||||||
# Polkadot
|
# Polkadot
|
||||||
pallet-xcm = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
pallet-xcm = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
polkadot-cli = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", features = [
|
polkadot-cli = { git = "https://github.com/paritytech/polkadot-sdk", features = [
|
||||||
"rococo-native",
|
"rococo-native",
|
||||||
] }
|
], tag = "polkadot-v1.7.0" }
|
||||||
polkadot-parachain-primitives = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
polkadot-parachain-primitives = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
polkadot-primitives = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
polkadot-primitives = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
polkadot-runtime-common = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
polkadot-runtime-common = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
xcm = { package = "staging-xcm", git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
xcm = { package = "staging-xcm", git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
xcm-builder = { package = "staging-xcm-builder", git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
xcm-builder = { package = "staging-xcm-builder", git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
xcm-executor = { package = "staging-xcm-executor", git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
xcm-executor = { package = "staging-xcm-executor", git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
|
|
||||||
# Cumulus
|
# Cumulus
|
||||||
assets-common = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
assets-common = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
cumulus-client-cli = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
cumulus-client-cli = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
cumulus-client-collator = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
cumulus-client-collator = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
cumulus-client-consensus-aura = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
cumulus-client-consensus-aura = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
cumulus-client-consensus-common = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
cumulus-client-consensus-common = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
cumulus-client-consensus-proposer = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
cumulus-client-consensus-proposer = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
cumulus-client-service = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
cumulus-client-service = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
cumulus-pallet-aura-ext = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
cumulus-pallet-aura-ext = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
cumulus-pallet-parachain-system = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
cumulus-pallet-parachain-system = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
cumulus-pallet-session-benchmarking = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
cumulus-pallet-session-benchmarking = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
cumulus-pallet-xcm = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
cumulus-pallet-xcm = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
cumulus-pallet-xcmp-queue = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
cumulus-pallet-xcmp-queue = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
cumulus-primitives-core = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
cumulus-primitives-core = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
cumulus-primitives-parachain-inherent = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
cumulus-primitives-parachain-inherent = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
cumulus-primitives-utility = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
cumulus-primitives-utility = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
cumulus-relay-chain-interface = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
cumulus-relay-chain-interface = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
cumulus-test-relay-sproof-builder = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
cumulus-test-relay-sproof-builder = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
pallet-collator-selection = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
pallet-collator-selection = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
parachain-info = { package = "staging-parachain-info", git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
parachain-info = { package = "staging-parachain-info", git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
parachains-common = { git = "https://github.com/paritytech/polkadot-sdk", branch = "release-polkadot-v1.6.0", default-features = false }
|
parachains-common = { git = "https://github.com/paritytech/polkadot-sdk", default-features = false, tag = "polkadot-v1.7.0" }
|
||||||
|
|
||||||
# Fuzzer
|
# Fuzzer
|
||||||
substrate-runtime-fuzzer = { git = "https://github.com/srlabs/substrate-runtime-fuzzer.git", default-features = false }
|
substrate-runtime-fuzzer = { git = "https://github.com/srlabs/substrate-runtime-fuzzer.git", default-features = false }
|
||||||
|
|||||||
+5
-2
@@ -24,8 +24,11 @@ pub enum Subcommand {
|
|||||||
/// Remove the whole chain.
|
/// Remove the whole chain.
|
||||||
PurgeChain(cumulus_client_cli::PurgeChainCmd),
|
PurgeChain(cumulus_client_cli::PurgeChainCmd),
|
||||||
|
|
||||||
/// Export the genesis state of the parachain.
|
/// Export the genesis head data of the parachain.
|
||||||
ExportGenesisState(cumulus_client_cli::ExportGenesisStateCommand),
|
///
|
||||||
|
/// Head data is the encoded block header.
|
||||||
|
#[command(alias = "export-genesis-state")]
|
||||||
|
ExportGenesisHead(cumulus_client_cli::ExportGenesisHeadCommand),
|
||||||
|
|
||||||
/// Export the genesis wasm of the parachain.
|
/// Export the genesis wasm of the parachain.
|
||||||
ExportGenesisWasm(cumulus_client_cli::ExportGenesisWasmCommand),
|
ExportGenesisWasm(cumulus_client_cli::ExportGenesisWasmCommand),
|
||||||
|
|||||||
+2
-2
@@ -160,12 +160,12 @@ pub fn run() -> Result<()> {
|
|||||||
cmd.run(config, polkadot_config)
|
cmd.run(config, polkadot_config)
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
Some(Subcommand::ExportGenesisState(cmd)) => {
|
Some(Subcommand::ExportGenesisHead(cmd)) => {
|
||||||
let runner = cli.create_runner(cmd)?;
|
let runner = cli.create_runner(cmd)?;
|
||||||
runner.sync_run(|config| {
|
runner.sync_run(|config| {
|
||||||
let partials = new_partial(&config)?;
|
let partials = new_partial(&config)?;
|
||||||
|
|
||||||
cmd.run(&*config.chain_spec, &*partials.client)
|
cmd.run(partials.client)
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
Some(Subcommand::ExportGenesisWasm(cmd)) => {
|
Some(Subcommand::ExportGenesisWasm(cmd)) => {
|
||||||
|
|||||||
@@ -1,46 +0,0 @@
|
|||||||
[package]
|
|
||||||
name = "pallet-template"
|
|
||||||
authors = { workspace = true }
|
|
||||||
description = "FRAME pallet template"
|
|
||||||
edition = { workspace = true }
|
|
||||||
license = { workspace = true }
|
|
||||||
repository = { workspace = true }
|
|
||||||
version = "0.1.0"
|
|
||||||
|
|
||||||
[package.metadata.docs.rs]
|
|
||||||
targets = [ "x86_64-unknown-linux-gnu" ]
|
|
||||||
|
|
||||||
[dependencies]
|
|
||||||
parity-scale-codec = { workspace = true, features = [ "derive" ] }
|
|
||||||
scale-info = { workspace = true }
|
|
||||||
|
|
||||||
# Substrate
|
|
||||||
frame-benchmarking = { workspace = true, optional = true }
|
|
||||||
frame-support = { workspace = true }
|
|
||||||
frame-system = { workspace = true }
|
|
||||||
|
|
||||||
[dev-dependencies]
|
|
||||||
serde = { workspace = true }
|
|
||||||
|
|
||||||
# Substrate
|
|
||||||
sp-core = { workspace = true }
|
|
||||||
sp-io = { workspace = true }
|
|
||||||
sp-runtime = { workspace = true }
|
|
||||||
|
|
||||||
[features]
|
|
||||||
default = [ "std" ]
|
|
||||||
std = [
|
|
||||||
"frame-benchmarking/std",
|
|
||||||
"frame-support/std",
|
|
||||||
"frame-system/std",
|
|
||||||
"parity-scale-codec/std",
|
|
||||||
"scale-info/std",
|
|
||||||
]
|
|
||||||
runtime-benchmarks = [
|
|
||||||
"frame-benchmarking",
|
|
||||||
"frame-support/runtime-benchmarks",
|
|
||||||
"frame-system/runtime-benchmarks",
|
|
||||||
]
|
|
||||||
try-runtime = [
|
|
||||||
"frame-support/try-runtime",
|
|
||||||
]
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
//! Benchmarking setup for pallet-template
|
|
||||||
|
|
||||||
use frame_benchmarking::{benchmarks, impl_benchmark_test_suite, whitelisted_caller};
|
|
||||||
use frame_system::RawOrigin;
|
|
||||||
|
|
||||||
use super::*;
|
|
||||||
#[allow(unused)]
|
|
||||||
use crate::Pallet as Template;
|
|
||||||
|
|
||||||
benchmarks! {
|
|
||||||
do_something {
|
|
||||||
let s in 0 .. 100;
|
|
||||||
let caller: T::AccountId = whitelisted_caller();
|
|
||||||
}: _(RawOrigin::Signed(caller), s)
|
|
||||||
verify {
|
|
||||||
assert_eq!(Something::<T>::get(), Some(s));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
impl_benchmark_test_suite!(Template, crate::mock::new_test_ext(), crate::mock::Test,);
|
|
||||||
@@ -1,110 +0,0 @@
|
|||||||
#![cfg_attr(not(feature = "std"), no_std)]
|
|
||||||
|
|
||||||
/// Edit this file to define custom logic or remove it if it is not needed.
|
|
||||||
/// Learn more about FRAME and the core library of Substrate FRAME pallets:
|
|
||||||
/// <https://docs.substrate.io/v3/runtime/frame>
|
|
||||||
pub use pallet::*;
|
|
||||||
|
|
||||||
#[cfg(test)]
|
|
||||||
mod mock;
|
|
||||||
|
|
||||||
#[cfg(test)]
|
|
||||||
mod tests;
|
|
||||||
|
|
||||||
#[cfg(feature = "runtime-benchmarks")]
|
|
||||||
mod benchmarking;
|
|
||||||
|
|
||||||
#[frame_support::pallet]
|
|
||||||
pub mod pallet {
|
|
||||||
use frame_support::{dispatch::DispatchResultWithPostInfo, pallet_prelude::*};
|
|
||||||
use frame_system::pallet_prelude::*;
|
|
||||||
|
|
||||||
/// Configure the pallet by specifying the parameters and types on which it
|
|
||||||
/// depends.
|
|
||||||
#[pallet::config]
|
|
||||||
pub trait Config: frame_system::Config {
|
|
||||||
/// Because this pallet emits events, it depends on the runtime's
|
|
||||||
/// definition of an event.
|
|
||||||
type RuntimeEvent: From<Event<Self>> + IsType<<Self as frame_system::Config>::RuntimeEvent>;
|
|
||||||
}
|
|
||||||
|
|
||||||
#[pallet::pallet]
|
|
||||||
pub struct Pallet<T>(_);
|
|
||||||
|
|
||||||
// The pallet's runtime storage items.
|
|
||||||
// https://docs.substrate.io/v3/runtime/storage
|
|
||||||
#[pallet::storage]
|
|
||||||
#[pallet::getter(fn something)]
|
|
||||||
// Learn more about declaring storage items:
|
|
||||||
// https://docs.substrate.io/v3/runtime/storage#declaring-storage-items
|
|
||||||
pub type Something<T> = StorageValue<_, u32>;
|
|
||||||
|
|
||||||
// Pallets use events to inform users when important changes are made.
|
|
||||||
// https://docs.substrate.io/v3/runtime/events-and-errors
|
|
||||||
#[pallet::event]
|
|
||||||
#[pallet::generate_deposit(pub(super) fn deposit_event)]
|
|
||||||
pub enum Event<T: Config> {
|
|
||||||
/// Event documentation should end with an array that provides
|
|
||||||
/// descriptive names for event parameters. [something, who]
|
|
||||||
SomethingStored(u32, T::AccountId),
|
|
||||||
}
|
|
||||||
|
|
||||||
// Errors inform users that something went wrong.
|
|
||||||
#[pallet::error]
|
|
||||||
pub enum Error<T> {
|
|
||||||
/// Error names should be descriptive.
|
|
||||||
NoneValue,
|
|
||||||
/// Errors should have helpful documentation associated with them.
|
|
||||||
StorageOverflow,
|
|
||||||
}
|
|
||||||
|
|
||||||
#[pallet::hooks]
|
|
||||||
impl<T: Config> Hooks<BlockNumberFor<T>> for Pallet<T> {}
|
|
||||||
|
|
||||||
// Dispatchable functions allows users to interact with the pallet and invoke
|
|
||||||
// state changes. These functions materialize as "extrinsics", which are
|
|
||||||
// often compared to transactions. Dispatchable functions must be annotated
|
|
||||||
// with a weight and must return a DispatchResult.
|
|
||||||
#[pallet::call]
|
|
||||||
impl<T: Config> Pallet<T> {
|
|
||||||
/// An example dispatchable that takes a singles value as a parameter,
|
|
||||||
/// writes the value to storage and emits an event. This
|
|
||||||
/// function must be dispatched by a signed extrinsic.
|
|
||||||
#[pallet::call_index(0)]
|
|
||||||
#[pallet::weight(Weight::from_parts(10_000, 0) + T::DbWeight::get().writes(1))]
|
|
||||||
pub fn do_something(origin: OriginFor<T>, something: u32) -> DispatchResultWithPostInfo {
|
|
||||||
// Check that the extrinsic was signed and get the signer.
|
|
||||||
// This function will return an error if the extrinsic is not signed.
|
|
||||||
// https://docs.substrate.io/v3/runtime/origins
|
|
||||||
let who = ensure_signed(origin)?;
|
|
||||||
|
|
||||||
// Update storage.
|
|
||||||
<Something<T>>::put(something);
|
|
||||||
|
|
||||||
// Emit an event.
|
|
||||||
Self::deposit_event(Event::SomethingStored(something, who));
|
|
||||||
// Return a successful DispatchResultWithPostInfo
|
|
||||||
Ok(().into())
|
|
||||||
}
|
|
||||||
|
|
||||||
/// An example dispatchable that may throw a custom error.
|
|
||||||
#[pallet::call_index(1)]
|
|
||||||
#[pallet::weight(Weight::from_parts(10_000, 0) + T::DbWeight::get().reads_writes(1,1))]
|
|
||||||
pub fn cause_error(origin: OriginFor<T>) -> DispatchResultWithPostInfo {
|
|
||||||
let _who = ensure_signed(origin)?;
|
|
||||||
|
|
||||||
// Read a value from storage.
|
|
||||||
match <Something<T>>::get() {
|
|
||||||
// Return an error if the value has not been set.
|
|
||||||
None => Err(Error::<T>::NoneValue)?,
|
|
||||||
Some(old) => {
|
|
||||||
// Increment the value read from storage; will error in the event of overflow.
|
|
||||||
let new = old.checked_add(1).ok_or(Error::<T>::StorageOverflow)?;
|
|
||||||
// Update the value in storage with the incremented result.
|
|
||||||
<Something<T>>::put(new);
|
|
||||||
Ok(().into())
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,58 +0,0 @@
|
|||||||
use frame_support::{parameter_types, traits::Everything};
|
|
||||||
use frame_system as system;
|
|
||||||
use sp_core::H256;
|
|
||||||
use sp_runtime::{
|
|
||||||
traits::{BlakeTwo256, IdentityLookup},
|
|
||||||
BuildStorage,
|
|
||||||
};
|
|
||||||
|
|
||||||
type Block = frame_system::mocking::MockBlock<Test>;
|
|
||||||
|
|
||||||
// Configure a mock runtime to test the pallet.
|
|
||||||
frame_support::construct_runtime!(
|
|
||||||
pub enum Test
|
|
||||||
{
|
|
||||||
System: frame_system::{Pallet, Call, Config<T>, Storage, Event<T>},
|
|
||||||
TemplateModule: crate::{Pallet, Call, Storage, Event<T>},
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
parameter_types! {
|
|
||||||
pub const BlockHashCount: u64 = 250;
|
|
||||||
pub const SS58Prefix: u8 = 42;
|
|
||||||
}
|
|
||||||
|
|
||||||
impl system::Config for Test {
|
|
||||||
type AccountData = ();
|
|
||||||
type AccountId = u64;
|
|
||||||
type BaseCallFilter = Everything;
|
|
||||||
type Block = Block;
|
|
||||||
type BlockHashCount = BlockHashCount;
|
|
||||||
type BlockLength = ();
|
|
||||||
type BlockWeights = ();
|
|
||||||
type DbWeight = ();
|
|
||||||
type Hash = H256;
|
|
||||||
type Hashing = BlakeTwo256;
|
|
||||||
type Lookup = IdentityLookup<Self::AccountId>;
|
|
||||||
type MaxConsumers = frame_support::traits::ConstU32<16>;
|
|
||||||
type Nonce = u64;
|
|
||||||
type OnKilledAccount = ();
|
|
||||||
type OnNewAccount = ();
|
|
||||||
type OnSetCode = ();
|
|
||||||
type PalletInfo = PalletInfo;
|
|
||||||
type RuntimeCall = RuntimeCall;
|
|
||||||
type RuntimeEvent = RuntimeEvent;
|
|
||||||
type RuntimeOrigin = RuntimeOrigin;
|
|
||||||
type SS58Prefix = SS58Prefix;
|
|
||||||
type SystemWeightInfo = ();
|
|
||||||
type Version = ();
|
|
||||||
}
|
|
||||||
|
|
||||||
impl crate::Config for Test {
|
|
||||||
type RuntimeEvent = RuntimeEvent;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Build genesis storage according to the mock runtime.
|
|
||||||
pub fn new_test_ext() -> sp_io::TestExternalities {
|
|
||||||
system::GenesisConfig::<Test>::default().build_storage().unwrap().into()
|
|
||||||
}
|
|
||||||
@@ -1,24 +0,0 @@
|
|||||||
use frame_support::{assert_noop, assert_ok};
|
|
||||||
|
|
||||||
use crate::{mock::*, Error};
|
|
||||||
|
|
||||||
#[test]
|
|
||||||
fn it_works_for_default_value() {
|
|
||||||
new_test_ext().execute_with(|| {
|
|
||||||
// Dispatch a signed extrinsic.
|
|
||||||
assert_ok!(TemplateModule::do_something(RuntimeOrigin::signed(1), 42));
|
|
||||||
// Read pallet storage and assert an expected result.
|
|
||||||
assert_eq!(TemplateModule::something(), Some(42));
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
#[test]
|
|
||||||
fn correct_error_for_none_value() {
|
|
||||||
new_test_ext().execute_with(|| {
|
|
||||||
// Ensure the expected error is thrown when no value is present.
|
|
||||||
assert_noop!(
|
|
||||||
TemplateModule::cause_error(RuntimeOrigin::signed(1)),
|
|
||||||
Error::<Test>::NoneValue
|
|
||||||
);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
+8
-12
@@ -8,18 +8,15 @@ repository = { workspace = true }
|
|||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
|
|
||||||
[package.metadata.docs.rs]
|
[package.metadata.docs.rs]
|
||||||
targets = [ "x86_64-unknown-linux-gnu" ]
|
targets = ["x86_64-unknown-linux-gnu"]
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
hex-literal = { workspace = true, optional = true }
|
hex-literal = { workspace = true, optional = true }
|
||||||
log = { workspace = true }
|
log = { workspace = true }
|
||||||
parity-scale-codec = { workspace = true, features = [ "derive" ] }
|
parity-scale-codec = { workspace = true, features = ["derive"] }
|
||||||
scale-info = { workspace = true, features = [ "derive" ] }
|
scale-info = { workspace = true, features = ["derive"] }
|
||||||
smallvec = { workspace = true }
|
smallvec = { workspace = true }
|
||||||
|
|
||||||
# Local
|
|
||||||
pallet-template = { path = "../pallets/template", default-features = false }
|
|
||||||
|
|
||||||
# Substrate
|
# Substrate
|
||||||
frame-benchmarking = { workspace = true, optional = true }
|
frame-benchmarking = { workspace = true, optional = true }
|
||||||
frame-executive = { workspace = true }
|
frame-executive = { workspace = true }
|
||||||
@@ -65,7 +62,9 @@ xcm-executor = { workspace = true }
|
|||||||
# Cumulus
|
# Cumulus
|
||||||
assets-common = { workspace = true }
|
assets-common = { workspace = true }
|
||||||
cumulus-pallet-aura-ext = { workspace = true }
|
cumulus-pallet-aura-ext = { workspace = true }
|
||||||
cumulus-pallet-parachain-system = { workspace = true, features = [ "parameterized-consensus-hook" ] }
|
cumulus-pallet-parachain-system = { workspace = true, features = [
|
||||||
|
"parameterized-consensus-hook",
|
||||||
|
] }
|
||||||
cumulus-pallet-session-benchmarking = { workspace = true }
|
cumulus-pallet-session-benchmarking = { workspace = true }
|
||||||
cumulus-pallet-xcm = { workspace = true }
|
cumulus-pallet-xcm = { workspace = true }
|
||||||
cumulus-pallet-xcmp-queue = { workspace = true }
|
cumulus-pallet-xcmp-queue = { workspace = true }
|
||||||
@@ -82,7 +81,7 @@ sp-io = { workspace = true }
|
|||||||
substrate-wasm-builder = { workspace = true }
|
substrate-wasm-builder = { workspace = true }
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
default = [ "std" ]
|
default = ["std"]
|
||||||
std = [
|
std = [
|
||||||
"assets-common/std",
|
"assets-common/std",
|
||||||
"cumulus-pallet-aura-ext/std",
|
"cumulus-pallet-aura-ext/std",
|
||||||
@@ -110,7 +109,6 @@ std = [
|
|||||||
"pallet-proxy/std",
|
"pallet-proxy/std",
|
||||||
"pallet-session/std",
|
"pallet-session/std",
|
||||||
"pallet-sudo/std",
|
"pallet-sudo/std",
|
||||||
"pallet-template/std",
|
|
||||||
"pallet-timestamp/std",
|
"pallet-timestamp/std",
|
||||||
"pallet-transaction-payment-rpc-runtime-api/std",
|
"pallet-transaction-payment-rpc-runtime-api/std",
|
||||||
"pallet-transaction-payment/std",
|
"pallet-transaction-payment/std",
|
||||||
@@ -156,7 +154,6 @@ runtime-benchmarks = [
|
|||||||
"pallet-message-queue/runtime-benchmarks",
|
"pallet-message-queue/runtime-benchmarks",
|
||||||
"pallet-multisig/runtime-benchmarks",
|
"pallet-multisig/runtime-benchmarks",
|
||||||
"pallet-sudo/runtime-benchmarks",
|
"pallet-sudo/runtime-benchmarks",
|
||||||
"pallet-template/runtime-benchmarks",
|
|
||||||
"pallet-timestamp/runtime-benchmarks",
|
"pallet-timestamp/runtime-benchmarks",
|
||||||
"pallet-utility/runtime-benchmarks",
|
"pallet-utility/runtime-benchmarks",
|
||||||
"pallet-xcm/runtime-benchmarks",
|
"pallet-xcm/runtime-benchmarks",
|
||||||
@@ -188,7 +185,6 @@ try-runtime = [
|
|||||||
"pallet-session/try-runtime",
|
"pallet-session/try-runtime",
|
||||||
"pallet-session/try-runtime",
|
"pallet-session/try-runtime",
|
||||||
"pallet-sudo/try-runtime",
|
"pallet-sudo/try-runtime",
|
||||||
"pallet-template/try-runtime",
|
|
||||||
"pallet-timestamp/try-runtime",
|
"pallet-timestamp/try-runtime",
|
||||||
"pallet-transaction-payment/try-runtime",
|
"pallet-transaction-payment/try-runtime",
|
||||||
"pallet-utility/try-runtime",
|
"pallet-utility/try-runtime",
|
||||||
@@ -198,4 +194,4 @@ try-runtime = [
|
|||||||
"sp-runtime/try-runtime",
|
"sp-runtime/try-runtime",
|
||||||
]
|
]
|
||||||
|
|
||||||
experimental = [ "pallet-aura/experimental" ]
|
experimental = ["pallet-aura/experimental"]
|
||||||
|
|||||||
+8
-24
@@ -13,7 +13,7 @@ pub mod xcm_config;
|
|||||||
use cumulus_pallet_parachain_system::RelayNumberStrictlyIncreases;
|
use cumulus_pallet_parachain_system::RelayNumberStrictlyIncreases;
|
||||||
use cumulus_primitives_core::{AggregateMessageOrigin, ParaId};
|
use cumulus_primitives_core::{AggregateMessageOrigin, ParaId};
|
||||||
use frame_support::{
|
use frame_support::{
|
||||||
construct_runtime,
|
construct_runtime, derive_impl,
|
||||||
dispatch::DispatchClass,
|
dispatch::DispatchClass,
|
||||||
genesis_builder_helper::{build_config, create_default_config},
|
genesis_builder_helper::{build_config, create_default_config},
|
||||||
parameter_types,
|
parameter_types,
|
||||||
@@ -294,7 +294,10 @@ impl Contains<RuntimeCall> for NormalFilter {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Configure FRAME pallets to include in runtime.
|
/// The default types are being injected by [`derive_impl`](`frame_support::derive_impl`) from
|
||||||
|
/// [`ParaChainDefaultConfig`](`struct@frame_system::config_preludes::ParaChainDefaultConfig`),
|
||||||
|
/// but overridden as needed.
|
||||||
|
#[derive_impl(frame_system::config_preludes::ParaChainDefaultConfig as frame_system::DefaultConfig)]
|
||||||
impl frame_system::Config for Runtime {
|
impl frame_system::Config for Runtime {
|
||||||
/// The data to be stored in an account.
|
/// The data to be stored in an account.
|
||||||
type AccountData = pallet_balances::AccountData<Balance>;
|
type AccountData = pallet_balances::AccountData<Balance>;
|
||||||
@@ -304,8 +307,7 @@ impl frame_system::Config for Runtime {
|
|||||||
type BaseCallFilter = NormalFilter;
|
type BaseCallFilter = NormalFilter;
|
||||||
/// The block type.
|
/// The block type.
|
||||||
type Block = Block;
|
type Block = Block;
|
||||||
/// Maximum number of block number to block hash mappings to keep (oldest
|
/// Maximum number of block number to block hash mappings to keep (oldest pruned first).
|
||||||
/// pruned first).
|
|
||||||
type BlockHashCount = BlockHashCount;
|
type BlockHashCount = BlockHashCount;
|
||||||
/// The maximum length of a block (in bytes).
|
/// The maximum length of a block (in bytes).
|
||||||
type BlockLength = RuntimeBlockLength;
|
type BlockLength = RuntimeBlockLength;
|
||||||
@@ -315,18 +317,13 @@ impl frame_system::Config for Runtime {
|
|||||||
type DbWeight = RocksDbWeight;
|
type DbWeight = RocksDbWeight;
|
||||||
/// The type for hashing blocks and tries.
|
/// The type for hashing blocks and tries.
|
||||||
type Hash = Hash;
|
type Hash = Hash;
|
||||||
/// The hashing algorithm used.
|
|
||||||
type Hashing = BlakeTwo256;
|
|
||||||
/// The lookup mechanism to get account ID from whatever is passed in
|
/// The lookup mechanism to get account ID from whatever is passed in
|
||||||
/// dispatchers.
|
/// dispatchers.
|
||||||
type Lookup = AccountIdLookup<AccountId, ()>;
|
type Lookup = AccountIdLookup<AccountId, ()>;
|
||||||
|
/// The maximum number of consumers allowed on a single account.
|
||||||
type MaxConsumers = ConstU32<16>;
|
type MaxConsumers = ConstU32<16>;
|
||||||
/// The index type for storing how many extrinsics an account has signed.
|
/// The index type for storing how many extrinsics an account has signed.
|
||||||
type Nonce = Nonce;
|
type Nonce = Nonce;
|
||||||
/// What to do if an account is fully reaped from the system.
|
|
||||||
type OnKilledAccount = ();
|
|
||||||
/// What to do if a new account is created.
|
|
||||||
type OnNewAccount = ();
|
|
||||||
/// The action to take on a Runtime Upgrade
|
/// The action to take on a Runtime Upgrade
|
||||||
type OnSetCode = cumulus_pallet_parachain_system::ParachainSetCode<Self>;
|
type OnSetCode = cumulus_pallet_parachain_system::ParachainSetCode<Self>;
|
||||||
/// Converts a module to an index of this module in the runtime.
|
/// Converts a module to an index of this module in the runtime.
|
||||||
@@ -337,11 +334,8 @@ impl frame_system::Config for Runtime {
|
|||||||
type RuntimeEvent = RuntimeEvent;
|
type RuntimeEvent = RuntimeEvent;
|
||||||
/// The ubiquitous origin type.
|
/// The ubiquitous origin type.
|
||||||
type RuntimeOrigin = RuntimeOrigin;
|
type RuntimeOrigin = RuntimeOrigin;
|
||||||
/// This is used as an identifier of the chain. 42 is the generic substrate
|
/// This is used as an identifier of the chain. 42 is the generic substrate prefix.
|
||||||
/// prefix.
|
|
||||||
type SS58Prefix = SS58Prefix;
|
type SS58Prefix = SS58Prefix;
|
||||||
/// Weight information for the extrinsics of this pallet.
|
|
||||||
type SystemWeightInfo = ();
|
|
||||||
/// Runtime version.
|
/// Runtime version.
|
||||||
type Version = Version;
|
type Version = Version;
|
||||||
}
|
}
|
||||||
@@ -431,7 +425,6 @@ impl pallet_proxy::Config for Runtime {
|
|||||||
parameter_types! {
|
parameter_types! {
|
||||||
pub const ExistentialDeposit: Balance = EXISTENTIAL_DEPOSIT;
|
pub const ExistentialDeposit: Balance = EXISTENTIAL_DEPOSIT;
|
||||||
pub const MaxFreezes: u32 = 0;
|
pub const MaxFreezes: u32 = 0;
|
||||||
pub const MaxHolds: u32 = 0;
|
|
||||||
pub const MaxLocks: u32 = 50;
|
pub const MaxLocks: u32 = 50;
|
||||||
pub const MaxReserves: u32 = 50;
|
pub const MaxReserves: u32 = 50;
|
||||||
}
|
}
|
||||||
@@ -444,7 +437,6 @@ impl pallet_balances::Config for Runtime {
|
|||||||
type ExistentialDeposit = ExistentialDeposit;
|
type ExistentialDeposit = ExistentialDeposit;
|
||||||
type FreezeIdentifier = ();
|
type FreezeIdentifier = ();
|
||||||
type MaxFreezes = MaxFreezes;
|
type MaxFreezes = MaxFreezes;
|
||||||
type MaxHolds = MaxHolds;
|
|
||||||
type MaxLocks = MaxLocks;
|
type MaxLocks = MaxLocks;
|
||||||
type MaxReserves = MaxReserves;
|
type MaxReserves = MaxReserves;
|
||||||
type ReserveIdentifier = [u8; 8];
|
type ReserveIdentifier = [u8; 8];
|
||||||
@@ -670,11 +662,6 @@ impl pallet_collator_selection::Config for Runtime {
|
|||||||
type WeightInfo = pallet_collator_selection::weights::SubstrateWeight<Runtime>;
|
type WeightInfo = pallet_collator_selection::weights::SubstrateWeight<Runtime>;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Configure the pallet template in pallets/template.
|
|
||||||
impl pallet_template::Config for Runtime {
|
|
||||||
type RuntimeEvent = RuntimeEvent;
|
|
||||||
}
|
|
||||||
|
|
||||||
impl pallet_utility::Config for Runtime {
|
impl pallet_utility::Config for Runtime {
|
||||||
type PalletsOrigin = OriginCaller;
|
type PalletsOrigin = OriginCaller;
|
||||||
type RuntimeCall = RuntimeCall;
|
type RuntimeCall = RuntimeCall;
|
||||||
@@ -717,9 +704,6 @@ construct_runtime!(
|
|||||||
PolkadotXcm: pallet_xcm = 31,
|
PolkadotXcm: pallet_xcm = 31,
|
||||||
CumulusXcm: cumulus_pallet_xcm = 32,
|
CumulusXcm: cumulus_pallet_xcm = 32,
|
||||||
MessageQueue: pallet_message_queue = 33,
|
MessageQueue: pallet_message_queue = 33,
|
||||||
|
|
||||||
// Template
|
|
||||||
TemplatePallet: pallet_template = 50,
|
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
+20
-18
@@ -1,6 +1,6 @@
|
|||||||
use frame_support::{
|
use frame_support::{
|
||||||
match_types, parameter_types,
|
parameter_types,
|
||||||
traits::{ConstU32, Everything, Nothing, PalletInfoAccess},
|
traits::{ConstU32, Contains, Everything, Nothing, PalletInfoAccess},
|
||||||
weights::Weight,
|
weights::Weight,
|
||||||
};
|
};
|
||||||
use frame_system::EnsureRoot;
|
use frame_system::EnsureRoot;
|
||||||
@@ -10,11 +10,12 @@ use polkadot_runtime_common::impls::ToAuthor;
|
|||||||
use xcm::latest::prelude::*;
|
use xcm::latest::prelude::*;
|
||||||
use xcm_builder::{
|
use xcm_builder::{
|
||||||
AccountId32Aliases, AllowExplicitUnpaidExecutionFrom, AllowTopLevelPaidExecutionFrom,
|
AccountId32Aliases, AllowExplicitUnpaidExecutionFrom, AllowTopLevelPaidExecutionFrom,
|
||||||
CurrencyAdapter, DenyReserveTransferToRelayChain, DenyThenTry, EnsureXcmOrigin,
|
DenyReserveTransferToRelayChain, DenyThenTry, EnsureXcmOrigin, FixedWeightBounds,
|
||||||
FixedWeightBounds, FungiblesAdapter, IsConcrete, NativeAsset, NoChecking, ParentIsPreset,
|
FrameTransactionalProcessor, FungibleAdapter, FungiblesAdapter, IsConcrete, NativeAsset,
|
||||||
RelayChainAsNative, SiblingParachainAsNative, SiblingParachainConvertsVia,
|
NoChecking, ParentIsPreset, RelayChainAsNative, SiblingParachainAsNative,
|
||||||
SignedAccountId32AsNative, SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit,
|
SiblingParachainConvertsVia, SignedAccountId32AsNative, SignedToAccountId32,
|
||||||
TrailingSetTopicAsId, UsingComponents, WithComputedOrigin, WithUniqueTopic,
|
SovereignSignedViaLocation, TakeWeightCredit, TrailingSetTopicAsId, UsingComponents,
|
||||||
|
WithComputedOrigin, WithUniqueTopic,
|
||||||
};
|
};
|
||||||
use xcm_executor::XcmExecutor;
|
use xcm_executor::XcmExecutor;
|
||||||
|
|
||||||
@@ -24,20 +25,20 @@ use super::{
|
|||||||
};
|
};
|
||||||
|
|
||||||
parameter_types! {
|
parameter_types! {
|
||||||
pub const RelayLocation: MultiLocation = MultiLocation::parent();
|
pub const RelayLocation: Location = Location::parent();
|
||||||
pub const RelayNetwork: Option<NetworkId> = None;
|
pub const RelayNetwork: Option<NetworkId> = None;
|
||||||
pub PlaceholderAccount: AccountId = PolkadotXcm::check_account();
|
pub PlaceholderAccount: AccountId = PolkadotXcm::check_account();
|
||||||
pub AssetsPalletLocation: MultiLocation =
|
pub AssetsPalletLocation: Location =
|
||||||
PalletInstance(<Assets as PalletInfoAccess>::index() as u8).into();
|
PalletInstance(<Assets as PalletInfoAccess>::index() as u8).into();
|
||||||
pub RelayChainOrigin: RuntimeOrigin = cumulus_pallet_xcm::Origin::Relay.into();
|
pub RelayChainOrigin: RuntimeOrigin = cumulus_pallet_xcm::Origin::Relay.into();
|
||||||
pub UniversalLocation: InteriorMultiLocation = Parachain(ParachainInfo::parachain_id().into()).into();
|
pub UniversalLocation: InteriorLocation = Parachain(ParachainInfo::parachain_id().into()).into();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// `AssetId/Balancer` converter for `TrustBackedAssets`
|
/// `AssetId/Balancer` converter for `TrustBackedAssets`
|
||||||
pub type TrustBackedAssetsConvertedConcreteId =
|
pub type TrustBackedAssetsConvertedConcreteId =
|
||||||
assets_common::TrustBackedAssetsConvertedConcreteId<AssetsPalletLocation, Balance>;
|
assets_common::TrustBackedAssetsConvertedConcreteId<AssetsPalletLocation, Balance>;
|
||||||
|
|
||||||
/// Type for specifying how a `MultiLocation` can be converted into an
|
/// Type for specifying how a `Location` can be converted into an
|
||||||
/// `AccountId`. This is used when determining ownership of accounts for asset
|
/// `AccountId`. This is used when determining ownership of accounts for asset
|
||||||
/// transacting and when attempting to use XCM `Transact` in order to determine
|
/// transacting and when attempting to use XCM `Transact` in order to determine
|
||||||
/// the dispatch Origin.
|
/// the dispatch Origin.
|
||||||
@@ -51,12 +52,12 @@ pub type LocationToAccountId = (
|
|||||||
);
|
);
|
||||||
|
|
||||||
/// Means for transacting assets on this chain.
|
/// Means for transacting assets on this chain.
|
||||||
pub type LocalAssetTransactor = CurrencyAdapter<
|
pub type LocalAssetTransactor = FungibleAdapter<
|
||||||
// Use this currency:
|
// Use this currency:
|
||||||
Balances,
|
Balances,
|
||||||
// Use this currency when it is a fungible asset matching the given location or name:
|
// Use this currency when it is a fungible asset matching the given location or name:
|
||||||
IsConcrete<RelayLocation>,
|
IsConcrete<RelayLocation>,
|
||||||
// Do a simple punn to convert an AccountId32 MultiLocation into a native chain account ID:
|
// Do a simple punn to convert an AccountId32 Location into a native chain account ID:
|
||||||
LocationToAccountId,
|
LocationToAccountId,
|
||||||
// Our chain's account ID type (we can't get away without mentioning it explicitly):
|
// Our chain's account ID type (we can't get away without mentioning it explicitly):
|
||||||
AccountId,
|
AccountId,
|
||||||
@@ -113,11 +114,11 @@ parameter_types! {
|
|||||||
pub const MaxAssetsIntoHolding: u32 = 64;
|
pub const MaxAssetsIntoHolding: u32 = 64;
|
||||||
}
|
}
|
||||||
|
|
||||||
match_types! {
|
pub struct ParentOrParentsExecutivePlurality;
|
||||||
pub type ParentOrParentsExecutivePlurality: impl Contains<MultiLocation> = {
|
impl Contains<Location> for ParentOrParentsExecutivePlurality {
|
||||||
MultiLocation { parents: 1, interior: Here } |
|
fn contains(location: &Location) -> bool {
|
||||||
MultiLocation { parents: 1, interior: X1(Plurality { id: BodyId::Executive, .. }) }
|
matches!(location.unpack(), (1, []) | (1, [Plurality { id: BodyId::Executive, .. }]))
|
||||||
};
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub type Barrier = TrailingSetTopicAsId<
|
pub type Barrier = TrailingSetTopicAsId<
|
||||||
@@ -162,6 +163,7 @@ impl xcm_executor::Config for XcmConfig {
|
|||||||
type SubscriptionService = PolkadotXcm;
|
type SubscriptionService = PolkadotXcm;
|
||||||
type Trader =
|
type Trader =
|
||||||
UsingComponents<WeightToFee, RelayLocation, AccountId, Balances, ToAuthor<Runtime>>;
|
UsingComponents<WeightToFee, RelayLocation, AccountId, Balances, ToAuthor<Runtime>>;
|
||||||
|
type TransactionalProcessor = FrameTransactionalProcessor;
|
||||||
type UniversalAliases = Nothing;
|
type UniversalAliases = Nothing;
|
||||||
// Teleporting is disabled.
|
// Teleporting is disabled.
|
||||||
type UniversalLocation = UniversalLocation;
|
type UniversalLocation = UniversalLocation;
|
||||||
|
|||||||
@@ -88,8 +88,6 @@ mod runtime_tests {
|
|||||||
fn balances_constants() {
|
fn balances_constants() {
|
||||||
assert_eq!(MaxFreezes::get(), 0);
|
assert_eq!(MaxFreezes::get(), 0);
|
||||||
|
|
||||||
assert_eq!(MaxHolds::get(), 0);
|
|
||||||
|
|
||||||
assert_eq!(MaxLocks::get(), 50);
|
assert_eq!(MaxLocks::get(), 50);
|
||||||
|
|
||||||
assert_eq!(MaxReserves::get(), 50);
|
assert_eq!(MaxReserves::get(), 50);
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
use frame_support::traits::PalletInfo;
|
use frame_support::traits::PalletInfo;
|
||||||
use parachain_template_runtime::{
|
use parachain_template_runtime::{
|
||||||
Aura, AuraExt, Authorship, Balances, CollatorSelection, CumulusXcm, MessageQueue, Multisig,
|
Aura, AuraExt, Authorship, Balances, CollatorSelection, CumulusXcm, MessageQueue, Multisig,
|
||||||
ParachainInfo, ParachainSystem, PolkadotXcm, Proxy, Runtime, Session, Sudo, System,
|
ParachainInfo, ParachainSystem, PolkadotXcm, Proxy, Runtime, Session, Sudo, System, Timestamp,
|
||||||
TemplatePallet, Timestamp, TransactionPayment, XcmpQueue,
|
TransactionPayment, XcmpQueue,
|
||||||
};
|
};
|
||||||
|
|
||||||
fn assert_pallet_prefix<P: 'static>(name: &str) {
|
fn assert_pallet_prefix<P: 'static>(name: &str) {
|
||||||
@@ -30,5 +30,4 @@ fn verify_pallet_prefixes() {
|
|||||||
assert_pallet_prefix::<PolkadotXcm>("PolkadotXcm");
|
assert_pallet_prefix::<PolkadotXcm>("PolkadotXcm");
|
||||||
assert_pallet_prefix::<CumulusXcm>("CumulusXcm");
|
assert_pallet_prefix::<CumulusXcm>("CumulusXcm");
|
||||||
assert_pallet_prefix::<MessageQueue>("MessageQueue");
|
assert_pallet_prefix::<MessageQueue>("MessageQueue");
|
||||||
assert_pallet_prefix::<TemplatePallet>("TemplatePallet");
|
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-2
@@ -1,4 +1,4 @@
|
|||||||
[toolchain]
|
[toolchain]
|
||||||
channel = "nightly-2023-09-21"
|
channel = "nightly-2024-02-17"
|
||||||
targets = ["wasm32-unknown-unknown"]
|
targets = ["wasm32-unknown-unknown"]
|
||||||
components = ["rustfmt", "clippy"]
|
components = ["rustfmt", "clippy", "rust-src"]
|
||||||
|
|||||||
Reference in New Issue
Block a user