Skip to content

chore: run Action on Node 24 per GitHub Node 20 deprecation#99

Open
kikils wants to merge 1 commit intogithub:mainfrom
kikils:chore/upgrade-node-24
Open

chore: run Action on Node 24 per GitHub Node 20 deprecation#99
kikils wants to merge 1 commit intogithub:mainfrom
kikils:chore/upgrade-node-24

Conversation

@kikils
Copy link
Copy Markdown

@kikils kikils commented Apr 2, 2026

Why

GitHub is deprecating Node 20 on Actions runners and recommends updating actions to Node 24.

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

What

  • Set runs.using to node24 in action.yml.
  • Bump .node-version to match.
  • Refresh package-lock.json with npm install under Node 24.

Testing

  • npm run all
Details
$ node -v    
v24.14.1
$ npm run all

> command@0.0.0 all
> npm run format && npm run lint && npm run package


> command@0.0.0 format
> prettier --write '**/*.js'

__tests__/functions/actions-status.test.js 78ms (unchanged)
__tests__/functions/allowlist.test.js 32ms (unchanged)
__tests__/functions/context-check.test.js 16ms (unchanged)
__tests__/functions/post-reactions.test.js 6ms (unchanged)
__tests__/functions/post.test.js 22ms (unchanged)
__tests__/functions/prechecks.test.js 85ms (unchanged)
__tests__/functions/react-emote.test.js 4ms (unchanged)
__tests__/functions/string-to-array.test.js 5ms (unchanged)
__tests__/functions/trigger-check.test.js 5ms (unchanged)
__tests__/functions/valid-permissions.test.js 4ms (unchanged)
__tests__/main.test.js 15ms (unchanged)
__tests__/version.test.js 5ms (unchanged)
src/functions/action-status.js 7ms (unchanged)
src/functions/allowlist.js 12ms (unchanged)
src/functions/colors.js 2ms (unchanged)
src/functions/context-check.js 7ms (unchanged)
src/functions/parameters.js 2ms (unchanged)
src/functions/post-reactions.js 2ms (unchanged)
src/functions/post.js 4ms (unchanged)
src/functions/prechecks.js 19ms (unchanged)
src/functions/react-emote.js 3ms (unchanged)
src/functions/string-to-array.js 2ms (unchanged)
src/functions/trigger-check.js 1ms (unchanged)
src/functions/valid-permissions.js 4ms (unchanged)
src/main.js 7ms (unchanged)
src/version.js 1ms (unchanged)

> command@0.0.0 lint
> eslint src/**/*.js


> command@0.0.0 package
> ncc build src/main.js -o dist --source-map --license licenses.txt

ncc: Version 0.38.4
ncc: Compiling file index.js into CJS
  40kB  dist/sourcemap-register.js
  41kB  dist/licenses.txt
1207kB  dist/index.js
1409kB  dist/index.js.map
1409kB  dist/index.js.map
2697kB  [2011ms] - ncc 0.38.4

$ git diff
  • npm run test
Details
$ npm run test

> command@0.0.0 test
> (COMMAND_ACTION_JEST_TEST=true jest && make-coverage-badge --output-path ./badges/coverage.svg) || make-coverage-badge --output-path ./badges/coverage.svg

 PASS  __tests__/functions/context-check.test.js
 PASS  __tests__/functions/actions-status.test.js
 PASS  __tests__/functions/trigger-check.test.js
 PASS  __tests__/functions/prechecks.test.js
 PASS  __tests__/functions/post.test.js
 PASS  __tests__/version.test.js
 PASS  __tests__/functions/allowlist.test.js
 PASS  __tests__/functions/valid-permissions.test.js
 PASS  __tests__/functions/post-reactions.test.js
 PASS  __tests__/main.test.js
 PASS  __tests__/functions/react-emote.test.js
 PASS  __tests__/functions/string-to-array.test.js
-----------------------|---------|----------|---------|---------|-------------------
File                   | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s 
-----------------------|---------|----------|---------|---------|-------------------
All files              |     100 |    99.05 |     100 |     100 |                   
 src                   |     100 |      100 |     100 |     100 |                   
  main.js              |     100 |      100 |     100 |     100 |                   
  version.js           |     100 |      100 |     100 |     100 |                   
 src/functions         |     100 |    99.02 |     100 |     100 |                   
  action-status.js     |     100 |      100 |     100 |     100 |                   
  allowlist.js         |     100 |      100 |     100 |     100 |                   
  colors.js            |     100 |      100 |     100 |     100 |                   
  context-check.js     |     100 |      100 |     100 |     100 |                   
  parameters.js        |     100 |    66.66 |     100 |     100 | 8                 
  post-reactions.js    |     100 |      100 |     100 |     100 |                   
  post.js              |     100 |      100 |     100 |     100 |                   
  prechecks.js         |     100 |    99.15 |     100 |     100 | 345               
  react-emote.js       |     100 |      100 |     100 |     100 |                   
  string-to-array.js   |     100 |      100 |     100 |     100 |                   
  trigger-check.js     |     100 |      100 |     100 |     100 |                   
  valid-permissions.js |     100 |      100 |     100 |     100 |                   
-----------------------|---------|----------|---------|---------|-------------------

Test Suites: 12 passed, 12 total
Tests:       96 passed, 96 total
Snapshots:   0 total
Time:        2.478 s, estimated 3 s
Ran all test suites.
Wrote coverage badge to: ./badges/coverage.svg

@kikils kikils marked this pull request as ready for review April 2, 2026 16:09
Copilot AI review requested due to automatic review settings April 2, 2026 16:09
Copy link
Copy Markdown

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

Updates this JavaScript GitHub Action and repo tooling to align with GitHub Actions runner guidance around the Node 20 deprecation by moving execution and development workflows to Node 24.

Changes:

  • Switch the action runtime from node20 to node24 in action.yml.
  • Bump the repository’s pinned Node version to 24.14.1 via .node-version (used by CI).
  • Refresh package-lock.json to the dependency graph produced under the updated Node/npm toolchain (transitive updates across build/test tooling).

Reviewed changes

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

File Description
action.yml Runs the action on the Node 24 runtime.
.node-version Pins CI/local dev Node version to 24.14.1 via setup-node’s node-version-file.
package-lock.json Updates resolved dependency versions to match the Node 24 install resolution.

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

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