Files
pezkuwi-subxt/polkadot/primitives/Cargo.toml
T
Alin Dima fc12f435e3 add NodeFeatures field to HostConfiguration and runtime API (#2177)
Adds a `NodeFeatures` bitfield value to the runtime `HostConfiguration`,
with the purpose of coordinating the enabling of node-side features,
such as: https://github.com/paritytech/polkadot-sdk/issues/628 and
https://github.com/paritytech/polkadot-sdk/issues/598.
These are features that require all validators enable them at the same
time, assuming all/most nodes have upgraded their node versions.

This PR doesn't add any feature yet. These are coming in future PRs.

Also adds a runtime API for querying the state of the client features
and an extrinsic for setting/unsetting a feature by its index in the bitfield.

Note: originally part of:
https://github.com/paritytech/polkadot-sdk/pull/1644, but posted as
standalone to be reused by other PRs until the initial PR is merged
2023-11-14 20:48:32 +02:00

59 lines
2.6 KiB
TOML

[package]
name = "polkadot-primitives"
version = "1.0.0"
authors.workspace = true
edition.workspace = true
license.workspace = true
description = "Shared primitives used by Polkadot runtime"
[dependencies]
bitvec = { version = "1.0.0", default-features = false, features = ["alloc", "serde"] }
hex-literal = "0.4.1"
parity-scale-codec = { version = "3.6.1", default-features = false, features = ["bit-vec", "derive"] }
scale-info = { version = "2.10.0", default-features = false, features = ["bit-vec", "derive", "serde"] }
serde = { version = "1.0.188", default-features = false, features = ["derive", "alloc"] }
application-crypto = { package = "sp-application-crypto", path = "../../substrate/primitives/application-crypto", default-features = false, features = ["serde"] }
inherents = { package = "sp-inherents", path = "../../substrate/primitives/inherents", default-features = false }
primitives = { package = "sp-core", path = "../../substrate/primitives/core", default-features = false }
runtime_primitives = { package = "sp-runtime", path = "../../substrate/primitives/runtime", default-features = false }
sp-api = { path = "../../substrate/primitives/api", default-features = false }
sp-arithmetic = { path = "../../substrate/primitives/arithmetic", default-features = false, features = ["serde"] }
sp-authority-discovery = { path = "../../substrate/primitives/authority-discovery", default-features = false, features = ["serde"] }
sp-consensus-slots = { path = "../../substrate/primitives/consensus/slots", default-features = false, features = ["serde"] }
sp-io = { path = "../../substrate/primitives/io", default-features = false }
sp-keystore = { path = "../../substrate/primitives/keystore", optional = true }
sp-staking = { path = "../../substrate/primitives/staking", default-features = false, features = ["serde"] }
sp-std = { package = "sp-std", path = "../../substrate/primitives/std", default-features = false }
polkadot-core-primitives = { path = "../core-primitives", default-features = false }
polkadot-parachain-primitives = { path = "../parachain", default-features = false }
[features]
default = [ "std" ]
std = [
"application-crypto/std",
"bitvec/std",
"inherents/std",
"parity-scale-codec/std",
"polkadot-core-primitives/std",
"polkadot-parachain-primitives/std",
"primitives/std",
"runtime_primitives/std",
"scale-info/std",
"serde/std",
"sp-api/std",
"sp-arithmetic/std",
"sp-authority-discovery/std",
"sp-consensus-slots/std",
"sp-io/std",
"sp-keystore",
"sp-staking/std",
"sp-std/std",
]
runtime-benchmarks = [
"polkadot-parachain-primitives/runtime-benchmarks",
"runtime_primitives/runtime-benchmarks",
"sp-staking/runtime-benchmarks",
]