[package]
name = "mecomp-daemon"
description = "RPC server for the Mecomp, the Metadata Enhanced Collection Orientated Music Player"
version.workspace = true
edition.workspace = true
authors.workspace = true
repository.workspace = true
keywords.workspace = true
categories.workspace = true
readme.workspace = true
license.workspace = true
[package.metadata.wix]
upgrade-guid = "38CAEA74-E210-45E0-8B86-F92826C666A8"
path-guid = "4A92209A-E7B0-4FE0-BB14-D2CA0E55FD11"
license = false
eula = false
[lib]
bench = false
[[bin]]
name = "mecomp-daemon"
test = false
bench = false
doctest = false
[[bench]]
name = "rescan"
harness = false
[[bench]]
name = "analyze"
harness = false
[[bench]]
name = "recluster"
harness = false
[features]
default = ["cli", "dynamic_updates"]
cli = [
"dep:clap",
"dep:clap_complete",
]
dynamic_updates = ["dep:notify-debouncer-full", "dep:notify"]
dhat-heap = ["dep:dhat"]
cuda = ["mecomp-analysis/cuda"]
tensorrt = [
"mecomp-analysis/tensorrt",
]
[dependencies]
anyhow = { workspace = true }
clap = { workspace = true, optional = true }
clap_complete = { workspace = true, optional = true }
csv.workspace = true
dhat = { version = "0.3", optional = true }
log = { workspace = true }
notify = { workspace = true, optional = true }
notify-debouncer-full = { workspace = true, optional = true }
serde = { workspace = true }
serde_json = { workspace = true }
surrealdb = { workspace = true }
tokio = { workspace = true, features = ["rt-multi-thread", "signal"] }
tonic = { workspace = true }
tracing = { workspace = true }
walkdir = { workspace = true }
mecomp-core = { workspace = true, features = [
"notifications",
"audio",
"analysis",
] }
mecomp-storage = { workspace = true, features = ["serde", "db", "analysis"] }
mecomp-analysis.workspace = true
one-or-many = { workspace = true }
mecomp-prost = { workspace = true }
tokio-stream = { workspace = true }
[dev-dependencies]
criterion.workspace = true
lofty = { workspace = true }
mecomp-core = { workspace = true, features = [
"notifications",
"mock_playback",
"test_utils",
] }
mecomp-storage = { workspace = true, features = [
"serde",
"db",
"analysis",
"test_utils",
] }
pretty_assertions = { workspace = true }
rstest = { workspace = true }
tempfile = { workspace = true }