docs(node): document install tool options#10186
Conversation
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
Greptile SummaryThis documentation-only PR adds a new "Node install options" section to
Confidence Score: 3/5The 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
Reviews (1): Last reviewed commit: "docs(node): document install tool option..." | Re-trigger Greptile |
| ### 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" } | ||
| ``` |
There was a problem hiding this comment.
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.
Sorry for the noise. They're not supported as tool opts.
Summary
node.*settings for a single tool requestVerification
mise x prettier -- prettier --check docs/lang/node.mdgit diff --checkCompanion docs for #9991.