Migrate to pyproject.toml + wads uv-CI stub (revives dead CI) - #24
Merged
Conversation
The repo was still on setup.cfg/setup.py with a `runs-on: ubuntu-18.04` workflow — a runner label GitHub retired, so jobs queued forever and never ran. CI has effectively been dead here, which is why #23 could not be gated. - pyproject.toml (hatchling), version carried over at 1.0.42 to match PyPI; requires-python >=3.10 (3.8 is EOL and was the only version the old CI tested) - .github/workflows/ci.yml is now the 5-line reusable-workflow stub; all config lives in [tool.wads.ci.*] - testpaths points at the package, not a top-level tests/ — this repo's tests live in stream2py/tests/ and there are doctests in the modules - setup.cfg and setup.py removed - stream2py/utility/__init__.py gains the module docstring D100 wants 42 tests pass locally under the collection CI uses.
The JSON transport (WADS_CI_SECRETS_JSON) is what ci-to-stub emits by default, but no repo in the fleet is on it yet and the run came back 'action_required' with zero jobs before anything executed. The named transport is what every already-migrated i2mint repo runs, so use the proven one here rather than debug a wads-side transport question inside a CI-revival PR. stream2py declares no env vars in [tool.wads.ci.env], so PYPI_PASSWORD (an i2mint org secret) is the only one that needs passing.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
This repo's CI has been dead, not merely stale:
.github/workflows/ci.ymlonmasterspecifiedruns-on: ubuntu-18.04, a runner label GitHub retired. Jobsqueued indefinitely and were never scheduled — the two runs on #23 sat queued 20+
minutes before I cancelled them. Nothing can be gated on green CI here until this
lands.
What
pyproject.toml(hatchling). Version carried over at 1.0.42, matchingPyPI, so the CI auto-bump lands on 1.0.43 rather than colliding.
requires-python = ">=3.10"; 3.8 was the only version the old CI tested and isEOL.
dependencies = []— the oldinstall_requireswas empty and the packageimports nothing third-party (the
pyaudiooccurrence is inside a reST literalblock in a docstring, not an import, and not a doctest).
.github/workflows/ci.yml→ the 5-line stub callingi2mint/wads/.github/workflows/uv-ci.yml@master, JSON secrets transport.PYPI_PASSWORDis an i2mint org secret visible to all repos, so publish authneeds nothing repo-side.
testpaths = ["stream2py"], not["tests"]: there is no top-leveltests/here — tests live in
stream2py/tests/and there are doctests in the modules.Pointing at
testswould have collected nothing.setup.cfg/setup.pyremoved.stream2py/utility/__init__.pygains the module docstringD100wants.Verification
Merging publishes 1.0.43 to PyPI — intended.
Unblocks #23.