Skip to content

Node v24.11.1 nsolid v6.1.0 release#394

Merged
santigimeno merged 93 commits intonode-v24.x-nsolid-v6.xfrom
node-v24.11.1-nsolid-v6.1.0-release
Dec 3, 2025
Merged

Node v24.11.1 nsolid v6.1.0 release#394
santigimeno merged 93 commits intonode-v24.x-nsolid-v6.xfrom
node-v24.11.1-nsolid-v6.1.0-release

Conversation

@santigimeno
Copy link
Copy Markdown
Member

@santigimeno santigimeno commented Dec 3, 2025

Summary by CodeRabbit

  • New Features

    • Added experimental --experimental-pointer-compression-shared-cage build flag for V8 pointer compression configuration.
    • Enhanced benchmark CPU utility with governor detection and management commands.
    • Added new VM and ESM module benchmarks for performance measurement.
  • Bug Fixes

    • Updated inspector protocol implementations to improve CBOR and JSON handling.
    • Fixed race condition in node-tar dependency.
  • Dependencies

    • Bumped corepack to 0.34.2.
    • Updated npm to 11.6.2 with dependency updates.
    • Updated inspector protocol and GoogleTest.
  • Documentation

    • Updated test documentation with wildcard pattern examples.
    • Refined npm command documentation for clarity and consistency.

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

richardlau and others added 30 commits October 28, 2025 16:43
PR-URL: nodejs/node#60419
Refs: nodejs/node#60050
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Richard Lau <richard.lau@ibm.com>
Reviewed-By: Jake Yuesong Li <jake.yuesong@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
PR-URL: nodejs/node#60467
Refs: nodejs/nodejs.org#8280
Reviewed-By: Zeyu "Alex" Yang <himself65@outlook.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Filip Skokan <panva.ip@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
PR-URL: nodejs/node#59999
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
PR-URL: nodejs/node#60120
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de>
Add file attribute normalization in JUnit test output transform to
support upcoming file attribute feature in JUnit XML reporter.

PR-URL: nodejs/node#59432
Fixes: nodejs/node#59422
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
Reviewed-By: Pietro Marchini <pietro.marchini94@gmail.com>
Add file attribute to JUnit testcase elements when file information
is available in test event data.

PR-URL: nodejs/node#59432
Fixes: nodejs/node#59422
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
Reviewed-By: Pietro Marchini <pietro.marchini94@gmail.com>
PR-URL: nodejs/node#60134
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com>
PR-URL: nodejs/node#60135
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Tim Perry <pimterry@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
PR-URL: nodejs/node#59853
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
Add a delay before writing the files to ensure that the watcher receives
the notifications.

Fixes: nodejs/node#60051
Refs: nodejs/node#52601
PR-URL: nodejs/node#60060
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
PR-URL: nodejs/node#60144
Reviewed-By: Richard Lau <richard.lau@ibm.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
PR-URL: nodejs/node#60148
Reviewed-By: Richard Lau <richard.lau@ibm.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Corrects the misspelling of "privateSynbol" to "privateSymbol".

PR-URL: nodejs/node#60155
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Richard Lau <richard.lau@ibm.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
PR-URL: nodejs/node#59890
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
PR-URL: nodejs/node#60163
Reviewed-By: Daeyeon Jeong <daeyeon.dev@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
PR-URL: nodejs/node#60173
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Reviewed-By: Vinícius Lourenço Claro Cardoso <contact@viniciusl.com.br>
Reviewed-By: Richard Lau <richard.lau@ibm.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
PR-URL: nodejs/node#60065
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
...and other minor cleanups

PR-URL: nodejs/node#60061
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
* Track memory held by the Lock instance
* Clean up some Utf8/TwoByteString handling

PR-URL: nodejs/node#60061
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
PR-URL: nodejs/node#60179
Reviewed-By: Richard Lau <richard.lau@ibm.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
PR-URL: nodejs/node#60168
Reviewed-By: Jordan Harband <ljharb@gmail.com>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
PR-URL: nodejs/node#60182
Refs: https://discord.com/channels/425824580918181889/425824580918181891/1425966053242048584
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
PR-URL: nodejs/node#60209
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
This reverts commit 9790315e158a0560932595ff9df9c598e1c2c285.

Refs: nodejs/node#59952
PR-URL: nodejs/node#60126
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
PR-URL: nodejs/node#60208
Reviewed-By: Richard Lau <richard.lau@ibm.com>
Reviewed-By: Daeyeon Jeong <daeyeon.dev@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Tim Perry <pimterry@gmail.com>
Fixes the constructor name in the stack tree for _errnoException.

PR-URL: nodejs/node#60156
Reviewed-By: Daeyeon Jeong <daeyeon.dev@gmail.com>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
PR-URL: nodejs/node#60062
Fixes: nodejs/node#60025
Reviewed-By: Tim Perry <pimterry@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
PR-URL: nodejs/node#60219
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
PR-URL: nodejs/node#60224
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com>
Flarna and others added 24 commits November 7, 2025 18:11
There is ongoing work to replace async customization hooks by a
synchronous variant.
As a result bugs/design flaws or the async variant (thread leak,
overhead) are not addressed.
Adapt stability index to avoid wrong assumptions they might move to
stable.

Refs: nodejs/loaders#201
Refs: nodejs/loaders#198
PR-URL: nodejs/node#60302
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Jacob Smith <jacob@frende.me>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Darshan Sen <raisinten@gmail.com>
PR-URL: nodejs/node#60281
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
PR-URL: nodejs/node#60313
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
The AnyTraits::Parse() method in cares_wrap.cc will "Parse CAA records"
as the code comment suggests. The tables in doc should indicate this as
well.

PR-URL: nodejs/node#58899
Reviewed-By: Tim Perry <pimterry@gmail.com>
Reviewed-By: Ethan Arrowood <ethan@arrowood.dev>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
- This updates the comments that assume loader hooks must be async
- Differentiate the sync/async loader hook paths in naming
  `#customizations` is now `#asyncLoaderHooks` to make it clear
  it's from the async APIs.
- Differentiate the paths running on the loader hook thread
  (affects the loading of async other loader hooks and are async)
  v.s. paths on the main thread calling out to code on the loader
  hook thread (do not handle loading of other async loader hooks, and
  can be sync by blocking).
  - `Hooks` is now `AsyncLoaderHooksOnLoaderHookWorker`
  - `CustomizedModuleLoader` is now
    `AsyncLoaderHooksProxiedToLoaderHookWorker` and moved into
    `lib/internal/modules/esm/hooks.js` as it implements the same
    interface as `AsyncLoaderHooksOnLoaderHookWorker`
  - `HooksProxy` is now `AsyncLoaderHookWorker`
  - Adjust the JSDoc accordingly
- Clarify the "loader worker" as the "async loader hook worker"
  i.e. when there's no _async_ loader hook registered, there won't
  be this worker, to avoid the misconception that this worker
  is spawned unconditionally.
- The code run on the loader hook worker to process
  `--experimental-loader` is moved into
  `lib/internal/modules/esm/worker.js` for clarity.
- The initialization configuration `forceDefaultLoader` is split
  into `shouldSpawnLoaderHookWorker` and `shouldPreloadModules`
  as those can be separate.
- `--experimental-vm-modules` is now processed during pre-execution
  and no longer part of the initialization of the built-in ESM
  loader, as it only exposes the vm APIs of ESM, and is unrelated
  to built-in ESM loading.

PR-URL: nodejs/node#60278
Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com>
PR-URL: nodejs/node#60360
Reviewed-By: Richard Lau <richard.lau@ibm.com>
Reviewed-By: Abdirahim Musse <abdirahim.musse@ibm.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
PR-URL: nodejs/node#60330
Refs: nodejs/node#55390
Reviewed-By: Chemi Atlow <chemi@atlow.co.il>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Pietro Marchini <pietro.marchini94@gmail.com>
PR-URL: nodejs/node#60367
Refs: https://github.com/nodejs/node/actions/runs/18694915575/job/53309761263?pr=60343
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
PR-URL: nodejs/node#60374
Reviewed-By: Filip Skokan <panva.ip@gmail.com>
Reviewed-By: Richard Lau <richard.lau@ibm.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
This is the certdata.txt[0] from NSS 3.116.

This is the version of NSS that shipped in Firefox 144.0 on 2025-10-14.

[0] https://raw.githubusercontent.com/nss-dev/nss/refs/tags/NSS_3_116_RTM/lib/ckfw/builtins/certdata.txt

PR-URL: nodejs/node#59956
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Richard Lau <richard.lau@ibm.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
PR-URL: nodejs/node#60318
Fixes: nodejs/node#59031
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Ulises Gascón <ulisesgascongonzalez@gmail.com>
Reviewed-By: Stefan Stojanovic <stefan.stojanovic@janeasystems.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
PR-URL: nodejs/node#60379
Reviewed-By: Shelley Vohr <shelley.vohr@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
PR-URL: nodejs/node#60364
Refs: https://chromium-review.googlesource.com/c/v8/v8/+/7003082
Reviewed-By: Guy Bedford <guybedford@gmail.com>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Chengzhong Wu <legendecas@gmail.com>
PR-URL: nodejs/node#60243
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Jacob Smith <jacob@frende.me>
PR-URL: nodejs/node#59734
Reviewed-By: Juan José Arboleda <soyjuanarbol@gmail.com>
Reviewed-By: Ethan Arrowood <ethan@arrowood.dev>
Reviewed-By: Tim Perry <pimterry@gmail.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Jake Yuesong Li <jake.yuesong@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
The previous cpu.sh script was minimal. This change makes it a more
robust and safe utility for managing CPU governors during benchmarks.

The script now includes:
- Checks to ensure it only runs on Linux with root privileges.
- A `reset` command to restore the CPU governor to a dynamically
  detected system default.
- A `get` command to check the current governor for all cores.
- An improved usage guide and clearer feedback messages.

PR-URL: nodejs/node#60162
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
PR-URL: nodejs/node#59883
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Corrects the misspelling of "proecss" to "process".

PR-URL: nodejs/node#60132
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
PR-URL: nodejs/node#60434
Fixes: nodejs/node#60423
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Richard Lau <richard.lau@ibm.com>
Previously the addAfterUserSerailizeCallback() wasn't
ready to be used for building the built-in snapshot.
This patch initializes the callbacks at the time
lib/internal/v8/start_snapshot.js is loaded, so that
these callbacks get run correctly when building the
built-in snapshot.

Currently when building the built-in snapshot,
addAfterUserSerializeCallback() is only used by createUnsafeBuffer(),
other usages can only come from user-land snapshots,
which is covered by tests, but what gets run by the
built-in snapshot building process is less visible, and the
path used by createUnsafeBuffer() isn't reliably visible in user
land either. This adds an internal usage counter in debug builds
to verify this path when building the built-in snapshot.

PR-URL: nodejs/node#60434
Fixes: nodejs/node#60423
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Richard Lau <richard.lau@ibm.com>
PR-URL: nodejs/node#60550
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
2025-11-11 Node.js v24.11.1 Krypton (LTS) Release
Git-EVTag-v0-SHA512: 309dacd3e6816cd5123501a2dd702321000fc4a3292eeaaf58d2c504d931f18f6e8a108e45b05ec2cd245d1e2d9d067005a18ac1ff45ad4c39a2e5c3440357e8
@santigimeno santigimeno requested a review from RafaelGSS December 3, 2025 01:01
@santigimeno santigimeno self-assigned this Dec 3, 2025
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Dec 3, 2025

Walkthrough

This PR contains infrastructure updates, dependency version bumps, V8 configuration refinements for pointer compression, migration of inspector protocol APIs from custom span to std::span, extensive npm documentation rewording, new benchmark scripts for ESM and VM modules, and updates to build and codeowner configurations.

Changes

Cohort / File(s) Summary
Configuration & Build System
.github/CODEOWNERS, .github/dependabot.yml, .github/workflows/tools.yml, configure.py, common.gypi
Updated CODEOWNERS with broader patterns for single-executable tests and added userland migrations ownership; refactored dependabot cooldown structure; added inspector_protocol workflow entry; introduced --experimental-pointer-compression-shared-cage CLI flag; updated V8 define from V8_COMPRESS_POINTERS_IN_ISOLATE_CAGE to V8_COMPRESS_POINTERS_IN_MULTIPLE_CAGES
Documentation & Build Guides
BUILDING.md, CHANGELOG.md
Added guidance for running tests with wildcard patterns; promoted Node.js 24.11.1 as latest version in changelog index
Benchmark Scripts
benchmark/cpu.sh, benchmark/esm/import-esm-reload.js, benchmark/napi/function_args/binding.cc, benchmark/vm/source-text-module-*.js
Enhanced CPU governor detection and messaging in cpu.sh; added ESM cache-busting import benchmark; updated NAPI String::WriteUtf8 to WriteUtf8V2; added three new VM module benchmarking scripts (chained, flat, leaf)
Inspector Protocol & Span Migration
deps/inspector_protocol/crdtp/span.h, deps/inspector_protocol/crdtp/span_test.cc, deps/inspector_protocol/crdtp/cbor.cc, deps/inspector_protocol/crdtp/cbor_test.cc, deps/inspector_protocol/crdtp/json.cc, deps/inspector_protocol/crdtp/json_test.cc, deps/inspector_protocol/crdtp/protocol_core.cc, deps/inspector_protocol/crdtp/protocol_core.h, deps/inspector_protocol/lib/Values_cpp.template
Replaced custom crdtp::span<T> class with std::span<const T> template alias; updated CBOR and JSON handling to pass std::vector<T> instead of span-wrapped buffers; optimized string emission with fast-path for printable ASCII
Inspector Protocol Auxiliary
deps/inspector_protocol/README.node, deps/inspector_protocol/pdl.py
Bumped inspector protocol revision; added support for include <filename> directives in PDL parsing
Corepack Dependency
deps/corepack/CHANGELOG.md, deps/corepack/package.json
Updated corepack version from 0.34.0 to 0.34.2; bumped yarn to 4.10.3 and undici devDependency; noted bug fixes for race conditions
Google Test
deps/googletest/include/gtest/gtest-matchers.h
Added noexcept specifier to MatcherBase move constructor and move assignment operator
NPM Documentation (Extensive)
deps/npm/README.md, deps/npm/docs/content/commands/npm-*.md, deps/npm/docs/content/configuring-npm/*.md, deps/npm/docs/content/using-npm/*.md, deps/npm/docs/lib/index.js, deps/npm/docs/output/commands/*.html
Bumped npm version from 11.6.1 to 11.6.2; extensive rewording, line-breaking adjustments, grammar fixes, and formatting normalization across command and configuration documentation; corrected typo in comment ("exex" → "exec"); updated HTML output files with new version and ID references

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~45 minutes

Areas requiring extra attention:

  • Inspector protocol span migration (deps/inspector_protocol/crdtp/*.cc|h) — API signature changes from span to std::vector across multiple encoding/decoding functions; verify all call sites and ownership assumptions are correct
  • V8 pointer compression configuration (configure.py, common.gypi) — ensure conditional logic for shared cage flag is properly scoped and doesn't unintentionally affect other configurations
  • CODEOWNERS changes — verify that new patterns correctly match intended test files and that ownership assignments don't conflict

Possibly related PRs

  • PR modifying .github/CODEOWNERS — Related via direct file-level overlap; changes to codeowner rules may interact with other ownership updates in the codebase

Suggested reviewers

  • RafaelGSS
  • juanarbol

Poem

🐰 Spans now bend to V8's will,
Pointers compressed, cages refilled,
Benchmarks hop through modules so neat,
NPM docs polished, the update complete!
From protocol springs, a migration most grand—
All wrapped in std::span, across Node's vast land! 🌟

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 6.15% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The PR title accurately reflects the main change: a release combining Node.js v24.11.1 and nsolid v6.1.0, which aligns with the numerous version bumps, dependency updates, and changelog modifications throughout the changeset.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch node-v24.11.1-nsolid-v6.1.0-release

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

Copy link
Copy Markdown

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

Note

Due to the large number of review comments, Critical, Major severity comments were prioritized as inline comments.

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
deps/inspector_protocol/crdtp/cbor_test.cc (1)

317-317: Use vector directly instead of span constructor for consistency with other test cases.

Line 317 uses span<uint16_t>() while other similar tests (lines 352, 385, 502) pass std::vector<uint16_t> directly. Since span has an implicit constructor accepting vectors, both approaches work identically. For consistency with the rest of the test file, update this line to follow the same pattern:

  std::vector<uint8_t> encoded;
-  EncodeString16(span<uint16_t>(), &encoded);
+  std::vector<uint16_t> empty_string16;
+  EncodeString16(empty_string16, &encoded);
🟡 Minor comments (22)
deps/npm/docs/content/using-npm/logging.md-68-68 (1)

68-68: Add hyphen for compound modifier.

Line 68 should use a hyphen to join the words in the compound modifier.

Apply this diff to fix the hyphenation:

-1. Write timing information to a process specific timing file in the cache or `logs-dir`
+1. Write timing information to a process-specific timing file in the cache or `logs-dir`
deps/npm/docs/content/commands/npm-unstar.md-44-50 (1)

44-50: Capitalize proper nouns in documentation.

The operating system and environment names should follow standard capitalization conventions. "Windows," "Mac," and "Unix" are proper nouns and should be capitalized.

Apply this diff to correct the capitalization:

 #### `unicode`
 
-* Default: false on windows, true on mac/unix systems with a unicode
+* Default: false on Windows, true on Mac/Unix systems with a unicode
   locale, as defined by the `LC_ALL`, `LC_CTYPE`, or `LANG` environment
   variables.
 * Type: Boolean
 
-When set to true, npm uses unicode characters in the tree output.
-When false, it uses ascii characters instead of unicode glyphs.
+When set to true, npm uses Unicode characters in the tree output.
+When false, it uses ASCII characters instead of Unicode glyphs.
deps/npm/docs/content/commands/npm-deprecate.md-76-77 (1)

76-77: Fix hyphenation in compound adjective.

Line 76 uses "network related" but compound adjectives preceding nouns require hyphenation.

-Note: This is NOT honored by other network related commands, eg
+Note: This is NOT honored by other network-related commands, eg
deps/npm/docs/content/commands/npm-unpublish.md-46-47 (1)

46-47: Fix hyphenation in compound adjective.

Line 46 has a compound adjective that should be hyphenated.

Apply this diff:

-Note: This is NOT honored by other network related commands, eg
-`dist-tags`, `owner`, etc.
+Note: This is NOT honored by other network-related commands, eg
+`dist-tags`, `owner`, etc.
deps/npm/docs/content/commands/npm-fund.md-89-91 (1)

89-91: Capitalize proper nouns "Windows" and "Mac".

Line 89 contains capitalization errors for operating system names. Per LanguageTool and standard English conventions, "Windows" and "Mac" are proper nouns and trademarks that must be capitalized.

Apply this diff to fix the capitalization:

-* Default: false on windows, true on mac/unix systems with a unicode
+* Default: false on Windows, true on Mac/unix systems with a unicode
deps/npm/docs/content/using-npm/workspaces.md-85-87 (1)

85-87: Specify language for fenced code block.

The code block should specify a language for syntax highlighting. Since this is a shell command, use bash or sh.

-```
+```bash
 npm install abbrev -w a
-```
+```
deps/npm/docs/content/using-npm/workspaces.md-89-89 (1)

89-89: Add missing period after "etc" abbreviation.

In American English, abbreviations like "etc" should have a period: "etc."

-Note: other installing commands such as `uninstall`, `ci`, etc will also respect the provided `workspace` configuration.
+Note: other installing commands such as `uninstall`, `ci`, etc. will also respect the provided `workspace` configuration.
deps/npm/docs/content/commands/npm-pack.md-26-27 (1)

26-27: Fix hyphenation in network-related.

Line 26 uses "network related" but should be hyphenated as "network-related" for correct grammar and consistency with Markdown style guides.

Apply this diff:

-Note: This is NOT honored by other network related commands, eg
+Note: This is NOT honored by other network-related commands, eg
deps/npm/docs/content/commands/npm-pack.md-116-119 (1)

116-119: Use underscores instead of asterisks for emphasis.

Lines 118–119 use asterisks (*not*) for emphasis, but the Markdown style for this file should use underscores (_not_) to maintain consistency and comply with markdownlint (MD049).

Apply this diff:

-but they will *not* run any pre- or post-scripts.
+but they will _not_ run any pre- or post-scripts.
deps/npm/docs/content/commands/npm-pack.md-84-91 (1)

84-91: Fix formatting issue with bullet-point structure.

Lines 87–88 have a formatting problem where a new bullet point starts mid-line after a period. The line currently reads:

etc.) will link workspaces into the `node_modules` folder. - Commands

This breaks the Markdown list structure. Ensure the second bullet point (- Commands that do other things...) starts on a fresh line.

Apply this diff:

- Commands that operate on the `node_modules` tree (install, update,
-etc.) will link workspaces into the `node_modules` folder. - Commands
-that do other things (test, exec, publish, etc.) will operate on the
-root project, _unless_ one or more workspaces are specified in the
-`workspace` config.
+- Commands that operate on the `node_modules` tree (install, update,
+  etc.) will link workspaces into the `node_modules` folder.
+- Commands that do other things (test, exec, publish, etc.) will operate on the
+  root project, _unless_ one or more workspaces are specified in the
+  `workspace` config.
deps/npm/docs/content/commands/npm-ci.md-247-248 (1)

247-248: Fix compound adjective hyphenation.

Line 247 uses "network related commands" but compound adjectives preceding nouns require hyphenation. Change to "network-related commands" for grammatical correctness.

Apply this diff to fix the hyphenation:

-Note: This is NOT honored by other network related commands, eg
+Note: This is NOT honored by other network-related commands, eg
deps/npm/docs/content/configuring-npm/package-json.md-1061-1061 (1)

1061-1061: Hyphenate compound adjective: "top-level".

In American English, compound adjectives before a noun should be hyphenated. "top level" should be "top-level" when used descriptively.

-The optional `workspaces` field is an array of file patterns that describes locations within the local file system that the install client should look up to find each [workspace](/using-npm/workspaces) that needs to be symlinked to the top level `node_modules` folder.
+The optional `workspaces` field is an array of file patterns that describes locations within the local file system that the install client should look up to find each [workspace](/using-npm/workspaces) that needs to be symlinked to the top-level `node_modules` folder.
deps/npm/docs/content/configuring-npm/package-json.md-729-729 (1)

729-729: Fix emphasis style for consistency.

The markdown linting tool detected an inconsistency: emphasis (italics) should use asterisks (*text*) rather than underscores (_text_) for consistency with the rest of the documentation.

-In npm versions 3 through 6, `peerDependencies` were not automatically installed, and would raise a warning if an invalid version of the peer dependency was found in the tree.
+In npm versions 3 through 6, `peerDependencies` were not automatically installed, and would raise a warning if an invalid version of the peer dependency was found in the tree.
-As of npm v7, peerDependencies _are_ installed by default.
+As of npm v7, peerDependencies *are* installed by default.
deps/npm/docs/content/configuring-npm/package-json.md-858-858 (1)

858-858: Hyphenate compound adjective: "great-grandchild".

In American English, compound adjectives before a noun should be hyphenated. "great grandchild" should be "great-grandchild" when used descriptively.

-To override `@npm/foo` only when it's a child of `@npm/bar` and only when `@npm/bar` is a child of `@npm/baz`:
+To override `@npm/foo` only when it's a child of `@npm/bar` and only when `@npm/bar` is a child of `@npm/baz`:

Apply this diff to the section header:

-To override `@npm/foo` only when it's a child (or grandchild, or great grandchild, etc) of the package `@npm/bar`:
+To override `@npm/foo` only when it's a child (or grandchild, or great-grandchild, etc.) of the package `@npm/bar`:
deps/npm/docs/content/commands/npm-dedupe.md-104-105 (1)

104-105: Fix hyphenation in compound modifiers.

Lines 104 and 242 use compound modifiers that should be hyphenated for grammatical correctness.

Apply these diffs to fix hyphenation:

- Only install direct dependencies in the top level `node_modules`, but
+ Only install direct dependencies in the top-level `node_modules`, but
- Note: This is NOT honored by other network related commands, eg
+ Note: This is NOT honored by other network-related commands, eg
deps/npm/docs/content/commands/npm-publish.md-117-118 (1)

117-118: Grammar: compound adjective requires hyphen.

"Network related" should be hyphenated as "network-related" when used as a compound adjective modifying "commands."

Apply this diff to fix the grammar:

- Note: This is NOT honored by other network related commands, eg
+ Note: This is NOT honored by other network-related commands, eg
deps/npm/docs/content/commands/npm-publish.md-169-173 (1)

169-173: Markdown emphasis style: use asterisks instead of underscores.

Line 172 uses underscore-based emphasis (_unless_) which violates the markdown linting rule MD049. The emphasis-style configuration expects asterisks.

Apply this diff to fix the emphasis style:

- Commands that do other things (test, exec, publish, etc.) will operate on the
- root project, _unless_ one or more workspaces are specified in the
+ Commands that do other things (test, exec, publish, etc.) will operate on the
+ root project, *unless* one or more workspaces are specified in the

Please check the entire file for other underscore-based emphasis markers and convert them to asterisks.

deps/npm/docs/content/commands/npm-ls.md-182-184 (1)

182-184: Capitalize operating system names for consistency and proper style.

Line 182 uses lowercase "windows" and "mac", which should be capitalized as "Windows" (Microsoft operating system) and "Mac" (Apple trademark). This aligns with standard style conventions for proper nouns.

Apply this diff to fix the capitalization:

-* Default: false on windows, true on mac/unix systems with a unicode
+* Default: false on Windows, true on Mac/Unix systems with a unicode
deps/npm/docs/content/commands/npm-ls.md-225-229 (1)

225-229: Fix emphasis style inconsistency.

Line 228 uses underscore emphasis (_unless_) instead of the asterisk emphasis (*unless*) specified in the project's markdown style guide (markdownlint expects asterisks by default).

Apply this diff to fix the emphasis style:

  - Commands that operate on the `node_modules` tree (install, update,
-etc.) will link workspaces into the `node_modules` folder. - Commands
+etc.) will link workspaces into the `node_modules` folder.
+* Commands
  that do other things (test, exec, publish, etc.) will operate on the
-root project, _unless_ one or more workspaces are specified in the
+root project, *unless* one or more workspaces are specified in the

Committable suggestion skipped: line range outside the PR's diff.

BUILDING.md-339-358 (1)

339-358: Fix typo in documentation.

The new wildcard pattern examples are helpful, but there's a typo on line 350.

Apply this diff:

-The whildcard `*` can be used in any part of the path. For example, to run all tests
+The wildcard `*` can be used in any part of the path. For example, to run all tests
deps/npm/docs/output/commands/npm-cache.html-206-206 (1)

206-206: Use HTTPS instead of HTTP for the cacache link.

The static analysis tool correctly flagged that http://npm.im/cacache should use HTTPS for security best practices. While this is a documentation link, using HTTPS is recommended.

Since this is generated HTML, the fix should be applied to the source Markdown file at deps/npm/docs/content/commands/npm-cache.md line 56.

deps/npm/docs/content/commands/npm-cache.md-55-57 (1)

55-57: Use HTTPS for the cacache link.

The link to cacache uses HTTP instead of HTTPS. For security best practices, prefer encrypted connections even for documentation links.

-This directory is a [`cacache`](http://npm.im/cacache)-based content-addressable cache that stores all http request data as well as other package-related data.
+This directory is a [`cacache`](https://npm.im/cacache)-based content-addressable cache that stores all http request data as well as other package-related data.
🧹 Nitpick comments (52)
deps/npm/docs/content/commands/npm-star.md (1)

50-52: Capitalize operating system names and trademarks.

Operating system names and trademarks should be properly capitalized for consistency and correctness:

  • "windows" → "Windows"
  • "mac/unix" → "Mac/Unix"

Apply this diff to fix the capitalization:

-* Default: false on windows, true on mac/unix systems with a unicode
+* Default: false on Windows, true on Mac/Unix systems with a unicode
deps/npm/docs/content/commands/npm-stars.md (1)

17-19: Consider refining the Description wording for conciseness and clarity.

The two sentences read well, though the phrase "a lot of" on line 17 could be more concise. Consider alternatives like "many" to improve clarity and align with professional documentation tone.

Apply this diff to refine the wording:

-If you have starred a lot of neat things and want to find them again quickly this command lets you do just that.
+If you have starred many things and want to find them again quickly, this command lets you do just that.

-You may also want to see your friend's favorite packages, in this case you will most certainly enjoy this command.
+You may also want to see a friend's favorite packages; in that case, this command will serve you well.

Note: The second sentence also benefits from slight restructuring for better flow. Adjust as appropriate to match npm's documentation style.

deps/npm/docs/content/using-npm/removal.md (1)

45-46: Consider a shorter phrasing to improve readability.

The phrase "Prior to version 0.3" can be simplified to "Before version 0.3" for brevity and clarity.

-Prior to version 0.3, npm used shim files for executables and node modules.
+Before version 0.3, npm used shim files for executables and node modules.
deps/npm/docs/content/configuring-npm/install.md (1)

9-9: Fix hyphenation in phrase.

Per grammar guidelines, use "command-line interface" (hyphenated) instead of "command line interface".

Apply this diff:

-To publish and install packages to and from the public npm registry, you must install Node.js and the npm command line interface using either a Node version manager or a Node installer.
+To publish and install packages to and from the public npm registry, you must install Node.js and the npm command-line interface using either a Node version manager or a Node installer.
deps/npm/docs/content/using-npm/dependency-selectors.md (1)

78-81: Vary sentence structure to improve readability.

Three successive sentences begin with "If", creating repetitive structure. Consider rewording one or more of these sentences to improve flow.

  When the special `infer` function is used the `spec` and the actual value from the node are compared.
- If both are versions, according to `semver.valid()`, `eq` is used.
- If both values are ranges, according to `!semver.valid()`, `intersects` is used.
- If the values are mixed types `satisfies` is used.
+ When both are versions (per `semver.valid()`), `eq` is used.
+ For ranges (per `!semver.valid()`), `intersects` is used.
+ For mixed types, `satisfies` is used.
deps/npm/docs/content/configuring-npm/npmrc.md (2)

84-85: Inconsistent hyphenation: use "built-in" consistently.

Line 84 uses the unhyphenated "builtin", but line 85 uses "built-in". Per English grammar, compound adjectives should be hyphenated. Apply this diff for consistency:

-This is an unchangeable "builtin" configuration file that npm keeps consistent across updates.
+This is an unchangeable "built-in" configuration file that npm keeps consistent across updates.

88-91: Hyphenate "Auth-related" in section heading.

Per English grammar conventions for compound adjectives, apply this diff:

-### Auth related configuration
+### Auth-related configuration
deps/npm/docs/content/commands/npm-profile.md (2)

23-24: Minor style improvement: Simplify "all of the" to "all the".

The phrasing "Display all of the properties" can be more concise. Consider the change below for consistency with modern documentation style:

-* `npm profile get [<property>]`: Display all of the properties of your profile, or one or more specific properties.
+* `npm profile get [<property>]`: Display all the properties of your profile, or one or more specific properties.

46-51: Consider tightening the phrasing for the auth-only mode description.

The description "Require an OTP when logging in or making changes to your account's authentication" is verbose. Consider the revision below for clearer, more direct language:

   * `auth-only`: Require an OTP when logging in or making changes to your account's authentication.
-  The OTP will be required on both the website and the command line.
+  Required on both the website and the command line.

This maintains clarity while reducing redundancy.

deps/npm/docs/content/commands/npm-dist-tag.md (2)

24-25: Use hyphenation for compound adjectives.

Line 25 reads "second factor flow" — when factor modifies flow as a compound adjective, use a hyphen for consistency with the earlier "two-factor authentication."

- If you have two-factor authentication on auth-and-writes then you'll need to include a one-time password on the command line with `--otp <one-time password>`, or go through a second factor flow based on your `authtype`
+ If you have two-factor authentication on auth-and-writes then you'll need to include a one-time password on the command line with `--otp <one-time password>`, or go through a second-factor flow based on your `authtype`

27-27: Simplify phrasing: remove unnecessary "of."

Line 27 uses "all of the" — the more concise form "all the" is clearer.

- * ls: Show all of the dist-tags for a package, defaulting to the package in the current prefix.
+ * ls: Show all the dist-tags for a package, defaulting to the package in the current prefix.
deps/npm/docs/content/commands/npm-prune.md (3)

22-27: Reduce repetitive "If" at sentence starts.

Lines 22, 24, and 26 consecutively begin with "If", creating monotonous structure. Consider rewording at least one to vary the sentence openers and improve readability.

 If the `--dry-run` flag is used then no changes will actually be made.

-If the `--json` flag is used, then the changes `npm prune` made (or would have made with `--dry-run`) are printed as a JSON object.
+When the `--json` flag is used, the changes `npm prune` made (or would have made with `--dry-run`) are printed as a JSON object.

 In normal operation, extraneous modules are pruned automatically, so you'll only need this command with the `--production` flag.
-However, in the real world, operation is not always "normal".  When crashes or mistakes happen, this command can help clean up any resulting garbage.
+However, in the real world, operation is not always "normal". When crashes or mistakes happen, this command can help clean up any resulting garbage.

80-81: Add hyphen: "network-related".

Per markdown linting rules, compound adjectives should be hyphenated. Change "network related" to "network-related".

-Note: This is NOT honored by other network related commands, eg `dist-tags`, `owner`, etc.
+Note: This is NOT honored by other network-related commands, eg `dist-tags`, `owner`, etc.

125-125: Use underscore for emphasis (MD049).

This file should use underscores for emphasis rather than asterisks, per the markdown linting style. Change *not* to _not_.

-but they will *not* run any pre- or post-scripts.
+but they will _not_ run any pre- or post-scripts.
deps/npm/docs/content/using-npm/scope.md (2)

77-78: Simplify wordy phrasing.

Line 78 uses "prior to trying to publish," which is more verbose than necessary. Consider using "before publishing" for conciseness.

Apply this diff to simplify the phrasing:

-If you'd like to publish to `@org`, you would  need to create the `org` organization on npmjs.com prior to trying to publish.
+If you'd like to publish to `@org`, you would need to create the `org` organization on npmjs.com before publishing.

97-97: Hyphenate compound adjective.

Line 97 uses "open source" as a compound adjective modifying "Verdaccio"; it should be hyphenated as "open-source" for proper grammar.

Apply this diff to add the hyphen:

-This allows you to seamlessly use a mix of packages from the primary npm registry and one or more private registries, such as [GitHub Packages](https://github.com/features/packages) or the open source [Verdaccio](https://verdaccio.org) project.
+This allows you to seamlessly use a mix of packages from the primary npm registry and one or more private registries, such as [GitHub Packages](https://github.com/features/packages) or the open-source [Verdaccio](https://verdaccio.org) project.
deps/npm/docs/content/commands/npm-edit.md (1)

17-21: Minor style suggestion: Prefer "to" over "so as to" on line 19.

Line 19 uses the formal phrase "so as to" which is more common in legacy or formal texts. In modern technical documentation, "to" is preferred for clarity and conciseness.

Apply this diff to improve clarity:

-After it has been edited, the package is rebuilt so as to pick up any changes in compiled packages.
+After it has been edited, the package is rebuilt to pick up any changes in compiled packages.

The rewording on lines 17 and 21 (sentence merges) looks good and maintains semantic accuracy.

deps/npm/docs/content/commands/npm-link.md (3)

77-77: Fix wordiness: replace "exactly the same" with shorter alternative.

The phrase "exactly the same as yours" is flagged as unnecessarily wordy. Consider shortening to "the same as yours" or "like yours."

-conflicts and the packages involved. If `--strict-peer-deps` is
-set, then this warning is treated as a failure.
+conflicts and the packages involved. If `--strict-peer-deps` is
+set, then this warning is treated as a failure.

Apply this suggested diff:

-other users or developers on your project would run into issues if they do not have their folders set up exactly the same as yours.
+other users or developers on your project would run into issues if they do not have their folders set up the same as yours.

170-170: Add hyphen: "top-level" should be hyphenated.

Grammar: Use a hyphen to join the compound adjective.

-Only install direct dependencies in the top level `node_modules`, but
-hoist on deeper dependencies. Sets `--install-strategy=shallow`.
+Only install direct dependencies in the top-level `node_modules`, but
+hoist on deeper dependencies. Sets `--install-strategy=shallow`.

308-308: Add hyphen: "network-related" should be hyphenated.

Grammar: Use a hyphen to join the compound adjective.

-Note: This is NOT honored by other network related commands, eg
+Note: This is NOT honored by other network-related commands, eg
deps/npm/docs/content/commands/npm-login.md (1)

26-28: Address markdown linting warning about bare URLs.

Static analysis flagged bare URLs (MD034). The file currently uses angle-bracket syntax (<https://...>) for URLs. Consider converting to explicit markdown link syntax for consistency with markdown best practices:

-To reset your password, go to <https://www.npmjs.com/forgot>
+To reset your password, go to [https://www.npmjs.com/forgot](https://www.npmjs.com/forgot)

-To change your email address, go to <https://www.npmjs.com/email-edit>
+To change your email address, go to [https://www.npmjs.com/email-edit](https://www.npmjs.com/email-edit)

Verify whether your project's documentation style guide has a preference for URL formatting in prose.

deps/npm/docs/content/commands/npm-view.md (2)

57-58: Minor: Remove redundant "of" for conciseness.

Line 57 uses "all of the values" which can be shortened to "all the values" for better readability.

-For fields that are arrays, requesting a non-numeric field will return all of the values from the objects in the list.
+For fields that are arrays, requesting a non-numeric field will return all the values from the objects in the list.

178-185: Optional: Vary sentence structure in Output section to reduce repetition.

Lines 178–185 contain four consecutive sentences each beginning with "If," creating a repetitive rhythm. Consider restructuring one or two sentences to vary the pattern.

Example restructure (line 183):

-If the version range matches multiple versions then each printed value will be prefixed with the version it applies to.
+When the version range matches multiple versions, each printed value will be prefixed with the version it applies to.

Or restructure line 185:

-If multiple fields are requested, then each of them is prefixed with the field name.
+Multiple requested fields are each prefixed with the field name.
deps/npm/docs/content/commands/npm-update.md (2)

210-210: Use hyphen for compound adjective "top-level".

The phrase should be "top-level node_modules" to properly form a compound adjective modifying the noun.

Apply this diff:

-Only install direct dependencies in the top level `node_modules`, but
+Only install direct dependencies in the top-level `node_modules`, but

381-381: Use hyphen for compound adjective "network-related".

The phrase should be "network-related commands" to properly form a compound adjective.

Apply this diff:

-Note: This is NOT honored by other network related commands, eg
+Note: This is NOT honored by other network-related commands, eg
deps/npm/docs/content/commands/npm-doctor.md (1)

29-29: Optional style refinements for wordiness (static analysis hints).

Per LanguageTool suggestions, consider these minor improvements to strengthen wording:

  • Line 29: Replace "old version" with "outdated version" for stronger language.
  • Line 61: Simplify "in an effort to" to "to" for conciseness.
  • Line 68: Replace "not accessible" with "inaccessible" to avoid wordiness.
  • Line 80: Replace "In the event that" with "If" for a shorter alternative.

These are optional refinements that could further improve readability.

-Since npm is constantly improving, running `npm@latest` is better than an old version.
+Since npm is constantly improving, running `npm@latest` is better than an outdated version.

-Others may be following tutorials or StackOverflow questions in an effort to troubleshoot problems you may be having.
+Others may be following tutorials or StackOverflow questions to troubleshoot problems you may be having.

-Also, in some cases – especially on Windows – you may have Git set up in such a way that it's not accessible via your `PATH` so that npm can find it.
+Also, in some cases – especially on Windows – you may have Git set up in such a way that it's inaccessible via your `PATH` so that npm can find it.

-In the event that there are corrupt packages in your cache, you should probably run `npm cache clean -f` and reset the cache.
+If there are corrupt packages in your cache, you should probably run `npm cache clean -f` and reset the cache.

Also applies to: 61-61, 68-68, 80-80

deps/npm/docs/content/commands/npm-search.md (1)

52-57: Improve sentence structure for readability.

The updated default explanation is more accurate (accounting for the NO_COLOR environment variable). However, the three successive "If" clauses at lines 56–57 create stylistic repetition. Consider restructuring for better readability.

Apply this diff to reduce repetition:

-If false, never shows colors. If `"always"` then always shows colors.
-If true, then only prints color codes for tty file descriptors.
+Possible values: `false` (never shows colors), `"always"` (always shows colors), or `true` (only shows colors for tty file descriptors).
deps/npm/docs/content/commands/npm-run.md (3)

86-86: Add language identifiers to fenced code blocks.

Four code blocks lack language specifications. This improves syntax highlighting and markdown linting compliance. Specify bash for shell examples:

- ```
+ ```bash
  {
      "workspaces": [ "./packages/*" ]
  }
- ```
+ ```bash

Apply the same fix to lines 94, 102, and 109 (all shell command examples should be ```bash).

Also applies to: 94-94, 102-102, 109-109


196-196: Align emphasis style to markdown conventions.

Line 196 uses asterisks (*not*) for emphasis. Per markdownlint (MD049), consistency dictates underscores (_not_):

- but they will *not* run any pre- or post-scripts.
+ but they will _not_ run any pre- or post-scripts.

66-66: Consider concise alternatives to "in order to".

Lines 66 and 106 use "in order to", which can be more direct:

  • Line 66: "...configs in order to run..." → "...configs to run..."
  • Line 106: "...times in order to run..." → "...times to run..."

This is a minor style improvement flagged by LanguageTool and fits the broader editorial refinement theme.

Also applies to: 106-106

deps/npm/docs/content/commands/npm-diff.md (4)

63-64: Consider using "similarly" for conciseness.

Line 63 currently reads: "will work in a similar way to". This can be made more concise as "will work similarly to".

Apply this diff to improve readability:

-    When using a single package name (with no version or tag specifier) as an argument, `npm diff` will work in a similar way to [`npm-outdated`](npm-outdated) and reach for the registry to figure out what current published version of the package named `<pkg-name>` will satisfy its dependent declared semver-range.
+    When using a single package name (with no version or tag specifier) as an argument, `npm diff` will work similarly to [`npm-outdated`](npm-outdated) and reach for the registry to figure out what current published version of the package named `<pkg-name>` will satisfy its dependent declared semver-range.

72-72: Hyphenate the compound adjective "most up-to-date".

Line 72 contains "most up to date version". When used as a compound adjective before a noun, this should be hyphenated: "most up-to-date version".

Apply this diff:

-    That will request from the registry its most up to date version and will print a diff output comparing the currently installed version to this newer one if the version numbers are not the same.
+    That will request from the registry its most up-to-date version and will print a diff output comparing the currently installed version to this newer one if the version numbers are not the same.

93-93: Prefer "will be compared" over "is going to be compared".

Line 93 uses "is going to be compared", which is more colloquial. Use "will be compared" for standard formal documentation.

Apply this diff:

-    If only a single argument `<version-a>` is provided, then the current local file system is going to be compared against that version.
+    If only a single argument `<version-a>` is provided, then the current local file system will be compared against that version.

105-105: Simplify "in order to limit" to "to limit".

Line 105 uses "in order to limit", which can be made more concise.

Apply this diff:

-It's possible to also specify positional arguments using file names or globs pattern matching in order to limit the result of diff patches to only a subset of files for a given package, e.g:
+It's possible to also specify positional arguments using file names or globs pattern matching to limit the result of diff patches to only a subset of files for a given package, e.g:
deps/npm/docs/content/using-npm/scripts.md (1)

63-63: Hyphenate compound adjectives.

"user defined" and "CLI defined" should be hyphenated when used as compound adjectives before a noun.

Apply this diff:

-* NOTE: "`npm run pack`" is NOT the same as "`npm pack`". "`npm run pack`" is an arbitrary user defined script name, whereas, "`npm pack`" is a CLI defined command.
+* NOTE: "`npm run pack`" is NOT the same as "`npm pack`". "`npm run pack`" is an arbitrary user-defined script name, whereas, "`npm pack`" is a CLI-defined command.
deps/npm/docs/content/configuring-npm/npm-shrinkwrap-json.md (1)

13-14: Recommended use-case wording—consider simplification (optional).

The phrase "deployed through the publishing process on the registry" (line 13) is somewhat indirect. Consider simplifying to "applications published to the registry" for clearer communication, though the current wording's meaning is ultimately clear in context. The library author guidance on line 14 is well-phrased and accurate.

deps/npm/docs/content/commands/npm-unpublish.md (1)

62-74: Consider varying sentence structure to reduce repetition.

Lines 62–74 open six consecutive bullets with "Allow," which creates repetitive rhythm. While grammatically correct, varying the sentence structure would improve readability.

Example refactor:

 * Allow clobbering non-npm files in global installs.
 * Allow the `npm version` command to work on an unclean git repository.
 * Allow deleting the cache folder with `npm cache clean`.
-* Allow installing packages that have an `engines` declaration
+* Permit installing packages that have an `engines` declaration
   requiring a different version of npm.
-* Allow installing packages that have an `engines` declaration
+* Permit installing packages with an `engines` declaration
   requiring a different version of `node`, even if `--engine-strict` is
   enabled.
-* Allow `npm audit fix` to install modules outside your stated
+* Permit `npm audit fix` to install modules outside your stated
   dependency range (including SemVer-major changes).
 * Allow unpublishing all versions of a published package.
-* Allow conflicting peerDependencies to be installed in the root
+* Permit conflicting peerDependencies to be installed in the root
   project.
deps/npm/docs/content/using-npm/workspaces.md (2)

11-12: Optional: Replace "in order to" with "to" for conciseness.

This is a minor style improvement that can be deferred if not part of the editorial guidelines.

-This set of features makes up for a much more streamlined workflow handling linked packages from the local file system.
-It automates the linking process as part of `npm install` and removes the need to manually use `npm link` in order to add references to packages that should be symlinked into the current `node_modules` folder.
+This set of features makes up for a much more streamlined workflow handling linked packages from the local file system.
+It automates the linking process as part of `npm install` and removes the need to manually use `npm link` to add references to packages that should be symlinked into the current `node_modules` folder.

146-147: Optional: Replace "in order to" with "to" for conciseness.

This is a minor style improvement that can be deferred if not part of the editorial guidelines.

-Please note that you can also specify this argument multiple times in the command-line in order to target multiple workspaces, e.g:
+Please note that you can also specify this argument multiple times in the command-line to target multiple workspaces, e.g:
deps/npm/docs/content/commands/npm.md (1)

120-122: Optional: Address markdown linting issues in follow-up.

Static analysis flagged several markdown formatting issues (missing language specs on code blocks, emphasis style inconsistencies) that could be cleaned up in a follow-up pass. These don't impact rendering but would improve linting compliance.

deps/npm/docs/content/commands/npm-dedupe.md (1)

17-17: Consider tightening "overall structure".

The phrase "overall structure" on line 17 could be more concise. Consider alternatives like "structure" or "dependency structure" for improved clarity.

benchmark/esm/import-esm-reload.js (1)

5-5: Consider using benchmark-specific temporary directory utilities.

The benchmark imports tmpdir from the test common utilities. While functional, benchmarks typically maintain separate infrastructure from tests to avoid coupling. If there's a benchmark-specific temporary directory utility, consider using that instead.

deps/npm/docs/content/commands/npm-explore.md (1)

27-27: Use American English spelling: "afterward" instead of "afterwards".

Per static analysis feedback and American English conventions, "afterward" is the preferred variant.

Apply this diff:

-Note that the package is *not* automatically rebuilt afterwards, so be sure to use `npm rebuild <pkg>` if you make any changes.
+Note that the package is *not* automatically rebuilt afterward, so be sure to use `npm rebuild <pkg>` if you make any changes.
deps/npm/docs/content/configuring-npm/folders.md (1)

26-27: Address minor style and wording improvements flagged by static analysis.

While the documentation edits are substantively sound, a few style tweaks would improve readability:

  • Line 26: Three successive sentences begin with "On". Consider rewording for variety.
  • Line 75: Use hyphen in compound modifier: ".git-folder seeking logic" → ".git-folder seeking logic".
  • Lines 100, 102: Replace "exact same" with "same" for conciseness.
  • Line 146: Replace "in order to minimize" with "to minimize".

These are minor polish suggestions that can be deferred if you prefer.

Also applies to: 75-75, 100-102, 146-146

deps/npm/docs/content/commands/npm-version.md (1)

22-23: Documentation reflow and editorial refinements look good.

Rewording across configuration descriptions and examples improves line wrapping and readability. No functional changes to command behavior.

One optional suggestion: Line 129 contains "may possibly"—consider removing "possibly" to tighten the wording ("operations that may change the workspaces..."). This aligns with static analysis hints but is a minor style preference.

Also applies to: 41-42, 65-66, 75-79, 88-90, 99-101, 113-120, 142-145, 151-156, 158-160, 162-163, 170-172, 178-179, 184-201, 215-217

deps/npm/docs/content/commands/npm-pkg.md (1)

21-21: Documentation restructuring improves clarity and consistency.

Rewording and formatting refinements make the npm-pkg documentation more readable. Line 169–173 restructuring of the force config examples is particularly helpful.

Minor suggestion: Lines 23 and 76 refer to "dot separated syntax." For consistency with grammar conventions, consider hyphenating as "dot-separated" (adjective form). This aligns with the LanguageTool hint and improves consistency with similar compound-adjective patterns throughout npm docs.

Also applies to: 23-23, 31-31, 43-44, 50-51, 57-58, 64-65, 73-74, 76-76, 78-78, 90-90, 96-96, 102-102, 118-119, 127-127, 132-132, 134-134, 140-140, 169-173, 177-178, 207-209, 218-220, 232-233, 235-239

deps/npm/docs/content/configuring-npm/package-lock-json.md (1)

9-10: Package-lock.json documentation rewording maintains clarity and improves readability.

Extensive line-wrapping and phrasing refinements make the documentation flow better. No changes to content accuracy or completeness. Lines preserve all technical details and guidance.

Note: Lines 43–44, 100–101, and similar sections use underscores for emphasis (_text_). Markdown convention (markdownlint) prefers asterisks (*text*). Consider a follow-up pass to standardize emphasis style if consistency is a priority, but this is optional.

Also applies to: 12-22, 28-28, 30-33, 39-40, 43-44, 46-47, 49-50, 53-54, 58-59, 64-65, 69-70, 74-77, 79-85, 89-92, 97-101, 103-107, 116-121, 125-128, 132-145, 146-164

deps/npm/docs/content/commands/npm-install-ci-test.md (1)

26-32: Configuration documentation improvements enhance readability and consistency.

Line-wrapping and rewording throughout the Configuration section maintains clarity and improves flow. No changes to command semantics or behavior.

Optional refinement: Lines 57 and 200 use "top level" and "network related" as adjectives; these conventionally should be hyphenated ("top-level," "network-related"). Also, lines 57 and 200 use underscores for emphasis; Markdown convention prefers asterisks. Both are minor consistency improvements for a follow-up pass.

Also applies to: 43-46, 57-58, 64-65, 74-79, 89-90, 94-96, 106-108, 110-115, 116-120, 124-125, 128-131, 133-135, 145-148, 157-160, 172-174, 184-185, 194-195, 200-201, 210-212, 221-223, 235-236, 238-239, 253-256, 265-267

deps/npm/docs/content/commands/npm-rebuild.md (1)

39-40: Configuration documentation rewording improves clarity and consistency.

Line-wrapping and phrasing adjustments throughout the Configuration section maintain technical accuracy while enhancing readability. No functional changes to command behavior.

Minor note: Line 141 uses underscore for emphasis (_unless_); Markdown convention prefers asterisks. This is optional consistency refinement for a follow-up pass.

Also applies to: 49-52, 54-58, 69-71, 77-79, 81-84, 86-87, 98-101, 110-112, 121-123, 135-136, 138-142, 153-156, 165-167

deps/npm/docs/content/commands/npm-install.md (1)

17-18: Comprehensive documentation rewording maintains clarity and improves readability.

Extensive line-wrapping and phrasing refinements throughout the npm-install documentation preserve all technical content and command details while improving flow. No changes to command syntax or behavior.

Optional improvements for consistency:

  1. List indentation: Markdownlint flagged several list items (lines 72–73, 75, 111–112, 125–127) with inconsistent indentation (4 spaces vs. expected 2). Consider standardizing list indentation for consistency.

  2. Emphasis style: Several sections use underscores for emphasis (e.g., line 498, 687: *not*). Markdown convention (markdownlint) prefers asterisks; standardize for consistency.

  3. Hyphenation: Lines 417, 615 refer to "top level" and "network related" as adjectives; these should be hyphenated ("top-level," "network-related") for consistency with grammar conventions.

These are minor formatting refinements suitable for a follow-up consistency pass.

Also applies to: 24-24, 28-36, 43-48, 50-50, 54-55, 68-69, 72-75, 85-86, 96-98, 100-100, 109-112, 123-125, 129-129, 131-137, 151-156, 162-162, 170-170, 181-182, 194-194, 196-196, 207-209, 217-218, 251-257, 268-269, 281-281, 297-303, 334-336, 319-327, 341-342, 369-377, 387-392, 403-406, 417-418, 434-435, 446-447, 449-450, 454-456, 466-467, 470-478, 487-488, 497-499, 508-509, 514-516, 522-524, 526-529, 531-532, 543-546, 555-558, 568-575, 587-589, 599-600, 609-613, 615-616, 625-627, 636-637, 646-647, 656-658, 667-669, 681-682, 684-688, 699-702, 711-713, 719-719, 728-728, 741-742, 744-744

deps/npm/docs/output/commands/npm-audit.html (1)

243-243: Consider using HTTPS for the npm.im link.

While http://npm.im/@npmcli/metavuln-calculator redirects to HTTPS, directly using https://npm.im/@npmcli/metavuln-calculator would be more secure and avoid the plaintext HTTP request.

Apply this diff:

-<p>npm uses the <a href="http://npm.im/@npmcli/metavuln-calculator"><code>@npmcli/metavuln-calculator</code></a> module to turn a set of security advisories into a set of "vulnerability" objects.
+<p>npm uses the <a href="https://npm.im/@npmcli/metavuln-calculator"><code>@npmcli/metavuln-calculator</code></a> module to turn a set of security advisories into a set of "vulnerability" objects.
deps/inspector_protocol/crdtp/json_test.cc (1)

126-126: Inconsistent pattern: HandleString8 still uses SpanFrom while HandleString16 doesn't.

Line 126 uses writer->HandleString8(chars) passing the vector directly, but other HandleString8 calls (e.g., lines 48, 80, 158, 165) still use SpanFrom(chars). This works because both approaches are valid, but the inconsistency may cause confusion.

Consider applying the same simplification pattern consistently to all HandleString8 call sites that use local vectors, or keep using SpanFrom() consistently for all string handler calls.

Comment thread benchmark/cpu.sh
Comment on lines 23 to +35
set_governor() {
echo "Setting CPU frequency governor to \"$1\""
governor_name="$1"

echo "Setting governor for all CPU cores to \"$governor_name\"..."

i=0
while [ "$i" -le "$MAXID" ]; do
echo "$1" > "$CPUPATH/cpu$i/cpufreq/scaling_governor"
i=$((i + 1))
done

echo "Done."
}
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🛠️ Refactor suggestion | 🟠 Major

Use the $governor_name variable consistently.

Line 24 stores the parameter in governor_name="$1", but line 30 still references $1 directly. For consistency and maintainability, use $governor_name throughout the function.

Apply this diff:

   i=0
   while [ "$i" -le "$MAXID" ]; do
-    echo "$1" > "$CPUPATH/cpu$i/cpufreq/scaling_governor"
+    echo "$governor_name" > "$CPUPATH/cpu$i/cpufreq/scaling_governor"
     i=$((i + 1))
   done
🤖 Prompt for AI Agents
In benchmark/cpu.sh around lines 23 to 35, the function set_governor assigns the
parameter to governor_name but still writes the original positional parameter
($1) to the scaling_governor file; update the function to use $governor_name
consistently (replace occurrences of $1 with $governor_name inside the
loop/write) so the stored variable is used for clarity and maintainability.

auto deserializer =
DeferredMessage::FromSpan(span<uint8_t>(bytes.data(), bytes.size()))
->MakeDeserializer();
auto deserializer = DeferredMessage::FromSpan(bytes)->MakeDeserializer();
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Check the span type alias definition and FromSpan signature

echo "=== Checking span type definition ==="
rg -n "using span\s*=" deps/inspector_protocol/crdtp/span.h

echo -e "\n=== Checking FromSpan signature ==="
rg -n "FromSpan.*span<uint8_t>" deps/inspector_protocol/crdtp/

echo -e "\n=== Checking for span conversion or constructor usage ==="
rg -n "span<uint8_t>.*bytes\.data" deps/inspector_protocol/crdtp/

Repository: nodesource/nsolid

Length of output: 481


🏁 Script executed:

#!/bin/bash
# Check context around line 343
echo "=== Context around line 343 in protocol_core.h ==="
sed -n '330,355p' deps/inspector_protocol/crdtp/protocol_core.h

echo -e "\n=== Check full method signature containing line 343 ==="
sed -n '330,345p' deps/inspector_protocol/crdtp/protocol_core.h | head -20

Repository: nodesource/nsolid

Length of output: 1686


🏁 Script executed:

#!/bin/bash
# Check std::span conversion behavior and C++ standard
echo "=== Checking std::span header includes and version ==="
head -30 deps/inspector_protocol/crdtp/span.h

echo -e "\n=== Verify span template definition ==="
sed -n '1,50p' deps/inspector_protocol/crdtp/span.h

Repository: nodesource/nsolid

Length of output: 2327


🏁 Script executed:

#!/bin/bash
# Search for other usages of FromSpan in the codebase
echo "=== All FromSpan usages in codebase ==="
rg -n "FromSpan\(" deps/inspector_protocol/crdtp/ -A 1

echo -e "\n=== Check if line 343 compiles or has workarounds ==="
rg -n "FromSpan.*bytes" deps/inspector_protocol/crdtp/protocol_core.h -B 3 -A 3

Repository: nodesource/nsolid

Length of output: 1993


Fix implicit vector-to-span conversion at line 343.

The code at line 343 passes std::vector<uint8_t> directly to FromSpan, which expects span<uint8_t> (i.e., std::span<const uint8_t>). Unlike line 258, which correctly uses explicit construction span<uint8_t>(bytes, size), line 343 relies on an implicit conversion that does not exist—std::vector<uint8_t> cannot implicitly convert to std::span<const uint8_t>.

Change line 343 from:

auto deserializer = DeferredMessage::FromSpan(bytes)->MakeDeserializer();

to:

auto deserializer = DeferredMessage::FromSpan(span<uint8_t>(bytes))->MakeDeserializer();
🤖 Prompt for AI Agents
In deps/inspector_protocol/crdtp/protocol_core.h around line 343, the call
passes a std::vector<uint8_t> directly to DeferredMessage::FromSpan, but
FromSpan expects a span (std::span<const uint8_t>), so replace the implicit
vector-to-span usage with an explicit span construction; change the call to
construct a span from bytes (e.g., span<uint8_t>(bytes)) before passing it to
FromSpan so MakeDeserializer() receives the correct span type.

Comment on lines +89 to +99
match = re.compile(
r'^include (.*)').match(line)
if match:
included_filename = match.group(1)
if path.isabs(included_filename):
raise Exception("Only relative paths are supported in include's")
resolved_path = path.normpath(path.join(path.dirname(file_name), included_filename))
with open(resolved_path, 'r') as file:
included_data = parse(file.read(), resolved_path, map_binary_to_string)
protocol['domains'].extend(included_data['domains'])
continue
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

Fix undefined path reference; consider tightening include handling

  • On Line 93 and Line 95, path.isabs, path.normpath, path.join, and path.dirname will raise NameError because path is never defined (only import os.path exists). Use os.path instead.

Apply this minimal fix:

-      if path.isabs(included_filename):
+      if os.path.isabs(included_filename):
         raise Exception("Only relative paths are supported in include's")
-      resolved_path = path.normpath(path.join(path.dirname(file_name), included_filename))
+      resolved_path = os.path.normpath(
+          os.path.join(os.path.dirname(file_name), included_filename))

Optional follow-ups (non-blocking):

  • Strip whitespace from the included filename to avoid subtle path issues:
-      included_filename = match.group(1)
+      included_filename = match.group(1).strip()
  • Replace the generic Exception with a more specific error type (e.g. ValueError) and simplify the message to avoid the odd "include's" wording:
-      if os.path.isabs(included_filename):
-        raise Exception("Only relative paths are supported in include's")
+      if os.path.isabs(included_filename):
+        raise ValueError("Only relative paths are supported in include directives")
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
match = re.compile(
r'^include (.*)').match(line)
if match:
included_filename = match.group(1)
if path.isabs(included_filename):
raise Exception("Only relative paths are supported in include's")
resolved_path = path.normpath(path.join(path.dirname(file_name), included_filename))
with open(resolved_path, 'r') as file:
included_data = parse(file.read(), resolved_path, map_binary_to_string)
protocol['domains'].extend(included_data['domains'])
continue
match = re.compile(
r'^include (.*)').match(line)
if match:
included_filename = match.group(1)
if os.path.isabs(included_filename):
raise Exception("Only relative paths are supported in include's")
resolved_path = os.path.normpath(
os.path.join(os.path.dirname(file_name), included_filename))
with open(resolved_path, 'r') as file:
included_data = parse(file.read(), resolved_path, map_binary_to_string)
protocol['domains'].extend(included_data['domains'])
continue
🧰 Tools
🪛 Pylint (4.0.4)

[error] 93-93: Undefined variable 'path'

(E0602)


[error] 95-95: Undefined variable 'path'

(E0602)


[error] 95-95: Undefined variable 'path'

(E0602)


[error] 95-95: Undefined variable 'path'

(E0602)

🪛 Ruff (0.14.7)

93-93: Undefined name path

(F821)


94-94: Create your own exception

(TRY002)


94-94: Avoid specifying long messages outside the exception class

(TRY003)


95-95: Undefined name path

(F821)


95-95: Undefined name path

(F821)


95-95: Undefined name path

(F821)

🤖 Prompt for AI Agents
In deps/inspector_protocol/pdl.py around lines 89 to 99, the code references an
undefined name `path` (using path.isabs, path.normpath, path.join, path.dirname)
which causes NameError; replace those uses with `os.path` (e.g. `os.path.isabs`,
`os.path.normpath`, etc.) and ensure you import os at top if not present;
additionally, strip whitespace from the matched included filename (e.g.
included_filename = match.group(1).strip()) and replace the generic Exception
with a ValueError and a clearer message like "Only relative include paths are
supported." to tighten error handling.

@santigimeno santigimeno merged commit 0bf8f8c into node-v24.x-nsolid-v6.x Dec 3, 2025
11 of 16 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.