Skip to content

ci: migrate release/CI workflows off Node.js 20 actions #9

@hidetzu

Description

@hidetzu

Motivation

GitHub Actions runners will switch to Node.js 24 by default on 2026-06-02, and Node.js 20 will be removed on 2026-09-16. The current workflows depend on actions still pinned to Node.js 20:

  • `actions/checkout@v4`
  • `mlugg/setup-zig@v2`
  • `softprops/action-gh-release@v2`

Today these emit deprecation warnings on every run (visible in the v0.2.0 release run); they will silently fail (or be forced into a compatibility mode) once the cutover happens.

Tasks

  • Check whether each action has a newer release that runs on Node.js 24, and upgrade if available.
  • If no upgrade exists yet, opt in early via `FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true` on the affected workflow(s) so we surface failures before the forced cutover.
  • Verify the CI workflow (`.github/workflows/ci.yml`) and release workflow (`.github/workflows/release.yml`) both pass after the change.
  • Confirm a tag-driven release run still produces all 4 platform assets (Linux glibc, macOS Intel, macOS Apple Silicon, Windows).

References

Not urgent — purely preventative work before the 2026-06-02 cutover.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions