Skip to content

docs(node): document install tool options#10186

Closed
risu729 wants to merge 1 commit into
jdx:mainfrom
risu729:docs/node-tool-options
Closed

docs(node): document install tool options#10186
risu729 wants to merge 1 commit into
jdx:mainfrom
risu729:docs/node-tool-options

Conversation

@risu729
Copy link
Copy Markdown
Contributor

@risu729 risu729 commented May 31, 2026

Sorry for the noise. They're not supported as tool opts.

Summary

  • document Node install settings that can be set as tool options
  • show precedence of Node tool options over node.* settings for a single tool request

Verification

  • mise x prettier -- prettier --check docs/lang/node.md
  • git diff --check

Companion docs for #9991.

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 31, 2026

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 21013439-e107-45c5-aeca-1437a7aa23e9

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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

@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps Bot commented May 31, 2026

Greptile Summary

This documentation-only PR adds a new "Node install options" section to docs/lang/node.md, listing 10 node settings (compile, mirror_url, flavor, cflags, configure_opts, make, make_opts, make_install_opts, ninja, concurrency) that are claimed to be usable as inline tool options in [tools].

  • A reference table maps each tool option to its equivalent node.* global setting, and a TOML snippet shows the expected usage (node = { version = \"22\", compile = true, ... }).
  • The section notes that tool options take precedence over node.* settings for a single tool request, but the backing implementation lives in companion PR fix(node): include source build options in lock identity #9991 which has not yet been merged into main.

Confidence Score: 3/5

The docs PR is safe as standalone text, but if merged before #9991 it advertises a feature that has no backing code in node.rs — users following the example will see their options silently ignored.

The node plugin's install_version_() only consults Settings::get() (global config) and BuildOpts::new() has no path that reads per-tool overrides from the tool version's options map. All ten documented options would be no-ops if a user follows the example in this PR today, making the documentation actively misleading until #9991 lands.

docs/lang/node.md — the new section should only be merged after src/plugins/core/node.rs gains the per-tool override wiring from #9991.

Important Files Changed

Filename Overview
docs/lang/node.md Adds a "Node install options" table documenting 10 settings that can be used as per-tool inline options, plus a TOML usage example. The documented feature is not yet implemented in node.rs — it depends on companion PR #9991.

Reviews (1): Last reviewed commit: "docs(node): document install tool option..." | Re-trigger Greptile

Comment thread docs/lang/node.md
Comment on lines +28 to +49
### Node install options

Most Node install settings can also be set as tool options for a single `node` entry.
Tool options take precedence over `node.*` settings for that tool request.

| Tool option | Equivalent setting | Description |
| ------------------- | ------------------------ | ------------------------------------------------- |
| `compile` | `node.compile` | Compile Node from source. |
| `mirror_url` | `node.mirror_url` | Mirror to download Node tarballs from. |
| `flavor` | `node.flavor` | Node binary flavor such as `musl` or `glibc-217`. |
| `cflags` | `node.cflags` | Additional `CFLAGS` used for source builds. |
| `configure_opts` | `node.configure_opts` | Additional `./configure` options. |
| `make` | `node.make` | Make command to use for source builds. |
| `make_opts` | `node.make_opts` | Additional make options. |
| `make_install_opts` | `node.make_install_opts` | Additional `make install` options. |
| `ninja` | `node.ninja` | Use ninja instead of make for source builds. |
| `concurrency` | `node.concurrency` | Number of parallel make jobs. |

```toml
[tools]
node = { version = "22", compile = true, configure_opts = "--openssl-no-asm", make = "gmake" }
```
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.

P1 Documented feature not yet implemented in codebase

The node plugin's install_version_() in src/plugins/core/node.rs only calls Settings::get() (global settings) and BuildOpts::new() has no code that reads per-tool overrides from tv. None of the ten options listed here (compile, mirror_url, flavor, etc.) will be applied if set as inline tool options — they are silently ignored. This PR is marked as a companion to #9991, which is the implementation that would wire these overrides in. Merging this documentation before #9991 lands means the advertised node = { version = "22", compile = true, ... } syntax will have no effect.

@risu729 risu729 closed this Jun 1, 2026
@risu729 risu729 deleted the docs/node-tool-options branch June 1, 2026 15:00
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