ci(ENG-3243): move action pins off the deprecated Node 20 runtime

EL
1mo ago
+10-10

Summary

Moves every JavaScript action in this repo's workflows that declares the Node 20 (or older) runtime to a release that runs on Node 24, removing the "Node.js 20 is deprecated" annotations GitHub adds to every job that uses one. Part of ENG-3243, which has done the same across the org.

ActionFromToPins
actions/checkoutv4@v64
actions/download-artifactv4@v71
actions/setup-pythonv5@v74
actions/upload-artifactv4@v61

Compatibility

  • checkout v6 stores the persisted credential under $RUNNER_TEMP instead of .git/config; git commands keep working. No workflow here pushes or runs in a container job.
  • download-artifact v7 is its first Node 24 release; v5 only changed extraction paths for single downloads by ID, and these download by name.
  • setup-python v7 removes the pip-install input, which isn't used here.
  • The remaining bumps are same-major or majors whose only breaking change is Node 24 itself. All need runner v2.327.1+, which GitHub-hosted and WarpBuild runners already meet.

Testing

Workflow-only change. Steps that only run on push, release, deploy or schedule aren't exercised by this PR's CI and will first run on merge.

šŸ¤– Generated with Claude Code


Summary by cubic

Moves the pinned GitHub Actions off the deprecated Node 20 runtime so jobs stop showing GitHub's "Node.js 20 is deprecated" warning. Part of ENG-3243's org-wide cleanup of action runtimes.

  • Bumps actions/checkout v4 → v6, actions/setup-python v5 → v7, actions/upload-artifact v4 → v6, and actions/download-artifact v4 → v7 in ci.yml and publish.yml.

Compatibility

  • checkout v6 stores persisted credentials under $RUNNER_TEMP instead of .git/config; nothing here pushes or runs in a container job, so git behavior is unchanged.
  • download-artifact v7 only changed extraction paths for single downloads by ID; these download by name.
  • setup-python v7 removes the unused pip-install input.
  • All newer releases need runner v2.327.1+, which GitHub-hosted and WarpBuild runners already meet.

Steps that only run on push, release, deploy, or schedule aren't exercised by this PR's CI and will first run on merge.