Cargo Features

[dependencies]
gix-pack = { version = "0.55.0", default-features = false, features = ["generate", "streaming-input", "pack-cache-lru-static", "pack-cache-lru-dynamic", "object-cache-dynamic", "serde", "wasm", "document-features"] }
default = generate, streaming-input

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

generate default

generate new packs from a set of objects.

Enables gix-diff, gix-hashtable, gix-traverse, and parking_lot

gix-traverse:

for streaming of packs (input, output)

Affects data::output

streaming-input default

Receive a pack as datastream and resolve it

Enables gix-tempfile and parking_lot

Affects bundle::write, data::input, index::write

pack-cache-lru-static

Provide a fixed-size allocation-free LRU cache for packs. It's useful if caching is desired while keeping the memory footprint for the LRU-cache itself low.

Enables uluru

for caching

Affects cache::lru

pack-cache-lru-dynamic

Provide a hash-map based LRU cache whose eviction is based a memory cap calculated from object data.

Enables clru

Affects cache::lru

object-cache-dynamic

If set, select algorithms may additionally use a full-object cache which is queried before the pack itself.

Enables clru and gix-hashtable

serde

Data structures implement serde::Serialize and serde::Deserialize.

Enables serde, serde of gix-object

wasm

Make it possible to compile to the wasm32-unknown-unknown target.

Enables wasm of optional gix-diff

Features from optional dependencies

document-features implicit feature

Enables document-features

If enabled, cargo doc will see feature documentation from this manifest.