Uh oh!
There was an error while loading. Please reload this page.
doc: use @node-core/remark-lint for linting - #62090
Conversation
nodejs-github-bot
commented
Mar 3, 2026
Review requested:
|
There was a problem hiding this comment.
Pull request overview
This PR migrates documentation linting/formatting to @node-core/remark-lint (which leverages doc-kit) and updates the repo to comply with the new lint rules across Markdown and API docs.
Changes:
- Replace the old
tools/lint-mdlinter with a newtools/doc/lint-md.mjsimplementation based on@node-core/remark-lint(including doc/api-specific linting). - Rewire
make lint-md/make format-mdand related dependency installation to usetools/doc. - Apply remark-lint-driven formatting updates across documentation (e.g., type union formatting, horizontal rules, changelog metadata formatting).
Reviewed changes
Copilot reviewed 23 out of 38 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| vcbuild.bat | Updates Windows build/lint flow to use doctools for Markdown lint/format. |
| tools/lint-md/package.json | Removes legacy Markdown linter package definition. |
| tools/lint-md/package-lock.json | Removes legacy Markdown linter lockfile. |
| tools/lint-md/lint-md.mjs | Removes legacy Markdown lint/format script. |
| tools/doc/package.json | Adds dependencies required for new remark-lint-based Markdown linting. |
| tools/doc/list-released-versions-from-changelogs.mjs | Refactors released-version extraction into an exported helper for linting. |
| tools/doc/lint-md.mjs | Adds new Markdown lint/format entrypoint using @node-core/remark-lint (+ API rules). |
| doc/type-map.json | Updates type map entries to satisfy new API lint rules. |
| doc/contributing/releases.md | Replaces *** separators with --- per remark-lint expectations. |
| doc/contributing/collaborator-guide.md | Replaces *** separators with --- per remark-lint expectations. |
| doc/changelogs/CHANGELOG_V15.md | Replaces *** separators with --- per remark-lint expectations. |
| doc/changelogs/CHANGELOG_V12.md | Replaces *** separators with --- per remark-lint expectations. |
| doc/changelogs/CHANGELOG_IOJS.md | Replaces *** separators with --- per remark-lint expectations. |
| doc/api/util.md | Normalizes union type formatting ({a|b}) to satisfy lint rules. |
| doc/api/url.md | Normalizes union type formatting ({a|b}) to satisfy lint rules. |
| doc/api/test.md | Normalizes union type formatting ({a|b}) to satisfy lint rules. |
| doc/api/sqlite.md | Normalizes union type formatting ({a|b}) to satisfy lint rules. |
| doc/api/quic.md | Normalizes union type formatting ({a|b}) to satisfy lint rules. |
| doc/api/process.md | Normalizes union type formatting ({a|b}) to satisfy lint rules. |
| doc/api/modules.md | Normalizes union type formatting ({a|b}) to satisfy lint rules. |
| doc/api/inspector.md | Adjusts content to satisfy updated doc linting rules (e.g., stability nodes). |
| doc/api/https.md | Normalizes union type formatting ({a|b}) to satisfy lint rules. |
| doc/api/http.md | Normalizes union type formatting ({a|b}) to satisfy lint rules. |
| doc/api/errors.md | Updates changelog YAML metadata (full commit SHA requirement). |
| doc/api/dns.md | Normalizes union type formatting ({a|b}) to satisfy lint rules. |
| doc/api/diagnostics_channel.md | Normalizes union type formatting ({a|b}) to satisfy lint rules. |
| doc/api/deprecations.md | Reformats multi-PR YAML metadata into separate entries per lint rules. |
| doc/api/crypto.md | Normalizes union type formatting ({a|b}) to satisfy lint rules. |
| doc/api/buffer.md | Normalizes union type formatting ({a|b}) to satisfy lint rules. |
| doc/README.md | Replaces *** separators with --- per remark-lint expectations. |
| Makefile | Points lint-md / format-md targets to tools/doc/lint-md.mjs and doctools deps. |
| CHANGELOG.md | Replaces *** separators with --- per remark-lint expectations. |
| .github/workflows/test-macos.yml | Removes path trigger references to removed tools/lint-md. |
| .github/workflows/linters.yml | Removes the old “get released versions” step for the prior linter flow. |
| .github/workflows/coverage-windows.yml | Removes path trigger references to removed tools/lint-md. |
| .github/workflows/build-tarball.yml | Removes path trigger references to removed tools/lint-md. |
| .github/dependabot.yml | Removes dependabot updates for the removed tools/lint-md package. |
Comments suppressed due to low confidence (1)
.github/workflows/linters.yml:139
- The workflow removes the
get-released-versionsstep, but the "Lint markdown files" step still setsNODE_RELEASED_VERSIONSfromsteps.get-released-versions.outputs.... This reference will be undefined and should be removed or replaced (the new markdown linter now computes released versions itself).
- name: Lint markdown files
run: |
echo "::add-matcher::.github/workflows/remark-lint-problem-matcher.json"
NODE=$(command -v node) make lint-md
env:
NODE_RELEASED_VERSIONS: ${{ steps.get-released-versions.outputs.NODE_RELEASED_VERSIONS }}
lint-nix:
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
This uses |
| - version: v11.0.0 | ||
| pr-url: https://github.com/nodejs/node/pull/23017 | ||
| description: Runtime deprecation. |
There was a problem hiding this comment.
This doesn't seem right, the API was not runtime deprecated in Node.js 11.0.0
There was a problem hiding this comment.
That's because this API was runtime deprecated, and had it's deprecation revoked in the same version
There was a problem hiding this comment.
I know that, I'm saying it's going to be confusing for readers to document a runtime deprecation that was never released
There was a problem hiding this comment.
I see, what would you recommend?
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@## main #62090 +/- ##
==========================================
+ Coverage 89.58% 89.65% +0.07%
==========================================
Files 674 676 +2 Lines 205159 206328 +1169 Branches 39352 39528 +176 ==========================================
+ Hits 183792 184986 +1194 + Misses 13583 13484 -99 - Partials 7784 7858 +74 🚀 New features to boost your workflow:
|
aduh95
commented
Mar 4, 2026
Can we make it catch things like #62100? |
Will do! (Also, this is blocked by #62139) |
This pull request has been marked as stale due to 90 days of inactivity. |
avivkeller
commented
Aug 6, 2026
Not stale! Just on hold until doc-kit packages are named |
This PR lints the documentation according to https://www.npmjs.com/package/@node-core/remark-lint, the linter which uses
doc-kitto lint.The differences with this linter are:
---instead of***, like is used in other organization repos, just a|