← What's New

v0.4.1 polish — PyPI publishing + CI hygiene

2026-05-31 · branch chore/v0.4.1-polish · tag v0.4.1

The audit that motivated this release

Under the /goal "verify accurate release with minimal drift", a post-v0.4.0 audit ran every check that could surface release inaccuracy. Three real findings — one critical:

CheckFindingFix in v0.4.1
Version drift across 4 version-bearing filesclean (all 0.4.0)
nstat-toolbox on PyPI404 — never publishednew publish.yml workflow + tagging
Stale 0.3.2 footer in extras_summary.html"Generated as part of the nSTAT-python v0.3.2 release"made version-agnostic
GitHub Releases for v0.4.0Latest, present
Live docs reflect v0.4.0clean, extras symbols render
The PyPI gap was the biggest "drift" the audit could find. Every prior version of the README promised pip install nstat-toolbox works, but the package has never been on PyPI. v0.4.1 makes that promise true.

What shipped

Tag-time verification

CheckResult
test_version_sync (5 tests, all 4 files on 0.4.1)PASS
test_intro_page (5 drift guards)PASS
make readme-check + make helpfile-checkPASS
make docs-strict (two-pass -W)PASS
publish.yml tag-vs-pyproject assertionguard in place

What the maintainer needs to do once

  1. Reserve the nstat-toolbox project name on PyPI (account flow).
  2. Add GitHub as a Trusted Publisher at https://pypi.org/manage/project/nstat-toolbox/settings/publishing/ with owner cajigaslab, repository nSTAT-python, workflow publish.yml, environment pypi.
  3. Create the pypi GitHub Environment (Settings → Environments) — optionally with a required-reviewer rule for extra safety.

After those three clicks, every tag push (starting with v0.4.1 itself) auto-publishes to PyPI.