Skip to content

Conversation

@tyler-dot-earth
Copy link

@tyler-dot-earth tyler-dot-earth commented Dec 14, 2025

Reduces node/engine version to v22.19+ v20+

Fixes #15 (opened by me)

Summary by CodeRabbit

  • Documentation

    • Updated installation prerequisites to document supported Node.js versions.
  • Chores

    • Updated Node.js configuration settings for runtime and build environments.

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link

coderabbitai bot commented Dec 14, 2025

Note

.coderabbit.yaml has unrecognized properties

CodeRabbit is using all valid settings from your configuration. Unrecognized properties (listed below) have been ignored and may indicate typos or deprecated fields that can be removed.

⚠️ Parsing warnings (1)
Validation error: Unrecognized key(s) in object: 'review'
⚙️ Configuration instructions
  • Please see the configuration documentation for more information.
  • You can also validate your configuration using the online YAML validator.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Walkthrough

Updated Node.js version requirements from pinning v24.11.1 to supporting v20 and above. Build configuration and documentation adjusted to reflect expanded compatibility with Node.js 20.x, 22.x, and 24.x versions.

Changes

Cohort / File(s) Summary
Version Compatibility Updates
README.md, package.json, tsup.config.ts
Updated Node.js minimum version from v24.11.1 to >=20. Modified engines.node field, adjusted tsup build target from 'node24' to 'node20', and added prerequisite note documenting CI coverage for versions 20.x, 22.x, and 24.x.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Poem

🐰 Hop hop, the versions now align,
From twenty onwards, all will shine,
Node support grows wide and free,
Twenty, twenty-two, and twenty-four—happy spree! 🌱

Pre-merge checks and finishing touches

❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Linked Issues check ❓ Inconclusive The PR partially addresses issue #15's objective. While it updates Node.js requirements from v24 to allow v22.19, the reviewer's feedback requested setting engines to '>=20' and tsup target to 'node20', but the PR only updated to '>=20' in package.json and 'node20' in tsup.config.ts without the suggested broader compatibility. Verify that the implemented changes (engines: '>=20' and tsup target: 'node20') fully satisfy the reviewer's suggestion and the original issue's intent to support Node v22.19 and document broader compatibility.
✅ Passed checks (4 passed)
Check name Status Explanation
Out of Scope Changes check ✅ Passed All changes (README.md Node prerequisite note, package.json engines field, tsup.config.ts build target) are directly related to the PR objective of updating Node.js version requirements and are within scope.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Title check ✅ Passed The PR title states 'chore: support node 20+ runtime' which accurately summarizes the main change: updating Node.js engine requirements from 24.11.1 to >=20.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

🧹 Nitpick comments (1)
package.json (1)

52-52: Consider aligning @types/node version with minimum Node.js requirement.

While @types/node version 24.10.1 doesn't prevent running on Node.js 22.x, having type definitions for Node.js 24 when the minimum runtime is 22.19.0 could lead to accidentally using Node 24+ features that would fail at runtime.

Consider downgrading to @types/node in the 22.x range to match the minimum supported runtime version and prevent inadvertent use of unavailable APIs.

📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between b1f4e14 and 2971e4f.

📒 Files selected for processing (4)
  • .mise.toml (1 hunks)
  • README.md (1 hunks)
  • package.json (1 hunks)
  • tsup.config.ts (1 hunks)
🔇 Additional comments (2)
README.md (1)

52-53: Update README documentation to reflect actual CI test matrix.

The CI configuration tests on Node.js 20.x, 22.x, and 24.x, but the README (lines 52-53) only mentions testing on 22.x and 24.x. Additionally, if Node.js 22.19.0 is the minimum required version, testing on 20.x contradicts this requirement. Clarify whether:

  1. The minimum requirement should be updated to include Node.js 20.x support, or
  2. The CI matrix should be reduced to only 22.x and 24.x, and the README should be updated accordingly.
package.json (1)

14-14: Good change from exact to range constraint.

The change from an exact version to a minimum version range is a best practice, allowing flexibility for users while enforcing the minimum requirement. The codebase is compatible with Node.js 22.19.0—it uses only standard Node.js APIs available since Node 12+ (such as createRequire from node:module, standard Proxy, and process APIs), with no Node 24+ specific features. The build target in tsup.config.ts is already set to node22, confirming this change aligns with the actual project configuration.

@codepunkt
Copy link
Owner

Thanks for opening this.

In the CI setup, I even test on 20.x- so defining tsup's target as "node20" and package.json engines as ">=20" would be fine with me. The mise setup is for my personal usage, and I expect people working on the library that have mise installed to be fine with getting whatever node version is specified in it's config.

Can you update your PR accordingly?

@tyler-dot-earth
Copy link
Author

Thanks for opening this.

In the CI setup, I even test on 20.x- so defining tsup's target as "node20" and package.json engines as ">=20" would be fine with me. The mise setup is for my personal usage, and I expect people working on the library that have mise installed to be fine with getting whatever node version is specified in it's config.

Can you update your PR accordingly?

i reverted the mise change and adjusted to >=20 elsewhere.

let me know if i misinterpreted your feedback or can otherwise adjust this PR. thanks - really appreciate the fast response/openness.

@tyler-dot-earth tyler-dot-earth changed the title chore: support node 22.19+ runtime chore: support node 20+ runtime Dec 14, 2025
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.

Node v24 required by package.json engines (but Node v22.19 seems to work fine)

2 participants