mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-27 17:28:00 +00:00
3fef703e30
* Merged BEEFY primitives with generic signature and keyset commitment support from old pull to current code * - Add bls-experimental feature to application-crypto and beefy primitives - Fix remaining crypto -> ecdsa_crypto - code build but not tests * Make beefy primitive tests compile * move bls related beefy primitives code and test behind bls-experimental flag * Make BEEFY clients complies with BEEFY API depending on AuthorityId * - Rename `BeefyAuthoritySet.root` → `BeefyAuthoritySet.keyset_commitment`. - Remove apk proof keyset_commitment from `BeefyAuthoritySet`. - Fix failing signed commitment and signature to witness test. - Make client compatible with BeefyAPI generic on AuthorityId. - `crypto` → `ecdsa_crypto` in BEEFY client and frame. * Commit Cargo lock remove ark-serialize from BEEFY primitives * Use Codec instead of Encode + Decode in primitives/consensus/beefy/src/lib.rs Co-authored-by: Davide Galassi <davxy@datawok.net> * - Make `BeefyApi` generic over Signature type. - Make new `BeeyApi` functinos also generic over AuthorityId and Signature * Unmake BeefyAPI generic over Signature. Recover Signature type from AuthId. * - dont use hex or hex-literal use array-bytes instead in beefy primitives and bls crypto. - CamelCase ECDSA and BLS everywhere. * Move the definition of BEEFY key type from `primitives/beefy` to `crypto.rs` according to new convention. * - Add bls377_generate_new to `sp-io` and `application_crypto::bls`. - Add `bls-experimental` to `sp-io` Does not compile because PassByCodec can not derive PassBy using customly implemented PassByIner. * Implement PassBy for `bls::Public` manually * fix Beefy `KEY_TYPE` in `frame/beefy` tests to come from `sp-core::key_types` enum * specify both generic for `hex2array_unchecked` in `sp-core/bls.rs` * Rename `crypto`→`ecdsa_crypto` in `primitives/consensus/beefy/src/test_utils.rs` docs * remove commented-out code in `primitives/consensus/beefy/src/commitment.rs` Co-authored-by: Davide Galassi <davxy@datawok.net> * Fix inconsistency in panic message in `primitives/io/src/lib.rs` Co-authored-by: Davide Galassi <davxy@datawok.net> * Remove redundant feature activation in `primitives/io/Cargo.toml` Co-authored-by: Davide Galassi <davxy@datawok.net> * - make `w3f-bls` a dev-dependancy only for beefy primitives. - clean up comments. Co-authored-by: Davide Galassi <davxy@datawok.net> * export BEEFY KEY_TYPE from primitives/consensus/beefy make `frame/consensus/beefy` in dependent of sp_crypto_app use consistent naming in the beefy primitive tests. * - implement `BeefyAuthorityId` for `bls_crypto::AuthorityId`. - implement `bls_verify_works` test for BEEFY `bls_crypto`. * Remove BEEFY `ecdsa_n_bls_crypto` for now for later re-introduction * Make commitment and witness BEEFY tests not use Keystore. * put `bls_beefy_verify_works` test under `bls-experimental` flag. * bump up Runtime `BeefyAPI` to version 3 due to introducing generic AuthorityId. * reuse code and encapsulate w3f-bls backend in sp-core as most as possible Co-authored-by: Davide Galassi <davxy@datawok.net> * Make comments in primities BEEFY `commitment.rs` and `witness.rs``tests convention conforming * Use master dep versions * Trivial change. Mostly to trigger CI * Apply suggestions from code review Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com> * Fix Cargo.toml * Trigger CI with cumulus companion * Trigger CI after polkadot companion change --------- Co-authored-by: Davide Galassi <davxy@datawok.net> Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>
149 lines
5.0 KiB
TOML
149 lines
5.0 KiB
TOML
[package]
|
|
name = "sp-core"
|
|
version = "21.0.0"
|
|
authors = ["Parity Technologies <admin@parity.io>"]
|
|
edition = "2021"
|
|
license = "Apache-2.0"
|
|
homepage = "https://substrate.io"
|
|
repository = "https://github.com/paritytech/substrate/"
|
|
description = "Shareable Substrate types."
|
|
documentation = "https://docs.rs/sp-core"
|
|
|
|
[package.metadata.docs.rs]
|
|
targets = ["x86_64-unknown-linux-gnu"]
|
|
|
|
[dependencies]
|
|
codec = { package = "parity-scale-codec", version = "3.6.1", default-features = false, features = ["derive","max-encoded-len"] }
|
|
scale-info = { version = "2.5.0", default-features = false, features = ["derive"] }
|
|
log = { version = "0.4.17", default-features = false }
|
|
serde = { version = "1.0.163", optional = true, default-features = false, features = ["derive", "alloc"] }
|
|
bounded-collections = { version = "0.1.8", default-features = false }
|
|
primitive-types = { version = "0.12.0", default-features = false, features = ["codec", "scale-info"] }
|
|
impl-serde = { version = "0.4.0", default-features = false, optional = true }
|
|
hash-db = { version = "0.16.0", default-features = false }
|
|
hash256-std-hasher = { version = "0.15.2", default-features = false }
|
|
bs58 = { version = "0.4.0", default-features = false, optional = true }
|
|
rand = { version = "0.8.5", features = ["small_rng"], optional = true }
|
|
substrate-bip39 = { version = "0.4.4", optional = true }
|
|
tiny-bip39 = { version = "1.0.0", optional = true }
|
|
regex = { version = "1.6.0", optional = true }
|
|
zeroize = { version = "1.4.3", default-features = false }
|
|
secrecy = { version = "0.8.0", default-features = false }
|
|
lazy_static = { version = "1.4.0", default-features = false, optional = true }
|
|
parking_lot = { version = "0.12.1", optional = true }
|
|
ss58-registry = { version = "1.34.0", default-features = false }
|
|
sp-std = { version = "8.0.0", default-features = false, path = "../std" }
|
|
sp-debug-derive = { version = "8.0.0", default-features = false, path = "../debug-derive" }
|
|
sp-storage = { version = "13.0.0", default-features = false, path = "../storage" }
|
|
sp-externalities = { version = "0.19.0", optional = true, path = "../externalities" }
|
|
futures = { version = "0.3.21", optional = true }
|
|
dyn-clonable = { version = "0.9.0", optional = true }
|
|
thiserror = { version = "1.0.30", optional = true }
|
|
tracing = { version = "0.1.29", optional = true }
|
|
bitflags = "1.3"
|
|
paste = "1.0.7"
|
|
|
|
# full crypto
|
|
array-bytes = { version = "6.1", optional = true }
|
|
ed25519-zebra = { version = "3.1.0", default-features = false, optional = true }
|
|
blake2 = { version = "0.10.4", default-features = false, optional = true }
|
|
libsecp256k1 = { version = "0.7", default-features = false, features = ["static-context"], optional = true }
|
|
schnorrkel = { version = "0.9.1", features = ["preaudit_deprecated", "u64_backend"], default-features = false }
|
|
merlin = { version = "2.0", default-features = false }
|
|
secp256k1 = { version = "0.24.0", default-features = false, features = ["recovery", "alloc"], optional = true }
|
|
sp-core-hashing = { version = "9.0.0", path = "./hashing", default-features = false, optional = true }
|
|
sp-runtime-interface = { version = "17.0.0", default-features = false, path = "../runtime-interface" }
|
|
# bls crypto
|
|
w3f-bls = { version = "0.1.3", default-features = false, optional = true}
|
|
|
|
[dev-dependencies]
|
|
criterion = "0.4.0"
|
|
serde_json = "1.0"
|
|
sp-core-hashing-proc-macro = { version = "9.0.0", path = "./hashing/proc-macro" }
|
|
|
|
[[bench]]
|
|
name = "bench"
|
|
harness = false
|
|
|
|
[lib]
|
|
bench = false
|
|
|
|
[features]
|
|
default = ["std"]
|
|
std = [
|
|
"merlin/std",
|
|
"full_crypto",
|
|
"log/std",
|
|
"thiserror",
|
|
"lazy_static",
|
|
"parking_lot",
|
|
"bounded-collections/std",
|
|
"primitive-types/std",
|
|
"primitive-types/serde",
|
|
"primitive-types/byteorder",
|
|
"primitive-types/rustc-hex",
|
|
"impl-serde/std",
|
|
"codec/std",
|
|
"scale-info/std",
|
|
"hash256-std-hasher/std",
|
|
"hash-db/std",
|
|
"sp-std/std",
|
|
"serde/std",
|
|
"blake2/std",
|
|
"array-bytes",
|
|
"ed25519-zebra/std",
|
|
"bs58/std",
|
|
"substrate-bip39",
|
|
"tiny-bip39",
|
|
"rand",
|
|
"schnorrkel/std",
|
|
"regex",
|
|
"secp256k1/std",
|
|
"secp256k1/global-context",
|
|
"sp-core-hashing/std",
|
|
"sp-debug-derive/std",
|
|
"sp-storage/std",
|
|
"sp-runtime-interface/std",
|
|
"ss58-registry/std",
|
|
"zeroize/alloc",
|
|
"secrecy/alloc",
|
|
"futures",
|
|
"futures/thread-pool",
|
|
"libsecp256k1/std",
|
|
"dyn-clonable",
|
|
"tracing",
|
|
"sp-externalities/std"
|
|
]
|
|
|
|
# Serde support without relying on std features.
|
|
serde = [
|
|
"dep:serde",
|
|
"array-bytes",
|
|
"blake2",
|
|
"bounded-collections/serde",
|
|
"bs58/alloc",
|
|
"scale-info/serde",
|
|
"secrecy/alloc",
|
|
"impl-serde",
|
|
"primitive-types/serde_no_std",
|
|
"sp-storage/serde",
|
|
"sp-core-hashing",
|
|
]
|
|
|
|
# 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 = [
|
|
"array-bytes",
|
|
"ed25519-zebra",
|
|
"blake2",
|
|
"libsecp256k1",
|
|
"secp256k1",
|
|
"sp-core-hashing",
|
|
"sp-runtime-interface/disable_target_static_assertions",
|
|
]
|
|
|
|
# This feature adds BLS crypto primitives. It should not be used in production since
|
|
# the BLS implementation and interface may still be subject to significant change.
|
|
bls-experimental = ["w3f-bls"]
|