Notable Changes
Add fetch API
Adds experimental support to the fetch API. This adds a --experimental-fetch
flag that installs the fetch
, Request
, Reponse
and Headers
globals.
- [
76a229c4ff
] – (SEMVER-MINOR) lib: add fetch (Michaël Zasso) #41749
Add stream methods
- [
1ae648567a
] – (SEMVER-MINOR) stream: add iterator helper find (linkgoron) #41849 - [
62e1a68077
] – (SEMVER-MINOR) stream: add toArray (Benjamin Gruenbaum) #41553 - [
da11b95988
] – (SEMVER-MINOR) stream: add forEach method (Benjamin Gruenbaum) #41445 - [
34684a1c89
] – (SEMVER-MINOR) stream: support some and every (Benjamin Gruenbaum) #41573
Other Notable Changes
- [
2cae99425b
] – (SEMVER-MINOR) node-api: add node_api_symbol_for() (Darshan Sen) #41329 - [
9c6b078892
] – module: unflag esm json modules (Geoffrey Booth) #41736 - [
28650eca00
] – deps: upgrade npm to 8.4.1 (npm team) #41836
Commits
- [
0844935e1f
] – async_hooks: fix imports in context example (Yash Ladha) #39229 - [
44ca20b7a1
] – benchmark: avoid input param manipulation (Jithil P Ponnan) #41741 - [
ad32ad6cfd
] – benchmark: enable no-empty ESLint rule (Rich Trott) #41831 - [
28b95a5a9f
] – benchmark: use Object.hasOwn() instead of hasOwnProperty() (Rich Trott) #41769 - [
ca1cd4254a
] – benchmark: replace hasOwnProperty() with Object.hasOwn() (Rich Trott) #41724 - [
6fefd5112a
] – (SEMVER-MINOR) benchmark: addsubarray
tobuffer-slice
(Benjamin Gruenbaum) #41596 - [
878b2e73bb
] – benchmark: remove unreachable code from crypto/hash-stream-creation (Rich Trott) #41535 - [
6064b1df5d
] – buffer: fix atob/btoa no-arg case (Benjamin Gruenbaum) #41478 - [
89c327387b
] – (SEMVER-MINOR) buffer: aliassubarray
andslice
(Benjamin Gruenbaum) #41596 - [
adcde6bb78
] – build: check if python is a executable program (himself65) #36696 - [
33351765c7
] – build: enable zoslib installation on z/OS (alexcfyung) #41493 - [
e8062bfb92
] – build: add –v8-enable-hugepage flag (Daoming Qiu) #41487 - [
8681c837ca
] – build: add loong64 configure (Shi Pujin) #41323 - [
7c2b5861be
] – build: fix libuv builds for android aarch64 (Darshan Sen) #41555 - [
e117c0f86c
] – crypto: check return code from EVP_DigestUpdate (Michael Dawson) #41800 - [
9c59abe588
] – crypto: fixwebcrypto.subtle
signature (Antoine du Hamel) #41761 - [
627f19a84b
] – crypto: revise variables for const use instead of let (Rich Trott) #41614 - [
9e39e62ae2
] – crypto: remove wildcard options for checkEmail (Tobias Nießen) #41599 - [
4a4c907604
] – crypto: adjust types for getRandomValues (LiviaMedeiros) #41481 - [
b43faf0fc5
] – crypto: remove checkIP options argument (Tobias Nießen) #41571 - [
076ec47557
] – (SEMVER-MINOR) crypto: support RFC 2818 compatible checkHost (Tobias Nießen) #41569 - [
28650eca00
] – deps: upgrade npm to 8.4.1 (npm-robot) #41836 - [
bee4451ed8
] – deps: V8: cherry-pick cc9a8a37445e (Gus Caplan) #41823 - [
4b174ce7f6
] – deps: upgrade npm to 8.3.2 (npm team) #41621 - [
0d4f043f0e
] – dgram: remove unreachable connectState assign (Rongjian Zhang) #38590 - [
d641eb7f80
] – doc: use the same case as the section heading (Mestery) #41876 - [
ffd1933ad9
] – doc: use Oxford comma in crypto docs (Tobias Nießen) #41875 - [
145a3b8294
] – doc: use sentence case in readme introduction (Mestery) #41874 - [
f8acca8df8
] – doc: add missing space before hyphen (Mestery) #41873 - [
5085813688
] – doc: add stream pipelining note on Http usage (Rafael Silva) #41796 - [
0a8995d36b
] – doc: improve SSL_OP_PRIORITIZE_CHACHA description (Tobias Nießen) #41866 - [
1c62eb64f6
] – doc: add missing commas in cluster docs (Tobias Nießen) #41865 - [
3676505413
] – doc: add history information for Corepack (Antoine du Hamel) #41813 - [
8a42a20b8a
] – doc: add comments to empty blocks in worker_threads text (Rich Trott) #41831 - [
c3721fcf9a
] – doc: remove empty block from console.timeEnd() example (Rich Trott) #41831 - [
451f3331d9
] – doc: feature management proposal (Michael Dawson) #41420 - [
72a857f56c
] – doc: add overhead hints for heap snapshot generation (Gerhard Stöbich) #41822 - [
7aeaa27d67
] – doc: fix X509 CA acronym capitalization (Tobias Nießen) #41841 - [
d3a4c62600
] – doc: use sentence case for X509 error codes header (Tobias Nießen) #41829 - [
cb16fad0ab
] – doc: add initial version of maintaining-http.md (Michael Dawson) #41798 - [
49f6b97b64
] – doc: add registry numbers for Electron 19 and 20 (Keeley Hammond) #41814 - [
4db343bb8e
] – doc: add note about resource type in async_hooks (Tony Gorez) #41797 - [
d726a3442c
] – doc: use example.com for examples (Ateş Göral) #41827 - [
4eb1938f51
] – doc: align tls port types with net port types (Tobias Nießen) #41799 - [
e5db13626b
] – doc: use UDPv4/UDPv6 consistently with TCPv4/TCPv6 (Tobias Nießen) #41824 - [
af641bdec4
] – doc: improve wording surrounding TLS 1.3 ciphers (Tobias Nießen) #41778 - [
99e0f1458b
] – doc: add format-md step to release guide (Danielle Adams) #41809 - [
62f2c078ec
] – doc: add v16 changelog link to iojs changelog (Danielle Adams) #41808 - [
c0629b48ce
] – doc: add security-steward rotation information (Michael Dawson) #41707 - [
032df4ee17
] – doc: use Object.hasOwn() in util doc (Rich Trott) #41780 - [
257c5b68d1
] – doc: remove section on “recent” ECDH changes (Tobias Nießen) #41773 - [
86644b95a5
] – doc: clarify that import also uses main (Ben McCann) #41720 - [
4889a3177f
] – doc: update modules.md wording (Tobias Hernstig) #41728 - [
26c5efef35
] – doc: update Mesteery email (Mestery) #41683 - [
4339299800
] – doc: avoid incomplete sentence in cluster docs (Tobias Nießen) #41701 - [
7f7bcd7757
] – doc: fix typo in contributing guides (Yoshiki Kurihara) #41723 - [
30336c23b5
] – doc: improve docs to give descriptive info for the platform property (Harshil jain) #41650 - [
29678d66b8
] – doc: fix link to npm documentation (Antoine du Hamel) #41712 - [
ae34900ccb
] – doc: clarify treatment of non-string base in URL() (Rich Trott) #41685 - [
b83e661d30
] – doc: fix typo intechnical-priorities.md
(Akhil Marsonya) #41694 - [
8e7df048a7
] – doc: remove unadvisable cluster example (Tobias Nießen) #41668 - [
0ee468d6ba
] – doc: document flow for supporting type generation (Michael Dawson) #41464 - [
9af2862a8b
] – doc: clarify parameter for napi_get_cb_info (Michael Dawson) #41635 - [
a35c6c38f1
] – doc: revise url.resolve() text (Rich Trott) #41661 - [
986dbb3222
] – doc: clarify treatment of non-string argument to new URL() (Rich Trott) #41658 - [
2bba6cd8b6
] – doc: fix documentation forMODULE_NOT_FOUND
andERR_MODULE_NOT_FOUND
(Antoine du Hamel) #41645 - [
d40fd755d3
] – doc: improve TLS/SSL introduction (Tobias Nießen) #41649 - [
b951764c32
] – doc: modernize and simplify cluster example (Tobias Nießen) #41626 - [
0d6227ceab
] – doc: simplify readline/stdin text (Rich Trott) #41583 - [
ffab924444
] – doc: suggest worker threads in cluster docs (Tobias Nießen) #41616 - [
c111a13d22
] – doc: add 16 and 17 to previous versions (Antoine du Hamel) #41646 - [
81e039fa9d
] – doc: improve'hex'
Buffer decoding description and examples (Giora Guttsait) #41598 - [
09763a2a93
] – doc: add note for handling signal events in trace events (Gabriel Trujillo) #41438 - [
2e7bf00359
] – (SEMVER-MINOR) doc: deprecatebuffer.slice
(Benjamin Gruenbaum) #41596 - [
174155dee6
] – doc: demonstrate dangers ofbuffer.slice()
(Shalvah) #41628 - [
22484014cd
] – doc: add missing word in cluster.workers details (Tobias Nießen) #41624 - [
86272ca5ac
] – doc: fix async_hooks example in api docs (Akhil Marsonya) #41609 - [
5943cb9d1e
] – doc: fix deprecated alias description in cluster (Tobias Nießen) #41618 - [
574c19a8c6
] – doc: fix backticks around ‘default’ (Tobias Nießen) #41613 - [
4780449b4e
] – doc: update timingSafeEqual error case (Alex Agranov) #41507 - [
9c73bd5610
] – doc: simplify util.TextDecoder example (Rich Trott) #41574 - [
e72693160e
] – doc: move Mesteery to collaborators (Tobias Nießen) #41597 - [
952623dff8
] – doc: fix cjs example code for process.arch (Job) #41593 - [
2478b47a08
] – doc: remove redunantawait
calls from stream docs (Giora Guttsait) #41592 - [
f6b5b8d5bb
] – doc: make contributing info more discoverable (Michael Dawson) #41408 - [
6370b4df68
] – doc: recommend package exports instead of requiring folders (Antoine du Hamel) #41381 - [
b5104e89fc
] – doc: edit async_context context loss text (Rich Trott) #41550 - [
9ea8e49032
] – doc: use sentence case for Web Crypto headers (Tobias Nießen) #41577 - [
92484d4945
] – doc: make Web Crypto example spec compliant (Tobias Nießen) #41556 - [
60e7437a60
] – doc: do not reference SSL when discussing SNI (Tobias Nießen) #41549 - [
31d75f2f5d
] – doc: fix typos in esm.md (Yu) #41499 - [
cb4dbc10bc
] – doc: adjust assignment in condition in stream doc (Rich Trott) #41510 - [
5c700fa8e2
] – doc: improve Web Crypto headings related to ECC (Tobias Nießen) #41542 - [
84292165e7
] – doc: clarify module system selection (Antoine du Hamel) #41383 - [
be63dc5acc
] – doc: remove statement about (EC)DHE performance (Tobias Nießen) #41528 - [
c6749bc590
] – doc,readline: add missing node protocol in example (Mestery) #41560 - [
74bd31213c
] – domain: pass opts toEventEmitter.init
(Chen Gang) #41414 - [
e1d5a354c5
] – esm: improve validation of resolved URLs (Jacob Smith) #41446 - [
bfddcb11a5
] – http2: fix pseudo-headers order (ofir) #41735 - [
499171bbd8
] – http2: fix no response event on continue request (ofirbarak) #41739 - [
2a18859324
] – http2: fix memory leak on nghttp2 hd threshold (Rafael Silva) #41502 - [
59a15e8f1a
] – lib: refactor to usevalidateObject()
validator (Mohammed Keyvanzadeh) #41845 - [
4834be373d
] – lib: add comments to empty catch statements (Rich Trott) #41831 - [
76a229c4ff
] – (SEMVER-MINOR) lib: add fetch (Michaël Zasso) #41749 - [
cedd26a396
] – lib: refactor source map stack trace prepare (Mohammed Keyvanzadeh) #41698 - [
8ab0540d4a
] – lib: throw error in structuedClone when no arguments are passed (Giora Guttsait) #41651 - [
306dd1c181
] – lib: fix consistency of methods that emit warnings (Yoshiki Kurihara) #41249 - [
e500d11806
] – lib: remove erroneous JSDoc entry (Rich Trott) #41604 - [
8a99eed7aa
] – lib: modifyDOMException
to pass WPT (Khaidi Chu) #41517 - [
bd5d1583ed
] – meta: update AUTHORS (Node.js GitHub Bot) #41868 - [
f5adf54eb6
] – meta: update AUTHORS (Node.js GitHub Bot) #41763 - [
e5abdf7285
] – meta: update mailmap/AUTHORS info for existing collaborator (Rich Trott) #41750 - [
14415fb7e0
] – meta: adjust mailmap/AUTHORS to reflect README change (Rich Trott) #41751 - [
60eddadb65
] – meta: update AUTHORS (Node.js GitHub Bot) #41659 - [
336c18d057
] – meta: update AUTHORS (Node.js GitHub Bot) #41548 - [
9c6b078892
] – module: unflag esm json modules (Geoffrey Booth) #41736 - [
2cae99425b
] – (SEMVER-MINOR) node-api: add node_api_symbol_for() (Darshan Sen) #41329 - [
14cb9ea93e
] – perf_hooks: remove useless calls in Histogram (Michael Dawson) #41579 - [
e1ae61bce5
] – policy: revise manifest.js to avoid empty blocks (Rich Trott) #41831 - [
d83d55e6e5
] – policy: check for null instead of falsy in loop (Rich Trott) #41614 - [
e11451c4e8
] – policy: replace entries with keys (Mohammed Keyvanzadeh) #41482 - [
cfaa1e224d
] – process: unhandledRejection support more errors (Benjamin Gruenbaum) #41682 - [
cf1d3d1565
] – process: check for null instead of falsy in while loop (Rich Trott) #41614 - [
3b45c05a23
] – process: use validateString validator (Mohammed Keyvanzadeh) #41595 - [
700f766bea
] – process: ignore asyncId 0 in exception handler (Anatoli Papirovski) #41424 - [
cbcf794562
] – readline: improve code coverage for readline promises (Erick Wendel) #41817 - [
0a31149202
] – (SEMVER-MINOR) readline: add feature yank and yank pop (Ray) #41301 - [
5a4c74c647
] – readline: undo previous edit when get key code 0x1F (Ray) #41392 - [
301a4f8781
] – repl: check for precise values rather than falsy in loops (Rich Trott) #41614 - [
c3d3abf112
] – src: slightly simplify URLHost::ToString (Anna Henningsen) #41747 - [
43f2abae7c
] – src: slightly simplify V8CoverageConnection::GetFilename (Anna Henningsen) #41748 - [
bbfa58691e
] – src: fix typo in js_native_api_v8.cc (Caio Agiani) #41764 - [
1ae648567a
] – (SEMVER-MINOR) stream: add iterator helper find (linkgoron) #41849 - [
07b6bf4e7e
] – stream: resume stream on drain (Robert Nagy) #41848 - [
f8d2955b71
] – stream: initial port of test262 tests (Benjamin Gruenbaum) #41775 - [
6c82276b85
] – stream: remove empty block (Rich Trott) #41831 - [
e11a079469
] – stream: use synchronous error validation & validate abort signal option (iMoses) #41777 - [
9c2504a066
] – (SEMVER-MINOR) stream: add reduce (Benjamin Gruenbaum) #41669 - [
a05b8328d8
] – stream: use synchronous error validation on iteration helpers (iMoses) #41652 - [
311050ebaa
] – stream: add asIndexedPairs (Benjamin Gruenbaum) #41681 - [
9b1a37979c
] – stream: add drop and take (Benjamin Gruenbaum) #41630 - [
b3390b9ddb
] – stream: never flatten on toArray (Benjamin Gruenbaum) #41615 - [
46ec74dcd1
] – (SEMVER-MINOR) stream: support flatMap (Benjamin Gruenbaum) #41612 - [
16dec4268c
] – stream: check for null instead of falsy in loops (Rich Trott) #41614 - [
34684a1c89
] – (SEMVER-MINOR) stream: support some and every (Benjamin Gruenbaum) #41573 - [
62e1a68077
] – (SEMVER-MINOR) stream: add toArray (Benjamin Gruenbaum) #41553 - [
5027e94a8a
] – stream: rename unknown primordial (Mohammed Keyvanzadeh) #40622 - [
da11b95988
] – (SEMVER-MINOR) stream: add forEach method (Benjamin Gruenbaum) #41445 - [
9226322394
] – stream: avoid function call where possible (Rich Trott) #41534 - [
573cafe29d
] – test: remove eslint-disable comments from fixtures (Rich Trott) #41859 - [
0d9248fe0a
] – test: remove test-worker-memory flaky designation (Rich Trott) #41867 - [
c694dae41c
] – test: enable no-empty ESLint rule (Rich Trott) #41831 - [
87902a7c17
] – test: avoid using Object.prototype methods directly on objects (Rich Trott) #41801 - [
ea966404ad
] – test: exclude ibm i tests until we resolve (Michael Dawson) #41812 - [
9c704b13af
] – test: make worker-take-heapsnapshot non-flaky (Michael Dawson) #41684 - [
a97c817451
] – test: mark test-fs-rmdir-recursive flaky on win (Michael Dawson) #41533 - [
5f1a59cb41
] – test: make fs watch test more stable (Benjamin Gruenbaum) #41715 - [
abbc06b5ab
] – test: fix typo in MessageChannel test (Tobias Nießen) #41746 - [
94645d8f71
] – test: replace commented out expectations with tests (Darshan Sen) #41667 - [
351ebf289a
] – test: improve stability of oom test (Benjamin Gruenbaum) #41681 - [
0267d27a7d
] – test: use Object.hasOwn() where applicable (Rich Trott) #41664 - [
cca92107a4
] – test: remove unneeded test statement (Rich Trott) #41663 - [
30df37f733
] – test: remove error allowance in debugger test (Jithil P Ponnan) #41640 - [
b02bf41e18
] – test: add stream map tests (Benjamin Gruenbaum) #41642 - [
12c1ac4d3b
] – test: simplify test-gc-http-client (Luigi Pinca) #41620 - [
9d99c24d50
] – test: prepare tests for no-cond-assign ESLint rule (Rich Trott) #41614 - [
ea6c202436
] – test: move test-gc-http-client-onerror to sequential (Luigi Pinca) #41619 - [
55adcb7f12
] – test: fix typo in test-stream-toArray (Tobias Nießen) #41634 - [
506a0dde0e
] – test: improve test coverage of internal/worker/io (Yoshiki Kurihara) #41511 - [
6de8e51437
] – test: add DataView test entry for whatwg (Mohammed Keyvanzadeh) #40622 - [
f947f72b39
] – test: improve util-format code coverage (Rich Trott) #41572 - [
38e4b11391
] – test: fix typo in test_js_native_api_v8 (Tobias Nießen) #41584 - [
5e3f751260
] – test: add missing await in fs-rm/fs-rmdir tests (Benjamin Coe) #41545 - [
c0aec6783a
] – test: increase coverage for stream writable (Rich Trott) #41486 - [
ef7c79822f
] – test: add coverage for util.inspect() (Rich Trott) #41527 - [
2b4e46f07d
] – timers: check for nullish instead of falsy in loops (Rich Trott) #41614 - [
0d471fb0d4
] – tools: enable no-empty ESLint rule (Rich Trott) #41831 - [
72f02d87b9
] – tools: update lint-md-dependencies to rollup@2.67.0 (Node.js GitHub Bot) #41737 - [
32cdae7f65
] – tools: update doc to rehype-stringify@9.0.3 (Node.js GitHub Bot) #41854 - [
e6a1896ec1
] – tools: update eslint to 8.8.0 (Node.js GitHub Bot) #41738 - [
3190e365f0
] – tools: use Set instead of { [key]: true } object (Tobias Nießen) #41695 - [
3f4ce07be9
] – tools: add compile_commands to ignore file (Yash Ladha) #41580 - [
5fe7cfabaa
] – tools: use Set instead of { [key]: true } object (Tobias Nießen) #41675 - [
d33d1899c4
] – tools: fix typo intools/code_cache/README.md
(Tobias Nießen) #41657 - [
ae7df178fd
] – tools: enable no-cond-assign-ESLint rule (Rich Trott) #41614 - [
9202b86814
] – tools: update lint-md-dependencies to rollup@2.65.0 (Node.js GitHub Bot) #41638 - [
57ada37a1f
] – tools: increase maximum line length to 120 characters (Rich Trott) #41586 - [
3084dff702
] – tools: add missing.PHONY
and.NOTPARALLEL
targets inMakefile
(Antoine du Hamel) #41515 - [
544267feb2
] – tools: update lint-md-dependencies (Node.js GitHub Bot) #41440 - [
127d2fae62
] – tools: bump eslint from 8.6.0 to 8.7.0 (Rich Trott) #41570 - [
ad5d7c7b06
] – tools: update doc to highlight.js@11.4.0 to-vfile@7.2.3 (Node.js GitHub Bot) #41441 - [
34dfc60742
] – tools,test: enable no-prototype-builtins (Rich Trott) #41801 - [
aee74c8156
] – util: use hasOwnProperty() primordial (Rich Trott) #41692 - [
2b082def2e
] – util: remove unused fast path in internal debuglog (Rich Trott) #41605 - [
0e35d01a4a
] – util: check for null instead of flasy in loop (Rich Trott) #41614 - [
869cbb7b25
] – (SEMVER-MINOR) worker: graduate get/setEnvironmentData APIs (James M Snell) #41272
Windows 32-bit Installer: https://nodejs.org/dist/v17.5.0/node-v17.5.0-x86.msi
Windows 64-bit Installer: https://nodejs.org/dist/v17.5.0/node-v17.5.0-x64.msi
Windows 32-bit Binary: https://nodejs.org/dist/v17.5.0/win-x86/node.exe
Windows 64-bit Binary: https://nodejs.org/dist/v17.5.0/win-x64/node.exe
macOS 64-bit Installer: https://nodejs.org/dist/v17.5.0/node-v17.5.0.pkg
macOS Apple Silicon 64-bit Binary: https://nodejs.org/dist/v17.5.0/node-v17.5.0-darwin-arm64.tar.gz
macOS Intel 64-bit Binary: https://nodejs.org/dist/v17.5.0/node-v17.5.0-darwin-x64.tar.gz
Linux 64-bit Binary: https://nodejs.org/dist/v17.5.0/node-v17.5.0-linux-x64.tar.xz
Linux PPC LE 64-bit Binary: https://nodejs.org/dist/v17.5.0/node-v17.5.0-linux-ppc64le.tar.xz
Linux s390x 64-bit Binary: https://nodejs.org/dist/v17.5.0/node-v17.5.0-linux-s390x.tar.xz
AIX 64-bit Binary: https://nodejs.org/dist/v17.5.0/node-v17.5.0-aix-ppc64.tar.gz
ARMv7 32-bit Binary: https://nodejs.org/dist/v17.5.0/node-v17.5.0-linux-armv7l.tar.xz
ARMv8 64-bit Binary: https://nodejs.org/dist/v17.5.0/node-v17.5.0-linux-arm64.tar.xz
Source Code: https://nodejs.org/dist/v17.5.0/node-v17.5.0.tar.gz
Other release files: https://nodejs.org/dist/v17.5.0/
Documentation: https://nodejs.org/docs/v17.5.0/api/