mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-05-30 22:11:02 +00:00
support crypto primitives for no_std introducing full_crypto feature (#3778)
* introduced "with_crypto" feature and applied switches like in substrate-api-client fork * introduced "with_crypto" feature and applied switches like in substraTEE-worker fork * distinguishing core::hash vs std::hash * @bkchr's review requests fulfilled * fixes * revert dependency upgrade ed25519-dalek * added full_crypto features to all crates using app_crypto! macro * fixing CI complaints. * fix again * adding CI test for with_crypto feature * added full_crypto for ecdsa. now builds wit h--no-deafault-features --features with_crypto * remove --release from CI test * @bkchr requested changes. moved full_crypto CI test to build stage * fixing no_std issue * CI fresh copy from srml-staking * gitlab CI with +nightly * solved no-feature-in-macro dilemma * cosmetics * Update core/application-crypto/src/sr25519.rs Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com> * Update core/application-crypto/src/ed25519.rs Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com> * even more simple * undo line delete * refactoring app_crypto macro. splitting functionalities based on full_crypto feature * whitespace cosmetics
This commit is contained in:
@@ -10,28 +10,28 @@ codec = { package = "parity-scale-codec", version = "1.0.0", default-features =
|
||||
rustc-hex = { version = "2.0.1", default-features = false }
|
||||
log = { version = "0.4.8", default-features = false }
|
||||
serde = { version = "1.0.101", optional = true, features = ["derive"] }
|
||||
twox-hash = { version = "1.5.0", optional = true }
|
||||
twox-hash = { version = "1.5.0", default-features = false, optional = true }
|
||||
byteorder = { version = "1.3.2", default-features = false }
|
||||
primitive-types = { version = "0.6", default-features = false, features = ["codec"] }
|
||||
impl-serde = { version = "0.2.3", optional = true }
|
||||
wasmi = { version = "0.5.1", optional = true }
|
||||
hash-db = { version = "0.15.2", default-features = false }
|
||||
hash256-std-hasher = { version = "0.15.2", default-features = false }
|
||||
ed25519-dalek = { version = "0.9.1", optional = true }
|
||||
ed25519-dalek = { version = "0.9.1", default-features = false, features = ["u64_backend"], optional = true }
|
||||
base58 = { version = "0.1.0", optional = true }
|
||||
blake2-rfc = { version = "0.2.18", optional = true }
|
||||
schnorrkel = { version = "0.8.5", features = ["preaudit_deprecated"], optional = true }
|
||||
blake2-rfc = { version = "0.2.18", default-features = false, optional = true }
|
||||
schnorrkel = { version = "0.8.5", features = ["preaudit_deprecated"], default-features = false, optional = true }
|
||||
rand = { version = "0.7.2", optional = true }
|
||||
sha2 = { version = "0.8.0", optional = true }
|
||||
sha2 = { version = "0.8.0", default-features = false, optional = true }
|
||||
substrate-bip39 = { version = "0.3.1", optional = true }
|
||||
tiny-bip39 = { version = "0.6.2", optional = true }
|
||||
hex = { version = "0.3.2", optional = true }
|
||||
hex = { version = "0.4", default-features = false, optional = true }
|
||||
regex = { version = "1.3.1", optional = true }
|
||||
num-traits = { version = "0.2.8", default-features = false }
|
||||
zeroize = "0.10.1"
|
||||
lazy_static = { version = "1.4.0", optional = true }
|
||||
zeroize = { version = "0.10.1", default-features = false }
|
||||
lazy_static = { version = "1.4.0", default-features = false, optional = true }
|
||||
parking_lot = { version = "0.9.0", optional = true }
|
||||
libsecp256k1 = { version = "0.3.0", optional = true }
|
||||
libsecp256k1 = { version = "0.3.0", default-features = false, optional = true }
|
||||
tiny-keccak = { version = "1.5.0", optional = true }
|
||||
substrate-debug-derive = { version = "2.0.0", path = "./debug-derive" }
|
||||
externalities = { package = "substrate-externalities", path = "../externalities", optional = true }
|
||||
@@ -54,6 +54,7 @@ bench = false
|
||||
[features]
|
||||
default = ["std"]
|
||||
std = [
|
||||
"full_crypto",
|
||||
"log/std",
|
||||
"wasmi",
|
||||
"lazy_static",
|
||||
@@ -70,18 +71,18 @@ std = [
|
||||
"rstd/std",
|
||||
"serde",
|
||||
"rustc-hex/std",
|
||||
"twox-hash",
|
||||
"blake2-rfc",
|
||||
"ed25519-dalek",
|
||||
"hex",
|
||||
"twox-hash/std",
|
||||
"blake2-rfc/std",
|
||||
"ed25519-dalek/std",
|
||||
"hex/std",
|
||||
"base58",
|
||||
"substrate-bip39",
|
||||
"tiny-bip39",
|
||||
"serde",
|
||||
"byteorder/std",
|
||||
"rand",
|
||||
"sha2",
|
||||
"schnorrkel",
|
||||
"sha2/std",
|
||||
"schnorrkel/std",
|
||||
"regex",
|
||||
"num-traits/std",
|
||||
"libsecp256k1",
|
||||
@@ -90,3 +91,16 @@ std = [
|
||||
"externalities",
|
||||
"primitives-storage/std",
|
||||
]
|
||||
|
||||
# This feature enables all crypto primitives for `no_std` builds like microcontrollers
|
||||
# or Intel SGX.
|
||||
# For the regular wasm runtime builds this should not be used.
|
||||
full_crypto = [
|
||||
"ed25519-dalek",
|
||||
"blake2-rfc",
|
||||
"schnorrkel",
|
||||
"libsecp256k1",
|
||||
"hex",
|
||||
"sha2",
|
||||
"twox-hash"
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user