[package]
name        = "fast-search"
version     = "1.0.4"
edition     = "2021"
rust-version = "1.75"
authors      = ["Hadi Cahyadi <cumulus13@gmail.com>"]
description  = "⚡ Blazingly fast, cross-platform file search & duplicate finder — usable as a library or CLI"
license      = "MIT"
homepage     = "https://github.com/cumulus13/fsearch"
repository   = "https://github.com/cumulus13/fsearch"
documentation = "https://docs.rs/fast-search"
readme       = "README.md"
keywords     = ["search", "find", "duplicates", "cli", "files"]
categories   = ["command-line-utilities", "filesystem"]
exclude      = [".github", "*.log"]

# ── Library crate (public API) ────────────────────────────────────────────────
[lib]
name = "fsearch"
path = "src/lib.rs"

# ── Binary (thin CLI wrapper) ─────────────────────────────────────────────────
[[bin]]
name = "fsearch"
path = "src/main.rs"

[dependencies]
clap      = { version = "4.0", features = ["derive", "color"] }
colored   = "=2.1.0"

# Filesystem traversal
walkdir   = "=2.4.0"

# Error handling
anyhow    = "=1.0.79"
thiserror = "=1.0.56"

# Serialisation (config + library types)
serde     = { version = "=1.0.196", features = ["derive"] }
toml      = "=0.8.8"

# Platform dirs
dirs      = "=5.0.1"

# Pattern matching
glob      = "=0.3.1"

# Parallel execution
rayon     = "=1.8.1"

# Lazy statics
once_cell = "=1.19.0"

# Ctrl-C handling
ctrlc     = "=3.4.2"

# Hashing for duplicate detection
md-5      = "=0.10.6"
sha2      = "=0.10.8"

clap-version-flag = "1.0.7"

# Dependency resolution pin (avoids rustc 1.80 requirement)
[dependencies.indexmap]
version = "=2.2.6"

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

[dev-dependencies]
tempfile = "=3.9.0"
