Skip to content

CI — bump GitHub Actions off Node 20 to clear deprecation warnings - #37

Merged
igor-ctrl merged 1 commit into
mainfrom
chore/actions-node24
Aug 18, 2026
Merged

CI — bump GitHub Actions off Node 20 to clear deprecation warnings#37
igor-ctrl merged 1 commit into
mainfrom
chore/actions-node24

Conversation

@igor-ctrl

Copy link
Copy Markdown
Owner

Overview

Commit ea1de6a, authored 2026-08-05, had been sitting on a local branch that
was never pushed — no remote branch, no PR. main still carries every one of
the old pins, so the Node 20 deprecation warnings are still live in CI.

Opening it now, unchanged, as its author wrote it.

Business Impact

Clears the Node 20 deprecation warnings on every workflow run. GitHub eventually
force-migrates Node 20 actions and then unpinned/older majors start failing, so
this is maintenance that gets more urgent, not less.

Touches publish.yml, so it is worth landing while there is no release in
flight rather than discovering a problem mid-release.

Changes

Action bumps, all re-pinned by commit SHA per the existing convention:

Action From To
actions/checkout v4.2.2 v5.1.0
actions/upload-artifact v4.6.2 v5.0.0
actions/download-artifact v4.3.0 v5.0.0
actions/setup-node v4 v5.0.0
astral-sh/setup-uv v5 v9.0.0
pypa/gh-action-pypi-publish v1.14.0 v1.14.2

site.yml's checkout / setup-node also move from bare tags (@v4) to SHA
pins, matching publish.yml and tests.yml.

Obsoleted Objects

None.

Verification

Done as part of opening this PR:

  • Every SHA pin resolves to the tag the commit message claims. Checked
    all six against the GitHub API (dereferencing annotated tags). All match.
    This is the check that matters most for SHA-pinned actions — a pin that
    doesn't correspond to its comment is either a footgun or worse.
  • Patch still applies cleanly to current main
    (git apply --check). The workflow files are byte-identical between this
    commit's parent and main, so nothing has drifted underneath it in the
    12 days it sat unpushed.

Carried over from the original commit message, not independently re-verified
by me — a reviewer may want to confirm:

  • None of the breaking changes in these majors apply here: no
    pull_request_target / workflow_run triggers (checkout v5.1.0's fork-PR
    restriction), no by-ID artifact downloads (download-artifact v5's
    path-nesting change), no manifest-file / server-url inputs (setup-uv
    v7/v8). gh-action-pypi-publish stays on the same 1.14.x Trusted
    Publisher + attestations flow that published bc-cli 0.7.0.
  • astral-sh/setup-uv v5 → v9 is a four-major jump; worth a skim of its
    changelog even though the claim is that no removed inputs are used here.

Note this branch is based on an older main (c564308). It was left unrebased
so the authored commit is preserved byte-for-byte; the diff against the merge
base is exactly the table above, and there are no conflicts. Say the word if you
want it rebased for a linear history.

https://claude.ai/code/session_01SfwmhstQdh7c9mB6w3mYUs

actions/checkout v4.2.2->v5.1.0, actions/upload-artifact v4.6.2->v5.0.0,
actions/download-artifact v4.3.0->v5.0.0, actions/setup-node v4->v5.0.0,
astral-sh/setup-uv v5->v9.0.0, and pypa/gh-action-pypi-publish
v1.14.0->v1.14.2, all re-pinned by commit SHA per the existing convention.
site.yml's checkout/setup-node were moved from bare tags to SHA pins for
consistency with publish.yml and tests.yml.

Verified against each release's notes that none of the breaking changes
in these majors apply here: no pull_request_target/workflow_run triggers
(checkout v5.1.0's fork-PR restriction), no by-ID artifact downloads
(download-artifact v5's path-nesting fix), no manifest-file/server-url
inputs (setup-uv v7/v8). gh-action-pypi-publish stays on the same 1.14.x
Trusted Publisher + attestations flow that published bc-cli 0.7.0.
@igor-ctrl
igor-ctrl merged commit 77dd184 into main Aug 18, 2026
4 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.

1 participant