[PR #159] [MERGED] chore: release v3.5.0 #162

Closed
opened 2026-10-13 19:48:12 +00:00 by bsakaguchi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/Glitchy-Sheep/boosty-downloader/pull/159
Author: @Glitchy-Sheep
Created: 8/17/2026
Status: ✅ Merged
Merged: 8/17/2026
Merged by: @Glitchy-Sheep

Base: main ← Head: release/v3.5.0


📝 Commits (1)

📊 Changes

3 files changed (+11 additions, -3 deletions)

View changed files

📝 CHANGELOG.md (+2 -0)
📝 pyproject.toml (+1 -1)
📝 uv.lock (+8 -2)

📄 Description

Promotes the Unreleased changelog into v3.5.0 and bumps the version.

Release notes

Fixed

  • Rendered posts look right in the browser and in the editor: the tab shows the post title instead of "HTML Report", numbered lists keep their numbering instead of turning into bullets, and post.html itself is ~2.5x smaller with properly indented markup instead of walls of blank lines

  • A file whose name contains HTML markup (like report <final>.zip) no longer breaks the post page - names are escaped now

  • External videos saved as webm/mkv get a matching MIME type in the player instead of a hardcoded mp4 one

  • Already downloaded posts keep their old HTML: the new rendering applies to new and updated posts (a full re-render command is planned separately)

  • Long runs no longer die on expired download links: when the CDN rejects a link that lived past its ~24-hour signature, the post is re-fetched from the API once and the download retries with fresh links - no manual rerun needed

  • New Boosty video url types ondemand_dash / ondemand_hls no longer trigger the "please report this at GitHub" warning - the client knows them now

  • A video that offers only streaming manifests (hls/dash/live) is skipped with an honest "streams are not supported yet" warning and retried on the next run; a manifest can no longer end up on disk pretending to be a video file

Changed

  • The app now exits with code 1 on every handled error (author not found, bad credentials, network failure, stopped run) and 130 on Ctrl+C - scripts and cron jobs can finally tell a failed run from a successful one
  • --post-url finds the post with one direct API request instead of walking the whole blog page by page - instant start and download links that are always fresh; a paywalled post without access now says so instead of saving an empty preview

After merge

Run task release:tag - it verifies fresh main and pushes the tag; the tag triggers the release workflow (build -> PyPI -> GitHub Release).


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/Glitchy-Sheep/boosty-downloader/pull/159 **Author:** [@Glitchy-Sheep](https://github.com/Glitchy-Sheep) **Created:** 8/17/2026 **Status:** ✅ Merged **Merged:** 8/17/2026 **Merged by:** [@Glitchy-Sheep](https://github.com/Glitchy-Sheep) **Base:** `main` ← **Head:** `release/v3.5.0` --- ### 📝 Commits (1) - [`62ed9c4`](https://github.com/Glitchy-Sheep/boosty-downloader/commit/62ed9c4d0a713da7f9eb7915907fc8123a8e3dd6) chore: release v3.5.0 ### 📊 Changes **3 files changed** (+11 additions, -3 deletions) <details> <summary>View changed files</summary> 📝 `CHANGELOG.md` (+2 -0) 📝 `pyproject.toml` (+1 -1) 📝 `uv.lock` (+8 -2) </details> ### 📄 Description Promotes the Unreleased changelog into v3.5.0 and bumps the version. ## Release notes ### Fixed - Rendered posts look right in the browser and in the editor: the tab shows the post title instead of "HTML Report", numbered lists keep their numbering instead of turning into bullets, and post.html itself is ~2.5x smaller with properly indented markup instead of walls of blank lines - A file whose name contains HTML markup (like `report <final>.zip`) no longer breaks the post page - names are escaped now - External videos saved as webm/mkv get a matching MIME type in the player instead of a hardcoded mp4 one - Already downloaded posts keep their old HTML: the new rendering applies to new and updated posts (a full re-render command is planned separately) - Long runs no longer die on expired download links: when the CDN rejects a link that lived past its ~24-hour signature, the post is re-fetched from the API once and the download retries with fresh links - no manual rerun needed - New Boosty video url types `ondemand_dash` / `ondemand_hls` no longer trigger the "please report this at GitHub" warning - the client knows them now - A video that offers only streaming manifests (hls/dash/live) is skipped with an honest "streams are not supported yet" warning and retried on the next run; a manifest can no longer end up on disk pretending to be a video file ### Changed - The app now exits with code 1 on every handled error (author not found, bad credentials, network failure, stopped run) and 130 on Ctrl+C - scripts and cron jobs can finally tell a failed run from a successful one - `--post-url` finds the post with one direct API request instead of walking the whole blog page by page - instant start and download links that are always fresh; a paywalled post without access now says so instead of saving an empty preview ## After merge Run `task release:tag` - it verifies fresh main and pushes the tag; the tag triggers the release workflow (build -> PyPI -> GitHub Release). --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
bsakaguchi 2026-10-13 19:48:12 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Glitchy-Sheep/boosty-downloader#162
No description provided.