[package]
name = "pmoupnp"
version = "0.1.0"
edition = "2024"

[dependencies]
pmoconfig = { path = "../pmoconfig" }
pmodidl = { path = "../pmodidl"}
pmoutils = { path = "../pmoutils" }
pmoserver = { path = "../pmoserver" }
pmocovers = { path = "../pmocovers", features = ["pmoserver"] }
pmoaudiocache = { path = "../pmoaudiocache", features = ["pmoserver"] }
pmoplaylist = { path = "../pmoplaylist", optional = true, features = ["pmoserver"] }
pmocache = { path = "../pmocache" }

async-trait = "0.1"
async-recursion = "1.1"
url = "2.5.7"
uuid = "1.18.1"
hex = "0.4.3"
base64 = "0.22.1"
thiserror = "2.0.16"
anyhow = "1.0"
xmltree = "0.11.0"
axum = "0.8.4"
tokio = { version = "1.35", features = ["rt-multi-thread", "macros", "sync"] }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
quick-xml = { version = "0.38.3", features = ["serialize"] }
chrono = { version = "0.4.42", features = ["serde"] }
once_cell = "1.20"
parking_lot = "0.12"
tracing = "0.1"
tracing-subscriber = "0.3"
bevy_reflect = "0.17.1"
bevy_reflect_derive = "0.17.1"
reqwest = "0.12.23"
utoipa = { version = "5.3", features = ["axum_extras"] }
socket2 = "0.5"
get_if_addrs = "0.5"
serde_yaml = "0.9"

[features]
default = ["server"]
server = ["pmoplaylist"]
paradise = []
qobuz = []

[target.'cfg(unix)'.dependencies]
libc = "0.2"
