2020-10-20, Version 15.0.0 (Current)

Notable changes:

Deprecations and Removals:

- **build**: remove --build-v8-with-gn configure option (Yang Guo)
(https://github.com/nodejs/node/pull/27576)
- **build**: drop support for VS2017 (Michaël Zasso)
(https://github.com/nodejs/node/pull/33694)
- **doc**: move DEP0018 to End-of-Life (Rich Trott)
(https://github.com/nodejs/node/pull/35316)
- **fs**: deprecation warning on recursive rmdir (Ian Sutherland)
(https://github.com/nodejs/node/pull/35562)
- **lib**: add EventTarget-related browser globals (Anna Henningsen)
(https://github.com/nodejs/node/pull/35496)
- **net**: remove long deprecated server.connections property (James M
Snell) (https://github.com/nodejs/node/pull/33647)
- **repl**: remove deprecated repl.memory function (Ruben Bridgewater)
(https://github.com/nodejs/node/pull/33286)
- **repl**: remove deprecated repl.turnOffEditorMode() function (Ruben
Bridgewater) (https://github.com/nodejs/node/pull/33286)
- **repl**: remove deprecated repl.parseREPLKeyword() function (Ruben
Bridgewater) (https://github.com/nodejs/node/pull/33286)
- **repl**: remove deprecated bufferedCommand property (Ruben
Bridgewater) (https://github.com/nodejs/node/pull/33286)
- **repl**: remove deprecated .rli (Ruben Bridgewater)
(https://github.com/nodejs/node/pull/33286)
- **src**: remove deprecated node debug command (James M Snell)
(https://github.com/nodejs/node/pull/33648)
- **timers**: introduce timers/promises (James M Snell)
(https://github.com/nodejs/node/pull/33950)
- **util**: change default value of `maxStringLength` to 10000
(unknown) (https://github.com/nodejs/node/pull/32744)
- **wasi**: drop --experimental-wasm-bigint requirement (Colin Ihrig)
(https://github.com/nodejs/node/pull/35415)

npm 7 (https://github.com/nodejs/node/pull/35631):

Node.js 15 comes with a new major release of npm, npm 7. npm 7 comes
with many new features - including npm workspaces and a new
package-lock.json format. npm 7 also includes yarn.lock file support.
One of the big changes in npm 7 is that peer dependencies are now
installed by default.

Throw On Unhandled Rejections
(https://github.com/nodejs/node/pull/33021):

As of Node.js 15, the default mode for `unhandledRejection` is changed
to `throw` (from `warn`). In `throw` mode, if an `unhandledRejection`
hook is not set, the `unhandledRejection` is raised as an uncaught
exception. Users that have an `unhandledRejection` hook should see no
change in behavior, and it’s still possible to switch modes using the
`--unhandled-rejections=mode` process flag.

QUIC (https://github.com/nodejs/node/pull/32379):

Node.js 15 comes with experimental support QUIC, which can be enabled
by compiling Node.js with the `--experimental-quic` configuration flag.
The Node.js QUIC implementation is exposed by the core `net` module.

V8 8.6 (https://github.com/nodejs/node/pull/35415):

The V8 JavaScript engine has been updated to V8 8.6 (V8 8.4 is the
latest available in Node.js 14). Along with performance tweaks and
improvements the V8 update also brings the following language features:
* `Promise.any()` (from V8 8.5)
* `AggregateError` (from V8 8.5)
* `String.prototype.replaceAll()` (from V8 8.5)
* Logical assignment operators `&&=`, `||=`, and `??=` (from V8 8.5)

Other Notable Changes:

- **assert**: add `assert/strict` alias module (ExE Boss)
(https://github.com/nodejs/node/pull/34001)
- **dns**: add dns/promises alias (shisama)
(https://github.com/nodejs/node/pull/32953)
- **fs**: reimplement read and write streams using stream.construct
(Robert Nagy) (https://github.com/nodejs/node/pull/29656)
- **http2**: allow Host in HTTP/2 requests (Alba Mendez)
(https://github.com/nodejs/node/pull/34664)
- **lib**: add EventTarget-related browser globals (Anna Henningsen)
(https://github.com/nodejs/node/pull/35496)
- **lib**: unflag AbortController (James M Snell)
(https://github.com/nodejs/node/pull/33527)
- **lib**: initial experimental AbortController implementation (James M
Snell) (https://github.com/nodejs/node/pull/33527)
- **net**: autoDestroy Socket (Robert Nagy)
(https://github.com/nodejs/node/pull/31806)
- **src**: disallow JS execution inside FreeEnvironment (Anna
Henningsen) (https://github.com/nodejs/node/pull/33874)
- **stream**: construct (Robert Nagy)
(https://github.com/nodejs/node/pull/29656)
- **worker**: make MessageEvent class more Web-compatible (Anna
Henningsen) (https://github.com/nodejs/node/pull/35496)

Semver-Major Commits:

- **assert**: add `assert/strict` alias module (ExE Boss)
(https://github.com/nodejs/node/pull/34001)
- **build**: reset embedder string to "-node.0" (Michaël Zasso)
(https://github.com/nodejs/node/pull/35415)
- **build**: remove --build-v8-with-gn configure option (Yang Guo)
(https://github.com/nodejs/node/pull/27576)
- **build**: drop support for VS2017 (Michaël Zasso)
(https://github.com/nodejs/node/pull/33694)
- **crypto**: refactoring internals, add WebCrypto (James M Snell)
(https://github.com/nodejs/node/pull/35093)
- **crypto**: move node\_crypto files to src/crypto (James M Snell)
(https://github.com/nodejs/node/pull/35093)
- **deps**: V8: cherry-pick d76abfed3512 (Michaël Zasso)
(https://github.com/nodejs/node/pull/35415)
- **deps**: V8: cherry-pick 717543bbf0ef (Michaël Zasso)
(https://github.com/nodejs/node/pull/35415)
- **deps**: V8: cherry-pick 6be2f6e26e8d (Michaël Zasso)
(https://github.com/nodejs/node/pull/35415)
- **deps**: fix V8 build issue with inline methods (Jiawen Geng)
(https://github.com/nodejs/node/pull/35415)
- **deps**: fix platform-embedded-file-writer-win for ARM64 (Michaël
Zasso) (https://github.com/nodejs/node/pull/35415)
- **deps**: update V8 postmortem metadata script (Colin Ihrig)
(https://github.com/nodejs/node/pull/35415)
- **deps**: update V8 to 8.6.395 (Michaël Zasso)
(https://github.com/nodejs/node/pull/35415)
- **deps**: upgrade npm to 7.0.0 (Myles Borins)
(https://github.com/nodejs/node/pull/35631)
- **deps**: update npm to 7.0.0-rc.3 (Myles Borins)
(https://github.com/nodejs/node/pull/35474)
- **deps**: V8: cherry-pick 0d6debcc5f08 (Gus Caplan)
(https://github.com/nodejs/node/pull/33600)
- **dns**: add dns/promises alias (shisama)
(https://github.com/nodejs/node/pull/32953)
- **doc**: move DEP0018 to End-of-Life (Rich Trott)
(https://github.com/nodejs/node/pull/35316)
- **doc**: update support macos version for 15.x (Ash Cripps)
(https://github.com/nodejs/node/pull/35022)
- **fs**: deprecation warning on recursive rmdir (Ian Sutherland)
(https://github.com/nodejs/node/pull/35562)
- **fs**: reimplement read and write streams using stream.construct
(Robert Nagy) (https://github.com/nodejs/node/pull/29656)
- **http**: fixed socket.setEncoding fatal error (iskore)
(https://github.com/nodejs/node/pull/33405)
- **http**: emit 'error' on aborted server request (Robert Nagy)
(https://github.com/nodejs/node/pull/33172)
- **http**: cleanup end argument handling (Robert Nagy)
(https://github.com/nodejs/node/pull/31818)
- **http2**: allow Host in HTTP/2 requests (Alba Mendez)
(https://github.com/nodejs/node/pull/34664)
- **http2**: add `invalidheaders` test (Pranshu Srivastava)
(https://github.com/nodejs/node/pull/33161)
- **http2**: refactor state code validation for the http2Stream class
(rickyes) (https://github.com/nodejs/node/pull/33535)
- **http2**: header field valid checks (Pranshu Srivastava)
(https://github.com/nodejs/node/pull/33193)
- **lib**: add EventTarget-related browser globals (Anna Henningsen)
(https://github.com/nodejs/node/pull/35496)
- **lib**: remove ERR\_INVALID\_OPT\_VALUE and
ERR\_INVALID\_OPT\_VALUE\_ENCODING (Denys Otrishko)
(https://github.com/nodejs/node/pull/34682)
- **lib**: handle one of args case in ERR\_MISSING\_ARGS (Denys
Otrishko) (https://github.com/nodejs/node/pull/34022)
- **lib**: remove NodeError from the prototype of errors with code
(Michaël Zasso) (https://github.com/nodejs/node/pull/33857)
- **lib**: unflag AbortController (James M Snell)
(https://github.com/nodejs/node/pull/33527)
- **lib**: initial experimental AbortController implementation (James M
Snell) (https://github.com/nodejs/node/pull/33527)
- **net**: check args in net.connect() and socket.connect() calls
(Denys Otrishko) (https://github.com/nodejs/node/pull/34022)
- **net**: remove long deprecated server.connections property (James M
Snell) (https://github.com/nodejs/node/pull/33647)
- **net**: autoDestroy Socket (Robert Nagy)
(https://github.com/nodejs/node/pull/31806)
- **process**: update v8 fast api calls usage (Maya Lekova)
(https://github.com/nodejs/node/pull/35415)
- **process**: change default --unhandled-rejections=throw (Dan
Fabulich) (https://github.com/nodejs/node/pull/33021)
- **process**: use v8 fast api calls for hrtime (Gus Caplan)
(https://github.com/nodejs/node/pull/33600)
- **process**: delay throwing an error using `throwDeprecation` (Ruben
Bridgewater) (https://github.com/nodejs/node/pull/32312)
- **repl**: remove deprecated repl.memory function (Ruben Bridgewater)
(https://github.com/nodejs/node/pull/33286)
- **repl**: remove deprecated repl.turnOffEditorMode() function (Ruben
Bridgewater) (https://github.com/nodejs/node/pull/33286)
- **repl**: remove deprecated repl.parseREPLKeyword() function (Ruben
Bridgewater) (https://github.com/nodejs/node/pull/33286)
- **repl**: remove deprecated bufferedCommand property (Ruben
Bridgewater) (https://github.com/nodejs/node/pull/33286)
- **repl**: remove deprecated .rli (Ruben Bridgewater)
(https://github.com/nodejs/node/pull/33286)
- **src**: implement NodePlatform::PostJob (Clemens Backes)
(https://github.com/nodejs/node/pull/35415)
- **src**: update NODE\_MODULE\_VERSION to 88 (Michaël Zasso)
(https://github.com/nodejs/node/pull/35415)
- **src**: error reporting on CPUUsage (Yash Ladha)
(https://github.com/nodejs/node/pull/34762)
- **src**: use node:moduleName as builtin module filename (Michaël
Zasso) (https://github.com/nodejs/node/pull/35498)
- **src**: enable wasm trap handler on windows (Gus Caplan)
(https://github.com/nodejs/node/pull/35033)
- **src**: update NODE\_MODULE\_VERSION to 86 (Michaël Zasso)
(https://github.com/nodejs/node/pull/33579)
- **src**: disallow JS execution inside FreeEnvironment (Anna
Henningsen) (https://github.com/nodejs/node/pull/33874)
- **src**: remove \_third\_party\_main support (Anna Henningsen)
(https://github.com/nodejs/node/pull/33971)
- **src**: remove deprecated node debug command (James M Snell)
(https://github.com/nodejs/node/pull/33648)
- **src**: remove unused CancelPendingDelayedTasks (Anna Henningsen)
(https://github.com/nodejs/node/pull/32859)
- **stream**: try to wait for flush to complete before 'finish' (Robert
Nagy) (https://github.com/nodejs/node/pull/34314)
- **stream**: cleanup and fix Readable.wrap (Robert Nagy)
(https://github.com/nodejs/node/pull/34204)
- **stream**: add promises version to utility functions (rickyes)
(https://github.com/nodejs/node/pull/33991)
- **stream**: fix writable.end callback behavior (Robert Nagy)
(https://github.com/nodejs/node/pull/34101)
- **stream**: construct (Robert Nagy)
(https://github.com/nodejs/node/pull/29656)
- **stream**: write should throw on unknown encoding (Robert Nagy)
(https://github.com/nodejs/node/pull/33075)
- **stream**: fix \_final and 'prefinish' timing (Robert Nagy)
(https://github.com/nodejs/node/pull/32780)
- **stream**: simplify Transform stream implementation (Robert Nagy)
(https://github.com/nodejs/node/pull/32763)
- **stream**: use callback to properly propagate error (Robert Nagy)
(https://github.com/nodejs/node/pull/29179)
- **test**: update tests after increasing typed array size to 4GB
(Kim-Anh Tran) (https://github.com/nodejs/node/pull/35415)
- **test**: fix tests for npm 7.0.0 (Myles Borins)
(https://github.com/nodejs/node/pull/35631)
- **test**: fix test suite to work with npm 7 (Myles Borins)
(https://github.com/nodejs/node/pull/35474)
- **test**: update WPT harness and tests (Michaël Zasso)
(https://github.com/nodejs/node/pull/33770)
- **timers**: introduce timers/promises (James M Snell)
(https://github.com/nodejs/node/pull/33950)
- **tools**: disable x86 safe exception handlers in V8 (Michaël Zasso)
(https://github.com/nodejs/node/pull/35415)
- **tools**: update V8 gypfiles for 8.6 (Ujjwal Sharma)
(https://github.com/nodejs/node/pull/35415)
- **tools**: update V8 gypfiles for 8.5 (Ujjwal Sharma)
(https://github.com/nodejs/node/pull/35415)
- **url**: file URL path normalization (Daijiro Wachi)
(https://github.com/nodejs/node/pull/35477)
- **url**: verify domain is not empty after "ToASCII" (Michaël Zasso)
(https://github.com/nodejs/node/pull/33770)
- **url**: remove U+0000 case in the fragment state (Michaël Zasso)
(https://github.com/nodejs/node/pull/33770)
- **url**: remove gopher from special schemes (Michaël Zasso)
(https://github.com/nodejs/node/pull/33325)
- **url**: forbid lt and gt in url host code point (Yash Ladha)
(https://github.com/nodejs/node/pull/33328)
- **util**: change default value of `maxStringLength` to 10000
(unknown) (https://github.com/nodejs/node/pull/32744)
- **wasi**: drop --experimental-wasm-bigint requirement (Colin Ihrig)
(https://github.com/nodejs/node/pull/35415)
- **win, child_process**: sanitize env variables (Bartosz Sosnowski)
(https://github.com/nodejs/node/pull/35210)
- **worker**: make MessageEvent class more Web-compatible (Anna
Henningsen) (https://github.com/nodejs/node/pull/35496)
- **worker**: set trackUnmanagedFds to true by default (Anna
Henningsen) (https://github.com/nodejs/node/pull/34394)
- **worker**: rename error code to be more accurate (Anna Henningsen)
(https://github.com/nodejs/node/pull/33872)

PR-URL: https://github.com/nodejs/node/pull/35014
This commit is contained in:
Beth Griggs 2020-09-01 21:16:46 +01:00
parent 4f296d270a
commit 57613f8c56
No known key found for this signature in database
GPG Key ID: D7062848A1AB005C
35 changed files with 854 additions and 379 deletions

View File

@ -2,6 +2,7 @@
Select a Node.js version below to view the changelog history:
* [Node.js 15](doc/changelogs/CHANGELOG_V15.md) **Current**
* [Node.js 14](doc/changelogs/CHANGELOG_V14.md) **Current**
* [Node.js 13](doc/changelogs/CHANGELOG_V13.md) End-of-Life
* [Node.js 12](doc/changelogs/CHANGELOG_V12.md) **Long Term Support**
@ -24,12 +25,16 @@ release.
<!--lint disable maximum-line-length-->
<table>
<tr>
<th title="Current"><a href="doc/changelogs/CHANGELOG_V15.md">15</a><sup>Current</sup></th>
<th title="Current"><a href="doc/changelogs/CHANGELOG_V14.md">14</a><sup>Current</sup></th>
<th title="LTS Until 2022-04"><a href="doc/changelogs/CHANGELOG_V12.md">12</a><sup>LTS</sup></th>
<th title="LTS Until 2021-04"><a href="doc/changelogs/CHANGELOG_V10.md">10</a><sup>LTS</sup></th>
</tr>
<tr>
<td valign="top">
<b><a href="doc/changelogs/CHANGELOG_V15.md#15.0.0">15.0.0</a></b><br/>
</td>
<td valign="top">
<b><a href="doc/changelogs/CHANGELOG_V14.md#14.14.0">14.14.0</a></b><br/>
<a href="doc/changelogs/CHANGELOG_V14.md#14.13.1">14.13.1</a><br/>
<a href="doc/changelogs/CHANGELOG_V14.md#14.13.0">14.13.0</a><br/>

View File

@ -1,6 +1,6 @@
{
"NODE_MODULE_VERSION": [
{ "modules": 88, "runtime": "node", "variant": "v8_8.6", "versions": "15.0.0-pre" },
{ "modules": 88, "runtime": "node", "variant": "v8_8.6", "versions": "15.0.0" },
{ "modules": 87, "runtime": "electron", "variant": "electron", "versions": "12" },
{ "modules": 86, "runtime": "node", "variant": "v8_8.4", "versions": "15.0.0-pre" },
{ "modules": 85, "runtime": "electron", "variant": "electron", "versions": "11" },

View File

@ -13,7 +13,7 @@ invariants.
<!-- YAML
added: v9.9.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/34001
description: Exposed as `require('assert/strict')`.
- version:

View File

@ -288,7 +288,7 @@ It can be constructed in a variety of ways.
<!-- YAML
added: v5.10.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/34682
description: Throw ERR_INVALID_ARG_VALUE instead of ERR_INVALID_OPT_VALUE
for invalid input arguments.
@ -357,7 +357,7 @@ A `TypeError` will be thrown if `size` is not a number.
<!-- YAML
added: v5.10.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/34682
description: Throw ERR_INVALID_ARG_VALUE instead of ERR_INVALID_OPT_VALUE
for invalid input arguments.
@ -410,7 +410,7 @@ additional performance that [`Buffer.allocUnsafe()`][] provides.
<!-- YAML
added: v5.12.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/34682
description: Throw ERR_INVALID_ARG_VALUE instead of ERR_INVALID_OPT_VALUE
for invalid input arguments.

View File

@ -203,9 +203,9 @@ Currently, overriding `Error.prepareStackTrace` is ignored when the
### `--experimental-abortcontroller`
<!-- YAML
added: REPLACEME
added: v15.0.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/33527
description: --experimental-abortcontroller is no longer required.
-->
@ -548,7 +548,7 @@ Silence all process warnings (including deprecations).
### `--node-memory-debug`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
Enable extra debug checks for memory leaks in Node.js internals. This is

View File

@ -57,7 +57,7 @@ data. The most common usage is handling output generated by the HTML5
<!-- YAML
added: v9.0.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35093
description: The spkac argument can be an ArrayBuffer. Limited the size of
the spkac argument to a maximum of 2**31 - 1 bytes.
@ -80,7 +80,7 @@ console.log(challenge.toString('utf8'));
<!-- YAML
added: v9.0.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35093
description: The spkac argument can be an ArrayBuffer. Limited the size of
the spkac argument to a maximum of 2**31 - 1 bytes.
@ -103,7 +103,7 @@ console.log(publicKey);
<!-- YAML
added: v9.0.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35093
description: The spkac argument can be an ArrayBuffer. Added encoding.
Limited the size of the spkac argument to a maximum of
@ -512,7 +512,7 @@ than once will result in an error being thrown.
<!-- YAML
added: v1.0.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35093
description: The buffer argument can be a string or ArrayBuffer and is
limited to no more than 2 ** 31 - 1 bytes.
@ -541,7 +541,7 @@ The `decipher.setAAD()` method must be called before [`decipher.update()`][].
<!-- YAML
added: v1.0.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35093
description: The buffer argument can be a string or ArrayBuffer and is
limited to no more than 2 ** 31 - 1 bytes.
@ -1455,7 +1455,7 @@ console.log(verify.verify(publicKey, signature));
<!-- YAML
added: v0.1.92
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35093
description: The privateKey can also be an ArrayBuffer and CryptoKey.
- version: v12.0.0
@ -1573,7 +1573,7 @@ This can be called many times with new data as it is streamed.
<!-- YAML
added: v0.1.92
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35093
description: The object can also be an ArrayBuffer and CryptoKey.
- version: v12.0.0
@ -1684,7 +1684,7 @@ This property is deprecated. Please use `crypto.setFips()` and
added: v0.1.94
deprecated: v10.0.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35093
description: The password argument can be an ArrayBuffer and is limited to
a maximum of 2 ** 31 - 1 bytes.
@ -1743,7 +1743,7 @@ Adversaries][] for details.
<!-- YAML
added: v0.1.94
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35093
description: The password and iv arguments can be an ArrayBuffer and are
each limited to a maximum of 2 ** 31 - 1 bytes.
@ -2020,7 +2020,7 @@ input.on('readable', () => {
<!-- YAML
added: v0.1.94
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35093
description: The key can also be an ArrayBuffer or CryptoKey. The
encoding option was added. The key cannot contain
@ -2074,7 +2074,7 @@ input.on('readable', () => {
<!-- YAML
added: v11.6.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35093
description: The key can also be an ArrayBuffer. The encoding option was
added. The key cannot contain more than 2 ** 32 - 1 bytes.
@ -2103,7 +2103,7 @@ of the passphrase is limited to 1024 bytes.
<!-- YAML
added: v11.6.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35093
description: The key can also be an ArrayBuffer. The encoding option was
added. The key cannot contain more than 2 ** 32 - 1 bytes.
@ -2145,7 +2145,7 @@ and it will be impossible to extract the private key from the returned object.
<!-- YAML
added: v11.6.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35093
description: The key can also be an ArrayBuffer. The encoding argument was
added. The key cannot contain more than 2 ** 32 - 1 bytes.
@ -2215,7 +2215,7 @@ Both keys must have the same `asymmetricKeyType`, which must be one of `'dh'`
### `crypto.generateKey(type, options, callback)`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* `type`: {string} The intended use of the generated secret key. Currently
@ -2245,7 +2245,7 @@ generateKey('hmac', { length: 64 }, (err, key) => {
### `crypto.generateKeySync(type, options)`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* `type`: {string} The intended use of the generated secret key. Currently
@ -2426,7 +2426,7 @@ console.log(ciphers); // ['aes-128-cbc', 'aes-128-ccm', ...]
### `crypto.getCipherInfo(nameOrNid[, options])`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* `nameOrNid`: {string|number} The name or nid of the cipher to query.
@ -2525,7 +2525,7 @@ console.log(hashes); // ['DSA', 'DSA-SHA', 'DSA-SHA1', ...]
### `crypto.hkdf(digest, key, salt, info, keylen, callback)`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* `digest` {string} The digest algorithm to use.
@ -2562,7 +2562,7 @@ crypto.hkdf('sha512', 'key', 'salt', 'info', 64, (err, derivedKey) => {
### `crypto.hkdfSync(digest, key, salt, info, keylen)`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* `digest` {string} The digest algorithm to use.
@ -2597,7 +2597,7 @@ console.log(Buffer.from(derivedKey).toString('hex')); // '24156e2...5391653'
<!-- YAML
added: v0.5.5
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35093
description: The password and salt arguments can also be ArrayBuffer
instances.
@ -2743,7 +2743,7 @@ An array of supported digest functions can be retrieved using
<!-- YAML
added: v0.11.14
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35093
description: Added string, ArrayBuffer, and CryptoKey as allowable key
types. The oaepLabel can be an ArrayBuffer. The buffer can
@ -2786,7 +2786,7 @@ object, the `padding` property can be passed. Otherwise, this function uses
<!-- YAML
added: v1.1.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35093
description: Added string, ArrayBuffer, and CryptoKey as allowable key
types. The passphrase can be an ArrayBuffer. The buffer can
@ -2824,7 +2824,7 @@ object, the `padding` property can be passed. Otherwise, this function uses
<!-- YAML
added: v1.1.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35093
description: Added string, ArrayBuffer, and CryptoKey as allowable key
types. The passphrase can be an ArrayBuffer. The buffer can
@ -2863,7 +2863,7 @@ be passed instead of a public key.
<!-- YAML
added: v0.11.14
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35093
description: Added string, ArrayBuffer, and CryptoKey as allowable key
types. The oaepLabel and passphrase can be ArrayBuffers. The
@ -3153,7 +3153,7 @@ console.log(`The dice rolled: ${n}`);
<!-- YAML
added: v10.5.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35093
description: The password and salt arguments can also be ArrayBuffer
instances.
@ -3350,7 +3350,7 @@ additional properties can be passed:
<!-- YAML
added: v6.6.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35093
description: The a and b arguments can also be ArrayBuffer.
-->
@ -3376,7 +3376,7 @@ not introduce timing vulnerabilities.
<!-- YAML
added: v12.0.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35093
description: The data, key, and signature arguments can also be ArrayBuffer.
-->
@ -3420,7 +3420,7 @@ key may be passed for `key`.
### `crypto.webcrypto`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
Type: {Crypto} An implementation of the Web Crypto API standard.

View File

@ -426,7 +426,7 @@ See [`Intl.Segmenter`](https://github.com/tc39/proposal-intl-segmenter).
### DEP0018: Unhandled promise rejections
<!-- YAML
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35316
description: End-of-Life.
- version: v7.0.0
@ -465,7 +465,7 @@ This behavior has been removed.
### DEP0020: `Server.connections`
<!-- YAML
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/33647
description: Server.connections has been removed.
- version:
@ -1374,7 +1374,7 @@ an officially supported API.
### DEP0068: `node debug`
<!-- YAML
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/33648
description: The legacy `node debug` command was removed.
- version: v8.0.0
@ -1483,7 +1483,7 @@ code, no replacement API is provided.
### DEP0074: `REPLServer.bufferedCommand`
<!-- YAML
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/33286
description: End-of-Life.
- version: v9.0.0
@ -1499,7 +1499,7 @@ The `REPLServer.bufferedCommand` property was deprecated in favor of
### DEP0075: `REPLServer.parseREPLKeyword()`
<!-- YAML
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/33286
description: End-of-Life.
- version: v9.0.0
@ -1560,7 +1560,7 @@ supported API.
### DEP0078: `REPLServer.turnOffEditorMode()`
<!-- YAML
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/33286
description: End-of-Life.
- version: v9.0.0
@ -1624,7 +1624,7 @@ file descriptors.
### DEP0082: `REPLServer.prototype.memory()`
<!-- YAML
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/33286
description: End-of-Life.
- version: v9.0.0
@ -2290,7 +2290,7 @@ Setting the TLS ServerName to an IP address is not permitted by
### DEP0124: using `REPLServer.rli`
<!-- YAML
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/33286
description: End-of-Life.
- version: v12.0.0
@ -2663,7 +2663,7 @@ The [`crypto.Certificate()` constructor][] is deprecated. Use
### DEP0147: `fs.rmdir(path, { recursive: true })`
<!-- YAML
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35562
description: Runtime deprecation.
- version: v14.14.0

View File

@ -418,7 +418,7 @@ will contain an array of canonical name records available for the `hostname`
## `dns.resolveCaa(hostname, callback)`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* `hostname` {string}
@ -917,7 +917,7 @@ Here is an example of the result object:
## `dnsPromises.resolveCaa(hostname)`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* `hostname` {string}

View File

@ -69,7 +69,7 @@ int main(int argc, char** argv) {
### Per-instance state
<!-- YAML
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35597
description:
The `CommonEnvironmentSetup` and `SpinEventLoop` utilities were added.

View File

@ -790,7 +790,7 @@ The selected public or private key encoding is incompatible with other options.
<a id="ERR_CRYPTO_INITIALIZATION_FAILED"></a>
### `ERR_CRYPTO_INITIALIZATION_FAILED`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
Initialization of the crypto subsystem failed.
@ -798,7 +798,7 @@ Initialization of the crypto subsystem failed.
<a id="ERR_CRYPTO_INVALID_AUTH_TAG"></a>
### `ERR_CRYPTO_INVALID_AUTH_TAG`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
An invalid authentication tag was provided.
@ -806,7 +806,7 @@ An invalid authentication tag was provided.
<a id="ERR_CRYPTO_INVALID_COUNTER"></a>
### `ERR_CRYPTO_INVALID_COUNTER`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
An invalid counter was provided for a counter-mode cipher.
@ -814,7 +814,7 @@ An invalid counter was provided for a counter-mode cipher.
<a id="ERR_CRYPTO_INVALID_CURVE"></a>
### `ERR_CRYPTO_INVALID_CURVE`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
An invalid elliptic-curve was provided.
@ -827,7 +827,7 @@ An invalid [crypto digest algorithm][] was specified.
<a id="ERR_CRYPTO_INVALID_IV"></a>
### `ERR_CRYPTO_INVALID_IV`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
An invalid initialization vector was provided.
@ -835,7 +835,7 @@ An invalid initialization vector was provided.
<a id="ERR_CRYPTO_INVALID_JWK"></a>
### `ERR_CRYPTO_INVALID_JWK`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
An invalid JSON Web Key was provided.
@ -848,7 +848,7 @@ The given crypto key object's type is invalid for the attempted operation.
<a id="ERR_CRYPTO_INVALID_KEYLEN"></a>
### `ERR_CRYPTO_INVALID_KEYLEN`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
An invalid key length was provided.
@ -856,7 +856,7 @@ An invalid key length was provided.
<a id="ERR_CRYPTO_INVALID_KEYPAIR"></a>
### `ERR_CRYPTO_INVALID_KEYPAIR`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
An invalid key pair was provided.
@ -864,7 +864,7 @@ An invalid key pair was provided.
<a id="ERR_CRYPTO_INVALID_KEYTYPE"></a>
### `ERR_CRYPTO_INVALID_KEYTYPE`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
An invalid key type was provided.
@ -872,7 +872,7 @@ An invalid key type was provided.
<a id="ERR_CRYPTO_INVALID_MESSAGELEN"></a>
### `ERR_CRYPTO_INVALID_MESSAGELEN`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
An invalid message length was provided.
@ -880,7 +880,7 @@ An invalid message length was provided.
<a id="ERR_CRYPTO_INVALID_SCRYPT_PARAMS"></a>
### `ERR_CRYPTO_INVALID_SCRYPT_PARAMS`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
Invalid scrypt algorithm parameters were provided.
@ -894,7 +894,7 @@ instance, calling [`cipher.getAuthTag()`][] before calling `cipher.final()`.
<a id="ERR_CRYPTO_INVALID_TAG_LENGTH"></a>
### `ERR_CRYPTO_INVALID_TAG_LENGTH`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
An invalid authentication tag length was provided.
@ -902,7 +902,7 @@ An invalid authentication tag length was provided.
<a id="ERR_CRYPTO_JOB_INIT_FAILED"></a>
### `ERR_CRYPTO_JOB_INIT_FAILED`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
Initialization of an asynchronous crypto operation failed.
@ -910,7 +910,7 @@ Initialization of an asynchronous crypto operation failed.
<a id="ERR_CRYPTO_OPERATION_FAILED"></a>
### `ERR_CRYPTO_OPERATION_FAILED`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
A crypto operation failed for an otherwise unspecified reason.
@ -958,7 +958,7 @@ An unknown Diffie-Hellman group name was given. See
<a id="ERR_DLOPEN_FAILED"></a>
### `ERR_DLOPEN_FAILED`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
A call to `process.dlopen()` failed.
@ -971,7 +971,7 @@ The [`fs.Dir`][] was previously closed.
<a id"ERR_CRYPTO_UNSUPPORTED_OPERATION"></a>
### `ERR_CRYPTO_UNSUPPORTED_OPERATION`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
An attempt to invoke an unsupported crypto operation was made.
@ -1508,7 +1508,7 @@ An IP address is not valid.
<a id="ERR_INVALID_MODULE"></a>
### `ERR_INVALID_MODULE`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
An attempt was made to load a module that does not exist or was otherwise not
@ -1575,7 +1575,7 @@ type on execution, such as when a function is expected to return a promise.
<a id="ERR_INVALID_STATE"></a>
### `ERR_INVALID_STATE`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
Indicates that an operation cannot be completed due to an invalid state.
@ -1763,14 +1763,14 @@ this error will not occur with standard builds of Node.js.
<a id="ERR_MISSING_TRANSFERABLE_IN_TRANSFER_LIST"></a>
### `ERR_MISSING_TRANSFERABLE_IN_TRANSFER_LIST`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
An object that needs to be explicitly listed in the `transferList` argument
is in the object passed to a [`postMessage()`][] call, but is not provided
in the `transferList` for that call. Usually, this is a `MessagePort`.
In Node.js versions prior to REPLACEME, the error code being used here was
In Node.js versions prior to v15.0.0, the error code being used here was
[`ERR_MISSING_MESSAGE_PORT_IN_TRANSFER_LIST`][]. However, the set of
transferable object types has been expanded to cover more types than
`MessagePort`.
@ -2530,7 +2530,7 @@ A given index was out of the accepted range (e.g. negative offsets).
### `ERR_INVALID_OPT_VALUE`
<!-- YAML
added: v8.0.0
removed: REPLACEME
removed: v15.0.0
-->
An invalid or unexpected value was passed in an options object.
@ -2539,7 +2539,7 @@ An invalid or unexpected value was passed in an options object.
### `ERR_INVALID_OPT_VALUE_ENCODING`
<!-- YAML
added: v9.0.0
removed: REPLACEME
removed: v15.0.0
-->
An invalid or unknown file encoding was passed.
@ -2547,11 +2547,11 @@ An invalid or unknown file encoding was passed.
<a id="ERR_MISSING_MESSAGE_PORT_IN_TRANSFER_LIST"></a>
### `ERR_MISSING_MESSAGE_PORT_IN_TRANSFER_LIST`
<!-- YAML
removed: REPLACEME
removed: v15.0.0
-->
This error code was replaced by [`ERR_MISSING_TRANSFERABLE_IN_TRANSFER_LIST`][]
in Node.js REPLACEME, because it is no longer accurate as other types of
in Node.js v15.0.0, because it is no longer accurate as other types of
transferable objects also exist now.
<a id="ERR_NAPI_CONS_PROTOTYPE_OBJECT"></a>
@ -2572,7 +2572,7 @@ A Node.js API was called in an unsupported manner, such as
<a id="ERR_OPERATION_FAILED"></a>
### `ERR_OPERATION_FAILED`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
An operation failed. This is typically used to signal the general failure
@ -2723,7 +2723,7 @@ closed.
<a id="ERR_CPU_USAGE"></a>
### `ERR_CPU_USAGE`
<!-- YAML
removed: REPLACEME
removed: v15.0.0
-->
The native call from `process.cpuUsage` could not be processed.

View File

@ -1076,7 +1076,7 @@ process.nextTick(() => ac.abort());
<!-- YAML
added: v14.5.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35496
description:
The `EventTarget` and `Event` classes are now available as globals.
@ -1198,7 +1198,7 @@ The `EventTarget` does not implement any special default handling for
<!-- YAML
added: v14.5.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35496
description: The `Event` class is now available through the global object.
-->
@ -1354,7 +1354,7 @@ The event type identifier.
<!-- YAML
added: v14.5.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/35496
description:
The `EventTarget` class is now available through the global object.

View File

@ -19,7 +19,7 @@ accessible.
## Class: `AbortController`
<!--YAML
added: REPLACEME
added: v15.0.0
-->
> Stability: 1 - Experimental
@ -42,7 +42,7 @@ console.log(ac.signal.aborted); // Prints True
### `abortController.abort()`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
Triggers the abort signal, causing the `abortController.signal` to emit
@ -50,14 +50,14 @@ the `'abort'` event.
### `abortController.signal`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {AbortSignal}
### Class: `AbortSignal`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Extends: {EventTarget}
@ -67,7 +67,7 @@ The `AbortSignal` is used to notify observers when the
#### Event: `'abort'`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
The `'abort'` event is emitted when the `abortController.abort()` method
@ -97,14 +97,14 @@ Failure to do so may result in memory leaks.
#### `abortSignal.aborted`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {boolean} True after the `AbortController` has been aborted.
#### `abortSignal.onabort`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {Function}
@ -171,7 +171,7 @@ Used to print to stdout and stderr. See the [`console`][] section.
## `Event`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
<!-- type=global -->
@ -183,7 +183,7 @@ A browser-compatible implementation of the `Event` class. See
## `EventTarget`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
<!-- type=global -->
@ -213,7 +213,7 @@ Node.js this is different. The top-level scope is not the global scope;
## `MessageChannel`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
<!-- type=global -->
@ -222,7 +222,7 @@ The `MessageChannel` class. See [`MessageChannel`][] for more details.
## `MessageEvent`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
<!-- type=global -->
@ -231,7 +231,7 @@ The `MessageEvent` class. See [`MessageEvent`][] for more details.
## `MessagePort`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
<!-- type=global -->

View File

@ -2,7 +2,7 @@
<!-- YAML
added: v8.4.0
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/34664
description: Requests with the `host` header (with or without
`:authority`) can now be sent/received.
@ -2503,7 +2503,7 @@ the given `Buffer` as generated by `http2.getPackedSettings()`.
### `http2.sensitiveHeaders`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* {symbol}

View File

@ -57,7 +57,7 @@ net.createServer().listen(
## Class: `net.BlockList`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
The `BlockList` object can be used with some network APIs to specify rules for
@ -66,7 +66,7 @@ IP subnets.
### `blockList.addAddress(address[, type])`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* `address` {string} An IPv4 or IPv6 address.
@ -76,7 +76,7 @@ Adds a rule to block the given IP address.
### `blockList.addRange(start, end[, type])`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* `start` {string} The starting IPv4 or IPv6 address in the range.
@ -88,7 +88,7 @@ Adds a rule to block a range of IP addresses from `start` (inclusive) to
### `blockList.addSubnet(net, prefix[, type])`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* `net` {string} The network IPv4 or IPv6 address.
@ -101,7 +101,7 @@ Adds a rule to block a range of IP addresses specified as a subnet mask.
### `blockList.check(address[, type])`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* `address` {string} The IP address to check
@ -128,7 +128,7 @@ console.log(blockList.check('::ffff:123.123.123.123', 'ipv6')); // Prints: true
### `blockList.rules`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string[]}
@ -1207,7 +1207,7 @@ then returns the `net.Socket` that starts the connection.
## `net.createQuicSocket([options])`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
Creates and returns a new `QuicSocket`. Please refer to the [QUIC documentation][]

View File

@ -1915,7 +1915,7 @@ Additional documentation is available in the [report documentation][].
added: v11.12.0
changes:
- version:
- REPLACEME
- v15.0.0
pr-url: https://github.com/nodejs/node/pull/35654
description: This API is no longer experimental.
-->

File diff suppressed because it is too large Load Diff

View File

@ -423,7 +423,7 @@ Is `true` after [`writable.destroy()`][writable-destroy] has been called.
<!-- YAML
added: v0.9.4
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/34101
description: The `callback` is invoked before 'finish' or on error.
- version: v14.0.0

View File

@ -246,7 +246,7 @@ will be thrown.
#### `url.origin`
<!-- YAML
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/33325
description: The scheme "gopher" is no longer special and `url.origin` now
returns `'null'` for it.
@ -316,7 +316,7 @@ to percent-encode may vary somewhat from what the [`url.parse()`][] and
#### `url.port`
<!-- YAML
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/33325
description: The scheme "gopher" is no longer special.
-->
@ -423,7 +423,7 @@ Invalid URL protocol values assigned to the `protocol` property are ignored.
##### Special schemes
<!-- YAML
changes:
- version: REPLACEME
- version: v15.0.0
pr-url: https://github.com/nodejs/node/pull/33325
description: The scheme "gopher" is no longer special.
-->

View File

@ -1,6 +1,6 @@
# Web Crypto API
<!-- introduced_in=REPLACEME -->
<!-- introduced_in=v15.0.0 -->
> Stability: 1 - Experimental
@ -310,7 +310,7 @@ implementation and the APIs supported for each:
## Class: `Crypto`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
Calling `require('crypto').webcrypto` returns an instance of the `Crypto` class.
@ -318,7 +318,7 @@ Calling `require('crypto').webcrypto` returns an instance of the `Crypto` class.
### `crypto.subtle`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {SubtleCrypto}
@ -327,7 +327,7 @@ Provides access to the `SubtleCrypto` API.
### `crypto.getRandomValues(typedArray)`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* `typedArray` {Buffer|TypedArray|DataView|ArrayBuffer}
@ -340,12 +340,12 @@ An error will be thrown if the given `typedArray` is larger than 65,536 bytes.
## Class: `CryptoKey`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
### `cryptoKey.algorithm`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
<!--lint disable maximum-line-length remark-lint-->
@ -359,7 +359,7 @@ Read-only.
### `cryptoKey.extractable`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {boolean}
@ -371,7 +371,7 @@ Read-only.
### `cryptoKey.type`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} One of `'secret'`, `'private'`, or `'public'`.
@ -381,7 +381,7 @@ asymmetric (`'private'` or `'public'`) key.
### `cryptoKey.usages`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string[]}
@ -425,7 +425,7 @@ Valid key usages depend on the key algorithm (identified by
## Class: `CryptoKeyPair`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
The `CryptoKeyPair` is a simple dictionary object with `publicKey` and
@ -433,26 +433,26 @@ The `CryptoKeyPair` is a simple dictionary object with `publicKey` and
### `cryptoKeyPair.privateKey`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {CryptoKey} A {CryptoKey} whose `type` will be `'private'`.
### `cryptoKeyPair.publicKey`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {CryptoKey} A {CryptoKey} whose `type` will be `'public'`.
## Class: `SubtleCrypto`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
### `subtle.decrypt(algorithm, key, data)`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* `algorithm`: {RsaOaepParams|AesCtrParams|AesCbcParams|AesGcmParams}
@ -474,7 +474,7 @@ The algorithms currently supported include:
### `subtle.deriveBits(algorithm, baseKey, length)`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
<!--lint disable maximum-line-length remark-lint-->
@ -502,7 +502,7 @@ The algorithms currently supported include:
### `subtle.deriveKey(algorithm, baseKey, derivedKeyAlgorithm, extractable, keyUsages)`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
<!--lint disable maximum-line-length remark-lint-->
@ -535,7 +535,7 @@ The algorithms currently supported include:
### `subtle.digest(algorithm, data)`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* `algorithm`: {string|Object}
@ -558,7 +558,7 @@ whose value is one of the above.
### `subtle.encrypt(algorithm, key, data)`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* `algorithm`: {RsaOaepParams|AesCtrParams|AesCbcParams|AesGcmParams}
@ -579,7 +579,7 @@ The algorithms currently supported include:
### `subtle.exportKey(format, key)`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* `format`: {string} Must be one of `'raw'`, `'pkcs8'`, `'spki'`, `'jwk'`, or
@ -625,7 +625,7 @@ extension that allows converting a {CryptoKey} into a Node.js {KeyObject}.
### `subtle.generateKey(algorithm, extractable, keyUsages)`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
<!--lint disable maximum-line-length remark-lint-->
@ -662,7 +662,7 @@ The {CryptoKey} (secret key) generating algorithms supported include:
### `subtle.importKey(format, keyData, algorithm, extractable, keyUsages)`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* `format`: {string} Must be one of `'raw'`, `'pkcs8'`, `'spki'`, `'jwk'`, or
@ -709,7 +709,7 @@ The algorithms currently supported include:
### `subtle.sign(algorithm, key, data)`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
<!--lint disable maximum-line-length remark-lint-->
@ -736,7 +736,7 @@ The algorithms currently supported include:
### `subtle.unwrapKey(format, wrappedKey, unwrappingKey, unwrapAlgo, unwrappedKeyAlgo, extractable, keyUsages)`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* `format`: {string} Must be one of `'raw'`, `'pkcs8'`, `'spki'`, or `'jwk'`.
@ -786,7 +786,7 @@ The unwrapped key algorithms supported include:
### `subtle.verify(algorithm, key, signature, data)`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
<!--lint disable maximum-line-length remark-lint-->
@ -814,7 +814,7 @@ The algorithms currently supported include:
### `subtle.wrapKey(format, key, wrappingKey, wrapAlgo)`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* `format`: {string} Must be one of `'raw'`, `'pkcs8'`, `'spki'`, or `'jwk'`.
@ -849,12 +849,12 @@ are simple JavaScript dictionary objects.
### Class: `AesCbcParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
#### `aesCbcParams.iv`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {ArrayBuffer|TypedArray|DataView|Buffer}
@ -864,19 +864,19 @@ and should be unpredictable and cryptographically random.
#### `aesCbcParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be `'AES-CBC'`.
### Class: `AesCtrParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
#### `aesCtrParams.counter`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {ArrayBuffer|TypedArray|DataView|Buffer}
@ -888,7 +888,7 @@ counter and the remaining bits as the nonce.
#### `aesCtrParams.length`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {number} The number of bits in the `aesCtrParams.counter` that are
@ -896,19 +896,19 @@ added: REPLACEME
#### `aesCtrParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be `'AES-CTR'`.
### Class: `AesGcmParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
#### `aesGcmParams.additionalData`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {ArrayBuffer|TypedArray|DataView|Buffer|undefined}
@ -919,7 +919,7 @@ encrypted but is included in the authentication of the data. The use of
#### `aesGcmParams.iv`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {ArrayBuffer|TypedArray|DataView|Buffer}
@ -930,14 +930,14 @@ this contain at least 12 random bytes.
#### `aesGcmParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be `'AES-GCM'`.
#### `aesGcmParams.tagLength`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {number} The size in bits of the generated authentication tag.
@ -946,12 +946,12 @@ added: REPLACEME
### Class: `AesImportParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
#### 'aesImportParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be one of `'AES-CTR'`, `'AES-CBC'`, `'AES-GCM'`, or
@ -959,12 +959,12 @@ added: REPLACEME
### Class: `AesKeyGenParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
#### `aesKeyGenParams.length`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {number}
@ -974,7 +974,7 @@ or `256`.
#### `aesKeyGenParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be one of `'AES-CBC'`, `'AES-CTR'`, `'AES-GCM'`, or
@ -982,31 +982,31 @@ added: REPLACEME
### Class: `AesKwParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
#### `aesKwParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be `'AES-KW'`.
### Class: `EcdhKeyDeriveParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
#### `ecdhKeyDeriveParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be `'ECDH'`.
#### `ecdhKeyDeriveParams.public`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {CryptoKey}
@ -1018,12 +1018,12 @@ key.
### Class: `EcdsaParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
#### `ecdsaParams.hash`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string|Object}
@ -1040,57 +1040,57 @@ whose value is one of the above listed values.
#### `ecdsaParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be `'ECDSA'`.
### Class: `EcKeyGenParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
#### `ecKeyGenParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be one of `'ECDSA'` or `'ECDH'`.
#### `ecKeyGenParams.namedCurve`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be one of `'P-256'`, `'P-384'` or `'P-521'`.
### Class: `EcKeyImportParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
#### `ecKeyImportParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be one of `'ECDSA'` or `'ECDH'`.
#### `ecKeyImportParams.namedCurve`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be one of `'P-256'`, `'P-384'` or `'P-521'`.
### Class: `HkdfParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
#### `hkdfParams.hash`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string|Object}
@ -1107,7 +1107,7 @@ whose value is one of the above listed values.
#### `hkdfParams.info`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {ArrayBuffer|TypedArray|DataView|Buffer}
@ -1117,14 +1117,14 @@ This can be zero-length but must be provided.
#### `hkdfParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be `'HKDF'`.
#### `hkdfParams.salt`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {ArrayBuffer|TypedArray|DataView|Buffer}
@ -1136,12 +1136,12 @@ digest, the salt should be 256-bits of random data).
### Class: `HmacImportParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
#### 'hmacImportParams.hash`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string|Object}
@ -1158,7 +1158,7 @@ whose value is one of the above listed values.
#### `hmacImportParams.length`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {number}
@ -1168,19 +1168,19 @@ be omitted for most cases.
#### `hmacImportParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be `'HMAC'`.
### Class: `HmacKeyGenParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
#### `hmacKeyGenParams.hash`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string|Object}
@ -1197,7 +1197,7 @@ whose value is one of the above listed values.
#### `hmacKeyGenParams.length`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {number}
@ -1208,43 +1208,43 @@ This is optional and should be omitted for most cases.
#### `hmacKeyGenParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be `'HMAC'`.
### Class: `HmacParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
#### `hmacParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be `'HMAC`.
### Class: `Pbkdf2ImportParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
#### `pbkdf2ImportParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be `'PBKDF2'`
### Class: `Pbkdf2Params`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
#### `pbkdb2Params.hash`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string|Object}
@ -1261,7 +1261,7 @@ whose value is one of the above listed values.
#### `pbkdf2Params.iterations`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {number}
@ -1270,14 +1270,14 @@ The number of iterations the PBKDF2 algorithm should make when deriving bits.
#### `pbkdf2Params.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be `'PBKDF2'`.
#### `pbkdf2Params.salt`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {ArrayBuffer|TypedArray|DataView|Buffer}
@ -1286,12 +1286,12 @@ Should be at least 16 random or pseudo-random bytes.
### Class: `RsaHashedImportParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
#### `rsaHashedImportParams.hash`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string|Object}
@ -1308,7 +1308,7 @@ whose value is one of the above listed values.
#### `rsaHashedImportParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be one of `'RSASSA-PKCS1-v1_5'`, `'RSA-PSS'`, or
@ -1316,12 +1316,12 @@ added: REPLACEME
### Class: `RsaHashedKeyGenParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
#### `rsaHashedKeyGenParams.hash`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string|Object}
@ -1338,7 +1338,7 @@ whose value is one of the above listed values.
#### `rsaHashedKeyGenParams.modulusLength`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {number}
@ -1348,7 +1348,7 @@ at least `2048`.
#### `rsaHashedKeyGenParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be one of `'RSASSA-PKCS1-v1_5'`, `'RSA-PSS'`, or
@ -1356,7 +1356,7 @@ added: REPLACEME
#### `rsaHashedKeyGenParams.publicExponent`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {Uint8Array}
@ -1369,12 +1369,12 @@ there is reason to use a different value, use `new Uint8Array([1, 0, 1])`
### Class: `RsaOaepParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
#### rsaOaepParams.label
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {ArrayBuffer|TypedArray|DataView|Buffer}
@ -1386,26 +1386,26 @@ The `rsaOaepParams.label` parameter is optional.
#### rsaOaepParams.name
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} must be `'RSA-OAEP'`.
### Class: `RsaPssParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
#### `rsaPssParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be `'RSA-PSS'`.
#### `rsaPssParams.saltLength`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {number}
@ -1414,12 +1414,12 @@ The length (in bytes) of the random salt to use.
### Class: `RsaSignParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
#### `rsaSignParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be `'RSASSA-PKCS1-v1_5'`
@ -1438,7 +1438,7 @@ of code to other environments.
### `NODE-DH` Algorithm
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
The `NODE-DH` algorithm is the common implementation of Diffie-Hellman
@ -1446,64 +1446,64 @@ key agreement.
#### Class: `NodeDhImportParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
##### `nodeDhImportParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be `'NODE-DH'`.
#### Class: NodeDhKeyGenParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
##### `nodeDhKeyGenParams.generator`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {number} A custom generator.
##### `nodeDhKeyGenParams.group`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} The Diffie-Hellman group name.
##### `nodeDhKeyGenParams.prime`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {Buffer} The prime parameter.
##### `nodeDhKeyGenParams.primeLength`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {number} The length in bits of the prime.
#### Class: NodeDhDeriveBitsParams
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
##### `nodeDhDeriveBitsParams.public`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {CryptoKey} The other parties public key.
### `NODE-DSA` Algorithm
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
The `NODE-DSA` algorithm is the common implementation of the DSA digital
@ -1511,12 +1511,12 @@ signature algorithm.
#### Class: `NodeDsaImportParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
##### `nodeDsaImportParams.hash`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string|Object}
@ -1533,19 +1533,19 @@ whose value is one of the above listed values.
##### `nodeDsaImportParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be `'NODE-DSA'`.
#### Class: `NodeDsaKeyGenParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
##### `nodeDsaKeyGenParams.divisorLength`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {number}
@ -1554,7 +1554,7 @@ The optional length in bits of the DSA divisor.
##### `nodeDsaKeyGenParams.hash`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string|Object}
@ -1571,7 +1571,7 @@ whose value is one of the above listed values.
##### `nodeDsaKeyGenParams.modulusLength`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {number}
@ -1581,26 +1581,26 @@ at least `2048`.
##### `nodeDsaKeyGenParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be `'NODE-DSA'`.
#### Class: `NodeDsaSignParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
##### `nodeDsaSignParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be `'NODE-DSA'`
### `NODE-SCRYPT` Algorithm
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
The `NODE-SCRYPT` algorithm is the common implementation of the scrypt key
@ -1608,31 +1608,31 @@ derivation algorithm.
#### Class: `NodeScryptImportParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
##### `nodeScryptImportParams.name`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} Must be `'NODE-SCRYPT'`.
#### Class: `NodeScryptParams`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
##### `nodeScryptParams.encoding`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string} The string encoding when `salt` is a string.
##### `nodeScryptParams.maxmem`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {number} Memory upper bound. It is an error when (approximately)
@ -1640,7 +1640,7 @@ added: REPLACEME
##### `nodeScryptParams.N`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {number} The CPU/memory cost parameter. Must e a power of two
@ -1648,21 +1648,21 @@ added: REPLACEME
##### `nodeScryptParams.p`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {number} Parallelization parameter. **Default** `1`.
##### `nodeScryptParams.r`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {number} Block size parameter. **Default**: `8`.
##### `nodeScryptParams.salt`
<!-- YAML
added: REPLACEME
added: v15.0.0
-->
* Type: {string|ArrayBuffer|Buffer|TypedArray|DataView}

View File

@ -64,6 +64,7 @@
</table>
* Other Versions
* [15.x](CHANGELOG_V15.md)
* [14.x](CHANGELOG_V14.md)
* [13.x](CHANGELOG_V13.md)
* [12.x](CHANGELOG_V12.md)

View File

@ -66,6 +66,7 @@
</table>
* Other Versions
* [15.x](CHANGELOG_V15.md)
* [14.x](CHANGELOG_V14.md)
* [13.x](CHANGELOG_V13.md)
* [12.x](CHANGELOG_V12.md)

View File

@ -34,6 +34,7 @@
</table>
* Other Versions
* [15.x](CHANGELOG_V15.md)
* [14.x](CHANGELOG_V14.md)
* [13.x](CHANGELOG_V13.md)
* [12.x](CHANGELOG_V12.md)

View File

@ -54,6 +54,7 @@
</table>
* Other Versions
* [15.x](CHANGELOG_V15.md)
* [14.x](CHANGELOG_V14.md)
* [13.x](CHANGELOG_V13.md)
* [12.x](CHANGELOG_V12.md)

View File

@ -32,6 +32,7 @@
</table>
* Other Versions
* [15.x](CHANGELOG_V15.md)
* [14.x](CHANGELOG_V14.md)
* [13.x](CHANGELOG_V13.md)
* [12.x](CHANGELOG_V12.md)

View File

@ -51,6 +51,7 @@
</table>
* Other Versions
* [15.x](CHANGELOG_V15.md)
* [14.x](CHANGELOG_V14.md)
* [13.x](CHANGELOG_V13.md)
* [11.x](CHANGELOG_V11.md)

View File

@ -32,6 +32,7 @@
</table>
* Other Versions
* [15.x](CHANGELOG_V15.md)
* [14.x](CHANGELOG_V14.md)
* [12.x](CHANGELOG_V12.md)
* [11.x](CHANGELOG_V11.md)

View File

@ -31,6 +31,7 @@
</table>
* Other Versions
* [15.x](CHANGELOG_V15.md)
* [13.x](CHANGELOG_V13.md)
* [12.x](CHANGELOG_V12.md)
* [11.x](CHANGELOG_V11.md)

View File

@ -0,0 +1,456 @@
# Node.js 15 ChangeLog
<!--lint disable prohibited-strings-->
<!--lint disable maximum-line-length-->
<!--lint disable no-literal-urls-->
<table>
<tr>
<th>Current</th>
</tr>
<tr>
<td>
<a href="#15.0.0">15.0.0</a><br/>
</td>
</tr>
</table>
* Other Versions
* [14.x](CHANGELOG_V14.md)
* [13.x](CHANGELOG_V13.md)
* [12.x](CHANGELOG_V12.md)
* [11.x](CHANGELOG_V11.md)
* [10.x](CHANGELOG_V10.md)
* [9.x](CHANGELOG_V9.md)
* [8.x](CHANGELOG_V8.md)
* [7.x](CHANGELOG_V7.md)
* [6.x](CHANGELOG_V6.md)
* [5.x](CHANGELOG_V5.md)
* [4.x](CHANGELOG_V4.md)
* [0.12.x](CHANGELOG_V012.md)
* [0.10.x](CHANGELOG_V010.md)
* [io.js](CHANGELOG_IOJS.md)
* [Archive](CHANGELOG_ARCHIVE.md)
<a id="15.0.0"></a>
## 2020-10-20, Version 15.0.0 (Current), @BethGriggs
### Notable Changes
#### Deprecations and Removals
* [[`a11788736a`](https://github.com/nodejs/node/commit/a11788736a)] - **(SEMVER-MAJOR)** **build**: remove --build-v8-with-gn configure option (Yang Guo) [#27576](https://github.com/nodejs/node/pull/27576)
* [[`89428c7a2d`](https://github.com/nodejs/node/commit/89428c7a2d)] - **(SEMVER-MAJOR)** **build**: drop support for VS2017 (Michaël Zasso) [#33694](https://github.com/nodejs/node/pull/33694)
* [[`c25cf34ac1`](https://github.com/nodejs/node/commit/c25cf34ac1)] - **(SEMVER-MAJOR)** **doc**: move DEP0018 to End-of-Life (Rich Trott) [#35316](https://github.com/nodejs/node/pull/35316)
* [[`2002d90abd`](https://github.com/nodejs/node/commit/2002d90abd)] - **(SEMVER-MAJOR)** **fs**: deprecation warning on recursive rmdir (Ian Sutherland) [#35562](https://github.com/nodejs/node/pull/35562)
* [[`eee522ac29`](https://github.com/nodejs/node/commit/eee522ac29)] - **(SEMVER-MAJOR)** **lib**: add EventTarget-related browser globals (Anna Henningsen) [#35496](https://github.com/nodejs/node/pull/35496)
* [[`41796ebd30`](https://github.com/nodejs/node/commit/41796ebd30)] - **(SEMVER-MAJOR)** **net**: remove long deprecated server.connections property (James M Snell) [#33647](https://github.com/nodejs/node/pull/33647)
* [[`a416692e93`](https://github.com/nodejs/node/commit/a416692e93)] - **(SEMVER-MAJOR)** **repl**: remove deprecated repl.memory function (Ruben Bridgewater) [#33286](https://github.com/nodejs/node/pull/33286)
* [[`f217b2dfb0`](https://github.com/nodejs/node/commit/f217b2dfb0)] - **(SEMVER-MAJOR)** **repl**: remove deprecated repl.turnOffEditorMode() function (Ruben Bridgewater) [#33286](https://github.com/nodejs/node/pull/33286)
* [[`a1bcad8dc0`](https://github.com/nodejs/node/commit/a1bcad8dc0)] - **(SEMVER-MAJOR)** **repl**: remove deprecated repl.parseREPLKeyword() function (Ruben Bridgewater) [#33286](https://github.com/nodejs/node/pull/33286)
* [[`4ace010b53`](https://github.com/nodejs/node/commit/4ace010b53)] - **(SEMVER-MAJOR)** **repl**: remove deprecated bufferedCommand property (Ruben Bridgewater) [#33286](https://github.com/nodejs/node/pull/33286)
* [[`37524307fe`](https://github.com/nodejs/node/commit/37524307fe)] - **(SEMVER-MAJOR)** **repl**: remove deprecated .rli (Ruben Bridgewater) [#33286](https://github.com/nodejs/node/pull/33286)
* [[`a85ce885bd`](https://github.com/nodejs/node/commit/a85ce885bd)] - **(SEMVER-MAJOR)** **src**: remove deprecated node debug command (James M Snell) [#33648](https://github.com/nodejs/node/pull/33648)
* [[`a8904e8eee`](https://github.com/nodejs/node/commit/a8904e8eee)] - **(SEMVER-MAJOR)** **timers**: introduce timers/promises (James M Snell) [#33950](https://github.com/nodejs/node/pull/33950)
* [[`1211b9a72f`](https://github.com/nodejs/node/commit/1211b9a72f)] - **(SEMVER-MAJOR)** **util**: change default value of `maxStringLength` to 10000 (unknown) [#32744](https://github.com/nodejs/node/pull/32744)
* [[`ca8f3ef2e5`](https://github.com/nodejs/node/commit/ca8f3ef2e5)] - **(SEMVER-MAJOR)** **wasi**: drop --experimental-wasm-bigint requirement (Colin Ihrig) [#35415](https://github.com/nodejs/node/pull/35415)
#### npm 7 - [#35631](https://github.com/nodejs/node/pull/35631)
Node.js 15 comes with a new major release of npm, npm 7. npm 7 comes with many new features - including npm workspaces and a new package-lock.json format. npm 7 also includes yarn.lock file support. One of the big changes in npm 7 is that peer dependencies are now installed by default.
#### Throw On Unhandled Rejections - [#33021](https://github.com/nodejs/node/pull/33021)
As of Node.js 15, the default mode for `unhandledRejection` is changed to `throw` (from `warn`). In `throw` mode, if an `unhandledRejection` hook is not set, the `unhandledRejection` is raised as an uncaught exception. Users that have an `unhandledRejection` hook should see no change in behavior, and its still possible to switch modes using the `--unhandled-rejections=mode` process flag.
#### QUIC - [#32379](https://github.com/nodejs/node/pull/32379)
Node.js 15 comes with experimental support QUIC, which can be enabled by compiling Node.js with the `--experimental-quic` configuration flag. The Node.js QUIC implementation is exposed by the core `net` module.
#### V8 8.6 - [#35415](https://github.com/nodejs/node/pull/35415)
The V8 JavaScript engine has been updated to V8 8.6 (V8 8.4 is the latest available in Node.js 14). Along with performance tweaks and improvements the V8 update also brings the following language features:
* `Promise.any()` (from V8 8.5)
* `AggregateError` (from V8 8.5)
* `String.prototype.replaceAll()` (from V8 8.5)
* Logical assignment operators `&&=`, `||=`, and `??=` (from V8 8.5)
#### Other Notable Changes
* [[`50228cf6ff`](https://github.com/nodejs/node/commit/50228cf6ff)] - **(SEMVER-MAJOR)** **assert**: add `assert/strict` alias module (ExE Boss) [#34001](https://github.com/nodejs/node/pull/34001)
* [[`039cd00a9a`](https://github.com/nodejs/node/commit/039cd00a9a)] - **(SEMVER-MAJOR)** **dns**: add dns/promises alias (shisama) [#32953](https://github.com/nodejs/node/pull/32953)
* [[`54b36e401d`](https://github.com/nodejs/node/commit/54b36e401d)] - **(SEMVER-MAJOR)** **fs**: reimplement read and write streams using stream.construct (Robert Nagy) [#29656](https://github.com/nodejs/node/pull/29656)
* [[`f5c0e282cc`](https://github.com/nodejs/node/commit/f5c0e282cc)] - **(SEMVER-MAJOR)** **http2**: allow Host in HTTP/2 requests (Alba Mendez) [#34664](https://github.com/nodejs/node/pull/34664)
* [[`eee522ac29`](https://github.com/nodejs/node/commit/eee522ac29)] - **(SEMVER-MAJOR)** **lib**: add EventTarget-related browser globals (Anna Henningsen) [#35496](https://github.com/nodejs/node/pull/35496)
* [[`a8b26d72c5`](https://github.com/nodejs/node/commit/a8b26d72c5)] - **(SEMVER-MAJOR)** **lib**: unflag AbortController (James M Snell) [#33527](https://github.com/nodejs/node/pull/33527)
* [[`74ca960aac`](https://github.com/nodejs/node/commit/74ca960aac)] - **(SEMVER-MAJOR)** **lib**: initial experimental AbortController implementation (James M Snell) [#33527](https://github.com/nodejs/node/pull/33527)
* [[`efefdd668d`](https://github.com/nodejs/node/commit/efefdd668d)] - **(SEMVER-MAJOR)** **net**: autoDestroy Socket (Robert Nagy) [#31806](https://github.com/nodejs/node/pull/31806)
* [[`0fb91acedf`](https://github.com/nodejs/node/commit/0fb91acedf)] - **(SEMVER-MAJOR)** **src**: disallow JS execution inside FreeEnvironment (Anna Henningsen) [#33874](https://github.com/nodejs/node/pull/33874)
* [[`21782277c2`](https://github.com/nodejs/node/commit/21782277c2)] - **(SEMVER-MAJOR)** **src**: use node:moduleName as builtin module filename (Michaël Zasso) [#35498](https://github.com/nodejs/node/pull/35498)
* [[`fb8cc72e73`](https://github.com/nodejs/node/commit/fb8cc72e73)] - **(SEMVER-MAJOR)** **stream**: construct (Robert Nagy) [#29656](https://github.com/nodejs/node/pull/29656)
* [[`705d888387`](https://github.com/nodejs/node/commit/705d888387)] - **(SEMVER-MAJOR)** **worker**: make MessageEvent class more Web-compatible (Anna Henningsen) [#35496](https://github.com/nodejs/node/pull/35496)
### Semver-Major Commits
* [[`50228cf6ff`](https://github.com/nodejs/node/commit/50228cf6ff)] - **(SEMVER-MAJOR)** **assert**: add `assert/strict` alias module (ExE Boss) [#34001](https://github.com/nodejs/node/pull/34001)
* [[`d701247165`](https://github.com/nodejs/node/commit/d701247165)] - **(SEMVER-MAJOR)** **build**: reset embedder string to "-node.0" (Michaël Zasso) [#35415](https://github.com/nodejs/node/pull/35415)
* [[`a11788736a`](https://github.com/nodejs/node/commit/a11788736a)] - **(SEMVER-MAJOR)** **build**: remove --build-v8-with-gn configure option (Yang Guo) [#27576](https://github.com/nodejs/node/pull/27576)
* [[`89428c7a2d`](https://github.com/nodejs/node/commit/89428c7a2d)] - **(SEMVER-MAJOR)** **build**: drop support for VS2017 (Michaël Zasso) [#33694](https://github.com/nodejs/node/pull/33694)
* [[`dae283d96f`](https://github.com/nodejs/node/commit/dae283d96f)] - **(SEMVER-MAJOR)** **crypto**: refactoring internals, add WebCrypto (James M Snell) [#35093](https://github.com/nodejs/node/pull/35093)
* [[`ba77dc8597`](https://github.com/nodejs/node/commit/ba77dc8597)] - **(SEMVER-MAJOR)** **crypto**: move node\_crypto files to src/crypto (James M Snell) [#35093](https://github.com/nodejs/node/pull/35093)
* [[`9378070da0`](https://github.com/nodejs/node/commit/9378070da0)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick d76abfed3512 (Michaël Zasso) [#35415](https://github.com/nodejs/node/pull/35415)
* [[`efee8341ad`](https://github.com/nodejs/node/commit/efee8341ad)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 717543bbf0ef (Michaël Zasso) [#35415](https://github.com/nodejs/node/pull/35415)
* [[`b006fa8730`](https://github.com/nodejs/node/commit/b006fa8730)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 6be2f6e26e8d (Michaël Zasso) [#35415](https://github.com/nodejs/node/pull/35415)
* [[`3c23af4cb7`](https://github.com/nodejs/node/commit/3c23af4cb7)] - **(SEMVER-MAJOR)** **deps**: fix V8 build issue with inline methods (Jiawen Geng) [#35415](https://github.com/nodejs/node/pull/35415)
* [[`b803b3f48b`](https://github.com/nodejs/node/commit/b803b3f48b)] - **(SEMVER-MAJOR)** **deps**: fix platform-embedded-file-writer-win for ARM64 (Michaël Zasso) [#35415](https://github.com/nodejs/node/pull/35415)
* [[`47cb9f14e8`](https://github.com/nodejs/node/commit/47cb9f14e8)] - **(SEMVER-MAJOR)** **deps**: update V8 postmortem metadata script (Colin Ihrig) [#35415](https://github.com/nodejs/node/pull/35415)
* [[`a1d639ba5d`](https://github.com/nodejs/node/commit/a1d639ba5d)] - **(SEMVER-MAJOR)** **deps**: update V8 to 8.6.395 (Michaël Zasso) [#35415](https://github.com/nodejs/node/pull/35415)
* [[`3ddcad55fb`](https://github.com/nodejs/node/commit/3ddcad55fb)] - **(SEMVER-MAJOR)** **deps**: upgrade npm to 7.0.0 (Myles Borins) [#35631](https://github.com/nodejs/node/pull/35631)
* [[`2e54524955`](https://github.com/nodejs/node/commit/2e54524955)] - **(SEMVER-MAJOR)** **deps**: update npm to 7.0.0-rc.3 (Myles Borins) [#35474](https://github.com/nodejs/node/pull/35474)
* [[`e983b1cece`](https://github.com/nodejs/node/commit/e983b1cece)] - **(SEMVER-MAJOR)** **deps**: V8: cherry-pick 0d6debcc5f08 (Gus Caplan) [#33600](https://github.com/nodejs/node/pull/33600)
* [[`039cd00a9a`](https://github.com/nodejs/node/commit/039cd00a9a)] - **(SEMVER-MAJOR)** **dns**: add dns/promises alias (shisama) [#32953](https://github.com/nodejs/node/pull/32953)
* [[`c25cf34ac1`](https://github.com/nodejs/node/commit/c25cf34ac1)] - **(SEMVER-MAJOR)** **doc**: move DEP0018 to End-of-Life (Rich Trott) [#35316](https://github.com/nodejs/node/pull/35316)
* [[`8bf37ee496`](https://github.com/nodejs/node/commit/8bf37ee496)] - **(SEMVER-MAJOR)** **doc**: update support macos version for 15.x (Ash Cripps) [#35022](https://github.com/nodejs/node/pull/35022)
* [[`2002d90abd`](https://github.com/nodejs/node/commit/2002d90abd)] - **(SEMVER-MAJOR)** **fs**: deprecation warning on recursive rmdir (Ian Sutherland) [#35562](https://github.com/nodejs/node/pull/35562)
* [[`54b36e401d`](https://github.com/nodejs/node/commit/54b36e401d)] - **(SEMVER-MAJOR)** **fs**: reimplement read and write streams using stream.construct (Robert Nagy) [#29656](https://github.com/nodejs/node/pull/29656)
* [[`32b641e528`](https://github.com/nodejs/node/commit/32b641e528)] - **(SEMVER-MAJOR)** **http**: fixed socket.setEncoding fatal error (iskore) [#33405](https://github.com/nodejs/node/pull/33405)
* [[`8a6fab02ad`](https://github.com/nodejs/node/commit/8a6fab02ad)] - **(SEMVER-MAJOR)** **http**: emit 'error' on aborted server request (Robert Nagy) [#33172](https://github.com/nodejs/node/pull/33172)
* [[`d005f490a8`](https://github.com/nodejs/node/commit/d005f490a8)] - **(SEMVER-MAJOR)** **http**: cleanup end argument handling (Robert Nagy) [#31818](https://github.com/nodejs/node/pull/31818)
* [[`f5c0e282cc`](https://github.com/nodejs/node/commit/f5c0e282cc)] - **(SEMVER-MAJOR)** **http2**: allow Host in HTTP/2 requests (Alba Mendez) [#34664](https://github.com/nodejs/node/pull/34664)
* [[`1e4187fcf4`](https://github.com/nodejs/node/commit/1e4187fcf4)] - **(SEMVER-MAJOR)** **http2**: add `invalidheaders` test (Pranshu Srivastava) [#33161](https://github.com/nodejs/node/pull/33161)
* [[`d79c330186`](https://github.com/nodejs/node/commit/d79c330186)] - **(SEMVER-MAJOR)** **http2**: refactor state code validation for the http2Stream class (rickyes) [#33535](https://github.com/nodejs/node/pull/33535)
* [[`df31f71f1e`](https://github.com/nodejs/node/commit/df31f71f1e)] - **(SEMVER-MAJOR)** **http2**: header field valid checks (Pranshu Srivastava) [#33193](https://github.com/nodejs/node/pull/33193)
* [[`1428db8a1f`](https://github.com/nodejs/node/commit/1428db8a1f)] - **(SEMVER-MAJOR)** **lib**: refactor Socket.\_getpeername and Socket.\_getsockname (himself65) [#32969](https://github.com/nodejs/node/pull/32969)
* [[`eee522ac29`](https://github.com/nodejs/node/commit/eee522ac29)] - **(SEMVER-MAJOR)** **lib**: add EventTarget-related browser globals (Anna Henningsen) [#35496](https://github.com/nodejs/node/pull/35496)
* [[`c66e6471e7`](https://github.com/nodejs/node/commit/c66e6471e7)] - **(SEMVER-MAJOR)** **lib**: remove ERR\_INVALID\_OPT\_VALUE and ERR\_INVALID\_OPT\_VALUE\_ENCODING (Denys Otrishko) [#34682](https://github.com/nodejs/node/pull/34682)
* [[`b546a2b469`](https://github.com/nodejs/node/commit/b546a2b469)] - **(SEMVER-MAJOR)** **lib**: handle one of args case in ERR\_MISSING\_ARGS (Denys Otrishko) [#34022](https://github.com/nodejs/node/pull/34022)
* [[`a86a295fd7`](https://github.com/nodejs/node/commit/a86a295fd7)] - **(SEMVER-MAJOR)** **lib**: remove NodeError from the prototype of errors with code (Michaël Zasso) [#33857](https://github.com/nodejs/node/pull/33857)
* [[`a8b26d72c5`](https://github.com/nodejs/node/commit/a8b26d72c5)] - **(SEMVER-MAJOR)** **lib**: unflag AbortController (James M Snell) [#33527](https://github.com/nodejs/node/pull/33527)
* [[`74ca960aac`](https://github.com/nodejs/node/commit/74ca960aac)] - **(SEMVER-MAJOR)** **lib**: initial experimental AbortController implementation (James M Snell) [#33527](https://github.com/nodejs/node/pull/33527)
* [[`78ca61e2cf`](https://github.com/nodejs/node/commit/78ca61e2cf)] - **(SEMVER-MAJOR)** **net**: check args in net.connect() and socket.connect() calls (Denys Otrishko) [#34022](https://github.com/nodejs/node/pull/34022)
* [[`41796ebd30`](https://github.com/nodejs/node/commit/41796ebd30)] - **(SEMVER-MAJOR)** **net**: remove long deprecated server.connections property (James M Snell) [#33647](https://github.com/nodejs/node/pull/33647)
* [[`efefdd668d`](https://github.com/nodejs/node/commit/efefdd668d)] - **(SEMVER-MAJOR)** **net**: autoDestroy Socket (Robert Nagy) [#31806](https://github.com/nodejs/node/pull/31806)
* [[`6cfba9f7f6`](https://github.com/nodejs/node/commit/6cfba9f7f6)] - **(SEMVER-MAJOR)** **process**: update v8 fast api calls usage (Maya Lekova) [#35415](https://github.com/nodejs/node/pull/35415)
* [[`3b10f7f933`](https://github.com/nodejs/node/commit/3b10f7f933)] - **(SEMVER-MAJOR)** **process**: change default --unhandled-rejections=throw (Dan Fabulich) [#33021](https://github.com/nodejs/node/pull/33021)
* [[`d8eef83757`](https://github.com/nodejs/node/commit/d8eef83757)] - **(SEMVER-MAJOR)** **process**: use v8 fast api calls for hrtime (Gus Caplan) [#33600](https://github.com/nodejs/node/pull/33600)
* [[`49745cdef0`](https://github.com/nodejs/node/commit/49745cdef0)] - **(SEMVER-MAJOR)** **process**: delay throwing an error using `throwDeprecation` (Ruben Bridgewater) [#32312](https://github.com/nodejs/node/pull/32312)
* [[`a416692e93`](https://github.com/nodejs/node/commit/a416692e93)] - **(SEMVER-MAJOR)** **repl**: remove deprecated repl.memory function (Ruben Bridgewater) [#33286](https://github.com/nodejs/node/pull/33286)
* [[`f217b2dfb0`](https://github.com/nodejs/node/commit/f217b2dfb0)] - **(SEMVER-MAJOR)** **repl**: remove deprecated repl.turnOffEditorMode() function (Ruben Bridgewater) [#33286](https://github.com/nodejs/node/pull/33286)
* [[`a1bcad8dc0`](https://github.com/nodejs/node/commit/a1bcad8dc0)] - **(SEMVER-MAJOR)** **repl**: remove deprecated repl.parseREPLKeyword() function (Ruben Bridgewater) [#33286](https://github.com/nodejs/node/pull/33286)
* [[`4ace010b53`](https://github.com/nodejs/node/commit/4ace010b53)] - **(SEMVER-MAJOR)** **repl**: remove deprecated bufferedCommand property (Ruben Bridgewater) [#33286](https://github.com/nodejs/node/pull/33286)
* [[`37524307fe`](https://github.com/nodejs/node/commit/37524307fe)] - **(SEMVER-MAJOR)** **repl**: remove deprecated .rli (Ruben Bridgewater) [#33286](https://github.com/nodejs/node/pull/33286)
* [[`b65e5aeaa7`](https://github.com/nodejs/node/commit/b65e5aeaa7)] - **(SEMVER-MAJOR)** **src**: implement NodePlatform::PostJob (Clemens Backes) [#35415](https://github.com/nodejs/node/pull/35415)
* [[`b1e8e0e604`](https://github.com/nodejs/node/commit/b1e8e0e604)] - **(SEMVER-MAJOR)** **src**: update NODE\_MODULE\_VERSION to 88 (Michaël Zasso) [#35415](https://github.com/nodejs/node/pull/35415)
* [[`eeb6b473fd`](https://github.com/nodejs/node/commit/eeb6b473fd)] - **(SEMVER-MAJOR)** **src**: error reporting on CPUUsage (Yash Ladha) [#34762](https://github.com/nodejs/node/pull/34762)
* [[`21782277c2`](https://github.com/nodejs/node/commit/21782277c2)] - **(SEMVER-MAJOR)** **src**: use node:moduleName as builtin module filename (Michaël Zasso) [#35498](https://github.com/nodejs/node/pull/35498)
* [[`05771279af`](https://github.com/nodejs/node/commit/05771279af)] - **(SEMVER-MAJOR)** **src**: enable wasm trap handler on windows (Gus Caplan) [#35033](https://github.com/nodejs/node/pull/35033)
* [[`b7cf823410`](https://github.com/nodejs/node/commit/b7cf823410)] - **(SEMVER-MAJOR)** **src**: update NODE\_MODULE\_VERSION to 86 (Michaël Zasso) [#33579](https://github.com/nodejs/node/pull/33579)
* [[`0fb91acedf`](https://github.com/nodejs/node/commit/0fb91acedf)] - **(SEMVER-MAJOR)** **src**: disallow JS execution inside FreeEnvironment (Anna Henningsen) [#33874](https://github.com/nodejs/node/pull/33874)
* [[`53fb2b6b41`](https://github.com/nodejs/node/commit/53fb2b6b41)] - **(SEMVER-MAJOR)** **src**: remove \_third\_party\_main support (Anna Henningsen) [#33971](https://github.com/nodejs/node/pull/33971)
* [[`a85ce885bd`](https://github.com/nodejs/node/commit/a85ce885bd)] - **(SEMVER-MAJOR)** **src**: remove deprecated node debug command (James M Snell) [#33648](https://github.com/nodejs/node/pull/33648)
* [[`ac3714637e`](https://github.com/nodejs/node/commit/ac3714637e)] - **(SEMVER-MAJOR)** **src**: remove unused CancelPendingDelayedTasks (Anna Henningsen) [#32859](https://github.com/nodejs/node/pull/32859)
* [[`a65218f5e8`](https://github.com/nodejs/node/commit/a65218f5e8)] - **(SEMVER-MAJOR)** **stream**: try to wait for flush to complete before 'finish' (Robert Nagy) [#34314](https://github.com/nodejs/node/pull/34314)
* [[`4e3f6f355b`](https://github.com/nodejs/node/commit/4e3f6f355b)] - **(SEMVER-MAJOR)** **stream**: cleanup and fix Readable.wrap (Robert Nagy) [#34204](https://github.com/nodejs/node/pull/34204)
* [[`527e2147af`](https://github.com/nodejs/node/commit/527e2147af)] - **(SEMVER-MAJOR)** **stream**: add promises version to utility functions (rickyes) [#33991](https://github.com/nodejs/node/pull/33991)
* [[`c7e55c6b72`](https://github.com/nodejs/node/commit/c7e55c6b72)] - **(SEMVER-MAJOR)** **stream**: fix writable.end callback behavior (Robert Nagy) [#34101](https://github.com/nodejs/node/pull/34101)
* [[`fb8cc72e73`](https://github.com/nodejs/node/commit/fb8cc72e73)] - **(SEMVER-MAJOR)** **stream**: construct (Robert Nagy) [#29656](https://github.com/nodejs/node/pull/29656)
* [[`4bc7025309`](https://github.com/nodejs/node/commit/4bc7025309)] - **(SEMVER-MAJOR)** **stream**: write should throw on unknown encoding (Robert Nagy) [#33075](https://github.com/nodejs/node/pull/33075)
* [[`ea87809bb6`](https://github.com/nodejs/node/commit/ea87809bb6)] - **(SEMVER-MAJOR)** **stream**: fix \_final and 'prefinish' timing (Robert Nagy) [#32780](https://github.com/nodejs/node/pull/32780)
* [[`0bd5595509`](https://github.com/nodejs/node/commit/0bd5595509)] - **(SEMVER-MAJOR)** **stream**: simplify Transform stream implementation (Robert Nagy) [#32763](https://github.com/nodejs/node/pull/32763)
* [[`8f86986985`](https://github.com/nodejs/node/commit/8f86986985)] - **(SEMVER-MAJOR)** **stream**: use callback to properly propagate error (Robert Nagy) [#29179](https://github.com/nodejs/node/pull/29179)
* [[`94dd7b9f94`](https://github.com/nodejs/node/commit/94dd7b9f94)] - **(SEMVER-MAJOR)** **test**: update tests after increasing typed array size to 4GB (Kim-Anh Tran) [#35415](https://github.com/nodejs/node/pull/35415)
* [[`d9e98df01b`](https://github.com/nodejs/node/commit/d9e98df01b)] - **(SEMVER-MAJOR)** **test**: fix tests for npm 7.0.0 (Myles Borins) [#35631](https://github.com/nodejs/node/pull/35631)
* [[`c87641aa97`](https://github.com/nodejs/node/commit/c87641aa97)] - **(SEMVER-MAJOR)** **test**: fix test suite to work with npm 7 (Myles Borins) [#35474](https://github.com/nodejs/node/pull/35474)
* [[`eb9d7a437e`](https://github.com/nodejs/node/commit/eb9d7a437e)] - **(SEMVER-MAJOR)** **test**: update WPT harness and tests (Michaël Zasso) [#33770](https://github.com/nodejs/node/pull/33770)
* [[`a8904e8eee`](https://github.com/nodejs/node/commit/a8904e8eee)] - **(SEMVER-MAJOR)** **timers**: introduce timers/promises (James M Snell) [#33950](https://github.com/nodejs/node/pull/33950)
* [[`c55f661551`](https://github.com/nodejs/node/commit/c55f661551)] - **(SEMVER-MAJOR)** **tools**: disable x86 safe exception handlers in V8 (Michaël Zasso) [#35415](https://github.com/nodejs/node/pull/35415)
* [[`80e8aec4a5`](https://github.com/nodejs/node/commit/80e8aec4a5)] - **(SEMVER-MAJOR)** **tools**: update V8 gypfiles for 8.6 (Ujjwal Sharma) [#35415](https://github.com/nodejs/node/pull/35415)
* [[`faeb9607c6`](https://github.com/nodejs/node/commit/faeb9607c6)] - **(SEMVER-MAJOR)** **tools**: update V8 gypfiles for 8.5 (Ujjwal Sharma) [#35415](https://github.com/nodejs/node/pull/35415)
* [[`bb62f4ad9e`](https://github.com/nodejs/node/commit/bb62f4ad9e)] - **(SEMVER-MAJOR)** **url**: file URL path normalization (Daijiro Wachi) [#35477](https://github.com/nodejs/node/pull/35477)
* [[`69ef4c2375`](https://github.com/nodejs/node/commit/69ef4c2375)] - **(SEMVER-MAJOR)** **url**: verify domain is not empty after "ToASCII" (Michaël Zasso) [#33770](https://github.com/nodejs/node/pull/33770)
* [[`4831278a16`](https://github.com/nodejs/node/commit/4831278a16)] - **(SEMVER-MAJOR)** **url**: remove U+0000 case in the fragment state (Michaël Zasso) [#33770](https://github.com/nodejs/node/pull/33770)
* [[`0d08d5ae7c`](https://github.com/nodejs/node/commit/0d08d5ae7c)] - **(SEMVER-MAJOR)** **url**: remove gopher from special schemes (Michaël Zasso) [#33325](https://github.com/nodejs/node/pull/33325)
* [[`9be51ee9a1`](https://github.com/nodejs/node/commit/9be51ee9a1)] - **(SEMVER-MAJOR)** **url**: forbid lt and gt in url host code point (Yash Ladha) [#33328](https://github.com/nodejs/node/pull/33328)
* [[`1211b9a72f`](https://github.com/nodejs/node/commit/1211b9a72f)] - **(SEMVER-MAJOR)** **util**: change default value of `maxStringLength` to 10000 (unknown) [#32744](https://github.com/nodejs/node/pull/32744)
* [[`ca8f3ef2e5`](https://github.com/nodejs/node/commit/ca8f3ef2e5)] - **(SEMVER-MAJOR)** **wasi**: drop --experimental-wasm-bigint requirement (Colin Ihrig) [#35415](https://github.com/nodejs/node/pull/35415)
* [[`abd8cdfc4e`](https://github.com/nodejs/node/commit/abd8cdfc4e)] - **(SEMVER-MAJOR)** **win, child_process**: sanitize env variables (Bartosz Sosnowski) [#35210](https://github.com/nodejs/node/pull/35210)
* [[`705d888387`](https://github.com/nodejs/node/commit/705d888387)] - **(SEMVER-MAJOR)** **worker**: make MessageEvent class more Web-compatible (Anna Henningsen) [#35496](https://github.com/nodejs/node/pull/35496)
* [[`7603c7e50c`](https://github.com/nodejs/node/commit/7603c7e50c)] - **(SEMVER-MAJOR)** **worker**: set trackUnmanagedFds to true by default (Anna Henningsen) [#34394](https://github.com/nodejs/node/pull/34394)
* [[`5ef5116311`](https://github.com/nodejs/node/commit/5ef5116311)] - **(SEMVER-MAJOR)** **worker**: rename error code to be more accurate (Anna Henningsen) [#33872](https://github.com/nodejs/node/pull/33872)
### Semver-Minor Commits
* [[`1d5fa88eb8`](https://github.com/nodejs/node/commit/1d5fa88eb8)] - **(SEMVER-MINOR)** **cli**: add --node-memory-debug option (Anna Henningsen) [#35537](https://github.com/nodejs/node/pull/35537)
* [[`095be6a01f`](https://github.com/nodejs/node/commit/095be6a01f)] - **(SEMVER-MINOR)** **crypto**: add getCipherInfo method (James M Snell) [#35368](https://github.com/nodejs/node/pull/35368)
* [[`df1023bb22`](https://github.com/nodejs/node/commit/df1023bb22)] - **(SEMVER-MINOR)** **events**: allow use of AbortController with on (James M Snell) [#34912](https://github.com/nodejs/node/pull/34912)
* [[`883fc779b6`](https://github.com/nodejs/node/commit/883fc779b6)] - **(SEMVER-MINOR)** **events**: allow use of AbortController with once (James M Snell) [#34911](https://github.com/nodejs/node/pull/34911)
* [[`e876c0c308`](https://github.com/nodejs/node/commit/e876c0c308)] - **(SEMVER-MINOR)** **http2**: add support for sensitive headers (Anna Henningsen) [#34145](https://github.com/nodejs/node/pull/34145)
* [[`6f34498148`](https://github.com/nodejs/node/commit/6f34498148)] - **(SEMVER-MINOR)** **net**: add support for resolving DNS CAA records (Danny Sonnenschein) [#35466](https://github.com/nodejs/node/pull/35466)
* [[`37a8179673`](https://github.com/nodejs/node/commit/37a8179673)] - **(SEMVER-MINOR)** **net**: make blocklist family case insensitive (James M Snell) [#34864](https://github.com/nodejs/node/pull/34864)
* [[`1f9b20b637`](https://github.com/nodejs/node/commit/1f9b20b637)] - **(SEMVER-MINOR)** **net**: introduce net.BlockList (James M Snell) [#34625](https://github.com/nodejs/node/pull/34625)
* [[`278d38f4cf`](https://github.com/nodejs/node/commit/278d38f4cf)] - **(SEMVER-MINOR)** **src**: add maybe versions of EmitExit and EmitBeforeExit (Anna Henningsen) [#35486](https://github.com/nodejs/node/pull/35486)
* [[`2310f679a1`](https://github.com/nodejs/node/commit/2310f679a1)] - **(SEMVER-MINOR)** **src**: move node\_binding to modern THROW\_ERR\* (James M Snell) [#35469](https://github.com/nodejs/node/pull/35469)
* [[`744a284ccc`](https://github.com/nodejs/node/commit/744a284ccc)] - **(SEMVER-MINOR)** **stream**: support async for stream impl functions (James M Snell) [#34416](https://github.com/nodejs/node/pull/34416)
* [[`bfbdc84738`](https://github.com/nodejs/node/commit/bfbdc84738)] - **(SEMVER-MINOR)** **timers**: allow promisified timeouts/immediates to be canceled (James M Snell) [#33833](https://github.com/nodejs/node/pull/33833)
* [[`a8971f87d3`](https://github.com/nodejs/node/commit/a8971f87d3)] - **(SEMVER-MINOR)** **url**: support non-special URLs (Daijiro Wachi) [#34925](https://github.com/nodejs/node/pull/34925)
### Semver-Patch Commits
* [[`d10c59fc60`](https://github.com/nodejs/node/commit/d10c59fc60)] - **benchmark,test**: remove output from readable-async-iterator benchmark (Rich Trott) [#34411](https://github.com/nodejs/node/pull/34411)
* [[`8a12e9994f`](https://github.com/nodejs/node/commit/8a12e9994f)] - **bootstrap**: use file URL instead of relative url (Daijiro Wachi) [#35622](https://github.com/nodejs/node/pull/35622)
* [[`f8bde7ce06`](https://github.com/nodejs/node/commit/f8bde7ce06)] - **bootstrap**: build fast APIs in pre-execution (Joyee Cheung) [#32984](https://github.com/nodejs/node/pull/32984)
* [[`b18651bcd2`](https://github.com/nodejs/node/commit/b18651bcd2)] - **build**: do not pass mode option to test-v8 command (Michaël Zasso) [#35705](https://github.com/nodejs/node/pull/35705)
* [[`bb2945ed6b`](https://github.com/nodejs/node/commit/bb2945ed6b)] - **build**: add GitHub Action for code coverage (Benjamin Coe) [#35653](https://github.com/nodejs/node/pull/35653)
* [[`cfbbeea4a1`](https://github.com/nodejs/node/commit/cfbbeea4a1)] - **build**: use GITHUB\_ENV file to set env variables (Michaël Zasso) [#35638](https://github.com/nodejs/node/pull/35638)
* [[`8a93b371a3`](https://github.com/nodejs/node/commit/8a93b371a3)] - **build**: do not install jq in workflows (Michaël Zasso) [#35638](https://github.com/nodejs/node/pull/35638)
* [[`ccbd1d5efa`](https://github.com/nodejs/node/commit/ccbd1d5efa)] - **build**: add quic to github action (gengjiawen) [#34336](https://github.com/nodejs/node/pull/34336)
* [[`f4f191bbc2`](https://github.com/nodejs/node/commit/f4f191bbc2)] - **build**: define NODE\_EXPERIMENTAL\_QUIC in mkcodecache and node\_mksnapshot (Joyee Cheung) [#34454](https://github.com/nodejs/node/pull/34454)
* [[`5b2c263ba8`](https://github.com/nodejs/node/commit/5b2c263ba8)] - **deps**: fix typo in zlib.gyp that break arm-fpu-neon build (lucasg) [#35659](https://github.com/nodejs/node/pull/35659)
* [[`5b9593f727`](https://github.com/nodejs/node/commit/5b9593f727)] - **deps**: upgrade npm to 7.0.2 (Myles Borins) [#35667](https://github.com/nodejs/node/pull/35667)
* [[`dabc6ddddc`](https://github.com/nodejs/node/commit/dabc6ddddc)] - **deps**: upgrade npm to 7.0.0-rc.4 (Myles Borins) [#35576](https://github.com/nodejs/node/pull/35576)
* [[`757bac6711`](https://github.com/nodejs/node/commit/757bac6711)] - **deps**: update nghttp3 (James M Snell) [#34752](https://github.com/nodejs/node/pull/34752)
* [[`c788be2e6e`](https://github.com/nodejs/node/commit/c788be2e6e)] - **deps**: update ngtcp2 (James M Snell) [#34752](https://github.com/nodejs/node/pull/34752)
* [[`7816e5f7b9`](https://github.com/nodejs/node/commit/7816e5f7b9)] - **deps**: fix indenting of sources in ngtcp2.gyp (James M Snell) [#34033](https://github.com/nodejs/node/pull/34033)
* [[`f5343d1b40`](https://github.com/nodejs/node/commit/f5343d1b40)] - **deps**: re-enable OPENSSL\_NO\_QUIC guards (James M Snell) [#34033](https://github.com/nodejs/node/pull/34033)
* [[`9de95f494e`](https://github.com/nodejs/node/commit/9de95f494e)] - **deps**: temporary fixup for ngtcp2 to build on windows (James M Snell) [#34033](https://github.com/nodejs/node/pull/34033)
* [[`ec7ad1d0ec`](https://github.com/nodejs/node/commit/ec7ad1d0ec)] - **deps**: cherry-pick akamai/openssl/commit/bf4b08ecfbb7a26ca4b0b9ecaee3b31d18d7bda9 (Tatsuhiro Tsujikawa) [#34033](https://github.com/nodejs/node/pull/34033)
* [[`c3d85b7637`](https://github.com/nodejs/node/commit/c3d85b7637)] - **deps**: cherry-pick akamai/openssl/commit/a5a08cb8050bb69120e833456e355f482e392456 (Benjamin Kaduk) [#34033](https://github.com/nodejs/node/pull/34033)
* [[`bad1a150ea`](https://github.com/nodejs/node/commit/bad1a150ea)] - **deps**: cherry-pick akamai/openssl/commit/d5a13ca6e29f3ff85c731770ab0ee2f2487bf8b3 (Benjamin Kaduk) [#34033](https://github.com/nodejs/node/pull/34033)
* [[`74cbfd3f36`](https://github.com/nodejs/node/commit/74cbfd3f36)] - **deps**: cherry-pick akamai/openssl/commit/a6282c566d88db11300c82abc3c84a4e2e9ea568 (Benjamin Kaduk) [#34033](https://github.com/nodejs/node/pull/34033)
* [[`8a9763a8ea`](https://github.com/nodejs/node/commit/8a9763a8ea)] - **deps**: update nghttp3 (James M Snell) [#34033](https://github.com/nodejs/node/pull/34033)
* [[`6b27d07779`](https://github.com/nodejs/node/commit/6b27d07779)] - **deps**: update ngtcp2 (James M Snell) [#34033](https://github.com/nodejs/node/pull/34033)
* [[`a041723774`](https://github.com/nodejs/node/commit/a041723774)] - **deps**: fix indentation for sources in nghttp3.gyp (Daniel Bevenius) [#33942](https://github.com/nodejs/node/pull/33942)
* [[`a0cbd676e7`](https://github.com/nodejs/node/commit/a0cbd676e7)] - **deps**: add defines to nghttp3/ngtcp2 gyp configs (Daniel Bevenius) [#33942](https://github.com/nodejs/node/pull/33942)
* [[`bccb514936`](https://github.com/nodejs/node/commit/bccb514936)] - **deps**: maintaining ngtcp2 and nghttp3 (James M Snell) [#32379](https://github.com/nodejs/node/pull/32379)
* [[`834fa8f23f`](https://github.com/nodejs/node/commit/834fa8f23f)] - **deps**: add ngtcp2 and nghttp3 (James M Snell) [#32379](https://github.com/nodejs/node/pull/32379)
* [[`f96b981528`](https://github.com/nodejs/node/commit/f96b981528)] - **deps**: details for updating openssl quic support (James M Snell) [#32379](https://github.com/nodejs/node/pull/32379)
* [[`98c8498552`](https://github.com/nodejs/node/commit/98c8498552)] - **deps**: update archs files for OpenSSL-1.1.0 (James M Snell) [#32379](https://github.com/nodejs/node/pull/32379)
* [[`2c549e505e`](https://github.com/nodejs/node/commit/2c549e505e)] - **deps**: add support for BoringSSL QUIC APIs (Todd Short) [#32379](https://github.com/nodejs/node/pull/32379)
* [[`1103b15af6`](https://github.com/nodejs/node/commit/1103b15af6)] - **doc**: fix YAML lint error on master (Rich Trott) [#35709](https://github.com/nodejs/node/pull/35709)
* [[`7798e59e98`](https://github.com/nodejs/node/commit/7798e59e98)] - **doc**: upgrade stability status of report API (Gireesh Punathil) [#35654](https://github.com/nodejs/node/pull/35654)
* [[`ce03a182cf`](https://github.com/nodejs/node/commit/ce03a182cf)] - **doc**: clarify experimental API elements in vm.md (Rich Trott) [#35594](https://github.com/nodejs/node/pull/35594)
* [[`89defff3b9`](https://github.com/nodejs/node/commit/89defff3b9)] - **doc**: correct order of metadata for deprecation (Rich Trott) [#35668](https://github.com/nodejs/node/pull/35668)
* [[`ee85eb9f8a`](https://github.com/nodejs/node/commit/ee85eb9f8a)] - **doc**: importModuleDynamically gets Script, not Module (Simen Bekkhus) [#35593](https://github.com/nodejs/node/pull/35593)
* [[`9e5a27a9d3`](https://github.com/nodejs/node/commit/9e5a27a9d3)] - **doc**: fix EventEmitter examples (Sourav Shaw) [#33513](https://github.com/nodejs/node/pull/33513)
* [[`2c2c87e291`](https://github.com/nodejs/node/commit/2c2c87e291)] - **doc**: fix stability indicator in webcrypto doc (Rich Trott) [#35672](https://github.com/nodejs/node/pull/35672)
* [[`f59d4e05a2`](https://github.com/nodejs/node/commit/f59d4e05a2)] - **doc**: add example code for process.getgroups() (Pooja D.P) [#35625](https://github.com/nodejs/node/pull/35625)
* [[`8a3808dc37`](https://github.com/nodejs/node/commit/8a3808dc37)] - **doc**: use kbd element in tty doc (Rich Trott) [#35613](https://github.com/nodejs/node/pull/35613)
* [[`4079bfd462`](https://github.com/nodejs/node/commit/4079bfd462)] - **doc**: Remove reference to io.js (Hussaina Begum Nandyala) [#35618](https://github.com/nodejs/node/pull/35618)
* [[`e6d5af3c95`](https://github.com/nodejs/node/commit/e6d5af3c95)] - **doc**: fix typos in quic.md (Luigi Pinca) [#35444](https://github.com/nodejs/node/pull/35444)
* [[`524123fbf0`](https://github.com/nodejs/node/commit/524123fbf0)] - **doc**: update releaser in v12.18.4 changelog (Beth Griggs) [#35217](https://github.com/nodejs/node/pull/35217)
* [[`ccdd1bd82a`](https://github.com/nodejs/node/commit/ccdd1bd82a)] - **doc**: fix incorrectly marked Buffer in quic.md (Rich Trott) [#35075](https://github.com/nodejs/node/pull/35075)
* [[`cc754f2985`](https://github.com/nodejs/node/commit/cc754f2985)] - **doc**: make AbortSignal text consistent in events.md (Rich Trott) [#35005](https://github.com/nodejs/node/pull/35005)
* [[`f9c362ff6c`](https://github.com/nodejs/node/commit/f9c362ff6c)] - **doc**: revise AbortSignal text and example using events.once() (Rich Trott) [#35005](https://github.com/nodejs/node/pull/35005)
* [[`7aeff6b8c8`](https://github.com/nodejs/node/commit/7aeff6b8c8)] - **doc**: claim ABI version for Electron v12 (Shelley Vohr) [#34816](https://github.com/nodejs/node/pull/34816)
* [[`7a1220a1d7`](https://github.com/nodejs/node/commit/7a1220a1d7)] - **doc**: fix headings in quic.md (Anna Henningsen) [#34717](https://github.com/nodejs/node/pull/34717)
* [[`d5c7aec3cb`](https://github.com/nodejs/node/commit/d5c7aec3cb)] - **doc**: use \_can\_ to describe actions in quic.md (Rich Trott) [#34613](https://github.com/nodejs/node/pull/34613)
* [[`319c275b26`](https://github.com/nodejs/node/commit/319c275b26)] - **doc**: use \_can\_ to describe actions in quic.md (Rich Trott) [#34613](https://github.com/nodejs/node/pull/34613)
* [[`2c30920886`](https://github.com/nodejs/node/commit/2c30920886)] - **doc**: use sentence-case in quic.md headers (Rich Trott) [#34453](https://github.com/nodejs/node/pull/34453)
* [[`8ada27510d`](https://github.com/nodejs/node/commit/8ada27510d)] - **doc**: add missing backticks in timers.md (vsemozhetbyt) [#34030](https://github.com/nodejs/node/pull/34030)
* [[`862d005e60`](https://github.com/nodejs/node/commit/862d005e60)] - **doc**: make globals Extends usage consistent (Colin Ihrig) [#33777](https://github.com/nodejs/node/pull/33777)
* [[`85dbd17bde`](https://github.com/nodejs/node/commit/85dbd17bde)] - **doc**: make perf\_hooks Extends usage consistent (Colin Ihrig) [#33777](https://github.com/nodejs/node/pull/33777)
* [[`2e49010bc8`](https://github.com/nodejs/node/commit/2e49010bc8)] - **doc**: make events Extends usage consistent (Colin Ihrig) [#33777](https://github.com/nodejs/node/pull/33777)
* [[`680fb8fc62`](https://github.com/nodejs/node/commit/680fb8fc62)] - **doc**: fix deprecation "End-of-Life" capitalization (Colin Ihrig) [#33691](https://github.com/nodejs/node/pull/33691)
* [[`458677f5ef`](https://github.com/nodejs/node/commit/458677f5ef)] - **errors**: print original exception context (Benjamin Coe) [#33491](https://github.com/nodejs/node/pull/33491)
* [[`b1831fed3a`](https://github.com/nodejs/node/commit/b1831fed3a)] - **events**: simplify event target agnostic logic in on and once (Denys Otrishko) [#34997](https://github.com/nodejs/node/pull/34997)
* [[`7f25fe8b67`](https://github.com/nodejs/node/commit/7f25fe8b67)] - **fs**: remove unused assignment (Rich Trott) [#35642](https://github.com/nodejs/node/pull/35642)
* [[`2c4f30deea`](https://github.com/nodejs/node/commit/2c4f30deea)] - **fs**: fix when path is buffer on fs.symlinkSync (himself65) [#34540](https://github.com/nodejs/node/pull/34540)
* [[`db0e991d52`](https://github.com/nodejs/node/commit/db0e991d52)] - **fs**: remove custom Buffer pool for streams (Robert Nagy) [#33981](https://github.com/nodejs/node/pull/33981)
* [[`51a2df4439`](https://github.com/nodejs/node/commit/51a2df4439)] - **fs**: document why isPerformingIO is required (Robert Nagy) [#33982](https://github.com/nodejs/node/pull/33982)
* [[`999e7d7b44`](https://github.com/nodejs/node/commit/999e7d7b44)] - **gyp,build**: consistent shared library location (Rod Vagg) [#35635](https://github.com/nodejs/node/pull/35635)
* [[`30cc54275d`](https://github.com/nodejs/node/commit/30cc54275d)] - **http**: don't emit error after close (Robert Nagy) [#33654](https://github.com/nodejs/node/pull/33654)
* [[`ddff2b2b22`](https://github.com/nodejs/node/commit/ddff2b2b22)] - **lib**: honor setUncaughtExceptionCaptureCallback (Gireesh Punathil) [#35595](https://github.com/nodejs/node/pull/35595)
* [[`a8806535d9`](https://github.com/nodejs/node/commit/a8806535d9)] - **lib**: use Object static properties from primordials (Michaël Zasso) [#35380](https://github.com/nodejs/node/pull/35380)
* [[`11f1ad939f`](https://github.com/nodejs/node/commit/11f1ad939f)] - **module**: only try to enrich CJS syntax errors (Michaël Zasso) [#35691](https://github.com/nodejs/node/pull/35691)
* [[`aaf225a2a0`](https://github.com/nodejs/node/commit/aaf225a2a0)] - **module**: add setter for module.parent (Antoine du Hamel) [#35522](https://github.com/nodejs/node/pull/35522)
* [[`109a296e2a`](https://github.com/nodejs/node/commit/109a296e2a)] - **quic**: fix typo in code comment (Ikko Ashimine) [#35308](https://github.com/nodejs/node/pull/35308)
* [[`186230527b`](https://github.com/nodejs/node/commit/186230527b)] - **quic**: fix error message on invalid connection ID (Rich Trott) [#35026](https://github.com/nodejs/node/pull/35026)
* [[`e5116b304f`](https://github.com/nodejs/node/commit/e5116b304f)] - **quic**: remove unused function arguments (Rich Trott) [#35010](https://github.com/nodejs/node/pull/35010)
* [[`449f73e05f`](https://github.com/nodejs/node/commit/449f73e05f)] - **quic**: remove undefined variable (Rich Trott) [#35007](https://github.com/nodejs/node/pull/35007)
* [[`44e6a6af67`](https://github.com/nodejs/node/commit/44e6a6af67)] - **quic**: use qlog fin flag (James M Snell) [#34752](https://github.com/nodejs/node/pull/34752)
* [[`2a80737278`](https://github.com/nodejs/node/commit/2a80737278)] - **quic**: fixups after ngtcp2/nghttp3 update (James M Snell) [#34752](https://github.com/nodejs/node/pull/34752)
* [[`c855c3e8ca`](https://github.com/nodejs/node/commit/c855c3e8ca)] - **quic**: use net.BlockList for limiting access to a QuicSocket (James M Snell) [#34741](https://github.com/nodejs/node/pull/34741)
* [[`bfc35354c1`](https://github.com/nodejs/node/commit/bfc35354c1)] - **quic**: consolidate stats collecting in QuicSession (James M Snell) [#34741](https://github.com/nodejs/node/pull/34741)
* [[`94aa291348`](https://github.com/nodejs/node/commit/94aa291348)] - **quic**: clarify TODO statements (James M Snell) [#34741](https://github.com/nodejs/node/pull/34741)
* [[`19e712b9b2`](https://github.com/nodejs/node/commit/19e712b9b2)] - **quic**: resolve InitializeSecureContext TODO comment (James M Snell) [#34741](https://github.com/nodejs/node/pull/34741)
* [[`240592228b`](https://github.com/nodejs/node/commit/240592228b)] - **quic**: fixup session ticket app data todo comments (James M Snell) [#34741](https://github.com/nodejs/node/pull/34741)
* [[`c17eaa3f3f`](https://github.com/nodejs/node/commit/c17eaa3f3f)] - **quic**: add natRebinding argument to docs (James M Snell) [#34669](https://github.com/nodejs/node/pull/34669)
* [[`442968c92a`](https://github.com/nodejs/node/commit/442968c92a)] - **quic**: check setSocket natRebinding argument, extend test (James M Snell) [#34669](https://github.com/nodejs/node/pull/34669)
* [[`10d5047a4f`](https://github.com/nodejs/node/commit/10d5047a4f)] - **quic**: fixup set\_socket, fix skipped test (James M Snell) [#34669](https://github.com/nodejs/node/pull/34669)
* [[`344c5e4e50`](https://github.com/nodejs/node/commit/344c5e4e50)] - **quic**: limit push check to http/3 (James M Snell) [#34655](https://github.com/nodejs/node/pull/34655)
* [[`34165f03aa`](https://github.com/nodejs/node/commit/34165f03aa)] - **quic**: resolve some minor TODOs (James M Snell) [#34655](https://github.com/nodejs/node/pull/34655)
* [[`1e6e5c3ef3`](https://github.com/nodejs/node/commit/1e6e5c3ef3)] - **quic**: resolve minor TODO in QuicSocket (James M Snell) [#34655](https://github.com/nodejs/node/pull/34655)
* [[`ba5c64bf45`](https://github.com/nodejs/node/commit/ba5c64bf45)] - **quic**: use AbortController with correct name/message (Anna Henningsen) [#34763](https://github.com/nodejs/node/pull/34763)
* [[`a7477704c4`](https://github.com/nodejs/node/commit/a7477704c4)] - **quic**: prefer modernize-make-unique (gengjiawen) [#34692](https://github.com/nodejs/node/pull/34692)
* [[`5b6cd6fa1a`](https://github.com/nodejs/node/commit/5b6cd6fa1a)] - **quic**: use the SocketAddressLRU to track validation status (James M Snell) [#34618](https://github.com/nodejs/node/pull/34618)
* [[`f75e69a94b`](https://github.com/nodejs/node/commit/f75e69a94b)] - **quic**: use SocketAddressLRU to track known SocketAddress info (James M Snell) [#34618](https://github.com/nodejs/node/pull/34618)
* [[`6b0b33cd4c`](https://github.com/nodejs/node/commit/6b0b33cd4c)] - **quic**: cleanup some outstanding todo items (James M Snell) [#34618](https://github.com/nodejs/node/pull/34618)
* [[`6e65f26b73`](https://github.com/nodejs/node/commit/6e65f26b73)] - **quic**: use QuicCallbackScope consistently for QuicSession (James M Snell) [#34541](https://github.com/nodejs/node/pull/34541)
* [[`d96083bad5`](https://github.com/nodejs/node/commit/d96083bad5)] - **quic**: introduce QuicCallbackScope (James M Snell) [#34541](https://github.com/nodejs/node/pull/34541)
* [[`4b0275ab87`](https://github.com/nodejs/node/commit/4b0275ab87)] - **quic**: refactor clientHello (James M Snell) [#34541](https://github.com/nodejs/node/pull/34541)
* [[`a97b5f9c6a`](https://github.com/nodejs/node/commit/a97b5f9c6a)] - **quic**: use OpenSSL built-in cert and hostname validation (James M Snell) [#34533](https://github.com/nodejs/node/pull/34533)
* [[`7a5fbafe96`](https://github.com/nodejs/node/commit/7a5fbafe96)] - **quic**: fix build for macOS (gengjiawen) [#34336](https://github.com/nodejs/node/pull/34336)
* [[`1f94b89309`](https://github.com/nodejs/node/commit/1f94b89309)] - **quic**: refactor ocsp to use async function rather than event/callback (James M Snell) [#34498](https://github.com/nodejs/node/pull/34498)
* [[`06664298fa`](https://github.com/nodejs/node/commit/06664298fa)] - **quic**: remove no-longer relevant TODO statements (James M Snell) [#34498](https://github.com/nodejs/node/pull/34498)
* [[`2fb92f4cc6`](https://github.com/nodejs/node/commit/2fb92f4cc6)] - **quic**: remove extraneous unused debug property (James M Snell) [#34498](https://github.com/nodejs/node/pull/34498)
* [[`b06fe33de1`](https://github.com/nodejs/node/commit/b06fe33de1)] - **quic**: use async \_construct for QuicStream (James M Snell) [#34351](https://github.com/nodejs/node/pull/34351)
* [[`8bd61d4c38`](https://github.com/nodejs/node/commit/8bd61d4c38)] - **quic**: documentation updates (James M Snell) [#34351](https://github.com/nodejs/node/pull/34351)
* [[`086c916997`](https://github.com/nodejs/node/commit/086c916997)] - **quic**: extensive refactoring of QuicStream lifecycle (James M Snell) [#34351](https://github.com/nodejs/node/pull/34351)
* [[`cf28f8a7dd`](https://github.com/nodejs/node/commit/cf28f8a7dd)] - **quic**: gitignore qlog files (James M Snell) [#34351](https://github.com/nodejs/node/pull/34351)
* [[`83bf0d7e8c`](https://github.com/nodejs/node/commit/83bf0d7e8c)] - **quic**: remove unneeded quicstream.aborted and fixup docs (James M Snell) [#34351](https://github.com/nodejs/node/pull/34351)
* [[`a65296db2c`](https://github.com/nodejs/node/commit/a65296db2c)] - **quic**: remove stream pending code (James M Snell) [#34351](https://github.com/nodejs/node/pull/34351)
* [[`da20287e1a`](https://github.com/nodejs/node/commit/da20287e1a)] - **quic**: simplify QuicStream construction logic (James M Snell) [#34351](https://github.com/nodejs/node/pull/34351)
* [[`6e30fe7a7f`](https://github.com/nodejs/node/commit/6e30fe7a7f)] - **quic**: convert openStream to Promise (James M Snell) [#34351](https://github.com/nodejs/node/pull/34351)
* [[`89453cfc08`](https://github.com/nodejs/node/commit/89453cfc08)] - **quic**: fixup quic.md (James M Snell) [#34283](https://github.com/nodejs/node/pull/34283)
* [[`4523d4a813`](https://github.com/nodejs/node/commit/4523d4a813)] - **quic**: fixup closing/draining period timing (James M Snell) [#34283](https://github.com/nodejs/node/pull/34283)
* [[`ed4882241c`](https://github.com/nodejs/node/commit/ed4882241c)] - **quic**: properly pass readable/writable constructor options (James M Snell) [#34283](https://github.com/nodejs/node/pull/34283)
* [[`57c1129508`](https://github.com/nodejs/node/commit/57c1129508)] - **quic**: implement QuicSession close as promise (James M Snell) [#34283](https://github.com/nodejs/node/pull/34283)
* [[`8e5c5b16ab`](https://github.com/nodejs/node/commit/8e5c5b16ab)] - **quic**: cleanup QuicClientSession constructor (James M Snell) [#34283](https://github.com/nodejs/node/pull/34283)
* [[`fe4e7e4598`](https://github.com/nodejs/node/commit/fe4e7e4598)] - **quic**: use promisified dns lookup (James M Snell) [#34283](https://github.com/nodejs/node/pull/34283)
* [[`346aeaf874`](https://github.com/nodejs/node/commit/346aeaf874)] - **quic**: eliminate "ready"/"not ready" states for QuicSession (James M Snell) [#34283](https://github.com/nodejs/node/pull/34283)
* [[`6665dda9f6`](https://github.com/nodejs/node/commit/6665dda9f6)] - **quic**: implement QuicSocket Promise API, part 2 (James M Snell) [#34283](https://github.com/nodejs/node/pull/34283)
* [[`79c0e892dd`](https://github.com/nodejs/node/commit/79c0e892dd)] - **quic**: implement QuicSocket Promise API, part 1 (James M Snell) [#34283](https://github.com/nodejs/node/pull/34283)
* [[`53b12f0c7b`](https://github.com/nodejs/node/commit/53b12f0c7b)] - **quic**: implement QuicEndpoint Promise API (James M Snell) [#34283](https://github.com/nodejs/node/pull/34283)
* [[`16b32eae3e`](https://github.com/nodejs/node/commit/16b32eae3e)] - **quic**: handle unhandled rejections on QuicSession (James M Snell) [#34283](https://github.com/nodejs/node/pull/34283)
* [[`e5d963e24d`](https://github.com/nodejs/node/commit/e5d963e24d)] - **quic**: fixup kEndpointClose (James M Snell) [#34283](https://github.com/nodejs/node/pull/34283)
* [[`9f552df5b4`](https://github.com/nodejs/node/commit/9f552df5b4)] - **quic**: fix endpointClose error handling, document (James M Snell) [#34283](https://github.com/nodejs/node/pull/34283)
* [[`b80108c033`](https://github.com/nodejs/node/commit/b80108c033)] - **quic**: restrict addEndpoint to before QuicSocket bind (James M Snell) [#34283](https://github.com/nodejs/node/pull/34283)
* [[`81c01bbdba`](https://github.com/nodejs/node/commit/81c01bbdba)] - **quic**: use a getter for stream options (James M Snell) [#34283](https://github.com/nodejs/node/pull/34283)
* [[`b8945ba2ab`](https://github.com/nodejs/node/commit/b8945ba2ab)] - **quic**: clarifying code comments (James M Snell) [#34283](https://github.com/nodejs/node/pull/34283)
* [[`429ab1dce6`](https://github.com/nodejs/node/commit/429ab1dce6)] - **quic**: minor reduction in code duplication (James M Snell) [#34283](https://github.com/nodejs/node/pull/34283)
* [[`aafdc2fcad`](https://github.com/nodejs/node/commit/aafdc2fcad)] - **quic**: replace ipv6Only option with `'udp6-only'` type (James M Snell) [#34283](https://github.com/nodejs/node/pull/34283)
* [[`fbc38ee134`](https://github.com/nodejs/node/commit/fbc38ee134)] - **quic**: clear clang warning (gengjiawen) [#34335](https://github.com/nodejs/node/pull/34335)
* [[`c176d5fac2`](https://github.com/nodejs/node/commit/c176d5fac2)] - **quic**: set destroyed at timestamps for duration calculation (James M Snell) [#34262](https://github.com/nodejs/node/pull/34262)
* [[`48a349efd9`](https://github.com/nodejs/node/commit/48a349efd9)] - **quic**: use Number instead of BigInt for more stats (James M Snell) [#34262](https://github.com/nodejs/node/pull/34262)
* [[`5e769b2eaf`](https://github.com/nodejs/node/commit/5e769b2eaf)] - **quic**: use less specific error codes (James M Snell) [#34262](https://github.com/nodejs/node/pull/34262)
* [[`26493c02a2`](https://github.com/nodejs/node/commit/26493c02a2)] - **quic**: remove no longer valid CHECK (James M Snell) [#34247](https://github.com/nodejs/node/pull/34247)
* [[`458d243f20`](https://github.com/nodejs/node/commit/458d243f20)] - **quic**: proper custom inspect for QuicStream (James M Snell) [#34247](https://github.com/nodejs/node/pull/34247)
* [[`0860b11655`](https://github.com/nodejs/node/commit/0860b11655)] - **quic**: proper custom inspect for QuicSession (James M Snell) [#34247](https://github.com/nodejs/node/pull/34247)
* [[`b047930d76`](https://github.com/nodejs/node/commit/b047930d76)] - **quic**: proper custom inspect for QuicSocket (James M Snell) [#34247](https://github.com/nodejs/node/pull/34247)
* [[`511f8c1138`](https://github.com/nodejs/node/commit/511f8c1138)] - **quic**: proper custom inspect for QuicEndpoint (James M Snell) [#34247](https://github.com/nodejs/node/pull/34247)
* [[`fe11f6bf7c`](https://github.com/nodejs/node/commit/fe11f6bf7c)] - **quic**: cleanup QuicSocketFlags, used shared state struct (James M Snell) [#34247](https://github.com/nodejs/node/pull/34247)
* [[`d08e99de24`](https://github.com/nodejs/node/commit/d08e99de24)] - **quic**: use getter/setter for stateless reset toggle (James M Snell) [#34247](https://github.com/nodejs/node/pull/34247)
* [[`f2753c7695`](https://github.com/nodejs/node/commit/f2753c7695)] - **quic**: unref timers again (Anna Henningsen) [#34247](https://github.com/nodejs/node/pull/34247)
* [[`71236097d0`](https://github.com/nodejs/node/commit/71236097d0)] - **quic**: use Number() instead of bigint for QuicSocket stats (James M Snell) [#34247](https://github.com/nodejs/node/pull/34247)
* [[`94372b124a`](https://github.com/nodejs/node/commit/94372b124a)] - **quic**: refactor/improve/document QuicSocket listening event (James M Snell) [#34247](https://github.com/nodejs/node/pull/34247)
* [[`afc9390ae5`](https://github.com/nodejs/node/commit/afc9390ae5)] - **quic**: refactor/improve QuicSocket ready event handling (James M Snell) [#34247](https://github.com/nodejs/node/pull/34247)
* [[`e3813261b8`](https://github.com/nodejs/node/commit/e3813261b8)] - **quic**: add tests confirming error handling for QuicSocket close event (James M Snell) [#34247](https://github.com/nodejs/node/pull/34247)
* [[`cc89aac5f7`](https://github.com/nodejs/node/commit/cc89aac5f7)] - **quic**: refactor/improve error handling for busy event (James M Snell) [#34247](https://github.com/nodejs/node/pull/34247)
* [[`edc71ef008`](https://github.com/nodejs/node/commit/edc71ef008)] - **quic**: handle errors thrown / rejections in the session event (James M Snell) [#34247](https://github.com/nodejs/node/pull/34247)
* [[`bcde849be9`](https://github.com/nodejs/node/commit/bcde849be9)] - **quic**: remove unnecessary bool conversion (James M Snell) [#34247](https://github.com/nodejs/node/pull/34247)
* [[`c535131627`](https://github.com/nodejs/node/commit/c535131627)] - **quic**: additional minor cleanups in node\_quic\_session.h (James M Snell) [#34247](https://github.com/nodejs/node/pull/34247)
* [[`0f97d6066a`](https://github.com/nodejs/node/commit/0f97d6066a)] - **quic**: use TimerWrap for idle and retransmit timers (James M Snell) [#34186](https://github.com/nodejs/node/pull/34186)
* [[`1b1e985478`](https://github.com/nodejs/node/commit/1b1e985478)] - **quic**: add missing memory tracker fields (James M Snell) [#34160](https://github.com/nodejs/node/pull/34160)
* [[`5a87e9b0a5`](https://github.com/nodejs/node/commit/5a87e9b0a5)] - **quic**: cleanup timers if they haven't been already (James M Snell) [#34160](https://github.com/nodejs/node/pull/34160)
* [[`3837d9cf1f`](https://github.com/nodejs/node/commit/3837d9cf1f)] - **quic**: fixup lint issues (James M Snell) [#34160](https://github.com/nodejs/node/pull/34160)
* [[`7b062ca015`](https://github.com/nodejs/node/commit/7b062ca015)] - **quic**: refactor qlog handling (James M Snell) [#34160](https://github.com/nodejs/node/pull/34160)
* [[`e4d369e96e`](https://github.com/nodejs/node/commit/e4d369e96e)] - **quic**: remove onSessionDestroy callback (James M Snell) [#34160](https://github.com/nodejs/node/pull/34160)
* [[`3acdd6aac7`](https://github.com/nodejs/node/commit/3acdd6aac7)] - **quic**: refactor QuicSession shared state to use AliasedStruct (James M Snell) [#34160](https://github.com/nodejs/node/pull/34160)
* [[`f9c2245fb5`](https://github.com/nodejs/node/commit/f9c2245fb5)] - **quic**: refactor QuicSession close/destroy flow (James M Snell) [#34160](https://github.com/nodejs/node/pull/34160)
* [[`f7510ca439`](https://github.com/nodejs/node/commit/f7510ca439)] - **quic**: additional cleanups on the c++ side (James M Snell) [#34160](https://github.com/nodejs/node/pull/34160)
* [[`b5bf5bb20f`](https://github.com/nodejs/node/commit/b5bf5bb20f)] - **quic**: refactor native object flags for better readability (James M Snell) [#34160](https://github.com/nodejs/node/pull/34160)
* [[`b1750a4d53`](https://github.com/nodejs/node/commit/b1750a4d53)] - **quic**: continued refactoring for quic\_stream/quic\_session (James M Snell) [#34160](https://github.com/nodejs/node/pull/34160)
* [[`31d6d9d0f7`](https://github.com/nodejs/node/commit/31d6d9d0f7)] - **quic**: reduce duplication of code (James M Snell) [#34137](https://github.com/nodejs/node/pull/34137)
* [[`b5fe31ef19`](https://github.com/nodejs/node/commit/b5fe31ef19)] - **quic**: avoid using private JS fields for now (James M Snell) [#34137](https://github.com/nodejs/node/pull/34137)
* [[`2afc1abd05`](https://github.com/nodejs/node/commit/2afc1abd05)] - **quic**: fixup constant exports, export all protocol error codes (James M Snell) [#34137](https://github.com/nodejs/node/pull/34137)
* [[`b1fab88ff0`](https://github.com/nodejs/node/commit/b1fab88ff0)] - **quic**: remove unused callback function (James M Snell) [#34137](https://github.com/nodejs/node/pull/34137)
* [[`3bae2d5073`](https://github.com/nodejs/node/commit/3bae2d5073)] - **quic**: consolidate onSessionClose and onSessionSilentClose (James M Snell) [#34137](https://github.com/nodejs/node/pull/34137)
* [[`def8e76999`](https://github.com/nodejs/node/commit/def8e76999)] - **quic**: fixup set\_final\_size (James M Snell) [#34137](https://github.com/nodejs/node/pull/34137)
* [[`d6034186d6`](https://github.com/nodejs/node/commit/d6034186d6)] - **quic**: cleanups for QuicSocket (James M Snell) [#34137](https://github.com/nodejs/node/pull/34137)
* [[`73a51bb9dc`](https://github.com/nodejs/node/commit/73a51bb9dc)] - **quic**: cleanups in JS API (James M Snell) [#34137](https://github.com/nodejs/node/pull/34137)
* [[`204f20f2d1`](https://github.com/nodejs/node/commit/204f20f2d1)] - **quic**: minor cleanups in quic\_buffer (James M Snell) [#34087](https://github.com/nodejs/node/pull/34087)
* [[`68634d2592`](https://github.com/nodejs/node/commit/68634d2592)] - **quic**: remove redundant cast (gengjiawen) [#34086](https://github.com/nodejs/node/pull/34086)
* [[`213cac0b94`](https://github.com/nodejs/node/commit/213cac0b94)] - **quic**: temporarily skip quic-ipv6only test (James M Snell) [#34033](https://github.com/nodejs/node/pull/34033)
* [[`99f7c4bb5e`](https://github.com/nodejs/node/commit/99f7c4bb5e)] - **quic**: possibly resolve flaky assertion failure in ipv6only test (James M Snell) [#34033](https://github.com/nodejs/node/pull/34033)
* [[`2a5922e483`](https://github.com/nodejs/node/commit/2a5922e483)] - **quic**: temporarily disable packetloss tests (James M Snell) [#34033](https://github.com/nodejs/node/pull/34033)
* [[`86e67aaa69`](https://github.com/nodejs/node/commit/86e67aaa69)] - **quic**: updates to implement for h3-29 (James M Snell) [#34033](https://github.com/nodejs/node/pull/34033)
* [[`adf14e2617`](https://github.com/nodejs/node/commit/adf14e2617)] - **quic**: fix lint error in node\_quic\_crypto (Daniel Bevenius) [#34019](https://github.com/nodejs/node/pull/34019)
* [[`9f2e00fb99`](https://github.com/nodejs/node/commit/9f2e00fb99)] - **quic**: temporarily disable preferred address tests (James M Snell) [#33934](https://github.com/nodejs/node/pull/33934)
* [[`0e7c8bdc0c`](https://github.com/nodejs/node/commit/0e7c8bdc0c)] - **quic**: return 0 from SSL\_CTX\_sess\_set\_new\_cb callback (Anna Henningsen) [#33931](https://github.com/nodejs/node/pull/33931)
* [[`c7d859e756`](https://github.com/nodejs/node/commit/c7d859e756)] - **quic**: refactor and improve ipv6Only (James M Snell) [#33935](https://github.com/nodejs/node/pull/33935)
* [[`1b7434dfc0`](https://github.com/nodejs/node/commit/1b7434dfc0)] - **quic**: set up FunctionTemplates more cleanly (Anna Henningsen) [#33968](https://github.com/nodejs/node/pull/33968)
* [[`8ef86a920c`](https://github.com/nodejs/node/commit/8ef86a920c)] - **quic**: fix clang warning (gengjiawen) [#33963](https://github.com/nodejs/node/pull/33963)
* [[`013cd1ac6f`](https://github.com/nodejs/node/commit/013cd1ac6f)] - **quic**: use Check instead of FromJust in node\_quic.cc (Daniel Bevenius) [#33937](https://github.com/nodejs/node/pull/33937)
* [[`09330fc155`](https://github.com/nodejs/node/commit/09330fc155)] - **quic**: fix clang-tidy performance-faster-string-find issue (gengjiawen) [#33975](https://github.com/nodejs/node/pull/33975)
* [[`9743624c0b`](https://github.com/nodejs/node/commit/9743624c0b)] - **quic**: fix typo in comments (gengjiawen) [#33975](https://github.com/nodejs/node/pull/33975)
* [[`88ef15812c`](https://github.com/nodejs/node/commit/88ef15812c)] - **quic**: remove unused string include http3\_application (Daniel Bevenius) [#33926](https://github.com/nodejs/node/pull/33926)
* [[`1bd88a3ac6`](https://github.com/nodejs/node/commit/1bd88a3ac6)] - **quic**: fix up node\_quic\_stream includes (Daniel Bevenius) [#33921](https://github.com/nodejs/node/pull/33921)
* [[`d7d79f2163`](https://github.com/nodejs/node/commit/d7d79f2163)] - **quic**: avoid memory fragmentation issue (James M Snell) [#33912](https://github.com/nodejs/node/pull/33912)
* [[`16116f5f5f`](https://github.com/nodejs/node/commit/16116f5f5f)] - **quic**: remove noop code (Robert Nagy) [#33914](https://github.com/nodejs/node/pull/33914)
* [[`272b46e04d`](https://github.com/nodejs/node/commit/272b46e04d)] - **quic**: skip test-quic-preferred-address-ipv6.js when no ipv6 (James M Snell) [#33919](https://github.com/nodejs/node/pull/33919)
* [[`4b70f95d64`](https://github.com/nodejs/node/commit/4b70f95d64)] - **quic**: use Check instead of FromJust in QuicStream (Daniel Bevenius) [#33909](https://github.com/nodejs/node/pull/33909)
* [[`133a97f60d`](https://github.com/nodejs/node/commit/133a97f60d)] - **quic**: always copy stateless reset token (Anna Henningsen) [#33917](https://github.com/nodejs/node/pull/33917)
* [[`14d012ef96`](https://github.com/nodejs/node/commit/14d012ef96)] - **quic**: fix minor linting issue (James M Snell) [#33913](https://github.com/nodejs/node/pull/33913)
* [[`55360443ce`](https://github.com/nodejs/node/commit/55360443ce)] - **quic**: initial QUIC implementation (James M Snell) [#32379](https://github.com/nodejs/node/pull/32379)
* [[`a12a2d892f`](https://github.com/nodejs/node/commit/a12a2d892f)] - **repl**: update deprecation codes (Antoine du HAMEL) [#33430](https://github.com/nodejs/node/pull/33430)
* [[`2b3acc44f0`](https://github.com/nodejs/node/commit/2b3acc44f0)] - **src**: large pages support in illumos/solaris systems (David Carlier) [#34320](https://github.com/nodejs/node/pull/34320)
* [[`84a7880749`](https://github.com/nodejs/node/commit/84a7880749)] - **src**: minor cleanup and simplification of crypto::Hash (James M Snell) [#35651](https://github.com/nodejs/node/pull/35651)
* [[`bfc906906f`](https://github.com/nodejs/node/commit/bfc906906f)] - **src**: combine TLSWrap/SSLWrap (James M Snell) [#35552](https://github.com/nodejs/node/pull/35552)
* [[`9fd6122659`](https://github.com/nodejs/node/commit/9fd6122659)] - **src**: add embedding helpers to reduce boilerplate code (Anna Henningsen) [#35597](https://github.com/nodejs/node/pull/35597)
* [[`f7ed5f4ae3`](https://github.com/nodejs/node/commit/f7ed5f4ae3)] - **src**: remove toLocalChecked in crypto\_context (James M Snell) [#35509](https://github.com/nodejs/node/pull/35509)
* [[`17d5d94921`](https://github.com/nodejs/node/commit/17d5d94921)] - **src**: replace more toLocalCheckeds in crypto\_\* (James M Snell) [#35509](https://github.com/nodejs/node/pull/35509)
* [[`83eaaf9731`](https://github.com/nodejs/node/commit/83eaaf9731)] - **src**: remove unused AsyncWrapObject (James M Snell) [#35511](https://github.com/nodejs/node/pull/35511)
* [[`ee5f849fda`](https://github.com/nodejs/node/commit/ee5f849fda)] - **src**: fix compiler warning in env.cc (Anna Henningsen) [#35547](https://github.com/nodejs/node/pull/35547)
* [[`40364b181d`](https://github.com/nodejs/node/commit/40364b181d)] - **src**: add check against non-weak BaseObjects at process exit (Anna Henningsen) [#35490](https://github.com/nodejs/node/pull/35490)
* [[`bc0c094b74`](https://github.com/nodejs/node/commit/bc0c094b74)] - **src**: unset NODE\_VERSION\_IS\_RELEASE from master (Antoine du Hamel) [#35531](https://github.com/nodejs/node/pull/35531)
* [[`fdf0a84e82`](https://github.com/nodejs/node/commit/fdf0a84e82)] - **src**: move all base64.h inline methods into -inl.h header file (Anna Henningsen) [#35432](https://github.com/nodejs/node/pull/35432)
* [[`ff4cf817a3`](https://github.com/nodejs/node/commit/ff4cf817a3)] - **src**: create helper for reading Uint32BE (Juan José Arboleda) [#34944](https://github.com/nodejs/node/pull/34944)
* [[`c6e1edcc28`](https://github.com/nodejs/node/commit/c6e1edcc28)] - **src**: add Update(const sockaddr\*) variant (James M Snell) [#34752](https://github.com/nodejs/node/pull/34752)
* [[`1c14810edc`](https://github.com/nodejs/node/commit/1c14810edc)] - **src**: allow instances of net.BlockList to be created internally (James M Snell) [#34741](https://github.com/nodejs/node/pull/34741)
* [[`6d1f0aed52`](https://github.com/nodejs/node/commit/6d1f0aed52)] - **src**: add SocketAddressLRU Utility (James M Snell) [#34618](https://github.com/nodejs/node/pull/34618)
* [[`feb93c4e84`](https://github.com/nodejs/node/commit/feb93c4e84)] - **src**: guard against nullptr deref in TimerWrapHandle::Stop (Anna Henningsen) [#34460](https://github.com/nodejs/node/pull/34460)
* [[`7a447bcd54`](https://github.com/nodejs/node/commit/7a447bcd54)] - **src**: snapshot node (Joyee Cheung) [#32984](https://github.com/nodejs/node/pull/32984)
* [[`c943cb4809`](https://github.com/nodejs/node/commit/c943cb4809)] - **src**: reset zero fill toggle at pre-execution (Joyee Cheung) [#32984](https://github.com/nodejs/node/pull/32984)
* [[`0b8ae5f2cd`](https://github.com/nodejs/node/commit/0b8ae5f2cd)] - **src**: snapshot loaders (Joyee Cheung) [#32984](https://github.com/nodejs/node/pull/32984)
* [[`7ecb285842`](https://github.com/nodejs/node/commit/7ecb285842)] - **src**: make code cache test work with snapshots (Joyee Cheung) [#32984](https://github.com/nodejs/node/pull/32984)
* [[`1faf6f459f`](https://github.com/nodejs/node/commit/1faf6f459f)] - **src**: snapshot Environment upon instantiation (Joyee Cheung) [#32984](https://github.com/nodejs/node/pull/32984)
* [[`ef9964f4c1`](https://github.com/nodejs/node/commit/ef9964f4c1)] - **src**: add an ExternalReferenceRegistry class (Joyee Cheung) [#32984](https://github.com/nodejs/node/pull/32984)
* [[`404302fff5`](https://github.com/nodejs/node/commit/404302fff5)] - **src**: split the main context initialization from Environemnt ctor (Joyee Cheung) [#32984](https://github.com/nodejs/node/pull/32984)
* [[`874460a1d1`](https://github.com/nodejs/node/commit/874460a1d1)] - **src**: refactor TimerWrap lifetime management (Anna Henningsen) [#34252](https://github.com/nodejs/node/pull/34252)
* [[`e2f9dc6e5a`](https://github.com/nodejs/node/commit/e2f9dc6e5a)] - **src**: remove user\_data from TimerWrap (Anna Henningsen) [#34252](https://github.com/nodejs/node/pull/34252)
* [[`e19a251824`](https://github.com/nodejs/node/commit/e19a251824)] - **src**: replace InspectorTimer with TimerWrap utility (James M Snell) [#34186](https://github.com/nodejs/node/pull/34186)
* [[`d4f69002b4`](https://github.com/nodejs/node/commit/d4f69002b4)] - **src**: add TimerWrap utility (James M Snell) [#34186](https://github.com/nodejs/node/pull/34186)
* [[`52de4cb107`](https://github.com/nodejs/node/commit/52de4cb107)] - **src**: minor updates to FastHrtime (Anna Henningsen) [#33851](https://github.com/nodejs/node/pull/33851)
* [[`4678e44bb2`](https://github.com/nodejs/node/commit/4678e44bb2)] - **src**: perform bounds checking on error source line (Anna Henningsen) [#33645](https://github.com/nodejs/node/pull/33645)
* [[`7232c2a160`](https://github.com/nodejs/node/commit/7232c2a160)] - **src**: use getauxval in node\_main.cc (Daniel Bevenius) [#33693](https://github.com/nodejs/node/pull/33693)
* [[`6be80e1893`](https://github.com/nodejs/node/commit/6be80e1893)] - **stream**: fix legacy pipe error handling (Robert Nagy) [#35257](https://github.com/nodejs/node/pull/35257)
* [[`2b9003b165`](https://github.com/nodejs/node/commit/2b9003b165)] - **stream**: don't destroy on async iterator success (Robert Nagy) [#35122](https://github.com/nodejs/node/pull/35122)
* [[`9c62e0e384`](https://github.com/nodejs/node/commit/9c62e0e384)] - **stream**: move to internal/streams (Matteo Collina) [#35239](https://github.com/nodejs/node/pull/35239)
* [[`e0d3b758a0`](https://github.com/nodejs/node/commit/e0d3b758a0)] - **stream**: improve Writable.destroy performance (Robert Nagy) [#35067](https://github.com/nodejs/node/pull/35067)
* [[`02c4869bee`](https://github.com/nodejs/node/commit/02c4869bee)] - **stream**: fix Duplex.\_construct race (Robert Nagy) [#34456](https://github.com/nodejs/node/pull/34456)
* [[`5aeaff6499`](https://github.com/nodejs/node/commit/5aeaff6499)] - **stream**: refactor lazyLoadPromises (rickyes) [#34354](https://github.com/nodejs/node/pull/34354)
* [[`a55b77d2d3`](https://github.com/nodejs/node/commit/a55b77d2d3)] - **stream**: finished on closed OutgoingMessage (Robert Nagy) [#34313](https://github.com/nodejs/node/pull/34313)
* [[`e10e292c5e`](https://github.com/nodejs/node/commit/e10e292c5e)] - **stream**: remove unused \_transformState (Robert Nagy) [#33105](https://github.com/nodejs/node/pull/33105)
* [[`f5c11a1a0a`](https://github.com/nodejs/node/commit/f5c11a1a0a)] - **stream**: don't emit finish after close (Robert Nagy) [#32933](https://github.com/nodejs/node/pull/32933)
* [[`089d654dd8`](https://github.com/nodejs/node/commit/089d654dd8)] - **test**: fix addons/dlopen-ping-pong for npm 7.0.1 (Myles Borins) [#35667](https://github.com/nodejs/node/pull/35667)
* [[`9ce5a03148`](https://github.com/nodejs/node/commit/9ce5a03148)] - **test**: add test for listen callback runtime binding (H Adinarayana) [#35657](https://github.com/nodejs/node/pull/35657)
* [[`a3731309cc`](https://github.com/nodejs/node/commit/a3731309cc)] - **test**: refactor test-https-host-headers (himself65) [#32805](https://github.com/nodejs/node/pull/32805)
* [[`30fb4a015d`](https://github.com/nodejs/node/commit/30fb4a015d)] - **test**: add common.mustSucceed (Tobias Nießen) [#35086](https://github.com/nodejs/node/pull/35086)
* [[`c143266b55`](https://github.com/nodejs/node/commit/c143266b55)] - **test**: add a few uncovered url tests from wpt (Daijiro Wachi) [#35636](https://github.com/nodejs/node/pull/35636)
* [[`6751b6dc3d`](https://github.com/nodejs/node/commit/6751b6dc3d)] - **test**: check for AbortController existence (James M Snell) [#35616](https://github.com/nodejs/node/pull/35616)
* [[`9f2e19fa30`](https://github.com/nodejs/node/commit/9f2e19fa30)] - **test**: update url test for win (Daijiro Wachi) [#35622](https://github.com/nodejs/node/pull/35622)
* [[`c88d845db3`](https://github.com/nodejs/node/commit/c88d845db3)] - **test**: update wpt status for url (Daijiro Wachi) [#35335](https://github.com/nodejs/node/pull/35335)
* [[`589dbf1392`](https://github.com/nodejs/node/commit/589dbf1392)] - **test**: update wpt tests for url (Daijiro Wachi) [#35329](https://github.com/nodejs/node/pull/35329)
* [[`46bef7b771`](https://github.com/nodejs/node/commit/46bef7b771)] - **test**: add Actions annotation output (Mary Marchini) [#34590](https://github.com/nodejs/node/pull/34590)
* [[`a9c5b873ca`](https://github.com/nodejs/node/commit/a9c5b873ca)] - **test**: move buffer-as-path symlink test to its own test file (Rich Trott) [#34569](https://github.com/nodejs/node/pull/34569)
* [[`31ba9a20bd`](https://github.com/nodejs/node/commit/31ba9a20bd)] - **test**: run test-benchmark-napi on arm (Rich Trott) [#34502](https://github.com/nodejs/node/pull/34502)
* [[`2c4ebe0426`](https://github.com/nodejs/node/commit/2c4ebe0426)] - **test**: use `.then(common.mustCall())` for all async IIFEs (Anna Henningsen) [#34363](https://github.com/nodejs/node/pull/34363)
* [[`772fdb0cd3`](https://github.com/nodejs/node/commit/772fdb0cd3)] - **test**: fix flaky test-fs-stream-construct (Rich Trott) [#34203](https://github.com/nodejs/node/pull/34203)
* [[`9b8d317d99`](https://github.com/nodejs/node/commit/9b8d317d99)] - **test**: fix flaky test-http2-invalidheaderfield (Rich Trott) [#34173](https://github.com/nodejs/node/pull/34173)
* [[`2ccf15b2bf`](https://github.com/nodejs/node/commit/2ccf15b2bf)] - **test**: ensure finish is emitted before destroy (Robert Nagy) [#33137](https://github.com/nodejs/node/pull/33137)
* [[`27f3530da3`](https://github.com/nodejs/node/commit/27f3530da3)] - **test**: remove unnecessary eslint-disable comment (Rich Trott) [#34000](https://github.com/nodejs/node/pull/34000)
* [[`326a79ebb9`](https://github.com/nodejs/node/commit/326a79ebb9)] - **test**: fix typo in test-quic-client-empty-preferred-address.js (gengjiawen) [#33976](https://github.com/nodejs/node/pull/33976)
* [[`b0b268f5a2`](https://github.com/nodejs/node/commit/b0b268f5a2)] - **test**: fix flaky fs-construct test (Robert Nagy) [#33625](https://github.com/nodejs/node/pull/33625)
* [[`cbe955c227`](https://github.com/nodejs/node/commit/cbe955c227)] - **test**: add net regression test (Robert Nagy) [#32794](https://github.com/nodejs/node/pull/32794)
* [[`5d179cb2ec`](https://github.com/nodejs/node/commit/5d179cb2ec)] - **timers**: use AbortController with correct name/message (Anna Henningsen) [#34763](https://github.com/nodejs/node/pull/34763)
* [[`64d22c320c`](https://github.com/nodejs/node/commit/64d22c320c)] - **timers**: fix multipleResolves in promisified timeouts/immediates (Denys Otrishko) [#33949](https://github.com/nodejs/node/pull/33949)
* [[`fbe33aa52e`](https://github.com/nodejs/node/commit/fbe33aa52e)] - **tools**: bump remark-lint-preset-node to 1.17.1 (Rich Trott) [#35668](https://github.com/nodejs/node/pull/35668)
* [[`35a6946193`](https://github.com/nodejs/node/commit/35a6946193)] - **tools**: update gyp-next to v0.6.2 (Michaël Zasso) [#35690](https://github.com/nodejs/node/pull/35690)
* [[`be80faa0c8`](https://github.com/nodejs/node/commit/be80faa0c8)] - **tools**: update gyp-next to v0.6.0 (Ujjwal Sharma) [#35635](https://github.com/nodejs/node/pull/35635)
* [[`2d83e743d9`](https://github.com/nodejs/node/commit/2d83e743d9)] - **tools**: update ESLint to 7.11.0 (Colin Ihrig) [#35578](https://github.com/nodejs/node/pull/35578)
* [[`0eca660948`](https://github.com/nodejs/node/commit/0eca660948)] - **tools**: update ESLint to 7.7.0 (Colin Ihrig) [#34783](https://github.com/nodejs/node/pull/34783)
* [[`77b68f9a29`](https://github.com/nodejs/node/commit/77b68f9a29)] - **tools**: add linting rule for async IIFEs (Anna Henningsen) [#34363](https://github.com/nodejs/node/pull/34363)
* [[`f04538761f`](https://github.com/nodejs/node/commit/f04538761f)] - **tools**: enable Node.js command line flags in node\_mksnapshot (Joyee Cheung) [#32984](https://github.com/nodejs/node/pull/32984)
* [[`b0d4eb37c7`](https://github.com/nodejs/node/commit/b0d4eb37c7)] - **tools**: update ESLint to 7.4.0 (Colin Ihrig) [#34205](https://github.com/nodejs/node/pull/34205)
* [[`076e4ed2d1`](https://github.com/nodejs/node/commit/076e4ed2d1)] - **tools**: update ESLint from 7.2.0 to 7.3.1 (Rich Trott) [#34000](https://github.com/nodejs/node/pull/34000)
* [[`7afe3af200`](https://github.com/nodejs/node/commit/7afe3af200)] - **url**: fix file url reparse (Daijiro Wachi) [#35671](https://github.com/nodejs/node/pull/35671)

View File

@ -58,6 +58,7 @@
</table>
* Other Versions
* [15.x](CHANGELOG_V15.md)
* [14.x](CHANGELOG_V14.md)
* [13.x](CHANGELOG_V13.md)
* [12.x](CHANGELOG_V12.md)

View File

@ -34,6 +34,7 @@
</table>
* Other Versions
* [15.x](CHANGELOG_V15.md)
* [14.x](CHANGELOG_V14.md)
* [13.x](CHANGELOG_V13.md)
* [12.x](CHANGELOG_V12.md)

View File

@ -63,6 +63,7 @@
</table>
* Other Versions
* [15.x](CHANGELOG_V15.md)
* [14.x](CHANGELOG_V14.md)
* [13.x](CHANGELOG_V13.md)
* [12.x](CHANGELOG_V12.md)

View File

@ -32,6 +32,7 @@
</table>
* Other Versions
* [15.x](CHANGELOG_V15.md)
* [14.x](CHANGELOG_V14.md)
* [13.x](CHANGELOG_V13.md)
* [12.x](CHANGELOG_V12.md)

View File

@ -54,6 +54,7 @@
</table>
* Other Versions
* [15.x](CHANGELOG_V15.md)
* [14.x](CHANGELOG_V14.md)
* [13.x](CHANGELOG_V13.md)
* [12.x](CHANGELOG_V12.md)

View File

@ -33,6 +33,7 @@
</table>
* Other Versions
* [15.x](CHANGELOG_V15.md)
* [14.x](CHANGELOG_V14.md)
* [13.x](CHANGELOG_V13.md)
* [12.x](CHANGELOG_V12.md)

View File

@ -22,7 +22,7 @@
#ifndef SRC_NODE_VERSION_H_
#define SRC_NODE_VERSION_H_
#define NODE_MAJOR_VERSION 15
#define NODE_MAJOR_VERSION 16
#define NODE_MINOR_VERSION 0
#define NODE_PATCH_VERSION 0