[package]
name = "usls"
edition = "2021"
version = "0.1.0-beta.2"
rust-version = "1.82"
description = "A Rust library integrated with ONNXRuntime, providing a collection of ML models."
repository = "https://github.com/jamjamjon/usls"
authors = ["Jamjamjon <xxyydzml@outlook.com>"]
license = "MIT"
readme = "README.md"
exclude = ["assets/*", "examples/*", "runs/*", "benches/*", "tests/*"]

[dependencies]
anyhow = { version = "1" }
aksr = { version = "0.0.3" }
ab_glyph = { version = "0.2.29" }
image = { version = "0.25" }
imageproc = { version = "0.25" }
ndarray = { version = "0.16.1", features = ["rayon", "serde"] }
indicatif = { version = "0.17.11" }
log = "0.4.26"
minifb = { version = "0.28.0" }
rand = { version = "0.9" }
http = "1.3"
ureq = { version = "3", default-features = true, features = ["socks-proxy"] }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
rayon = { version = "1.10.0" }
glob = "0.3.2"
dirs = "6.0.0"
natord = "1.0.9"
geo = "0.30.0"
chrono = "0.4.40"
regex = "1.11.1"
tempfile = "3.19.1"
video-rs = { version = "0.10.3", features = ["ndarray"], optional = true }
fast_image_resize = { version = "5.1.2", features = ["image"] }
ndarray-npy = "0.9.1"
half = { version = "2.3.1" }
prost = "0.13.5"
ort = { version = "2.0.0-rc.9", default-features = false, optional = true, features = [
  "ndarray",
  "copy-dylibs",
  "half",
] }
tokenizers = { version = "0.21.1" }
paste = "1.0.15"

[build-dependencies]
prost-build = "0.13.5"

[dev-dependencies]
argh = "0.1.13"
tracing-subscriber = { version = "0.3.18", features = ["env-filter", "chrono"] }

[features]
default = ["ort-download-binaries"]
ort-download-binaries = ["ort", "ort/download-binaries"]
ort-load-dynamic = ["ort", "ort/load-dynamic"]
cuda = ["ort/cuda"]
trt = ["ort/tensorrt"]
mps = ["ort/coreml"]
video = ["dep:video-rs"]
