qbzd was a premature daemon experiment that never shipped (gated off behind QBZD_ENABLED, no user access). Its ratatui 0.29 dependency pinned unicode-width =0.2.0, which conflicts with slint's annotate-snippets in a shared workspace. Remove it entirely; it will be reimplemented from scratch later on the clean, UI-agnostic shell. - Delete crates/qbzd daemon crate + workspace member (drops ratatui, crossterm and the other qbzd-only deps from the lock). - Delete src-tauri qbzd_discovery (mDNS) + its commands/state wiring in lib.rs; drop the direct mdns-sd dep (Chromecast keeps its own via qbz-cast). - Delete remoteApi/remoteEvents/playbackTargetStore; neutralize commandRouter to local-only dispatch (isRemote/skipIfRemote are now always-false no-ops so the ~100 guard call-sites keep compiling). - Strip qbzd branches from playbackService and the remote banner from NowPlayingBar; excise qbzd from CastPicker (Chromecast/DLNA kept). - Remove qbzd i18n keys (5 locales), README daemon node, gitignore note. cargo check (crates + src-tauri) and svelte-check all green. cc
69 lines
1.3 KiB
TOML
69 lines
1.3 KiB
TOML
[workspace]
|
|
resolver = "2"
|
|
|
|
members = [
|
|
"qbz-app",
|
|
"qbz-models",
|
|
"qbz-audio",
|
|
"qbz-player",
|
|
"qbz-qobuz",
|
|
"qbz-radio",
|
|
"qbz-core",
|
|
"qbz-integrations",
|
|
"qbz-cache",
|
|
"qbz-library",
|
|
"qbz-cast",
|
|
"qbz-cmaf",
|
|
"qbz-secrets",
|
|
"qconnect-core",
|
|
"qconnect-protocol",
|
|
"qconnect-transport-ws",
|
|
"qconnect-app",
|
|
"qbz-slint",
|
|
"qbz-credentials",
|
|
]
|
|
|
|
[workspace.package]
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
license = "MIT"
|
|
repository = "https://github.com/vicrodh/qbz"
|
|
|
|
[workspace.dependencies]
|
|
# Async runtime
|
|
tokio = { version = "1", features = ["full"] }
|
|
async-trait = "0.1"
|
|
futures-util = "0.3"
|
|
tokio-stream = { version = "0.1", features = ["sync"] }
|
|
|
|
# Serialization
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
|
|
# HTTP
|
|
reqwest = { version = "0.12", default-features = false, features = ["json", "rustls-tls", "cookies", "stream"] }
|
|
|
|
# Logging
|
|
log = "0.4"
|
|
tracing = "0.1"
|
|
|
|
# Error handling
|
|
thiserror = "2"
|
|
anyhow = "1"
|
|
|
|
# Crypto (Qobuz auth)
|
|
md-5 = "0.10"
|
|
base64 = "0.22"
|
|
|
|
# Time
|
|
chrono = "0.4"
|
|
|
|
# Regex
|
|
regex = "1"
|
|
|
|
# Audio
|
|
symphonia = { version = "0.5", features = ["all"] }
|
|
|
|
# Note: Linux-specific dependencies (alsa) go in individual crate Cargo.toml files
|
|
# because workspace manifests cannot have [target] sections
|