Cargo Features

[dependencies]
bao_bin = { version = "0.12.1", default-features = false, features = ["neon", "rayon"] }
default = rayon

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

neon

Enables neon of blake3

blake3:

The NEON implementation does not participate in dynamic feature detection,
which is currently x86-only. If "neon" is on, NEON support is assumed. Note that AArch64 always supports NEON, but support on ARMv7 varies. The NEON implementation uses C intrinsics and requires a C compiler.

rayon default

Enables rayon of blake3

blake3:

The rayon feature (disabled by default, but enabled for docs.rs) adds the update_rayon and (in combination with mmap below) update_mmap_rayon methods, for multithreaded hashing. However, even if this feature is enabled, all other APIs remain single-threaded.

Implementation detail: We take a dependency on rayon-core instead of rayon, because it builds faster and still includes all the APIs we need.

bao_bin has 3 features without comments.