Skip to content

Release v0.9.60: Node 24 CI, low-risk tech debt, version bump#207

Merged
safl merged 5 commits into
mainfrom
ci-node24
Jun 29, 2026
Merged

Release v0.9.60: Node 24 CI, low-risk tech debt, version bump#207
safl merged 5 commits into
mainfrom
ci-node24

Conversation

@safl

@safl safl commented Jun 29, 2026

Copy link
Copy Markdown
Collaborator

Summary

This PR rolls four small chores into a v0.9.60 release.

The CI work bumps every action in verify_and_publish.yml to a release whose action.yml declares node24, so GitHub stops forcing them onto Node 24 with a deprecation notice on every run. The pins are actions/checkout to v5.0.1, actions/setup-python to v6.0.0, actions/upload-artifact to v6.0.0 and actions/download-artifact to v7.0.0. Earlier versions in the v5/v6 line of the artifact actions still ship Node 20, so they were ruled out. actions/upload-artifact flipped the default of include-hidden-files to false in v4.4, which silently drops dotfile paths like .coverage; the three steps that upload .coverage get an explicit include-hidden-files: true. On macOS runners the image now pre-taps aws/tap, which Homebrew refuses to load without explicit trust and prints a multi-line warning on every brew update; cijoe pulls nothing from aws/tap, so each brew update is preceded by brew untap aws/tap || true.

The tech-debt pass drops 22 unused imports flagged by ruff F401 across docs/, src/, and tests/, fixes an unused state destructuring at src/cijoe/core/scripts/cmdrunner.py:65, and removes three lines of commented-out dead code in src/cijoe/linux/null_blk.py.

The post-rename cleanup resolves three leftover references to "workflow" after the recent rename to "task": the Sphinx sidebar pattern in docs/source/conf.py excluded a directory that no longer exists, the example task header had a "GitHUB" casing typo, and the bash completion's default filename was the legacy cijoe-workflow.yaml so step-name completion silently failed once users moved to cijoe-task.yaml. It now prefers the new name and falls back to the legacy one for users mid-migration.

Closes with a version bump to v0.9.60 via the same two-file pattern as prior bumps (src/cijoe/core/__init__.py and .github/workflows/cijoe_docker.yml).

Test plan

Watch verify_and_publish go green on this PR, including the macOS legs of unittest where the brew warning originated. Confirm the publish-coverage job finds .coverage artifacts to combine, and inspect a macOS unittest log to confirm the aws/tap warning and Node 20 deprecation note are gone.

GitHub forces Node 20 actions onto Node 24 with a deprecation notice on
every run. Bump to versions whose action.yml declares node24:
actions/checkout v5.0.1, actions/setup-python v6.0.0,
actions/upload-artifact v6.0.0, actions/download-artifact v7.0.0.

upload-artifact flipped the default of include-hidden-files to false in
v4.4, so the dotfile path '.coverage' stops being uploaded after the
bump. Set include-hidden-files: true on the three steps that upload
'.coverage' so the artifacts still land.

On macOS runners aws/tap is pre-tapped and brew refuses to load it
without explicit trust, printing a multi-line warning on every brew
update. cijoe does not use anything from aws/tap, so untap it first.

Signed-off-by: Simon A. F. Lund <os@safl.dk>
@coveralls

coveralls commented Jun 29, 2026

Copy link
Copy Markdown

Coverage Report for CI Build 28375908171

Coverage increased (+0.1%) to 77.528%

Details

  • Coverage increased (+0.1%) from the base build.
  • Patch coverage: 4 of 4 lines across 4 files are fully covered (100%).
  • 1 coverage regression across 1 file.

Uncovered Changes

No uncovered changes found.

Coverage Regressions

1 previously-covered line in 1 file lost coverage.

File Lines Losing Coverage Coverage
src/cijoe/core/analyser.py 1 0.0%

Coverage Stats

Coverage Status
Relevant Lines: 2219
Covered Lines: 1668
Line Coverage: 75.17%
Relevant Branches: 402
Covered Branches: 364
Branch Coverage: 90.55%
Branches in Coverage %: Yes
Coverage Strength: 0.75 hits per line

💛 - Coveralls

safl added 2 commits June 29, 2026 14:36
Ruff F401 flagged 22 dead imports across docs/, src/, and tests/ that
accumulated over time as code moved around. Cleared the same way ruff
would auto-fix: no exports relied on any of them.

While here, fixed an unused 'state' destructuring at cmdrunner.py:65
that pyright had been warning about, and dropped a 'not useful yet'
commented rmdir at null_blk.py whose author note dates back several
years; git history retains it if anyone wants it back.

Signed-off-by: Simon A. F. Lund <os@safl.dk>
Three leftover spots after the workflow-to-task rename: the sphinx
sidebar pattern at docs/source/conf.py still excluded 'workflows**'
where the renamed directory is 'tasks/'; the example task header in
example_task_default.yaml had a 'GitHUB' casing typo; and the bash
completion's default filename was the legacy 'cijoe-workflow.yaml'
so step-name completion silently failed for users on the new
'cijoe-task.yaml'. Prefer the new name and fall back to the legacy
one so completion still works mid-migration.

Signed-off-by: Simon A. F. Lund <os@safl.dk>
@safl safl changed the title ci: bump actions to Node 24 and silence aws/tap warning Release v0.9.60: Node 24 CI, low-risk tech debt, version bump Jun 29, 2026
safl added 2 commits June 29, 2026 15:32
GitHub is migrating the 'macos-latest' label to macOS 26 from June 15,
2026, and emits a migration notice on every macOS run until the move
completes. Pin to 'macos-15' (Sequoia) so the image is explicit, the
notice is gone, and a runner change doesn't ride in unannounced. The
last successful unittest run was on this image; bumping to macos-26
can ride in a separate PR once the migration settles.

Signed-off-by: Simon A. F. Lund <os@safl.dk>
Signed-off-by: Simon A. F. Lund <os@safl.dk>
@safl safl requested a review from naddinadja June 29, 2026 13:44

@naddinadja naddinadja left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lots of good, small fixes! :)

@safl safl merged commit 8841116 into main Jun 29, 2026
30 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants