Cargo Features

[dependencies]
savefile = { version = "0.17.6", default-features = false, features = ["bit-set", "serde_derive", "size_sanity_checks", "nightly", "rust1_78", "compression", "encryption", "derive", "arrayvec", "smallvec", "indexmap", "parking_lot", "rustc-hash", "quickcheck"] }
default = arrayvec, bit-set, bit-vec, indexmap, parking_lot, smallvec

These default features are set whenever savefile is added without default-features = false somewhere in the dependency tree.

bit-set default = bit-vec

Enables bit-set ^0.5

serde_derive = serde

Enables serde_derive

size_sanity_checks

Enable this to reduce risk of crashing on corrupt input. Provides sanity checks for sizes of objects.
This is mostly to be able to run fuzzers against the deserializers without them being guaranteed to easily find out-of-memory crashes.

nightly

Use features only available on the nightly rust-compiler.
Enabling this provides slightly better introspection support.
Automatically set by build.rs for nightly compilers

rust1_78

Rust version is > 1.78
Automatically set by build.rs

compression = bzip2
encryption = rand, ring
derive

Enables savefile-derive

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.

bit-vec default bit-set

Enables bit-vec ^0.6

arrayvec default
smallvec default
indexmap default

Enables indexmap ^1.9

parking_lot default

Affects savefile::IntrospectItemMutex, savefile::IntrospectItemRwLock

ring encryption?

Enables ring ^0.16.9

rand encryption?
bzip2 compression?
rustc-hash implicit feature

Enables rustc-hash ^1.1

rustc-hash:

A speedy, non-cryptographic hashing algorithm used by rustc

serde serde_derive?
quickcheck implicit feature

Enables quickcheck

quickcheck:

Automatic property based testing with shrinking