mirror of
https://github.com/Glitchy-Sheep/boosty-downloader.git
synced 2026-10-14 21:33:23 +00:00
[PR #164] [MERGED] [build] Finish the PEP 621 move: hatchling backend, clean metadata, guarded sdist #166
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#166
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/164
Author: @Glitchy-Sheep
Created: 8/19/2026
Status: ✅ Merged
Merged: 8/19/2026
Merged by: @Glitchy-Sheep
Base:
main← Head:chore/pep621-build📝 Commits (1)
ece9707chore: Finish the PEP 621 move with hatchling and clean metadata📊 Changes
2 files changed (+26 additions, -8 deletions)
View changed files
📝
.github/workflows/ci.yaml(+7 -0)📝
pyproject.toml(+19 -8)📄 Description
[build] Finish the PEP 621 move: hatchling backend, clean metadata, guarded sdist
Summary
Third cleanup PR (audit этап 2). The build backend moves from poetry-core to hatchling, the metadata gets its missing fields, and the sdist becomes an explicit allowlist - which turned out to matter much more than expected.
The important catch
hatchling's sdist default packs every non-vcs-ignored file into the archive - including untracked local notes. A trial build pulled 15 private working files (analysis notes, PR drafts) and a megabyte of README assets into the tarball that
task releasewould have uploaded to PyPI. The sdist is nowonly-include = ["boosty_downloader"]: 2.1 MB -> 63 KB, zero private files (verified by listing the archive).Changes
[build-system]: hatchling replaces poetry-core - the last[tool.poetry]key duplicated what any backend infers from the project namelicense = "MIT"+license-files,[project.urls](Homepage / Issues / Changelog) - the wheel finally carries the license and linkspyyamldependency spelled in the same style as the other fourteenVerification
task build: wheel 101 KB (7/7 templates inside), sdist 63 KB (package + README/LICENSE/pyproject only)boosty-downloader --version-> 3.5.0; a render through the installed package proves templates load from the wheelversion =linetask check+task testgreen: 174 passed + 1 xfailtask test:apiis currently blocked by the known network condition (curl reaches the API in 0.16s, aiohttp TLS gets cut - the anti-bot pattern, heals with a pause); the change touches no runtime codeci/skip-changelog)🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.