Skip to content

fix: Update actions to Node 24#825

Merged
sonukapoor merged 2 commits into
OWASP:mainfrom
Chisnet:update_node_version_usage
Jul 9, 2026
Merged

fix: Update actions to Node 24#825
sonukapoor merged 2 commits into
OWASP:mainfrom
Chisnet:update_node_version_usage

Conversation

@Chisnet

@Chisnet Chisnet commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Summary

Updates actions still using Node 20 to Node 24 (Current LTS), including the Github Marketplace action, as Node 20 is past End Of Life.

Why this change

Fixes warnings and forced node version upgrade when running actions:

https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/

What changed

  • Switched the CI, Release, and Self Scan actions to using Node 24
  • Updated the GitHub Marketplace action to default to Node 24

Validation

I ran both the tests and build successfully. The 3 actions mentioned are also already being force ran on Node 24 in any case, just exhibiting the warning mentioned, so have already been run many times on Node 24.

User-facing impact

Does this change:

  • affect scanning behavior
  • affect output formatting
  • affect JSON output
  • affect docs only

Notes

The change in the default node version for the GitHub Marketplace action could in theory cause the action to start failing on self-hosted runners that can't run Node 24, but this would be easily fixed by updating the setting to set the version manually back to Node 20 in those cases. Where this action is running on official GitHub action runners it already forces Node 24 even if set to Node 20 or below since support has been dropped.

@Chisnet Chisnet requested a review from sonukapoor as a code owner July 8, 2026 08:37

@sonukapoor sonukapoor left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Thanks for this Chris - Node 20 EOL was April 2025 so this was definitely overdue. One file got missed: docs-site.yml still has node-version: 22 on line 38. After this PR merges the repo would have three workflows at 24 and one at 22. Could you bump that one too, or add a comment explaining why it intentionally stays at 22?

On action.yml: bumping the default from "20" to "24" is the right direction, but it does silently upgrade the Node environment for anyone who hasn't pinned node-version in their workflow. I don't think it'll break anything - the CLI has no native addon dependency and engines is >=18 - but worth a note in the PR description so adopters are aware.

Otherwise looks good. The codebase already has @types/node: ^24.0.0 in devDependencies, so CI is now consistent with what the code is typed against.

@Chisnet

Chisnet commented Jul 8, 2026

Copy link
Copy Markdown
Contributor Author

@sonukapoor Thanks, I'd missed the docs-site.yml one as was looking for Node 20 specifically with my search since that's what I'd encountered raising warnings in my own usage. Have updated that as well now. I also updated a missed update to the action docs, so have updated those as well.

Regarding updating the PR description I already have the note at the end about behaviour. I've updated it slightly as GitHub action runners are already forcing Node 24 regardless of if a user has it set to 20 via the current default, so only the subset of users running an unpinned version of the action on self-hosted runners aren't getting Node 24 anyway. Not sure if there's somewhere else I need to add this note?

@sonukapoor sonukapoor left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Thanks for adding docs-site.yml and updating the docs table - that covers everything from the previous review. The codebase already has @types/node: ^24.0.0 in devDependencies so CI is now consistent with what the code is typed against. Good to go.

@sonukapoor sonukapoor merged commit fcb5a9d into OWASP:main Jul 9, 2026
9 checks passed
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.

2 participants