Skip to content

build, doc: generate node.1 with doc-kit - #62044

Merged
nodejs-github-bot merged 1 commit into
nodejs:mainfrom
avivkeller:generate-node.1-with-doc-kit
Jun 20, 2026
Merged

build, doc: generate node.1 with doc-kit#62044
nodejs-github-bot merged 1 commit into
nodejs:mainfrom
avivkeller:generate-node.1-with-doc-kit

Conversation

@avivkeller

@avivkelleravivkeller commented Feb 28, 2026

Copy link
Copy Markdown
Member

We recently moved node to build with doc-kit, the new tooling for documentation. doc-kit also provides a man-page generator, which PR changes core to use.

cc @nodejs/web-infra


Notable Change Text:

The node executable’s man page now provides complete CLI flag and environment variable coverage. Previously, many flags, environment variables, and descriptions were missing. Now, the man page now lists all supported flags and environment variables with their full descriptions, matching the information available in the Node.js CLI documentation.

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

Review requested:

  • @nodejs/build
  • @nodejs/config
  • @nodejs/tsc

@nodejs-github-botnodejs-github-bot added lib / src Issues and PRs related to general changes in the lib or src directory. needs-ci PRs that need a full CI run. labels Feb 28, 2026
@avivkeller
avivkeller marked this pull request as ready for review February 28, 2026 17:32
@avivkelleravivkeller added doc Issues and PRs related to the documentations. build Issues and PRs related to build files or the CI. cli Issues and PRs related to the Node.js command line interface. and removed lib / src Issues and PRs related to general changes in the lib or src directory. labels Feb 28, 2026
@aduh95

Copy link
Copy Markdown
Contributor

The tests for this generator are here, and as such, do not need to exist in this repository.

I disagree, I think there's value in having tests on this repo so we can confidently approve updates or even that PR.

@avivkeller

Copy link
Copy Markdown
MemberAuthor

I disagree, I think there's value in having tests on this repo so we can confidently approve updates or even that PR.

Noted. I'll move the tests into the doctool tests, and test them with the rest of the documentation generator

@codecov

codecovBot commented Feb 28, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 90.34%. Comparing base (17e4196) to head (2dae1ba).
⚠️ Report is 9 commits behind head on main.

Additional details and impacted files
@@ Coverage Diff @@## main #62044 +/- ##
==========================================
+ Coverage 90.33% 90.34% +0.01% 
==========================================
Files 732 732 Lines 236454 236507 +53 Branches 44540 44532 -8 ==========================================
+ Hits 213589 213679 +90 + Misses 14581 14540 -41 - Partials 8284 8288 +4 
Files with missing linesCoverage Δ
src/node_options.cc76.67% <ø> (+0.09%)⬆️

... and 49 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@avivkelleravivkeller added the author ready PRs that have at least one approval, no pending requests for changes, and a CI started. label Feb 28, 2026
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

CopilotAI review requested due to automatic review settings March 1, 2026 21:11

CopilotAI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

This PR migrates the Node.js man page (node.1) generation to doc-kit and updates build/test/install paths accordingly, removing the previously checked-in doc/node.1 source.

Changes:

  • Generate out/doc/node.1 via doc-kit (make doc-only) and use it for packaging/install.
  • Update doctool tests to read the man page from out/doc/node.1.
  • Remove doc/node.1 from the repository and adjust related references.

Reviewed changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 2 comments.

Show a summary per file
FileDescription
tools/install.pyInstalls the man page from out/doc/node.1 instead of doc/node.1.
test/parallel/test-cli-node-options-docs.jsRemoves man-page-based option/envvar cross-checking.
test/doctool/test-manpage-options.mjsUpdates manpage path to out/doc/node.1 and adds Windows skip.
test/doctool/test-manpage-envvars.mjsUpdates manpage path to out/doc/node.1 and adds Windows skip.
src/node_options.ccUpdates guidance comment to only mention doc/api/cli.md.
doc/node.1Deletes the checked-in man page file.
MakefileAdds out/doc/node.1 generation rule and wires it into doc-only, install, and tarball creation.
BUILDING.mdUpdates instructions to read the generated man page from out/doc/node.1.
Comments suppressed due to low confidence (4)

test/doctool/test-manpage-options.mjs:9

  • common is referenced but never imported/bound in this module. import '../common/index.mjs' only has side effects and does not define a common identifier, so this will throw a ReferenceError before the test can skip on Windows. Import it as a namespace (e.g., import * as common from '../common/index.mjs';) or otherwise ensure common is defined.
    test/doctool/test-manpage-envvars.mjs:9
  • common is referenced but never imported/bound in this module. import '../common/index.mjs' does not create a common identifier, so this will throw a ReferenceError before the test can skip on Windows. Import it as a namespace (e.g., import * as common from '../common/index.mjs';).
    test/doctool/test-manpage-options.mjs:58
  • The test now reads from out/doc/node.1, but the failure message still refers to doc/node.1, which will be confusing when this fails. Update the message to reference out/doc/node.1 (or interpolate the actual manPagePath).
    test/doctool/test-manpage-envvars.mjs:26
  • This test now reads the man page from out/doc/node.1, but the assertion message still says it scanned doc/node.1. Update the message to match the actual path (ideally by including the computed manPagePath) so failures are actionable.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment threadtools/install.py
Comment threadMakefile
Comment threadsrc/node_options.cc Outdated
Comment threadBUILDING.md
Comment threadMakefile Outdated
Comment threadMakefile
@avivkeller
avivkellerforce-pushed the generate-node.1-with-doc-kit branch from 303d765 to 383904cCompareMarch 1, 2026 22:40
@avivkeller
avivkeller requested a review from aduh95March 2, 2026 21:11
Comment threadtest/doctool/test-manpage-node-options.js
@avivkeller

Copy link
Copy Markdown
MemberAuthor

@aduh95 any other concerns?

@avivkelleravivkeller added the request-ci Add this label to start a Jenkins CI on a PR. label Mar 15, 2026
@github-actionsgithub-actionsBot added request-ci-failed An error occurred while starting CI via request-ci label, and manual interventon is needed. and removed request-ci Add this label to start a Jenkins CI on a PR. labels Mar 15, 2026
@github-actions

Copy link
Copy Markdown
Contributor
Failed to start CI
 ⚠ Commits were pushed since the last approving review:
⚠ - build, doc: generate node.1 with doc-kit
✘ Refusing to run CI on potentially unsafe PR
https://github.com/nodejs/node/actions/runs/23118175264

@aduh95aduh95 added the request-ci Add this label to start a Jenkins CI on a PR. label Jun 19, 2026
@github-actionsgithub-actionsBot added request-ci-failed An error occurred while starting CI via request-ci label, and manual interventon is needed. and removed request-ci Add this label to start a Jenkins CI on a PR. labels Jun 19, 2026
@github-actions

Copy link
Copy Markdown
Contributor
Failed to start CI
- Validating Jenkins credentials
✔ Jenkins credentials valid
- Querying data for job/node-test-pull-request/72609/
[SyntaxError: Unexpected token '<', ..." https://github.com/nodejs/node/actions/runs/27804504061

@aduh95aduh95 added request-ci Add this label to start a Jenkins CI on a PR. and removed request-ci-failed An error occurred while starting CI via request-ci label, and manual interventon is needed. labels Jun 19, 2026
@github-actionsgithub-actionsBot added request-ci-failed An error occurred while starting CI via request-ci label, and manual interventon is needed. and removed request-ci Add this label to start a Jenkins CI on a PR. labels Jun 19, 2026
@github-actions

Copy link
Copy Markdown
Contributor
Failed to start CI
- Validating Jenkins credentials
✔ Jenkins credentials valid
- Querying data for job/node-test-pull-request/72609/
[SyntaxError: Unexpected token '<', ..." https://github.com/nodejs/node/actions/runs/27804504061

1 similar comment
@github-actions

Copy link
Copy Markdown
Contributor
Failed to start CI
- Validating Jenkins credentials
✔ Jenkins credentials valid
- Querying data for job/node-test-pull-request/72609/
[SyntaxError: Unexpected token '<', ..." https://github.com/nodejs/node/actions/runs/27804504061

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

@mcollinamcollina left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

lgtm

@mcollinamcollina added the commit-queue Add this label to land a pull request using GitHub Actions. label Jun 20, 2026
@nodejs-github-botnodejs-github-bot removed the commit-queue Add this label to land a pull request using GitHub Actions. label Jun 20, 2026
@nodejs-github-bot
nodejs-github-bot merged commit 81e93df into nodejs:mainJun 20, 2026
83 of 84 checks passed
@nodejs-github-bot

Copy link
Copy Markdown
Collaborator

Landed in 81e93df

aduh95 pushed a commit that referenced this pull request Jun 20, 2026
Signed-off-by: avivkeller <me@aviv.sh>
PR-URL: #62044
Reviewed-By: Claudio Wunder <cwunder@gnome.org>
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
@avivkelleravivkeller added the notable-change PRs with changes that should be highlighted in changelogs. label Jun 20, 2026
@github-actions

Copy link
Copy Markdown
Contributor

The notable-changePRs with changes that should be highlighted in changelogs. label has been added by @avivkeller.

Please suggest a text for the release notes if you'd like to include a more detailed summary, then proceed to update the PR description with the text or a link to the notable change suggested text comment. Otherwise, the commit will be placed in the Other Notable Changes section.

nodejs-github-bot added a commit that referenced this pull request Jun 22, 2026
Notable changes:
build, doc:
* generate node.1 with doc-kit (Aviv Keller) #62044
deps:
* (SEMVER-MINOR) update OpenSSL build config to support compression (Tim Perry) #62217
doc:
* (SEMVER-MINOR) update `blockList` stability status to release candidate (alphaleadership) #63050
fs:
* (SEMVER-MINOR) support caller-supplied readFile() buffers (Matteo Collina) #63634
http:
* (SEMVER-MINOR) close pre-request sockets in closeIdleConnections (semimikoh) #63470
loader:
* (SEMVER-MINOR) implement package maps (Maël Nison) #62239
net:
* (SEMVER-MINOR) support TCP_KEEPINTVL and TCP_KEEPCNT in setKeepAlive (Guy Bedford) #63825
tls:
* (SEMVER-MINOR) add certificateCompression option (Tim Perry) #62217
vfs:
* (SEMVER-MINOR) dispatch fs/promises to mounted VFS instances (Matteo Collina) #63537
* (SEMVER-MINOR) add minimal node:vfs subsystem (Matteo Collina) #63115
PR-URL: #64058
@aduh95aduh95 added dont-land-on-v22.x PRs that should not land on the v22.x-staging branch and should not be released in v22.x. dont-land-on-v24.x PRs that should not land on the v24.x-staging branch and should not be released in v24.x. and removed notable-change PRs with changes that should be highlighted in changelogs. labels Jun 23, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

author readyPRs that have at least one approval, no pending requests for changes, and a CI started.buildIssues and PRs related to build files or the CI.cliIssues and PRs related to the Node.js command line interface.docIssues and PRs related to the documentations.dont-land-on-v22.xPRs that should not land on the v22.x-staging branch and should not be released in v22.x.dont-land-on-v24.xPRs that should not land on the v24.x-staging branch and should not be released in v24.x.needs-ciPRs that need a full CI run.request-ci-failedAn error occurred while starting CI via request-ci label, and manual interventon is needed.review wantedPRs that need reviews.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants

@avivkeller@nodejs-github-bot@aduh95@ovflowd@mcollina@panva