solana/sdk/Cargo.toml

106 lines
3.2 KiB
TOML
Raw Normal View History

[package]
name = "solana-sdk"
description = "Solana SDK"
documentation = "https://docs.rs/solana-sdk"
2021-06-23 14:22:35 -07:00
readme = "README.md"
version = { workspace = true }
authors = { workspace = true }
repository = { workspace = true }
homepage = { workspace = true }
license = { workspace = true }
edition = { workspace = true }
[features]
# "program" feature is a legacy feature retained to support v1.3 and older
# programs. New development should not use this feature. Instead use the
# solana-program crate
program = []
default = [
2020-10-24 08:39:28 -07:00
"full" # functionality that is not compatible or needed for on-chain programs
2020-10-19 10:17:29 -07:00
]
2020-10-24 08:39:28 -07:00
full = [
"assert_matches",
"byteorder",
2020-02-24 14:55:08 -08:00
"chrono",
"generic-array",
2020-12-11 12:57:43 -08:00
"memmap2",
"rand",
Bump rand to 0.8, rand_chacha to 0.3, getrandom to 0.2 (#32871) * sdk: Add concurrent support for rand 0.7 and 0.8 * Update rand, rand_chacha, and getrandom versions * Run command to replace `gen_range` Run `git grep -l gen_range | xargs sed -i'' -e 's/gen_range(\(\S*\), /gen_range(\1../' * sdk: Fix users of older `gen_range` * Replace `hash::new_rand` with `hash::new_with_thread_rng` Run: ``` git grep -l hash::new_rand | xargs sed -i'' -e 's/hash::new_rand([^)]*/hash::new_with_thread_rng(/' ``` * perf: Use `Keypair::new()` instead of `generate` * Use older rand version in zk-token-sdk * program-runtime: Inline random key generation * bloom: Fix clippy warnings in tests * streamer: Scope rng usage correctly * perf: Fix clippy warning * accounts-db: Map to char to generate a random string * Remove `from_secret_key_bytes`, it's just `keypair_from_seed` * ledger: Generate keypairs by hand * ed25519-tests: Use new rand * runtime: Use new rand in all tests * gossip: Clean up clippy and inline keypair generators * core: Inline keypair generation for tests * Push sbf lockfile change * sdk: Sort dependencies correctly * Remove `hash::new_with_thread_rng`, use `Hash::new_unique()` * Use Keypair::new where chacha isn't used * sdk: Fix build by marking rand 0.7 optional * Hardcode secret key length, add static assertion * Unify `getrandom` crate usage to fix linking errors * bloom: Fix tests that require a random hash * Remove some dependencies, try to unify others * Remove unnecessary uses of rand and rand_core * Update lockfiles * Add back some dependencies to reduce rebuilds * Increase max rebuilds from 14 to 15 * frozen-abi: Remove `getrandom` * Bump rebuilds to 17 * Remove getrandom from zk-token-proof
2023-08-21 10:11:21 -07:00
"rand0-7",
"serde_json",
2019-11-07 17:08:10 -08:00
"ed25519-dalek",
"ed25519-dalek-bip32",
"solana-logger",
"libsecp256k1",
"sha3",
"digest",
]
dev-context-only-utils = []
[dependencies]
assert_matches = { workspace = true, optional = true }
base64 = { workspace = true }
bincode = { workspace = true }
bitflags = { workspace = true }
borsh = { workspace = true }
bs58 = { workspace = true }
bytemuck = { workspace = true, features = ["derive"] }
byteorder = { workspace = true, optional = true }
chrono = { workspace = true, features = ["alloc"], optional = true }
curve25519-dalek = { workspace = true, optional = true }
derivation-path = { workspace = true }
digest = { workspace = true, optional = true }
ed25519-dalek = { workspace = true, optional = true }
ed25519-dalek-bip32 = { workspace = true, optional = true }
generic-array = { workspace = true, features = ["serde", "more_lengths"], optional = true }
hmac = { workspace = true }
itertools = { workspace = true }
lazy_static = { workspace = true }
libsecp256k1 = { workspace = true, optional = true }
log = { workspace = true }
memmap2 = { workspace = true, optional = true }
num-derive = { workspace = true }
num-traits = { workspace = true }
num_enum = { workspace = true }
pbkdf2 = { workspace = true }
qstring = { workspace = true }
qualifier_attr = { workspace = true }
rand = { workspace = true, optional = true }
Bump rand to 0.8, rand_chacha to 0.3, getrandom to 0.2 (#32871) * sdk: Add concurrent support for rand 0.7 and 0.8 * Update rand, rand_chacha, and getrandom versions * Run command to replace `gen_range` Run `git grep -l gen_range | xargs sed -i'' -e 's/gen_range(\(\S*\), /gen_range(\1../' * sdk: Fix users of older `gen_range` * Replace `hash::new_rand` with `hash::new_with_thread_rng` Run: ``` git grep -l hash::new_rand | xargs sed -i'' -e 's/hash::new_rand([^)]*/hash::new_with_thread_rng(/' ``` * perf: Use `Keypair::new()` instead of `generate` * Use older rand version in zk-token-sdk * program-runtime: Inline random key generation * bloom: Fix clippy warnings in tests * streamer: Scope rng usage correctly * perf: Fix clippy warning * accounts-db: Map to char to generate a random string * Remove `from_secret_key_bytes`, it's just `keypair_from_seed` * ledger: Generate keypairs by hand * ed25519-tests: Use new rand * runtime: Use new rand in all tests * gossip: Clean up clippy and inline keypair generators * core: Inline keypair generation for tests * Push sbf lockfile change * sdk: Sort dependencies correctly * Remove `hash::new_with_thread_rng`, use `Hash::new_unique()` * Use Keypair::new where chacha isn't used * sdk: Fix build by marking rand 0.7 optional * Hardcode secret key length, add static assertion * Unify `getrandom` crate usage to fix linking errors * bloom: Fix tests that require a random hash * Remove some dependencies, try to unify others * Remove unnecessary uses of rand and rand_core * Update lockfiles * Add back some dependencies to reduce rebuilds * Increase max rebuilds from 14 to 15 * frozen-abi: Remove `getrandom` * Bump rebuilds to 17 * Remove getrandom from zk-token-proof
2023-08-21 10:11:21 -07:00
rand0-7 = { package = "rand", version = "0.7", optional = true }
rustversion = { workspace = true }
serde = { workspace = true }
serde_bytes = { workspace = true }
serde_derive = { workspace = true }
serde_json = { workspace = true, optional = true }
serde_with = { workspace = true, features = ["macros"] }
sha2 = { workspace = true }
sha3 = { workspace = true, optional = true }
solana-frozen-abi = { workspace = true }
solana-frozen-abi-macro = { workspace = true }
solana-logger = { workspace = true, optional = true }
solana-program = { workspace = true }
solana-sdk-macro = { workspace = true }
thiserror = { workspace = true }
uriparse = { workspace = true }
wasm-bindgen = { workspace = true }
[target.'cfg(target_arch = "wasm32")'.dependencies]
js-sys = { workspace = true }
[dev-dependencies]
anyhow = { workspace = true }
curve25519-dalek = { workspace = true }
hex = { workspace = true }
solana-sdk = { path = ".", features = ["dev-context-only-utils"] }
static_assertions = { workspace = true }
tiny-bip39 = { workspace = true }
[build-dependencies]
rustc_version = { workspace = true }
[package.metadata.docs.rs]
targets = ["x86_64-unknown-linux-gnu"]
[lib]
crate-type = ["cdylib", "rlib"]