Files
qbz/crates/qbz-playlist-import/Cargo.toml
T
2026-08-29 08:24:28 -06:00

40 lines
1.3 KiB
TOML

[package]
name = "qbz-playlist-import"
version = "0.1.0"
edition = "2021"
description = "Public-playlist import for QBZ — provider scrapers, Qobuz matcher, playlist creation (headless, frontend-agnostic)"
authors = ["blitzkriegfc"]
[dependencies]
# Shared QBZ crates (the real models + client, not src-tauri shims)
qbz-models = { path = "../qbz-models" }
qbz-qobuz = { path = "../qbz-qobuz" }
# HTTP (one shared client for all providers — see src/http.rs)
reqwest = { workspace = true }
# Serialization
serde = { workspace = true }
serde_json = { workspace = true }
# Error handling
thiserror = { workspace = true }
# Logging
log = { workspace = true }
# Playlist-FILE sources (2.0.3 expansion). Both were already resolved in the
# workspace lock, so neither adds a download or a new compilation unit to the
# tree — only an edge from this crate.
# roxmltree : XSPF. A read-only DOM walked by local element name is ~30 lines;
# quick-xml's event state machine only pays off for streaming,
# which the 16 MiB byte wall forecloses.
# encoding_rs: the utf8-then-Windows-1252 fallback for legacy .m3u / .pls,
# which is what keeps "Björk" and "Sigur Rós" matchable.
roxmltree = "0.21"
encoding_rs = "0.8"
# Async runtime + concurrency
tokio = { workspace = true }
futures-util = { workspace = true }