Skip to content

Update GitHub Actions to Node 24 runtimes - #1346

Merged
jeromekelleher merged 1 commit into
sgkit-dev:mainfrom
Billyzhang1229:ci-actions-node24
Sep 4, 2026
Merged

jeromekelleher merged 1 commit into
sgkit-dev:mainfrom
Billyzhang1229:ci-actions-node24

Conversation

@Billyzhang1229

@Billyzhang1229 Billyzhang1229 commented Sep 3, 2026 •

Copy link
Copy Markdown
Contributor

GitHub removes Node 20 from hosted runners on 2026-09-16 (changelog); CI on main is already annotating every run with the deprecation warning. This bumps each JavaScript action to its current major:

Action Before After
actions/checkout v4 v7
actions/setup-python v5 v7
actions/upload-artifact v4 v7
actions/download-artifact v4.1.7 v8
codecov/codecov-action v3 v7
conda-incubator/setup-miniconda v2.2.0 v4

Checked the breaking-change notes for each: setup-python v7 removed the pip-install input (unused), codecov v4+ needs a token (already passed), setup-miniconda v3+ defaults to the libmamba solver (only used in the manually-triggered GPU workflow now that #1344 is in). actionlint reports no new issues.

One real behaviour change: since download-artifact v5, a download with no name that finds exactly one artifact extracts it straight into the target path instead of an artifact/ subdirectory (source: artifacts.length === 1 ? resolvedPath : path.join(resolvedPath, artifact.name)). The wheels.yml test and upload jobs relied on that subdirectory, so the download steps now pass name: artifact and path: artifact explicitly.

Left alone: google-github-actions/setup-gcloud@v0 in validation.yml, since v1+ dropped service_account_key and the workflow has been disabled since 2024 (the sgkit-data bucket it downloads from no longer exists, see #1332). pre-commit/action and pypa/gh-action-pypi-publish are composite actions and unaffected.

Rebased on main after #1344 and #1345.

@Billyzhang1229
Billyzhang1229 force-pushed the ci-actions-node24 branch 2 times, most recently from e498f9f to 65df3e6 Compare September 3, 2026 15:31
This was referenced Sep 3, 2026
GitHub removes Node 20 from hosted runners on 2026-09-16, so bump every
JavaScript action to its current major:

- actions/checkout v4 -> v7
- actions/setup-python v5 -> v7
- actions/upload-artifact v4 -> v7
- actions/download-artifact v4.1.7 -> v8
- codecov/codecov-action v3 -> v7
- conda-incubator/setup-miniconda v2 -> v4

download-artifact changed behaviour in v5: when no name is given and
the run has exactly one artifact, it is now extracted straight into the
target path instead of an artifact/ subdirectory. The wheel test jobs
relied on that subdirectory, so pass name and path explicitly.

google-github-actions/setup-gcloud@v0 in validation.yml is left as is:
v1+ removed the service_account_key input, and the workflow has been
disabled since 2024 because the sgkit-data bucket no longer exists.
@Billyzhang1229
Billyzhang1229 marked this pull request as ready for review September 4, 2026 12:29
@jeromekelleher
jeromekelleher merged commit e8895bc into sgkit-dev:main Sep 4, 2026
10 of 12 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.

2 participants