Skip to content

CI: pinned actions still target deprecated Node.js 20 #1588

Open

Description

Problem

Every job that uses these pinned actions logs a warning saying it targets Node.js 20 and is being forced to run on Node.js 24. For example, see nightly job 115703085274 in run 38518420487:

Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/download-artifact@d3f86a1…, actions/setup-python@a26af69…

The forced run works today. When GitHub drops Node 20 action support altogether, these legs break at once across the PR, merge_group, nightly and release workflows.

Pin Uses Workflows
actions/download-artifact@d3f86a1… # v4 20 ci.yml, *-compatibility.yml, release.yml
actions/setup-node@49933ea… # v4 15 same set
actions/setup-python@a26af69… # v5 9 same set
actions/upload-artifact@ea165f8… # v4 5 same set

Affected files: ci.yml, release.yml, and the vlt, sbt, pnpm, bun, gradle, pdm, npm and poetry compatibility workflows. One step already uses actions/setup-node@48b55a0… # v6.4.0, so that pin is already trusted in this repo.

Proposed fix

Move each pin to the newest release that runs on Node 24, by full commit SHA with a # vX.Y.Z comment. Review each release's breaking changes before bumping:

  • setup-node v5 and later turn on caching automatically when packageManager is npm.
  • download-artifact v5 and later change the extraction path when downloading by artifact ID.

Do the bump in one PR and run every compatibility workflow on it.

Why the CI janitor didn't open the PR

This routine's GitHub access covers only this repo, so it can't resolve or check the release SHAs of the upstream actions. It won't push unverified pins. Someone with access to the upstream repos, or Dependabot or Renovate, should resolve the SHAs.


Generated by Claude Code

Activity

  1. mikolalysenko commented on Oct 15, 2026

    @mikolalysenko
    CollaboratorAuthor

    [agent] Claiming this issue (shared root cause: CI actions pinned to Node 20 releases). Scope: ci.yml and the two composite artifact actions. release.yml (off-limits to agents) and the disabled *-compatibility.yml workflows stay for a human. Branch: agent/fix-ci-node24-action-pins. Claim-ID: 2026-10-15T19:50:40Z-07e1ec


    Generated by Claude Code

  2. mikolalysenko commented on Oct 15, 2026

    @mikolalysenko
    CollaboratorAuthor

    [agent] Draft PR: #1590. It covers ci.yml and the artifact composites. release.yml still pins Node 20 actions and needs a human; the same SHAs listed in the PR apply.


    Generated by Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions