Problem / motivation
pyproject.toml and the pellet console script already work via pip install -e . from a clone, but there's still a "clone + venv" barrier for anyone who just wants the tool without touching the source. A real PyPI release would let a new user run one command (or pipx install pellet-pilot) to get the pellet CLI.
Proposed solution
- Verify the package builds cleanly with
python -m build (flat py-modules layout — double check presets/*.yaml actually gets bundled by [tool.setuptools.package-data] in a non-editable install, since editable installs resolve paths differently and this hasn't been verified for a real wheel).
- Add a release workflow (tag-triggered, or manual
workflow_dispatch) that builds and publishes via twine/PyPI trusted publishing.
- Update the README quickstart once this works, with the
pip install -e . path kept as the "hacking on it" alternative.
Alternatives considered
A single-file/pipx-only distribution without a PyPI listing — narrower reach than an actual PyPI package, and pipx install <git-url> is already possible today without this work, so PyPI is the meaningful next step.
Problem / motivation
pyproject.tomland thepelletconsole script already work viapip install -e .from a clone, but there's still a "clone + venv" barrier for anyone who just wants the tool without touching the source. A real PyPI release would let a new user run one command (orpipx install pellet-pilot) to get thepelletCLI.Proposed solution
python -m build(flatpy-moduleslayout — double checkpresets/*.yamlactually gets bundled by[tool.setuptools.package-data]in a non-editable install, since editable installs resolve paths differently and this hasn't been verified for a real wheel).workflow_dispatch) that builds and publishes viatwine/PyPI trusted publishing.pip install -e .path kept as the "hacking on it" alternative.Alternatives considered
A single-file/
pipx-only distribution without a PyPI listing — narrower reach than an actual PyPI package, andpipx install <git-url>is already possible today without this work, so PyPI is the meaningful next step.