Cargo Features
[dependencies]
p256 = { version = "0.14.0pre.1", defaultfeatures = false, features = ["std", "alloc", "arithmetic", "bits", "digest", "ecdh", "ecdsa", "exposefield", "hash2curve", "jwk", "pem", "pkcs8", "serde", "sha256", "voprf", "testvectors"] }
 default = arithmetic, ecdsa, pem, std

These default features are set whenever
p256
is added without
somewhere in the dependency tree.defaultfeatures = false  std default = alloc

Enables std of optional ecdsa and ellipticcurve
ecdsa:
optional dependencies
 alloc std

Enables alloc of optional ecdsa, ellipticcurve, and optional primeorder
 arithmetic default bits? ecdh? ecdsa exposefield? hash2curve?

Enables primeorder, arithmetic of ellipticcurve
Affects
p256::BlindedScalar
,p256::NonZeroScalar
,p256::PublicKey
…  bits = arithmetic

Enables bits of ellipticcurve
Affects
p256::ScalarBits
…  digest sha256?
 ecdh = arithmetic

Enables ecdh of ellipticcurve
Affects
p256::ecdh
…  ecdsa default = arithmetic, sha256

Enables signing and verifying of ecdsa
Affects
ecdsa::SigningKey
,ecdsa::VerifyingKey
…  exposefield = arithmetic
 hash2curve = arithmetic

Enables hash2curve of ellipticcurve
 jwk

Enables jwk of ellipticcurve
 pem default = pkcs8

Enables pem of ecdsa and ellipticcurve
 pkcs8 pem

Enables pkcs8 of optional ecdsa and ellipticcurve
 serde = serdect

Enables serde of optional ecdsa, ellipticcurve, and optional primeorder
 sha256 ecdsa = digest, sha2
 voprf = sha2

Enables voprf of ellipticcurve
 testvectors

Enables hexliteral
Features from optional dependencies
In crates that don't use the dep:
syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.