fix: upgrade yt-dlp>=2026.3.17 to resolve YouTube SABR 403 errors#24
Open
masterbatcoderman10 wants to merge 1 commit into
Open
fix: upgrade yt-dlp>=2026.3.17 to resolve YouTube SABR 403 errors#24masterbatcoderman10 wants to merge 1 commit into
masterbatcoderman10 wants to merge 1 commit into
Conversation
YouTube started enforcing SABR streaming which blocks older yt-dlp versions (2025.10.14 and below) with 'HTTP Error 403: Forbidden'. The /api/info metadata endpoint still works but /api/download fails. Fix: pin minimum yt-dlp version in requirements.txt and use pip install --upgrade-deps so the venv setup always pulls latest. Closes averygan#8.
DeBondor
added a commit
to DeBondor/reclip
that referenced
this pull request
Apr 11, 2026
…dening, memory leak, UX) - Pin yt-dlp>=2026.3.17 to fix YouTube SABR 403 errors (fixes averygan#8) - Add --upgrade-deps to reclip.sh venv setup - Add URL validation (http/https only) - Add format_id sanitization against yt-dlp flag injection - Add job_id format validation - Add path traversal protection on file serving - Add non-root user in Dockerfile - Add threading lock for jobs dict (race condition fix) - Add job TTL auto-purge (1hr) + MAX_JOBS cap (500) - Add /api/cleanup endpoint + frontend cleanup call after download - Add structured logging + type hints - Fix dlAll() to await each download via Promise-based polling - Add ARIA labels on interactive elements - Improve title sanitization (80 char limit) - reclip.sh: always run pip install on venv reuse - reclip.sh: add EXIT trap for clean shutdown message
Auzlex
added a commit
to Auzlex/reclip
that referenced
this pull request
Apr 29, 2026
…erygan#24 (security, stability, and progress tracking) - PR averygan#24: Fixed YouTube 403 Forbidden errors by pinning yt-dlp>=2026.3.17. - PR averygan#3: Implemented security hardening (URL validation, format/job ID sanitization, path traversal protection, and non-root Docker user). - PR averygan#12: Added automatic disk management (1-hour job TTL, 500MB directory size cap, and auto-purge). - PR averygan#13: Enhanced download experience with real-time progress tracking, 30-minute timeouts, and UI progress bars. - Backend: Unified app.py with threading locks, structured logging, and configurable cleanup settings via environment variables. - Environment: Updated Dockerfile and reclip.sh for better dependency management and unprivileged execution.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Root Cause
YouTube started enforcing SABR streaming which blocks older yt-dlp versions (2025.10.14 and below) with
HTTP Error 403: Forbiddenon download. The/api/infometadata endpoint still works, but/api/downloadfails for all YouTube videos.See: yt-dlp/yt-dlp#12482
Fix
yt-dlp>=2026.3.17inrequirements.txtpip install --upgrade-depsinreclip.shso venv setup always pulls the latest yt-dlpExisting users
rm -rf venv && ./reclip.shCloses #8