Skip to content

Upgrade GitHub Actions for Node 24 compatibility#18688

Closed
salmanmkc wants to merge 1 commit intogithub:mainfrom
salmanmkc:upgrade-github-actions-node24
Closed

Upgrade GitHub Actions for Node 24 compatibility#18688
salmanmkc wants to merge 1 commit intogithub:mainfrom
salmanmkc:upgrade-github-actions-node24

Conversation

@salmanmkc
Copy link

Summary

Upgrade GitHub Actions to their latest versions to ensure compatibility with Node 24, as Node 20 will reach end-of-life in April 2026.

Changes

Action Old Version(s) New Version Release Files
actions/checkout 11bd719, 93cb6ef, v4 de0fac2 Release agentics-maintenance.yml, ci.yml, codeql.yml, copilot-maintenance.yml, copilot-setup-steps.yml, docs.yml, format-and-commit.yml, hourly-ci-cleaner.md, install.yml, integration-agentics.yml, license-check.yml, link-check.yml, security-scan.yml, vet.yml
actions/download-artifact fa0a91b, v6 37930b1 Release ci.yml, super-linter.md
actions/github-script v7 v8 Release bot-detection.md, release.md
actions/setup-go 3041bf5, 41dfa10, 4dc6199, d35c59a, v5 4b73464 Release agentics-maintenance.yml, ci.yml, codeql.yml, copilot-setup-steps.yml, daily-syntax-error-quality.md, docs.yml, format-and-commit.yml, integration-agentics.yml, license-check.yml, release.md, security-scan.yml
actions/setup-node 39370e3, 395ad32, cdca736 6044e13 Release agentics-maintenance.yml, ci.yml, copilot-setup-steps.yml, copilot.yml, docs.yml, format-and-commit.yml, test-copilot-github-integration.yml
actions/upload-artifact ea165f8, v4 b7c566a Release ci.yml, copilot.yml, install.yml, license-check.yml, test-copilot-github-integration.yml

Context

Per GitHub's announcement, Node 20 is being deprecated and runners will begin using Node 24 by default starting June 2nd, 2026.

Why this matters

  • Node 20 EOL: April 2026
  • Node 24 default: June 2nd, 2026
  • Action: Update to latest action versions that support Node 24

⚠️ Breaking Changes

  • actions/checkout (v4.2.2 → v6): Major version upgrade — review the release notes for breaking changes
  • actions/setup-go (v5.1.0 → v6): Major version upgrade — review the release notes for breaking changes
  • actions/setup-node (v4.1.0 → v6): Major version upgrade — review the release notes for breaking changes
    • ⚠️ Input always-auth was removed — if your workflow uses it, the step may fail
  • actions/github-script (v7 → v8): Major version upgrade — review the release notes for breaking changes
  • actions/upload-artifact (v4 → v6): Major version upgrade — review the release notes for breaking changes
  • actions/download-artifact (v4 → v7): Major version upgrade — review the release notes for breaking changes

Security Note

Actions that were previously pinned to commit SHAs remain pinned to SHAs (updated to the latest release SHA) to maintain the security benefits of immutable references.

Testing

These changes only affect CI/CD workflow configurations and should not impact application functionality. The workflows should be tested by running them on a branch before merging.

Copilot AI review requested due to automatic review settings February 27, 2026 13:16
@salmanmkc salmanmkc force-pushed the upgrade-github-actions-node24 branch from 7621e4a to e332f78 Compare February 27, 2026 13:19
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Upgrades GitHub Actions workflow dependencies to versions compatible with the upcoming Node 24 runtime on GitHub-hosted runners.

Changes:

  • Updated actions/checkout, actions/setup-go, and actions/setup-node to their newer major versions across CI and maintenance workflows.
  • Updated artifact upload/download actions (actions/upload-artifact, actions/download-artifact) to newer major versions.
  • Updated actions/github-script usage in workflow-driven automation docs.

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated no comments.

Show a summary per file
File Description
.github/workflows/vet.yml Bumps actions/checkout to v6 for vet job compatibility.
.github/workflows/test-copilot-github-integration.yml Updates setup-node and upload-artifact references used by the Copilot integration test workflow.
.github/workflows/super-linter.md Updates download-artifact reference for the Super Linter reporting workflow.
.github/workflows/security-scan.yml Updates pinned SHAs for checkout and setup-go used by security scanning jobs.
.github/workflows/release.md Updates github-script and setup-go used in the release workflow definition.
.github/workflows/link-check.yml Updates pinned actions/checkout SHA to the newer major release.
.github/workflows/license-check.yml Updates pinned checkout, setup-go, and upload-artifact references used for license compliance reporting.
.github/workflows/integration-agentics.yml Updates pinned checkout and setup-go references for integration workflow.
.github/workflows/install.yml Updates pinned checkout and upload-artifact references used by install verification jobs.
.github/workflows/hourly-ci-cleaner.md Updates pinned actions/checkout reference in the CI cleaner workflow doc.
.github/workflows/format-and-commit.yml Updates pinned checkout, setup-go, and setup-node references for formatting automation.
.github/workflows/docs.yml Updates pinned checkout, setup-node, and setup-go references for docs build workflow.
.github/workflows/daily-syntax-error-quality.md Updates setup-go major version used by the daily syntax workflow doc.
.github/workflows/copilot.yml Updates pinned setup-node and upload-artifact references for Copilot workflow.
.github/workflows/copilot-setup-steps.yml Updates pinned checkout, setup-node, and setup-go references for Copilot setup steps.
.github/workflows/copilot-maintenance.yml Updates pinned actions/checkout reference for Copilot maintenance workflow.
.github/workflows/codeql.yml Updates pinned checkout and setup-go references used by CodeQL workflow.
.github/workflows/ci.yml Updates core CI workflow action versions (checkout/setup-go/setup-node/artifacts) for Node 24 runtime compatibility.
.github/workflows/bot-detection.md Updates actions/github-script major version used in bot detection workflow doc.
.github/workflows/agentics-maintenance.yml Updates pinned checkout, setup-go, and setup-node references in agentics maintenance workflow.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@pelikhan
Copy link
Contributor

@copilot recompile

@github-actions
Copy link
Contributor

Hey @salmanmkc 👋 — thanks for flagging the Node 20 deprecation and putting together such a detailed summary of the actions that need upgrading! The concern is legitimate and the research is solid.

However, this PR can't be merged as-is for two reasons:

1. Process violation — community members don't open PRs directly.
The CONTRIBUTING.md is explicit: only core team members create pull requests in this repo, using coding agents. If you're not on the core team, the right path is to open an issue with a detailed agentic plan. A core team member will then pick it up and implement it via a coding agent.

2. The diff is incomplete relative to the description.
The PR description's table lists upgrades across 14+ workflow files (e.g., ci.yml, codeql.yml, agentics-maintenance.yml, etc.), but the actual diff only touches 5 files with 12 lines changed. The bulk of the described upgrades are missing from the branch.

Recommended next step: Close this PR and open an issue with your agentic plan instead. The research you've already done maps perfectly to what a good agentic plan looks like!

If you'd like a hand turning this into a proper issue plan, you can assign the following prompt to your coding agent:

Research and create a GitHub issue for the github/gh-aw repository with a complete agentic plan to upgrade all GitHub Actions to their latest versions for Node 24 compatibility.

The issue should:
1. Explain the motivation: Node 20 EOL (April 2026) and GitHub's announcement that Node 24 will be the default on runners starting June 2, 2026.
2. Enumerate every affected workflow file under .github/workflows/ that references an outdated action version (actions/checkout, actions/setup-go, actions/setup-node, actions/upload-artifact, actions/download-artifact, actions/github-script).
3. For each action, specify: current pinned SHA or version tag → new pinned SHA (latest release SHA) and version tag.
4. Call out all major-version bumps and their known breaking changes (e.g., actions/setup-node v6 removes the `always-auth` input).
5. Provide step-by-step instructions for the implementing agent: which files to edit, what string to replace, and how to verify correctness.
6. Note that actions currently pinned to commit SHAs must remain pinned to SHAs (update to the new release SHA, add a `# vX.Y.Z` comment).
7. Include acceptance criteria: all CI workflows pass after the upgrade.

Generated by Contribution Check

@pelikhan
Copy link
Contributor

Let's run your action into a new PR once #18692 is merged.

Updates .md workflow source files and regenerated .lock.yml via gh aw compile.
@salmanmkc salmanmkc force-pushed the upgrade-github-actions-node24 branch from 5e6a31d to 32fb43c Compare February 27, 2026 14:54
@pelikhan pelikhan closed this Feb 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants