[package]
name = "tardigrade"
version = "0.7.0"
edition = "2024"
description = "Modern archive tool — tar for 2026"
license = "Apache-2.0"
repository = "https://github.com/gnathoi/tardigrade"

[[bin]]
name = "tdg"
path = "src/main.rs"

[dependencies]
# CLI
clap = { version = "4", features = ["derive"] }

# Compression
zstd = "0.13"
lz4_flex = "0.11"

# Hashing
blake3 = "1"

# Content-defined chunking
fastcdc = "3"

# Parallelism
rayon = "1"
crossbeam-channel = "0.5"

# Progress & terminal
indicatif = "0.17"
console = "0.15"
humansize = "2"

# Serialization
rmp-serde = "1"
serde = { version = "1", features = ["derive"] }

# File walking
walkdir = "2"
ignore = "0.4"

# Memory mapping
memmap2 = "0.9"

# Concurrency
dashmap = "6"

# Byte order
byteorder = "1"

# CRC
crc32fast = "1"

# Error handling
thiserror = "2"
anyhow = "1"

# Time
chrono = "0.4"
filetime = "0.2.27"
hex = "0.4.3"
chacha20poly1305 = { version = "0.10.1", features = ["std"] }
rand = "0.10.0"
rpassword = "7.4.0"

# tar.zst compatibility
tar = "0.4"
flate2 = "1"

# Reed-Solomon erasure coding
reed-solomon-erasure = "6"

# Temp dirs (used by convert command)
tempfile = "3.27.0"

# Self-update
ureq = "3"
self-replace = "1"
serde_json = "1"
argon2 = "0.5.3"

[package.metadata.binstall]
pkg-url = "{ repo }/releases/download/v{ version }/tdg-{ target }.tar.gz"
bin-dir = "tdg"
pkg-fmt = "tgz"

[profile.release]
lto = true
codegen-units = 1
strip = true

[dev-dependencies]
