128 lines
3.6 KiB
TOML
128 lines
3.6 KiB
TOML
[workspace]
|
|
resolver = "2"
|
|
members = [
|
|
"absdy",
|
|
"audio-player",
|
|
"cbd",
|
|
"cbd-cli",
|
|
"cbd-tui",
|
|
"cbd-web",
|
|
"crabidy-core",
|
|
"crabidy-server",
|
|
"fsdy",
|
|
"fyyd",
|
|
"jamendody",
|
|
"rssdy",
|
|
"soundclouddy",
|
|
"tidaldy",
|
|
"ytdy",
|
|
]
|
|
|
|
[workspace.package]
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
|
|
[workspace.dependencies]
|
|
anyhow = "1"
|
|
argon2 = { version = "0.5", features = ["std"] }
|
|
async-trait = "0.1"
|
|
base64 = "0.22"
|
|
blake3 = "1"
|
|
bytes = "1"
|
|
chrono = { version = "0.4", default-features = false, features = ["clock"] }
|
|
axum = "0.8"
|
|
clap = { version = "4", features = ["derive"] }
|
|
clap-serde-derive = "0.2"
|
|
clap_complete = "4"
|
|
clap_mangen = "0.2"
|
|
console_error_panic_hook = "0.1"
|
|
crossterm = "0.29"
|
|
dirs = "6"
|
|
flume = "0.12"
|
|
futures = "0.3"
|
|
gloo-timers = { version = "0.3", features = ["futures"] }
|
|
http = "1"
|
|
include_dir = "0.7"
|
|
leptos = { version = "0.8", default-features = false, features = ["csr"] }
|
|
notify-rust = "4"
|
|
# The MPRIS D-Bus surface of cbd-tui. Built on zbus, which speaks the
|
|
# protocol in pure Rust — no libdbus, so nothing to install or link.
|
|
mpris-server = "0.10"
|
|
feed-rs = "2"
|
|
percent-encoding = "2"
|
|
prost = "0.14"
|
|
rand = "0.10"
|
|
realfft = "3"
|
|
ratatui = "0.30"
|
|
reqwest = { version = "0.13", default-features = false, features = [
|
|
"json",
|
|
"query",
|
|
"rustls",
|
|
"webpki-roots",
|
|
"http2",
|
|
"hickory-dns",
|
|
"stream",
|
|
] }
|
|
rodio = { version = "0.22", default-features = false, features = [
|
|
"playback",
|
|
"symphonia-all",
|
|
] }
|
|
rustypipe = { version = "0.11", default-features = false, features = [
|
|
"rustls-tls-webpki-roots",
|
|
"userdata",
|
|
] }
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
serde_urlencoded = "0.7"
|
|
# Opus decoding: symphonia has no Opus decoder, so we demux Ogg-Opus with
|
|
# symphonia's Ogg reader and decode via the libopus adapter (matches
|
|
# rodio's symphonia 0.5). default-features = false drops the adapter's own
|
|
# `bundled`, so audio-player's `opus-bundled` decides whether libopus is
|
|
# compiled from source (cmake) or linked from the system.
|
|
symphonia = { version = "0.5", default-features = false, features = ["ogg"] }
|
|
symphonia-adapter-libopus = { version = "0.2", default-features = false }
|
|
stream-download = { version = "0.24", default-features = false, features = [
|
|
"reqwest",
|
|
"reqwest-rustls",
|
|
"temp-storage",
|
|
] }
|
|
tempfile = "3"
|
|
thiserror = "2"
|
|
tokio = "1"
|
|
tokio-stream = "0.1"
|
|
toml = "1"
|
|
# default-features = false so crabidy-core can select codegen-only for
|
|
# wasm builds (a member cannot *drop* workspace-inherited default
|
|
# features); native binaries re-enable what they need.
|
|
tonic = { version = "0.14", default-features = false }
|
|
tonic-prost = "0.14"
|
|
tonic-prost-build = "0.14"
|
|
tonic-web = "0.14"
|
|
tonic-web-wasm-client = "0.9"
|
|
tower = "0.5"
|
|
wasm-bindgen = "0.2"
|
|
wasm-bindgen-futures = "0.4"
|
|
web-sys = "0.3"
|
|
tracing = "0.1"
|
|
tracing-appender = "0.2"
|
|
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
|
|
url = "2"
|
|
|
|
# Local crates. `default-features = false` on the three feature-carrying
|
|
# crates: their dependents select what they want (a member cannot *drop* a
|
|
# workspace-inherited default), which is how a tailored build stays tailored —
|
|
# see architecture/build-features.md D1.
|
|
absdy = { path = "absdy" }
|
|
audio-player = { path = "audio-player", default-features = false }
|
|
cbd-cli = { path = "cbd-cli" }
|
|
cbd-tui = { path = "cbd-tui", default-features = false }
|
|
crabidy-core = { path = "crabidy-core" }
|
|
crabidy-server = { path = "crabidy-server", default-features = false }
|
|
fsdy = { path = "fsdy" }
|
|
fyyd = { path = "fyyd" }
|
|
jamendody = { path = "jamendody" }
|
|
rssdy = { path = "rssdy" }
|
|
soundclouddy = { path = "soundclouddy" }
|
|
tidaldy = { path = "tidaldy" }
|
|
ytdy = { path = "ytdy" }
|