mirror of
https://github.com/Glitchy-Sheep/boosty-downloader.git
synced 2026-10-15 05:41:48 +00:00
[PR #223] [MERGED] feat(application): build complete pages from stored posts #221
Labels
No labels
api-drift
bug
ci
documentation
enhancement
enhancement
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Glitchy-Sheep/boosty-downloader#221
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/Glitchy-Sheep/boosty-downloader/pull/223
Author: @Glitchy-Sheep
Created: 10/7/2026
Status: ✅ Merged
Merged: 10/7/2026
Merged by: @Glitchy-Sheep
Base:
main← Head:feat/build-stored-post-pages📝 Commits (4)
3e6db63feat(html): preserve stored paragraphs and inline line breaks01c07c2feat(html): explain missing media in stored post pages269601dfeat(html): render retained media removed by the author48312f9feat(application): build complete pages from stored posts📊 Changes
18 files changed (+2288 additions, -44 deletions)
View changed files
➕
boosty_downloader/application/_page_text.py(+100 -0)📝
boosty_downloader/application/mappers/html_converter.py(+32 -23)➕
boosty_downloader/application/page_builder.py(+191 -0)📝
boosty_downloader/infrastructure/html_generator/__init__.py(+10 -1)📝
boosty_downloader/infrastructure/html_generator/models.py(+68 -7)📝
boosty_downloader/infrastructure/html_generator/renderer.py(+96 -13)📝
boosty_downloader/infrastructure/html_generator/templates/base.html(+20 -0)➕
boosty_downloader/infrastructure/html_generator/templates/deleted.html(+7 -0)➕
boosty_downloader/infrastructure/html_generator/templates/not_downloaded.html(+10 -0)➕
boosty_downloader/infrastructure/html_generator/templates/removed_media.html(+5 -0)➕
boosty_downloader/infrastructure/html_generator/templates/structured_text.html(+16 -0)📝
boosty_downloader/infrastructure/html_generator/templates/unavailable.html(+7 -0)➕
test/unit/application/page_builder_media_test.py(+444 -0)➕
test/unit/application/page_builder_test.py(+238 -0)➕
test/unit/application/page_text_test.py(+368 -0)➕
test/unit/html_generator/missing_media_test.py(+314 -0)➕
test/unit/html_generator/removed_media_test.py(+193 -0)➕
test/unit/html_generator/structured_text_test.py(+169 -0)📄 Description
📝 Summary
Add the page-building core needed to keep a complete post page when media arrives across separate download runs. It reads
StoredPost; connecting it to the download commands comes in a later PR.🔧 What changes
The four commits separate text handling, missing-media cards, retained media and the complete builder. Existing download commands keep their current page-building flow.
🖼️ Screenshots
🧪 Tests
task cipassed: 852 tests, Ruff, formatting, strict Pyright, import-layer checks and wheel/source builds..env; no live-blog test was run for this pure builder.The first CI attempt exceeded the existing parallel-download test's 1.3-second limit on Python 3.14 (1.85 seconds). The repeat passed on the same commit; the test and download scheduler are unchanged.
⏭️ Next
✅ Checklist
--helpand README if neededdocs/if the download flow or dev process changed## Unreleasedin CHANGELOG.md (or theci/skip-changeloglabel if not user-facing)CLI/help and download-flow documentation changes are not needed at this stage.
ci/skip-changelogapplies to this internal preparation; the new builder is not yet used by download commands.🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.