Files
2026-10-04 18:05:04 +00:00

55 lines
2.0 KiB
TOML

[package]
name = "youtube-feeder"
version = "0.1.0"
edition.workspace = true
rust-version.workspace = true
license.workspace = true
publish = false
# YouTube references as a delegated-playback tier: playback happens on YouTube, no bytes are ever transported or seeded.
# Upstream: YouTube via Piped instances
[lib]
name = "youtube_feeder"
path = "src/lib.rs"
[[bin]]
name = "youtube-feeder"
path = "src/main.rs"
[dependencies]
# Pinned by TAG, not rev or path. The tag is the SDK's release identity, and it
# is the one form every feeder in the fleet can be lined up on.
#
# ⚠ Never put this back to `path = "../../../meta-feeder-sdk"`. That resolves
# OUTSIDE this repo, and this repo is the Docker build context — the image build
# died at manifest resolution with a bare "No such file or directory", and the
# crate became unconsumable as a git dependency by anyone, since a consumer's
# checkout has no such sibling directory either.
meta-feeder-sdk = { git = "https://github.com/worph/meta-feeder-sdk", tag = "v1.7.0" }
tokio = { version = "1.40", features = ["full"] }
axum = { version = "0.7", features = ["json"] }
anyhow = "1"
async-trait = "0.1"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
reqwest = { version = "0.12", features = ["json", "rustls-tls", "stream"], default-features = false }
bytes = "1"
futures = "0.3"
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter", "fmt"] }
redb = "2"
base64 = "0.22"
# The MusicBrainz client, from the crate that owns it. Only the *music*
# path uses it; the video path never touches MusicBrainz.
# v1.1.1, not v1.1.0: v1.1.0 declared the escaping path dep described above, so
# it cannot be consumed over git at all ("no matching package named
# `meta-feeder-sdk`"). v1.1.1 is that one-line fix and nothing else.
musicbrainz-feeder = { git = "https://github.com/worph/meta-feeder-musicbrainz", tag = "v1.1.3" }
[dev-dependencies]
wiremock = "0.6"
tempfile = "3"
tokio = { version = "1.40", features = ["full", "test-util"] }