diff --git a/CHANGELOG.md b/CHANGELOG.md index d142560..59a2d1d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -64,6 +64,23 @@ Versioning: two-part `MAJOR.MINOR` — each release bumps the minor (features an --- +## [2.2] — 2026-08-19 + +Gets YouTube downloads working again after they broke on two independent fronts. + +### Fixed +- **YouTube downloads (HTTP 403 + "Signature solving failed")** — two things had broken downloads: + 1. Recent yt-dlp needs an **external JavaScript runtime** to solve YouTube's signature/nsig + challenge — without it, formats were skipped and the media 403'd. The backend now installs + **Deno**, which yt-dlp uses automatically. + 2. A bug in the current yt-dlp **stable** 403'd the `android_vr` client on *every* video + ([yt-dlp#17456](https://github.com/yt-dlp/yt-dlp/issues/17456), fixed in nightly). The backend + now pulls yt-dlp from the **nightly** channel (`pip install --pre 'yt-dlp[default]'`). + No cookies, PO-token service, or proxy needed — the earlier 403 that looked like an IP block was + this stable bug. + +--- + ## [2.1] — 2026-08-14 Builds on the 2.0 listening archive with a **head-to-head "Musik-Match"**, brings the **artist pin** diff --git a/docker-compose.yml b/docker-compose.yml index 8dcd0e6..ad723f1 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -36,7 +36,7 @@ services: command: > sh -c " apt-get update && apt-get install -y --no-install-recommends python3 python3-pip ffmpeg curl git unzip && rm -rf /var/lib/apt/lists/* && - curl -sL https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp -o /usr/local/bin/yt-dlp && chmod a+rx /usr/local/bin/yt-dlp && + pip install --break-system-packages -U --pre 'yt-dlp[default]' && curl -fsSL https://deno.land/install.sh | sh && pip install --break-system-packages spotapi 'git+https://github.com/TzurSoffer/spotify-downloader' && mkdir -p /deps && cd /deps && npm install express kuromoji &&