znippy-cli 0.9.5

CLI for Znippy, a parallel chunked compression system.
[package]
name = "znippy-cli"
version = "0.9.5"
edition = "2024"
authors = ["Rickard Lundin <rickard@ignalina.dk>"]
description = "CLI for Znippy, a parallel chunked compression system."
license = "MIT"
repository = "https://codeberg.org/nordisk/znippy"
readme = "../README.md"
categories = ["compression", "filesystem", "data-structures"]
keywords = ["compression", "openzl", "parallel", "arrow", "blake3"]

[features]
default = []
# Opt-in `--meta-format iceberg`. Off by default so the standard CLI stays lean
# (the iceberg backend pulls tokio + iceberg + parquet + arrow-57).
iceberg = ["dep:znippy-iceberg"]
# Opt-in detached CMS provenance: `compress --sign` / `verify --signed`. Off by
# default so the standard CLI pulls in zero RustCrypto. Just threads the ready
# `znippy-common` sign API onto the CLI — never on the compress hot path.
sign = ["znippy-common/sign"]
# `testmatrix` — route the CLI's `functional_status(component, check, ok, detail)`
# markers to the nornir warehouse via the nornir-testmatrix emitter. OFF by
# default: the wrapper compiles to an `#[inline]` no-op with no nornir dep, so the
# shipped CLI carries zero cost. Build `--features testmatrix` (optionally with
# `sign`) so `nornir test` SEES the signing/verify/run surfaces.
testmatrix = ["dep:nornir-testmatrix", "nornir-testmatrix/testmatrix"]

[dependencies]
clap = { version = "4.5.51", features = ["derive"] }
anyhow = { version = "1.0.100" }
znippy-compress = { version = "0.9.6", path = "../znippy-compress" }
znippy-decompress = { version = "0.9.5", path = "../znippy-decompress" }
znippy-common = { version = "0.9.9", path = "../znippy-common", features = ["host-decompressors", "wasm-plugins"] }
znippy-plugin-maven = { version = "0.9.5", path = "../znippy-plugin-maven", features = ["host-decompressors"] }
znippy-plugin-python = { version = "0.9.5", path = "../znippy-plugin-python", features = ["host-decompressors"] }
znippy-plugin-media = { version = "0.9.1", path = "../znippy-plugin-media" }
znippy-plugin-skidbladnir = { version = "0.1.1", path = "../znippy-plugin-skidbladnir" }
znippy-iceberg = { version = "0.1.7", path = "../znippy-iceberg", optional = true }
env_logger = { version = "0.11.8" }
# ── testmatrix feature ──────────────────────────────────────────────────────
# Path dep to the sibling nornir-testmatrix (≥0.2, the `functional_status`
# emitter). Optional + default-features off so the default CLI never pulls it;
# gated behind the `testmatrix` feature above.
nornir-testmatrix = { version = "0.2", default-features = false, optional = true }

[dev-dependencies]
tempfile = "3"