[package]
name = "httm" 
authors = ["Robert Swinford <robert.swinford <...at...> gmail.com>"]
version = "0.33.2"
edition = "2021"
keywords = ["zfs", "backup", "restore", "cli-utility", "snapshot"]
description = "A CLI tool for viewing snapshot file versions on ZFS and btrfs datasets"
repository = "https://github.com/kimono-koans/httm"
readme = "README.md"
categories = [ "command-line-utilities",  "os" ]
license = "MPL-2.0"
documentation = "https://github.com/kimono-koans/httm/blob/master/README.md"

[badges]
maintenance = { status = "actively-developed" }

[profile.deb]
lto = true
opt-level = "z"
codegen-units = 1
panic = "abort"
inherits = "release"

[features]
default = ["std"]
std = ["xattrs", "malloc_trim", "setpriority"]
# acls feature - requires libacl1-dev to build
acls = ["exacl"]
xattrs = ["xattr"]
malloc_trim = ["libc", "skim/malloc_trim"]
setpriority = ["libc"]
licensing = ["lms", "itertools"]

[target.'cfg(unix)'.dependencies]
exacl = { version = "0.11.0", default-features = false, optional=true }
xattr = { version = "1.0.1", default-features = false, optional = true }
libc = { version = "0.2.150", default-features = false, optional = true }

[dependencies]
simd-adler32 = { version = "0.3.7", default-features = false, features = ["std"] }
clap = { version = "3.2.25", default-features = false, features = ["cargo", "std"] }
crossbeam-channel = { version = "0.5.8", default-features = false }
time = { version = "0.3.21", default-features = false, features = ["formatting", "local-offset"] }
number_prefix = { version = "0.4.0",  default-features = false }
skim = { version = "0.10.34", default-features = false, package = "two_percent" }
nu-ansi-term = { version = "0.49.0", default-features = false }
lscolors = { version = "0.16.0", default-features = false, features = ["nu-ansi-term"] }
terminal_size = { version = "0.3.0", default-features = false }
which = { version = "5.0.0", default-features = false }
rayon = { version = "1.8.0", default-features = false }
indicatif =  { version = "0.17.7", default-features = false }
proc-mounts = { version = "0.3.0", default-features = false }
once_cell = { version = "1.18.0", default-features = false }
hashbrown = { version = "0.14.2", default-features = false, features = ["rayon", "ahash", "inline-more"] }
nix = { version = "0.27.1", default-features = false, features = ["fs", "user", "zerocopy"] }
serde = { version = "1.0.193" }
serde_json = { version = "1.0.108", features = ["preserve_order", "std"] }
filetime = { version = "0.2.22", default-features = false }
realpath-ext = { version = "0.1.3", default-features = false, features = ["std"] }
# these are strictly not required to build, only included for attribution sake (to be picked up by cargo_about)
lms = { version = "0.4.0", default-features = false, optional = true }
itertools = { version = "0.12.0", default-features = false, optional = true }

[patch.crates-io]
timer = { git = "https://github.com/kimono-koans/timer.rs" }

[package.metadata.deb]
maintainer = "kimono koans <https://github.com/kimono-koans/>"
copyright = "2023, Robert Swinford <robert.swinford<...at...>gmail.com>"
extended-description = """\

Prints the size, date and corresponding locations of available unique versions of files \
residing on snapshots.  May also be used interactively to select and restore from such \
versions, and even to snapshot datasets which contain certain files.
"""
license-file = ["LICENSE", "4"]
depends = ["libc6"]
section = "utility"
priority = "optional"
features = ["xattrs", "malloc_trim"]
assets = [
    ["target/release/httm", "usr/bin/", "755"],
    ["scripts/ounce.bash", "usr/bin/ounce", "755"],
    ["scripts/bowie.bash", "usr/bin/bowie", "755"],
    ["scripts/nicotine.bash", "usr/bin/nicotine", "755"],
    ["scripts/equine.bash", "usr/bin/equine", "755"],
    ["httm.1", "usr/share/man/man1/httm.1", "644"],
    ["README.md", "usr/share/doc/httm/README.md", "644"],
    ["LICENSE", "usr/share/doc/httm/LICENSE", "644"],
    ["third_party/LICENSES_THIRD_PARTY.html", "usr/share/doc/httm/LICENSES_THIRD_PARTY.html", "644"],
]
