Skip to content

Conversation

@stevenjoezhang
Copy link
Member

What does it do?

Versions of Node.js prior than 18 are already in End-Of-Life status. We should upgrade the supported Node.js versions in package.json. The required Node.js versions for other Hexo plugins also need to be upgraded accordingly.
Besides, require(esm) is now enabled by default since Node.js 20.19.0

Screenshots

Pull request tasks

  • Add test cases for the changes.
  • Passed the CI test.

@github-actions
Copy link

How to test

git clone -b node https://github.com/hexojs/hexo.git
cd hexo
npm install
npm test

@coveralls
Copy link

Pull Request Test Coverage Report for Build 16492920209

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall first build on node at 99.526%

Totals Coverage Status
Change from base Build 15609358336: 99.5%
Covered Lines: 9859
Relevant Lines: 9906

💛 - Coveralls

@stevenjoezhang stevenjoezhang requested a review from Copilot July 24, 2025 09:25
Copy link

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

This pull request updates the minimum Node.js version requirement from 18 to 20.19.0, removing support for Node.js 18 which has reached End-Of-Life status. The change also adds support for Node.js 24 in CI workflows.

  • Updates minimum Node.js version requirement to 20.19.0 in package.json
  • Updates CI workflows to test against Node.js versions 20, 22, and 24 instead of 18, 20, and 22
  • Aligns with Node.js lifecycle and enables require(esm) functionality available by default in Node.js 20.19.0+

Reviewed Changes

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

File Description
package.json Updates engines.node requirement from ">=18" to ">=20.19.0"
.github/workflows/tester.yml Updates CI matrix to test Node.js versions 20, 22, 24
.github/workflows/benchmark.yml Updates benchmark workflows to use Node.js versions 20, 22, 24

@stevenjoezhang stevenjoezhang mentioned this pull request Jul 24, 2025
2 tasks
@stevenjoezhang stevenjoezhang merged commit c87e805 into master Jul 24, 2025
22 checks passed
@stevenjoezhang stevenjoezhang deleted the node branch July 24, 2025 10:40
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.

5 participants