-
-
Couldn't load subscription status.
- Fork 33.6k
doc: restore documentation for two error codes #21484
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
doc: restore documentation for two error codes #21484
Conversation
|
/cc @gnbezerra, @BridgeAR, @jasnell |
|
Note: I consider this as a partial revert and specifically do not want to change the documentation of those error codes in the process of restoring it — that should be done separately, if needed. |
|
8.x, 9.x, 10.x are affected, 6.x is not affected. |
|
👍 on this comment for fast-track (sorry for not mentioning it earlier). |
ERR_HTTP2_ERROR and ERR_UNKNOWN_BUILTIN_MODULE error codes documentation seem to have been accidentally removed in commit 1cdb41f (pull request nodejs#15160). This reverts that removal, restoring the documentation for those two error codes. Those error codes are used from lib/ folder. This is a part of the fixes hinted by nodejs#21470, which includes some tests for error codes usage and documentation and enforces a stricter format. PR-URL: nodejs#21484 Refs: nodejs#21470 Refs: nodejs#21440 Refs: nodejs#15160 Reviewed-By: Vse Mozhet Byt <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Trivikram Kamat <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Michaël Zasso <[email protected]>
537c41a to
cdb5985
Compare
|
Landed in cdb5985, thanks! |
ERR_HTTP2_ERROR and ERR_UNKNOWN_BUILTIN_MODULE error codes documentation seem to have been accidentally removed in commit 1cdb41f (pull request #15160). This reverts that removal, restoring the documentation for those two error codes. Those error codes are used from lib/ folder. This is a part of the fixes hinted by #21470, which includes some tests for error codes usage and documentation and enforces a stricter format. PR-URL: #21484 Refs: #21470 Refs: #21440 Refs: #15160 Reviewed-By: Vse Mozhet Byt <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Trivikram Kamat <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: Michaël Zasso <[email protected]>
This adds several sanity checks for error codes.
It scans:
* all natives (js sources),
* doc/api/*.md documentation
* src/node_errors.h (errors definition from the C++ side).
There is also a whitelist of manually created errors from JS side,
currently consisting of ERR_HTTP2_ERROR and ERR_UNKNOWN_BUILTIN_MODULE.
Alsom all ERR_NAPI_ codes are whitelisted, as those are created directly
on the cpp side, without declaring them first.
The performed checks:
1. All errors used from JS should be defined in `internal/errors` and
present in its .codes object. Whitelist (mentioned above) applies.
2. All errors instantiated from JS without arguments should support
0-arguments version.
3. All errors mentioned in doc should defined either in JS, C++, or
in the whitelist.
4. All errors mentioned anywhere should be documented.
5. Documentation of error codes should be sorted, have no repeats,
and include exactly one entry for every error code mentioned in
the documentation, formatted as `/\n### (ERR_[A-Z0-9_]+)\n`.
6. All doc entries for error codes should have appropriate anchors.
There is also a --report flag, which prints all the current issues and
exits without asserting, for manual inspection.
Individual fixes for those issues are landed in separate commits.
Refs: nodejs#21421
Refs: nodejs#21440
Refs: nodejs#21483
Refs: nodejs#21484
Refs: nodejs#21485
Refs: nodejs#21487
PR-URL: nodejs#21470
ERR_HTTP2_ERRORandERR_UNKNOWN_BUILTIN_MODULEerror codes documentation seem to have been accidentally removed in commit 1cdb41f (pull request #15160).This reverts that removal, restoring the documentation for those two error codes.
Those error codes are used from
lib/folder.This is a part of the fixes hinted by #21470, which includes some tests
for error codes usage and documentation and enforces a stricter format.
I split this into a separate commit/PR as this should be easy to land (and backport if needed), and some of the other fixes are more heavy and/or controversial.
Refs: #21470, #21440, #15160
Tests are not included — #21470 does that.
Exact usage locations:
node/lib/internal/bootstrap/loaders.js
Lines 146 to 150 in a40e062
node/lib/internal/http2/util.js
Lines 471 to 478 in a40e062
Checklist
make -j4 test(UNIX), orvcbuild test(Windows) passes