Keep http 1.5 and tolerate empty or relative service URLs in a local rupnp patch. Cover standard DLNA SOAP requests and malformed descriptions. Avoid logger locks in fatal handlers, flush emitted log batches, and preserve CI symbols after smoke failures. cx
43 lines
903 B
TOML
43 lines
903 B
TOML
[package]
|
|
name = "qbz-cast"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
description = "Casting support for QBZ - Chromecast, DLNA"
|
|
|
|
[dependencies]
|
|
# Chromecast
|
|
rust_cast = "0.21"
|
|
|
|
# mDNS discovery
|
|
mdns-sd = "0.21"
|
|
|
|
# Local HTTP server for media streaming
|
|
tiny_http = "0.12"
|
|
|
|
# DLNA/UPnP
|
|
rupnp = { version = "3", features = ["full_device_spec"] }
|
|
futures-util = "0.3"
|
|
|
|
# The workspace patches rupnp's service endpoint parser for legacy UPnP URLs
|
|
# (#745). Keep http current; never downgrade the whole HTTP graph for a device.
|
|
http = "1.5"
|
|
|
|
# Serialization
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
|
|
# Error handling
|
|
thiserror = "2"
|
|
|
|
# Logging
|
|
log = "0.4"
|
|
|
|
# CSPRNG for cast media path tokens (not RandomState hash)
|
|
getrandom = "0.4"
|
|
|
|
# Async runtime (for DLNA)
|
|
tokio = { version = "1", features = ["rt", "sync"] }
|
|
|
|
[dev-dependencies]
|
|
tokio = { version = "1", features = ["rt", "macros"] }
|