[package]
edition = "2024"
rust-version = "1.88"
name = "compcol"
version = "0.4.4"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A no_std collection of compression algorithms behind a uniform streaming trait, gated per-algorithm by Cargo features."
documentation = "https://docs.rs/compcol"
readme = "README.md"
keywords = [
"compression",
"no_std",
"embedded",
]
categories = [
"compression",
"no-std",
]
license = "MIT"
repository = "https://github.com/KarpelesLab/compcol"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
adc = ["alloc"]
all = [
"alloc",
"std",
"tokio",
"factory",
"rle",
"deflate",
"zlib",
"gzip",
"lzma",
"xz",
"zstd",
"brotli",
"lz4",
"snappy",
"lzw",
"bzip2",
"lzo",
"lzx",
"amiga_lzx",
"quantum",
"lzfse",
"adc",
"rar1",
"rar2",
"rar3",
"rar5",
]
alloc = []
amiga_lzx = ["alloc"]
brotli = ["alloc"]
bzip2 = ["alloc"]
default = [
"alloc",
"rle",
"deflate",
"zlib",
"gzip",
"factory",
]
deflate = ["alloc"]
factory = ["alloc"]
gzip = ["deflate"]
lz4 = ["alloc"]
lzfse = ["alloc"]
lzma = ["alloc"]
lzo = ["alloc"]
lzw = ["alloc"]
lzx = ["alloc"]
quantum = ["alloc"]
rar1 = ["alloc"]
rar2 = ["alloc"]
rar3 = ["alloc"]
rar5 = ["alloc"]
rle = []
snappy = ["alloc"]
std = ["alloc"]
tokio = [
"std",
"dep:tokio",
]
xz = ["lzma"]
zlib = ["deflate"]
zstd = ["alloc"]
[lib]
name = "compcol"
path = "src/lib.rs"
[[bin]]
name = "compcol"
path = "src/bin/compcol.rs"
required-features = ["factory"]
[[example]]
name = "bench"
path = "examples/bench.rs"
required-features = ["factory"]
[[test]]
name = "adc"
path = "tests/adc.rs"
[[test]]
name = "amiga_lzx"
path = "tests/amiga_lzx.rs"
[[test]]
name = "box_compose"
path = "tests/box_compose.rs"
[[test]]
name = "brotli"
path = "tests/brotli.rs"
[[test]]
name = "bzip2"
path = "tests/bzip2.rs"
[[test]]
name = "cli"
path = "tests/cli.rs"
[[test]]
name = "cross_system"
path = "tests/cross_system.rs"
[[test]]
name = "deflate"
path = "tests/deflate.rs"
[[test]]
name = "gzip"
path = "tests/gzip.rs"
[[test]]
name = "io_adapters"
path = "tests/io_adapters.rs"
[[test]]
name = "limit"
path = "tests/limit.rs"
[[test]]
name = "lz4"
path = "tests/lz4.rs"
[[test]]
name = "lz4_frame"
path = "tests/lz4_frame.rs"
[[test]]
name = "lzfse"
path = "tests/lzfse.rs"
[[test]]
name = "lzma"
path = "tests/lzma.rs"
[[test]]
name = "lzo"
path = "tests/lzo.rs"
[[test]]
name = "lzw"
path = "tests/lzw.rs"
[[test]]
name = "lzx"
path = "tests/lzx.rs"
[[test]]
name = "quantum"
path = "tests/quantum.rs"
[[test]]
name = "rar1"
path = "tests/rar1.rs"
[[test]]
name = "rar2"
path = "tests/rar2.rs"
[[test]]
name = "rar3"
path = "tests/rar3.rs"
[[test]]
name = "rar5"
path = "tests/rar5.rs"
[[test]]
name = "raw_block"
path = "tests/raw_block.rs"
[[test]]
name = "rle"
path = "tests/rle.rs"
[[test]]
name = "snappy"
path = "tests/snappy.rs"
[[test]]
name = "sync_flush"
path = "tests/sync_flush.rs"
[[test]]
name = "tokio_adapters"
path = "tests/tokio_adapters.rs"
[[test]]
name = "vec_helpers"
path = "tests/vec_helpers.rs"
[[test]]
name = "xz"
path = "tests/xz.rs"
[[test]]
name = "zlib"
path = "tests/zlib.rs"
[[test]]
name = "zstd"
path = "tests/zstd.rs"
[dependencies.tokio]
version = "1"
optional = true
default-features = false
[dev-dependencies.tokio]
version = "1"
features = [
"rt",
"macros",
"io-util",
]
default-features = false
[lints.rust]
unsafe_code = "forbid"