diff --git a/buffer/buf_readbiguint64be_offset.md b/buffer/buf_readbiguint64be_offset.md
index 4ad34a4e..3b49d2ed 100644
--- a/buffer/buf_readbiguint64be_offset.md
+++ b/buffer/buf_readbiguint64be_offset.md
@@ -2,6 +2,10 @@
added:
- v12.0.0
- v10.20.0
+changes:
+ - version: v14.10.0
+ pr-url: https://github.com/nodejs/node/pull/34960
+ description: This function is also available as `buf.readBigUint64BE()`.
-->
* `offset` {integer} 开始读取之前要跳过的字节数。必须满足:`0 <= offset <= buf.length - 8`。**默认值:** `0`。
diff --git a/buffer/buf_readbiguint64le_offset.md b/buffer/buf_readbiguint64le_offset.md
index f4a58a49..834484d8 100644
--- a/buffer/buf_readbiguint64le_offset.md
+++ b/buffer/buf_readbiguint64le_offset.md
@@ -2,6 +2,10 @@
added:
- v12.0.0
- v10.20.0
+changes:
+ - version: v14.10.0
+ pr-url: https://github.com/nodejs/node/pull/34960
+ description: This function is also available as `buf.readBigUint64LE()`.
-->
* `offset` {integer} 开始读取之前要跳过的字节数。必须满足:`0 <= offset <= buf.length - 8`。**默认值:** `0`。
diff --git a/buffer/buf_writebiguint64be_value_offset.md b/buffer/buf_writebiguint64be_value_offset.md
index 1d0cc9ee..e29cb2f5 100644
--- a/buffer/buf_writebiguint64be_value_offset.md
+++ b/buffer/buf_writebiguint64be_value_offset.md
@@ -2,6 +2,10 @@
added:
- v12.0.0
- v10.20.0
+changes:
+ - version: v14.10.0
+ pr-url: https://github.com/nodejs/node/pull/34960
+ description: This function is also available as `buf.writeBigUint64BE()`.
-->
* `value` {bigint} 要写入 `buf` 的数值。
diff --git a/buffer/buf_writebiguint64le_value_offset.md b/buffer/buf_writebiguint64le_value_offset.md
index e93e65e3..3153b42b 100644
--- a/buffer/buf_writebiguint64le_value_offset.md
+++ b/buffer/buf_writebiguint64le_value_offset.md
@@ -2,6 +2,10 @@
added:
- v12.0.0
- v10.20.0
+changes:
+ - version: v14.10.0
+ pr-url: https://github.com/nodejs/node/pull/34960
+ description: This function is also available as `buf.writeBigUint64LE()`.
-->
* `value` {bigint} 要写入 `buf` 的数值。
diff --git a/buffer/buffer_constants_max_length.md b/buffer/buffer_constants_max_length.md
index ab1a349c..3dde4773 100644
--- a/buffer/buffer_constants_max_length.md
+++ b/buffer/buffer_constants_max_length.md
@@ -4,8 +4,8 @@ added: v8.2.0
* {integer} 单个 `Buffer` 实例允许的最大内存。
-在 32 位的架构上,该值当前是 `(2^30)-1` (~1GB)。
-在 64 位的架构上,该值当前是 `(2^31)-1` (~2GB)。
+在 32 位的架构上,该值当前是 230 - 1 (~1GB)。
+在 64 位的架构上,该值当前是 231 - 1 (~2GB)。
也可使用 [`buffer.kMaxLength`]。
diff --git a/buffer/buffers_and_character_encodings.md b/buffer/buffers_and_character_encodings.md
index 2aecaff3..48afb795 100644
--- a/buffer/buffers_and_character_encodings.md
+++ b/buffer/buffers_and_character_encodings.md
@@ -58,7 +58,7 @@ Node.js 还支持以下两种二进制转文本的编码。
* `'ascii'`: 仅适用于 7 位 [ASCII] 数据。
当将字符串编码为 `Buffer` 时,这等效于使用 `'latin1'`。
- 当将 `Buffer` 解码为字符串时,则使用编码会在解码为 `'latin1'` 之前额外取消设置每个字节的最高位。
+ 当将 `Buffer` 解码为字符串时,则使用此编码会在解码为 `'latin1'` 之前额外取消设置每个字节的最高位。
通常,当在编码或解码纯 ASCII 文本时,应该没有理由使用这种编码,因为 `'utf8'`(或者,如果已知的数据始终为纯 ASCII,则为 `'latin1'`)会是更好的选择。
这仅为传统的兼容性而提供。
diff --git a/cli/trace_atomics_wait.md b/cli/trace_atomics_wait.md
index 9ff36395..8c01e847 100644
--- a/cli/trace_atomics_wait.md
+++ b/cli/trace_atomics_wait.md
@@ -6,14 +6,14 @@ Print short summaries of calls to [`Atomics.wait()`][] to stderr.
The output could look like this:
```text
-(node:15701) [Thread 0] Atomics.wait(
+ 0, 1, inf) started
-(node:15701) [Thread 0] Atomics.wait( + 0, 1, inf) did not wait because the values mismatched
-(node:15701) [Thread 0] Atomics.wait( + 0, 0, 10) started
-(node:15701) [Thread 0] Atomics.wait( + 0, 0, 10) timed out
-(node:15701) [Thread 0] Atomics.wait( + 4, 0, inf) started
-(node:15701) [Thread 1] Atomics.wait( + 4, -1, inf) started
-(node:15701) [Thread 0] Atomics.wait( + 4, 0, inf) was woken up by another thread
-(node:15701) [Thread 1] Atomics.wait( + 4, -1, inf) was woken up by another thread
+(node:15701) [Thread 0] Atomics.wait(<address> + 0, 1, inf) started
+(node:15701) [Thread 0] Atomics.wait(<address> + 0, 1, inf) did not wait because the values mismatched
+(node:15701) [Thread 0] Atomics.wait(<address> + 0, 0, 10) started
+(node:15701) [Thread 0] Atomics.wait(<address> + 0, 0, 10) timed out
+(node:15701) [Thread 0] Atomics.wait(<address> + 4, 0, inf) started
+(node:15701) [Thread 1] Atomics.wait(<address> + 4, -1, inf) started
+(node:15701) [Thread 0] Atomics.wait(<address> + 4, 0, inf) was woken up by another thread
+(node:15701) [Thread 1] Atomics.wait(<address> + 4, -1, inf) was woken up by another thread
```
The fields here correspond to:
diff --git a/crypto/crypto_randomint_min_max_callback.md b/crypto/crypto_randomint_min_max_callback.md
new file mode 100644
index 00000000..abefc1ae
--- /dev/null
+++ b/crypto/crypto_randomint_min_max_callback.md
@@ -0,0 +1,37 @@
+
+
+* `min` {integer} Start of random range (inclusive). **Default**: `0`.
+* `max` {integer} End of random range (exclusive).
+* `callback` {Function} `function(err, n) {}`.
+
+Return a random integer `n` such that `min <= n < max`. This
+implementation avoids [modulo bias][].
+
+The range (`max - min`) must be less than 248. `min` and `max` must
+be [safe integers][].
+
+If the `callback` function is not provided, the random integer is
+generated synchronously.
+
+```js
+// Asynchronous
+crypto.randomInt(3, (err, n) => {
+ if (err) throw err;
+ console.log(`Random number chosen from (0, 1, 2): ${n}`);
+});
+```
+
+```js
+// Synchronous
+const n = crypto.randomInt(3);
+console.log(`Random number chosen from (0, 1, 2): ${n}`);
+```
+
+```js
+// With `min` argument
+const n = crypto.randomInt(1, 7);
+console.log(`The dice rolled: ${n}`);
+```
+
diff --git a/crypto/node_js_crypto_constants.md b/crypto/node_js_crypto_constants.md
index 0d3e06e5..8407910c 100644
--- a/crypto/node_js_crypto_constants.md
+++ b/crypto/node_js_crypto_constants.md
@@ -85,6 +85,8 @@
+
+
diff --git a/deprecations/dep0001_http_outgoingmessage_prototype_flush.md b/deprecations/dep0001_http_outgoingmessage_prototype_flush.md
index e1172648..bf3be9a8 100644
--- a/deprecations/dep0001_http_outgoingmessage_prototype_flush.md
+++ b/deprecations/dep0001_http_outgoingmessage_prototype_flush.md
@@ -18,4 +18,3 @@ Type: End-of-Life
`OutgoingMessage.prototype.flush()` has been removed. Use
`OutgoingMessage.prototype.flushHeaders()` instead.
-
diff --git a/deprecations/dep0002_require_linklist.md b/deprecations/dep0002_require_linklist.md
index 9a04c1ee..8e67db07 100644
--- a/deprecations/dep0002_require_linklist.md
+++ b/deprecations/dep0002_require_linklist.md
@@ -15,4 +15,3 @@ Type: End-of-Life
The `_linklist` module is deprecated. Please use a userland alternative.
-
diff --git a/deprecations/dep0003_writablestate_buffer.md b/deprecations/dep0003_writablestate_buffer.md
index 128ee066..1c08444e 100644
--- a/deprecations/dep0003_writablestate_buffer.md
+++ b/deprecations/dep0003_writablestate_buffer.md
@@ -18,4 +18,3 @@ Type: End-of-Life
The `_writableState.buffer` has been removed. Use `_writableState.getBuffer()`
instead.
-
diff --git a/deprecations/dep0004_cryptostream_prototype_readystate.md b/deprecations/dep0004_cryptostream_prototype_readystate.md
index fee44eff..75122eae 100644
--- a/deprecations/dep0004_cryptostream_prototype_readystate.md
+++ b/deprecations/dep0004_cryptostream_prototype_readystate.md
@@ -17,4 +17,3 @@ Type: End-of-Life
The `CryptoStream.prototype.readyState` property was removed.
-
diff --git a/deprecations/dep0005_buffer_constructor.md b/deprecations/dep0005_buffer_constructor.md
index 745928e8..9d161d70 100644
--- a/deprecations/dep0005_buffer_constructor.md
+++ b/deprecations/dep0005_buffer_constructor.md
@@ -37,4 +37,3 @@ Without `--pending-deprecation`, runtime warnings occur only for code not in
`Buffer()` usage in dependencies. With `--pending-deprecation`, a runtime
warning results no matter where the `Buffer()` usage occurs.
-
diff --git a/deprecations/dep0006_child_process_options_customfds.md b/deprecations/dep0006_child_process_options_customfds.md
index 314f766b..7cb47b8c 100644
--- a/deprecations/dep0006_child_process_options_customfds.md
+++ b/deprecations/dep0006_child_process_options_customfds.md
@@ -20,4 +20,3 @@ Within the [`child_process`][] module's `spawn()`, `fork()`, and `exec()`
methods, the `options.customFds` option is deprecated. The `options.stdio`
option should be used instead.
-
diff --git a/deprecations/dep0007_replace_cluster_worker_suicide_with_worker_exitedafterdisconnect.md b/deprecations/dep0007_replace_cluster_worker_suicide_with_worker_exitedafterdisconnect.md
index ad876489..be2b541f 100644
--- a/deprecations/dep0007_replace_cluster_worker_suicide_with_worker_exitedafterdisconnect.md
+++ b/deprecations/dep0007_replace_cluster_worker_suicide_with_worker_exitedafterdisconnect.md
@@ -23,4 +23,3 @@ provide an indication of how and why the `Worker` instance exited. In Node.js
[`worker.exitedAfterDisconnect`][] property. The old property name did not
precisely describe the actual semantics and was unnecessarily emotion-laden.
-
diff --git a/deprecations/dep0008_require_constants.md b/deprecations/dep0008_require_constants.md
index ac577dcc..719f48fe 100644
--- a/deprecations/dep0008_require_constants.md
+++ b/deprecations/dep0008_require_constants.md
@@ -15,4 +15,3 @@ relevant to specific Node.js builtin modules, developers should instead refer
to the `constants` property exposed by the relevant module. For instance,
`require('fs').constants` and `require('os').constants`.
-
diff --git a/deprecations/dep0009_crypto_pbkdf2_without_digest.md b/deprecations/dep0009_crypto_pbkdf2_without_digest.md
index 8e3ebd62..cc3b5c4e 100644
--- a/deprecations/dep0009_crypto_pbkdf2_without_digest.md
+++ b/deprecations/dep0009_crypto_pbkdf2_without_digest.md
@@ -31,4 +31,3 @@ is `undefined`.
Now, however, passing either `undefined` or `null` will throw a `TypeError`.
-
diff --git a/deprecations/dep0010_crypto_createcredentials.md b/deprecations/dep0010_crypto_createcredentials.md
index e8057a2a..cbf82f75 100644
--- a/deprecations/dep0010_crypto_createcredentials.md
+++ b/deprecations/dep0010_crypto_createcredentials.md
@@ -18,4 +18,3 @@ Type: End-of-Life
The `crypto.createCredentials()` API was removed. Please use
[`tls.createSecureContext()`][] instead.
-
diff --git a/deprecations/dep0011_crypto_credentials.md b/deprecations/dep0011_crypto_credentials.md
index 93e58624..a5b84a42 100644
--- a/deprecations/dep0011_crypto_credentials.md
+++ b/deprecations/dep0011_crypto_credentials.md
@@ -18,4 +18,3 @@ Type: End-of-Life
The `crypto.Credentials` class was removed. Please use [`tls.SecureContext`][]
instead.
-
diff --git a/deprecations/dep0012_domain_dispose.md b/deprecations/dep0012_domain_dispose.md
index 62072261..865abd88 100644
--- a/deprecations/dep0012_domain_dispose.md
+++ b/deprecations/dep0012_domain_dispose.md
@@ -18,4 +18,3 @@ Type: End-of-Life
`Domain.dispose()` has been removed. Recover from failed I/O actions
explicitly via error event handlers set on the domain instead.
-
diff --git a/deprecations/dep0013_fs_asynchronous_function_without_callback.md b/deprecations/dep0013_fs_asynchronous_function_without_callback.md
index feb51f31..4839555c 100644
--- a/deprecations/dep0013_fs_asynchronous_function_without_callback.md
+++ b/deprecations/dep0013_fs_asynchronous_function_without_callback.md
@@ -13,4 +13,3 @@ Type: End-of-Life
Calling an asynchronous function without a callback throws a `TypeError`
in Node.js 10.0.0 onwards. See .
-
diff --git a/deprecations/dep0014_fs_read_legacy_string_interface.md b/deprecations/dep0014_fs_read_legacy_string_interface.md
index 9eb26afa..55148e8b 100644
--- a/deprecations/dep0014_fs_read_legacy_string_interface.md
+++ b/deprecations/dep0014_fs_read_legacy_string_interface.md
@@ -21,4 +21,3 @@ Type: End-of-Life
The [`fs.read()`][] legacy `String` interface is deprecated. Use the `Buffer`
API as mentioned in the documentation instead.
-
diff --git a/deprecations/dep0015_fs_readsync_legacy_string_interface.md b/deprecations/dep0015_fs_readsync_legacy_string_interface.md
index fd9ab843..8458f014 100644
--- a/deprecations/dep0015_fs_readsync_legacy_string_interface.md
+++ b/deprecations/dep0015_fs_readsync_legacy_string_interface.md
@@ -21,4 +21,3 @@ Type: End-of-Life
The [`fs.readSync()`][] legacy `String` interface is deprecated. Use the
`Buffer` API as mentioned in the documentation instead.
-
diff --git a/deprecations/dep0016_global_root.md b/deprecations/dep0016_global_root.md
index d174baac..1e5b31c0 100644
--- a/deprecations/dep0016_global_root.md
+++ b/deprecations/dep0016_global_root.md
@@ -16,4 +16,3 @@ Type: End-of-Life
The `GLOBAL` and `root` aliases for the `global` property were deprecated
in Node.js 6.0.0 and have since been removed.
-
diff --git a/deprecations/dep0017_intl_v8breakiterator.md b/deprecations/dep0017_intl_v8breakiterator.md
index f04cc8f3..08cdedff 100644
--- a/deprecations/dep0017_intl_v8breakiterator.md
+++ b/deprecations/dep0017_intl_v8breakiterator.md
@@ -13,4 +13,3 @@ Type: End-of-Life
`Intl.v8BreakIterator` was a non-standard extension and has been removed.
See [`Intl.Segmenter`](https://github.com/tc39/proposal-intl-segmenter).
-
diff --git a/deprecations/dep0018_unhandled_promise_rejections.md b/deprecations/dep0018_unhandled_promise_rejections.md
index 24538bea..0d684620 100644
--- a/deprecations/dep0018_unhandled_promise_rejections.md
+++ b/deprecations/dep0018_unhandled_promise_rejections.md
@@ -11,4 +11,3 @@ Unhandled promise rejections are deprecated. In the future, promise rejections
that are not handled will terminate the Node.js process with a non-zero exit
code.
-
diff --git a/deprecations/dep0019_require_resolved_outside_directory.md b/deprecations/dep0019_require_resolved_outside_directory.md
index 60c067d6..1ce4be1a 100644
--- a/deprecations/dep0019_require_resolved_outside_directory.md
+++ b/deprecations/dep0019_require_resolved_outside_directory.md
@@ -18,4 +18,3 @@ Type: End-of-Life
In certain cases, `require('.')` could resolve outside the package directory.
This behavior has been removed.
-
diff --git a/deprecations/dep0020_server_connections.md b/deprecations/dep0020_server_connections.md
index 6f7412f3..4cd5082f 100644
--- a/deprecations/dep0020_server_connections.md
+++ b/deprecations/dep0020_server_connections.md
@@ -15,4 +15,3 @@ Type: Runtime
The [`Server.connections`][] property is deprecated. Please use the
[`Server.getConnections()`][] method instead.
-
diff --git a/deprecations/dep0021_server_listenfd.md b/deprecations/dep0021_server_listenfd.md
index 1ed6bdd5..c6085608 100644
--- a/deprecations/dep0021_server_listenfd.md
+++ b/deprecations/dep0021_server_listenfd.md
@@ -18,4 +18,3 @@ Type: End-of-Life
The `Server.listenFD()` method was deprecated and removed. Please use
[`Server.listen({fd: })`][] instead.
-
diff --git a/deprecations/dep0022_os_tmpdir.md b/deprecations/dep0022_os_tmpdir.md
index 20b73d38..342ac26e 100644
--- a/deprecations/dep0022_os_tmpdir.md
+++ b/deprecations/dep0022_os_tmpdir.md
@@ -13,4 +13,3 @@ Type: End-of-Life
The `os.tmpDir()` API was deprecated in Node.js 7.0.0 and has since been
removed. Please use [`os.tmpdir()`][] instead.
-
diff --git a/deprecations/dep0023_os_getnetworkinterfaces.md b/deprecations/dep0023_os_getnetworkinterfaces.md
index 56a7ed8d..151ac560 100644
--- a/deprecations/dep0023_os_getnetworkinterfaces.md
+++ b/deprecations/dep0023_os_getnetworkinterfaces.md
@@ -18,4 +18,3 @@ Type: End-of-Life
The `os.getNetworkInterfaces()` method is deprecated. Please use the
[`os.networkInterfaces()`][] method instead.
-
diff --git a/deprecations/dep0024_replserver_prototype_converttocontext.md b/deprecations/dep0024_replserver_prototype_converttocontext.md
index a7887cff..8adb6ef3 100644
--- a/deprecations/dep0024_replserver_prototype_converttocontext.md
+++ b/deprecations/dep0024_replserver_prototype_converttocontext.md
@@ -12,4 +12,3 @@ Type: End-of-Life
The `REPLServer.prototype.convertToContext()` API has been removed.
-
diff --git a/deprecations/dep0025_require_sys.md b/deprecations/dep0025_require_sys.md
index 4cc00be1..be97a169 100644
--- a/deprecations/dep0025_require_sys.md
+++ b/deprecations/dep0025_require_sys.md
@@ -14,4 +14,3 @@ Type: Runtime
The `sys` module is deprecated. Please use the [`util`][] module instead.
-
diff --git a/deprecations/dep0026_util_print.md b/deprecations/dep0026_util_print.md
index b230d3a1..00b2e46f 100644
--- a/deprecations/dep0026_util_print.md
+++ b/deprecations/dep0026_util_print.md
@@ -17,4 +17,3 @@ Type: End-of-Life
`util.print()` has been removed. Please use [`console.log()`][] instead.
-
diff --git a/deprecations/dep0027_util_puts.md b/deprecations/dep0027_util_puts.md
index dff041e3..3e9e46a1 100644
--- a/deprecations/dep0027_util_puts.md
+++ b/deprecations/dep0027_util_puts.md
@@ -17,4 +17,3 @@ Type: End-of-Life
`util.puts()` has been removed. Please use [`console.log()`][] instead.
-
diff --git a/deprecations/dep0028_util_debug.md b/deprecations/dep0028_util_debug.md
index e12c666d..9a0812ae 100644
--- a/deprecations/dep0028_util_debug.md
+++ b/deprecations/dep0028_util_debug.md
@@ -17,4 +17,3 @@ Type: End-of-Life
`util.debug()` has been removed. Please use [`console.error()`][] instead.
-
diff --git a/deprecations/dep0029_util_error.md b/deprecations/dep0029_util_error.md
index af81b71a..4035309d 100644
--- a/deprecations/dep0029_util_error.md
+++ b/deprecations/dep0029_util_error.md
@@ -17,4 +17,3 @@ Type: End-of-Life
`util.error()` has been removed. Please use [`console.error()`][] instead.
-
diff --git a/deprecations/dep0030_slowbuffer.md b/deprecations/dep0030_slowbuffer.md
index 7deae1eb..74ca9f73 100644
--- a/deprecations/dep0030_slowbuffer.md
+++ b/deprecations/dep0030_slowbuffer.md
@@ -13,4 +13,3 @@ Type: Documentation-only
The [`SlowBuffer`][] class is deprecated. Please use
[`Buffer.allocUnsafeSlow(size)`][] instead.
-
diff --git a/deprecations/dep0031_ecdh_setpublickey.md b/deprecations/dep0031_ecdh_setpublickey.md
index 6ba37846..6975a7cc 100644
--- a/deprecations/dep0031_ecdh_setpublickey.md
+++ b/deprecations/dep0031_ecdh_setpublickey.md
@@ -13,4 +13,3 @@ Type: Documentation-only
The [`ecdh.setPublicKey()`][] method is now deprecated as its inclusion in the
API is not useful.
-
diff --git a/deprecations/dep0032_domain_module.md b/deprecations/dep0032_domain_module.md
index 936e5f98..2f60ed32 100644
--- a/deprecations/dep0032_domain_module.md
+++ b/deprecations/dep0032_domain_module.md
@@ -14,4 +14,3 @@ Type: Documentation-only
The [`domain`][] module is deprecated and should not be used.
-
diff --git a/deprecations/dep0033_eventemitter_listenercount.md b/deprecations/dep0033_eventemitter_listenercount.md
index e8b8288f..95a5984d 100644
--- a/deprecations/dep0033_eventemitter_listenercount.md
+++ b/deprecations/dep0033_eventemitter_listenercount.md
@@ -15,4 +15,3 @@ Type: Documentation-only
The [`EventEmitter.listenerCount(emitter, eventName)`][] API is
deprecated. Please use [`emitter.listenerCount(eventName)`][] instead.
-
diff --git a/deprecations/dep0034_fs_exists_path_callback.md b/deprecations/dep0034_fs_exists_path_callback.md
index 9205e6ef..c463a1f5 100644
--- a/deprecations/dep0034_fs_exists_path_callback.md
+++ b/deprecations/dep0034_fs_exists_path_callback.md
@@ -15,4 +15,3 @@ Type: Documentation-only
The [`fs.exists(path, callback)`][] API is deprecated. Please use
[`fs.stat()`][] or [`fs.access()`][] instead.
-
diff --git a/deprecations/dep0035_fs_lchmod_path_mode_callback.md b/deprecations/dep0035_fs_lchmod_path_mode_callback.md
index fd801599..b6c64e99 100644
--- a/deprecations/dep0035_fs_lchmod_path_mode_callback.md
+++ b/deprecations/dep0035_fs_lchmod_path_mode_callback.md
@@ -13,4 +13,3 @@ Type: Documentation-only
The [`fs.lchmod(path, mode, callback)`][] API is deprecated.
-
diff --git a/deprecations/dep0036_fs_lchmodsync_path_mode.md b/deprecations/dep0036_fs_lchmodsync_path_mode.md
index cb42893c..9c84808b 100644
--- a/deprecations/dep0036_fs_lchmodsync_path_mode.md
+++ b/deprecations/dep0036_fs_lchmodsync_path_mode.md
@@ -13,4 +13,3 @@ Type: Documentation-only
The [`fs.lchmodSync(path, mode)`][] API is deprecated.
-
diff --git a/deprecations/dep0037_fs_lchown_path_uid_gid_callback.md b/deprecations/dep0037_fs_lchown_path_uid_gid_callback.md
index c50fa533..c8af7131 100644
--- a/deprecations/dep0037_fs_lchown_path_uid_gid_callback.md
+++ b/deprecations/dep0037_fs_lchown_path_uid_gid_callback.md
@@ -18,4 +18,3 @@ The [`fs.lchown(path, uid, gid, callback)`][] API was deprecated. The
deprecation was revoked because the requisite supporting APIs were added in
libuv.
-
diff --git a/deprecations/dep0038_fs_lchownsync_path_uid_gid.md b/deprecations/dep0038_fs_lchownsync_path_uid_gid.md
index d567b46e..70de341c 100644
--- a/deprecations/dep0038_fs_lchownsync_path_uid_gid.md
+++ b/deprecations/dep0038_fs_lchownsync_path_uid_gid.md
@@ -17,4 +17,3 @@ Type: Deprecation revoked
The [`fs.lchownSync(path, uid, gid)`][] API was deprecated. The deprecation was
revoked because the requisite supporting APIs were added in libuv.
-
diff --git a/deprecations/dep0039_require_extensions.md b/deprecations/dep0039_require_extensions.md
index df03cc15..d4ad66ba 100644
--- a/deprecations/dep0039_require_extensions.md
+++ b/deprecations/dep0039_require_extensions.md
@@ -14,4 +14,3 @@ Type: Documentation-only
The [`require.extensions`][] property is deprecated.
-
diff --git a/deprecations/dep0040_punycode_module.md b/deprecations/dep0040_punycode_module.md
index b17c9412..6e721903 100644
--- a/deprecations/dep0040_punycode_module.md
+++ b/deprecations/dep0040_punycode_module.md
@@ -10,4 +10,3 @@ Type: Documentation-only
The [`punycode`][] module is deprecated. Please use a userland alternative
instead.
-
diff --git a/deprecations/dep0041_node_repl_history_file_environment_variable.md b/deprecations/dep0041_node_repl_history_file_environment_variable.md
index d15bbb61..27718ffe 100644
--- a/deprecations/dep0041_node_repl_history_file_environment_variable.md
+++ b/deprecations/dep0041_node_repl_history_file_environment_variable.md
@@ -18,4 +18,3 @@ Type: End-of-Life
The `NODE_REPL_HISTORY_FILE` environment variable was removed. Please use
`NODE_REPL_HISTORY` instead.
-
diff --git a/deprecations/dep0042_tls_cryptostream.md b/deprecations/dep0042_tls_cryptostream.md
index 71bff536..74299c87 100644
--- a/deprecations/dep0042_tls_cryptostream.md
+++ b/deprecations/dep0042_tls_cryptostream.md
@@ -18,4 +18,3 @@ Type: End-of-Life
The [`tls.CryptoStream`][] class was removed. Please use
[`tls.TLSSocket`][] instead.
-
diff --git a/deprecations/dep0043_tls_securepair.md b/deprecations/dep0043_tls_securepair.md
index ca94fd87..95b879c0 100644
--- a/deprecations/dep0043_tls_securepair.md
+++ b/deprecations/dep0043_tls_securepair.md
@@ -24,4 +24,3 @@ Type: Documentation-only
The [`tls.SecurePair`][] class is deprecated. Please use
[`tls.TLSSocket`][] instead.
-
diff --git a/deprecations/dep0044_util_isarray.md b/deprecations/dep0044_util_isarray.md
index ad19515b..fcdef016 100644
--- a/deprecations/dep0044_util_isarray.md
+++ b/deprecations/dep0044_util_isarray.md
@@ -17,4 +17,3 @@ Type: Documentation-only
The [`util.isArray()`][] API is deprecated. Please use `Array.isArray()`
instead.
-
diff --git a/deprecations/dep0045_util_isboolean.md b/deprecations/dep0045_util_isboolean.md
index 98ecd7e3..4f6334d0 100644
--- a/deprecations/dep0045_util_isboolean.md
+++ b/deprecations/dep0045_util_isboolean.md
@@ -16,4 +16,3 @@ Type: Documentation-only
The [`util.isBoolean()`][] API is deprecated.
-
diff --git a/deprecations/dep0046_util_isbuffer.md b/deprecations/dep0046_util_isbuffer.md
index 556cbcb0..86485008 100644
--- a/deprecations/dep0046_util_isbuffer.md
+++ b/deprecations/dep0046_util_isbuffer.md
@@ -17,4 +17,3 @@ Type: Documentation-only
The [`util.isBuffer()`][] API is deprecated. Please use
[`Buffer.isBuffer()`][] instead.
-
diff --git a/deprecations/dep0047_util_isdate.md b/deprecations/dep0047_util_isdate.md
index 79b0d232..8ca155cb 100644
--- a/deprecations/dep0047_util_isdate.md
+++ b/deprecations/dep0047_util_isdate.md
@@ -16,4 +16,3 @@ Type: Documentation-only
The [`util.isDate()`][] API is deprecated.
-
diff --git a/deprecations/dep0048_util_iserror.md b/deprecations/dep0048_util_iserror.md
index 7bb827f2..8f825b14 100644
--- a/deprecations/dep0048_util_iserror.md
+++ b/deprecations/dep0048_util_iserror.md
@@ -16,4 +16,3 @@ Type: Documentation-only
The [`util.isError()`][] API is deprecated.
-
diff --git a/deprecations/dep0049_util_isfunction.md b/deprecations/dep0049_util_isfunction.md
index dcd7453b..98f79c55 100644
--- a/deprecations/dep0049_util_isfunction.md
+++ b/deprecations/dep0049_util_isfunction.md
@@ -16,4 +16,3 @@ Type: Documentation-only
The [`util.isFunction()`][] API is deprecated.
-
diff --git a/deprecations/dep0050_util_isnull.md b/deprecations/dep0050_util_isnull.md
index e8c43ec1..d738d6b9 100644
--- a/deprecations/dep0050_util_isnull.md
+++ b/deprecations/dep0050_util_isnull.md
@@ -16,4 +16,3 @@ Type: Documentation-only
The [`util.isNull()`][] API is deprecated.
-
diff --git a/deprecations/dep0051_util_isnullorundefined.md b/deprecations/dep0051_util_isnullorundefined.md
index 701179fc..e2b08ef0 100644
--- a/deprecations/dep0051_util_isnullorundefined.md
+++ b/deprecations/dep0051_util_isnullorundefined.md
@@ -16,4 +16,3 @@ Type: Documentation-only
The [`util.isNullOrUndefined()`][] API is deprecated.
-
diff --git a/deprecations/dep0052_util_isnumber.md b/deprecations/dep0052_util_isnumber.md
index 459b7684..2c869bc3 100644
--- a/deprecations/dep0052_util_isnumber.md
+++ b/deprecations/dep0052_util_isnumber.md
@@ -16,4 +16,3 @@ Type: Documentation-only
The [`util.isNumber()`][] API is deprecated.
-
diff --git a/deprecations/dep0053_util_isobject.md b/deprecations/dep0053_util_isobject.md
index 5f00b6f0..e7606705 100644
--- a/deprecations/dep0053_util_isobject.md
+++ b/deprecations/dep0053_util_isobject.md
@@ -16,4 +16,3 @@ Type: Documentation-only
The [`util.isObject()`][] API is deprecated.
-
diff --git a/deprecations/dep0054_util_isprimitive.md b/deprecations/dep0054_util_isprimitive.md
index 66c82205..90d2cadf 100644
--- a/deprecations/dep0054_util_isprimitive.md
+++ b/deprecations/dep0054_util_isprimitive.md
@@ -16,4 +16,3 @@ Type: Documentation-only
The [`util.isPrimitive()`][] API is deprecated.
-
diff --git a/deprecations/dep0055_util_isregexp.md b/deprecations/dep0055_util_isregexp.md
index f8da7d2f..86ccace5 100644
--- a/deprecations/dep0055_util_isregexp.md
+++ b/deprecations/dep0055_util_isregexp.md
@@ -16,4 +16,3 @@ Type: Documentation-only
The [`util.isRegExp()`][] API is deprecated.
-
diff --git a/deprecations/dep0056_util_isstring.md b/deprecations/dep0056_util_isstring.md
index 3c6de110..878fa8ac 100644
--- a/deprecations/dep0056_util_isstring.md
+++ b/deprecations/dep0056_util_isstring.md
@@ -16,4 +16,3 @@ Type: Documentation-only
The [`util.isString()`][] API is deprecated.
-
diff --git a/deprecations/dep0057_util_issymbol.md b/deprecations/dep0057_util_issymbol.md
index 508ad164..6f8b82a6 100644
--- a/deprecations/dep0057_util_issymbol.md
+++ b/deprecations/dep0057_util_issymbol.md
@@ -16,4 +16,3 @@ Type: Documentation-only
The [`util.isSymbol()`][] API is deprecated.
-
diff --git a/deprecations/dep0058_util_isundefined.md b/deprecations/dep0058_util_isundefined.md
index 2adf60bb..280af257 100644
--- a/deprecations/dep0058_util_isundefined.md
+++ b/deprecations/dep0058_util_isundefined.md
@@ -16,4 +16,3 @@ Type: Documentation-only
The [`util.isUndefined()`][] API is deprecated.
-
diff --git a/deprecations/dep0059_util_log.md b/deprecations/dep0059_util_log.md
index eabfaee2..356e8dec 100644
--- a/deprecations/dep0059_util_log.md
+++ b/deprecations/dep0059_util_log.md
@@ -12,4 +12,3 @@ Type: Documentation-only
The [`util.log()`][] API is deprecated.
-
diff --git a/deprecations/dep0060_util_extend.md b/deprecations/dep0060_util_extend.md
index 0e7eee13..b8c770ce 100644
--- a/deprecations/dep0060_util_extend.md
+++ b/deprecations/dep0060_util_extend.md
@@ -12,4 +12,3 @@ Type: Documentation-only
The [`util._extend()`][] API is deprecated.
-
diff --git a/deprecations/dep0061_fs_syncwritestream.md b/deprecations/dep0061_fs_syncwritestream.md
index d15e1e85..f2486587 100644
--- a/deprecations/dep0061_fs_syncwritestream.md
+++ b/deprecations/dep0061_fs_syncwritestream.md
@@ -17,4 +17,3 @@ The `fs.SyncWriteStream` class was never intended to be a publicly accessible
API and has been removed. No alternative API is available. Please use a userland
alternative.
-
diff --git a/deprecations/dep0062_node_debug.md b/deprecations/dep0062_node_debug.md
index 3b160f31..b4a30653 100644
--- a/deprecations/dep0062_node_debug.md
+++ b/deprecations/dep0062_node_debug.md
@@ -14,4 +14,3 @@ Type: End-of-Life
of V8 5.8. It is replaced by Inspector which is activated with `--inspect`
instead.
-
diff --git a/deprecations/dep0063_serverresponse_prototype_writeheader.md b/deprecations/dep0063_serverresponse_prototype_writeheader.md
index 0a0e6244..dddde5d5 100644
--- a/deprecations/dep0063_serverresponse_prototype_writeheader.md
+++ b/deprecations/dep0063_serverresponse_prototype_writeheader.md
@@ -13,4 +13,3 @@ deprecated. Please use `ServerResponse.prototype.writeHead()` instead.
The `ServerResponse.prototype.writeHeader()` method was never documented as an
officially supported API.
-
diff --git a/deprecations/dep0064_tls_createsecurepair.md b/deprecations/dep0064_tls_createsecurepair.md
index 1ce7f4c8..224f01a9 100644
--- a/deprecations/dep0064_tls_createsecurepair.md
+++ b/deprecations/dep0064_tls_createsecurepair.md
@@ -24,4 +24,3 @@ Type: Runtime
The `tls.createSecurePair()` API was deprecated in documentation in Node.js
0.11.3. Users should use `tls.Socket` instead.
-
diff --git a/deprecations/dep0065_repl_repl_mode_magic_and_node_repl_mode_magic.md b/deprecations/dep0065_repl_repl_mode_magic_and_node_repl_mode_magic.md
index 0adf414c..190ea12a 100644
--- a/deprecations/dep0065_repl_repl_mode_magic_and_node_repl_mode_magic.md
+++ b/deprecations/dep0065_repl_repl_mode_magic_and_node_repl_mode_magic.md
@@ -19,4 +19,3 @@ The `NODE_REPL_MODE` environment variable is used to set the underlying
`replMode` of an interactive `node` session. Its value, `magic`, is also
removed. Please use `sloppy` instead.
-
diff --git a/deprecations/dep0066_outgoingmessage_prototype_headers_outgoingmessage_prototype_headernames.md b/deprecations/dep0066_outgoingmessage_prototype_headers_outgoingmessage_prototype_headernames.md
index fa361733..820375ad 100644
--- a/deprecations/dep0066_outgoingmessage_prototype_headers_outgoingmessage_prototype_headernames.md
+++ b/deprecations/dep0066_outgoingmessage_prototype_headers_outgoingmessage_prototype_headernames.md
@@ -23,4 +23,3 @@ The `OutgoingMessage.prototype._headers` and
`OutgoingMessage.prototype._headerNames` properties were never documented as
officially supported properties.
-
diff --git a/deprecations/dep0067_outgoingmessage_prototype_renderheaders.md b/deprecations/dep0067_outgoingmessage_prototype_renderheaders.md
index 6006480b..91996bfa 100644
--- a/deprecations/dep0067_outgoingmessage_prototype_renderheaders.md
+++ b/deprecations/dep0067_outgoingmessage_prototype_renderheaders.md
@@ -13,4 +13,3 @@ deprecated.
The `OutgoingMessage.prototype._renderHeaders` property was never documented as
an officially supported API.
-
diff --git a/deprecations/dep0068_node_debug.md b/deprecations/dep0068_node_debug.md
index 2788a971..7aacdd65 100644
--- a/deprecations/dep0068_node_debug.md
+++ b/deprecations/dep0068_node_debug.md
@@ -10,4 +10,3 @@ Type: Runtime
`node debug` corresponds to the legacy CLI debugger which has been replaced with
a V8-inspector based CLI debugger available through `node inspect`.
-
diff --git a/deprecations/dep0069_vm_runindebugcontext_string.md b/deprecations/dep0069_vm_runindebugcontext_string.md
index de6938a7..695c42f0 100644
--- a/deprecations/dep0069_vm_runindebugcontext_string.md
+++ b/deprecations/dep0069_vm_runindebugcontext_string.md
@@ -17,4 +17,3 @@ DebugContext has been removed in V8 and is not available in Node.js 10+.
DebugContext was an experimental API.
-
diff --git a/deprecations/dep0070_async_hooks_currentid.md b/deprecations/dep0070_async_hooks_currentid.md
index 53b5716d..dec10057 100644
--- a/deprecations/dep0070_async_hooks_currentid.md
+++ b/deprecations/dep0070_async_hooks_currentid.md
@@ -15,4 +15,3 @@ clarity.
This change was made while `async_hooks` was an experimental API.
-
diff --git a/deprecations/dep0071_async_hooks_triggerid.md b/deprecations/dep0071_async_hooks_triggerid.md
index c7be7db3..b3c24df0 100644
--- a/deprecations/dep0071_async_hooks_triggerid.md
+++ b/deprecations/dep0071_async_hooks_triggerid.md
@@ -15,4 +15,3 @@ clarity.
This change was made while `async_hooks` was an experimental API.
-
diff --git a/deprecations/dep0072_async_hooks_asyncresource_triggerid.md b/deprecations/dep0072_async_hooks_asyncresource_triggerid.md
index 19ab5517..8ee2b1fc 100644
--- a/deprecations/dep0072_async_hooks_asyncresource_triggerid.md
+++ b/deprecations/dep0072_async_hooks_asyncresource_triggerid.md
@@ -15,4 +15,3 @@ Type: End-of-Life
This change was made while `async_hooks` was an experimental API.
-
diff --git a/deprecations/dep0073_several_internal_properties_of_net_server.md b/deprecations/dep0073_several_internal_properties_of_net_server.md
index 5b0138b5..9327dc7b 100644
--- a/deprecations/dep0073_several_internal_properties_of_net_server.md
+++ b/deprecations/dep0073_several_internal_properties_of_net_server.md
@@ -16,4 +16,3 @@ with inappropriate names is deprecated.
As the original API was undocumented and not generally useful for non-internal
code, no replacement API is provided.
-
diff --git a/deprecations/dep0074_replserver_bufferedcommand.md b/deprecations/dep0074_replserver_bufferedcommand.md
index a5b40cc2..a59aa99c 100644
--- a/deprecations/dep0074_replserver_bufferedcommand.md
+++ b/deprecations/dep0074_replserver_bufferedcommand.md
@@ -10,4 +10,3 @@ Type: Runtime
The `REPLServer.bufferedCommand` property was deprecated in favor of
[`REPLServer.clearBufferedCommand()`][].
-
diff --git a/deprecations/dep0075_replserver_parsereplkeyword.md b/deprecations/dep0075_replserver_parsereplkeyword.md
index b5d0a29e..0b0a24fb 100644
--- a/deprecations/dep0075_replserver_parsereplkeyword.md
+++ b/deprecations/dep0075_replserver_parsereplkeyword.md
@@ -9,4 +9,3 @@ Type: Runtime
`REPLServer.parseREPLKeyword()` was removed from userland visibility.
-
diff --git a/deprecations/dep0076_tls_parsecertstring.md b/deprecations/dep0076_tls_parsecertstring.md
index 7e83b7ea..a1075536 100644
--- a/deprecations/dep0076_tls_parsecertstring.md
+++ b/deprecations/dep0076_tls_parsecertstring.md
@@ -21,11 +21,10 @@ querystring.parse(str, '\n', '=');
This function is not completely equivalent to `querystring.parse()`. One
difference is that `querystring.parse()` does url decoding:
-```sh
+```console
> querystring.parse('%E5%A5%BD=1', '\n', '=');
{ '好': '1' }
> tls.parseCertString('%E5%A5%BD=1');
{ '%E5%A5%BD': '1' }
```
-
diff --git a/deprecations/dep0077_module_debug.md b/deprecations/dep0077_module_debug.md
index 3211a4cf..a3076263 100644
--- a/deprecations/dep0077_module_debug.md
+++ b/deprecations/dep0077_module_debug.md
@@ -12,4 +12,3 @@ Type: Runtime
The `Module._debug()` function was never documented as an officially
supported API.
-
diff --git a/deprecations/dep0078_replserver_turnoffeditormode.md b/deprecations/dep0078_replserver_turnoffeditormode.md
index 0e2add8f..2c59784f 100644
--- a/deprecations/dep0078_replserver_turnoffeditormode.md
+++ b/deprecations/dep0078_replserver_turnoffeditormode.md
@@ -9,4 +9,3 @@ Type: Runtime
`REPLServer.turnOffEditorMode()` was removed from userland visibility.
-
diff --git a/deprecations/dep0079_custom_inspection_function_on_objects_via_inspect.md b/deprecations/dep0079_custom_inspection_function_on_objects_via_inspect.md
index 9f74d01e..c6543ecc 100644
--- a/deprecations/dep0079_custom_inspection_function_on_objects_via_inspect.md
+++ b/deprecations/dep0079_custom_inspection_function_on_objects_via_inspect.md
@@ -18,4 +18,3 @@ function for [`util.inspect()`][] is deprecated. Use [`util.inspect.custom`][]
instead. For backward compatibility with Node.js prior to version 6.4.0, both
can be specified.
-
diff --git a/deprecations/dep0080_path_makelong.md b/deprecations/dep0080_path_makelong.md
index 360b3dfc..fab1fc11 100644
--- a/deprecations/dep0080_path_makelong.md
+++ b/deprecations/dep0080_path_makelong.md
@@ -11,4 +11,3 @@ The internal `path._makeLong()` was not intended for public use. However,
userland modules have found it useful. The internal API is deprecated
and replaced with an identical, public `path.toNamespacedPath()` method.
-
diff --git a/deprecations/dep0081_fs_truncate_using_a_file_descriptor.md b/deprecations/dep0081_fs_truncate_using_a_file_descriptor.md
index 64e39271..73af1f9a 100644
--- a/deprecations/dep0081_fs_truncate_using_a_file_descriptor.md
+++ b/deprecations/dep0081_fs_truncate_using_a_file_descriptor.md
@@ -11,4 +11,3 @@ Type: Runtime
deprecated. Please use `fs.ftruncate()` or `fs.ftruncateSync()` to work with
file descriptors.
-
diff --git a/deprecations/dep0082_replserver_prototype_memory.md b/deprecations/dep0082_replserver_prototype_memory.md
index 682f0461..be30d3f9 100644
--- a/deprecations/dep0082_replserver_prototype_memory.md
+++ b/deprecations/dep0082_replserver_prototype_memory.md
@@ -10,4 +10,3 @@ Type: Runtime
`REPLServer.prototype.memory()` is only necessary for the internal mechanics of
the `REPLServer` itself. Do not use this function.
-
diff --git a/deprecations/dep0083_disabling_ecdh_by_setting_ecdhcurve_to_false.md b/deprecations/dep0083_disabling_ecdh_by_setting_ecdhcurve_to_false.md
index 817905ad..e5f7808b 100644
--- a/deprecations/dep0083_disabling_ecdh_by_setting_ecdhcurve_to_false.md
+++ b/deprecations/dep0083_disabling_ecdh_by_setting_ecdhcurve_to_false.md
@@ -15,4 +15,3 @@ be set to `false` to disable ECDH entirely on the server only. This mode was
deprecated in preparation for migrating to OpenSSL 1.1.0 and consistency with
the client and is now unsupported. Use the `ciphers` parameter instead.
-
diff --git a/deprecations/dep0084_requiring_bundled_internal_dependencies.md b/deprecations/dep0084_requiring_bundled_internal_dependencies.md
index 05b017ce..e7dc0972 100644
--- a/deprecations/dep0084_requiring_bundled_internal_dependencies.md
+++ b/deprecations/dep0084_requiring_bundled_internal_dependencies.md
@@ -36,4 +36,3 @@ On the other hand, `node-inspect` can be installed locally through a package
manager, as it is published on the npm registry under the same name. No source
code modification is necessary if that is done.
-
diff --git a/deprecations/dep0085_asynchooks_sensitive_api.md b/deprecations/dep0085_asynchooks_sensitive_api.md
index 573d7154..d67b2520 100644
--- a/deprecations/dep0085_asynchooks_sensitive_api.md
+++ b/deprecations/dep0085_asynchooks_sensitive_api.md
@@ -16,4 +16,3 @@ The AsyncHooks sensitive API was never documented and had various minor issues.
Use the `AsyncResource` API instead. See
.
-
diff --git a/deprecations/dep0086_remove_runinasyncidscope.md b/deprecations/dep0086_remove_runinasyncidscope.md
index 2029fecb..b7cf8b37 100644
--- a/deprecations/dep0086_remove_runinasyncidscope.md
+++ b/deprecations/dep0086_remove_runinasyncidscope.md
@@ -15,4 +15,3 @@ Type: End-of-Life
`runInAsyncIdScope` doesn't emit the `'before'` or `'after'` event and can thus
cause a lot of issues. See .
-
diff --git a/deprecations/dep0089_require_assert.md b/deprecations/dep0089_require_assert.md
index 759e9519..930ea54c 100644
--- a/deprecations/dep0089_require_assert.md
+++ b/deprecations/dep0089_require_assert.md
@@ -16,4 +16,3 @@ Importing assert directly was not recommended as the exposed functions use
loose equality checks. The deprecation was revoked because use of the `assert`
module is not discouraged, and the deprecation caused end user confusion.
-
diff --git a/deprecations/dep0090_invalid_gcm_authentication_tag_lengths.md b/deprecations/dep0090_invalid_gcm_authentication_tag_lengths.md
index bab518a9..47126a48 100644
--- a/deprecations/dep0090_invalid_gcm_authentication_tag_lengths.md
+++ b/deprecations/dep0090_invalid_gcm_authentication_tag_lengths.md
@@ -16,4 +16,3 @@ v11.0.0, only authentication tag lengths of 128, 120, 112, 104, 96, 64, and 32
bits are allowed. Authentication tags of other lengths are invalid per
[NIST SP 800-38D][].
-
diff --git a/deprecations/dep0091_crypto_default_encoding.md b/deprecations/dep0091_crypto_default_encoding.md
index e51f8e57..63280145 100644
--- a/deprecations/dep0091_crypto_default_encoding.md
+++ b/deprecations/dep0091_crypto_default_encoding.md
@@ -9,4 +9,3 @@ Type: Runtime
The [`crypto.DEFAULT_ENCODING`][] property is deprecated.
-
diff --git a/deprecations/dep0092_top_level_this_bound_to_module_exports.md b/deprecations/dep0092_top_level_this_bound_to_module_exports.md
index 0e281a16..663411db 100644
--- a/deprecations/dep0092_top_level_this_bound_to_module_exports.md
+++ b/deprecations/dep0092_top_level_this_bound_to_module_exports.md
@@ -11,4 +11,3 @@ Assigning properties to the top-level `this` as an alternative
to `module.exports` is deprecated. Developers should use `exports`
or `module.exports` instead.
-
diff --git a/deprecations/dep0093_crypto_fips_is_deprecated_and_replaced.md b/deprecations/dep0093_crypto_fips_is_deprecated_and_replaced.md
index 7e8628eb..e58c0cbc 100644
--- a/deprecations/dep0093_crypto_fips_is_deprecated_and_replaced.md
+++ b/deprecations/dep0093_crypto_fips_is_deprecated_and_replaced.md
@@ -10,4 +10,3 @@ Type: Documentation-only
The [`crypto.fips`][] property is deprecated. Please use `crypto.setFips()`
and `crypto.getFips()` instead.
-
diff --git a/deprecations/dep0094_using_assert_fail_with_more_than_one_argument.md b/deprecations/dep0094_using_assert_fail_with_more_than_one_argument.md
index 6c00c63c..9fa4c023 100644
--- a/deprecations/dep0094_using_assert_fail_with_more_than_one_argument.md
+++ b/deprecations/dep0094_using_assert_fail_with_more_than_one_argument.md
@@ -11,4 +11,3 @@ Using `assert.fail()` with more than one argument is deprecated. Use
`assert.fail()` with only one argument or use a different `assert` module
method.
-
diff --git a/deprecations/dep0095_timers_enroll.md b/deprecations/dep0095_timers_enroll.md
index ad4b8f16..b07a4126 100644
--- a/deprecations/dep0095_timers_enroll.md
+++ b/deprecations/dep0095_timers_enroll.md
@@ -10,4 +10,3 @@ Type: Runtime
`timers.enroll()` is deprecated. Please use the publicly documented
[`setTimeout()`][] or [`setInterval()`][] instead.
-
diff --git a/deprecations/dep0096_timers_unenroll.md b/deprecations/dep0096_timers_unenroll.md
index 2c8bfe67..952ddc63 100644
--- a/deprecations/dep0096_timers_unenroll.md
+++ b/deprecations/dep0096_timers_unenroll.md
@@ -10,4 +10,3 @@ Type: Runtime
`timers.unenroll()` is deprecated. Please use the publicly documented
[`clearTimeout()`][] or [`clearInterval()`][] instead.
-
diff --git a/deprecations/dep0097_makecallback_with_domain_property.md b/deprecations/dep0097_makecallback_with_domain_property.md
index 56e28b08..47e99872 100644
--- a/deprecations/dep0097_makecallback_with_domain_property.md
+++ b/deprecations/dep0097_makecallback_with_domain_property.md
@@ -11,4 +11,3 @@ Users of `MakeCallback` that add the `domain` property to carry context,
should start using the `async_context` variant of `MakeCallback` or
`CallbackScope`, or the high-level `AsyncResource` class.
-
diff --git a/deprecations/dep0098_asynchooks_embedder_asyncresource_emitbefore_and_asyncresource_emitafter_apis.md b/deprecations/dep0098_asynchooks_embedder_asyncresource_emitbefore_and_asyncresource_emitafter_apis.md
index c46d113d..6bc50748 100644
--- a/deprecations/dep0098_asynchooks_embedder_asyncresource_emitbefore_and_asyncresource_emitafter_apis.md
+++ b/deprecations/dep0098_asynchooks_embedder_asyncresource_emitbefore_and_asyncresource_emitafter_apis.md
@@ -21,4 +21,3 @@ Use [`asyncResource.runInAsyncScope()`][] API instead which provides a much
safer, and more convenient, alternative. See
.
-
diff --git a/deprecations/dep0099_async_context_unaware_node_makecallback_c_apis.md b/deprecations/dep0099_async_context_unaware_node_makecallback_c_apis.md
index 11aae171..76cf22b3 100644
--- a/deprecations/dep0099_async_context_unaware_node_makecallback_c_apis.md
+++ b/deprecations/dep0099_async_context_unaware_node_makecallback_c_apis.md
@@ -11,4 +11,3 @@ Certain versions of `node::MakeCallback` APIs available to native modules are
deprecated. Please use the versions of the API that accept an `async_context`
parameter.
-
diff --git a/deprecations/dep0100_process_assert.md b/deprecations/dep0100_process_assert.md
index 354f94d1..56a9365b 100644
--- a/deprecations/dep0100_process_assert.md
+++ b/deprecations/dep0100_process_assert.md
@@ -13,4 +13,3 @@ Type: Runtime
This was never a documented feature.
-
diff --git a/deprecations/dep0101_with_lttng.md b/deprecations/dep0101_with_lttng.md
index 11059e27..b18153c3 100644
--- a/deprecations/dep0101_with_lttng.md
+++ b/deprecations/dep0101_with_lttng.md
@@ -9,4 +9,3 @@ Type: End-of-Life
The `--with-lttng` compile-time option has been removed.
-
diff --git a/deprecations/dep0102_using_noassert_in_buffer_read_write_operations.md b/deprecations/dep0102_using_noassert_in_buffer_read_write_operations.md
index 954f4b02..ae9d45d4 100644
--- a/deprecations/dep0102_using_noassert_in_buffer_read_write_operations.md
+++ b/deprecations/dep0102_using_noassert_in_buffer_read_write_operations.md
@@ -11,4 +11,3 @@ Using the `noAssert` argument has no functionality anymore. All input is going
to be verified, no matter if it is set to true or not. Skipping the verification
could lead to hard to find errors and crashes.
-
diff --git a/deprecations/dep0103_process_binding_util_is_typechecks.md b/deprecations/dep0103_process_binding_util_is_typechecks.md
index b0b21722..02f34718 100644
--- a/deprecations/dep0103_process_binding_util_is_typechecks.md
+++ b/deprecations/dep0103_process_binding_util_is_typechecks.md
@@ -16,4 +16,3 @@ methods in particular can be replaced by using [`util.types`][].
This deprecation has been superseded by the deprecation of the
`process.binding()` API ([DEP0111](#DEP0111)).
-
diff --git a/deprecations/dep0104_process_env_string_coercion.md b/deprecations/dep0104_process_env_string_coercion.md
index b519b330..2ca31f0a 100644
--- a/deprecations/dep0104_process_env_string_coercion.md
+++ b/deprecations/dep0104_process_env_string_coercion.md
@@ -13,4 +13,3 @@ value is not a string, boolean, or number. In the future, such assignment might
result in a thrown error. Please convert the property to a string before
assigning it to `process.env`.
-
diff --git a/deprecations/dep0105_decipher_finaltol.md b/deprecations/dep0105_decipher_finaltol.md
index a2c51aed..c1b80165 100644
--- a/deprecations/dep0105_decipher_finaltol.md
+++ b/deprecations/dep0105_decipher_finaltol.md
@@ -14,4 +14,3 @@ Type: End-of-Life
[`decipher.final()`][]. This API has been removed, and it is recommended to use
[`decipher.final()`][] instead.
-
diff --git a/deprecations/dep0106_crypto_createcipher_and_crypto_createdecipher.md b/deprecations/dep0106_crypto_createcipher_and_crypto_createdecipher.md
index c865d44c..6aa62d5c 100644
--- a/deprecations/dep0106_crypto_createcipher_and_crypto_createdecipher.md
+++ b/deprecations/dep0106_crypto_createcipher_and_crypto_createdecipher.md
@@ -17,4 +17,3 @@ initialization vectors. It is recommended to derive a key using
[`crypto.createCipheriv()`][] and [`crypto.createDecipheriv()`][] to obtain the
[`Cipher`][] and [`Decipher`][] objects respectively.
-
diff --git a/deprecations/dep0107_tls_convertnpnprotocols.md b/deprecations/dep0107_tls_convertnpnprotocols.md
index 712b0244..77a37860 100644
--- a/deprecations/dep0107_tls_convertnpnprotocols.md
+++ b/deprecations/dep0107_tls_convertnpnprotocols.md
@@ -13,4 +13,3 @@ Type: End-of-Life
This was an undocumented helper function not intended for use outside Node.js
core and obsoleted by the removal of NPN (Next Protocol Negotiation) support.
-
diff --git a/deprecations/dep0108_zlib_bytesread.md b/deprecations/dep0108_zlib_bytesread.md
index 5f41f3e8..8671030b 100644
--- a/deprecations/dep0108_zlib_bytesread.md
+++ b/deprecations/dep0108_zlib_bytesread.md
@@ -15,4 +15,3 @@ because it also made sense to interpret the value as the number of bytes
read by the engine, but is inconsistent with other streams in Node.js that
expose values under these names.
-
diff --git a/deprecations/dep0109_http_https_and_tls_support_for_invalid_urls.md b/deprecations/dep0109_http_https_and_tls_support_for_invalid_urls.md
index 79559b39..745bd0fb 100644
--- a/deprecations/dep0109_http_https_and_tls_support_for_invalid_urls.md
+++ b/deprecations/dep0109_http_https_and_tls_support_for_invalid_urls.md
@@ -14,4 +14,3 @@ accepted by the legacy `url.parse()` API. The mentioned APIs now use the WHATWG
URL parser that requires strictly valid URLs. Passing an invalid URL is
deprecated and support will be removed in the future.
-
diff --git a/deprecations/dep0110_vm_script_cached_data.md b/deprecations/dep0110_vm_script_cached_data.md
index 1031ef2b..f5b28053 100644
--- a/deprecations/dep0110_vm_script_cached_data.md
+++ b/deprecations/dep0110_vm_script_cached_data.md
@@ -10,4 +10,3 @@ Type: Documentation-only
The `produceCachedData` option is deprecated. Use
[`script.createCachedData()`][] instead.
-
diff --git a/deprecations/dep0111_process_binding.md b/deprecations/dep0111_process_binding.md
index b97dbe22..85a361d8 100644
--- a/deprecations/dep0111_process_binding.md
+++ b/deprecations/dep0111_process_binding.md
@@ -12,4 +12,3 @@ Type: Documentation-only (supports [`--pending-deprecation`][])
`process.binding()` is for use by Node.js internal code only.
-
diff --git a/deprecations/dep0112_dgram_private_apis.md b/deprecations/dep0112_dgram_private_apis.md
index d04b0ae4..175b4fca 100644
--- a/deprecations/dep0112_dgram_private_apis.md
+++ b/deprecations/dep0112_dgram_private_apis.md
@@ -14,4 +14,3 @@ accessed outside of Node.js core: `Socket.prototype._handle`,
`Socket.prototype._healthCheck()`, `Socket.prototype._stopReceiving()`, and
`dgram._createSocketHandle()`.
-
diff --git a/deprecations/dep0113_cipher_setauthtag_decipher_getauthtag.md b/deprecations/dep0113_cipher_setauthtag_decipher_getauthtag.md
index 179e249b..37915a85 100644
--- a/deprecations/dep0113_cipher_setauthtag_decipher_getauthtag.md
+++ b/deprecations/dep0113_cipher_setauthtag_decipher_getauthtag.md
@@ -13,4 +13,3 @@ Type: End-of-Life
`Cipher.setAuthTag()` and `Decipher.getAuthTag()` are no longer available. They
were never documented and would throw when called.
-
diff --git a/deprecations/dep0114_crypto_tobuf.md b/deprecations/dep0114_crypto_tobuf.md
index c98e1d31..0567beff 100644
--- a/deprecations/dep0114_crypto_tobuf.md
+++ b/deprecations/dep0114_crypto_tobuf.md
@@ -13,4 +13,3 @@ Type: End-of-Life
The `crypto._toBuf()` function was not designed to be used by modules outside
of Node.js core and was removed.
-
diff --git a/deprecations/dep0115_crypto_prng_crypto_pseudorandombytes_crypto_rng.md b/deprecations/dep0115_crypto_prng_crypto_pseudorandombytes_crypto_rng.md
index fb9daa9a..342f477c 100644
--- a/deprecations/dep0115_crypto_prng_crypto_pseudorandombytes_crypto_rng.md
+++ b/deprecations/dep0115_crypto_prng_crypto_pseudorandombytes_crypto_rng.md
@@ -16,4 +16,3 @@ deprecated along with the undocumented aliases `crypto.prng()` and
`crypto.rng()` in favor of [`crypto.randomBytes()`][] and might be removed in a
future release.
-
diff --git a/deprecations/dep0116_legacy_url_api.md b/deprecations/dep0116_legacy_url_api.md
index 8694ab66..dd488bbf 100644
--- a/deprecations/dep0116_legacy_url_api.md
+++ b/deprecations/dep0116_legacy_url_api.md
@@ -11,4 +11,3 @@ The [Legacy URL API][] is deprecated. This includes [`url.format()`][],
[`url.parse()`][], [`url.resolve()`][], and the [legacy `urlObject`][]. Please
use the [WHATWG URL API][] instead.
-
diff --git a/deprecations/dep0117_native_crypto_handles.md b/deprecations/dep0117_native_crypto_handles.md
index bd15d716..db6bed31 100644
--- a/deprecations/dep0117_native_crypto_handles.md
+++ b/deprecations/dep0117_native_crypto_handles.md
@@ -16,4 +16,3 @@ the `_handle` property of the `Cipher`, `Decipher`, `DiffieHellman`,
The `_handle` property has been removed because improper use of the native
object can lead to crashing the application.
-
diff --git a/deprecations/dep0118_dns_lookup_support_for_a_falsy_host_name.md b/deprecations/dep0118_dns_lookup_support_for_a_falsy_host_name.md
index 4bbba609..b2f128ce 100644
--- a/deprecations/dep0118_dns_lookup_support_for_a_falsy_host_name.md
+++ b/deprecations/dep0118_dns_lookup_support_for_a_falsy_host_name.md
@@ -12,4 +12,3 @@ like `dns.lookup(false)` due to backward compatibility.
This behavior is undocumented and is thought to be unused in real world apps.
It will become an error in future versions of Node.js.
-
diff --git a/deprecations/dep0119_process_binding_uv_errname_private_api.md b/deprecations/dep0119_process_binding_uv_errname_private_api.md
index c09b495d..4fd146b2 100644
--- a/deprecations/dep0119_process_binding_uv_errname_private_api.md
+++ b/deprecations/dep0119_process_binding_uv_errname_private_api.md
@@ -10,4 +10,3 @@ Type: Documentation-only (supports [`--pending-deprecation`][])
`process.binding('uv').errname()` is deprecated. Please use
[`util.getSystemErrorName()`][] instead.
-
diff --git a/deprecations/dep0120_windows_performance_counter_support.md b/deprecations/dep0120_windows_performance_counter_support.md
index 3f8d0067..2a350d92 100644
--- a/deprecations/dep0120_windows_performance_counter_support.md
+++ b/deprecations/dep0120_windows_performance_counter_support.md
@@ -16,4 +16,3 @@ undocumented `COUNTER_NET_SERVER_CONNECTION()`,
`COUNTER_HTTP_SERVER_RESPONSE()`, `COUNTER_HTTP_CLIENT_REQUEST()`, and
`COUNTER_HTTP_CLIENT_RESPONSE()` functions have been deprecated.
-
diff --git a/deprecations/dep0121_net_setsimultaneousaccepts.md b/deprecations/dep0121_net_setsimultaneousaccepts.md
index b7de702d..c116e11b 100644
--- a/deprecations/dep0121_net_setsimultaneousaccepts.md
+++ b/deprecations/dep0121_net_setsimultaneousaccepts.md
@@ -13,4 +13,3 @@ and `cluster` modules on Windows. The function is not generally useful and
is being removed. See discussion here:
-
diff --git a/deprecations/dep0122_tls_server_prototype_setoptions.md b/deprecations/dep0122_tls_server_prototype_setoptions.md
index 5186c033..3ab17d1c 100644
--- a/deprecations/dep0122_tls_server_prototype_setoptions.md
+++ b/deprecations/dep0122_tls_server_prototype_setoptions.md
@@ -9,4 +9,3 @@ Type: Runtime
Please use `Server.prototype.setSecureContext()` instead.
-
diff --git a/deprecations/dep0123_setting_the_tls_servername_to_an_ip_address.md b/deprecations/dep0123_setting_the_tls_servername_to_an_ip_address.md
index 22b08754..c36cf9b8 100644
--- a/deprecations/dep0123_setting_the_tls_servername_to_an_ip_address.md
+++ b/deprecations/dep0123_setting_the_tls_servername_to_an_ip_address.md
@@ -10,4 +10,3 @@ Type: Runtime
Setting the TLS ServerName to an IP address is not permitted by
[RFC 6066][]. This will be ignored in a future version.
-
diff --git a/deprecations/dep0124_using_replserver_rli.md b/deprecations/dep0124_using_replserver_rli.md
index 5ba955d6..b315002c 100644
--- a/deprecations/dep0124_using_replserver_rli.md
+++ b/deprecations/dep0124_using_replserver_rli.md
@@ -9,4 +9,3 @@ Type: Runtime
This property is a reference to the instance itself.
-
diff --git a/deprecations/dep0125_require_stream_wrap.md b/deprecations/dep0125_require_stream_wrap.md
index c903d281..b0a59916 100644
--- a/deprecations/dep0125_require_stream_wrap.md
+++ b/deprecations/dep0125_require_stream_wrap.md
@@ -9,4 +9,3 @@ Type: Runtime
The `_stream_wrap` module is deprecated.
-
diff --git a/deprecations/dep0126_timers_active.md b/deprecations/dep0126_timers_active.md
index 075579b7..112f2b7c 100644
--- a/deprecations/dep0126_timers_active.md
+++ b/deprecations/dep0126_timers_active.md
@@ -12,4 +12,3 @@ Please use the publicly documented [`timeout.refresh()`][] instead.
If re-referencing the timeout is necessary, [`timeout.ref()`][] can be used
with no performance impact since Node.js 10.
-
diff --git a/deprecations/dep0127_timers_unrefactive.md b/deprecations/dep0127_timers_unrefactive.md
index 3cd9af40..c0d3baea 100644
--- a/deprecations/dep0127_timers_unrefactive.md
+++ b/deprecations/dep0127_timers_unrefactive.md
@@ -12,4 +12,3 @@ Please use the publicly documented [`timeout.refresh()`][] instead.
If unreferencing the timeout is necessary, [`timeout.unref()`][] can be used
with no performance impact since Node.js 10.
-
diff --git a/deprecations/dep0128_modules_with_an_invalid_main_entry_and_an_index_js_file.md b/deprecations/dep0128_modules_with_an_invalid_main_entry_and_an_index_js_file.md
index 717e2ca9..1a6dc67c 100644
--- a/deprecations/dep0128_modules_with_an_invalid_main_entry_and_an_index_js_file.md
+++ b/deprecations/dep0128_modules_with_an_invalid_main_entry_and_an_index_js_file.md
@@ -12,4 +12,3 @@ also have an `index.js` file in the top level directory will resolve the
`index.js` file. That is deprecated and is going to throw an error in future
Node.js versions.
-
diff --git a/deprecations/dep0129_childprocess_channel.md b/deprecations/dep0129_childprocess_channel.md
index b6207ec1..0afcc917 100644
--- a/deprecations/dep0129_childprocess_channel.md
+++ b/deprecations/dep0129_childprocess_channel.md
@@ -14,4 +14,3 @@ The `_channel` property of child process objects returned by `spawn()` and
similar functions is not intended for public use. Use `ChildProcess.channel`
instead.
-
diff --git a/deprecations/dep0130_module_createrequirefrompath.md b/deprecations/dep0130_module_createrequirefrompath.md
index e3cb79e4..8e676b62 100644
--- a/deprecations/dep0130_module_createrequirefrompath.md
+++ b/deprecations/dep0130_module_createrequirefrompath.md
@@ -13,4 +13,3 @@ Type: Runtime
Module.createRequireFromPath() is deprecated. Please use
[`module.createRequire()`][] instead.
-
diff --git a/deprecations/dep0131_legacy_http_parser.md b/deprecations/dep0131_legacy_http_parser.md
index 8199f9d9..493b9f0f 100644
--- a/deprecations/dep0131_legacy_http_parser.md
+++ b/deprecations/dep0131_legacy_http_parser.md
@@ -15,4 +15,3 @@ is deprecated and has been removed in v13.0.0. Prior to v13.0.0, the
`--http-parser=legacy` command-line flag could be used to revert to using the
legacy parser.
-
diff --git a/deprecations/dep0132_worker_terminate_with_callback.md b/deprecations/dep0132_worker_terminate_with_callback.md
index fdb8ead7..536c93ec 100644
--- a/deprecations/dep0132_worker_terminate_with_callback.md
+++ b/deprecations/dep0132_worker_terminate_with_callback.md
@@ -10,4 +10,3 @@ Type: Runtime
Passing a callback to [`worker.terminate()`][] is deprecated. Use the returned
`Promise` instead, or a listener to the worker’s `'exit'` event.
-
diff --git a/deprecations/dep0133_http_connection.md b/deprecations/dep0133_http_connection.md
index f057e758..19628d96 100644
--- a/deprecations/dep0133_http_connection.md
+++ b/deprecations/dep0133_http_connection.md
@@ -10,4 +10,3 @@ Type: Documentation-only
Prefer [`response.socket`][] over [`response.connection`][] and
[`request.socket`][] over [`request.connection`][].
-
diff --git a/deprecations/dep0134_process_tickcallback.md b/deprecations/dep0134_process_tickcallback.md
index 48dc757c..23e8e4f6 100644
--- a/deprecations/dep0134_process_tickcallback.md
+++ b/deprecations/dep0134_process_tickcallback.md
@@ -9,4 +9,3 @@ Type: Documentation-only (supports [`--pending-deprecation`][])
The `process._tickCallback` property was never documented as
an officially supported API.
-
diff --git a/deprecations/dep0135_writestream_open_and_readstream_open_are_internal.md b/deprecations/dep0135_writestream_open_and_readstream_open_are_internal.md
index 3f6c5a6d..b681b196 100644
--- a/deprecations/dep0135_writestream_open_and_readstream_open_are_internal.md
+++ b/deprecations/dep0135_writestream_open_and_readstream_open_are_internal.md
@@ -11,4 +11,3 @@ APIs that do not make sense to use in userland. File streams should always be
opened through their corresponding factory methods [`fs.createWriteStream()`][]
and [`fs.createReadStream()`][]) or by passing a file descriptor in options.
-
diff --git a/deprecations/dep0136_http_finished.md b/deprecations/dep0136_http_finished.md
index 66c15f0b..1d8e4348 100644
--- a/deprecations/dep0136_http_finished.md
+++ b/deprecations/dep0136_http_finished.md
@@ -19,4 +19,3 @@ accordingly instead to avoid the ambigiuty.
To maintain existing behaviour `response.finished` should be replaced with
`response.writableEnded`.
-
diff --git a/deprecations/dep0137_closing_fs_filehandle_on_garbage_collection.md b/deprecations/dep0137_closing_fs_filehandle_on_garbage_collection.md
index c0e83ef9..14d47015 100644
--- a/deprecations/dep0137_closing_fs_filehandle_on_garbage_collection.md
+++ b/deprecations/dep0137_closing_fs_filehandle_on_garbage_collection.md
@@ -27,4 +27,3 @@ async function openAndClose() {
}
```
-
diff --git a/deprecations/dep0138_process_mainmodule.md b/deprecations/dep0138_process_mainmodule.md
index d9eb0c0f..88d92972 100644
--- a/deprecations/dep0138_process_mainmodule.md
+++ b/deprecations/dep0138_process_mainmodule.md
@@ -14,4 +14,3 @@ modules is unsupported.
It is deprecated in favor of [`require.main`][], because it serves the same
purpose and is only available on CommonJS environment.
-
diff --git a/deprecations/dep0139_process_umask_with_no_arguments.md b/deprecations/dep0139_process_umask_with_no_arguments.md
index 32ab80a7..73c51a53 100644
--- a/deprecations/dep0139_process_umask_with_no_arguments.md
+++ b/deprecations/dep0139_process_umask_with_no_arguments.md
@@ -12,4 +12,3 @@ written twice. This introduces a race condition between threads, and is a
potential security vulnerability. There is no safe, cross-platform alternative
API.
-
diff --git a/deprecations/dep0140_use_request_destroy_instead_of_request_abort.md b/deprecations/dep0140_use_request_destroy_instead_of_request_abort.md
index bb9fd7b1..402a3a31 100644
--- a/deprecations/dep0140_use_request_destroy_instead_of_request_abort.md
+++ b/deprecations/dep0140_use_request_destroy_instead_of_request_abort.md
@@ -9,4 +9,3 @@ Type: Documentation-only
Use [`request.destroy()`][] instead of [`request.abort()`][].
-
diff --git a/deprecations/dep0141_repl_inputstream_and_repl_outputstream.md b/deprecations/dep0141_repl_inputstream_and_repl_outputstream.md
index a80432d7..b64a7c10 100644
--- a/deprecations/dep0141_repl_inputstream_and_repl_outputstream.md
+++ b/deprecations/dep0141_repl_inputstream_and_repl_outputstream.md
@@ -10,4 +10,3 @@ Type: Documentation-only (supports [`--pending-deprecation`][])
The `repl` module exported the input and output stream twice. Use `.input`
instead of `.inputStream` and `.output` instead of `.outputStream`.
-
diff --git a/deprecations/dep0142_repl_builtinlibs.md b/deprecations/dep0142_repl_builtinlibs.md
index 76c9c1dd..76d5ad80 100644
--- a/deprecations/dep0142_repl_builtinlibs.md
+++ b/deprecations/dep0142_repl_builtinlibs.md
@@ -11,4 +11,3 @@ The `repl` module exports a `_builtinLibs` property that contains an array with
native modules. It was incomplete so far and instead it's better to rely upon
`require('module').builtinModules`.
-
diff --git a/deprecations/dep0143_transform_transformstate.md b/deprecations/dep0143_transform_transformstate.md
index 435fd26d..8f3e6a8c 100644
--- a/deprecations/dep0143_transform_transformstate.md
+++ b/deprecations/dep0143_transform_transformstate.md
@@ -8,4 +8,3 @@ Type: Runtime
`Transform._transformState` will be removed in future versions where it is
no longer required due to simplification of the implementation.
-
diff --git a/deprecations/dep0144_module_parent.md b/deprecations/dep0144_module_parent.md
index 35e10214..4435f00b 100644
--- a/deprecations/dep0144_module_parent.md
+++ b/deprecations/dep0144_module_parent.md
@@ -29,4 +29,3 @@ const moduleParents = Object.values(require.cache)
.filter((m) => m.children.includes(module));
```
-
diff --git a/deprecations/dep0145_socket_buffersize.md b/deprecations/dep0145_socket_buffersize.md
index 9869ee79..b561dd7f 100644
--- a/deprecations/dep0145_socket_buffersize.md
+++ b/deprecations/dep0145_socket_buffersize.md
@@ -9,4 +9,3 @@ Type: Documentation-only
[`socket.bufferSize`][] is just an alias for [`writable.writableLength`][].
-
diff --git a/deprecations/list_of_deprecated_apis.md b/deprecations/list_of_deprecated_apis.md
index 3e5e2066..8b137891 100644
--- a/deprecations/list_of_deprecated_apis.md
+++ b/deprecations/list_of_deprecated_apis.md
@@ -1,2 +1 @@
-
diff --git a/dgram/event_message.md b/dgram/event_message.md
index dba26f56..0404077f 100644
--- a/dgram/event_message.md
+++ b/dgram/event_message.md
@@ -10,9 +10,11 @@ added: v0.1.99
* `port` {number} 发送者端口。
* `size` {number} 消息大小。
-If the source address of the incoming packet is an IPv6 link local
-address, the interface name is added to the `address`. For
+If the source address of the incoming packet is an IPv6 link-local
+address, the interface name is added to the `address`. For
example, a packet received on the `en0` interface might have the
address field set to `'fe80::2618:1234:ab11:3b9c%en0'`, where `'%en0'`
-is the interface name as a zone id suffix.
+is the interface name as a zone ID suffix.
+
+
diff --git a/errors/err_transferring_externalized_sharedarraybuffer.md b/errors/err_transferring_externalized_sharedarraybuffer.md
index 2660ac4b..98166802 100644
--- a/errors/err_transferring_externalized_sharedarraybuffer.md
+++ b/errors/err_transferring_externalized_sharedarraybuffer.md
@@ -10,4 +10,4 @@ cannot be serialized.
This can only happen when native addons create `SharedArrayBuffer`s in
"externalized" mode, or put existing `SharedArrayBuffer` into externalized mode.
-
+
diff --git a/errors/err_unknown_builtin_module_1.md b/errors/err_unknown_builtin_module_1.md
deleted file mode 100644
index 90713bd0..00000000
--- a/errors/err_unknown_builtin_module_1.md
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-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.
-
-
diff --git a/esm/approach_1_use_an_es_module_wrapper.md b/esm/approach_1_use_an_es_module_wrapper.md
index 2a7cc972..2ca91c32 100644
--- a/esm/approach_1_use_an_es_module_wrapper.md
+++ b/esm/approach_1_use_an_es_module_wrapper.md
@@ -17,7 +17,7 @@ CommonJS entry point for `require`.
}
```
-The above example uses explicit extensions `.mjs` and `.cjs`.
+The preceding example uses explicit extensions `.mjs` and `.cjs`.
If your files use the `.js` extension, `"type": "module"` will cause such files
to be treated as ES modules, just as `"type": "commonjs"` would cause them
to be treated as CommonJS.
diff --git a/esm/getformat_url_context_defaultgetformat.md b/esm/getformat_url_context_defaultgetformat.md
index e5b2e5e6..be286022 100644
--- a/esm/getformat_url_context_defaultgetformat.md
+++ b/esm/getformat_url_context_defaultgetformat.md
@@ -40,7 +40,7 @@ export async function getFormat(url, context, defaultGetFormat) {
if (Math.random() > 0.5) { // Some condition.
// For some or all URLs, do some custom logic for determining format.
// Always return an object of the form {format: }, where the
- // format is one of the strings in the table above.
+ // format is one of the strings in the preceding table.
return {
format: 'module',
};
diff --git a/esm/package_json_type_field.md b/esm/package_json_type_field.md
index 4dc52afa..b5704c84 100644
--- a/esm/package_json_type_field.md
+++ b/esm/package_json_type_field.md
@@ -16,7 +16,7 @@ until the root of the volume is reached.
```
```bash
-# In same folder as above package.json
+# In same folder as preceding package.json
node my-app.js # Runs as ES module
```
diff --git a/esm/resolver_algorithm.md b/esm/resolver_algorithm.md
index a65074f0..1fd1f9e5 100644
--- a/esm/resolver_algorithm.md
+++ b/esm/resolver_algorithm.md
@@ -195,7 +195,7 @@ _conditions_)
> 1. Otherwise, throw an _Invalid Package Target_ error.
> 1. If _target_ split on _"/"_ or _"\\"_ contains any _"."_, _".."_ or
> _"node_modules"_ segments after the first segment, throw an
-> _Invalid Module Specifier_ error.
+> _Invalid Package Target_ error.
> 1. Let _resolvedTarget_ be the URL resolution of the concatenation of
> _packageURL_ and _target_.
> 1. Assert: _resolvedTarget_ is contained in _packageURL_.
diff --git a/esm/self_referencing_a_package_using_its_name.md b/esm/self_referencing_a_package_using_its_name.md
index ca1f3faa..a86872a0 100644
--- a/esm/self_referencing_a_package_using_its_name.md
+++ b/esm/self_referencing_a_package_using_its_name.md
@@ -23,7 +23,7 @@ import { something } from 'a-package'; // Imports "something" from ./main.mjs.
Self-referencing is available only if `package.json` has `exports`, and will
allow importing only what that `exports` (in the `package.json`) allows.
-So the code below, given the package above, will generate a runtime error:
+So the code below, given the previous package, will generate a runtime error:
```js
// ./another-module.mjs
diff --git a/events/emitter_removelistener_eventname_listener.md b/events/emitter_removelistener_eventname_listener.md
index 13207ce3..f81cab87 100644
--- a/events/emitter_removelistener_eventname_listener.md
+++ b/events/emitter_removelistener_eventname_listener.md
@@ -22,6 +22,7 @@ server.removeListener('connection', callback);
一旦事件被触发,所有绑定到该事件的监听器都会按顺序依次调用。
这意味着,在事件触发之后、且最后一个监听器执行完成之前,`removeListener()` 或 `removeAllListeners()` 不会从 `emit()` 中移除它们。
+后续事件的行为符合预期。
```js
const myEmitter = new MyEmitter();
diff --git a/events/event_defaultprevented.md b/events/event_defaultprevented.md
index 01234a1d..cdbf1f4c 100644
--- a/events/event_defaultprevented.md
+++ b/events/event_defaultprevented.md
@@ -4,6 +4,6 @@ added: v14.5.0
* Type: {boolean}
-Will be `true` if `cancelable` is `true` and `event.preventDefault()` has been
+Is `true` if `cancelable` is `true` and `event.preventDefault()` has been
called.
diff --git a/events/event_listener.md b/events/event_listener.md
index 8d4e5f08..26028d9b 100644
--- a/events/event_listener.md
+++ b/events/event_listener.md
@@ -2,17 +2,17 @@
Event listeners registered for an event `type` may either be JavaScript
functions or objects with a `handleEvent` property whose value is a function.
-In either case, the handler function will be invoked with the `event` argument
+In either case, the handler function is invoked with the `event` argument
passed to the `eventTarget.dispatchEvent()` function.
Async functions may be used as event listeners. If an async handler function
-rejects, the rejection will be captured and be will handled as described in
+rejects, the rejection is captured and handled as described in
[`EventTarget` error handling][].
-An error thrown by one handler function will not prevent the other handlers
+An error thrown by one handler function does not prevent the other handlers
from being invoked.
-The return value of a handler function will be ignored.
+The return value of a handler function is ignored.
Handlers are always invoked in the order they were added.
diff --git a/events/eventtarget_addeventlistener_type_listener_options.md b/events/eventtarget_addeventlistener_type_listener_options.md
index c7e3244c..c0578546 100644
--- a/events/eventtarget_addeventlistener_type_listener_options.md
+++ b/events/eventtarget_addeventlistener_type_listener_options.md
@@ -5,7 +5,7 @@ added: v14.5.0
* `type` {string}
* `listener` {Function|EventListener}
* `options` {Object}
- * `once` {boolean} When `true`, the listener will be automatically removed
+ * `once` {boolean} When `true`, the listener is automatically removed
when it is first invoked. **Default:** `false`.
* `passive` {boolean} When `true`, serves as a hint that the listener will
not call the `Event` object's `preventDefault()` method.
@@ -13,10 +13,10 @@ added: v14.5.0
* `capture` {boolean} Not directly used by Node.js. Added for API
completeness. **Default:** `false`.
-Adds a new handler for the `type` event. Any given `listener` will be added
+Adds a new handler for the `type` event. Any given `listener` is added
only once per `type` and per `capture` option value.
-If the `once` option is `true`, the `listener` will be removed after the
+If the `once` option is `true`, the `listener` is removed after the
next time a `type` event is dispatched.
The `capture` option is not used by Node.js in any functional way other than
diff --git a/events/eventtarget_dispatchevent_event.md b/events/eventtarget_dispatchevent_event.md
index bad8a643..425d9c87 100644
--- a/events/eventtarget_dispatchevent_event.md
+++ b/events/eventtarget_dispatchevent_event.md
@@ -8,6 +8,6 @@ Dispatches the `event` to the list of handlers for `event.type`. The `event`
may be an `Event` object or any object with a `type` property whose value is
a `string`.
-The registered event listeners will be synchronously invoked in the order they
+The registered event listeners is synchronously invoked in the order they
were registered.
diff --git a/events/eventtarget_error_handling.md b/events/eventtarget_error_handling.md
index 83a5b784..8d39b7b5 100644
--- a/events/eventtarget_error_handling.md
+++ b/events/eventtarget_error_handling.md
@@ -1,6 +1,6 @@
When a registered event listener throws (or returns a Promise that rejects),
-by default the error will be forwarded to the `process.on('error')` event
+by default the error is forwarded to the `process.on('error')` event
on `process.nextTick()`. Throwing within an event listener will *not* stop
the other registered handlers from being invoked.
diff --git a/events/node_js_eventtarget_vs_dom_eventtarget.md b/events/node_js_eventtarget_vs_dom_eventtarget.md
index f40550a6..79d86738 100644
--- a/events/node_js_eventtarget_vs_dom_eventtarget.md
+++ b/events/node_js_eventtarget_vs_dom_eventtarget.md
@@ -9,6 +9,6 @@ There are two key differences between the Node.js `EventTarget` and the
event.
2. In the Node.js `EventTarget`, if an event listener is an async function
or returns a `Promise`, and the returned `Promise` rejects, the rejection
- will be automatically captured and handled the same way as a listener that
+ is automatically captured and handled the same way as a listener that
throws synchronously (see [`EventTarget` error handling][] for details).
diff --git a/events/nodeeventtarget_vs_eventemitter.md b/events/nodeeventtarget_vs_eventemitter.md
index 5091fa57..bb8d48a7 100644
--- a/events/nodeeventtarget_vs_eventemitter.md
+++ b/events/nodeeventtarget_vs_eventemitter.md
@@ -5,7 +5,7 @@ certain situations. A `NodeEventTarget` is *not* an instance of `EventEmitter`
and cannot be used in place of an `EventEmitter` in most cases.
1. Unlike `EventEmitter`, any given `listener` can be registered at most once
- per event `type`. Attempts to register a `listener` multiple times will be
+ per event `type`. Attempts to register a `listener` multiple times are
ignored.
2. The `NodeEventTarget` does not emulate the full `EventEmitter` API.
Specifically the `prependListener()`, `prependOnceListener()`,
diff --git a/http2/request_url.md b/http2/request_url.md
index f79275cd..efa090e8 100644
--- a/http2/request_url.md
+++ b/http2/request_url.md
@@ -19,46 +19,24 @@ Then `request.url` will be:
'/status?name=ryan'
```
-To parse the url into its parts, `require('url').parse(request.url)`
-can be used:
+To parse the url into its parts, `new URL()` can be used:
```console
$ node
-> require('url').parse('/status?name=ryan')
-Url {
- protocol: null,
- slashes: null,
- auth: null,
- host: null,
- port: null,
- hostname: null,
- hash: null,
- search: '?name=ryan',
- query: 'name=ryan',
+> new URL('/status?name=ryan', 'http://example.com')
+URL {
+ href: 'http://example.com/status?name=ryan',
+ origin: 'http://example.com',
+ protocol: 'http:',
+ username: '',
+ password: '',
+ host: 'example.com',
+ hostname: 'example.com',
+ port: '',
pathname: '/status',
- path: '/status?name=ryan',
- href: '/status?name=ryan' }
-```
-
-To extract the parameters from the query string, the
-`require('querystring').parse` function can be used, or
-`true` can be passed as the second argument to `require('url').parse`.
-
-```console
-$ node
-> require('url').parse('/status?name=ryan', true)
-Url {
- protocol: null,
- slashes: null,
- auth: null,
- host: null,
- port: null,
- hostname: null,
- hash: null,
search: '?name=ryan',
- query: { name: 'ryan' },
- pathname: '/status',
- path: '/status?name=ryan',
- href: '/status?name=ryan' }
+ searchParams: URLSearchParams { 'name' => 'ryan' },
+ hash: ''
+}
```
diff --git a/module/module_builtinmodules.md b/module/module_builtinmodules.md
index 8180c8bb..77e9e5f5 100644
--- a/module/module_builtinmodules.md
+++ b/module/module_builtinmodules.md
@@ -12,6 +12,14 @@ added:
注意,`module` 在此处含义与[模块封装器][module wrapper]所提供的 `module` 是不同的。可以通过引入 `Module` 模块访问:
```js
+// module.mjs
+// In an ECMAScript module
+import { builtinModules as builtin } from 'module';
+```
+
+```js
+// module.cjs
+// In a CommonJS module
const builtin = require('module').builtinModules;
```
diff --git a/module/module_syncbuiltinesmexports.md b/module/module_syncbuiltinesmexports.md
index 6432a88b..17c3f5aa 100644
--- a/module/module_syncbuiltinesmexports.md
+++ b/module/module_syncbuiltinesmexports.md
@@ -3,8 +3,8 @@ added: v12.12.0
-->
The `module.syncBuiltinESMExports()` method updates all the live bindings for
-builtin ES Modules to match the properties of the CommonJS exports. It does
-not add or remove exported names from the ES Modules.
+builtin [ES Modules][] to match the properties of the [CommonJS][] exports. It
+does not add or remove exported names from the [ES Modules][].
```js
const fs = require('fs');
diff --git a/module/source_map_v3_support.md b/module/source_map_v3_support.md
index 5974ef57..7babd3fb 100644
--- a/module/source_map_v3_support.md
+++ b/module/source_map_v3_support.md
@@ -15,6 +15,14 @@ To enable source map parsing, Node.js must be run with the flag
[`NODE_V8_COVERAGE=dir`][].
```js
+// module.mjs
+// In an ECMAScript module
+import { findSourceMap, SourceMap } from 'module';
+```
+
+```js
+// module.cjs
+// In a CommonJS module
const { findSourceMap, SourceMap } = require('module');
```
diff --git a/module/sourcemap_findentry_linenumber_columnnumber.md b/module/sourcemap_findentry_linenumber_columnnumber.md
index 8c34a976..4e638b9b 100644
--- a/module/sourcemap_findentry_linenumber_columnnumber.md
+++ b/module/sourcemap_findentry_linenumber_columnnumber.md
@@ -21,3 +21,6 @@ consists of the following keys:
+
+
+
diff --git a/module/the_module_object.md b/module/the_module_object.md
index 011ae735..a7c3e806 100644
--- a/module/the_module_object.md
+++ b/module/the_module_object.md
@@ -1,7 +1,7 @@
* {Object}
-当与 `Module` 实例(`module` 变量常见于文件模块中)进行交互时,提供通用的工具方法。
-通过 `require('module')` 访问。
+当与 `Module` 实例([`module`] 变量常见于 [CommonJS] 模块中)进行交互时,提供通用的工具方法。
+通过 `import 'module'` 或 `require('module')` 访问。
diff --git a/n-api/building.md b/n-api/building.md
index 18406e26..ee52df24 100644
--- a/n-api/building.md
+++ b/n-api/building.md
@@ -24,7 +24,7 @@ tools. However, it is not necessary to install the entire Visual Studio
IDE. The following command installs the necessary toolchain:
```bash
-npm install --global --production windows-build-tools
+npm install --global windows-build-tools
```
The sections below describe the additional tools available for developing
diff --git a/n-api/environment_life_cycle_apis.md b/n-api/environment_life_cycle_apis.md
index ece7e36a..46dff01c 100644
--- a/n-api/environment_life_cycle_apis.md
+++ b/n-api/environment_life_cycle_apis.md
@@ -17,7 +17,7 @@ From the perspective of a native addon this means that the bindings it provides
may be called multiple times, from multiple contexts, and even concurrently from
multiple threads.
-Native addons may need to allocate global state of which they make use during
+Native addons may need to allocate global state which they use during
their entire life cycle such that the state must be unique to each instance of
the addon.
diff --git a/n-api/implications_of_abi_stability.md b/n-api/implications_of_abi_stability.md
index 1987fb65..8347f18e 100644
--- a/n-api/implications_of_abi_stability.md
+++ b/n-api/implications_of_abi_stability.md
@@ -26,7 +26,7 @@ versions:
```
Thus, for an addon to remain ABI-compatible across Node.js major versions, it
-must make use exclusively of N-API by restricting itself to using
+must use N-API exclusively by restricting itself to using
```c
#include
diff --git a/n-api/n_api.md b/n-api/n_api.md
index c37efb34..8a7ea27b 100644
--- a/n-api/n_api.md
+++ b/n-api/n_api.md
@@ -35,7 +35,7 @@ properties:
The N-API is a C API that ensures ABI stability across Node.js versions
and different compiler levels. A C++ API can be easier to use.
To support using C++, the project maintains a
-C++ wrapper module called [node-addon-api][].
+C++ wrapper module called [`node-addon-api`][].
This wrapper provides an inlineable C++ API. Binaries built
with `node-addon-api` will depend on the symbols for the N-API C-based
functions exported by Node.js. `node-addon-api` is a more
@@ -79,5 +79,5 @@ for `node-addon-api`.
The [N-API Resource](https://nodejs.github.io/node-addon-examples/) offers an
excellent orientation and tips for developers just getting started with N-API
-and node-addon-api.
+and `node-addon-api`.
diff --git a/n-api/napi_add_async_cleanup_hook.md b/n-api/napi_add_async_cleanup_hook.md
index 16cd2a33..26eeaf57 100644
--- a/n-api/napi_add_async_cleanup_hook.md
+++ b/n-api/napi_add_async_cleanup_hook.md
@@ -1,5 +1,9 @@
> Stability: 1 - Experimental
@@ -7,15 +11,22 @@ added: v14.8.0
```c
NAPI_EXTERN napi_status napi_add_async_cleanup_hook(
napi_env env,
- void (*fun)(void* arg, void(* cb)(void*), void* cbarg),
+ napi_async_cleanup_hook hook,
void* arg,
napi_async_cleanup_hook_handle* remove_handle);
```
-Registers `fun` as a function to be run with the `arg` parameter once the
-current Node.js environment exits. Unlike [`napi_add_env_cleanup_hook`][],
-the hook is allowed to be asynchronous in this case, and must invoke the passed
-`cb()` function with `cbarg` once all asynchronous activity is finished.
+* `[in] env`: The environment that the API is invoked under.
+* `[in] hook`: The function pointer to call at environment teardown.
+* `[in] arg`: The pointer to pass to `hook` when it gets called.
+* `[out] remove_handle`: Optional handle that refers to the asynchronous cleanup
+hook.
+
+Registers `hook`, which is a function of type [`napi_async_cleanup_hook`][], as
+a function to be run with the `remove_handle` and `arg` parameters once the
+current Node.js environment exits.
+
+Unlike [`napi_add_env_cleanup_hook`][], the hook is allowed to be asynchronous.
Otherwise, behavior generally matches that of [`napi_add_env_cleanup_hook`][].
diff --git a/n-api/napi_async_cleanup_hook.md b/n-api/napi_async_cleanup_hook.md
new file mode 100644
index 00000000..2c96426b
--- /dev/null
+++ b/n-api/napi_async_cleanup_hook.md
@@ -0,0 +1,23 @@
+
+
+Function pointer used with [`napi_add_async_cleanup_hook`][]. It will be called
+when the environment is being torn down.
+
+Callback functions must satisfy the following signature:
+
+```c
+typedef void (*napi_async_cleanup_hook)(napi_async_cleanup_hook_handle handle,
+ void* data);
+```
+
+* `[in] handle`: The handle that must be passed to
+[`napi_remove_async_cleanup_hook`][] after completion of the asynchronous
+cleanup.
+* `[in] data`: The data that was passed to [`napi_add_async_cleanup_hook`][].
+
+The body of the function should initiate the asynchronous cleanup actions at the
+end of which `handle` must be passed in a call to
+[`napi_remove_async_cleanup_hook`][].
+
diff --git a/n-api/napi_async_cleanup_hook_handle.md b/n-api/napi_async_cleanup_hook_handle.md
new file mode 100644
index 00000000..245edd27
--- /dev/null
+++ b/n-api/napi_async_cleanup_hook_handle.md
@@ -0,0 +1,8 @@
+
+
+An opaque value returned by [`napi_add_async_cleanup_hook`][]. It must be passed
+to [`napi_remove_async_cleanup_hook`][] when the chain of asynchronous cleanup
+events completes.
+
diff --git a/n-api/napi_create_int64.md b/n-api/napi_create_int64.md
index d40b3c85..fb13dc42 100644
--- a/n-api/napi_create_int64.md
+++ b/n-api/napi_create_int64.md
@@ -19,6 +19,6 @@ This API is used to convert from the C `int64_t` type to the JavaScript
The JavaScript `Number` type is described in [Section 6.1.6][]
of the ECMAScript Language Specification. Note the complete range of `int64_t`
cannot be represented with full precision in JavaScript. Integer values
-outside the range of [`Number.MIN_SAFE_INTEGER`][] `-(2^53 - 1)` -
-[`Number.MAX_SAFE_INTEGER`][] `(2^53 - 1)` will lose precision.
+outside the range of [`Number.MIN_SAFE_INTEGER`][] `-(2**53 - 1)` -
+[`Number.MAX_SAFE_INTEGER`][] `(2**53 - 1)` will lose precision.
diff --git a/n-api/napi_get_value_int32.md b/n-api/napi_get_value_int32.md
index 47aa8761..4196d3b3 100644
--- a/n-api/napi_get_value_int32.md
+++ b/n-api/napi_get_value_int32.md
@@ -22,7 +22,7 @@ of the given JavaScript `Number`.
If the number exceeds the range of the 32 bit integer, then the result is
truncated to the equivalent of the bottom 32 bits. This can result in a large
-positive number becoming a negative number if the value is > 2^31 -1.
+positive number becoming a negative number if the value is > 231 - 1.
Non-finite number values (`NaN`, `+Infinity`, or `-Infinity`) set the
result to zero.
diff --git a/n-api/napi_get_value_int64.md b/n-api/napi_get_value_int64.md
index 63a3398b..6ebea77d 100644
--- a/n-api/napi_get_value_int64.md
+++ b/n-api/napi_get_value_int64.md
@@ -21,7 +21,8 @@ This API returns the C `int64` primitive equivalent of the given JavaScript
`Number`.
`Number` values outside the range of [`Number.MIN_SAFE_INTEGER`][]
-`-(2^53 - 1)` - [`Number.MAX_SAFE_INTEGER`][] `(2^53 - 1)` will lose precision.
+`-(2**53 - 1)` - [`Number.MAX_SAFE_INTEGER`][] `(2**53 - 1)` will lose
+precision.
Non-finite number values (`NaN`, `+Infinity`, or `-Infinity`) set the
result to zero.
diff --git a/n-api/napi_remove_async_cleanup_hook.md b/n-api/napi_remove_async_cleanup_hook.md
index cfce89ee..4007c66a 100644
--- a/n-api/napi_remove_async_cleanup_hook.md
+++ b/n-api/napi_remove_async_cleanup_hook.md
@@ -1,17 +1,23 @@
> Stability: 1 - Experimental
```c
NAPI_EXTERN napi_status napi_remove_async_cleanup_hook(
- napi_env env,
napi_async_cleanup_hook_handle remove_handle);
```
+* `[in] remove_handle`: The handle to an asynchronous cleanup hook that was
+created with [`napi_add_async_cleanup_hook`][].
+
Unregisters the cleanup hook corresponding to `remove_handle`. This will prevent
the hook from being executed, unless it has already started executing.
-This must be called on any `napi_async_cleanup_hook_handle` value retrieved
+This must be called on any `napi_async_cleanup_hook_handle` value obtained
from [`napi_add_async_cleanup_hook`][].
diff --git a/n-api/napi_unref_threadsafe_function.md b/n-api/napi_unref_threadsafe_function.md
index 6d1233fb..72193ef4 100644
--- a/n-api/napi_unref_threadsafe_function.md
+++ b/n-api/napi_unref_threadsafe_function.md
@@ -133,5 +133,6 @@ This API may only be called from the main thread.
+
diff --git a/n-api/reference_counting_of_thread_safe_functions.md b/n-api/reference_counting_of_thread_safe_functions.md
index d2213d39..3b6fce74 100644
--- a/n-api/reference_counting_of_thread_safe_functions.md
+++ b/n-api/reference_counting_of_thread_safe_functions.md
@@ -14,7 +14,7 @@ return status of `napi_closing` in response to a call to
should be the last API call made in conjunction with a given
`napi_threadsafe_function`, because after the call completes, there is no
guarantee that the `napi_threadsafe_function` is still allocated. For the same
-reason, do not make use of a thread-safe function
+reason, do not use a thread-safe function
after receiving a return value of `napi_closing` in response to a call to
`napi_call_threadsafe_function`. Data associated with the
`napi_threadsafe_function` can be freed in its `napi_finalize` callback which
@@ -37,7 +37,7 @@ reference count reaches zero. In particular, `napi_call_threadsafe_function()`
will return `napi_closing`, thus informing the threads that it is no longer
possible to make asynchronous calls to the thread-safe function. This can be
used as a criterion for terminating the thread. **Upon receiving a return value
-of `napi_closing` from `napi_call_threadsafe_function()` a thread must make no
-further use of the thread-safe function because it is no longer guaranteed to
+of `napi_closing` from `napi_call_threadsafe_function()` a thread must not use
+the thread-safe function anymore because it is no longer guaranteed to
be allocated.**
diff --git a/os/os_release.md b/os/os_release.md
index c8cc7319..d5009f6b 100644
--- a/os/os_release.md
+++ b/os/os_release.md
@@ -6,7 +6,7 @@ added: v0.3.3
以字符串的形式返回操作系统。
-在 POSIX 系统上,操作系统的发行版是通过调用 [uname(3)] 判断的。
+在 POSIX 系统上,操作系统的发行版是通过调用 [`uname(3)`] 判断的。
在 Windows 上, 则使用 `GetVersionExW()`。
详见 。
diff --git a/os/os_type.md b/os/os_type.md
index 63ce8eef..ea67b732 100644
--- a/os/os_type.md
+++ b/os/os_type.md
@@ -4,8 +4,8 @@ added: v0.3.3
* 返回: {string}
-返回与 [uname(3)] 返回一样的操作系统名字。
+返回与 [`uname(3)`] 返回一样的操作系统名字。
例如,在 Linux 上返回 `'Linux'`,在 macOS 上返回 `'Darwin'`,在 Windows 上返回 `'Windows_NT'`。
-有关在各种操作系统上运行 [uname(3)] 的输出的更多信息,参见 。
+有关在各种操作系统上运行 [`uname(3)`] 的输出的更多信息,参见 。
diff --git a/os/os_version.md b/os/os_version.md
index e9c64db9..4d34b569 100644
--- a/os/os_version.md
+++ b/os/os_version.md
@@ -7,7 +7,7 @@ added: v13.11.0
Returns a string identifying the kernel version.
On POSIX systems, the operating system release is determined by calling
-[uname(3)][]. On Windows, `RtlGetVersion()` is used, and if it is not available,
-`GetVersionExW()` will be used. See
+[`uname(3)`][]. On Windows, `RtlGetVersion()` is used, and if it is not
+available, `GetVersionExW()` will be used. See
for more information.
diff --git a/perf_hooks/measuring_how_long_it_takes_to_load_dependencies.md b/perf_hooks/measuring_how_long_it_takes_to_load_dependencies.md
index ef6fe082..107269f0 100644
--- a/perf_hooks/measuring_how_long_it_takes_to_load_dependencies.md
+++ b/perf_hooks/measuring_how_long_it_takes_to_load_dependencies.md
@@ -37,3 +37,5 @@ require('some-module');
+
+
diff --git a/perf_hooks/performance_eventlooputilization_util1_util2.md b/perf_hooks/performance_eventlooputilization_util1_util2.md
new file mode 100644
index 00000000..ff9c2730
--- /dev/null
+++ b/perf_hooks/performance_eventlooputilization_util1_util2.md
@@ -0,0 +1,55 @@
+
+
+* `util1` {Object} The result of a previous call to `eventLoopUtilization()`
+* `util2` {Object} The result of a previous call to `eventLoopUtilization()`
+ prior to `util1`
+* Returns {Object}
+ * `idle` {number}
+ * `active` {number}
+ * `utilization` {number}
+
+The `eventLoopUtilization()` method returns an object that contains the
+cumulative duration of time the event loop has been both idle and active as a
+high resolution milliseconds timer. The `utilization` value is the calculated
+Event Loop Utilization (ELU). If bootstrapping has not yet finished, the
+properties have the value of 0.
+
+`util1` and `util2` are optional parameters.
+
+If `util1` is passed then the delta between the current call's `active` and
+`idle` times are calculated and returned (similar to [`process.hrtime()`][]).
+Likewise the adjusted `utilization` value is calculated.
+
+If `util1` and `util2` are both passed then the calculation adjustments are
+done between the two arguments. This is a convenience option because unlike
+[`process.hrtime()`][] additional work is done to calculate the ELU.
+
+ELU is similar to CPU utilization except that it is calculated using high
+precision wall-clock time. It represents the percentage of time the event loop
+has spent outside the event loop's event provider (e.g. `epoll_wait`). No other
+CPU idle time is taken into consideration. The following is an example of how
+a mostly idle process will have a high ELU.
+
+
+```js
+'use strict';
+const { eventLoopUtilization } = require('perf_hooks').performance;
+const { spawnSync } = require('child_process');
+
+setImmediate(() => {
+ const elu = eventLoopUtilization();
+ spawnSync('sleep', ['5']);
+ console.log(eventLoopUtilization(elu).utilization);
+});
+```
+
+While the CPU is mostly idle while running this script the value of
+`utilization` is 1. This is because the call to [`child_process.spawnSync()`][]
+blocks the event loop from proceeding.
+
+Passing in a user-defined object instead of the result of a previous call to
+`eventLoopUtilization()` will lead to undefined behavior. The return values
+are not guaranteed to reflect any correct state of the event loop.
+
diff --git a/perf_hooks/performanceentry_flags.md b/perf_hooks/performanceentry_flags.md
index 7b198908..f371222b 100644
--- a/perf_hooks/performanceentry_flags.md
+++ b/perf_hooks/performanceentry_flags.md
@@ -1,5 +1,7 @@
* {number}
diff --git a/perf_hooks/performancenodetiming_idletime.md b/perf_hooks/performancenodetiming_idletime.md
new file mode 100644
index 00000000..cdf45e4f
--- /dev/null
+++ b/perf_hooks/performancenodetiming_idletime.md
@@ -0,0 +1,12 @@
+
+
+* {number}
+
+The high resolution millisecond timestamp of the amount of time the event loop
+has been idle within the event loop's event provider (e.g. `epoll_wait`). This
+does not take CPU usage into consideration. If the event loop has not yet
+started (e.g., in the first tick of the main script), the property has the
+value of 0.
+
diff --git a/policy/dependency_redirection.md b/policy/dependency_redirection.md
index 95279c0a..e3d49f20 100644
--- a/policy/dependency_redirection.md
+++ b/policy/dependency_redirection.md
@@ -33,12 +33,12 @@ be used to find the module.
If the value of the redirection is a string, it will be resolved relative to
the manifest and then immediately be used without searching.
-Any specifier string that is attempted to resolved and not listed in the
+Any specifier string that is attempted to resolve and not listed in the
dependencies will result in an error according to the policy.
Redirection will not prevent access to APIs through means such as direct access
to `require.cache` and/or through `module.constructor` which allow access to
-loading modules. Policy redirection only affect specifiers to `require()` and
+loading modules. Policy redirection only affects specifiers to `require()` and
`import`. Other means such as to prevent undesired access to APIs through
variables are necessary to lock down that path of loading modules.
@@ -47,14 +47,14 @@ module to load any specifier without redirection. This can be useful for local
development and may have some valid usage in production, but should be used
only with care after auditing a module to ensure its behavior is valid.
-Similar to `"exports"` in `package.json` dependencies can also be specified to
+Similar to `"exports"` in `package.json`, dependencies can also be specified to
be objects containing conditions which branch how dependencies are loaded. In
-the above example `"http"` will be allowed when the `"import"` condition is
+the preceding example, `"http"` will be allowed when the `"import"` condition is
part of loading it.
-A value of `null` for the resolved value will cause the resolution to fail.
-This can be used to ensure some kinds dynamic access are explicitly prevented.
+A value of `null` for the resolved value will cause the resolution to fail. This
+can be used to ensure some kinds of dynamic access are explicitly prevented.
-Unknown values for the resolved module location will cause failure, but are
+Unknown values for the resolved module location will cause failure but are
not guaranteed to be forwards compatible.
diff --git a/policy/dependency_redirection_using_scopes.md b/policy/dependency_redirection_using_scopes.md
new file mode 100644
index 00000000..c16591a2
--- /dev/null
+++ b/policy/dependency_redirection_using_scopes.md
@@ -0,0 +1,44 @@
+
+The following example, would allow access to `fs` for all resources within
+`./app/`:
+
+```json
+{
+ "resources": {
+ "./app/checked.js": {
+ "cascade": true,
+ "integrity": true
+ }
+ },
+ "scopes": {
+ "./app/": {
+ "dependencies": {
+ "fs": true
+ }
+ }
+ }
+}
+```
+
+The following example, would allow access to `fs` for all `data:` resources:
+
+```json
+{
+ "resources": {
+ "data:text/javascript,import('fs');": {
+ "cascade": true,
+ "integrity": true
+ }
+ },
+ "scopes": {
+ "data:": {
+ "dependencies": {
+ "fs": true
+ }
+ }
+ }
+}
+```
+
+
+
diff --git a/policy/example_patched_dependency.md b/policy/example_patched_dependency.md
index 5a9b61a5..24e104a9 100644
--- a/policy/example_patched_dependency.md
+++ b/policy/example_patched_dependency.md
@@ -17,4 +17,3 @@ module.exports = function fn(...args) {
};
```
-
diff --git a/policy/integrity_checks.md b/policy/integrity_checks.md
index 4095b640..08f1ba05 100644
--- a/policy/integrity_checks.md
+++ b/policy/integrity_checks.md
@@ -23,8 +23,8 @@ An example policy file that would allow loading a file `checked.js`:
Each resource listed in the policy manifest can be of one the following
formats to determine its location:
-1. A [relative url string][] to a resource from the manifest such as `./resource.js`, `../resource.js`, or `/resource.js`.
-2. A complete url string to a resource such as `file:///resource.js`.
+1. A [relative-URL string][] to a resource from the manifest such as `./resource.js`, `../resource.js`, or `/resource.js`.
+2. A complete URL string to a resource such as `file:///resource.js`.
When loading resources the entire URL must match including search parameters
and hash fragment. `./a.js?b` will not be used when attempting to load
diff --git a/policy/integrity_using_scopes.md b/policy/integrity_using_scopes.md
new file mode 100644
index 00000000..00442729
--- /dev/null
+++ b/policy/integrity_using_scopes.md
@@ -0,0 +1,24 @@
+
+Setting an integrity to `true` on a scope will set the integrity for any
+resource not found in the manifest to `true`.
+
+Setting an integrity to `null` on a scope will set the integrity for any
+resource not found in the manifest to fail matching.
+
+Not including an integrity is the same as setting the integrity to `null`.
+
+`"cascade"` for integrity checks will be ignored if `"integrity"` is explicitly
+set.
+
+The following example allows loading any file:
+
+```json
+{
+ "scopes": {
+ "file:": {
+ "integrity": true
+ }
+ }
+}
+```
+
diff --git a/policy/policies.md b/policy/policies.md
index d5c13376..4034ccb2 100644
--- a/policy/policies.md
+++ b/policy/policies.md
@@ -14,8 +14,8 @@ safe practices for the policy files such as ensuring that policy
files cannot be overwritten by the Node.js application by using
file permissions.
-A best practice would be to ensure that the policy manifest is read only for
-the running Node.js application, and that the file cannot be changed
+A best practice would be to ensure that the policy manifest is read-only for
+the running Node.js application and that the file cannot be changed
by the running Node.js application in any way. A typical setup would be to
create the policy file as a different user id than the one running Node.js
and granting read permissions to the user id running Node.js.
diff --git a/policy/scopes.md b/policy/scopes.md
new file mode 100644
index 00000000..de19b0db
--- /dev/null
+++ b/policy/scopes.md
@@ -0,0 +1,19 @@
+
+Use the `"scopes"` field of a manifest to set configuration for many resources
+at once. The `"scopes"` field works by matching resources by their segments.
+If a scope or resource includes `"cascade": true`, unknown specifiers will
+be searched for in their containing scope. The containing scope for cascading
+is found by recursively reducing the resource URL by removing segments for
+[special schemes][], keeping trailing `"/"` suffixes, and removing the query and
+hash fragment. This leads to the eventual reduction of the URL to its origin.
+If the URL is non-special the scope will be located by the URL's origin. If no
+scope is found for the origin or in the case of opaque origins, a protocol
+string can be used as a scope.
+
+Note, `blob:` URLs adopt their origin from the path they contain, and so a scope
+of `"blob:https://nodejs.org"` will have no effect since no URL can have an
+origin of `blob:https://nodejs.org`; URLs starting with
+`blob:https://nodejs.org/` will use `https://nodejs.org` for its origin and
+thus `https:` for its protocol scope. For opaque origin `blob:` URLs they will
+have `blob:` for their protocol scope since they do not adopt origins.
+
diff --git a/process/process_version.md b/process/process_version.md
index fb713810..b4d185e1 100644
--- a/process/process_version.md
+++ b/process/process_version.md
@@ -4,9 +4,13 @@ added: v0.1.3
* {string}
-`process.version` 属性返回 Node.js 的版本信息(以 `v<主版本号>.<次版本号>.<补丁号>` 的形式)。
+`process.version` 属性包含 Node.js 的版本字符串。
```js
console.log(`版本: ${process.version}`);
+// 版本: v14.8.0
```
+To get the version string without the prepended _v_, use
+`process.versions.node`.
+
diff --git a/readline/rl_symbol_asynciterator.md b/readline/rl_symbol_asynciterator.md
index e3cc26d9..7fd3fc06 100644
--- a/readline/rl_symbol_asynciterator.md
+++ b/readline/rl_symbol_asynciterator.md
@@ -35,3 +35,7 @@ async function processLineByLine() {
}
```
+`readline.createInterface()` will start to consume the input stream once
+invoked. Having asynchronous operations between interface creation and
+asynchronous iteration may result in missed lines.
+
diff --git a/tls/certificate_object.md b/tls/certificate_object.md
index 67387d59..41eb82fe 100644
--- a/tls/certificate_object.md
+++ b/tls/certificate_object.md
@@ -59,7 +59,8 @@ For EC keys, the following properties may be defined:
Example certificate:
-```text
+
+```js
{ subject:
{ OU: [ 'Domain Control Validated', 'PositiveSSL Wildcard' ],
CN: '*.nodejs.org' },
diff --git a/tls/tls_createsecurecontext_options.md b/tls/tls_createsecurecontext_options.md
index 7655ad0f..4fe81f21 100644
--- a/tls/tls_createsecurecontext_options.md
+++ b/tls/tls_createsecurecontext_options.md
@@ -170,7 +170,7 @@ The `tls.createSecureContext()` method creates a `SecureContext` object. It is
usable as an argument to several `tls` APIs, such as [`tls.createServer()`][]
and [`server.addContext()`][], but has no public methods.
-A key is *required* for ciphers that make use of certificates. Either `key` or
+A key is *required* for ciphers that use certificates. Either `key` or
`pfx` can be used to provide it.
If the `ca` option is not given, then Node.js will default to using
diff --git a/url/legacy_url_api.md b/url/legacy_url_api.md
index c72d7c3b..c255454c 100644
--- a/url/legacy_url_api.md
+++ b/url/legacy_url_api.md
@@ -1,3 +1,4 @@
-
-> Stability: 0 - Deprecated: Use the WHATWG URL API instead.
+
diff --git a/url/legacy_urlobject.md b/url/legacy_urlobject.md
index 7a0523ef..dcee6435 100644
--- a/url/legacy_urlobject.md
+++ b/url/legacy_urlobject.md
@@ -5,6 +5,8 @@ changes:
description: The Legacy URL API is deprecated. Use the WHATWG URL API.
-->
+> Stability: 0 - Deprecated: Use the WHATWG URL API instead.
+
The legacy `urlObject` (`require('url').Url`) is created and returned by the
`url.parse()` function.
diff --git a/url/url_format_urlobject.md b/url/url_format_urlobject.md
index 71997585..dde3f601 100644
--- a/url/url_format_urlobject.md
+++ b/url/url_format_urlobject.md
@@ -12,6 +12,8 @@ changes:
times.
-->
+> Stability: 0 - Deprecated: Use the WHATWG URL API instead.
+
* `urlObject` {Object|string} A URL object (as returned by `url.parse()` or
constructed otherwise). If a string, it is converted to an object by passing
it to `url.parse()`.
diff --git a/url/url_parse_urlstring_parsequerystring_slashesdenotehost.md b/url/url_parse_urlstring_parsequerystring_slashesdenotehost.md
index 7750cbdf..c70098ba 100644
--- a/url/url_parse_urlstring_parsequerystring_slashesdenotehost.md
+++ b/url/url_parse_urlstring_parsequerystring_slashesdenotehost.md
@@ -15,6 +15,8 @@ changes:
when no query string is present.
-->
+> Stability: 0 - Deprecated: Use the WHATWG URL API instead.
+
* `urlString` {string} The URL string to parse.
* `parseQueryString` {boolean} If `true`, the `query` property will always
be set to an object returned by the [`querystring`][] module's `parse()`
diff --git a/url/url_resolve_from_to.md b/url/url_resolve_from_to.md
index aa93c8d7..13473358 100644
--- a/url/url_resolve_from_to.md
+++ b/url/url_resolve_from_to.md
@@ -17,6 +17,8 @@ changes:
contains a hostname.
-->
+> Stability: 0 - Deprecated: Use the WHATWG URL API instead.
+
* `from` {string} The Base URL being resolved against.
* `to` {string} The HREF URL being resolved.
diff --git a/vm/script_runinnewcontext_contextobject_options.md b/vm/script_runinnewcontext_contextobject_options.md
index 9d57032b..345795dc 100644
--- a/vm/script_runinnewcontext_contextobject_options.md
+++ b/vm/script_runinnewcontext_contextobject_options.md
@@ -25,7 +25,7 @@ changes:
* `strings` {boolean} 如果设置为 `false`,则对 `eval` 或函数构造函数(`Function`、`GeneratorFunction` 等)的任何调用都将抛出 `EvalError`。**默认值:** `true`。
* `wasm` {boolean} 如果设置为 `false`,则任何编译 WebAssembly 模块的尝试都将抛出 `WebAssembly.CompileError`。**默认值:** `true`。
* `microtaskMode` {string} If set to `afterEvaluate`, microtasks (tasks
- scheduled through `Promise`s any `async function`s) will be run immediately
+ scheduled through `Promise`s and `async function`s) will be run immediately
after the script has run. They are included in the `timeout` and
`breakOnSigint` scopes in that case.
* 返回: {any} 脚本中执行的最后一个语句的结果。
diff --git a/vm/vm_createcontext_contextobject_options.md b/vm/vm_createcontext_contextobject_options.md
index ebc4fca8..a8502511 100644
--- a/vm/vm_createcontext_contextobject_options.md
+++ b/vm/vm_createcontext_contextobject_options.md
@@ -21,7 +21,7 @@ changes:
* `strings` {boolean} 如果设置为 `false`,则对 `eval` 或函数构造函数(`Function`、`GeneratorFunction` 等)的任何调用都将抛出 `EvalError`。**默认值:** `true`。
* `wasm` {boolean} 如果设置为 `false`,则任何编译 WebAssembly 模块的尝试都将抛出 `WebAssembly.CompileError`。**默认值:** `true`。
* `microtaskMode` {string} If set to `afterEvaluate`, microtasks (tasks
- scheduled through `Promise`s any `async function`s) will be run immediately
+ scheduled through `Promise`s and `async function`s) will be run immediately
after a script has run through [`script.runInContext()`][].
They are included in the `timeout` and `breakOnSigint` scopes in that case.
* 返回: {Object} 上下文隔离化的沙盒。
diff --git a/vm/vm_runinnewcontext_code_contextobject_options.md b/vm/vm_runinnewcontext_code_contextobject_options.md
index 4384d774..b29c5f5a 100644
--- a/vm/vm_runinnewcontext_code_contextobject_options.md
+++ b/vm/vm_runinnewcontext_code_contextobject_options.md
@@ -41,7 +41,7 @@ changes:
* `module` {vm.Module}
* 返回: {Module Namespace Object|vm.Module} 返回 `vm.Module` 以利用错误跟踪,并避免出现包含 `then` 函数导出的命名空间问题。
* `microtaskMode` {string} If set to `afterEvaluate`, microtasks (tasks
- scheduled through `Promise`s any `async function`s) will be run immediately
+ scheduled through `Promise`s and `async function`s) will be run immediately
after the script has run. They are included in the `timeout` and
`breakOnSigint` scopes in that case.
* 返回: {any} 脚本中执行的最后一个语句的结果。