chore(tools): move bump_packaging.py to the repository root

This commit is contained in:
beefcarver committed 2026-11-15 09:07:42 -05:00
1 parent cbce35441d
commit e000b296b5
3 files changed
+8 -12

No files matched your search

+1 -2
View File
@@ -35,7 +35,6 @@ git submodule update --init # contrib/homebrew, the Homebrew tap
uv run pytest # full test suite
uvx ruff check . # lint (ruff is not a project dependency)
uv run beefy-player --list # station ids for the current catalogue
uv run python tools/ansi_art.py ... # regenerate a provider's header art
```
`uvx ruff check .` is the enforced lint and must pass. `ruff format` is **not**
@@ -61,7 +60,7 @@ repo-wide reformat as a side effect of an unrelated change.
`.forgejo/workflows/release.yml` fires on a `v*` tag: it asserts that the tag,
the `pyproject.toml` version and `beefy_player.__version__` all agree, then
publishes release notes. It does **not** touch packaging, so run
`tools/bump_packaging.py <version>` after publishing: it rewrites
`uv run python bump_packaging.py <version>` after publishing: it rewrites
`contrib/aur/PKGBUILD` and regenerates its `.SRCINFO` from it, rewrites the tap
formula in `contrib/homebrew`, and with `--commit` commits the tap first and
then this repository. Both channels build the sdist attached to the release,
+2 -5
View File
@@ -330,15 +330,12 @@ Each catalogue is a self-contained provider module under
`beefy_player/providers/`; `base.py` documents the interface. Every catalogue's
header is a wordmark from the shared half-block font, and the header paints it
with the active palette gradient (`hero_gradient`, on by default) so all
thirteen follow the terminal's colours. `tools/ansi_art.py` converts a PNG logo
into half-block ANSI art that carries colours of its own; a provider using that
art must set `hero_gradient = False`, because the header would otherwise
repaint it with the gradient.
thirteen follow the terminal's colours.
`uvx ruff check .` is the enforced lint. The tree is not `ruff format`-clean (54
files would change), so do not reformat it wholesale.
`tools/bump_packaging.py <version>` keeps the AUR package and the Homebrew tap
`uv run python bump_packaging.py <version>` keeps the AUR package and the Homebrew tap
formula in step with a release — it rewrites `PKGBUILD`, regenerates
`.SRCINFO` from it (no makepkg needed), rewrites the formula, and `--commit`s
both. `--check` reports drift without writing.
@@ -15,10 +15,10 @@ generated on the fly. The sdist's root directory is hatchling's PEP 503 name
Usage:
python tools/bump_packaging.py 1.2.3 # download the release asset
python tools/bump_packaging.py 1.2.3 --asset dist/beefy_player-1.2.3.tar.gz
python tools/bump_packaging.py 1.2.3 --commit # also commit both repos
python tools/bump_packaging.py 1.2.3 --check # verify, write nothing
python bump_packaging.py 1.2.3 # download the release asset
python bump_packaging.py 1.2.3 --asset dist/beefy_player-1.2.3.tar.gz
python bump_packaging.py 1.2.3 --commit # also commit both repos
python bump_packaging.py 1.2.3 --check # verify, write nothing
`.SRCINFO` is never edited directly; it is regenerated by evaluating
`PKGBUILD` in bash and serialising it in makepkg's field order. That keeps it
@@ -106,7 +106,7 @@ done
#: Replaces the `_commit`-pinned git-archive source with the release asset.
ASSET_SOURCE = (
"# The sdist attached to the v$pkgver release. tools/bump_packaging.py keeps\n"
"# The sdist attached to the v$pkgver release. bump_packaging.py keeps\n"
"# this and sha256sums in step with the tag; build/check/package use\n"
"# $_srcname because the sdist unpacks to hatchling's PEP 503 name.\n"
'_srcname="beefy_player-$pkgver"\n'