Skip to content

v0.3.0

Choose a tag to compare

@o51r15 o51r15 released this 15 Jun 12:24

Per-item staging cleanup

  • Each download now stages its intermediate files under a per-item directory keyed on the video's unique id (/downloads-staging/<id>), isolating every file (video, thumbnail, fragments) for that item.
  • Failed, abandoned, or interrupted attempts have their staging files cleaned up automatically — before the next attempt, on failure, and after success — so stale intermediates can't accumulate or interfere with a later retry.
  • Requires LOCALTEMP=true; a no-op otherwise.

Home page failure-state tabs

The single "Pending" tab is now split into three so you can tell apart queued, retrying, and permanently failed items:

  • Pending — queued and waiting, no errors.
  • Retry — failed but will retry automatically, with a live countdown to the next attempt and a Retry Now button to skip the backoff.
  • Failed — permanently failed, showing the last error and a Force Retry button that clears the error state and restarts the download from scratch (with a confirmation prompt).

Other

  • Sidebar now shows the Pinchfork version dynamically (no more manual drift); the Pinchflat line reflects the upstream base it forks from.
  • Docker image: ghcr.io/o51r15/pinchflat:v0.3.0 and :latest.