Skip to content

Node.js 20 is deprecated warning in GitHub Actions workflows #175

Description

@piyushsinghgaur1

Describe the bug

GitHub Actions runs in this repository emit the deprecation annotation:

Node.js 20 is deprecated. GitHub Actions will drop support for Node.js 20 soon. Please update the following actions to a newer version: actions/checkout, actions/setup-node

The cause is that the first-party actions are pinned to majors whose action.yml still declares using: node20:

  • .github/workflows/audit.ymlactions/checkout@v4, actions/setup-node@v4
  • .github/workflows/main.ymlactions/checkout@v4, actions/setup-node@v4
  • .github/workflows/release.ymlactions/checkout@v4, actions/setup-node@v4
  • .github/workflows/sync-docs.yamlactions/checkout@v4 (x2)
  • .github/workflows/trivy.yamlactions/checkout@v4

Additionally, the single-version node-version inputs are behind the current release line: audit.yml uses 22.x and release.yml uses '22', while the CI matrix in main.yml already covers Node 24.

To Reproduce

  1. Open any recent workflow run under the Actions tab (for example a CI run on a pull request).
  2. Look at the run summary / annotations panel.
  3. See the "Node.js 20 is deprecated" warning attached to the checkout and setup-node steps.

Expected behavior

No Node 20 deprecation annotations. Every first-party actions/* step should resolve to a major whose action.yml declares using: node24.

Fix needed

  • Bump actions/checkout from @v4 to @v5 in all five workflows (@v5 declares using: node24).
  • Bump actions/setup-node from @v4 to @v5 in audit.yml, main.yml, and release.yml (@v5 declares using: node24).
  • Bump node-version from 22.x to 24.x in audit.yml and from '22' to '24' in release.yml, preserving each file's existing value format.
  • Leave the main.yml CI matrix at [22, 24] — it already covers Node 24, and dropping 22 would reduce test coverage for consumers still on that LTS line.
  • Leave aquasecurity/trivy-action alone; it is SHA-pinned to a third-party release and is out of scope for this change.

Additional context

Same remediation as sourcefuse/loopback4-microservice-catalog issue #2601 / PR #2602. No source or runtime code is affected — the change is confined to .github/workflows/.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions