[package] name = "pmomediaserver" version = "0.1.0" edition = "2024" [dependencies] pmoupnp = { path = "../pmoupnp" } pmodidl = { path = "../pmodidl" } pmosource = { path = "../pmosource" } pmoserver = { path = "../pmoserver" } once_cell = "1.20" bevy_reflect = "0.17.1" tokio = { workspace = true, features = ["sync"] } async-trait = { workspace = true } tracing = { workspace = true } quick-xml = { workspace = true } thiserror = { workspace = true } serde = { workspace = true } serde_json = { workspace = true } pmoutils = { version = "0.1.2", registry = "pmo" } # Optional dependencies axum = { version = "0.8", optional = true } utoipa = { version = "5.3", optional = true } pmoqobuz = { path = "../pmoqobuz", optional = true } pmoparadise = { path = "../pmoparadise", optional = true } pmoradiofrance = { path = "../pmoradiofrance", optional = true } pmoconfig = { path = "../pmoconfig", optional = true } anyhow = { version = "1.0", optional = true } pmoaudiocache = { path = "../pmoaudiocache", optional = true } pmocovers = { path = "../pmocovers", optional = true, features = ["pmoserver"] } pmoplaylist = { path = "../pmoplaylist", optional = true } tokio-util = { version = "0.7", features = ["io"], optional = true } [features] default = ["pmosource/server"] # Feature pour activer l'API REST de gestion des sources api = ["dep:axum", "dep:utoipa", "pmosource/server"] # Feature pour activer le support Qobuz configuré qobuz = ["api", "dep:pmoqobuz", "dep:pmoconfig", "pmoqobuz/server"] # Feature pour activer le support Radio Paradise paradise = [ "api", "dep:pmoparadise", "pmoparadise/full", "dep:anyhow", "dep:pmoaudiocache", "dep:pmocovers", "pmocovers/pmoserver", "dep:pmoplaylist", "dep:tokio-util" ] # Feature pour activer l'API REST de Radio Paradise (en plus de la source UPnP) paradise-api = ["paradise", "pmoparadise/pmoserver"] # Feature pour activer le support Radio France radiofrance = [ "api", "dep:pmoradiofrance", "pmoradiofrance/server", "pmoradiofrance/logging", "dep:pmoconfig" ]