[package]
name = "nowhear"
version = "0.1.0"
edition = "2024"
rust-version = "1.88.0"
authors = ["Akiomi Kamakura <akiomik@gmail.com>"]
description = "Cross-platform media playback information watcher"
repository = "https://github.com/akiomik/nowhear"
readme = "README.md"
license = "Apache-2.0"
keywords = ["media", "music", "playback", "mpris", "nowplaying"]
categories = ["multimedia", "os"]
include = [
  "examples",
  "src",
  "CHANGELOG.md",
  "LICENSE",
  "README.md",
]

[dependencies]
futures = "0.3"
thiserror = "2"
tokio = { version = "1", features = ["macros", "process", "rt", "rt-multi-thread", "sync", "time"] }
tokio-stream = "0.1"

[target.'cfg(target_os = "linux")'.dependencies]
mpris = "2"
zbus = "5"

[target.'cfg(target_os = "windows")'.dependencies]
windows = { version = "0.62", features = [
    "Media_Control",
    "Storage_Streams",
    "Foundation",
    "Foundation_Collections",
] }

[[example]]
name = "basic"
path = "examples/basic.rs"

[[example]]
name = "stream"
path = "examples/stream.rs"

[lints.clippy]
cargo = { level = "warn", priority = -1 }
complexity = { level = "warn", priority = -1 }
correctness = { level = "warn", priority = -1 }
nursery = { level = "warn", priority = -1 }
pedantic = { level = "warn", priority = -1 }
perf = { level = "warn", priority = -1 }
suspicious = { level = "warn", priority = -1 }

multiple_crate_versions = "allow"
unwrap_used = "warn"
panic = "warn"
absolute_paths = "warn"
