diff options
| author | Beth Griggs <Bethany.Griggs@uk.ibm.com> | 2020-09-01 21:16:46 +0100 |
|---|---|---|
| committer | Beth Griggs <Bethany.Griggs@uk.ibm.com> | 2020-10-20 12:05:10 +0100 |
| commit | d683e3dda09b6b3cc6cad6fd2c106e3061a48f0d (patch) | |
| tree | 6cc1650ce343b9c817653dfae37076bbc60c6849 /doc/api | |
| parent | 11f1ad939f902ddbeb406350a6162359e04c13ec (diff) | |
| download | node-new-v15.0.0-proposal.tar.gz | |
2020-10-20, Version 15.0.0 (Current)v15.0.0v15.0.0-proposal
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
Diffstat (limited to 'doc/api')
| -rw-r--r-- | doc/api/assert.md | 2 | ||||
| -rw-r--r-- | doc/api/buffer.md | 6 | ||||
| -rw-r--r-- | doc/api/cli.md | 6 | ||||
| -rw-r--r-- | doc/api/crypto.md | 54 | ||||
| -rw-r--r-- | doc/api/deprecations.md | 18 | ||||
| -rw-r--r-- | doc/api/dns.md | 4 | ||||
| -rw-r--r-- | doc/api/embedding.md | 2 | ||||
| -rw-r--r-- | doc/api/errors.md | 52 | ||||
| -rw-r--r-- | doc/api/events.md | 6 | ||||
| -rw-r--r-- | doc/api/globals.md | 24 | ||||
| -rw-r--r-- | doc/api/http2.md | 4 | ||||
| -rw-r--r-- | doc/api/net.md | 14 | ||||
| -rw-r--r-- | doc/api/process.md | 2 | ||||
| -rw-r--r-- | doc/api/quic.md | 302 | ||||
| -rw-r--r-- | doc/api/stream.md | 2 | ||||
| -rw-r--r-- | doc/api/url.md | 6 | ||||
| -rw-r--r-- | doc/api/webcrypto.md | 250 |
17 files changed, 377 insertions, 377 deletions
diff --git a/doc/api/assert.md b/doc/api/assert.md index 1478515c81..54e4bc172a 100644 --- a/doc/api/assert.md +++ b/doc/api/assert.md @@ -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: diff --git a/doc/api/buffer.md b/doc/api/buffer.md index 484d575e7c..29eec8fca1 100644 --- a/doc/api/buffer.md +++ b/doc/api/buffer.md @@ -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. diff --git a/doc/api/cli.md b/doc/api/cli.md index cb1d1ff2f4..4e68a860a0 100644 --- a/doc/api/cli.md +++ b/doc/api/cli.md @@ -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 diff --git a/doc/api/crypto.md b/doc/api/crypto.md index 2e1744910b..95a5c68baf 100644 --- a/doc/api/crypto.md +++ b/doc/api/crypto.md @@ -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. diff --git a/doc/api/deprecations.md b/doc/api/deprecations.md index 093bef796d..326f470585 100644 --- a/doc/api/deprecations.md +++ b/doc/api/deprecations.md @@ -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 diff --git a/doc/api/dns.md b/doc/api/dns.md index 875655fe62..a1f4240981 100644 --- a/doc/api/dns.md +++ b/doc/api/dns.md @@ -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} diff --git a/doc/api/embedding.md b/doc/api/embedding.md index 82c87f5890..4bae63aae2 100644 --- a/doc/api/embedding.md +++ b/doc/api/embedding.md @@ -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. diff --git a/doc/api/errors.md b/doc/api/errors.md index a7aad1c746..192c4ecf57 100644 --- a/doc/api/errors.md +++ b/doc/api/errors.md @@ -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. diff --git a/doc/api/events.md b/doc/api/events.md index 68e2323167..b6403e812e 100644 --- a/doc/api/events.md +++ b/doc/api/events.md @@ -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. diff --git a/doc/api/globals.md b/doc/api/globals.md index 4191c1e017..65fb472e24 100644 --- a/doc/api/globals.md +++ b/doc/api/globals.md @@ -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 --> diff --git a/doc/api/http2.md b/doc/api/http2.md index 632930da7e..bc3bebd11b 100644 --- a/doc/api/http2.md +++ b/doc/api/http2.md @@ -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} diff --git a/doc/api/net.md b/doc/api/net.md index d23b8c0c91..7c777df33a 100644 --- a/doc/api/net.md +++ b/doc/api/net.md @@ -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][] diff --git a/doc/api/process.md b/doc/api/process.md index 5568adfb6f..fd7e499ee6 100644 --- a/doc/api/process.md +++ b/doc/api/process.md @@ -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. --> diff --git a/doc/api/quic.md b/doc/api/quic.md index 1cd72dd41b..78428f7c24 100644 --- a/doc/api/quic.md +++ b/doc/api/quic.md @@ -1,6 +1,6 @@ # QUIC -<!--introduced_in=REPLACEME--> +<!--introduced_in=v15.0.0--> > Stability: 1 - Experimental @@ -251,7 +251,7 @@ TBD ### `net.createQuicSocket([options])` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `options` {Object} @@ -294,7 +294,7 @@ instances associated with a local UDP address. ### Class: `QuicEndpoint` <!-- YAML -added: REPLACEME +added: v15.0.0 --> The `QuicEndpoint` wraps a local UDP binding used by a `QuicSocket` to send @@ -305,7 +305,7 @@ Users will not create instances of `QuicEndpoint` directly. #### `quicendpoint.addMembership(address, iface)` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `address` {string} @@ -320,7 +320,7 @@ interface. #### `quicendpoint.address` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: Address @@ -338,7 +338,7 @@ If the `QuicEndpoint` is not bound, `quicendpoint.address` is an empty object. #### `quicendpoint.bind([options])` <!-- YAML -added: REPLACEME +added: v15.0.0 --> Binds the `QuicEndpoint` if it has not already been bound. User code will @@ -366,7 +366,7 @@ pending `Promise` will be returned. If the additional call to #### `quicendpoint.bound` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {boolean} @@ -375,7 +375,7 @@ Set to `true` if the `QuicEndpoint` is bound to the local UDP port. #### `quicendpoint.close()` <!-- YAML -added: REPLACEME +added: v15.0.0 --> Closes and destroys the `QuicEndpoint`. Returns a `Promise` that is resolved @@ -389,7 +389,7 @@ The `Promise` cannot be canceled. Once `quicendpoint.close()` is called, the #### `quicendpoint.closing` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {boolean} @@ -398,7 +398,7 @@ Set to `true` if the `QuicEndpoint` is in the process of closing. #### `quicendpoint.destroy([error])` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `error` {Object} An `Error` object. @@ -407,7 +407,7 @@ Closes and destroys the `QuicEndpoint` instance making it unusable. #### `quicendpoint.destroyed` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {boolean} @@ -416,7 +416,7 @@ Set to `true` if the `QuicEndpoint` has been destroyed. #### `quicendpoint.dropMembership(address, iface)` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `address` {string} @@ -432,7 +432,7 @@ drop membership on all valid interfaces. #### `quicendpoint.fd` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {integer} @@ -442,7 +442,7 @@ is not set on Windows. #### `quicendpoint.pending` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {boolean} @@ -452,12 +452,12 @@ the local UDP port. #### `quicendpoint.ref()` <!-- YAML -added: REPLACEME +added: v15.0.0 --> #### `quicendpoint.setBroadcast([on])` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `on` {boolean} @@ -467,7 +467,7 @@ packets may be sent to a local interface's broadcast address. #### `quicendpoint.setMulticastInterface(iface)` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `iface` {string} @@ -493,7 +493,7 @@ successful use of this call. ##### Examples: IPv6 outgoing multicast interface <!-- YAML -added: REPLACEME +added: v15.0.0 --> On most systems, where scope format uses the interface name: @@ -519,7 +519,7 @@ socket.on('ready', () => { ##### Example: IPv4 outgoing multicast interface <!-- YAML -added: REPLACEME +added: v15.0.0 --> All systems use an IP of the host on the desired physical interface: @@ -554,7 +554,7 @@ the system for future multicast packets. #### `quicendpoint.setMulticastLoopback([on])` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `on` {boolean} @@ -564,7 +564,7 @@ multicast packets will also be received on the local interface. #### `quicendpoint.setMulticastTTL(ttl)` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `ttl` {number} @@ -580,7 +580,7 @@ The argument passed to `setMulticastTTL()` is a number of hops between #### `quicendpoint.setTTL(ttl)` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `ttl` {number} @@ -596,12 +596,12 @@ The default on most systems is `64` but can vary. #### `quicendpoint.unref()` <!-- YAML -added: REPLACEME +added: v15.0.0 --> ### Class: `QuicSession extends EventEmitter` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Extends: {EventEmitter} @@ -612,7 +612,7 @@ Users will not create instances of `QuicSession` directly. #### Event: `'close'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> Emitted after the `QuicSession` has been destroyed and is no longer usable. @@ -621,7 +621,7 @@ The `'close'` event will not be emitted more than once. #### Event: `'error'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> Emitted immediately before the `'close'` event if the `QuicSession` was @@ -635,7 +635,7 @@ The `'error'` event will not be emitted more than once. #### Event: `'keylog'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> Emitted when key material is generated or received by a `QuicSession` @@ -660,7 +660,7 @@ The `'keylog'` event will be emitted multiple times. #### Event: `'pathValidation'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> Emitted when a path validation result has been determined. This event @@ -678,7 +678,7 @@ The `'pathValidation'` event will be emitted multiple times. #### Event: `'secure'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> Emitted after the TLS handshake has been completed. @@ -698,7 +698,7 @@ The `'secure'` event will not be emitted more than once. #### Event: `'stream'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> Emitted when a new `QuicStream` has been initiated by the connected peer. @@ -707,7 +707,7 @@ The `'stream'` event may be emitted multiple times. #### `quicsession.ackDelayRetransmitCount` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -716,7 +716,7 @@ The number of retransmissions caused by delayed acknowledgments. #### `quicsession.address` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {Object} @@ -730,7 +730,7 @@ the `QuicSession` is currently associated. #### `quicsession.alpnProtocol` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {string} @@ -739,7 +739,7 @@ The ALPN protocol identifier negotiated for this session. #### `quicsession.authenticated` <!--YAML -added: REPLACEME +added: v15.0.0 --> * Type: {boolean} @@ -755,7 +755,7 @@ representing the reason the peer certificate verification failed. #### `quicsession.bidiStreamCount` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -764,7 +764,7 @@ The total number of bidirectional streams created for this `QuicSession`. #### `quicsession.blockCount` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -777,7 +777,7 @@ quickly enough by the connected peer. #### `quicsession.bytesInFlight` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -787,7 +787,7 @@ to the connected peer. #### `quicsession.bytesReceived` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -796,7 +796,7 @@ The total number of bytes received from the peer. #### `quicsession.bytesSent` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -805,7 +805,7 @@ The total number of bytes sent to the peer. #### `quicsession.cipher` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {Object} @@ -816,7 +816,7 @@ Information about the cipher algorithm selected for the session. #### `quicsession.close()` <!-- YAML -added: REPLACEME +added: v15.0.0 --> Begins a graceful close of the `QuicSession`. Existing `QuicStream` instances @@ -827,7 +827,7 @@ instance will be destroyed. Returns a `Promise` that is resolved once the #### `quicsession.closeCode` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {Object} * `code` {number} The error code reported when the `QuicSession` closed. @@ -837,7 +837,7 @@ added: REPLACEME #### `quicsession.closing` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {boolean} @@ -846,7 +846,7 @@ Set to `true` if the `QuicSession` is in the process of a graceful shutdown. #### `quicsession.destroy([error])` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `error` {any} @@ -859,7 +859,7 @@ Any `QuicStream` instances that are still opened will be abruptly closed. #### `quicsession.destroyed` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {boolean} @@ -868,7 +868,7 @@ Set to `true` if the `QuicSession` has been destroyed. #### `quicsession.duration` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -877,7 +877,7 @@ The length of time the `QuicSession` was active. #### `quicsession.getCertificate()` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Returns: {Object} A [Certificate Object][]. @@ -890,7 +890,7 @@ an empty object will be returned. #### `quicsession.getPeerCertificate([detailed])` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `detailed` {boolean} Include the full certificate chain if `true`, otherwise @@ -907,21 +907,21 @@ representing the issuer's certificate. #### `quicsession.handshakeAckHistogram` <!-- YAML -added: REPLACEME +added: v15.0.0 --> TBD #### `quicsession.handshakeContinuationHistogram` <!-- YAML -added: REPLACEME +added: v15.0.0 --> TBD #### `quicsession.handshakeComplete` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {boolean} @@ -930,7 +930,7 @@ Set to `true` if the TLS handshake has completed. #### `quicsession.handshakeConfirmed` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {boolean} @@ -939,7 +939,7 @@ Set to `true` when the TLS handshake completion has been confirmed. #### `quicsession.handshakeDuration` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -948,7 +948,7 @@ The length of time taken to complete the TLS handshake. #### `quicsession.idleTimeout` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {boolean} @@ -957,7 +957,7 @@ Set to `true` if the `QuicSession` was closed due to an idle timeout. #### `quicsession.keyUpdateCount` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -966,7 +966,7 @@ The number of key update operations that have occurred. #### `quicsession.latestRTT` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -975,7 +975,7 @@ The most recently recorded RTT for this `QuicSession`. #### `quicsession.lossRetransmitCount` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -985,7 +985,7 @@ this `QuicSession`. #### `quicsession.maxDataLeft` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -995,7 +995,7 @@ send to the connected peer. #### `quicsession.maxInFlightBytes` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -1004,7 +1004,7 @@ The maximum number of in-flight bytes recorded for this `QuicSession`. #### `quicsession.maxStreams` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {Object} @@ -1018,7 +1018,7 @@ of the `QuicSession` as the connected peer allows new streams to be created. #### `quicsession.minRTT` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -1027,7 +1027,7 @@ The minimum RTT recorded so far for this `QuicSession`. #### `quicsession.openStream([options])` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `options` {Object} * `halfOpen` {boolean} Set to `true` to open a unidirectional stream, `false` @@ -1048,7 +1048,7 @@ from opening a new stream. #### `quicsession.ping()` <!--YAML -added: REPLACEME +added: v15.0.0 --> The `ping()` method will trigger the underlying QUIC connection to serialize @@ -1061,7 +1061,7 @@ of the `ping()` operation. #### `quicsession.peerInitiatedStreamCount` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -1070,7 +1070,7 @@ The total number of `QuicStreams` initiated by the connected peer. #### `quicsession.qlog` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {stream.Readable} @@ -1083,7 +1083,7 @@ is emitted. #### `quicsession.remoteAddress` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {Object} @@ -1096,7 +1096,7 @@ An object containing the remote address information for the connected peer. #### `quicsession.selfInitiatedStreamCount` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -1105,7 +1105,7 @@ The total number of `QuicStream` instances initiated by this `QuicSession`. #### `quicsession.servername` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {string} @@ -1114,7 +1114,7 @@ The SNI servername requested for this session by the client. #### `quicsession.smoothedRTT` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -1123,7 +1123,7 @@ The modified RTT calculated for this `QuicSession`. #### `quicsession.socket` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {QuicSocket} @@ -1132,7 +1132,7 @@ The `QuicSocket` the `QuicSession` is associated with. #### `quicsession.statelessReset` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {boolean} @@ -1141,7 +1141,7 @@ True if the `QuicSession` was closed due to QUIC stateless reset. #### `quicsession.uniStreamCount` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -1150,7 +1150,7 @@ The total number of unidirectional streams created on this `QuicSession`. #### `quicsession.updateKey()` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Returns: {boolean} `true` if the key update operation is successfully @@ -1163,7 +1163,7 @@ is equal to `true`. #### `quicsession.usingEarlyData` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {boolean} @@ -1175,7 +1175,7 @@ accepted by the server. ### Class: `QuicClientSession extends QuicSession` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Extends: {QuicSession} @@ -1185,7 +1185,7 @@ Instances are created using the `quicsocket.connect()` method. #### Event: `'sessionTicket'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> The `'sessionTicket'` event is emitted when a new TLS session ticket has been @@ -1203,7 +1203,7 @@ The `'sessionTicket'` event may be emitted multiple times. #### Event: `'qlog'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> The `'qlog'` event is emitted when the `QuicClientSession` is ready to begin @@ -1214,7 +1214,7 @@ providing `qlog` event data. The callback is invoked with a single argument: #### Event: `'usePreferredAddress'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> The `'usePreferredAddress'` event is emitted when the client `QuicSession` @@ -1233,7 +1233,7 @@ The `'usePreferredAddress'` event will not be emitted more than once. #### `quicclientsession.ephemeralKeyInfo` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {Object} @@ -1248,7 +1248,7 @@ For example: `{ type: 'ECDH', name: 'prime256v1', size: 256 }`. #### `quicclientsession.setSocket(socket[, natRebinding])` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `socket` {QuicSocket} A `QuicSocket` instance to move this session to. @@ -1264,7 +1264,7 @@ to attempting the migration. ### Class: `QuicServerSession extends QuicSession` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Extends: {QuicSession} @@ -1275,7 +1275,7 @@ Instances are created internally and are emitted using the `QuicSocket` ### Class: `QuicSocket` <!-- YAML -added: REPLACEME +added: v15.0.0 --> New instances of `QuicSocket` are created using the `net.createQuicSocket()` @@ -1283,7 +1283,7 @@ method, and can be used as both a client and a server. #### Event: `'busy'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> Emitted when the server busy state has been toggled using @@ -1311,7 +1311,7 @@ This `'busy'` event may be emitted multiple times. #### Event: `'close'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> Emitted after the `QuicSocket` has been destroyed and is no longer usable. @@ -1320,7 +1320,7 @@ The `'close'` event will only ever be emitted once. #### Event: `'endpointClose'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> Emitted after a `QuicEndpoint` associated with the `QuicSocket` closes and @@ -1335,7 +1335,7 @@ closed, the `QuicEndpoint` will also automatically close. #### Event: `'error'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> Emitted before the `'close'` event if the `QuicSocket` was destroyed with an @@ -1345,7 +1345,7 @@ The `'error'` event will only ever be emitted once. #### Event: `'listening'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> Emitted after `quicsocket.listen()` is called and the `QuicSocket` has started @@ -1356,7 +1356,7 @@ The `'listening'` event will only ever be emitted once. #### Event: `'ready'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> Emitted once the `QuicSocket` has been bound to a local UDP port. @@ -1365,7 +1365,7 @@ The `'ready'` event will only ever be emitted once. #### Event: `'session'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> Emitted when a new `QuicServerSession` has been created. The callback is @@ -1395,7 +1395,7 @@ automatically and emitting a `'sessionError'` event on the `QuicSocket`. #### Event: `'sessionError'` <!--YAML -added: REPLACEME +added: v15.0.0 --> Emitted when an error occurs processing an event related to a specific @@ -1425,7 +1425,7 @@ server.on('sessionError', (error, session) => { #### `quicsocket.addEndpoint(options)` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `options`: {Object} An object describing the local address to bind to. @@ -1447,7 +1447,7 @@ the `QuicSocket` has been destroyed. #### `quicsocket.blockList` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {net.BlockList} @@ -1465,7 +1465,7 @@ connection attempt will be rejected. #### `quicsocket.bound` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {boolean} @@ -1482,7 +1482,7 @@ Read-only. #### `quicsocket.boundDuration` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -1493,7 +1493,7 @@ Read-only. #### `quicsocket.bytesReceived` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -1504,7 +1504,7 @@ Read-only. #### `quicsocket.bytesSent` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -1515,7 +1515,7 @@ Read-only. #### `quicsocket.clientSessions` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -1527,7 +1527,7 @@ Read-only. #### `quicsocket.close()` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Returns: {Promise} @@ -1539,7 +1539,7 @@ the `QuicSocket` is destroyed. #### `quicsocket.connect([options])` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `options` {Object} @@ -1671,7 +1671,7 @@ Returns a `Promise` that resolves a new `QuicClientSession`. #### `quicsocket.destroy([error])` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `error` {any} @@ -1681,7 +1681,7 @@ event will be emitted after `'close'` if the `error` is not `undefined`. #### `quicsocket.destroyed` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {boolean} @@ -1692,7 +1692,7 @@ Read-only. #### `quicsocket.duration` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -1703,7 +1703,7 @@ Read-only. #### `quicsocket.endpoints` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {QuicEndpoint[]} @@ -1714,7 +1714,7 @@ Read-only. #### `quicsocket.listen([options])` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `options` {Object} @@ -1837,7 +1837,7 @@ once the `QuicSocket` is actively listening. #### `quicsocket.listenDuration` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -1848,7 +1848,7 @@ Read-only #### `quicsocket.listening` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {boolean} @@ -1859,7 +1859,7 @@ Read-only. #### `quicsocket.packetsIgnored` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -1870,7 +1870,7 @@ Read-only. #### `quicsocket.packetsReceived` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -1881,7 +1881,7 @@ Read-only #### `quicsocket.packetsSent` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -1892,7 +1892,7 @@ Read-only #### `quicsocket.pending` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {boolean} @@ -1903,12 +1903,12 @@ Read-only. #### `quicsocket.ref()` <!-- YAML -added: REPLACEME +added: v15.0.0 --> #### `quicsocket.serverBusy` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {boolean} When `true`, the `QuicSocket` will reject new connections. @@ -1920,7 +1920,7 @@ error code. To begin receiving connections again, disable busy mode by setting #### `quicsocket.serverBusyCount` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -1931,7 +1931,7 @@ Read-only. #### `quicsocket.serverSessions` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -1943,7 +1943,7 @@ Read-only. #### `quicsocket.setDiagnosticPacketLoss(options)` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `options` {Object} @@ -1960,7 +1960,7 @@ This method is *not* to be used in production applications. #### `quicsocket.statelessReset` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {boolean} `true` if stateless reset processing is enabled; `false` @@ -1974,7 +1974,7 @@ off dynamically through the lifetime of the `QuicSocket`. #### `quicsocket.statelessResetCount` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -1985,19 +1985,19 @@ Read-only. #### `quicsocket.unref();` <!-- YAML -added: REPLACEME +added: v15.0.0 --> ### Class: `QuicStream extends stream.Duplex` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Extends: {stream.Duplex} #### Event: `'blocked'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> Emitted when the `QuicStream` has been prevented from sending queued data for @@ -2005,7 +2005,7 @@ the `QuicStream` due to congestion control. #### Event: `'close'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> Emitted when the `QuicStream` has is completely closed and the underlying @@ -2013,22 +2013,22 @@ resources have been freed. #### Event: `'data'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> #### Event: `'end'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> #### Event: `'error'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> #### Event: `'informationalHeaders'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> Emitted when the `QuicStream` has received a block of informational headers. @@ -2048,7 +2048,7 @@ stream('informationalHeaders', (headers) => { #### Event: `'initialHeaders'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> Emitted when the `QuicStream` has received a block of initial headers. @@ -2070,7 +2070,7 @@ stream('initialHeaders', (headers) => { #### Event: `'trailingHeaders'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> Emitted when the `QuicStream` has received a block of trailing headers. @@ -2092,12 +2092,12 @@ stream('trailingHeaders', (headers) => { #### Event: `'readable'` <!-- YAML -added: REPLACEME +added: v15.0.0 --> #### `quicstream.bidirectional` <!--YAML -added: REPLACEME +added: v15.0.0 --> * Type: {boolean} @@ -2109,7 +2109,7 @@ Read-only. #### `quicstream.bytesReceived` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -2120,7 +2120,7 @@ Read-only. #### `quicstream.bytesSent` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -2131,7 +2131,7 @@ Read-only. #### `quicstream.clientInitiated` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {boolean} @@ -2143,7 +2143,7 @@ Read-only. #### `quicstream.close()` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Returns: {Promise} @@ -2153,27 +2153,27 @@ Returns a `Promise` that is resolved once the `QuicStream` has been destroyed. #### `quicstream.dataAckHistogram` <!-- YAML -added: REPLACEME +added: v15.0.0 --> TBD #### `quicstream.dataRateHistogram` <!-- YAML -added: REPLACEME +added: v15.0.0 --> TBD #### `quicstream.dataSizeHistogram` <!-- YAML -added: REPLACEME +added: v15.0.0 --> TBD #### `quicstream.duration` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -2184,7 +2184,7 @@ Read-only. #### `quicstream.finalSize` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -2195,7 +2195,7 @@ Read-only. #### `quicstream.id` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -2206,7 +2206,7 @@ Read-only. #### `quicstream.maxAcknowledgedOffset` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -2217,7 +2217,7 @@ Read-only. #### `quicstream.maxExtendedOffset` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -2228,7 +2228,7 @@ Read-only. #### `quicstream.maxReceivedOffset` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {number} @@ -2239,7 +2239,7 @@ Read-only. #### `quicstream.pushStream(headers[, options])` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `headers` {Object} An object representing a block of headers to be @@ -2265,7 +2265,7 @@ error will be thrown. #### `quicstream.serverInitiated` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {boolean} @@ -2277,7 +2277,7 @@ Read-only. #### `quicstream.session` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {QuicSession} @@ -2289,7 +2289,7 @@ Read-only. #### `quicstream.sendFD(fd[, options])` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `fd` {number|FileHandle} A readable file descriptor. @@ -2315,7 +2315,7 @@ after a stream has finished is supported. #### `quicstream.sendFile(path[, options])` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `path` {string|Buffer|URL} @@ -2337,7 +2337,7 @@ bytes that are read from the file. #### `quicstream.submitInformationalHeaders(headers)` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `headers` {Object} @@ -2345,7 +2345,7 @@ TBD #### `quicstream.submitInitialHeaders(headers)` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `headers` {Object} @@ -2353,7 +2353,7 @@ TBD #### `quicstream.submitTrailingHeaders(headers)` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * `headers` {Object} @@ -2361,7 +2361,7 @@ TBD #### `quicstream.unidirectional` <!-- YAML -added: REPLACEME +added: v15.0.0 --> * Type: {boolean} diff --git a/doc/api/stream.md b/doc/api/stream.md index 20c7b0db6a..fd70a662ac 100644 --- a/doc/api/stream.md +++ b/doc/api/stream.md @@ -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 diff --git a/doc/api/url.md b/doc/api/url.md index f3a76a6c45..e3f1adba94 100644 --- a/doc/api/url.md +++ b/doc/api/url.md @@ -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. --> diff --git a/doc/api/webcrypto.md b/doc/api/webcrypto.md index 9a067ceabe..ce9999a744 100644 --- a/doc/api/webcrypto.md +++ b/doc/api/webcrypto.md @@ -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} |
