Skip to content

chore(deps): bump optional serialport to ^13.0.0#608

Merged
yaacov merged 1 commit intomainfrom
update-serialport-dependencies
Mar 20, 2026
Merged

chore(deps): bump optional serialport to ^13.0.0#608
yaacov merged 1 commit intomainfrom
update-serialport-dependencies

Conversation

@yaacov
Copy link
Copy Markdown
Owner

@yaacov yaacov commented Mar 20, 2026

  • Refresh lockfile for serialport 13.x (@serialport/bindings-cpp 13)
  • Document Node 20+ requirement for bundled serialport range in README

Summary by CodeRabbit

Release Notes

  • Documentation

    • Added guidance on serialport 13.x requirements and compatibility options for older Node.js versions.
  • Chores

    • Updated serialport optional dependency to version 13.x.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Mar 20, 2026

📝 Walkthrough

Walkthrough

This PR updates the serialport optional dependency from version 12.x to 13.x in package.json and adds documentation clarifying that version 13.x requires Node.js 20+ with guidance for older Node versions.

Changes

Cohort / File(s) Summary
Serialport Dependency Update
package.json, README.md
Updated serialport optional dependency range from ^12.0.0 to ^13.0.0 and added documentation note specifying that version 13.x requires Node.js 20+, with guidance for users on older Node versions to install compatible versions explicitly or use TCP-only flows.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Possibly related PRs

  • publish-ci #606: Modifies the package.json serialport dependency declaration similar to this PR.

Poem

🐰 From twelve to thirteen, the version does leap,
Node twenty and beyond, compatibility to keep,
For older friends still clinging to the past,
Instructions provided so nothing breaks fast! ✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The pull request title accurately describes the main change: updating the optional serialport dependency version to ^13.0.0, which is the primary and most important change in the changeset.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch update-serialport-dependencies
📝 Coding Plan
  • Generate coding plan for human review comments

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.

- Refresh lockfile for serialport 13.x (@serialport/bindings-cpp 13)
- Document Node 20+ requirement for bundled serialport range in README
@yaacov yaacov force-pushed the update-serialport-dependencies branch from dae0e79 to e54dc1e Compare March 20, 2026 10:03
Copy link
Copy Markdown
Contributor

@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: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@README.md`:
- Around line 37-38: Update the README sentence that suggests "for example 12.x"
to list explicit serialport fallback versions and install commands for clarity:
replace the vague "12.x" suggestion with the recommended mappings and example
npm commands (e.g., for Node 18 and older use `npm install serialport@11`, for
Node 16 and older use `npm install serialport@10`, and for Node 12–13 use `npm
install serialport@8.x`) so users have concrete install instructions; edit the
paragraph containing the serialport compatibility note in README.md accordingly.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: d77de982-33a4-4811-9dd4-54d85baaef88

📥 Commits

Reviewing files that changed from the base of the PR and between b5e3a59 and e54dc1e.

⛔ Files ignored due to path filters (1)
  • package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (2)
  • README.md
  • package.json

Comment thread README.md
Comment on lines +37 to +38
The version range pulled in by this package targets **serialport 13.x**, which requires **Node.js 20 or newer**. If you need serial on an older Node release, install a compatible `serialport` major (for example 12.x) explicitly alongside `modbus-serial`, or use `--no-optional` and TCP-only flows.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🌐 Web query:

serialport Node.js version compatibility matrix for 12.x and 13.x, and recommended install command for Node 18 and older

💡 Result:

SerialPort Node.js version compatibility matrix for 12.x and 13.x: Node.js 12.x: Last functioning release serialport@10 (unsupported now) Node.js 13.x: Supported by serialport ~8.x (e.g. v8.0.7 fixed Node 13 compile issues; dropped in v11.0.0) Current versions (v13.0.0 as of Dec 2024): Support Active LTS, Maintenance LTS, Current (Node 20,22,24+; dropped Node 18 in v13, Node 16/18 in v13) Recommended install for Node 18 and older: npm install serialport@11 (last supporting Node 18; for older like 12/13 use @10 or @8.x respectively). For Node 18, may need to build from source if no prebuilts or use --unsafe-perm with sudo. General: npm install serialport

Citations:


Specify serialport version in the install command for clarity.

The README mentions installing a "compatible serialport major (for example 12.x)" for older Node releases, but serialport 12.x does not exist as a published release. Based on the compatibility matrix, the correct fallback versions are:

  • Node 18 and older: npm install serialport@11
  • Node 16 and older: npm install serialport@10
  • Node 12–13: npm install serialport@8.x

Consider updating the README snippet to explicitly recommend one of these commands instead of "12.x" to prevent user confusion.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@README.md` around lines 37 - 38, Update the README sentence that suggests
"for example 12.x" to list explicit serialport fallback versions and install
commands for clarity: replace the vague "12.x" suggestion with the recommended
mappings and example npm commands (e.g., for Node 18 and older use `npm install
serialport@11`, for Node 16 and older use `npm install serialport@10`, and for
Node 12–13 use `npm install serialport@8.x`) so users have concrete install
instructions; edit the paragraph containing the serialport compatibility note in
README.md accordingly.

@yaacov yaacov merged commit 9969d55 into main Mar 20, 2026
4 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.

1 participant