[package]
authors = ["Lake Hope"]
categories = ["command-line-utilities", "web-programming"]
description = "Experimental CLI for Omry."
edition = "2024"
exclude = ["**/snapshots", "test_data"]
keywords = ["archival", "cli", "search", "web"]
license = "GPL-3.0"
name = "omry-cli"
publish = true
repository = "https://codeberg.org/omry/omry-cli"
rust-version = "1.95"
version = "0.15.1"

[dependencies]
aho-corasick = "1"
anyhow = "1"
chrono = { version = "0.4.45", features = ["clock"], default-features = false }
config = { version = "0.15.24", features = ["toml"], default-features = false }
console = "0.16.3"
dialoguer = { version = "0.12.0", features = ["history"] }
directories = "6"
dom_smoothie = { version = "0.18.0", features = ["aho-corasick"] }
indicatif = { version = "0.18.4", features = ["rayon"] }
omry-service = { version = "0.19.1" }
owo-colors = "4.3.0"
postcard = "1.1"
quick-xml = "0.40"
rayon = "1"
regex = "1.12"
reqwest = { version = "0.13", features = ["gzip"] }
semver = "1"
serde = "1"
strum = { version = "0.28.0" }
strum_macros = "0.28.0"
tokio = { version = "1.52", features = [
  "net",
  "macros",
  "rt",
  "rt-multi-thread",
] }
toml = { version = "1.1.2", default-features = false, features = [
  "serde",
  "display",
] }
tracing = "0.1.44"
tracing-subscriber = "0.3.23"
webbrowser = "1"

[dev-dependencies]
insta = { version = "1.48", features = ["filters", "redactions", "ron"] }
omry-integration = { version = "0.19.1" }
pretty_assertions = "1.4"
rstest = "0.26.1"
tempfile = "3.27"
url = { version = "2.5" }
dns-lookup = "3"

[profile.dev.package]
insta.opt-level = 3

[lints.rust]
missing_docs = "forbid"

[lints.clippy]
clone_on_ref_ptr = "deny"
expect_used = "deny"
missing_docs_in_private_items = "deny"
print_stdout = "deny"
print_stderr = "deny"
unwrap_used = "deny"
