Cargo Features

poseidon377 = { version = "1.2.0", default-features = false, features = ["std", "alloc", "arkworks", "r1cs", "parallel", "u32_backend"] }
default = arkworks

The arkworks feature is set by default whenever poseidon377 is added without default-features = false somewhere in the dependency tree.

std arkworks = alloc
alloc std?

Enables alloc of decaf377

arkworks default r1cs? = ark-r1cs-std, std

Enables std of ark-ec, ark-ff, ark-groth16, ark-relations, ark-serialize, and ark-std and arkworks of decaf377


TODO: eventually, feature-gate all arkworks deps behind this feature.

r1cs = ark-ec, ark-groth16, ark-r1cs-std, ark-relations, ark-serialize, ark-snark, ark-std, arkworks

Enables r1cs of decaf377 and poseidon-permutation

Affects poseidon377::r1cs


Enables parallel of ark-ec, ark-ff, ark-groth16, ark-r1cs-std, ark-std, and decaf377


Enables u32_backend of decaf377

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.

ark-ff arkworks parallel?
ark-groth16 arkworks parallel? r1cs?
ark-r1cs-std arkworks parallel? r1cs?
ark-relations arkworks r1cs?
ark-snark r1cs?
ark-ec arkworks parallel? r1cs?
ark-std arkworks parallel? r1cs?
ark-serialize arkworks r1cs?