Skip to content

Conversation

@sudo-suhas
Copy link
Owner

@sudo-suhas sudo-suhas commented Nov 23, 2025

Add comprehensive support for Node.js LTS versions 20.x, 22.x, and
24.x, while dropping support for older versions. The changes ensure
the library works correctly across all current LTS releases.

Update package.json engines field to require Node.js >=20.0.0. Update
GitHub Actions CI to test on all three LTS versions using the latest
stable action versions (actions/checkout@v4, actions/setup-node@v4).

Update dependencies for Node.js LTS compatibility:

  • cross-env: 5.2.0 → 7.0.3
  • sinon: 6.1.3 → 17.0.2
  • nyc: 12.0.2 → 15.1.0
  • eslint: 5.1.0 → 8.57.1 (required for Node.js 24)
  • eslint-config-prettier: 2.9.0 → 9.1.0
  • eslint-plugin-ava: 4.5.1 → 14.0.0
  • eslint-plugin-prettier: 2.6.2 → 5.2.1
  • prettier: 1.13.7 → 3.4.2
  • Add @babel/eslint-parser to replace deprecated babel-eslint

Modernize linting infrastructure to support Node.js 24 by upgrading
ESLint to v8 and Prettier to v3. Remove deprecated babel-eslint and
eslint-config-chatur packages. Update ESLint configuration files for
modern standards. Apply Prettier v3 formatting to codebase.

Create .nvmrc file pinned to Node.js 24 and .releaserc.json for
explicit semantic-release configuration. Move release config from
package.json to dedicated configuration file.

Enhance GitHub Actions with OIDC for trusted npm publishing with
provenance attestation. Update semantic-release to version 25 for
OIDC support. Remove NPM_TOKEN secret requirement as authentication
now uses OIDC. Add proper permissions for release job and configure
registry URL for npm.

All 647 tests pass with 100% code coverage on Node.js 20.x, 22.x, and
24.x. Browser builds (UMD) and documentation builds succeed on all
Node.js versions with no critical deprecation warnings.

Note: Master branch already had modern tooling (webpack 5, babel 7,
TypeScript 5.9.2), eliminating OpenSSL compatibility concerns.

BREAKING CHANGE: Minimum Node.js version is now 20.0.0. Users must
upgrade to Node.js 20.x, 22.x, or 24.x to use this version.

Add comprehensive support for Node.js LTS versions 20.x, 22.x, and
24.x, while dropping support for older versions. The changes ensure
the library works correctly across all current LTS releases.

Update package.json engines field to require Node.js >=20.0.0. Update
GitHub Actions CI to test on all three LTS versions using the latest
stable action versions (actions/checkout@v4, actions/setup-node@v4).

Update dependencies for Node.js LTS compatibility:
  - cross-env: 5.2.0 → 7.0.3
  - sinon: 6.1.3 → 17.0.2
  - nyc: 12.0.2 → 15.1.0
  - eslint: 5.1.0 → 8.57.1 (required for Node.js 24)
  - eslint-config-prettier: 2.9.0 → 9.1.0
  - eslint-plugin-ava: 4.5.1 → 14.0.0
  - eslint-plugin-prettier: 2.6.2 → 5.2.1
  - prettier: 1.13.7 → 3.4.2
  - Add @babel/eslint-parser to replace deprecated babel-eslint

Modernize linting infrastructure to support Node.js 24 by upgrading
ESLint to v8 and Prettier to v3. Remove deprecated babel-eslint and
eslint-config-chatur packages. Update ESLint configuration files for
modern standards. Apply Prettier v3 formatting to codebase.

Create .nvmrc file pinned to Node.js 24 and .releaserc.json for
explicit semantic-release configuration. Move release config from
package.json to dedicated configuration file.

Enhance GitHub Actions with OIDC for trusted npm publishing with
provenance attestation. Update semantic-release to version 25 for
OIDC support. Remove NPM_TOKEN secret requirement as authentication
now uses OIDC. Add proper permissions for release job and configure
registry URL for npm.

All 647 tests pass with 100% code coverage on Node.js 20.x, 22.x, and
24.x. Browser builds (UMD) and documentation builds succeed on all
Node.js versions with no critical deprecation warnings.

Note: Master branch already had modern tooling (webpack 5, babel 7,
TypeScript 5.9.2), eliminating OpenSSL compatibility concerns.

BREAKING CHANGE: Minimum Node.js version is now 20.0.0. Users must
upgrade to Node.js 20.x, 22.x, or 24.x to use this version.
@sudo-suhas sudo-suhas merged commit 374bf56 into master Nov 23, 2025
8 checks passed
@sudo-suhas sudo-suhas deleted the feat/node-24 branch November 23, 2025 14:05
@github-actions
Copy link

🎉 This PR is included in version 4.0.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant