Files
pezkuwi-subxt/substrate/client/cli/Cargo.toml
T
Michal Kucharczyk a756baf3b2 Support for keyring in runtimes (#2044)
This functionality is required for #1984.

This PR enables
[`sp-keyring`](https://github.com/paritytech/polkadot-sdk/blob/21d36b7b4229c4d5225944f197918cde23fda4ea/substrate/primitives/keyring/src/sr25519.rs#L31-L40)
in `no-std` environments, allowing to generate the public key (e.g.
`AccountKeyring::Alice.public().to_ss58check()`), which can be later
used in the any of built-in [_runtime-genesis-config_
variant](https://github.com/paritytech/polkadot-sdk/blob/21d36b7b4229c4d5225944f197918cde23fda4ea/polkadot/node/service/src/chain_spec.rs#L1066-L1073).


The proposal is as follows:
- expose [`core::Pair`
trait](https://github.com/paritytech/polkadot-sdk/blob/d6f15306282e3de848a09c9aa9cba6f95a7811f0/substrate/primitives/core/src/crypto.rs#L832)
in `no-std`,
- `full_crypto` feature enables `sign` method,
- `std` feature enables `generate_with_phrase` and `generate` methods
(randomness is required),
- All other functionality, currently gated by `full_crypto` will be
available unconditionally (`no-std`):
-- `from_string`
-- `from_string_with_seed`
-- `from seed`
-- `from_seed_slice`
-- `from_phrase`
-- `derive`
-- `verify`

---

Depends on https://github.com/rust-bitcoin/rust-bip39/pull/57

---------

Co-authored-by: command-bot <>
Co-authored-by: Davide Galassi <davxy@datawok.net>
2024-03-12 11:43:31 +00:00

63 lines
2.1 KiB
TOML

[package]
name = "sc-cli"
version = "0.36.0"
authors.workspace = true
description = "Substrate CLI interface."
edition.workspace = true
license = "GPL-3.0-or-later WITH Classpath-exception-2.0"
homepage = "https://substrate.io"
repository.workspace = true
readme = "README.md"
[lints]
workspace = true
[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]
[dependencies]
array-bytes = "6.1"
chrono = "0.4.31"
clap = { version = "4.5.1", features = ["derive", "string", "wrap_help"] }
fdlimit = "0.3.0"
futures = "0.3.21"
itertools = "0.10.3"
libp2p-identity = { version = "0.1.3", features = ["ed25519", "peerid"] }
log = { workspace = true, default-features = true }
names = { version = "0.14.0", default-features = false }
parity-scale-codec = "3.6.1"
rand = "0.8.5"
regex = "1.6.0"
rpassword = "7.0.0"
serde = { workspace = true, default-features = true }
serde_json = { workspace = true, default-features = true }
thiserror = { workspace = true }
# personal fork here as workaround for: https://github.com/rust-bitcoin/rust-bip39/pull/64
bip39 = { package = "parity-bip39", version = "2.0.1", features = ["rand"] }
tokio = { version = "1.22.0", features = ["parking_lot", "rt-multi-thread", "signal"] }
sc-client-api = { path = "../api" }
sc-client-db = { path = "../db", default-features = false }
sc-keystore = { path = "../keystore" }
sc-mixnet = { path = "../mixnet" }
sc-network = { path = "../network" }
sc-service = { path = "../service", default-features = false }
sc-telemetry = { path = "../telemetry" }
sc-tracing = { path = "../tracing" }
sc-utils = { path = "../utils" }
sp-blockchain = { path = "../../primitives/blockchain" }
sp-core = { path = "../../primitives/core" }
sp-keyring = { path = "../../primitives/keyring" }
sp-keystore = { path = "../../primitives/keystore" }
sp-panic-handler = { path = "../../primitives/panic-handler" }
sp-runtime = { path = "../../primitives/runtime" }
sp-version = { path = "../../primitives/version" }
[dev-dependencies]
tempfile = "3.1.0"
futures-timer = "3.0.1"
sp-tracing = { path = "../../primitives/tracing" }
[features]
default = ["rocksdb"]
rocksdb = ["sc-client-db/rocksdb"]