github ttlequals0/MinusPod v2.101.16
2.101.16

3 hours ago

Stable release covering 2.101.12 through 2.101.16. The previous stable was 2.101.11.

New features

  • Require manual approval, off by default, as a global default with a per-feed Inherit, On or Off override. A processed episode on such a feed stays out of the served feed, Recents and the audio route until you approve it: on its episode page, in bulk from the Queue page's new Episode review tab, or by a recut. New Episode Awaiting Approval and Episode Pending Review webhook and email events fire when an episode starts waiting or finishes with held detections (#934, #933).
  • The Queue page has two tabs: Queue, and Episode review for episodes awaiting approval and episodes with held detections. On desktop both lists are tables (#934, #951).
  • System One profiles take a Maximum prompt tokens budget. A detection window estimated above it is split before sending, and a request the provider rejects for context size is retried at half the window (#934, #932).
  • Pass-through episodes import the chapters and transcript the upstream feed publishes, shown on the episode page, in the player and in the served RSS with a Publisher transcript badge. Episodes already in pass-through pick them up on their next reprocess (#934).
  • Twelve more themes under Settings, Appearance: UniFi OLED, Harbor, One Dark, Everforest, Night Owl, Rose Pine (Main and Moon), Kanagawa (Wave and Dragon), Ayu (Dark and Mirage) and Monokai. Each has its light half where the palette publishes one; a single-mode theme shows a badge in the picker and uses the default Slate palette in the other mode (#951).
  • A contributor guide at docs/CONTRIBUTING.md (#950).

Fixes

  • YouTube episodes processed from SponsorBlock marks are no longer watched afterwards. The watch recut the same episode every interval when SponsorBlock held duplicate submissions, which also sent a new Episode Processed notification each time. Reprocess still fetches fresh marks (#950).
  • Cue-cut and cue-pair markers keep both edges where the matched cue put them, so an ad break no longer clips the host's first words after the stinger (#934, #935, #936).
  • A 5-star episode rating also dismisses the episode's held-for-review ads without recording a rejection pattern (#934).
  • The pre-download CDN check waits up to 30 seconds and treats a timeout as inconclusive, so a slow host with several redirects no longer fails the episode before the download is tried (#934, #931).
  • The Sponsors page is now a tab on the Patterns page; the old address redirects there and keeps a search term (#934).
  • Feed cards, feed list rows and the feed page lead with artwork and title: Refresh and Delete are outline buttons in their accent hues, Copy URL keeps its label on phones, and each card shows a processed-of-total bar (#951).
  • Every data table (History, Stats, Queue, Episode review, Patterns, Sponsors, Settings) shares one style. The run table on the episode page says Run time and Audio length instead of Duration and Downloaded, and its stage breakdown nests Chapters under Assets and lists FFmpeg apart so no row double counts another (#951).
  • The diagnostic export records the message template and exception class for warnings and errors, so a cluster of failures can be read without the container log (#934).
  • Frontend build resolves minimatch 11.0.1 or newer (GHSA-g3hv-75wg-m249) (#950).

Upgrade notes

  • A one-shot migration clears the pending SponsorBlock check on YouTube episodes already in a terminal state, so upgraded instances stop the recut loop without any action (#950).

Don't miss a new MinusPod release

NewReleases is sending notifications on new releases.