diff --git a/doc/api/errors.md b/doc/api/errors.md index 72e61c49bb970a..f34b53e0110598 100644 --- a/doc/api/errors.md +++ b/doc/api/errors.md @@ -1848,6 +1848,204 @@ Creation of a [`zlib`][] object failed due to incorrect configuration. A module file could not be resolved while attempting a [`require()`][] or `import` operation. +## Legacy Node.js Error Codes + +> Stability: 0 - Deprecated. These error codes are either inconsistent, or have +> been removed. + + +### ERR_HTTP2_FRAME_ERROR + + +Used when a failure occurs sending an individual frame on the HTTP/2 +session. + + +### ERR_HTTP2_HEADERS_OBJECT + + +Used when an HTTP/2 Headers Object is expected. + + +### ERR_HTTP2_HEADER_REQUIRED + + +Used when a required header is missing in an HTTP/2 message. + + +### ERR_HTTP2_INFO_HEADERS_AFTER_RESPOND + + +HTTP/2 informational headers must only be sent *prior* to calling the +`Http2Stream.prototype.respond()` method. + + +### ERR_HTTP2_STREAM_CLOSED + + +Used when an action has been performed on an HTTP/2 Stream that has already +been closed. + + +### ERR_HTTP_INVALID_CHAR + + +Used when an invalid character is found in an HTTP response status message +(reason phrase). + + +### ERR_NAPI_CONS_PROTOTYPE_OBJECT + + +Used by the `N-API` when `Constructor.prototype` is not an object. + + +### ERR_OUTOFMEMORY + + +Used generically to identify that an operation caused an out of memory +condition. + + +### ERR_PARSE_HISTORY_DATA + + +The `repl` module was unable to parse data from the REPL history file. + + +### ERR_STREAM_READ_NOT_IMPLEMENTED + + +Used when an attempt is made to use a readable stream that has not implemented +[`readable._read()`][]. + + +### ERR_TLS_RENEGOTIATION_FAILED + + +Used when a TLS renegotiation request has failed in a non-specific way. + + +### ERR_UNKNOWN_BUILTIN_MODULE + + +The `'ERR_UNKNOWN_BUILTIN_MODULE'` error code is used to identify a specific +kind of internal Node.js error that should not typically be triggered by user +code. Instances of this error point to an internal bug within the Node.js +binary itself. + + +### ERR_VALUE_OUT_OF_RANGE + + +Used when a given value is out of the accepted range. + + +### ERR_ZLIB_BINDING_CLOSED + + +Used when an attempt is made to use a `zlib` object after it has already been +closed. + +### Other error codes + +These errors have never been released, but had been present on master between +releases. + + +#### ERR_FS_WATCHER_ALREADY_STARTED + +An attempt was made to start a watcher returned by `fs.watch()` that has +already been started. + + +#### ERR_FS_WATCHER_NOT_STARTED + +An attempt was made to initiate operations on a watcher returned by +`fs.watch()` that has not yet been started. + + +#### ERR_HTTP2_ALREADY_SHUTDOWN + +Occurs with multiple attempts to shutdown an HTTP/2 session. + + +#### ERR_HTTP2_ERROR + +A non-specific HTTP/2 error has occurred. + + +#### ERR_INVALID_REPL_HISTORY + +Used in the `repl` in case the old history file is used and an error occurred +while trying to read and parse it. + + +#### ERR_MISSING_DYNAMIC_INSTANTIATE_HOOK + +Used when an [ES6 module][] loader hook specifies `format: 'dynamic'` but does +not provide a `dynamicInstantiate` hook. + + +#### ERR_STREAM_HAS_STRINGDECODER + +Used to prevent an abort if a string decoder was set on the Socket. + +```js +const Socket = require('net').Socket; +const instance = new Socket(); + +instance.setEncoding('utf8'); +``` + + +#### ERR_STRING_TOO_LARGE + +An attempt has been made to create a string larger than the maximum allowed +size. + [`--force-fips`]: cli.html#cli_force_fips [`'uncaughtException'`]: process.html#process_event_uncaughtexception [`child_process`]: child_process.html @@ -1875,6 +2073,7 @@ A module file could not be resolved while attempting a [`require()`][] or [`new URLSearchParams(iterable)`]: url.html#url_constructor_new_urlsearchparams_iterable [`process.send()`]: process.html#process_process_send_message_sendhandle_options_callback [`process.setUncaughtExceptionCaptureCallback()`]: process.html#process_process_setuncaughtexceptioncapturecallback_fn +[`readable._read()`]: stream.html#stream_readable_read_size_1 [`require()`]: modules.html#modules_require [`require('crypto').setEngine()`]: crypto.html#crypto_crypto_setengine_engine_flags [`server.listen()`]: net.html#net_server_listen diff --git a/tools/doc/common.js b/tools/doc/common.js index 4dfadd353d9ec8..7d8aefb65d84fd 100644 --- a/tools/doc/common.js +++ b/tools/doc/common.js @@ -34,6 +34,10 @@ function extractAndParseYAML(text) { meta.deprecated = arrify(meta.deprecated); } + if (meta.removed) { + meta.removed = arrify(meta.removed); + } + meta.changes = meta.changes || []; return meta; diff --git a/tools/doc/html.js b/tools/doc/html.js index d65a4b323aef36..f1ac9e144e61e1 100644 --- a/tools/doc/html.js +++ b/tools/doc/html.js @@ -264,6 +264,7 @@ function parseYAML(text) { const added = { description: '' }; const deprecated = { description: '' }; + const removed = { description: '' }; if (meta.added) { added.version = meta.added.join(', '); @@ -276,9 +277,15 @@ function parseYAML(text) { `Deprecated since: ${deprecated.version}`; } + if (meta.removed) { + removed.version = meta.removed.join(', '); + removed.description = `Removed in: ${removed.version}`; + } + if (meta.changes.length > 0) { if (added.description) meta.changes.push(added); if (deprecated.description) meta.changes.push(deprecated); + if (removed.description) meta.changes.push(removed); meta.changes.sort((a, b) => versionSort(a.version, b.version)); @@ -299,7 +306,8 @@ function parseYAML(text) { result += '\n\n'; } else { - result += `${added.description}${deprecated.description}\n`; + result += `${added.description}${deprecated.description}` + + `${removed.description}\n`; } if (meta.napiVersion) {