• v0.3.0 93e4245874

    v0.3.0
    All checks were successful
    Tests / test (push) Successful in 16s
    Build and Push Docker Image / test (push) Successful in 47s
    Build and Push Docker Image / build-and-push (push) Successful in 59s
    Stable

    patillacode released this 2026-04-09 15:01:51 +02:00 | 0 commits to main since this release

    Bug fix: Short detection now works from EU deployments

    The previous detection method followed redirects on youtube.com/shorts/{id} and checked whether the final URL
    still contained /shorts/. From EU IPs, YouTube redirects everything to consent.youtube.com first — so the
    check always failed and every video was cached as "not a Short".

    This release switches to the oEmbed API, which bypasses consent walls entirely and returns reliable
    portrait/landscape dimensions. Shorts are portrait (height > width); regular videos are landscape.

    After upgrading, clear the video cache — all existing entries are wrong:

    docker exec yt-shorts-proxy python -c "
    import sqlite3; conn = sqlite3.connect('/data/cache.db')
    conn.execute('DELETE FROM videos'); conn.commit(); print('cache cleared')
    "
    

    Also in this release

    • Docker Compose examples in the README now use the published image — no local build needed
    • Branch strategy simplified to main → feature/*
    • just pr detects the current branch automatically
    • Fixed: detection errors were silently swallowed and never reached the error tracker

    Images

    docker pull forgejo.patilla.es/patillacode/yt-shorts-proxy:latest
    
    docker pull forgejo.patilla.es/patillacode/yt-shorts-proxy:v0.3.0
    
    Downloads
  • v0.2.0 bfeb2d3478

    v0.2.0
    All checks were successful
    Tests / test (push) Successful in 16s
    Build and Push Docker Image / test (push) Successful in 16s
    Build and Push Docker Image / build-and-push (push) Successful in 39s
    Stable

    patillacode released this 2026-04-09 13:31:14 +02:00 | 1 commits to main since this release

    Rework CI workflows to use catthehacker/ubuntu runner and standard GitHub Actions,
    fixing Docker image publishing to the Forgejo container registry.

    Changes

    • Fix Docker image not being published due to missing permissions: packages: write
    • Switch from manual git clone + docker CLI to standard actions (checkout, login, build-push)
    • Add separate test.yml workflow that runs on every push and PR to main
    • Gate the Docker build on tests passing via needs: test
    • Add just pr recipe to print the develop → main PR URL
    • Add just release recipe with branch, cleanliness, and tag validation
    • Rename development branch to develop
    Downloads
  • v0.1.0 69d6e54d02

    v0.1.0
    All checks were successful
    Tests / test (push) Successful in 1m8s
    Build and Push Docker Image / test (push) Successful in 16s
    Build and Push Docker Image / build-and-push (push) Successful in 50s
    Stable

    patillacode released this 2026-04-09 13:03:06 +02:00 | 2 commits to main since this release

    Initial release.

    Self-hostable Piped-compatible API for YouTube Shorts detection, designed as a FreshRSS sidecar to replace the
    defunct Piped service.

    What's included:

    • /videos endpoint, Short detection via YouTube redirect following
    • /channels endpoint, handle-to-channel-ID resolution
    • /health endpoint for Docker healthcheck
    • SQLite cache (permanent for videos, 24h TTL for channels)
    • Error notifications via ntfy and/or Telegram
    • Forgejo Actions CI, tests gate the Docker build
    Downloads