Cargo Features
[dependencies]
curve25519-dalek-organism = { version = "1.2.3", default-features = false, features = ["std", "alloc", "nightly", "yolocrypto", "u32_backend", "u64_backend", "simd_backend", "avx2_backend", "stage2_build", "serde"] }
- default = std, u64_backend
-
These default features are set whenever
curve25519-dalek-organism
is added without
somewhere in the dependency tree.default-features = false - std default = alloc
-
Enables std of rand_core ^0.5.1 and subtle
- alloc std
-
Affects
scalar_mul::straus
,scalar_mul::precomputed_straus
,scalar_mul::pippenger
,scalar_mul::straus
,scalar_mul::precomputed_straus
,scalar_mul::pippenger
,edwards::VartimeEdwardsPrecomputation
,ristretto::VartimeRistrettoPrecomputation
… - nightly simd_backend?
-
Enables nightly of clear_on_drop =0.2.3 and subtle
subtle:
DEPRECATED: As of 2.4.1, this feature does nothing.
Affects
backend::vector
… - yolocrypto
- u32_backend
-
The u32 backend uses u32s with u64 products.
Affects
serial::u32
,field::FieldElement
… - u64_backend default simd_backend?
-
The u64 backend uses u64s with u128 products.
Affects
serial::u64
,field::FieldElement
… - simd_backend avx2_backend? = nightly, packed_simd, u64_backend
-
The SIMD backend uses parallel formulas, using either AVX2 or AVX512-IFMA.
Affects
backend::vector
… - avx2_backend = simd_backend
-
Old name for the SIMD backend, preserved for compatibility
- stage2_build
-
Signals that we're in the main build stage. This is off by default,
to signal stage 1 of the build, where build.rs loads the library into the build script. Then, the build.rs emits the stage2_build feature before the main-stage compilation.Affects
scalar_mul::vartime_double_base
,constants::RISTRETTO_BASEPOINT_TABLE
…
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.
Note: we generate precomputed tables by building the crate twice: once as part of build.rs, and then once "for real".
This means that the [dependencies] and [build-dependencies] sections must match exactly, since the build.rs uses the crate itself as a library.
- serde implicit feature
-
Enables serde
serde:
A generic serialization/deserialization framework
- packed_simd simd_backend?