Skip to content

[P2] Migrate GitHub Actions from Node.js 20 to Node.js 24 #50

Description

@phranck

Problem

GitHub Actions emits Node.js 20 deprecation annotations in the CI workflow. The warnings currently identify the pinned actions/checkout@v4.3.1, actions/upload-artifact@v4.6.2, and actions/download-artifact@v4.3.0 revisions in .github/workflows/ci.yml.

GitHub-hosted runners currently force these actions onto Node.js 24, so CI remains green, but the pinned revisions are deprecated and may stop working once compatibility enforcement changes.

Proposed solution

  • Update every checkout, artifact upload, and artifact download reference to a current stable Node.js 24-backed release.
  • Review the major-version migration notes and preserve all existing checkout and artifact behavior.
  • Continue pinning actions by full commit SHA and update the adjacent version comments.
  • Keep the permissions model and deploy flow unchanged.

Acceptance criteria

  • No CI job reports a Node.js 20 deprecation annotation.
  • macOS, Linux, SwiftUI snapshots, API compatibility assembly, test badge update, and DocC deployment remain functional.
  • Actionlint and the repository CI-configuration validation pass.
  • All third-party actions remain pinned by full commit SHA.

Parallelization

This can be implemented independently of SDK and API work. It only conflicts with other changes to .github/workflows/ci.yml.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestparallel-readyCan proceed independently of the current critical pathpriority: mediumImportant follow-up after critical and high dependencies

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions