Cargo Features

saft = { version = "0.34.1", default-features = false, features = ["optimized", "with_arbitrary", "with_bincode", "with_rayon", "with_serde", "with_speedy"] }
default = optimized

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

optimized default
with_arbitrary = arbitrary

Enables with_arbitrary of saft-sdf

with_bincode = bincode
with_rayon = rayon

NOTE[TSolberg]: This feature can cause Rayon to overflow the stack when lots of creatures exist.
This can occur if those creatures have very high complexity so lots of creatures are getting baked at the same time, generating overlapping long-running jobs.

with_serde = serde

Enables with_serde of macaw and saft-sdf

with_speedy = speedy

Enables with_speedy of saft-sdf

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features.

bincode with_bincode?
rayon with_rayon?
serde with_serde?
speedy with_speedy?
arbitrary with_arbitrary?