Cargo Features
[dependencies]
decaf377 = { version = "0.10.1", default-features = false, features = ["std", "alloc", "parallel", "arkworks", "r1cs", "u32_backend"] }
This matches what ark-std (a library for no_std compatibility) does, having a default feature of std - without the ark-std std feature, decaf377 doesn't compile
- default = arkworks
-
The
arkworks
feature is set by default wheneverdecaf377
is added without
somewhere in the dependency tree.default-features = false - std arkworks = alloc
-
Enables std of hex, num-bigint, once_cell, rand_core, subtle, and zeroize
num-bigint:
no-std
- alloc std?
-
Enables alloc of once_cell, rand_core, and zeroize
once_cell:
Enables
once_cell::race::OnceBox
type. - parallel
-
Enables parallel of ark-ec ^0.4, ark-ff ^0.4, ark-groth16 ^0.4, ark-r1cs-std ^0.4, and ark-std ^0.4
- arkworks default r1cs? = ark-bls12-377, ark-ec, ark-ed-on-bls12-377, ark-ff, ark-serialize, ark-std, hashbrown, std
-
TODO: eventually, feature-gate all arkworks deps behind this feature.
Affects
fp::arkworks
,fq::arkworks
,fr::arkworks
,fr::u64
… - r1cs = ark-groth16, ark-r1cs-std, ark-relations, ark-snark, arkworks
-
Affects
ark_curve::r1cs
… - u32_backend
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.
- num-bigint std?
- hashbrown arkworks
-
Enables hashbrown ^0.14.3
std
- ark-relations r1cs?
-
Enables ark-relations ^0.4
- ark-r1cs-std parallel? r1cs?
-
Enables ark-r1cs-std ^0.4
- ark-std arkworks parallel?
-
Enables ark-std ^0.4
- ark-ec arkworks parallel?
-
Enables ark-ec ^0.4
- ark-ff arkworks parallel?
-
Enables ark-ff ^0.4
- ark-serialize arkworks
-
Enables ark-serialize ^0.4
- ark-bls12-377 arkworks
-
Enables ark-bls12-377 ^0.4
- ark-ed-on-bls12-377 arkworks
-
Enables ark-ed-on-bls12-377 ^0.4
- ark-groth16 parallel? r1cs?
-
Enables ark-groth16 ^0.4
- ark-snark r1cs?
-
Enables ark-snark ^0.4
- once_cell alloc? std?