Skip to content

Commit 0442e86

Browse files
committed
2021-10-19, Version 17.0.0 (Current)
Notable Changes: Deprecations and Removals: - (SEMVER-MAJOR) dns: runtime deprecate type coercion of `dns.lookup` options (Antoine du Hamel) [#39793] - doc: deprecate (doc-only) http abort related (dr-js) [#36670] - (SEMVER-MAJOR) module: subpath folder mappings EOL (Guy Bedford) [#40121] - (SEMVER-MAJOR) module: runtime deprecate trailing slash patterns (Guy Bedford) [#40117] OpenSSL 3.0: Node.js now includes OpenSSL 3.0, specifically https://github.com/quictls/openssl which provides QUIC support. For details about all the features in OpenSSL 3.0 please see https://www.openssl.org/blog/blog/2021/09/07/OpenSSL3.Final. (Daniel Bevenius) [#38512] V8 9.5: The V8 JavaScript engine is updated to V8 9.5. This release comes with additional supported types for the `Intl.DisplayNames` API and Extended `timeZoneName` options in the `Intl.DateTimeFormat` API. You can read more details in the V8 9.5 release post https://v8.dev/blog/v8-release-95. (Michaël Zasso) [#40178] Readline Promise API: The `readline` module provides an interface for reading data from a Readable stream (such as `process.stdin`) one line at a time. (Antoine du Hamel) [#37947] Other Notable Changes: - (SEMVER-MAJOR) dns: default to verbatim=true in dns.lookup() (treysis) [#39987] - (SEMVER-MAJOR) errors: print Node.js version on fatal exceptions that cause exit (Divlo) [#38332] - (SEMVER-MINOR) fs: add FileHandle.prototype.readableWebStream() (James M Snell) [#39331] - (SEMVER-MAJOR) lib: add structuredClone() global (Ethan Arrowood) [#39759] - (SEMVER-MAJOR) lib: expose `DOMException` as global (Khaidi Chu) [#39176] - (SEMVER-MAJOR) stream: finished should error on errored stream (Robert Nagy) [#39235] Semver-Major Commits: - (SEMVER-MAJOR) build: compile with C++17 (MSVC) (Richard Lau) [#38807] - (SEMVER-MAJOR) build: compile with --gnu++17 (Richard Lau) [#38807] - (SEMVER-MAJOR) deps: update V8 to 9.5.172.19 (Michaël Zasso) [#40178] - (SEMVER-MAJOR) deps,test,src,doc,tools: update to OpenSSL 3.0 (Daniel Bevenius) [#38512] - (SEMVER-MAJOR) dgram: tighten `address` validation in `socket.send` (Voltrex) [#39190] - (SEMVER-MAJOR) dns: runtime deprecate type coercion of `dns.lookup` options (Antoine du Hamel) [#39793] - (SEMVER-MAJOR) dns: default to verbatim=true in dns.lookup() (treysis) [#39987] - (SEMVER-MAJOR) doc: update minimum supported FreeBSD to 12.2 (Michaël Zasso) [#40179] - (SEMVER-MAJOR) errors: disp ver on fatal except that causes exit (Divlo) [#38332] - (SEMVER-MAJOR) fs: fix rmsync error swallowing (Nitzan Uziely) [#38684] - (SEMVER-MAJOR) fs: aggregate errors in fsPromises to avoid error swallowing (Nitzan Uziely) [#38259] - (SEMVER-MAJOR) lib: add structuredClone() global (Ethan Arrowood) [#39759] - (SEMVER-MAJOR) lib: expose `DOMException` as global (Khaidi Chu) [#39176] - (SEMVER-MAJOR) module: subpath folder mappings EOL (Guy Bedford) [#40121] - (SEMVER-MAJOR) module: runtime deprecate trailing slash patterns (Guy Bedford) [#40117] - (SEMVER-MAJOR) readline: validate `AbortSignal`s and remove unused event listeners (Antoine du Hamel) [#37947] - (SEMVER-MAJOR) readline: introduce promise-based API (Antoine du Hamel) [#37947] - (SEMVER-MAJOR) readline: refactor `Interface` to ES2015 class (Antoine du Hamel) [#37947] - (SEMVER-MAJOR) src: allow CAP\_NET\_BIND\_SERVICE in SafeGetenv (Daniel Bevenius) [#37727] - (SEMVER-MAJOR) src: return Maybe from a couple of functions (Darshan Sen) [#39603] - (SEMVER-MAJOR) src: allow custom PageAllocator in NodePlatform (Shelley Vohr) [#38362] - (SEMVER-MAJOR) stream: fix highwatermark threshold and add the missing error (Rongjian Zhang) [#38700] - (SEMVER-MAJOR) stream: don't emit 'data' after 'error' or 'close' (Robert Nagy) [#39639] - (SEMVER-MAJOR) stream: do not emit `end` on readable error (Szymon Marczak) [#39607] - (SEMVER-MAJOR) stream: forward errored to callback (Robert Nagy) [#39364] - (SEMVER-MAJOR) stream: destroy readable on read error (Robert Nagy) [#39342] - (SEMVER-MAJOR) stream: validate abort signal (Robert Nagy) [#39346] - (SEMVER-MAJOR) stream: unify stream utils (Robert Nagy) [#39294] - (SEMVER-MAJOR) stream: throw on premature close in Readable\ (Darshan Sen) [#39117] - (SEMVER-MAJOR) stream: finished should error on errored stream (Robert Nagy) [#39235] - (SEMVER-MAJOR) stream: error Duplex write/read if not writable/readable (Robert Nagy) [#34385] - (SEMVER-MAJOR) stream: bypass legacy destroy for pipeline and async iteration (Robert Nagy) [#38505] - (SEMVER-MAJOR) url: throw invalid this on detached accessors (James M Snell) [#39752] - (SEMVER-MAJOR) url: forbid certain confusable changes from being introduced by toASCII (Timothy Gu) [#38631] PR-URL: #40119
1 parent a278117 commit 0442e86

33 files changed

+304
-49
lines changed

CHANGELOG.md

+5
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
Select a Node.js version below to view the changelog history:
44

5+
* [Node.js 17](doc/changelogs/CHANGELOG\_V17.md) **Current**
56
* [Node.js 16](doc/changelogs/CHANGELOG\_V16.md) **Current**
67
* [Node.js 15](doc/changelogs/CHANGELOG\_V15.md) End-of-Life
78
* [Node.js 14](doc/changelogs/CHANGELOG\_V14.md) **Long Term Support**
@@ -27,11 +28,15 @@ release.
2728

2829
<table>
2930
<tr>
31+
<th title="Current"><a href="doc/changelogs/CHANGELOG_V17.md">17</a><sup>Current</sup></th>
3032
<th title="Current"><a href="doc/changelogs/CHANGELOG_V16.md">16</a><sup>Current</sup></th>
3133
<th title="LTS Until 2023-04"><a href="doc/changelogs/CHANGELOG_V14.md">14</a><sup>LTS</sup></th>
3234
<th title="LTS Until 2022-04"><a href="doc/changelogs/CHANGELOG_V12.md">12</a><sup>LTS</sup></th>
3335
</tr>
3436
<tr>
37+
<td valign="top">
38+
<b><a href="doc/changelogs/CHANGELOG_V17.md#17.0.0">17.0.0</a></b><br/>
39+
</td>
3540
<td valign="top">
3641
<b><a href="doc/changelogs/CHANGELOG_V16.md#16.11.1">16.11.1</a></b><br/>
3742
<a href="doc/changelogs/CHANGELOG_V16.md#16.11.0">16.11.0</a><br/>

doc/abi_version_registry.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"NODE_MODULE_VERSION": [
3-
{ "modules": 102,"runtime": "node", "variant": "v8_9.5", "versions": "17.0.0-pre" },
3+
{ "modules": 102,"runtime": "node", "variant": "v8_9.5", "versions": "17.0.0" },
44
{ "modules": 101,"runtime": "electron", "variant": "electron", "versions": "17" },
55
{ "modules": 100,"runtime": "node", "variant": "v8_9.4", "versions": "17.0.0-pre" },
66
{ "modules": 99, "runtime": "electron", "variant": "electron", "versions": "16" },

doc/api/cli.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -623,7 +623,7 @@ Silence deprecation warnings.
623623

624624
### `--no-extra-info-on-fatal-exception`
625625
<!-- YAML
626-
added: REPLACEME
626+
added: v17.0.0
627627
-->
628628

629629
Hide extra information on fatal exception that causes exit.

doc/api/deprecations.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -2707,7 +2707,7 @@ Use `fs.rm(path, { recursive: true, force: true })`,
27072707
### DEP0148: Folder mappings in `"exports"` (trailing `"/"`)
27082708
<!-- YAML
27092709
changes:
2710-
- version: REPLACEME
2710+
- version: v17.0.0
27112711
pr-url: https://github.com/nodejs/node/pull/40121
27122712
description: End-of-Life.
27132713
- version: v16.0.0
@@ -2795,7 +2795,7 @@ deprecated and should no longer be used.
27952795
### DEP0153: `dns.lookup` and `dnsPromises.lookup` options type coercion
27962796
<!-- YAML
27972797
changes:
2798-
- version: REPLACEME
2798+
- version: v17.0.0
27992799
pr-url: https://github.com/nodejs/node/pull/39793
28002800
description: Runtime deprecation.
28012801
- version: v16.8.0
@@ -2826,7 +2826,7 @@ and `'mgf1HashAlgorithm'`.
28262826
### DEP0155: Trailing slashes in pattern specifier resolutions
28272827
<!-- YAML
28282828
changes:
2829-
- version: REPLACEME
2829+
- version: v17.0.0
28302830
pr-url: https://github.com/nodejs/node/pull/40117
28312831
description: Runtime deprecation.
28322832
- version: v16.10.0
@@ -2843,7 +2843,7 @@ for package `"exports"` and `"imports"` pattern resolutions.
28432843
### DEP0156: `.aborted` property and `'abort'`, `'aborted'` event in `http`
28442844
<!-- YAML
28452845
changes:
2846-
- version: REPLACEME
2846+
- version: v17.0.0
28472847
pr-url: https://github.com/nodejs/node/pull/36670
28482848
description: Documentation-only deprecation.
28492849
-->

doc/api/dgram.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -468,7 +468,7 @@ if the socket is not connected.
468468
<!-- YAML
469469
added: v0.1.99
470470
changes:
471-
- version: REPLACEME
471+
- version: v17.0.0
472472
pr-url: https://github.com/nodejs/node/pull/39190
473473
description: The `address` parameter now only accepts a `string`, `null`
474474
or `undefined`.

doc/api/dns.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,7 @@ section if a custom port is used.
172172
<!-- YAML
173173
added: v0.1.90
174174
changes:
175-
- version: REPLACEME
175+
- version: v17.0.0
176176
pr-url: https://github.com/nodejs/node/pull/39987
177177
description: The `verbatim` options defaults to `true` now.
178178
- version: v8.5.0

doc/api/esm.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
added: v8.5.0
99
changes:
1010
- version:
11-
- REPLACEME
11+
- v17.0.0
1212
pr-url: https://github.com/nodejs/node/pull/37468
1313
description:
1414
Consolidate loader hooks, removed `getFormat`, `getSource`,

doc/api/fs.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -395,7 +395,7 @@ number of bytes read is zero.
395395
396396
#### `filehandle.readableWebStream()`
397397
<!-- YAML
398-
added: REPLACEME
398+
added: v17.0.0
399399
-->
400400
401401
> Stability: 1 - Experimental

doc/api/globals.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -383,7 +383,7 @@ added: v0.0.1
383383

384384
## `DOMException`
385385
<!-- YAML
386-
added: REPLACEME
386+
added: v17.0.0
387387
-->
388388

389389
<!-- type=global -->

doc/api/http.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -407,7 +407,7 @@ body which has been transmitted are equal or not.
407407
### Event: `'abort'`
408408
<!-- YAML
409409
added: v1.4.1
410-
deprecated: REPLACEME
410+
deprecated: v17.0.0
411411
-->
412412

413413
> Stability: 0 - Deprecated. Listen for the `'close'` event instead.
@@ -648,7 +648,7 @@ in the response to be dropped and the socket to be destroyed.
648648
### `request.aborted`
649649
<!-- YAML
650650
added: v0.11.14
651-
deprecated: REPLACEME
651+
deprecated: v17.0.0
652652
changes:
653653
- version: v11.0.0
654654
pr-url: https://github.com/nodejs/node/pull/20230
@@ -1994,7 +1994,7 @@ may be reused multiple times in case of keep-alive.
19941994
### Event: `'aborted'`
19951995
<!-- YAML
19961996
added: v0.3.8
1997-
deprecated: REPLACEME
1997+
deprecated: v17.0.0
19981998
-->
19991999

20002000
> Stability: 0 - Deprecated. Listen for `'close'` event instead.
@@ -2011,7 +2011,7 @@ Indicates that the underlying connection was closed.
20112011
### `message.aborted`
20122012
<!-- YAML
20132013
added: v10.1.0
2014-
deprecated: REPLACEME
2014+
deprecated: v17.0.0
20152015
-->
20162016

20172017
> Stability: 0 - Deprecated. Check `message.destroyed` from {stream.Readable}.

doc/api/readline.md

+13-13
Original file line numberDiff line numberDiff line change
@@ -536,14 +536,14 @@ line prompts are included in the calculations.
536536

537537
## Promises API
538538
<!-- YAML
539-
added: REPLACEME
539+
added: v17.0.0
540540
-->
541541

542542
> Stability: 1 - Experimental
543543
544544
### Class: `readlinePromises.Interface`
545545
<!-- YAML
546-
added: REPLACEME
546+
added: v17.0.0
547547
-->
548548

549549
* Extends: {readline.InterfaceConstructor}
@@ -556,7 +556,7 @@ and is read from, the `input` stream.
556556

557557
#### `rl.question(query[, options])`
558558
<!-- YAML
559-
added: REPLACEME
559+
added: v17.0.0
560560
-->
561561

562562
* `query` {string} A statement or query to write to `output`, prepended to the
@@ -602,12 +602,12 @@ setTimeout(() => ac.abort(), 10000);
602602

603603
### Class: `readlinePromises.Readline`
604604
<!-- YAML
605-
added: REPLACEME
605+
added: v17.0.0
606606
-->
607607

608608
#### `new readlinePromises.Readline(stream[, options])`
609609
<!-- YAML
610-
added: REPLACEME
610+
added: v17.0.0
611611
-->
612612

613613
* `stream` {stream.Writable} A [TTY][] stream.
@@ -616,7 +616,7 @@ added: REPLACEME
616616

617617
#### `rl.clearLine(dir)`
618618
<!-- YAML
619-
added: REPLACEME
619+
added: v17.0.0
620620
-->
621621

622622
* `dir` {integer}
@@ -633,7 +633,7 @@ was passed to the constructor.
633633

634634
#### `rl.clearScreenDown()`
635635
<!-- YAML
636-
added: REPLACEME
636+
added: v17.0.0
637637
-->
638638

639639
* Returns: this
@@ -646,7 +646,7 @@ was passed to the constructor.
646646

647647
#### `rl.commit()`
648648
<!-- YAML
649-
added: REPLACEME
649+
added: v17.0.0
650650
-->
651651

652652
* Returns: {Promise}
@@ -656,7 +656,7 @@ The `rl.commit()` method sends all the pending actions to the associated
656656

657657
#### `rl.cursorTo(x[, y])`
658658
<!-- YAML
659-
added: REPLACEME
659+
added: v17.0.0
660660
-->
661661

662662
* `x` {integer}
@@ -670,7 +670,7 @@ was passed to the constructor.
670670

671671
#### `rl.moveCursor(dx, dy)`
672672
<!-- YAML
673-
added: REPLACEME
673+
added: v17.0.0
674674
-->
675675

676676
* `dx` {integer}
@@ -685,7 +685,7 @@ was passed to the constructor.
685685

686686
#### `rl.rollback()`
687687
<!-- YAML
688-
added: REPLACEME
688+
added: v17.0.0
689689
-->
690690

691691
* Returns: this
@@ -695,7 +695,7 @@ sending it to the associated `stream`.
695695

696696
### `readlinePromises.createInterface(options)`
697697
<!-- YAML
698-
added: REPLACEME
698+
added: v17.0.0
699699
-->
700700

701701
* `options` {Object}
@@ -797,7 +797,7 @@ added: v0.1.104
797797
<!-- YAML
798798
added: v0.1.104
799799
changes:
800-
- version: REPLACEME
800+
- version: v17.0.0
801801
pr-url: https://github.com/nodejs/node/pull/37947
802802
description: The class `readline.Interface` now inherits from `Interface`.
803803
-->

doc/api/stream.md

+5-5
Original file line numberDiff line numberDiff line change
@@ -2108,7 +2108,7 @@ Returns whether the stream has been read from or cancelled.
21082108

21092109
### `stream.Readable.toWeb(streamReadable)`
21102110
<!-- YAML
2111-
added: REPLACEME
2111+
added: v17.0.0
21122112
-->
21132113

21142114
> Stability: 1 - Experimental
@@ -2118,7 +2118,7 @@ added: REPLACEME
21182118

21192119
### `stream.Writable.fromWeb(writableStream[, options])`
21202120
<!-- YAML
2121-
added: REPLACEME
2121+
added: v17.0.0
21222122
-->
21232123

21242124
> Stability: 1 - Experimental
@@ -2133,7 +2133,7 @@ added: REPLACEME
21332133

21342134
### `stream.Writable.toWeb(streamWritable)`
21352135
<!-- YAML
2136-
added: REPLACEME
2136+
added: v17.0.0
21372137
-->
21382138

21392139
> Stability: 1 - Experimental
@@ -2171,7 +2171,7 @@ A utility method for creating duplex streams.
21712171

21722172
### `stream.Duplex.fromWeb(pair[, options])`
21732173
<!-- YAML
2174-
added: REPLACEME
2174+
added: v17.0.0
21752175
-->
21762176

21772177
> Stability: 1 - Experimental
@@ -2190,7 +2190,7 @@ added: REPLACEME
21902190

21912191
### `stream.Duplex.toWeb(streamDuplex)`
21922192
<!-- YAML
2193-
added: REPLACEME
2193+
added: v17.0.0
21942194
-->
21952195

21962196
> Stability: 1 - Experimental

doc/api/url.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1386,7 +1386,7 @@ forward-slash characters (`/`) are required following the colon in the
13861386
<!-- YAML
13871387
added: v0.1.25
13881388
changes:
1389-
- version: REPLACEME
1389+
- version: v17.0.0
13901390
pr-url: https://github.com/nodejs/node/pull/38631
13911391
description: Now throws an `ERR_INVALID_URL` exception when Punycode
13921392
conversion of a hostname introduces changes that could cause

doc/api/vm.md

+6-6
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ executed in specific contexts.
5454
<!-- YAML
5555
added: v0.3.1
5656
changes:
57-
- version: REPLACEME
57+
- version: v17.0.0
5858
pr-url: https://github.com/nodejs/node/pull/40249
5959
description: Added support for import assertions to the
6060
`importModuleDynamically` parameter.
@@ -651,7 +651,7 @@ defined in the ECMAScript specification.
651651
### `new vm.SourceTextModule(code[, options])`
652652
<!-- YAML
653653
changes:
654-
- version: REPLACEME
654+
- version: v17.0.0
655655
pr-url: https://github.com/nodejs/node/pull/40249
656656
description: Added support for import assertions to the
657657
`importModuleDynamically` parameter.
@@ -869,7 +869,7 @@ const vm = require('vm');
869869
<!-- YAML
870870
added: v10.10.0
871871
changes:
872-
- version: REPLACEME
872+
- version: v17.0.0
873873
pr-url: https://github.com/nodejs/node/pull/40249
874874
description: Added support for import assertions to the
875875
`importModuleDynamically` parameter.
@@ -1092,7 +1092,7 @@ vm.measureMemory({ mode: 'detailed', execution: 'eager' })
10921092
<!-- YAML
10931093
added: v0.3.1
10941094
changes:
1095-
- version: REPLACEME
1095+
- version: v17.0.0
10961096
pr-url: https://github.com/nodejs/node/pull/40249
10971097
description: Added support for import assertions to the
10981098
`importModuleDynamically` parameter.
@@ -1176,7 +1176,7 @@ console.log(contextObject);
11761176
<!-- YAML
11771177
added: v0.3.1
11781178
changes:
1179-
- version: REPLACEME
1179+
- version: v17.0.0
11801180
pr-url: https://github.com/nodejs/node/pull/40249
11811181
description: Added support for import assertions to the
11821182
`importModuleDynamically` parameter.
@@ -1285,7 +1285,7 @@ console.log(contextObject);
12851285
<!-- YAML
12861286
added: v0.3.1
12871287
changes:
1288-
- version: REPLACEME
1288+
- version: v17.0.0
12891289
pr-url: https://github.com/nodejs/node/pull/40249
12901290
description: Added support for import assertions to the
12911291
`importModuleDynamically` parameter.

0 commit comments

Comments
 (0)