[package]
name = "maze-serval"
default-run = "serval"
description = "Serval helps you prepare data for Maze and Trapper"
repository = "https://github.com/wsyxbcl/Serval"
authors = ["wsyxbcl <wsyxbcl@gmail.com>"]
version = "0.4.3"
edition = "2024"
license = "GPL-3.0-or-later"
keywords = ["camtrap", "camera-trap"]


# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
anyhow = "1.0.98"
chrono = "0.4.41"
clap = { version = "4.5.40", features = ["derive"] }
indicatif = "0.17.11"
itertools = "0.14.0"
polars = { version = "0.49.1", features = ["lazy", "strings", "list_eval", "csv", "dtype-struct", "is_in", "dynamic_group_by", "timezones", "dtype-datetime", "dtype-i128", "polars-io", ] }
rayon = "1.10.0"
regex = "1.11.1"
rustyline = { version = "16.0.0", features = ["derive"] }
walkdir = "2.5.0"
xmp_toolkit = "1.10.0"

[profile.release-lto]
inherits = "release"
opt-level = "s"
lto = true

[lib]
name = "serval"
path = "src/lib.rs"

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

[[bin]]
name = "serval-xmp-extract"
path = "bin/serval-xmp-extract.rs"

[[bin]]
name = "serval-check"
path = "bin/serval-check.rs"