Node.js 8 ChangeLog

Note: Node.js v8 is covered by the Node.js Long Term Support Plan and will be supported actively until April 2019 and maintained until December 2019.

2019-12-17, Version 8.17.0 ‘Carbon’ (LTS), @MylesBorins

This is a security release.

For more details about the vulnerability please consult the npm blog:

https://blog.npmjs.org/post/189618601100/binary-planting-with-the-npm-cli

Notable changes

  • deps: update npm to 6.13.4 #30904

Commits

2019-10-09, Version 8.16.2 ‘Carbon’ (LTS), @BethGriggs

Node.js 8 is due to go End-of-Life on 31st December 2019.

Notable changes

  • deps: upgrade openssl sources to 1.0.2s (Sam Roberts) #28230

Commits

2019-08-15, Version 8.16.1 ‘Carbon’ (LTS), @BethGriggs

Notable changes

This is a security release.

Node.js, as well as many other implementations of HTTP/2, have been found vulnerable to Denial of Service attacks. See https://github.com/Netflix/security-bulletins/blob/master/advisories/third-party/2019-002.md for more information.

Vulnerabilities fixed:

  • CVE-2019-9511 “Data Dribble”: The attacker requests a large amount of data from a specified resource over multiple streams. They manipulate window size and stream priority to force the server to queue the data in 1-byte chunks. Depending on how efficiently this data is queued, this can consume excess CPU, memory, or both, potentially leading to a denial of service.
  • CVE-2019-9512 “Ping Flood”: The attacker sends continual pings to an HTTP/2 peer, causing the peer to build an internal queue of responses. Depending on how efficiently this data is queued, this can consume excess CPU, memory, or both, potentially leading to a denial of service.
  • CVE-2019-9513 “Resource Loop”: The attacker creates multiple request streams and continually shuffles the priority of the streams in a way that causes substantial churn to the priority tree. This can consume excess CPU, potentially leading to a denial of service.
  • CVE-2019-9514 “Reset Flood”: The attacker opens a number of streams and sends an invalid request over each stream that should solicit a stream of RST_STREAM frames from the peer. Depending on how the peer queues the RST_STREAM frames, this can consume excess memory, CPU, or both, potentially leading to a denial of service.
  • CVE-2019-9515 “Settings Flood”: The attacker sends a stream of SETTINGS frames to the peer. Since the RFC requires that the peer reply with one acknowledgement per SETTINGS frame, an empty SETTINGS frame is almost equivalent in behavior to a ping. Depending on how efficiently this data is queued, this can consume excess CPU, memory, or both, potentially leading to a denial of service.
  • CVE-2019-9516 “0-Length Headers Leak”: The attacker sends a stream of headers with a 0-length header name and 0-length header value, optionally Huffman encoded into 1-byte or greater headers. Some implementations allocate memory for these headers and keep the allocation alive until the session dies. This can consume excess memory, potentially leading to a denial of service.
  • CVE-2019-9517 “Internal Data Buffering”: The attacker opens the HTTP/2 window so the peer can send without constraint; however, they leave the TCP window closed so the peer cannot actually write (many of) the bytes on the wire. The attacker then sends a stream of requests for a large response object. Depending on how the servers queue the responses, this can consume excess memory, CPU, or both, potentially leading to a denial of service.
  • CVE-2019-9518 “Empty Frames Flood”: The attacker sends a stream of frames with an empty payload and without the end-of-stream flag. These frames can be DATA, HEADERS, CONTINUATION and/or PUSH_PROMISE. The peer spends time processing each frame disproportionate to attack bandwidth. This can consume excess CPU, potentially leading to a denial of service. (Discovered by Piotr Sikora of Google)

Commits

  • [6d427378c0] - deps: update nghttp2 to 1.39.2 (Anna Henningsen) #29122
  • [33d4d916d5] - deps: update nghttp2 to 1.39.1 (gengjiawen) #28448
  • [17fad97113] - deps: update nghttp2 to 1.38.0 (gengjiawen) #27295
  • [0b44733695] - deps: update nghttp2 to 1.37.0 (gengjiawen) #26990
  • [5afc77b044] - deps: update nghttp2 to 1.34.0 (James M Snell) #23284
  • [073108c855] - http2: allow security revert for Ping/Settings Flood (Anna Henningsen) #29122
  • [6d687f7af8] - http2: pause input processing if sending output (Anna Henningsen) #29122
  • [854dba649e] - http2: stop reading from socket if writes are in progress (Anna Henningsen) #29122
  • [a3191689dd] - http2: consider 0-length non-end DATA frames an error (Anna Henningsen) #29122
  • [156f2f35df] - http2: shrink default vector::reserve() allocations (Anna Henningsen) #29122
  • [10f05b65c4] - http2: handle 0-length headers better (Anna Henningsen) #29122
  • [ac28a628a5] - http2: limit number of invalid incoming frames (Anna Henningsen) #29122
  • [11b4e2c0db] - http2: limit number of rejected stream openings (Anna Henningsen) #29122
  • [7de642b6f9] - http2: do not create ArrayBuffers when no DATA received (Anna Henningsen) #29122
  • [dd60d3561a] - http2: only call into JS when necessary for session events (Anna Henningsen) #29122
  • [00f6846b73] - http2: improve JS-side debug logging (Anna Henningsen) #29122
  • [b095e35f1f] - http2: improve http2 code a bit (James M Snell) #23984
  • [cc282239c1] - test: apply test-http2-max-session-memory-leak from v12.x (Anna Henningsen) #29122

2019-04-16, Version 8.16.0 ‘Carbon’ (LTS), @MylesBorins

Notable Changes

  • n-api:
    • add API for asynchronous functions (Gabriel Schulhof) #17887
    • mark thread-safe function as stable (Gabriel Schulhof) #25556

Commits

2019-02-28, Version 8.15.1 ‘Carbon’ (LTS), @rvagg

This is a security release. All Node.js users should consult the security release summary at:

https://nodejs.org/en/blog/vulnerability/february-2019-security-releases/

for details on patched vulnerabilities.

Fixes for the following CVEs are included in this release:

  • Node.js: Slowloris HTTP Denial of Service with keep-alive (CVE-2019-5737)
  • OpenSSL: 0-byte record padding oracle (CVE-2019-1559)

Notable Changes

  • deps: OpenSSL has been upgraded to 1.0.2r which contains a fix for CVE-2019-1559. Under certain circumstances, a TLS server can be forced to respond differently to a client if a zero-byte record is received with an invalid padding compared to a zero-byte record with an invalid MAC. This can be used as the basis of a padding oracle attack to decrypt data.
  • http: Further prevention of “Slowloris” attacks on HTTP and HTTPS connections by consistently applying the receive timeout set by server.headersTimeout to connections in keep-alive mode. Reported by Marco Pracucci (Voxnest). (CVE-2019-5737 / Matteo Collina)

Commits

2018-12-26, Version 8.15.0 ‘Carbon’ (LTS), @MylesBorins

The 8.14.0 security release introduced some unexpected breakages on the 8.x release line. This is a special release to fix a regression in the HTTP binary upgrade response body and add a missing CLI flag to adjust the max header size of the http parser.

Notable Changes

  • cli:
    • add --max-http-header-size flag (cjihrig) #24811
  • http:
    • add maxHeaderSize property (cjihrig) #24860

Commits

  • [693e362175] - (SEMVER-MINOR) cli: add --max-http-header-size flag (cjihrig) #24811
  • [4fb5a1be2f] - (SEMVER-MINOR) deps: cherry-pick http_parser_set_max_header_size (cjihrig) #24811
  • [446f8b54e5] - (SEMVER-MINOR) http: add maxHeaderSize property (cjihrig) #24860
  • [215ecfe4de] - http: fix regression of binary upgrade response body (Matteo Collina) #25037
  • [e1fbc26c6a] - test: move test-benchmark-path to sequential (Rich Trott) #21393
  • [aef71c05a2] - test: mark test-http2-settings-flood as flaky on Windows (Rich Trott) #25048

2018-12-18, Version 8.14.1 ‘Carbon’ (LTS), @MylesBorins prepared by @BethGriggs

Notable changes

  • assert:
    • revert breaking change (Ruben Bridgewater) #24786
  • http2:
    • fix sequence of error/close events (Gerhard Stoebich) #24789

Commits

2018-11-27, Version 8.14.0 ‘Carbon’ (LTS), @rvagg

This is a security release. All Node.js users should consult the security release summary at:

https://nodejs.org/en/blog/vulnerability/november-2018-security-releases/

for details on patched vulnerabilities.

Fixes for the following CVEs are included in this release:

  • Node.js: Denial of Service with large HTTP headers (CVE-2018-12121)
  • Node.js: Slowloris HTTP Denial of Service (CVE-2018-12122 / Node.js)
  • Node.js: Hostname spoofing in URL parser for javascript protocol (CVE-2018-12123)
  • Node.js: HTTP request splitting (CVE-2018-12116)
  • OpenSSL: Timing vulnerability in DSA signature generation (CVE-2018-0734)
  • OpenSSL: Microarchitecture timing vulnerability in ECC scalar multiplication (CVE-2018-5407)

Notable Changes

  • deps: Upgrade to OpenSSL 1.0.2q, fixing CVE-2018-0734 and CVE-2018-5407
  • http:
    • Headers received by HTTP servers must not exceed 8192 bytes in total to prevent possible Denial of Service attacks. Reported by Trevor Norris. (CVE-2018-12121 / Matteo Collina)
    • A timeout of 40 seconds now applies to servers receiving HTTP headers. This value can be adjusted with server.headersTimeout. Where headers are not completely received within this period, the socket is destroyed on the next received chunk. In conjunction with server.setTimeout(), this aids in protecting against excessive resource retention and possible Denial of Service. Reported by Jan Maybach (liebdich.com). (CVE-2018-12122 / Matteo Collina)
    • Two-byte characters are now strictly disallowed for the path option in HTTP client requests. Paths containing characters outside of the range \u0021 - \u00ff will now be rejected with a TypeError. This behavior can be reverted if necessary by supplying the --security-revert=CVE-2018-12116 command line argument (this is not recommended). Reported as security concern for Node.js 6 and 8 by Arkadiy Tetelman (Lob), fixed by backporting a change by Benno Fünfstück applied to Node.js 10 and later. (CVE-2018-12116 / Matteo Collina)
  • url: Fix a bug that would allow a hostname being spoofed when parsing URLs with url.parse() with the 'javascript:' protocol. Reported by Martin Bajanik (Kentico). (CVE-2018-12123 / Matteo Collina)

Commits

2018-11-20, Version 8.13.0 ‘Carbon’ (LTS), @MylesBorins prepared by @BethGriggs

Notable changes

  • assert:
    • backport some assert commits (Ruben Bridgewater) #23223
  • deps:
    • upgrade to libuv 1.23.2 (cjihrig) #23336
    • V8: cherry-pick 64-bit hash seed commits (Yang Guo) #23274
  • http:
    • added aborted property to request (Robert Nagy) #20094
  • http2:
    • graduate from experimental (James M Snell) #22466

Commits

  • [0d241ba385] - assert: ensure .rejects() disallows sync throws (Teddy Katz) #19650
  • [3babc5bb53] - (SEMVER-MINOR) assert: add rejects() and doesNotReject() (feugy) #18023
  • [18071db274] - assert: fix throws trace (Ruben Bridgewater) #18595
  • [562787efb2] - assert: fix strict regression (Ruben Bridgewater) #17903
  • [f2af930ebb] - (SEMVER-MINOR) assert: .throws accept objects (Ruben Bridgewater) #17584
  • [147aeedc8d] - (SEMVER-MINOR) assert: improve assert.throws (Ruben Bridgewater) #17585
  • [c9d84b6d4f] - assert: fix throws and doesNotThrow stack frames (Ruben Bridgewater) #17703
  • [a42d0726ac] - assert: use object argument in innerFail (Ruben Bridgewater) #17582
  • [84948cf14f] - assert: fix .throws operator (Ruben Bridgewater) #17575
  • [c6d94f8fa5] - (SEMVER-MINOR) assert: add strict functionality export (Ruben Bridgewater) #17002
  • [26d145a77f] - async_hooks: add missing async_hooks destroys in AsyncReset (Bastian Krol) #23272
  • [104fbc64ed] - build: update arm64 minimum supported platform (Gibson Fahnestock) #19164
  • [afcf059898] - build: do not cd on vcbuild help (Vse Mozhet Byt) #19291
  • [ca8d4e3450] - build: define NOMINMAX on windows (Ben Noordhuis) #22731
  • [5245d6ac97] - deps: V8: partially revert d868eb7 (Ali Ijaz Sheikh) #24499
  • [62dd1d7bd4] - deps: upgrade to libuv 1.23.2 (cjihrig) #23336
  • [b38190ebb0] - deps: upgrade to libuv 1.23.1 (cjihrig) #22997
  • [d9d541c415] - deps: upgrade to libuv 1.23.0 (cjihrig) #22365
  • [e3d08af7c1] - deps: upgrade to libuv 1.22.0 (cjihrig) #21731
  • [11cb09b25a] - deps: upgrade to libuv 1.21.0 (cjihrig) #21466
  • [c54f4bc8e8] - deps: upgrade to libuv 1.20.3 (cjihrig) #20585
  • [2307653abf] - deps: upgrade to libuv 1.20.2 (cjihrig) #20129
  • [a1b94d35e7] - deps: upgrade libuv to 1.20.0 (cjihrig) #19758
  • [ce65d84537] - deps: backport a8f6869 from upstream V8 (Ben Newman) #22714
  • [7ab253f62e] - deps: V8: cherry-pick 64-bit hash seed commits (Yang Guo) #23274
  • [60f7bfa4d7] - deps: update to nghttp2 1.33.0 (Anna Henningsen) #22649
  • [48f31bdf20] - deps: V8: backport 20 CPU profiler commits from upstream (Peter Marshall) #21558
  • [9e2077afee] - deps: backport 9a23bdd from upstream V8 (Daniel Beckert) #22418
  • [610297e2ab] - doc: improve best practices in onboarding-extras (Rich Trott) #19315
  • [9446bb68ea] - doc: fix minor issues in async_hooks.md (Rich Trott) #19313
  • [5b9af6ea73] - doc: update username and email (Yuta Hiroto) #19338
  • [bae7c608e2] - doc: document http2 timeouts (Sagi Tsofan) #22798
  • [d0be932375] - doc: simplify http2 wording and formatting (Rich Trott) #22541
  • [3fe9293efc] - doc: make createPushResponse() more detailled (MaleDong) #22366
  • [3980ca1840] - doc: clarify http2 docs around class exports (James M Snell) #22247
  • [32bfd7ebfb] - doc: add missing require to example in http2.md (Kevin Simper) #21858
  • [2116ace0ad] - doc: fix http2stream.pushStream error doc (Сковорода Никита Андреевич) #21487
  • [4228141012] - doc: Improve doc for Http2 headers object (Gerhard Stoebich) #21296
  • [11a63ddf48] - doc: fix typo in http2.md (Keita Akutsu) #20843
  • [4f0035485f] - doc: add parameters for Http2Stream:error event (Ujjwal Sharma) #20610
  • [77acef4af2] - doc: add params for ClientHttp2Session:altsvc (Ujjwal Sharma) #20598
  • [448922d0de] - doc: add parameters for Http2Session:stream event (Ujjwal Sharma) #20547
  • [41e89316e6] - doc: add parameters for settings events (Ujjwal Sharma) #20371
  • [1a6a054899] - doc: improve parameters for Http2Session:goaway event (Ujjwal Sharma)
  • [98ed30f3f5] - doc: improve docs for Http2Session:frameError (Ujjwal Sharma) #20236
  • [b32cf8fa40] - doc: add parameters for Http2Session:error event (Ujjwal Sharma) #20206
  • [c0d1423bd3] - doc: close event does not take arguments (Indranil Dasgupta) #20031
  • [459690aca4] - doc: improve style guide text (Rich Trott) #19269
  • [eaabbf4ff0] - doc: make caveat in stream.md more concise (Rich Trott) #19251
  • [0340dd8c8d] - doc: add and unify return statements in crypto.md (Vse Mozhet Byt) #19853
  • [b0d6067d87] - doc: fix 8.12.0 changelog (Myles Borins) #22803
  • [af5cebb326] - doc,http2: add parameters for Http2Session:connect event (Ujjwal Sharma) #20193
  • [57618aae0a] - errors: fix undefined HTTP2 and tls errors (Shailesh Shekhawat) #21564
  • [e3bddeec18] - http: fix undefined error in parser event (Anatoli Papirovski) #20029
  • [1edd7f6393] - (SEMVER-MINOR) http: added aborted property to request (Robert Nagy) #20094
  • [7f34c277ac] - http2: simplify timeout tracking (Anna Henningsen) #19206
  • [18a2b3dc8e] - (SEMVER-MINOR) http2: graduate from experimental (James M Snell) #22466
  • [10576d6e77] - (SEMVER-MINOR) http2: add ping event (James M Snell) #23009
  • [ca933ce577] - http2: do not falsely emit ‘aborted’ on push (Anatoli Papirovski) #22878
  • [49f44f3b44] - (SEMVER-MINOR) http2: add origin frame support (James M Snell) #22956
  • [9f7934159e] - http2: check if stream is not destroyed before sending trailers (Matteo Collina) #22896
  • [2de17ead89] - (SEMVER-MINOR) http2: add http2stream.endAfterHeaders property (James M Snell) #22843
  • [805bf40bfd] - http2: don't expose the original socket through the socket proxy (Szymon Marczak) #22650
  • [6a396ff911] - http2: throw better error when accessing unbound socket proxy (James M Snell) #22486
  • [348cde07fd] - http2: emit timeout on compat request and response (James M Snell) #22252
  • [cc561cc5a7] - http2: explicitly disallow nested push streams (James M Snell) #22245
  • [5c3edd3479] - http2: avoid race condition in OnHeaderCallback (James M Snell) #22256
  • [f2f66b4cfb] - http2: remove streamError from docs (James M Snell) #22246
  • [d602c7a2ed] - http2: release request()'s “connect” event listener after it runs (James Ide) #21916
  • [745e1e6192] - http2: remove unused nghttp2 error list (Anna Henningsen) #21827
  • [e5175e6596] - http2: remove waitTrailers listener after closing a stream (RidgeA) #21764
  • [071a022dbc] - http2: order declarations in core.js (Rich Trott) #21689
  • [1cdf93ecdc] - http2: pass incoming set-cookie header as array (Gerhard Stoebich) #21360
  • [20b72fc94d] - http2: track memory allocated by nghttp2 (Anna Henningsen) #21374
  • [e9e4f434b3] - http2: fix memory leak when headers are not emitted (Anna Henningsen) #21373
  • [0f3e65099d] - http2: fix memory leak for uncommon headers (Anna Henningsen) #21336
  • [0a8d0861f2] - http2: safer Http2Session destructor (Anatoli Papirovski) #21194
  • [3c8c53f4f4] - http2: fix premature destroy (Anatoli Papirovski) #21051
  • [b22266cc97] - http2: force through RST_STREAM in destroy (Anatoli Papirovski) #21016
  • [91be1dc2a5] - http2: delay closing stream (Anatoli Papirovski) #20997
  • [0a6672fbcf] - http2: fix several serious bugs (Anatoli Papirovski) #20772
  • [b0c92cadfa] - http2: fix end without read (Anatoli Papirovski) #20621
  • [d1b78252b1] - http2: avoid bind and properly clean up in compat (Robert Nagy) #20374
  • [395ce845da] - http2: rename http2_state class to Http2State (Daniel Bevenius) #20423
  • [74192ddb66] - http2: reduce require calls in http2/core (Daniel Bevenius) #20422
  • [28a6e59bd3] - http2: fix ping callback (Ruben Bridgewater) #20311
  • [41dca9e851] - http2: fix responses to long payload reqs (Anatoli Papirovski) #20084
  • [fa5a3809a3] - http2: refactor how trailers are done (James M Snell) #19959
  • [5862d0372c] - http2: fix ping duration calculation (James M Snell) #19956
  • [2ae98ce7cb] - lib: define printErr() in script string (cjihrig) #19285
  • [b0e3ce9c4b] - net,http2: refactor _write and _writev (Ujjwal Sharma) #20643
  • [0187e3bef8] - process: avoid using the same fd for ipc and stdio (cjihrig) #21466
  • [5b2f6508f9] - src: make AsyncWrap constructors delegate (Daniel Bevenius) #19366
  • [9e8f4e5047] - src: remove unused uv.h include from async_wrap.cc (Daniel Bevenius) #19342
  • [042434f9af] - src: fix indenting of wrap->EmitTraceEventBefore (Daniel Bevenius) #19340
  • [3ad10e5789] - src: add extractPromiseWrap function (Daniel Bevenius) #19340
  • [b67bf38f31] - src: fix fs.write() externalized string handling (Ben Noordhuis) #18216
  • [0157e3ebca] - src,deps: add ABI safe use of CheckMemoryPressure (Ali Ijaz Sheikh) #24499
  • [dbc7d9baae] - test: read() on dir on AIX does not return EISDIR (Ben Noordhuis) #23330
  • [3cd4462370] - test: ensure failed assertions cause build to fail (Teddy Katz) #19650
  • [9f15bc40b8] - test: skip failing tests for osx mojave (jn99) #23550
  • [aba1ff202c] - test: refactor test-fs-readfile-tostring-fail (Rich Trott) #19404
  • [38ed6c2b25] - test: fix flaky test-http2-ping-flood (Rich Trott) #19395
  • [b407060556] - test: fix flaky test-http2-settings-flood (Rich Trott) #19349
  • [069fd79424] - test: improve debugging information for http2 test (Rich Trott) #23058
  • [c0f8e49c32] - test: remove setImmediate from timeout test (Rich Trott) #23058
  • [b66cba0766] - test: add test-http2-large-file sequential test (James M Snell) #22254
  • [7ea08eedac] - test: improve reliability in http2-session-timeout (Rich Trott) #22026
  • [dcf04dc7df] - test: refactor test-http2-compat-serverresponse-finished.js (Anto Aravinth) #21929
  • [322f39d490] - test: minor adjustments to test-http2-respond-file (Anna Henningsen) #21098
  • [5d29e2c631] - test: fix flaky http2-session-unref (Anatoli Papirovski) #20772
  • [e5f8b08305] - test: improve reliability of http2-session-timeout (Rich Trott) #20692
  • [c30a8f468d] - test: fix flaky http2-flow-control test (Anatoli Papirovski) #20556
  • [aa341d1d3d] - test: verify arguments length in common.expectsError (Ruben Bridgewater) #20311
  • [c7ba556264] - test: removed assert.strictEqual message (kailash k yogeshwar) #20223
  • [5abe246a44] - test: add strictEqual method to assert (Christine E. Taylor) #20189
  • [887417eb37] - test: remove message from strictEqual assertions (Bryan Azofeifa) #20174
  • [fe3836a871] - test: delete test/parallel/test-regress-GH-4948 (Ujjwal Sharma)
  • [4bcdc1b83c] - test: fix assertion argument order (Rich Trott) #19264
  • [534bc82578] - test: name test files appropriately (Ujjwal Sharma) #19212
  • [d58867a6a7] - test: call gc() explicitly to avoid OOM (Refael Ackermann) #22301
  • [8209ccb313] - test: prepare test-assert for strictEqual linting (Rich Trott) #22849
  • [52b21caff2] - test: remove string literal from assertion (Rich Trott) #22849
  • [976d55f9e3] - test: remove string literal from assertion (Rich Trott) #22849
  • [702d67f4c4] - test: refactor flag check (Rich Trott) #22849
  • [e9416d4f67] - test: simplify assertion in http2 tests (Rich Trott) #22849
  • [f2158f30fb] - test: improve assertion in test-inspector.js (Rich Trott) #22849
  • [f5985c734c] - tls,http2: handle writes after SSL destroy more gracefully (Anna Henningsen) #18987

2018-09-11, Version 8.12.0 ‘Carbon’ (LTS), @MylesBorins

Notable Changes

  • async_hooks:
    • rename PromiseWrap.parentId (Ali Ijaz Sheikh) #18633
    • remove runtime deprecation (Ali Ijaz Sheikh) #19517
    • deprecate unsafe emit{Before,After} (Ali Ijaz Sheikh) #18513
  • cluster:
    • add cwd to cluster.settings (cjihrig) #18399
    • support windowsHide option for workers (Todd Wong) #17412
  • crypto:
    • allow passing null as IV unless required (Tobias Nießen) #18644
  • deps:
    • upgrade npm to 6.4.1 (Kat Marchán) #22591
    • upgrade libuv to 1.19.2 (cjihrig) #18918
    • Upgrade node-inspect to 1.11.5 (Jan Krems) #21055
  • fs,net:
    • support as and as+ flags in stringToFlags() (Sarat Addepalli) #18801
    • emit ‘ready’ for fs streams and sockets (Sameer Srivastava) #19408
  • http, http2:
    • add options to http.createServer() (Peter Marton) #15752-
    • add 103 Early Hints status code (Yosuke Furukawa) #16644
    • add http fallback options to .createServer (Peter Marton) #15752
  • n-api:
    • take n-api out of experimental (Michael Dawson) #19262
  • perf_hooks:
    • add warning when too many entries in the timeline (James M Snell) #18087
  • src:
    • add public API for managing NodePlatform (Cheng Zhao) #16981
    • allow --perf-(basic-)?prof in NODE_OPTIONS (Leko) #17600
    • node internals' postmortem metadata (Matheus Marchini) #14901
  • tls:
    • expose Finished messages in TLSSocket (Anton Salikhmetov) #19102
  • trace_events:
    • add file pattern cli option (Andreas Madsen) #18480
  • util:
    • implement util.getSystemErrorName() (Joyee Cheung) #18186

Commits

  • [b7f9334454] - (SEMVER-MINOR) async_hooks: rename PromiseWrap.parentId (Ali Ijaz Sheikh) #18633
  • [373f4d6225] - (SEMVER-MINOR) async_hooks: remove runtime deprecation (Ali Ijaz Sheikh) #19517
  • [daacff8584] - (SEMVER-MINOR) async_hooks: deprecate unsafe emit{Before,After} (Ali Ijaz Sheikh) #18513
  • [8f5e9916d1] - async_wrap: fix memory leak in AsyncResource (Michael Dawson) #20668
  • [0a3ebb030e] - benchmark: add JSStreamWrap benchmark (Anna Henningsen) #17983
  • [4009e3f245] - buffer: fix typo in lib/buffer.js (Ujjwal Sharma) #19126
  • [20d805e4bc] - build: disable openssl build warnings on macos (Ben Noordhuis) #19046
  • [abcc9119d2] - build: fix rm commands in tarball rule (Ben Noordhuis) #18332
  • [0bef96094e] - build: include the libuv and zlib into node (Yihong Wang) #18383
  • [2ec7dd4edc] - build: fix configure script for double-digits (Misty De Meo) #21183
  • [020057ade7] - build: make lint-ci work properly on Linux make (Rod Vagg) #19746
  • [18fd620606] - build: add node_lib_target_name to cctest deps (Daniel Bevenius) #18576
  • [9bd5fc2b34] - build: make gyp user defined variables lowercase (Daniel Bevenius) #16238
  • [1d90700514] - child_process: fix stdio sockets creation (Santiago Gimeno) #18701
  • [dc000a55d3] - (SEMVER-MINOR) cluster: add cwd to cluster.settings (cjihrig) #18399
  • [76805f0043] - (SEMVER-MINOR) cluster: support windowsHide option for workers (Todd Wong) #17412
  • [4d5cb4c8b5] - crypto: use bool over int consistently (Tobias Nießen) #19238
  • [5a3dc37bc8] - crypto: Use math.h definitions of isnan and isinf (Jeroen Roovers) #19196
  • [fc34f5cae2] - (SEMVER-MINOR) crypto: allow passing null as IV unless required (Tobias Nießen) #18644
  • [4f3bf0449c] - crypto: use non-deprecated v8::Object::Set (Daniel Bevenius) #17482
  • [c491ac424b] - crypto: remove BIO_set_shutdown (Daniel Bevenius) #17542
  • [f82d58db4c] - (SEMVER-MINOR) deps: upgrade npm to 6.4.1 (Kat Marchán) #22591
  • [5294919d05] - deps: V8: cherry-pick 9040405 from upstream (Junliang Yan) #22375
  • [ae63db8624] - deps: backport 804a693 from upstream V8 (Matheus Marchini) #21855
  • [bf2daab673] - deps: Upgrade node-inspect to 1.11.5 (Jan Krems) #21055
  • [d9ab189f55] - deps: cherry-pick b767cde1e7 from upstream V8 (Ben Noordhuis) #19710
  • [812b97c826] - deps: fix typo in openssl upgrading doc (Daniel Bevenius) #19789
  • [60733a7a78] - deps: upgrade libuv to 1.19.2 (cjihrig) #18918
  • [31883368c7] - deps: cherry-pick 0c35b72 from upstream V8 (Gus Caplan) #18038
  • [74ca456af0] - (SEMVER-MINOR) deps: upgrade npm to 6.2.0 (Kat Marchán) #21592
  • [ffb72f810e] - deps: cherry-pick 09b53ee from upstream V8 (Anna Henningsen) #21767
  • [8e0f28b8f0] - deps: V8: backport 49712d8a from upstream (Ali Ijaz Sheikh) #21334
  • [efe28b8581] - deps: V8: fix bug in InternalPerformPromiseThen (Ali Ijaz Sheikh) #21426
  • [9aeffab452] - deps: V8: cherry-pick 8361fa58 from upstream (Ali Ijaz Sheikh) #21294
  • [f987a512d4] - deps: V8: backport b49206d from upstream (Ali Ijaz Sheikh) #20727
  • [185aca054e] - deps: float fix on node-gyp in npm tree (Myles Borins) #21448
  • [677236494b] - (SEMVER-MINOR) deps: upgrade npm to 6.1.0 (Rebecca Turner) #20190
  • [e6cd7e57b3] - deps: V8: cherry-pick 5ebd6fcd from upstream (Ali Ijaz Sheikh) #21269
  • [d868eb784c] - deps: V8: cherry-pick 502c6ae6 from upstream (Ali Ijaz Sheikh) #21269
  • [656ceea393] - deps: cherry-pick dbfe4a49d8 from upstream V8 (Jan Krems) #16889
  • [a02319368c] - doc: fix/add link to Android info (Vse Mozhet Byt) #19004
  • [cae60ca57a] - doc: add warning to assert.doesNotThrow() (Ruben Bridgewater) #18699
  • [7ed297d528] - doc: remove warning against readable/readable.read (Rich Trott) #19193
  • [94d27e21ef] - doc: add inspector usage example (Ali Ijaz Sheikh) #19172
  • [1116d3274d] - doc: make suggestion more direct in stream.md (Rich Trott) #19124
  • [369e1efca9] - doc: remove subsystem from pull request template (Rich Trott) #19125
  • [d14137590e] - doc: remove tentativeness in pull-requests.md (Rich Trott) #19123
  • [e2190ad755] - doc: add simple example to rename function (punteek) #18812
  • [d9895c4ba7] - doc: add URL.format() example (Zeke Sikelianos) #18888
  • [c2978ac045] - doc: update list of re-exported symbols (Richard Lau) #19013
  • [7f6e0b3510] - doc: Readable unpipe on Writable error event (George Sapkin) #18080
  • [ce66b02f97] - doc: add RegExp Unicode Property Escapes to intl (Vse Mozhet Byt) #19052
  • [68e78e8e9e] - doc: make the background section concise and improve its formality (Wilson) #18928
  • [dbc5bedd3e] - doc: add process.debugPort to doc/api/process.md (flickz) #18716
  • [dc6dadd585] - doc: readable.push(undefined) in non-object mode (陈刚) #18283
  • [4a795dd084] - doc: improve buf.lastIndexOf() text (Rich Trott) #19904
  • [24a105f63f] - doc: remove eu-strip from tarball (jvelezpo) #20304
  • [14a5dd4769] - doc: add tools/doc/README link in doc/STYLE_GUIDE (Vse Mozhet Byt) #20071
  • [f391181b27] - doc: update tools/doc/README.md (Vse Mozhet Byt) #20047
  • [ab559b88f6] - doc: add trivikr to collaborators (Trivikram) #19384
  • [98fe68fbb0] - doc: add pronouns to readme (Teddy Katz) #22036
  • [274b2d2a89] - doc: remove confusing “cats” from style guide (Rich Trott) #19246
  • [20ee726c9c] - doc: remove superfluous adverb from style guide (Rich Trott) #19246
  • [b9b422abe2] - doc: add watson to collaborators (Thomas Watson) #19234
  • [eae80e43ae] - doc: add MoonBall to collaborators (Chen Gang) #19109
  • [f876887cae] - doc: update description of ‘clientError’ event (Luigi Pinca) #18885
  • [07e2bd4b73] - doc: remove CII badge in README (Roman Reiss) #18908
  • [8fad7affd9] - doc: fix nits in tools/doc/README.md (Vse Mozhet Byt) #18874
  • [a1902caf09] - doc: improved documentation for fs.unlink() (dustinnewman98) #18843
  • [8c5ad68add] - doc: fix broken link in pull-requests.md (Justin Lee) #18873
  • [399ba4b8d8] - doc: mark accessing IPC channel fd as undefined (Bartosz Sosnowski) #17545
  • [2cbeea0926] - doc: add Yihong Wang to collaborators (Yihong Wang) #18824
  • [f57c53c811] - doc: add missing metadata for fs.open (Tobias Nießen) #19585
  • [ebd73ad27a] - doc: activate no-multiple-empty-lines rule (Ruben Bridgewater) #18747
  • [adca631f8a] - doc: note that linting is required in releases.md (Gibson Fahnestock) #18776
  • [a5ee6eeea7] - doc: remove extra space in README.md (Matheus Marchini) #18822
  • [9c52231a05] - doc: update crypo Certficate class. (Antoine AMARA) #18721
  • [a26454ea32] - doc: add error check to fs example (Evan Lucas) #18681
  • [531cb6238d] - doc: add missing metadata for settings.windowsHide (Tobias Nießen) #19578
  • [bb85fd6f5b] - doc: add missing metadata for cluster.settings.cwd (Tobias Nießen) #19569
  • [4709734cfc] - doc: cleanup n-api.md doc (Michael Dawson) #20430
  • [e1a7244fbd] - doc: Uint8Array support in Buffer functions (SheetJS) #19949
  • [3ad5e30e05] - doc: remove ES6/ECMAScript 2015 from buffer.md (Rich Trott) #19685
  • [41bb1107cf] - doc: Uint8Array support in Buffer functions (SheetJS) #19949
  • [cf0577eef2] - doc: remove ES6/ECMAScript 2015 from buffer.md (Rich Trott) #19685
  • [fceeee616b] - doc: Update tools/icu/README.md (Steven R. Loomis) #16939
  • [52f5829cdb] - doc: fix typo in http2.md (Vse Mozhet Byt) #18872
  • [50316e2021] - doc,tools: formalize, unify, codify default values (Vse Mozhet Byt) #19737
  • [98f5b17ee1] - errors: make message non-enumerable (Ruben Bridgewater) #19719
  • [9dc1f509f1] - errors: move error creation helpers to errors.js (Joyee Cheung) #18546
  • [9696bf920f] - errors: lazy load util in internal/errors.js (Joyee Cheung) #18358
  • [e25d5d077d] - (SEMVER-MINOR) fs: support as and as+ flags in stringToFlags() (Sarat Addepalli) #18801
  • [35a1bd97ba] - (SEMVER-MINOR) fs,net: emit ‘ready’ for fs streams and sockets (Sameer Srivastava) #19408
  • [68a810cd85] - http: prevent aborted event when already completed (Andrew Johnston) #18999
  • [c4fa1f72a2] - http: prevent aborted event when already completed (Andrew Johnston) #18999
  • [1fc00f0821] - http: do not rely on the ‘agentRemove’ event (Luigi Pinca) #20786
  • [e094275799] - http: simplify parser lifetime tracking (Anna Henningsen) #18135
  • [01dc646382] - (SEMVER-MINOR) http: add options to http.createServer() (Peter Marton) #15752
  • [7c43099d1e] - (SEMVER-MINOR) http, http2: add 103 Early Hints status code (Yosuke Furukawa) #16644
  • [87818dc8bc] - http2: destroy the socket properly and add tests (Mathias Buus) #19852
  • [de51a83e58] - http2: remove unused using declarations node_http2 (Daniel Bevenius) #20420
  • [a29cd25b41] - http2: refer to stream errors by name (Anna Henningsen) #18966
  • [06329a8eaf] - http2: remove duplicate words in comments (Tobias Nießen) #17939
  • [955080f7ee] - http2: pass session to DEBUG_HTTP2SESSION2 (Daniel Bevenius) #20815
  • [b1b0486049] - http2: add req and res options to server creation (Peter Marton) #15560
  • [3f78847e0e] - (SEMVER-MINOR) http2: add http fallback options to .createServer (Peter Marton) #15752
  • [cf833e4901] - lib: change hook -> hooks in code comment (Daniel Bevenius) #19053
  • [29b5d3999e] - lib: re-fix v8_prof_processor (Anna Henningsen) #19059
  • [2702fd779e] - lib: replace eval with vm.runInThisContext (Myles Borins) #18623
  • [7e23946c87] - lib: provide proper deprecation code (Ruben Bridgewater) #18694
  • [7c6e391419] - lib, src: use process.config instead of regex (Jon Moss) #17814
  • [0f83f251fe] - module: enable dynamic import flag for esmodules (Myles Borins) #18387
  • [d7192c4e6a] - module: Set dynamic import callback (Jan Krems) #15713
  • [35a8ff7e55] - n-api: create functions directly (Gabriel Schulhof) #21688
  • [7033bbaa01] - n-api: throw when entry point is null (Gabriel Schulhof) #20779
  • [4911c4e9fa] - n-api: improve runtime perf of n-api func call (Kenny Yuan) #21072
  • [0b2f52706d] - (SEMVER-MINOR) n-api: take n-api out of experimental (Michael Dawson) #19262
  • [4a267f0e3c] - net: simplify net.Socket#end() (Anna Henningsen) #18708
  • [3d38bab64e] - net: use _final instead of on('finish') (Anna Henningsen) #18608
  • [1a1288d03c] - perf_hooks: fix timing (Timothy Gu) #18993
  • [b4192b007b] - (SEMVER-MINOR) perf_hooks: add warning when too many entries in the timeline (James M Snell) #18087
  • [68d33c692e] - perf_hooks: fix scheduling regression (Anatoli Papirovski) #18051
  • [711098e88c] - (SEMVER-MINOR) process: Send signal name to signal handlers (Robert Rossmann) #15606
  • [2ec981b078] - process: use more direct sync I/O for stdio (Anna Henningsen) #18019
  • [a6fca750be] - repl: better handling of recoverable errors (Prince J Wesley) #18915
  • [66343c546c] - (SEMVER-MINOR) src: add environment cleanup hooks (Anna Henningsen) #19377
  • [f33f3238f9] - src: #include <stdio.h>" to iculslocs (Steven R. Loomis) #19150
  • [02ea033e05] - src: fix error message in async_hooks constructor (Daniel Bevenius) #19000
  • [d478bc7375] - src: fix bootstrap_node on bsd (sylkat) #22663
  • [cbe92390c1] - src: use DoTryWrite() for not-all-Buffer writev()s too (Anna Henningsen) #18019
  • [69efa9f6b3] - src: remove node namespace qualifiers (Daniel Bevenius) #18962
  • [8af6b75e10] - (SEMVER-MINOR) src: add public API for managing NodePlatform (Cheng Zhao) #16981
  • [e194c3782b] - src: fix deprecation warning in node_perf.cc (Daniel Bevenius) #18877
  • [161869ece0] - (SEMVER-MINOR) src: allow --perf-(basic-)?prof in NODE_OPTIONS (Leko) #17600
  • [eaf99d9393] - src: add node_encoding.cc (James M Snell) #21112
  • [0321afed4c] - src: add node_process.cc (James M Snell) #21105
  • [54ea1ccf2d] - src: refactor bootstrap to use bootstrap object (James M Snell) #20917
  • [6f545d1902] - src: fix compiler warning in process.ppid (cjihrig) #16958
  • [9125e2b6fa] - src: add convenience ctor for async trigger id scope (Anna Henningsen) #19204
  • [2ee4bb7826] - src: move Environment ctor/dtor into env.cc (Anna Henningsen) #19202
  • [342dbff852] - src: make AsyncResource destructor virtual (Anna Henningsen) #20633
  • [b916620bf5] - src: fix typo in util.h comment (Anna Henningsen) #20656
  • [8076a793ed] - src: fix nullptr dereference for signal during startup (Anna Henningsen) #20637
  • [1cb9772a40] - src: remove unused freelist.h header (Anna Henningsen) #20544
  • [e17f05a817] - src: create per-isolate strings after platform setup (Ulan Degenbaev) #20175
  • [d38ccbb07f] - src: use unordered_map for perf marks (Anna Henningsen) #19558
  • [553e34ef9c] - src: simplify http2 perf tracking code (Anna Henningsen) #19470
  • [67182912d7] - src: add “icu::” prefix before ICU symbols (Steven R. Loomis)
  • [2cf263519a] - src: use unique_ptr for scheduled delayed tasks (Franziska Hinkelmann) #17083
  • [2148b1921e] - src: use unique_ptr in platform implementation (Franziska Hinkelmann) #16970
  • [e9327541e1] - src: cancel pending delayed platform tasks on exit (Anna Henningsen) #16700
  • [bf8068e6f9] - src: prepare v8 platform for multi-isolate support (Anna Henningsen) #16700
  • [59f13304e1] - src: refactor callback #defines into C++ templates (Anna Henningsen) #18133
  • [a8d2ab50fc] - src: rename On* -> Emit* for stream callbacks (Anna Henningsen) #17701
  • [15c4717e0a] - src: harden JSStream callbacks (Anna Henningsen) #18028
  • [5ea1492b74] - src: fix code coverage cleanup (Michael Dawson) #18081
  • [0d2a720c70] - src: update make for new code coverage locations (Michael Dawson) #17987
  • [2c6f482ba2] - src: remove duplicate words in comments (Tobias Nießen) #17939
  • [7fa97d4f09] - src: make FSEventWrap/StatWatcher::Start more robust (Timothy Gu) #17432
  • [c39b0020b5] - src: expose uv.errmap to binding (Joyee Cheung) #17338
  • [75b456d0b8] - src: do not redefine private for GenDebugSymbols (Joyee Cheung) #18653
  • [7cf26e5813] - src: remove superfluous check in backtrace_posix.cc (Anna Henningsen) #16950
  • [0564454b75] - (SEMVER-MINOR) src, test: node internals' postmortem metadata (Matheus Marchini) #14901
  • [c92d66a749] - stream: delete redundant code (陈刚) #18145
  • [af27768df4] - stream: delete redundant code (陈刚) #18145
  • [9c781f041d] - test: fix test-abort-backtrace in shared lib build (Yihong Wang) #19213
  • [a0fd0b69eb] - test: Remove unnecessary asserion messages in test-crypto-hash.js (Piotr Grzesik) #18984
  • [e6131c2687] - test: do not check text for engine-generated error (Rich Trott) #19215
  • [8adb0b37bd] - test: address unreliable test-performance (Rich Trott) #19228
  • [e1e6a0965e] - test: refactor http-https-default-ports (Ken Lin) #19130
  • [d3a10c70f1] - test: skip postmortem metadata test when nm fails (Joyee Cheung) #19107
  • [f64100a7df] - test: add more information to assert.strictEqual (Ujjwal Sharma) #19162
  • [21be1279dd] - test: move require http2 to after crypto check (Daniel Bevenius) #19111
  • [61dd5b73b5] - test: specify ‘dir’ for directory symlinks (Kyle Farnung) #19049
  • [85aa639440] - test: refactor test after review (Andrew Johnston) #18999
  • [01e2eba0c7] - test: move test-timers-throw-reschedule to sequential (Myles Borins) #22379
  • [812c950691] - test: rename test-regress-GH-877.js (Ujjwal Sharma) #19161
  • [67bdb35e0f] - test: rename test-regress-GH-784.js (Ujjwal Sharma) #19161
  • [37936304e8] - test: address nits and rename the corresponding fixture (Ujjwal Sharma) #19161
  • [d76a96c6ad] - test: rename tests to remove “regress” keyword (Ujjwal Sharma) #19161
  • [b70dd35ba4] - test: rename test-regress-GH-4027 (Ujjwal Sharma) #19161
  • [6092060227] - test: rename test-regress-GH-4015 (Ujjwal Sharma) #19161
  • [6417564b29] - test: rename test-regress-GH-1697 (Ujjwal Sharma) #19161
  • [20a4ec88a0] - test: rename test-regress-GH-1726 (Ujjwal Sharma) #19161
  • [d7b657fceb] - test: refactor test-async-wrap-getasyncid (Santiago Gimeno) #18727
  • [905c350147] - test: remove assert message and add block scope (wuweiweiwu) #19054
  • [7d0f02e48d] - test: fix flaky inspector-stop-profile-after-done (Rich Trott) #18126
  • [4b4383918f] - test: http2 compat response.write() error checks (Trivikram) #18859
  • [78e79c7f7d] - test: fix deprecation warning in binding.cc (Daniel Bevenius) #18877
  • [2f6866e1d9] - test: check symbols in shared lib (Yihong Wang) #18806
  • [a8ae04d528] - test: http2 client ping errors (Trivikram) #18849
  • [901f5799f3] - test: http2 client settings invalid callback (Trivikram) #18850
  • [cd44b82f52] - test: http2 client operations after destroy (Trivikram) #18845
  • [ffa7b50eef] - test: refactor parallel/test-tls-pause (juggernaut451) #18714
  • [83e704d396] - test: stdio pipe behavior tests (Bartosz Sosnowski) #18614
  • [488e1bbe81] - test: refactor parallel/test-tls-0-dns-altname (juggernaut451) #18803
  • [35e691cb40] - test: refactor parallel/test-tls-addca (juggernaut451) #18798
  • [f534bd889a] - test: make tls test more rigorous (Ben Noordhuis) #18792
  • [ecf3616f51] - test: reduce benchmark test run time (juggernaut451) #18787
  • [29009aec96] - test: try to connect after server was closed (Leko) #18257
  • [d0083cbccd] - test: wrap countdown callback in common.mustCall (Bamieh) #18506
  • [0977f042e6] - test: add lib path env when node_shared=true (Yihong Wang) #18626
  • [11695907e1] - test: add multiline repl input regression test (cjihrig) #18718
  • [0b6ab530c1] - test: add crypto check to test-benchmark-tls (Daniel Bevenius) #18724
  • [6bc307ff32] - test: add useful info to error msg and refactor (Chin Huang) #18541
  • [1654b12037] - test: fix missing param in benchmark-timers (Anatoli Papirovski) #18734
  • [bbc7443724] - test: fix and improve error message (Kevin Caulfield) #18449
  • [4eca50a2a0] - test: fix flaky repl-timeout-throw (Santiago Gimeno) #18692
  • [3cdae1541b] - test: remove NodeTestFixture from Env constructor (Daniel Bevenius) #18558
  • [25ce5c3852] - test: introduce SetUpTestCase/TearDownTestCase (Daniel Bevenius) #18558
  • [e98efcfa6a] - test: replace assert.equal with assert.strictEqual (Sho Miyamoto) #18119
  • [9a9ea0d756] - test: bypass dns for IPv6 net tests (Refael Ackermann) #16976
  • [d0588f151d] - test: fix flaky http-client-timeout-agent (Santiago Gimeno) #19856
  • [1e25f00353] - test: move http-client-timeout-agent to sequential (Rich Trott) #19809
  • [0517cd8504] - test: fix test-cluster-send-handle-large-payload (Rich Trott) #19311
  • [8053474679] - test: add http2/tls destroy regression test (Anna Henningsen) #21598
  • [ed0d939dbc] - test: remove --harmony-sharedarraybuffer usage (Ben Smith) #16343
  • [0f45ecb68c] - test: add http _dump regression test (Anna Henningsen) #21595
  • [6d3cbcbb13] - test: make test-error-reporting engine agnostic (Rich Trott) #16272
  • [b1110b22b4] - test: fix test when NODE_OPTIONS env var is set to --trace-warnings (Ashok) #20027
  • [f0f44f69a6] - test: check TTY mode reset on exit (Anna Henningsen) #21027
  • [71ee19e064] - test: plug AliasedBuffer cctest memory leak (Anna Henningsen) #20665
  • [3c6464a4f4] - test: add regression test for large write (Anna Henningsen) #19551
  • [21cdb73d67] - test: allow running with NODE_PENDING_DEPRECATION (Anna Henningsen) #18991
  • [ad862a0114] - test: properly tag anonymous namespaces (Michael Dawson) #18583
  • [1942440696] - test: refactor test-repl (Anna Henningsen) #17926
  • [7d263ff708] - test: fix unreliable async-hooks/test-signalwrap (Rich Trott) #17827
  • [fa6f808c71] - test: add test for postmortem metadata validation (cjihrig) #17685
  • [88c4adfdde] - test: remove test case 0 from tls-cnnic-whitelist (Daniel Bevenius) #19767
  • [64b4ea47ed] - test: set clientOpts.port property (Daniel Bevenius) #19767
  • [b7564c48dd] - test: fix cctest -Wunused-variable warning (Ben Noordhuis) #18530
  • [d55e4adc3d] - test,benchmark,doc: enable dot-notation rule (Ruben Bridgewater) #18749
  • [1f49de4b24] - (SEMVER-MINOR) tls: expose Finished messages in TLSSocket (Anton Salikhmetov) #19102
  • [1cf17df769] - tls: accept array of protocols in TLSSocket (Mark S. Everitt) #16655
  • [8292bc3892] - tls: use correct class name in deprecation message (Anna Henningsen) #17561
  • [c56aafd645] - tools: add log output to crashes (Ruben Bridgewater) #20295
  • [422b6e8b9f] - tools: show stdout/stderr for timed out tests (Rich Trott) #20260
  • [f8c5042454] - tools: include exit code in TAP log (Refael Ackermann) #19855
  • [11e53cd323] - tools: include exit code in test failures (Rich Trott) #19855
  • [246c2d18cb] - tools: fix TypeError from test.py --time (Richard Lau) #20368
  • [1241b90a13] - tools: simplify HTML generation (Vse Mozhet Byt) #20307
  • [ac05c2b226] - tools: modernize and optimize doc/addon-verify.js (Vse Mozhet Byt) #20188
  • [fc41817f97] - tools: don’t emit illegal utf-8 from icutrim/iculslocs (Steven R. Loomis) #19756
  • [cf2a7e9ce6] - tools: apply editorconfig rules to tools also (Tobias Nießen) #19521
  • [36ffc3b69b] - tools: remove src dir from JS editorconfig rule (Tobias Nießen) #19521
  • [ff4c30e9bb] - tools: dry utility function in tools/doc/json.js (Vse Mozhet Byt) #19692
  • [59b99e88fb] - tools: fix comment nits in tools/doc/*.js files (Vse Mozhet Byt) #19696
  • [eb5f08546e] - tools: fix nits in tools/doc/type-parser.js (Vse Mozhet Byt) #19612
  • [4a1b064cdc] - tools: simplify tools/doc/preprocess.js (Vse Mozhet Byt) #19539
  • [fe4e511ae8] - tools: fix nits in tools/doc/common.js (Vse Mozhet Byt) #19599
  • [11b8d4793f] - tools: shorten metadata parsing (Tobias Nießen) #19512
  • [aa3be00b08] - tools: make metadata parsing less permissive (Tobias Nießen) #19512
  • [2fb47a5cbf] - tools: fix nits in tools/doc/preprocess.js (Vse Mozhet Byt) #19473
  • [e1c28b6f46] - tools: fix logic nit in tools/doc/generate.js (Vse Mozhet Byt) #19475
  • [7d4d96b63d] - tools: bump remark-cli to 4.0 (Refael Ackermann) #17028
  • [814021182e] - tools: fix custom eslint rule errors (Ruben Bridgewater) #18853
  • [ce62e142b3] - tools: ignore VS compiler output in deps/v8 (Michaël Zasso) #18952
  • [817f43637b] - tools: custom eslint autofix for inspector-check.js (Shobhit Chittora) #16646
  • [c32b087161] - tools: auto fix custom crypto-check eslint rule (Shobhit Chittora) #16647
  • [7f1a9421c0] - tools: fix eslint isRequired (Ruben Bridgewater) #18729
  • [bf09b7a155] - tools: treat SIGABRT as crash (Anna Henningsen) #19990
  • [79919a3a9a] - tools: ensure doc-only doesn't update package-lock (Myles Borins) #21015
  • [c5eb1f83d0] - tools: update tooling to work with new macOS CLI … (Rich Trott) #21173
  • [5362e2fbb3] - tools: fix test-npm-package (Michaël Zasso) #19293
  • [ab967b725e] - tools: fix icu readme lint error (Anatoli Papirovski) #18445
  • [f2506d46b5] - tools: don't lint-md as part of main lint target (Refael Ackermann) #17587
  • [3857e108ca] - tools: speed up lint-md-build (Refael Ackermann) #16945
  • [c4716dc711] - tools, test: fix prof polyfill readline (killagu) #18641
  • [4df93dc8ac] - tools,bootstrap: preprocess gypi files to json (Gus Caplan) #19140
  • [7a35e18177] - tools,gyp: fix regex for version matching (Rich Trott) #21216
  • [e602726c68] - (SEMVER-MINOR) trace_events: add file pattern cli option (Andreas Madsen) #18480
  • [9fdba04e5e] - tty: fix console printing on Windows (Anna Henningsen) #18214
  • [40a36b3af8] - url: added url fragment lookup table (Hakan Kimeiga) #17627
  • [654ce4ba17] - url: added space to class string of iterator objects (Haejin Jo) #17558
  • [66520afdb8] - util: skip type checks in internal getSystemErrorName (Joyee Cheung) #18546
  • [58b5a610d8] - (SEMVER-MINOR) util: implement util.getSystemErrorName() (Joyee Cheung) #18186
  • [ec1828c2b6] - (SEMVER-MAJOR) v8: add new to the throw statement (Ruben Bridgewater) #13857
  • [8a5c100793] - win, tools: add nasm to boxstarter script (Bartosz Sosnowski) #19950

2018-08-15, Version 8.11.4 ‘Carbon’ (LTS), @rvagg

This is a security release. All Node.js users should consult the security release summary at:

https://nodejs.org/en/blog/vulnerability/august-2018-security-releases/

for details on patched vulnerabilities.

Fixes for the following CVEs are included in this release:

  • CVE-2018-0732 (OpenSSL)
  • CVE-2018-12115 (Node.js)

Notable Changes

  • buffer: Fix out-of-bounds (OOB) write in Buffer.write() for UCS-2 encoding (CVE-2018-12115)
  • deps: Upgrade to OpenSSL 1.0.2p, fixing:
    • Client DoS due to large DH parameter (CVE-2018-0732)
    • ECDSA key extraction via local side-channel (CVE not assigned)

Commits

2018-06-12, Version 8.11.3 ‘Carbon’ (LTS), @evanlucas

Notable Changes

  • buffer (CVE-2018-7167): Fixes Denial of Service vulnerability where calling Buffer.fill() could hang
  • http2
    • (CVE-2018-7161): Fixes Denial of Service vulnerability by updating the http2 implementation to not crash under certain circumstances during cleanup
    • (CVE-2018-1000168): Fixes Denial of Service vulnerability by upgrading nghttp2 to 1.32.0

Commits

2018-05-15, Version 8.11.2 ‘Carbon’ (LTS), @MylesBorins

Notable Changes

  • deps:
    • update node-inspect to 1.11.3 (Jan Krems) #18354
    • update nghttp2 to 1.29.0 (James M Snell) #17908
  • http2:
    • Sync with current release stream
  • n-api:
    • Sync with current release stream

Commits

2018-03-29, Version 8.11.1 ‘Carbon’ (LTS), @MylesBorins

Notable Changes

No additional commits.

Due to incorrect staging of the upgrade to the GCC 4.9.X compiler, the latest releases for PPC little endian were built using GCC 4.9.X instead of GCC 4.8.X. This caused an ABI breakage on PPCLE based environments. This has been fixed in our infrastructure and we are doing this release to ensure that the hosted binaries are adhering to our platform support contract.

Note that Node.js versions 10.X and later will be built with version 4.9.X or later of the GCC compiler, and it is possible that Node.js version 8.X may be built on the 4.9.X compiler at a later time as the stated minimum compiler requirement for Node.js version 8.X is 4.9.4.

2018-03-28, Version 8.11.0 ‘Carbon’ (LTS), @MylesBorins

This is a security release. All Node.js users should consult the security release summary at https://nodejs.org/en/blog/vulnerability/march-2018-security-releases/ for details on patched vulnerabilities.

Fixes for the following CVEs are included in this release:

  • CVE-2018-7158
  • CVE-2018-7159
  • CVE-2018-7160

Notable Changes

  • Upgrade to OpenSSL 1.0.2o: Does not contain any security fixes that are known to impact Node.js.
  • Fix for inspector DNS rebinding vulnerability (CVE-2018-7160): A malicious website could use a DNS rebinding attack to trick a web browser to bypass same-origin-policy checks and allow HTTP connections to localhost or to hosts on the local network, potentially to an open inspector port as a debugger, therefore gaining full code execution access. The inspector now only allows connections that have a browser Host value of localhost or localhost6.
  • Fix for 'path' module regular expression denial of service (CVE-2018-7158): A regular expression used for parsing POSIX paths could be used to cause a denial of service if an attacker were able to have a specially crafted path string passed through one of the impacted 'path' module functions.
  • Reject spaces in HTTP Content-Length header values (CVE-2018-7159): The Node.js HTTP parser allowed for spaces inside Content-Length header values. Such values now lead to rejected connections in the same way as non-numeric values.
  • Update root certificates: 5 additional root certificates have been added to the Node.js binary and 30 have been removed.

Commits

2018-03-06, Version 8.10.0 ‘Carbon’ (LTS), @gibfahn

Notable Changes

  • deps:
    • update V8 to 6.2.414.46 (Michaël Zasso) #16413
    • revert ABI breaking changes in V8 6.2 (Anna Henningsen) #16413
    • upgrade libuv to 1.19.1 (cjihrig) #18260
    • re land npm 5.6.0 (Myles Borins) #18625
    • ICU 60 bump (Steven R. Loomis) #16876
  • crypto:
    • Support both OpenSSL 1.1.0 and 1.0.2 (David Benjamin) #16130
    • warn on invalid authentication tag length (Tobias Nießen) #17566
  • async_hooks:
    • update defaultTriggerAsyncIdScope for perf (Anatoli Papirovski) #18004
    • use typed array stack as fast path (Anna Henningsen) #17780
    • use scope for defaultTriggerAsyncId (Andreas Madsen) #17273
    • separate missing from default context (Andreas Madsen) #17273
    • rename initTriggerId (Andreas Madsen) #17273
    • deprecate undocumented API (Andreas Madsen) #16972
    • add destroy event for gced AsyncResources (Sebastian Mayr) #16998
    • add trace events to async_hooks (Andreas Madsen) #15538
    • set HTTPParser trigger to socket (Andreas Madsen) #18003
    • add provider types for net server (Andreas Madsen) #17157
  • n-api:
    • add helper for addons to get the event loop (Anna Henningsen) #17109
  • cli:
    • add --stack-trace-limit to NODE_OPTIONS (Anna Henningsen) #16495
  • console:
    • add support for console.debug (Benjamin Zaslavsky) #17033
  • module:
    • add builtinModules (Jon Moss) #16386
    • replace default paths in require.resolve() (cjihrig) #17113
  • src:
    • add helper for addons to get the event loop (Anna Henningsen) #17109
    • add process.ppid (cjihrig) #16839
  • http:
    • support generic Duplex streams (Anna Henningsen) #16267
    • add rawPacket in err of clientError event (XadillaX) #17672
    • better support for IPv6 addresses (Mattias Holmlund) #14772
  • net:
    • remove ADDRCONFIG DNS hint on Windows (Bartosz Sosnowski) #17662
  • process:
    • fix reading zero-length env vars on win32 (Anna Henningsen) #18463
  • tls:
    • unconsume stream on destroy (Anna Henningsen) #17478
  • process:
    • improve unhandled rejection message (Madara Uchiha) #17158
  • stream:
    • remove usage of *State.highWaterMark (Calvin Metcalf) #12860
  • trace_events:
    • add executionAsyncId to init events (Andreas Madsen) #17196

Commits

  • [5dab90b8bb] - async_hooks: update defaultTriggerAsyncIdScope for perf (Anatoli Papirovski) #18004
  • [086af68c19] - async_hooks: use typed array stack as fast path (Anna Henningsen) #17780
  • [0f7c8984af] - async_hooks: use CHECK instead of throwing error (Jon Moss) #17832
  • [5a199a905b] - async_hooks: use scope for defaultTriggerAsyncId (Andreas Madsen) #17273
  • [03873db4d0] - async_hooks: separate missing from default context (Andreas Madsen) #17273
  • [cce92ccfa8] - async_hooks: rename initTriggerId (Andreas Madsen) #17273
  • [025b9f208f] - (SEMVER-MINOR) async_hooks: deprecate undocumented API (Andreas Madsen) #16972
  • [36dbd1181a] - (SEMVER-MINOR) async_hooks: add destroy event for gced AsyncResources (Sebastian Mayr) #16998
  • [331b175af2] - (SEMVER-MINOR) async_hooks: add trace events to async_hooks (Andreas Madsen) #15538
  • [91d4eb5ff8] - (SEMVER-MINOR) async_hooks,http: set HTTPParser trigger to socket (Andreas Madsen) #18003
  • [0211175bc7] - async_hooks,test: only use IPv6 in http test (Andreas Madsen) #18143
  • [6d55a4c941] - (SEMVER-MINOR) async_wrap: add provider types for net server (Andreas Madsen) #17157
  • [8143a95c1f] - benchmark: implement duration in http test double (Joyee Cheung) #18380
  • [f779a8b5a4] - benchmark: make compare.R easier to understand (Andreas Madsen) #18373
  • [deb70417cd] - benchmark: remove redundant + (sreepurnajasti) #17803
  • [452d2c561a] - benchmark: fix timeout in write-stream-throughput (Anatoli Papirovski) #17958
  • [1e3ea5023b] - benchmark: make temp file path configurable (Rich Trott) #17811
  • [91135b9bd2] - build: fix Makefile wrt finding node executable (Yang Guo) #18040
  • [f07bb16255] - build: fix cctest target with --enable-static (Qingyan Li) #17992
  • [e61344a9e9] - build: remove cctest extension (Yihong Wang) #16680
  • [fd845d80eb] - build,win: update lint-cpp on Windows (Kyle Farnung) #18012
  • [44ab4f09a2] - build,win,msi: support WiX with VS2017 (João Reis) #17101
  • [ec7996ca15] - (SEMVER-MINOR) cli: add --stack-trace-limit to NODE_OPTIONS (Anna Henningsen) #16495
  • [087cdaf871] - cluster: resolve relative unix socket paths (laino) #16749
  • [162ff56439] - (SEMVER-MINOR) console: add support for console.debug (Benjamin Zaslavsky) #17033
  • [8cc0ea78d7] - crypto: do not reach into OpenSSL internals for ThrowCryptoError (David Benjamin) #16701
  • [072902a258] - crypto: remove leftover initialization (Myles Borins) #18622
  • [b0526ba7f1] - (SEMVER-MINOR) crypto: clear some SSL_METHOD deprecation warnings (David Benjamin) #16130
  • [78738266d6] - (SEMVER-MINOR) crypto: make ALPN the same for OpenSSL 1.0.2 & 1.1.0 (David Benjamin) #16130
  • [f1d458be58] - (SEMVER-MINOR) crypto: remove deprecated ECDH calls w/ OpenSSL 1.1 (David Benjamin) #16130
  • [f9a597a1d3] - (SEMVER-MINOR) crypto: emulate OpenSSL 1.0 ticket scheme in 1.1 (David Benjamin) #16130
  • [eb377f38f6] - (SEMVER-MINOR) crypto: hard-code tlsSocket.getCipher().version (David Benjamin) #16130
  • [2efb16b7d7] - (SEMVER-MINOR) crypto: add compat logic for “DSS1” and “dss1” (David Benjamin) #16130
  • [5e9e4e5bf9] - (SEMVER-MINOR) crypto: Make Hmac 1.1.0-compatible (David Benjamin) #16130
  • [2419b8613a] - (SEMVER-MINOR) crypto: make SignBase compatible with OpenSSL 1.1.0 (David Benjamin) #16130
  • [0ef35a137f] - (SEMVER-MINOR) crypto: make Hash 1.1.0-compatible (David Benjamin) #16130
  • [e0cbc39668] - (SEMVER-MINOR) crypto: make CipherBase 1.1.0-compatible (David Benjamin) #16130
  • [e21079851f] - (SEMVER-MINOR) crypto: remove locking callbacks for OpenSSL 1.1.0 (David Benjamin) #16130
  • [c2106e4037] - (SEMVER-MINOR) crypto: use RSA and DH accessors (David Benjamin) #16130
  • [f518238c2e] - (SEMVER-MINOR) crypto: test DH keys work without a public half (David Benjamin) #16130
  • [f00d758067] - (SEMVER-MINOR) crypto: account for new 1.1.0 SSL APIs (David Benjamin) #16130
  • [335bbff96d] - (SEMVER-MINOR) crypto: remove unnecessary SSLerr calls (David Benjamin) #16130
  • [0f909a87a6] - (SEMVER-MINOR) crypto: estimate kExternalSize (David Benjamin) #16130
  • [ec349b4640] - (SEMVER-MINOR) crypto: make node_crypto_bio compat w/ OpenSSL 1.1 (David Benjamin) #16130
  • [e28e80d5b8] - (SEMVER-MINOR) crypto: use X509_STORE_CTX_new (David Benjamin) #16130
  • [1279893a46] - crypto: add ocsp_request ClientHelloParser::Reset (Daniel Bevenius) #17753
  • [964850a24c] - crypto: warn on invalid authentication tag length (Tobias Nießen) #17566
  • [2f3d91dc58] - crypto: remove unused header in clienthello.h (Daniel Bevenius) #17752
  • [1331a2a504] - (SEMVER-MINOR) deps: upgrade libuv to 1.19.1 (cjihrig) #18260
  • [cae489657b] - (SEMVER-MINOR) deps: upgrade libuv to 1.18.0 (cjihrig) #17282
  • [1e316826ff] - (SEMVER-MINOR) deps: revert ABI breaking changes in V8 6.1 (Anna Henningsen) #15393
  • [758b730139] - (SEMVER-MINOR) deps: revert ABI breaking changes in V8 6.2 (Anna Henningsen) #16413
  • [2b84fa9514] - deps: cherry-pick c3458a8 from upstream V8 (Michaël Zasso) #18060
  • [aae68d3ef0] - deps: V8: cherry-pick ac0fe8ec from upstream (Ali Ijaz Sheikh) #17695
  • [51ad36a901] - deps: V8: backport 14ac02c from upstream (Ali Ijaz Sheikh) #17512
  • [0a064c4b68] - deps: backport 3c8195d from V8 upstream (Myles Borins) #17383
  • [0ee645510d] - deps: cherry-pick 1420e44db0 from upstream V8 (Timothy Gu) #17344
  • [be734c513c] - deps: cherry-pick cc55747 from V8 upstream (Franziska Hinkelmann) #16890
  • [0e30ca942e] - deps: cherry-pick b8331cc030 from upstream V8 (Daniel Bevenius) #16900
  • [711f344c2e] - deps: V8: backport b1cd96e from upstream (Ali Ijaz Sheikh) #16308
  • [ae8c838339] - deps: cherry-pick e0d64dc from upstream V8 (Michaël Zasso) #16490
  • [5d80b0edd9] - deps: cherry-pick 676c413 from upstream V8 (Michaël Zasso) #16490
  • [16a980b4c4] - deps: cherry-pick 2c75616 from upstream V8 (Michaël Zasso) #16490
  • [0b690a9ce3] - deps: cherry-pick 37a3a15c3 from V8 upstream (Franziska Hinkelmann) #16294
  • [b71a33c2bf] - (SEMVER-MAJOR) deps: backport 0f1dfae from V8 upstream (Tobias Tebbi) #15362
  • [ebee8edca2] - deps: v8: fix potential segfault in profiler (Ali Ijaz Sheikh) #15498
  • [a7fc12772d] - deps: cherry-pick 9b21865822243 from V8 upstream (Anna Henningsen) #15391
  • [bede7a3cfa] - (SEMVER-MINOR) deps: update V8 to 6.2.414.46 (Michaël Zasso) #16413
  • [96f85e4d8b] - deps: re land npm 5.6.0 (Myles Borins) #18625
  • [3a648b7e62] - deps: cherry-pick c3458a8 from upstream V8 (Michaël Zasso) #18059
  • [ce245810fa] - (SEMVER-MINOR) deps: ICU 60 bump (Steven R. Loomis) #16876
  • [09c1f21746] - (SEMVER-MINOR) deps: upgrade libuv to 1.16.1 (cjihrig) #16835
  • [35887306f1] - dns: fix crash while setting server during query (XadillaX) #14891
  • [0776a43123] - doc: add vdeturckheim as collaborator (vdeturckheim) #18432
  • [504054c8d5] - doc: fix e.g., to e.g. in docs (sreepurnajasti) #18369
  • [5f381e843a] - doc: fix return value for require.resolve.paths() (Peter Dalgaard-Jensen) #18350
  • [37531a4103] - doc: add missing word in modules.md (Robert Adamian) #18343
  • [477e7d1788] - doc: add doc for performance.clearGC() (Antony Tran) #18331
  • [15c847e915] - doc: split CONTRIBUTING.md (Joyee Cheung) #18271
  • [850e5bab1f] - doc: fix typos in async_hooks (Matthew Turner) #18314
  • [af88c0fc26] - doc: add missing URL argument types in fs.md (Vse Mozhet Byt) #18309
  • [454a3d9870] - doc: remove confusing signature in fs.md (Vse Mozhet Byt) #18310
  • [67b7ad3b67] - doc: use PBKDF2 in text (Tobias Nießen) #18279
  • [78eb81447f] - doc: fix typo in async_hooks.md (Matthew Turner) #18286
  • [d554b8a669] - doc: Add example of null to assert.ifError (Leko) #18236
  • [bda8355530] - doc: improve process.platform (Mars Wong) #18057
  • [4c89666bdc] - doc: cjs format is now commonjs (Gus Caplan) #18165
  • [a4e8a929ca] - doc: V8 branch used in 8.x not active anymore (Franziska Hinkelmann) #18155
  • [83915234ad] - doc: add change info for async_hooks.executionAsyncId() (Stephen Belanger) #17813
  • [896aa77eac] - doc: add builtin module in building.md (Suixinlei) #17705
  • [5f1803be6c] - doc: warn users about non-ASCII paths on build (Matheus Marchini) #16735
  • [b52afa2844] - doc: simplify sentences that use “considered” (Rich Trott) #18095
  • [299482cb74] - doc: update sample output for process.versions (Michael Dawson) #18167
  • [f7b48a3d08] - doc: fix typo in TextEncoding section (Yosuke Furukawa) #18201
  • [afc528920b] - doc: suggest not to throw JS errors from C++ (Joyee Cheung) #18149
  • [5607f587b2] - doc: add documentation for deprecation properties (Jon Moss) #16539
  • [98579decd7] - doc: prefer make test-only when verifying the build (Joyee Cheung) #18061
  • [f7e6fe29d3] - doc: add Leko to collaborators (Leko) #18117
  • [835573abd1] - doc: decapitalize primitive types (Vse Mozhet Byt) #18110
  • [08a2d7f299] - doc: be less tentative about undefined behavior (Rich Trott) #18091
  • [074add3ab3] - doc: add descriptions of state properties (James M Snell) #18044
  • [3f801b37bc] - doc: examples for fast-tracking regression fixes (Refael Ackermann) #17379
  • [22ddc43d07] - doc: multiple updates to child_process.md (Rich Trott) #17990
  • [e49dd53a2c] - doc: remove x86 from os.arch() options (Gibson Fahnestock) #17899
  • [b3ff0ed652] - doc: fix incorrect argument type in fs.readSync (Mykola Bilochub) #18022
  • [50780c1748] - doc: move matthewloring to emeriti (Rich Trott) #17998
  • [e734e0a284] - doc: move joshgav to TSC emeriti list (Rich Trott) #17953
  • [135bc61fff] - doc: improve security section of README.md (Rich Trott) #17929
  • [532e85a749] - doc: edit for concision (Rich Trott) #17891
  • [d5c8a348ba] - doc: improve PR-review paragraph in CONTRIBUTING.md (Rich Trott) #17931
  • [5e83150894] - doc: fix typos in CONTRIBUTING.md (Rich Trott) #17930
  • [fe36cd9227] - doc: copy-edit COLLABORATOR_GUIDE.md (Rich Trott) #17922
  • [4b8c579e7a] - doc: improve alt text (Rich Trott) #17922
  • [ea0766ad08] - doc: fix spelling of contributors (Rich Trott) #17922
  • [68235da055] - doc: add references to PR communication articles (Salame William) #17902
  • [90c5bd4857] - doc: replace wrong U+00A0 by common spaces (Vse Mozhet Byt) #17940
  • [6e841a3776] - doc: remove duplicate words in API docs (Tobias Nießen) #17937
  • [f393eb1e81] - doc: fix duplicate words & spellings in docs (sreepurnajasti) #17923
  • [de85204208] - doc: doc imitating the old behavior of http.Server.keepAliveTimeout (Tyson Andre) #17660
  • [1c2783b111] - doc: fs doc improvements (James M Snell) #17831
  • [3ae37b22bb] - doc: fix typo (Tobias Nießen) #17900
  • [7eb0215a97] - doc: use my legal name in README (Timothy Gu) #17894
  • [807612771f] - doc: use dashes instead of asterisks (Ruben Bridgewater) #17722
  • [f154e767e9] - doc: update AUTHORS list (Ruben Bridgewater) #17805
  • [9cf8df3283] - doc: add starkwang to collaborators (Weijia Wang) #17847
  • [4b6c182077] - doc: improve fs api descriptions (Evan Lucas) #17679
  • [b121d51a06] - doc: instructions on how to make membership public (Michael Dawson) #17688
  • [51f2dfcac6] - doc: removed extra explanation in api/buffer.md (Waleed Ashraf) #17796
  • [673fdc60c6] - doc: use american spelling as per style guide (sreepurnajasti) #17818
  • [81cc0e73e3] - doc: require CI status indicator in PRs (Nikolai Vavilov) #17151
  • [ceb7790d18] - doc: mark DEP0002 as end of life (Jon Moss) #17815
  • [ff03d2f9c6] - doc: remove duplicate the from onboarding.md (sreepurnajasti) #17733
  • [78c8c61dd7] - doc: fix typo in README.md (Weijia Wang) #17729
  • [5b672af203] - doc: fix typo in child_process.md (Rich Trott) #17727
  • [762c1ecb81] - doc: edit CONTRIBUTING.md preamble (Rich Trott) #17700
  • [d1b224d493] - doc: improve release guide (Evan Lucas) #17677
  • [98c83c68be] - doc: not all example code can be run without 1:1 (Jeremiah Senkpiel) #17702
  • [87d504da2e] - doc: adjust TTY wording & add inter-doc links (Jeremiah Senkpiel) #17702
  • [0ceed2c569] - doc: fix fs.existsSync description (Jeremiah Senkpiel) #17702
  • [02af31a7fc] - doc: improve documentation.md (Jeremiah Senkpiel) #17702
  • [2f35920c97] - doc: add countdown module to writing tests guide (Bamieh) #17201
  • [7601bb0ba0] - doc: change “Node.js style cb” to “error-first cb” (Ram Goli) #17638
  • [70daf95a11] - doc: add C++ style comments to the style guide (Matheus Marchini) #17617
  • [8f9ea23a6d] - doc: include Daniel Bevenius as a TSC member (Rich Trott) #17652
  • [ca71b00bd4] - doc: correct pbkdf2 salt length recommendation (Will Clark) #17524
  • [24e7753400] - doc: clearify promisify behavior for bad arguments (Ram Goli) #17593
  • [5422767039] - doc,test: mention Duplex support for TLS (Anna Henningsen) #17599
  • [577933a7c6] - fs: cleanup fd lchown and lchownSync (James M Snell) #18329
  • [b343cb60e1] - fs: fix options.end of fs.ReadStream() (陈刚) #18121
  • [a7f9e12aee] - gitignore: ignore *.VC.db files (Tobias Nießen) #17898
  • [56401a45dc] - (SEMVER-MINOR) http: add rawPacket in err of clientError event (XadillaX) #17672
  • [bc982f650f] - http: remove duplicate export (Evan Lucas) #17982
  • [8da41434cf] - http: remove adapter frame from onParserExecute (Ben Noordhuis) #17693
  • [949ace9524] - (SEMVER-MINOR) http: support generic Duplex streams (Anna Henningsen) #16267
  • [0fd051888a] - http, stream: writeHWM -> writableHighWaterMark (Matteo Collina) #17050
  • [6aa0adc26f] - http, tls: better support for IPv6 addresses (Mattias Holmlund) #14772
  • [dea44b9697] - http2,perf_hooks: perf state using AliasedBuffer (Kyle Farnung) #18300
  • [1cfc67c003] - lib: fix typo in trace_events_async_hooks.js (Gilles De Mey) #18280
  • [92defcc996] - lib: enable dot-notation eslint rule (Anatoli Papirovski) #18007
  • [c5093fceb5] - (SEMVER-MINOR) module: add builtinModules (Jon Moss) #16386
  • [aaca447333] - module: replace default paths in require.resolve() (cjihrig) #17113
  • [3d2d051ed0] - (SEMVER-MINOR) n-api: add helper for addons to get the event loop (Anna Henningsen) #17109
  • [80468cc5dd] - net: remove ADDRCONFIG DNS hint on Windows (Bartosz Sosnowski) #17662
  • [fea710e36a] - path: fix path.normalize for relative paths (Weijia Wang) #17974
  • [f99aba1f80] - process: fix reading zero-length env vars on win32 (Anna Henningsen) #18463
  • [3705e0e01c] - process: improve unhandled rejection message (Madara Uchiha) #17158
  • [bb5cafef55] - repl: fix coloring of process.versions (Ben Noordhuis) #17861
  • [d47cb9ab63] - src: use uv_os_getpid() to get process id (cjihrig) #17415
  • [8a000e8f81] - (SEMVER-MINOR) src: add openssl-system-ca-path configure option (Daniel Bevenius) #16790
  • [fed8d30702] - (SEMVER-MINOR) Revertsrc: update NODE_MODULE_VERSION to 59” (Myles Borins) #16413
  • [aa4f58a9a5] - (SEMVER-MAJOR) src: fix rename of entry frame in v8abbr.h (geek) #15362
  • [805084b59d] - (SEMVER-MAJOR) src: update ustack offset identifiers (geek) #15362
  • [d3aa9eeb1d] - (SEMVER-MINOR) src: update NODE_MODULE_VERSION to 59 (Michaël Zasso) #16413
  • [35a51d4a78] - src: remove nonexistent method from header file (Anna Henningsen) #17748
  • [0e204433f6] - src: fix inspector nullptr deref on abrupt exit (Ben Noordhuis) #17577
  • [068d52d667] - src: use correct OOB check for IPv6 parsing (Anna Henningsen) #17470
  • [c2028fab23] - src: make url host a proper C++ class (Anna Henningsen) #17470
  • [6c9bdc1652] - src: move url internals into anonymous namespace (Anna Henningsen) #17470
  • [2c70965e82] - src: minor cleanups to node_url.cc (Anna Henningsen) #17470
  • [089f18e3a1] - src: remove unused async hooks methods (Anna Henningsen) #17757
  • [e67448813f] - src: remove async_hooks destroy timer handle (Anna Henningsen) #17117
  • [bd47272bc9] - src: introduce internal C++ SetImmediate() mechanism (Anna Henningsen) #17117
  • [f276cd954e] - src: rename async-wrap -> async_wrap (Daniel Bevenius) #17022
  • [aa63e021d2] - src: use NODE_BUILTIN_MODULE_CONTEXT_AWARE() macro (Ben Noordhuis) #17071
  • [ace2c2fade] - src: use unique pointer for tracing_agent (Franziska Hinkelmann) #17012
  • [e71beba14f] - src: explicitly register built-in modules (Yihong Wang) #16565
  • [fdd84c403e] - (SEMVER-MINOR) src: add helper for addons to get the event loop (Anna Henningsen) #17109
  • [22d4fef247] - (SEMVER-MINOR) src: add process.ppid (cjihrig) #16839
  • [f52c2b9bce] - src: use nullptr instead of NULL (Daniel Bevenius) #17373
  • [fdf9601a91] - (SEMVER-MINOR) stream: remove usage of *State.highWaterMark (Calvin Metcalf) #12860
  • [d629be2b8f] - test: change assert message to default (ryanmahan) #18259
  • [0e6cb3f16b] - test: use countdown timer (Mandeep Singh) #17326
  • [74d86ccd12] - test: make async-wrap-getasyncid parallelizable (Joyee Cheung) #18245
  • [9e79951855] - test: refactor test-http-parser (Jon Moss) #18219
  • [9c75a0fa47] - test: remove trivial buffer imports (sreepurnajasti) #18034
  • [9f52d93c6c] - test: use shorthand properties (Tobias Nießen) #18105
  • [5d66c20c7a] - test: simplify loadDHParam in TLS test (Tobias Nießen) #18103
  • [58fbcabb5c] - test: fix flaky cluster unix socket test (Ben Noordhuis) #18263
  • [15e07b8d22] - test: improve to use template string (sreepurnajasti) #18097
  • [80973ec6c3] - test: add common.crashOnUnhandledRejection to addons/callback-scope (Sho Miyamoto) #18076
  • [66a19cf3d6] - test: use smaller input file for test-zlib.js (Rich Trott) #17988
  • [180a38ebb9] - test: move common.fires() to inspector-helper (Rich Trott) #17401
  • [474d7763d9] - test: add common.skipIfEslintMissing (Myles Borins) #18807
  • [92a93c02c4] - (SEMVER-MAJOR) test: fix message test after V8 upgrade (Michaël Zasso) #15362
  • [92ec6f69c3] - (SEMVER-MINOR) test: fix test-https-agent-session-eviction for 1.1 (David Benjamin) #16130
  • [f883458270] - (SEMVER-MINOR) test: configure certs in tests (David Benjamin) #16130
  • [20cc0cfe5f] - (SEMVER-MINOR) test: revise test-tls-econnreset for OpenSSL 1.1.0 (David Benjamin) #16130
  • [a6a41d89e6] - (SEMVER-MINOR) test: test with a larger RSA key (David Benjamin) #16130
  • [4b90576e5e] - (SEMVER-MINOR) test: remove sha from test expectations (David Benjamin) #16130
  • [de37b993e8] - (SEMVER-MINOR) test: update test expectations for OpenSSL 1.1.0 (David Benjamin) #16130
  • [51999d0965] - test: fix test-tls-server-verify.js on Windows CI (Rich Trott) #18382
  • [4746bbf1ce] - test: mark test-inspector-stop-profile-after-done flaky (Myles Borins) #18491
  • [edcf9acf4e] - test: fix flaky test-http-pipeline-flood (Anatoli Papirovski) #17955
  • [6597b2fd96] - test: rename regression tests (Tobias Nießen) #17948
  • [1474a47b80] - test: fix flaky test-http-highwatermark (Anatoli Papirovski) #17949
  • [9fcf4d0de4] - test: fix flaky test-pipe-unref (Anatoli Papirovski) #17950
  • [5eadfc870f] - test: fix flaky http-writable-true-after-close (Anatoli Papirovski) #17952
  • [2e4fa26878] - test: improve readability of some crypto tests (Tobias Nießen) #17904
  • [8b3c23392c] - test: fix crypto test case to use correct encoding (Tobias Nießen) #17956
  • [8e38ad95a4] - test: simplify test-buffer-slice.js (Weijia Wang) #17962
  • [d472704912] - test: fix flaky test-resolve-async (Anatoli Papirovski) #17957
  • [f273c2945b] - test: use countdown in test file (sreepurnajasti) #17874
  • [38f56cb436] - test: improve to use template string (sreepurnajasti) #17895
  • [b69c710dec] - test: fix flaky test-benchmark-fs (Rich Trott) #17885
  • [aff27a1b9d] - test: make test-tls-invoke-queued use public API (Anna Henningsen) #17864
  • [05101e69ca] - test: refactor test-tls-securepair-fiftharg (Anna Henningsen) #17836
  • [5485ad104d] - test: reduce scope of variable in common module (Rich Trott) #17830
  • [d7f74dd53d] - test: remove undefined function (Rich Trott) #17845
  • [e233f51976] - test: fix flaky test-benchmark-fs (Rich Trott) #17853
  • [59aa505825] - test: use common module API in test-child-process-exec-stdout-stderr-data-string (sreepurnajasti) #17751
  • [822e93e1d4] - test: refactor test-repl-definecommand (Rich Trott) #17795
  • [8c5fe7be4a] - test: improve flaky test-listen-fd-ebadf.js (Rich Trott) #17797
  • [96abea06c5] - test: use valid authentication tag length (Tobias Nießen) #17566
  • [a5ada418c4] - test: do not open fixture files for writing (Rich Trott) #17808
  • [95cbf081e7] - test: do not open fixture files for writing (Rich Trott) #17810
  • [d3d0aaf116] - test: fix typo in test-inspector-cluster-port-clash.js (Rich Trott) #17782
  • [e495981586] - test: change callback function to arrow function (rt33) #17734
  • [9d4add2cd9] - test: Use countdown in test file (sreepurnajasti) #17646
  • [6ed5773eb8] - test: update test-http-content-length to use countdown (Bamieh) #17201
  • [21ec917152] - test: coverage for emitExperimentalWarning (Mithun Sasidharan) #17635
  • [535e76b84b] - test: check socketOnDrain where needPause is false (Leko) #17654
  • [d4f355a679] - test: change callback function to arrow function (routerman) #17697
  • [b8b0ed35b4] - test: change callback function to arrow function (you12724) #17698
  • [c81b8519a9] - test: change callback function to arrow function (Shinya Kanamaru) #17699
  • [d1c854f76d] - test: fix flaky test-benchmark-misc (Rich Trott) #17686
  • [98cc1fef94] - test: improve coverage for util.promisify (Mithun Sasidharan) #17591
  • [fcc5b99152] - test: fix flaky test-child-process-pass-fd (Rich Trott) #17598
  • [aada57b893] - test: add test description to fs.readFile tests (Jamie Davis) #17610
  • [337d93abe5] - test: simplify common.expectsError (Ruben Bridgewater) #17616
  • [439112a91b] - test: fix test-cli-node-options on Windows (Anna Henningsen) #16709
  • [b5bc3f8eb8] - timers: cross JS/C++ border less frequently (Anna Henningsen) #17064
  • [d2138b205c] - tls: comment about old-style errors (xortiz) #17759
  • [30c607600b] - tls: unconsume stream on destroy (Anna Henningsen) #17478
  • [8250a5a8ba] - tools: do not override V8's gitignore (Yang Guo) #18010
  • [990d22e073] - tools: fix AttributeError: __exit__ on Python 2.6 (Dmitriy Kasyanov) #17663
  • [f88afb42f3] - tools: autofixer for lowercase-name-for-primitive (Shobhit Chittora) #17715
  • [90fe1692e2] - tools: fix man pages linking regex (Diego Rodríguez Baquero) #17724
  • [0e37054c96] - tools: add number-isnan rule (Jon Moss) #17556
  • [59def2a9f1] - tools: simplify lowercase-name-for-primitive rule (cjihrig) #17653
  • [dc480f84f9] - tools: add lowercase-name-for-primitive eslint rule (Weijia Wang) #17568
  • [47322e67c4] - tools: add cpplint rule for NULL usage (Daniel Bevenius) #17373
  • [1d3d1ddce7] - trace_events: stop tracing agent in process.exit() (Andreas Madsen) #18005
  • [ae4428e967] - (SEMVER-MINOR) trace_events: add executionAsyncId to init events (Andreas Madsen) #17196
  • [2a2c881df3] - (SEMVER-MINOR) v8: make building addons with VS2013 work again (Ben Noordhuis) #16413
  • [6df169c409] - win, build: fix without-intl option (Bartosz Sosnowski) #17614

2018-01-02, Version 8.9.4 ‘Carbon’ (LTS), @gibfahn

Notable Changes

  • deps:
    • upgrade npm to 5.6.0 (Kat Marchán) #17535
  • build:
    • configure can now be run from any directory (Gibson Fahnestock) #17321

Commits

2017-12-08, Version 8.9.3 ‘Carbon’ (LTS), @MylesBorins

This is a security release. All Node.js users should consult the security release summary at https://nodejs.org/en/blog/vulnerability/december-2017-security-releases/ for details on patched vulnerabilities.

Fixes for the following CVEs are included in this release:

  • CVE-2017-15896
  • CVE-2017-15897
  • CVE-2017-3738 (from the openssl project)

Notable Changes

  • buffer:
    • buffer allocated with an invalid content will now be zero filled (Anna Henningsen) #17428
  • deps:
    • openssl updated to 1.0.2n (Shigeki Ohtsu) #17526

Commits

2017-12-05, Version 8.9.2 ‘Carbon’ (LTS), @gibfahn

Notable Changes

  • console:
    • avoid adding infinite error listeners (Matteo Collina) #16770
  • http2:
    • improve errors thrown in header validation (Joyee Cheung) #16718

Commits

  • [1bf6250b99] - doc : mention constant-time in crypto doc (Mithun Sasidharan) #16604
  • [585f8698af] - build: include src\tracing when linting on win (Daniel Bevenius) #16720
  • [d9a18beaa6] - build: suppress lint-md output (Gibson Fahnestock) #16551
  • [4e848d4afb] - build: add missing comma in sources list (Daniel Bevenius) #16613
  • [9df1e8f10e] - console: avoid adding infinite error listeners (Matteo Collina) #16770
  • [7ba037592d] - deps: cherry-pick cc55747 from V8 upstream (Franziska Hinkelmann) #16890
  • [c3c9a8d4bf] - doc: recommend node-core-utils for metadata (Rich Trott) #16978
  • [891ddad93c] - doc: fix typo in http2 doc (Gus Caplan) #16993
  • [ccd36467f8] - doc: reorganize COLLABORATOR_GUIDE.md (Rich Trott) #15710
  • [8f0793ff93] - doc: clarify the prerequisites for building with VS2017 (Nikolai Vavilov) #16903
  • [6e7a444a91] - doc: outline commit message for breaking changes (Maton Anthony) #16846
  • [6eb550da34] - doc: remove duplicate ‘the’ from http2 API doc (Vipin Menon) #16924
  • [0b8a400cad] - doc: correct the spelling of omitting in dgram.md (Vidya Subramanyam) #16910
  • [adb8f08c36] - doc: fix a typo in the documentation (Mamatha J V) #16909
  • [d721c0bb5e] - doc: improve documentation for the vm module (Franziska Hinkelmann) #16867
  • [360f40354e] - doc: fix typo in assert.md (Andres Kalle) #16866
  • [c4634bf506] - doc: update subprocess.killed (cjihrig) #16748
  • [eafc0a1314] - doc: fix a link in dgram.md (Vse Mozhet Byt) #16854
  • [fab55980be] - doc: add isTTY property documentation (SonaySevik) #16828
  • [f2a9c024ed] - doc: fix json generator warnings (Luigi Pinca) #16742
  • [3319b2092f] - doc: update license to include node-inspect (Myles Borins) #16659
  • [7618567b4f] - doc: add docs for Zlib#close() (Luigi Pinca) #16592
  • [2cc05e0657] - doc: add nodejs/gyp team for GYP related issues (Gibson Fahnestock) #16638
  • [542f3b9cc0] - doc: add details about rss on process.memoryUsage (Anthony Nandaa) #16566
  • [13866b8b1b] - doc: add windowsVerbatimArguments docs (Andrew Stucki) #16299
  • [d2e4a87321] - doc: howto decode buffers extending from Writable (dicearr) #16403
  • [a2fd9a3cf2] - doc: add *-inl.h include rule to C++ style guide (Joyee Cheung) #16548
  • [9b8e2a68d8] - http: use arrow fns for lexical this in Agent (Bryan English) #16475
  • [29efb02f12] - http2: multiple smaller code cleanups (James M Snell) #16764
  • [658301664f] - http2: improve errors thrown in header validation (Joyee Cheung) #16718
  • [8cf8a327c8] - http2: refactor settings handling (James M Snell) #16668
  • [4faf2ec783] - lib: replace string concatenation with template (Suryanarayana Murthy N) #16933
  • [14f8cee401] - lib: guard inspector console using process var (Daniel Bevenius) #15008
  • [2ad051d62c] - lib: change concatenated string to template (Pawan Jangid) #16930
  • [28f036045b] - lib: change concatenated string to template (Nayana Das K) #16925
  • [134c2f31f2] - lib: replace string concatenation with template (subrahmanya chari p) #16917
  • [dc14c25ee9] - loader: test search module (Cyril Lakech) #16795
  • [d27ec13cd3] - repl: avoid crashing from null and undefined errors (cPhost) #16574
  • [40880897fe] - src: use unrefed async for GC tracking (Anna Henningsen) #16758
  • [f7411b5df7] - src: make StreamBase prototype accessors robust (Joyee Cheung) #16860
  • [8d31294b3b] - src: CHECK() for argument overflow in Spawn() (cjihrig) #16761
  • [57b377ef93] - src: improve module loader readability (Anna Henningsen) #16536
  • [82076ed91f] - src: pass context to Get() operations for cares_wrap (Evan Lucas) #16641
  • [79e1d7719d] - src: remove unused includes in string_bytes.h (Daniel Bevenius) #16606
  • [cecd1e3def] - src: fix etw provider include on Windows (Joyee Cheung) #16639
  • [255fffbbc8] - src: do not include x.h if x-inl.h is included (Joyee Cheung) #16548
  • [efdd7c8cae] - test: reuse existing PassThrough implementation (Tobias Nießen) #16936
  • [375bec00a4] - test: use fixtures module for path resolve (sercan yersen) #16842
  • [6ab706d7f0] - test: refactor comments in test-child-process-spawnsync-maxbuf (ChrBergert) #16829
  • [315fba8bfd] - test: used fixturesDir from fixtures modules (Klemen Kogovsek) #16813
  • [5c8fb6a976] - test: refactor fs.write() test (Patrick Heneise) #16827
  • [4f587e5a30] - test: add a test description (Grant Gasparyan) #16833
  • [af8b17a314] - test: use common/fixtures module in hash-seed test (Javier Blanco) #16823
  • [3a3792b0a0] - test: improve template value for test message (Stephan Smith) #16826
  • [c3e6491a51] - test: unmark flaky test (Anna Henningsen) #16758
  • [bf9eb04abe] - test: change concatenated string to template (Deepthi Sebastian) #16929
  • [7168a7e044] - test: change concatenated string to template (Anawesha Khuntia) #16912
  • [febd1bf519] - test: change string concatenation to template (Suryanarayana Murthy N) #16919
  • [7164d9a6b8] - test: use template string for concatenation (Vipin Menon) #16918
  • [ae7106cc75] - test: replace string concatenation with template (Kabir Islam) #16916
  • [81a6c4f785] - test: enable mustCall() during child exit (Vipin Menon) #16915
  • [41f905bb00] - test: replace string concatenation with template (Sabari Lakshmi Krishnamoorthy) #16914
  • [be920aa372] - test: replace string concatenation with template (Tanvi Kini) #16913
  • [26d529e60f] - test: cover vm.runInNewContext() (cjihrig) #16906
  • [6c57399c6b] - test: improve assertion messages (Neil Vass) #16885
  • [1522562ffd] - test: pass process.env to child processes (Rod Vagg) #16405
  • [0bc16cd9b6] - test: improve assert messages in stream test (Katie Stockton Roberts) #16884
  • [7c9aee3348] - test: improve assertion in test-require-dot (Adam Wegrzynek) #16805
  • [1b1bd261dc] - test: add values to error message (Adam Jeffery) #16831
  • [e66a7ae6e3] - test: replace common.fixtiresDir with fixtures.readKey() (woj) #16817
  • [c1309d6b80] - test: use tmpDir in test-fs-utimes (Rich Trott) #16774
  • [2f1f7e1de0] - test: remove message argument in cluster setup test (mbornath) #16838
  • [d64fe485c5] - test: check session timeout in http2 (Anatoli Papirovski) #16754
  • [4fcb03c0ae] - test: move test-http-keepalive-maxsockets to sequential (Rich Trott) #16777
  • [71c11d67f4] - test: improve assert messages in test-global (Mark McNelis) #16843
  • [ca278802ff] - test: use default assertion message (jonask) #16819
  • [ec4c3f5777] - test: improve message in test-fs-readfile-pipe-large (fjau) #16840
  • [562d8fca15] - test: remove custom message from assertion (Nicolas Morel) #16824
  • [0ebded4376] - test: show incorrect value on test failure (Sean Karson) #16818
  • [2bbc76eb1f] - test: include file mode in assert message (Sascha Tandel) #16815
  • [33f2fff52b] - test: refactor tls test to use fixtres.readSync (Brian O'Connell) #16816
  • [b307582d10] - test: use fixtures module in test-repl (Maring, Damian Lion) #16809
  • [5719beaf83] - test: update test to use fixtures.readKey (Dara Hayes) #16811
  • [b166b6b1b3] - test: fix typos in read-buffer tests (Jimi van der Woning) #16834
  • [c4176eb722] - test: replace fixturesDir with usage of fixtures module (Octavian Ionescu) #16810
  • [af13678889] - test: clarified assert message for test-require-json.js (Matthias Reis) #16807
  • [0fa659cdcd] - test: replace common.fixturesDir with fixtures module (Dumitru Glavan) #16803
  • [1e6845d024] - test: replace common.fixturesDir with fixtures.readSync() (Adri Van Houdt) #16802
  • [7b1491711d] - test: replace common.fixturesDir usage (Sascha Tandel) #16800
  • [480f14a55e] - test: update test to use fixtures (Adam Wegrzynek) #16799
  • [c52ac92661] - test: fix malformed parallel.status line (Rich Trott) #16702
  • [a41cc020fd] - test: fix flaky test-http2-server-rst-stream.js (Anatoli Papirovski) #16690
  • [1e8a421159] - test: pause child until parent is ready (jBarz) #15774
  • [b3032d29c9] - test: increase coverage for ModuleMap (Rob Paton) #16045
  • [2f66faf6cf] - test: use fixtures module in test-https-pfx (Ken Takagi) #15895
  • [981a1ef0c2] - test: use ES6 classes instead of util.inherits (Tobias Nießen) #16938
  • [47b1c3b43c] - test: add test for WrapStream readStop (Ashish Kaila) #16356
  • [72c34cf706] - test,net: remove scatological terminology (Rich Trott) #16599
  • [2b903bff05] - tools: enforce no unused trailing arguments tools directory (Rich Trott) #16953
  • [57937e5746] - tools: remove unused trailing function arguments (Rich Trott) #16953
  • [85fd7bb8f7] - tools: fix inspector-check reporting (Daniel Bevenius) #16902
  • [8538354139] - tools: add direct anchors for error codes (Joyee Cheung) #16779
  • [79006dab87] - tools: don't lint files that have not changed (Joyee Cheung) #16581
  • [cb08f5d6fe] - tools: remove unneeded parentheses in doc/html.js (Vse Mozhet Byt) #16845
  • [60c918ac7a] - tools: replace string concatenation with template literals (Kevin Yu) #16804
  • [aaf7e83d62] - tools: replace string concatenation with template literals (Giovanni Lela) #16806
  • [40fa970914] - tools: replace string concetation with templates (Patrick Heneise) #16801
  • [0d4f62c85f] - tools,build: allow build without remark-cli (Refael Ackermann) #16893

2017-11-07, Version 8.9.1 ‘Carbon’ (LTS), @gibfahn

Notable Changes

  • openssl:
    • upgrade openssl sources to 1.0.2m (Shigeki Ohtsu) #16691
  • Revert "https:
    • refactor to use http internals" (Myles Borins) #16660

Commits

2017-10-31, Version 8.9.0 ‘Carbon’ (LTS), @gibfahn

This release marks the transition of Node.js v8 into Long Term Support (LTS) with the codename ‘Carbon’. The v8 release line now moves in to “Active LTS” and will remain so until April 2019. After that time it will move in to “Maintenance” until end of life in December 2019.

Notable Changes

  • doc:
    • add Gibson Fahnestock to Release team (Gibson Fahnestock) #16620
  • deps:
    • update npm to 5.5.1 (Myles Borins) #16509
  • http2:
    • The exposed http2 socket is no longer manipulatable (Anatoli Papirovski) #16330
  • module:
    • support custom paths to require.resolve() (cjihrig) #16397
  • util:
    • util.TextEncoder and util.TextDecoder are no longer experimental. There will no longer be a warning when they are used (James M Snell) #15743

Commits

2017-10-25, Version 8.8.1 (Current), @cjihrig

Notable Changes

  • net:
    • Fix timeout with null handle issue. This is a regression in Node 8.8.0 #16489

Commits

2017-10-24, Version 8.8.0 (Current), @MylesBorins

Notable Changes

  • crypto:
  • http2:
    • http2 is now exposed by default without the need for a flag #15685
    • a new environment variable NODE_NO_HTTP2 has been added to allow userland http2 to be required #15685
    • support has been added for generic Duplex streams #16269
  • module:
    • resolve and instantiate loader pipeline hooks have been added to the ESM lifecycle #15445
  • zlib:
    • CVE-2017-14919 - In zlib v1.2.9, a change was made that causes an error to be raised when a raw deflate stream is initialized with windowBits set to 8. On some versions this crashes Node and you cannot recover from it, while on some versions it throws an exception. Node.js will now gracefully set windowBits to 9 replicating the legacy behavior to avoid a DOS vector. nodejs-private/node-private#95

Commits

2017-10-11, Version 8.7.0 (Current), @MylesBorins

Notable Changes

  • deps:
    • update npm to 5.4.2 #15600
    • upgrade libuv to 1.15.0 #15745
    • update V8 to 6.1.534.42 15393
  • dgram:
    • support for setting dgram socket buffer size #13623
  • fs:
    • add support O_DSYNC file open constant #15451
  • util:
    • deprecate obj.inspect for custom inspection #15631
  • tools, build:
    • there is a fancy new macOS installer #15179
  • Added new collaborators

Commits

2017-09-26, Version 8.6.0 (Current), @jasnell

Notable Changes

  • crypto
    • Support for multiple ECDH curves. #15206
  • dgram
    • Added setMulticastInterface() API. #7855
    • Custom lookup functions are now supported. #14560
  • n-api
    • The command-line flag is no longer required to use N-API. #14902
  • tls
    • Docs-only deprecation of parseCertString(). #14245
  • New Contributors
    • Welcome Sebastiaan Deckers (@sebdeckers) as a new Collaborator! #15354

Commits

  • [4f7d9392e7] - assert: improve AssertionError in case of “Errors” (Ruben Bridgewater) #15025
  • [f6c65e6e19] - assert: fix boxed primitives in deepStrictEqual (Ruben Bridgewater) #15050
  • [7fa175f6d3] - assert: fix deepEqual inconsistencies (Ruben Bridgewater) #14491
  • [17d8dfec70] - async_hooks: support promise resolve hook (Anna Henningsen) #15296
  • [81723a9172] - (SEMVER-MINOR) async_hooks,doc: some async_hooks improvements (James M Snell) #15103
  • [535f8d5281] - benchmark: var to const (Ruben Bridgewater) #13757
  • [0f8f37ed45] - benchmark: improve and add more inspect benchmarks (Ruben Bridgewater) #14881
  • [3bf718c3fe] - benchmark: enable assert benchmark with short len (Rich Trott) #15174
  • [d30a5836b6] - benchmark: provide default methods for assert (Rich Trott) #15174
  • [142d2ed057] - benchmark: use smaller n value in some http tests (Peter Marshall) #14002
  • [5e4f87ae65] - buffer: improve Buffer.from performance (Anatoli Papirovski) #15178
  • [8bbbda55e4] - build: use generic names for linting tasks (Nikolai Vavilov) #15272
  • [9685b9ff2f] - build: don't fail make test on source tarballs (Gibson Fahnestock) #15441
  • [354f32040d] - build: remove unused configuration variable (Ben Noordhuis) #15266
  • [5d217ad5d7] - build: add support for link-module to vcbuild (Bartosz Sosnowski) #15410
  • [607832d3c3] - child_process: set shell to false in fork() (Alex Gresnel) #15352
  • [c26e93b309] - crypto: fix Node_SignFinal (David Benjamin) #15024
  • [bd07574718] - (SEMVER-MINOR) crypto: support multiple ECDH curves and auto (Roga Pria Sembada) #15206
  • [5e043a6c78] - deps: define BUILDING_NGHTTP2 during nghttp2 build (Ben Noordhuis) #15487
  • [2e75ac028a] - deps: v8: fix potential segfault in profiler (Ali Ijaz Sheikh) #15498
  • [2944ea6c6b] - (SEMVER-MINOR) dgram: add custom lookup function in sockets (cjihrig) #14560
  • [b24ee68133] - (SEMVER-MINOR) dgram: added setMulticastInterface() (Will Young) #7855
  • [f6b484461c] - doc: ctc -> tsc in onboarding extras (Bryan English) #15621
  • [f38666a967] - doc: ctc -> tsc in collab guide (Bryan English) #15590
  • [02c62df75e] - doc: remove invalid hash in link (Vse Mozhet Byt) #15542
  • [6cd64f36bc] - doc: note caveats in process message serialization (Joyee Cheung) #12963
  • [1fbb86c64b] - doc: fix ‘aborted’ event documentation (Luigi Pinca) #15471
  • [2326d655de] - doc: fix types and description for dns.resolveTxt (Tobias Nießen) #15472
  • [fcbee7b4bb] - doc: fix some links in http2.md (Vse Mozhet Byt) #15481
  • [9d6b0e6f6f] - doc: fix external links with 404 status (Vse Mozhet Byt) #15463
  • [29fd88c3e5] - doc: fix new nits in links (Vse Mozhet Byt) #15449
  • [4efc6fec6b] - doc: fix some internal links (Vse Mozhet Byt) #15293
  • [5ea4b88a29] - doc: adding sebdeckers to collaborators (Sebastiaan Deckers) #15354
  • [d5d498b6dc] - doc: update AUTHORS list (Michaël Zasso) #15181
  • [950f7f5fe1] - doc: update README with SHASUMS256.txt.sig info (Jon Moss) #15107
  • [38422d5963] - doc: fix nits in esm.md (Vse Mozhet Byt) #15315
  • [b0f5b2a38c] - doc: fix “added in” for Buffer.allocUnsafeSlow() (Tuan Anh Tran) #15330
  • [8112f496dc] - doc: add missing heading for error (Jon Moss) #15325
  • [29707afd82] - doc: add missing doc for readable._destroy (Michaël Zasso) #15316
  • [9f4480ce90] - doc: use consistent terminology in process doc (Rich Trott) #15321
  • [a53a0d8b38] - doc: fix emitKeypressEvents stream type (Oblosys) #15399
  • [b5c1a82560] - doc: fix http.ClientRequest method descriptions (Antoine AMARA) #15163
  • [f0e411d1b2] - doc: prevent displaying empty version picker (Chris Young) #15420
  • [acb0d012b3] - doc: make mkdtemp example work on Windows (Bartosz Sosnowski) #15408
  • [bdfed1ad25] - doc: fix entryTypes type and missing link (Mani Maghsoudlou) #15406
  • [7fa2bee5e7] - doc: add documentation for the ‘timeout’ event (Luigi Pinca) #15443
  • [b09eeb4a3d] - (SEMVER-MINOR) doc, tls: mark parseCertString() as deprecated (XadillaX) #14245
  • [e0f5e3a199] - docs: clarify usage cli options -e,-p on windows (Łukasz Szewczak) #15568
  • [a792ea7709] - docs: update 8.5.0 changelog (Myles Borins) #15384
  • [0a8258b3de] - errors: remove duplicate error definition (Jon Moss)
  • [a14b252c5c] - errors: eliminate circular dependency on assert (James M Snell) #15002
  • [b58a2aae1b] - errors: fix ERR_MODULE_RESOLUTION_LEGACY message (Tobias Nießen) #15290
  • [da3265ad82] - errors: backport ERR_INVALID_PROTOCOL to v8.x (Myles Borins) #15388
  • [2e0313865b] - errors,tools: alphabetize-errors lint rule (Jon Moss) #15083
  • [771c2ac7c2] - http: revert #14024 writable is never set to false (Matteo Collina) #15404
  • [68ec157be0] - http2: fix compat stream read handling, add tests (Anatoli Papirovski) #15503
  • [9fc8eddfdd] - http2: remove unused onTimeout, add timeout tests (Anatoli Papirovski) #15539
  • [1691827b8c] - http2: small fixes to compatibility layer (Anatoli Papirovski) #15473
  • [66a5f99828] - http2: improved coverage of Http2Stream destroy (Simon Brewster) #15461
  • [ba9012d4bc] - http2: add tests for push stream error handling (Anatoli Papirovski) #15281
  • [b61220ed84] - http2: fix subsequent end calls to not throw (Anatoli Papirovski) #15414
  • [2e421ff5c9] - http2: correct behaviour for enablePush unpack (Anatoli Papirovski) #15167
  • [9490be353e] - http2: cleanup of h2 compat layer, add tests (Anatoli Papirovski) #15254
  • [aa0917cd0a] - http2: improve http2 coverage (James M Snell) #15210
  • [a6879bfab6] - http2: custom promisify for http2.connect (James M Snell) #15207
  • [2ea2725ce0] - http2: emit close event if request aborted (Anatoli Papirovski) #15415
  • [b9a9290e8d] - http2: expand list of known headers (Anatoli Papirovski) #15434
  • [a32c8a566e] - http2,async-wrap: introduce AliasedBuffer class (Mike Kaufman) #15077
  • [25692a985c] - inspector: break in eval script (Eugene Ostroukhov) #14581
  • [cf1fe762dc] - lib: improve lazy requires (Ruben Bridgewater) #14167
  • [8ce0e9a619] - lib: refactor console startup (Ruben Bridgewater) #15111
  • [91e96d8f08] - lib,src: fix consistent spacing inside braces (James M Snell) #14162
  • [ede09f29d0] - meta: allow vague objections to be dismissed (James M Snell) #15233
  • [727d7b5078] - meta: improve contributors guide (James M Snell) #15123
  • [c005713d05] - module: check file url passed to top-level import (guybedford) #15389
  • [939c8ed084] - module: coverity fixes for ESM C++ (Bradley Farias) #15275
  • [a95ddc9484] - n-api: fix warning about size_t compare with int (Sampson Gao) #15508
  • [cd3a8e8832] - n-api: remove n-api module loading flag (Gabriel Schulhof) #14902
  • [526e78f5cd] - n-api: add optional string length parameters (Sampson Gao) #15343
  • [87a3162f85] - n-api: Context for custom async operations (Jason Ginchereau) #15189
  • [7b7c030adc] - (SEMVER-MINOR) n-api: change async resource name to napi_value (Jason Ginchereau) #14697
  • [d5b3002572] - n-api: stop creating references to primitives (Gabriel Schulhof) #15289
  • [a47fe692b1] - (SEMVER-MINOR) n-api: use AsyncResource for Work tracking (Anna Henningsen) #14697
  • [8f12b9dce4] - n-api: refactor napi_addon_register_func (Taylor Woll) #15088
  • [a2d340fb00] - n-api: napi_is_construct_call->napi_get_new_target (Sampson Gao) #14698
  • [fe9bb7e51e] - net: support passing null to listen() (cjihrig) #14221
  • [19d2d6611c] - path: fix normalize paths ending with two dots (Michaël Zasso) nodejs-private/node-private#94
  • [8eeaba62bc] - readline: name some anonymous functions (Flandre Scarlet) #14297
  • [4907ae7cb9] - src: correct typo in trace_event header (Daniel Bevenius) #15583
  • [4f88c19cf3] - src: add --pending-deprecation to NODE_OPTIONS (Thomas Corbière) #15494
  • [b87088c0b1] - src: remove unused constant from node_perf.h (Anna Henningsen) #15548
  • [90d14df56d] - src: minor c++ refactors to module_wrap (Anna Henningsen) #15515
  • [24271a7aca] - src: do not include internals from node_buffer.h (Anna Henningsen) #15554
  • [774e42b575] - (SEMVER-MINOR) src: refactor #include handling (Anna Henningsen) #14697
  • [29e38ab2a2] - src: remove unused perf_hooks uv handles (James M Snell) #15368
  • [606da2ba43] - (SEMVER-MINOR) src: make in_makecallback() getter const (Anna Henningsen) #14697
  • [98967c988f] - (SEMVER-MINOR) src: refactor async callback handling (Anna Henningsen) #14697
  • [f60a2aa982] - (SEMVER-MINOR) src: remove virtually unused ExecScope (Anna Henningsen) #14697
  • [6c520af6d5] - (SEMVER-MINOR) src: move DomainEnter,DomainExit to node.cc (Anna Henningsen) #14697
  • [8c480f9d8c] - src: remove outdated todo from node_crypto.cc (Bartek Szczepański) #15104
  • [409576e015] - test: expand http2 util test coverage for headers (Anatoli Papirovski) #15493
  • [0503c44835] - test: update test-fs-fsync to run from temp (atvoicu) #15537
  • [29f0ad6ccb] - test: fixing AliasedBuffer tests to enter Isolate (Mike Kaufman) #15536
  • [eccf503362] - test: improve readline test coverage for tty (Claudio Rodriguez) #12064
  • [58b9495c42] - test: use reserved invalid hostname for tests (icarter09) #14781
  • [b1227147b9] - test: clean up some assert deepEqual tests (Ruben Bridgewater) #14491
  • [93c08b0735] - test: improve util inspect tests (Ruben Bridgewater) #14881
  • [59f183640b] - test: refactor test for readability (Refael Ackermann) #13003
  • [757c34276b] - test: fix actual and expected order (Ruben Bridgewater) #14881
  • [5125c08c50] - test: remove obsolete debugger tests (Rich Trott) #15139
  • [7dfd570cad] - test: add test-benchmark-assert (Rich Trott) #15174
  • [a9066459ad] - test: convert buffer benchmark to runBenchmark (Jon Moss) #15349
  • [45cdbcfee6] - test: create shared runBenchmark function (Jon Moss) #15004
  • [ba96c8f23e] - test: don't skip when common.mustCall() is pending (cjihrig) #15421
  • [50b6203a33] - (SEMVER-MINOR) test: add regression test for 5691 (Anna Henningsen) #14697
  • [f0a741d178] - test: kill subprocess only after last ACK (Refael Ackermann) #15186
  • [4d68064493] - test: move common.PORT tests to sequential (Jon Moss) #15151
  • [a92f3dfd8c] - test: make test-http-agent-maxsockets robust (Rich Trott) #15192
  • [edece30930] - test: remove random timer in test-tls-fast-writing (Rich Trott) #15138
  • [b1a0bdcdaf] - test: remove faulty test case (Ruben Bridgewater) #15110
  • [cd238e2c0e] - test: check inspect array with empty string key (Rahul Mishra) #15258
  • [3ce501c8ff] - test: improve process warning coverage (James M Snell) #15212
  • [a2c335b973] - test: fix sequential/test-async-wrap-getasyncid (Anna Henningsen) #15319
  • [94e2b5c371] - test: refactor test-debug-prompt (Rich Trott) #15141
  • [5881033138] - test: remove invalid test (Rich Trott) #15320
  • [a1abf62cc3] - test: allow adding known-globals through ENV (Refael Ackermann) #15187
  • [427bf80194] - test: add test for fork() + shell (cjihrig) #15352
  • [4d26c68b6b] - test: move test-benchmark-buffer to sequential (Rich Trott) #15373
  • [1fbdf47742] - test: fix flaky test-http2-session-timeout (Anatoli Papirovski) #15338
  • [f20fb4ce40] - test: do not write fixture in test-require-symlink (Rich Trott) #15067
  • [389c8c33d7] - test: expand http2 frameError test case (Anatoli Papirovski) #15298
  • [d82ae0cb6e] - test: backward compatible api for tty (Gergely Nemeth) #15235
  • [e014983ec4] - test,process: run ‘abort’ suite on Windows (Refael Ackermann) #15056
  • [6a94c1aa3b] - timers: clarify lib/timer.js comment (Daniel Bevenius) #11018
  • [ee157e5a7f] - tls: prefer path over port in connect (Bryan English) #14564
  • [9049f09e0f] - tools: enforce consistent spacing inside braces (Sebastiaan Deckers) #14162
  • [6c221b83e3] - url: fix windows drive letter handling (Benjamin Coe) #15490
  • [fc1448f357] - util: improve format performance (Ruben Bridgewater) #15422
  • [5b47f846b0] - util: fix out of bounds indices in util.inspect (Ruben Bridgewater) #14881
  • [9e8b1b3ec6] - util: refactor inspect for performance and more (Ruben Bridgewater) #14881
  • [539445890b] - util: add fast internal array join method (Ruben Bridgewater) #14881
  • [7d95dc385c] - vm: support parsing a script in a specific context (Timothy Gu) #14888

2017-09-12, Version 8.5.0 (Current), @MylesBorins

Notable Changes

  • build
    • Snapshots are now re-enabled in V8 #14875
  • console
    • Implement minimal console.group(). #14910
  • deps
    • upgrade libuv to 1.14.1 #14866
    • update nghttp2 to v1.25.0 #14955
  • dns
    • Add verbatim option to dns.lookup(). When true, results from the DNS resolver are passed on as-is, without the reshuffling that Node.js otherwise does that puts IPv4 addresses before IPv6 addresses. #14731
  • fs
    • add fs.copyFile and fs.copyFileSync which allows for more efficient copying of files. #15034
  • inspector
    • Enable async stack traces #13870
  • module
    • Add support for ESM. This is currently behind the --experimental-modules flag and requires the .mjs extension. node --experimental-modules index.mjs #14369
  • napi
  • os
    • Add support for CIDR notation to the output of the networkInterfaces() method. #14307
  • perf_hooks
    • An initial implementation of the Performance Timing API for Node.js. This is the same Performance Timing API implemented by modern browsers with a number of Node.js specific properties. The User Timing mark() and measure() APIs are implemented. #14680
  • tls
    • multiple PFX in createSecureContext #14793
  • Added new collaborators

Commits

2017-08-15, Version 8.4.0 (Current), @addaleax

Notable changes

  • HTTP2

    • Experimental support for the built-in http2 has been added via the --expose-http2 flag. #14239
  • Inspector

    • require() is available in the inspector console now. #8837
    • Multiple contexts, as created by the vm module, are supported now. #14465
  • N-API

    • New APIs for creating number values have been introduced. #14573
  • Stream

    • For Duplex streams, the high water mark option can now be set independently for the readable and the writable side. #14636
  • Util

    • util.format now supports the %o and %O specifiers for printing objects. #14558

Commits

  • [a6539ece2c] - assert: optimize code path for deepEqual Maps (Ruben Bridgewater) #14501
  • [2716b626b0] - async_hooks: CHECK that resource is not empty (Anna Henningsen) #14694
  • [b3c1c6ff7f] - benchmark: fix and extend assert benchmarks (Ruben Bridgewater) #14147
  • [139b08863e] - benchmark: Correct constructor for freelist (Gareth Ellis) #14627
  • [574cc379b9] - benchmark: remove unused parameters (nishijayaraj) #14640
  • [fef2aa7e27] - (SEMVER-MINOR) deps: add nghttp2 dependency (James M Snell) #14239
  • [2d806f4f71] - deps: cherry-pick f19b889 from V8 upstream (Alexey Kozyatinskiy) #14465
  • [dd521d0a28] - deps,tools: add missing nghttp2 license (Anna Henningsen) #14806
  • [621c03acfe] - doc: delint (Refael Ackermann) #14707
  • [230cb55574] - doc: fix header level typo (Refael Ackermann) #14707
  • [af85b6e058] - doc: fix http2 sample code for http2.md (Keita Akutsu) #14667
  • [1e7ddb200f] - doc: explain browser support of http/2 without SSL (Gil Tayar) #14670
  • [be716d00cc] - (SEMVER-MINOR) doc: include http2.md in all.md (James M Snell) #14239
  • [9e51802f53] - doc: add missing changes: metadata for util (Anna Henningsen) #14810
  • [4811fea553] - doc: add missing changes: metadata for streams (Anna Henningsen) #14810
  • [20fb69063a] - doc: fix docs style in util.md (Daijiro Wachi) #14711
  • [0de63e6888] - doc: fix docs style in intl.md (Daijiro Wachi) #14711
  • [ee2ae0f30b] - doc: expanded description of buffer.slice (Vishal Bisht) #14720
  • [9888bb1238] - doc: improve fs.read() doc text (Rich Trott) #14631
  • [d604173a66] - doc: clarify the position argument for fs.read (dcharbonnier) #14631
  • [d3b072276b] - doc: add docs for AssertionError (Mandeep Singh) #14261
  • [4e15a6b76a] - doc: fix order of AtExit callbacks in addons.md (Daniel Bevenius) #14048
  • [e07dfffad0] - doc: remove undef NDEBUG from addons.md (Daniel Bevenius) #14048
  • [c5ee34e39b] - encoding: rudimentary TextDecoder support w/o ICU (Timothy Gu) #14489
  • [e0001dc601] - (SEMVER-MINOR) http: move utcDate to internal/http.js (James M Snell) #14239
  • [1d40850338] - http2: fix [kInspect]() output for Http2Stream (Evan Lucas) #14753
  • [c5740f9111] - http2: name padding buffer fields (Anna Henningsen) #14744
  • [8a0d101adf] - http2: use per-environment buffers (Anna Henningsen) #14744
  • [92c37fe5fd] - http2: improve perf of passing headers to C++ (Anna Henningsen) #14723
  • [47bf705f75] - http2: rename some nghttp2 stream flags (Kelvin Jin) #14637
  • [723d1af5e7] - (SEMVER-MINOR) http2: fix flakiness in timeout (James M Snell) #14239
  • [6a30448bac] - (SEMVER-MINOR) http2: fix linting after rebase (James M Snell) #14239
  • [efd929e402] - (SEMVER-MINOR) http2: fix compilation error after V8 update (James M Snell) #14239
  • [f46c50b3e2] - (SEMVER-MINOR) http2: add some doc detail for invalid header chars (James M Snell) #14239
  • [b43caf92c0] - (SEMVER-MINOR) http2: fix documentation errors (James M Snell) #14239
  • [33b03b2ab2] - (SEMVER-MINOR) http2: minor cleanup (James M Snell) #14239
  • [174ab6fda0] - (SEMVER-MINOR) http2: use static allocated arrays (James M Snell) #14239
  • [9a4be4adc4] - (SEMVER-MINOR) http2: get trailers working with the compat api (James M Snell) #14239
  • [3e5b07a8fb] - (SEMVER-MINOR) http2: refactor trailers API (James M Snell) #14239
  • [26e1f8e01c] - (SEMVER-MINOR) http2: address initial pr feedback (James M Snell) #14239
  • [7824fa0b40] - (SEMVER-MINOR) http2: make writeHead behave like HTTP/1. (Matteo Collina) #14239
  • [b778838337] - (SEMVER-MINOR) http2: doc and fixes to the Compatibility API (Matteo Collina) #14239
  • [8f3bbd9b68] - (SEMVER-MINOR) http2: add range support for respondWith{File|FD} (James M Snell) #14239
  • [61696f1215] - (SEMVER-MINOR) http2: fix socketOnTimeout and a segfault (James M Snell) #14239
  • [2620769e7f] - (SEMVER-MINOR) http2: refinement and test for socketError (James M Snell) #14239
  • [cd0f4c6652] - (SEMVER-MINOR) http2: fix abort when client.destroy inside end event (James M Snell) #14239
  • [e8cc193bcc] - (SEMVER-MINOR) http2: fix documentation nits (James M Snell) #14239
  • [a49146e446] - (SEMVER-MINOR) http2: remove redundant return in test (James M Snell) #14239
  • [3eb61b00de] - (SEMVER-MINOR) http2: add tests and benchmarks (James M Snell) #14239
  • [9623ee0f99] - (SEMVER-MINOR) http2: introducing HTTP/2 (James M Snell) #14239
  • [029567a460] - inspector: support extra contexts (Eugene Ostroukhov) #14465
  • [d89f9f82b0] - (SEMVER-MINOR) inspector: allow require in Runtime.evaluate (Jan Krems) #8837
  • [ac1b81ad75] - lib: move deprecationWarned var (Daniel Bevenius) #14769
  • [8433b1ad37] - lib: use Timer.now() in readline module (Rich Trott) #14681
  • [917ace283f] - (SEMVER-MINOR) n-api: add napi_get_node_version (Anna Henningsen) #14696
  • [5e2cce59ef] - (SEMVER-MINOR) n-api: optimize number API performance (Jason Ginchereau) #14573
  • [c94f346b93] - net: use rest parameters instead of arguments (Tobias Nießen) #13472
  • [1c00875747] - repl: include folder extensions in autocomplete (Teddy Katz) #14727
  • [59d1d56da6] - src: remove unused http2_socket_buffer from env (Anna Henningsen) #14740
  • [268a1ff3f1] - src: mention that node options are space-separated (Gabriel Schulhof) #14709
  • [9237ef868e] - src: avoid creating local data variable (Daniel Bevenius) #14732
  • [f83827d64b] - src: use local isolate instead of args.GetIsolate (Daniel Bevenius) #14768
  • [d7d22ead2b] - src: add comments for cares library init refcount (Anna Henningsen) #14743
  • [b87fae927d] - src: remove duplicate loop (Anna Henningsen) #14750
  • [033773c17b] - src: add overlooked handle to cleanup (Anna Henningsen) #14749
  • [dd6444d401] - src,http2: DRY header/trailer handling code up (Anna Henningsen) #14688
  • [ef8ac7b5ac] - (SEMVER-MINOR) stream: support readable/writableHWM for Duplex (Guy Margalit) #14636
  • [6d9f94f93f] - test: cover all HTTP methods that parser supports (Oky Antoro) #14773
  • [e4854fccfc] - test: use regular expressions in throw assertions (Vincent Xue) #14318
  • [66788fc4d0] - test: increase http2 coverage (Michael Albert) #14701
  • [dbb9c370d4] - test: add crypto check to http2 tests (Daniel Bevenius) #14657
  • [97f622b99e] - (SEMVER-MINOR) test: fix flaky test-http2-client-unescaped-path on osx (James M Snell) #14239
  • [9d752d5282] - (SEMVER-MINOR) test: fix flakiness in test-http2-client-upload (James M Snell) #14239
  • [82c63a55ea] - test: add test-benchmark-arrays (Rich Trott) #14728
  • [0eab77c86f] - test: allow inspector to reopen with same port (Gibson Fahnestock) #14320
  • [9bbbf12827] - test: remove redundant using in cctest (XadillaX) #14739
  • [7eb9f6f6e4] - test: make totalLen snake case (Daniel Bevenius) #14765
  • [977e22857a] - test: make test-tls-connect checks more strict (Rich Trott) #14695
  • [a781bb4508] - Reverttest: disable MultipleEnvironmentsPerIsolate” (Anna Henningsen) #14749
  • [8ff2a5c338] - Reverttest: add DISABLED_ prefix to commented out test” (Anna Henningsen) #14749
  • [0bc3124c80] - test: properly order freeing resources in cctest (Anna Henningsen) #14749
  • [3f1bb0a551] - test: split out load-sensitive readline tests (Rich Trott) #14681
  • [5d99d7dff2] - test: add block scoping to test-readline-interface (Rich Trott) #14615
  • [58742729da] - test: set module loading error for aix (Prakash Palaniappan) #14511
  • [06ba2dae30] - test: fix conversion of microseconds in test (Nick Stanish) #14706
  • [30837b3b90] - test: improve check in test-os (Rich Trott) #14655
  • [55aba6aee7] - test: replace indexOf with includes (Miguel Angel Asencio Hurtado) #14630
  • [935d34bd6b] - test: fix test-readline-interface (Azard) #14677
  • [2ee3320f2c] - test: improve multiple timers tests (James M Snell) #14616
  • [71f2e76353] - test: use ciphers supported by shared OpenSSL (Jérémy Lal) #14566
  • [f73f659186] - test: mitigate RegEx exceeding 80 chars (Aditya Anand) #14607
  • [96147c980c] - test: read proper inspector message size (Bartosz Sosnowski) #14596
  • [e84c9d7176] - (SEMVER-MINOR) tls: add tlsSocket.disableRenegotiation() (James M Snell) #14239
  • [a0e05e884e] - tools: fix tools/addon-verify.js (Daniel Bevenius) #14048
  • [116841056a] - util: improve util.inspect performance (Ruben Bridgewater) #14492
  • [7203924fea] - (SEMVER-MINOR) util: implement %o and %O as formatting specifiers (Greg Alexander) #14558

2017-08-09, Version 8.3.0 (Current), @addaleax

Notable changes

V8 6.0

The V8 engine has been upgraded to version 6.0, which has a significantly changed performance profile. #14574

More detailed information on performance differences can be found at https://medium.com/the-node-js-collection/get-ready-a-new-v8-is-coming-node-js-performance-is-changing-46a63d6da4de

Other notable changes

  • DNS

    • Independent DNS resolver instances are supported now, with support for cancelling the corresponding requests. #14518
  • N-API

    • Multiple N-API functions for error handling have been changed to support assigning error codes. #13988
  • REPL

    • Autocompletion support for require() has been improved. #14409
  • Utilities

    • The WHATWG Encoding Standard (TextDecoder and TextEncoder) has been implemented as an experimental feature. #13644
  • Added new collaborators

Commits

2017-07-20, Version 8.2.1 (Current), @fishrock123

Notable changes

  • http: Writes no longer abort if the Socket is missing.
  • process, async_hooks: Avoid problems when triggerAsyncId is undefined.
  • zlib: Streams no longer attempt to process data when destroyed.

Commits

  • [8d426bbeec] - http: do not abort if socket is missing (Matteo Collina) #14387
  • [302c19b006] - process: triggerAsyncId can be undefined (Matteo Collina) #14387
  • [6fce1a314e] - zlib: check if the stream is destroyed before push (Matteo Collina) #14330

2017-07-19, Version 8.2.0 (Current), @fishrock123

Big thanks to @addaleax who prepared the vast majority of this release.

Notable changes

  • Async Hooks

    • Multiple improvements to Promise support in async_hooks have been made.
  • Build

    • The compiler version requirement to build Node with GCC has been raised to GCC 4.9.4. [820b011ed6] - #13466
  • Cluster

    • Users now have more fine-grained control over the inspector port used by individual cluster workers. Previously, cluster workers were restricted to incrementing from the master's debug port. [dfc46e262a] - #14140
  • DNS

  • npm

Commits

2017-07-11, Version 8.1.4 (Current), @evanlucas

This is a security release. All Node.js users should consult the security release summary at https://nodejs.org/en/blog/vulnerability/july-2017-security-releases/ for details on patched vulnerabilities.

Notable changes

  • build:
    • Disable V8 snapshots - The hashseed embedded in the snapshot is currently the same for all runs of the binary. This opens node up to collision attacks which could result in a Denial of Service. We have temporarily disabled snapshots until a more robust solution is found (Ali Ijaz Sheikh)
  • deps:
    • CVE-2017-1000381 - The c-ares function ares_parse_naptr_reply(), which is used for parsing NAPTR responses, could be triggered to read memory outside of the given input buffer if the passed in DNS response packet was crafted in a particular way. This patch checks that there is enough data for the required elements of an NAPTR record (2 int16, 3 bytes for string lengths) before processing a record. (David Drysdale)

Commits

2017-06-29, Version 8.1.3 (Current), @addaleax

Notable changes

  • Stream Two regressions with the stream module have been fixed:
    • The finish event will now always be emitted after the error event if one is emitted: [0a9e96e86c] - #13850
    • In object mode, readable streams can now use undefined again. [5840138e70] - #13760

Commits

2017-06-15, Version 8.1.2 (Current), @rvagg

Notable changes

Release to fix broken process.release properties Ref: https://github.com/nodejs/node/issues/13667

2017-06-13, Version 8.1.1 (Current), @addaleax

Notable changes

  • Child processes

    • stdout and stderr are now available on the error output of a failed call to the util.promisify()ed version of child_process.exec. [d66d4fc94c] - #13388
  • HTTP

    • A regression that broke certain scenarios in which HTTP is used together with the cluster module has been fixed. [fff8a56d6f] - #13578
  • HTTPS

    • The rejectUnauthorized option now works properly for unix sockets. [c4cbd99d37] - #13505
  • Readline

    • A change that broke npm init and other code which uses readline multiple times on the same input stream is reverted. [0df6c0b5f0] - #13560

Commits

2017-06-07, Version 8.1.0 (Current), @jasnell

Notable Changes

  • Async Hooks
    • When one Promise leads to the creation of a new Promise, the parent Promise will be identified as the trigger [135f4e6643] - #13367.
  • Dependencies
  • File system
    • The fs.exists() function now works correctly with util.promisify() [6e0eccd7a1] - #13316.
    • fs.Stats times are now also available as numbers [c756efb25a] - #13173.
  • Inspector
    • It is now possible to bind to a random port using --inspect=0 [cc6ec2fb27] - #5025.
  • Zlib
    • A regression in the Zlib module that made it impossible to properly subclasses zlib.Deflate and other Zlib classes has been fixed. [6aeb555cc4] - #13374.

Commits

2017-05-30, Version 8.0.0 (Current), @jasnell

Node.js 8.0.0 is a major new release that includes a significant number of semver-major and semver-minor changes. Notable changes are listed below.

The Node.js 8.x release branch is scheduled to become the next actively maintained Long Term Support (LTS) release line in October, 2017 under the LTS codename 'Carbon'. Note that the LTS lifespan for 8.x will end on December 31st, 2019.

Notable Changes

  • Async Hooks

  • Buffer

    • Using the --pending-deprecation flag will cause Node.js to emit a deprecation warning when using new Buffer(num) or Buffer(num). [d2d32ea5a2] - #11968.
    • new Buffer(num) and Buffer(num) will zero-fill new Buffer instances [7eb1b4658e] - #12141.
    • Many Buffer methods now accept Uint8Array as input [beca3244e2] - #10236.
  • Child Process

  • Console

    • Error events emitted when using console methods are now supressed. [f18e08d820] - #9744.
  • Dependencies

  • Domains

  • Errors

    • We have started assigning static error codes to errors generated by Node.js. This has been done through multiple commits and is still a work in progress.
  • File System

    • The utility class fs.SyncWriteStream has been deprecated [7a55e34ef4] - #10467.
    • The deprecated fs.read() string interface has been removed [3c2a9361ff] - #9683.
  • HTTP

    • Improved support for userland implemented Agents [90403dd1d0] - #11567.
    • Outgoing Cookie headers are concatenated into a single string [d3480776c7] - #11259.
    • The httpResponse.writeHeader() method has been deprecated [fb71ba4921] - #11355.
    • New methods for accessing HTTP headers have been added to OutgoingMessage [3e6f1032a4] - #10805.
  • Lib

  • N-API

    • Experimental support for the new N-API API has been added [56e881d0b0] - #11975.
  • Process

    • Process warning output can be redirected to a file using the --redirect-warnings command-line argument [03e89b3ff2] - #10116.
    • Process warnings may now include additional detail [dd20e68b0f] - #12725.
  • REPL

  • Src

    • NODE_MODULE_VERSION has been updated to 57 [ec7cbaf266] - #12995.
    • Add --pending-deprecation command-line argument and NODE_PENDING_DEPRECATION environment variable [a16b570f8c] - #11968.
    • The --debug command-line argument has been deprecated. Note that using --debug will enable the new Inspector-based debug protocol as the legacy Debugger protocol previously used by Node.js has been removed. [010f864426] - #12949.
    • Throw when the -c and -e command-line arguments are used at the same time [a5f91ab230] - #11689.
    • Throw when the --use-bundled-ca and --use-openssl-ca command-line arguments are used at the same time. [8a7db9d4b5] - #12087.
  • Stream

  • TLS

    • The rejectUnauthorized option now defaults to true [348cc80a3c] - #5923.
    • The tls.createSecurePair() API now emits a runtime deprecation [a2ae08999b] - #11349.
    • A runtime deprecation will now be emitted when dhparam is less than 2048 bits [d523eb9c40] - #11447.
  • URL

    • The WHATWG URL implementation is now a fully-supported Node.js API [d080ead0f9] - #12710.
  • Util

  • Zlib

Commits

Semver-Major Commits

  • [e48d58b8b2] - (SEMVER-MAJOR) assert: fix AssertionError, assign error code (James M Snell) #12651
  • [758b8b6e5d] - (SEMVER-MAJOR) assert: improve assert.fail() API (Rich Trott) #12293
  • [6481c93aef] - (SEMVER-MAJOR) assert: add support for Map and Set in deepEqual (Joseph Gentle) #12142
  • [efec14a7d1] - (SEMVER-MAJOR) assert: enforce type check in deepStrictEqual (Joyee Cheung) #10282
  • [562cf5a81c] - (SEMVER-MAJOR) assert: fix premature deep strict comparison (Joyee Cheung) #11128
  • [0af41834f1] - (SEMVER-MAJOR) assert: fix misformatted error message (Rich Trott) #11254
  • [190dc69c89] - (SEMVER-MAJOR) benchmark: add parameter for module benchmark (Brian White) #10789
  • [b888bfe81d] - (SEMVER-MAJOR) benchmark: allow zero when parsing http req/s (Brian White) #10558
  • [f53a6fb48b] - (SEMVER-MAJOR) benchmark: add http header setting scenarios (Brian White) #10558
  • [d2d32ea5a2] - (SEMVER-MAJOR) buffer: add pending deprecation warning (James M Snell) #11968
  • [7eb1b4658e] - (SEMVER-MAJOR) buffer: zero fill Buffer(num) by default (James M Snell) #12141
  • [682573c11d] - (SEMVER-MAJOR) buffer: remove error for malformatted hex string (Rich Trott) #12012
  • [9a0829d728] - (SEMVER-MAJOR) buffer: stricter argument checking in toString (Nikolai Vavilov) #11120
  • [beca3244e2] - (SEMVER-MAJOR) buffer: allow Uint8Array input to methods (Anna Henningsen) #10236
  • [3d353c749c] - (SEMVER-MAJOR) buffer: consistent error for length > kMaxLength (Joyee Cheung) #10152
  • [bf5c309b5e] - (SEMVER-MAJOR) build: fix V8 build on FreeBSD (Michaël Zasso) #12784
  • [a1028d5e3e] - (SEMVER-MAJOR) build: remove cares headers from tarball (Gibson Fahnestock) #10283
  • [d08836003c] - (SEMVER-MAJOR) build: build an x64 build by default on Windows (Nikolai Vavilov) #11537
  • [92ed1ab450] - (SEMVER-MAJOR) build: change nosign flag to sign and flips logic (Joe Doyle) #10156
  • [97a77288ce] - (SEMVER-MAJOR) child_process: improve ChildProcess validation (cjihrig) #12348
  • [a9111f9738] - (SEMVER-MAJOR) child_process: minor cleanup of internals (cjihrig) #12348
  • [d75fdd96aa] - (SEMVER-MAJOR) child_process: improve killSignal validations (Sakthipriyan Vairamani (thefourtheye)) #10423
  • [4cafa60c99] - (SEMVER-MAJOR) child_process: align fork/spawn stdio error msg (Sam Roberts) #11044
  • [3268863ebc] - (SEMVER-MAJOR) child_process: add string shortcut for fork stdio (Javis Sullivan) #10866
  • [8f3ff98f0e] - (SEMVER-MAJOR) child_process: allow Infinity as maxBuffer value (cjihrig) #10769
  • [627ecee9ed] - (SEMVER-MAJOR) child_process: support Uint8Array input to methods (Anna Henningsen) #10653
  • [fc7b0dda85] - (SEMVER-MAJOR) child_process: improve input validation (cjihrig) #8312
  • [49d1c366d8] - (SEMVER-MAJOR) child_process: remove extra newline in errors (cjihrig) #9343
  • [f18e08d820] - (SEMVER-MAJOR) console: do not emit error events (Anna Henningsen) #9744
  • [a8f460f12d] - (SEMVER-MAJOR) crypto: support all ArrayBufferView types (Timothy Gu) #12223
  • [0db49fef41] - (SEMVER-MAJOR) crypto: support Uint8Array prime in createDH (Anna Henningsen) #11983
  • [443691a5ae] - (SEMVER-MAJOR) crypto: fix default encoding of LazyTransform (Lukas Möller) #8611
  • [9f74184e98] - (SEMVER-MAJOR) crypto: upgrade pbkdf2 without digest to an error (James M Snell) #11305
  • [e90f38270c] - (SEMVER-MAJOR) crypto: throw error in CipherBase::SetAutoPadding (Kirill Fomichev) #9405
  • [1ef401ce92] - (SEMVER-MAJOR) crypto: use check macros in CipherBase::SetAuthTag (Kirill Fomichev) #9395
  • [7599b0ef9d] - (SEMVER-MAJOR) debug: activate inspector with _debugProcess (Eugene Ostroukhov) #11431
  • [549e81bfa1] - (SEMVER-MAJOR) debugger: remove obsolete _debug_agent.js (Rich Trott) #12582
  • [3c3b36af0f] - (SEMVER-MAJOR) deps: upgrade npm beta to 5.0.0-beta.56 (Kat Marchán) #12936
  • [6690415696] - (SEMVER-MAJOR) deps: cherry-pick a927f81c7 from V8 upstream (Anna Henningsen) #11752
  • [60d1aac8d2] - (SEMVER-MAJOR) deps: update V8 to 5.8.283.38 (Michaël Zasso) #12784
  • [b7608ac707] - (SEMVER-MAJOR) deps: cherry-pick node-inspect#43 (Ali Ijaz Sheikh) #11441
  • [9c9e2d7f4a] - (SEMVER-MAJOR) deps: backport 3297130 from upstream V8 (Michaël Zasso) #11752
  • [07088e6fc1] - (SEMVER-MAJOR) deps: backport 39642fa from upstream V8 (Michaël Zasso) #11752
  • [8394b05e20] - (SEMVER-MAJOR) deps: cherry-pick c5c570f from upstream V8 (Michaël Zasso) #11752
  • [fcc58bf0da] - (SEMVER-MAJOR) deps: cherry-pick a927f81c7 from V8 upstream (Anna Henningsen) #11752
  • [83bf2975ec] - (SEMVER-MAJOR) deps: cherry-pick V8 ValueSerializer changes (Anna Henningsen) #11752
  • [c459d8ea5d] - (SEMVER-MAJOR) deps: update V8 to 5.7.492.69 (Michaël Zasso) #11752
  • [7c0c7baff3] - (SEMVER-MAJOR) deps: fix gyp configuration for v8-inspector (Michaël Zasso) #10992
  • [00a2aa0af5] - (SEMVER-MAJOR) deps: fix gyp build configuration for Windows (Michaël Zasso) #10992
  • [b30ec59855] - (SEMVER-MAJOR) deps: switch to v8_inspector in V8 (Ali Ijaz Sheikh) #10992
  • [7a77daf243] - (SEMVER-MAJOR) deps: update V8 to 5.6.326.55 (Michaël Zasso) #10992
  • [c9e5178f3c] - (SEMVER-MAJOR) deps: hide zlib internal symbols (Sam Roberts) #11082
  • [2739185b79] - (SEMVER-MAJOR) deps: update V8 to 5.5.372.40 (Michaël Zasso) #9618
  • [f2e3a670af] - (SEMVER-MAJOR) dgram: convert to using internal/errors (Michael Dawson) #12926
  • [2dc1053b0a] - (SEMVER-MAJOR) dgram: support Uint8Array input to send() (Anna Henningsen) #11985
  • [32679c73c1] - (SEMVER-MAJOR) dgram: improve signature of Socket.prototype.send (Christopher Hiller) #10473
  • [5587ff1ccd] - (SEMVER-MAJOR) dns: handle implicit bind DNS errors (cjihrig) #11036
  • [eb535c5154] - (SEMVER-MAJOR) doc: deprecate vm.runInDebugContext (Josh Gavant) #12243
  • [75c471a026] - (SEMVER-MAJOR) doc: drop PPC BE from supported platforms (Michael Dawson) #12309
  • [86996c5838] - (SEMVER-MAJOR) doc: deprecate private http properties (Brian White) #10941
  • [3d8379ae60] - (SEMVER-MAJOR) doc: improve assert.md regarding ECMAScript terms (Joyee Cheung) #11128
  • [d708700c68] - (SEMVER-MAJOR) doc: deprecate buffer's parent property (Sakthipriyan Vairamani (thefourtheye)) #8332
  • [03d440e3ce] - (SEMVER-MAJOR) doc: document buffer.buffer property (Sakthipriyan Vairamani (thefourtheye)) #8332
  • [f0b702555a] - (SEMVER-MAJOR) errors: use lazy assert to avoid issues on startup (James M Snell) #11300
  • [251e5ed8ee] - (SEMVER-MAJOR) errors: assign error code to bootstrap_node created error (James M Snell) #11298
  • [e75bc87d22] - (SEMVER-MAJOR) errors: port internal/process errors to internal/errors (James M Snell) #11294
  • [76327613af] - (SEMVER-MAJOR) errors, child_process: migrate to using internal/errors (James M Snell) #11300
  • [1c834e78ff] - (SEMVER-MAJOR) errors,test: migrating error to internal/errors (larissayvette) #11505
  • [2141d37452] - (SEMVER-MAJOR) events: update and clarify error message (Chris Burkhart) #10387
  • [221b03ad20] - (SEMVER-MAJOR) events, doc: check input in defaultMaxListeners (DavidCai) #11938
  • [eed87b1637] - (SEMVER-MAJOR) fs: (+/-)Infinity and NaN invalid unixtimestamp (Luca Maraschi) #11919
  • [71097744b2] - (SEMVER-MAJOR) fs: more realpath*() optimizations (Brian White) #11665
  • [6a5ab5d550] - (SEMVER-MAJOR) fs: include more fs.stat*() optimizations (Brian White) #11665
  • [1c3df96570] - (SEMVER-MAJOR) fs: replace regexp with function (Brian White) #10789
  • [34c9fc2e4e] - (SEMVER-MAJOR) fs: avoid multiple conversions to string (Brian White) #10789
  • [21b2440176] - (SEMVER-MAJOR) fs: avoid recompilation of closure (Brian White) #10789
  • [7a55e34ef4] - (SEMVER-MAJOR) fs: runtime deprecation for fs.SyncWriteStream (James M Snell) #10467
  • [b1fc7745f2] - (SEMVER-MAJOR) fs: avoid emitting error EBADF for double close (Matteo Collina) #11225
  • [3c2a9361ff] - (SEMVER-MAJOR) fs: remove fs.read's string interface (Nikolai Vavilov) #9683
  • [f3cf8e9808] - (SEMVER-MAJOR) fs: do not pass Buffer when toString() fails (Brian White) #9670
  • [85a4e25775] - (SEMVER-MAJOR) http: add type checking for hostname (James M Snell) #12494
  • [90403dd1d0] - (SEMVER-MAJOR) http: should support userland Agent (fengmk2) #11567
  • [d3480776c7] - (SEMVER-MAJOR) http: concatenate outgoing Cookie headers (Brian White) #11259
  • [6b2cef65c9] - (SEMVER-MAJOR) http: append Cookie header values with semicolon (Brian White) #11259
  • [8243ca0e0e] - (SEMVER-MAJOR) http: reuse existing StorageObject (Brian White) #10941
  • [b377034359] - (SEMVER-MAJOR) http: support old private properties and function (Brian White) #10941
  • [940b5303be] - (SEMVER-MAJOR) http: use Symbol for outgoing headers (Brian White) #10941
  • [fb71ba4921] - (SEMVER-MAJOR) http: docs-only deprecation of res.writeHeader() (James M Snell) #11355
  • [a4bb9fdb89] - (SEMVER-MAJOR) http: include provided status code in range error (cjihrig) #11221
  • [fc7025c9c0] - (SEMVER-MAJOR) http: throw an error for unexpected agent values (brad-decker) #10053
  • [176cdc2823] - (SEMVER-MAJOR) http: misc optimizations and style fixes (Brian White) #10558
  • [73d9445782] - (SEMVER-MAJOR) http: try to avoid lowercasing incoming headers (Brian White) #10558
  • [c77ed327d9] - (SEMVER-MAJOR) http: avoid using object for removed header status (Brian White) #10558
  • [c00e4adbb4] - (SEMVER-MAJOR) http: optimize header storage and matching (Brian White) #10558
  • [ec8910bcea] - (SEMVER-MAJOR) http: check statusCode early (Brian White) #10558
  • [a73ab9de0d] - (SEMVER-MAJOR) http: remove pointless use of arguments (cjihrig) #10664
  • [df3978421b] - (SEMVER-MAJOR) http: verify client method is a string (Luca Maraschi) #10111
  • [90476ac6ee] - (SEMVER-MAJOR) lib: remove _debugger.js (Ben Noordhuis) #12495
  • [3209a8ebf3] - (SEMVER-MAJOR) lib: ensure --check flag works for piped-in code (Teddy Katz) #11689
  • [c67207731f] - (SEMVER-MAJOR) lib: simplify Module._resolveLookupPaths (Brian White) #10789
  • [28dc848e70] - (SEMVER-MAJOR) lib: improve method of function calling (Brian White) #10789
  • [a851b868c0] - (SEMVER-MAJOR) lib: remove sources of permanent deopts (Brian White) #10789
  • [62e96096fa] - (SEMVER-MAJOR) lib: more consistent use of module.exports = {} model (James M Snell) #11406
  • [88c3f57cc3] - (SEMVER-MAJOR) lib: refactor internal/socket_list (James M Snell) #11406
  • [f04387e9f2] - (SEMVER-MAJOR) lib: refactor internal/freelist (James M Snell) #11406
  • [d61a511728] - (SEMVER-MAJOR) lib: refactor internal/linkedlist (James M Snell) #11406
  • [2ba4eeadbb] - (SEMVER-MAJOR) lib: remove simd support from util.format() (Ben Noordhuis) #11346
  • [dfdd911e17] - (SEMVER-MAJOR) lib: deprecate node --debug at runtime (Josh Gavant) #10970
  • [5de3cf099c] - (SEMVER-MAJOR) lib: add static identifier codes for all deprecations (James M Snell) #10116
  • [4775942957] - (SEMVER-MAJOR) lib, test: fix server.listen error message (Joyee Cheung) #11693
  • [caf9ae748b] - (SEMVER-MAJOR) lib,src: make constants not inherit from Object (Sakthipriyan Vairamani (thefourtheye)) #10458
  • [e0b076a949] - (SEMVER-MAJOR) lib,src,test: update --debug/debug-brk comments (Ben Noordhuis) #12495
  • [b40dab553f] - (SEMVER-MAJOR) linkedlist: remove unused methods (Brian White) #11726
  • [84a23391f6] - (SEMVER-MAJOR) linkedlist: remove public module (Brian White) #12113
  • [e32425bfcd] - (SEMVER-MAJOR) module: avoid JSON.stringify() for cache key (Brian White) #10789
  • [403b89e72b] - (SEMVER-MAJOR) module: avoid hasOwnProperty() (Brian White) #10789
  • [298a40e04e] - (SEMVER-MAJOR) module: use “clean” objects (Brian White) #10789
  • [cf980b0311] - (SEMVER-MAJOR) net: check and throw on error for getsockname (Daniel Bevenius) #12871
  • [473572ea25] - (SEMVER-MAJOR) os: refactor os structure, add Symbol.toPrimitive (James M Snell) #12654
  • [03e89b3ff2] - (SEMVER-MAJOR) process: add --redirect-warnings command line argument (James M Snell) #10116
  • [5e1f32fd94] - (SEMVER-MAJOR) process: add optional code to warnings + type checking (James M Snell) #10116
  • [a647d82f83] - (SEMVER-MAJOR) process: improve process.hrtime (Joyee Cheung) #10764
  • [4e259b21a3] - (SEMVER-MAJOR) querystring, url: handle repeated sep in search (Daijiro Wachi) #10967
  • [39d9afe279] - (SEMVER-MAJOR) repl: refactor LineParser implementation (Blake Embrey) #6171
  • [3f27f02da0] - (SEMVER-MAJOR) repl: docs-only deprecation of magic mode (Timothy Gu) #11599
  • [b77c89022b] - (SEMVER-MAJOR) repl: remove magic mode semantics (Timothy Gu) #11599
  • [007386ee81] - (SEMVER-MAJOR) repl: remove workaround for function redefinition (Michaël Zasso) #9618
  • [5b63fabfd8] - (SEMVER-MAJOR) src: update NODE_MODULE_VERSION to 55 (Michaël Zasso) #12784
  • [a16b570f8c] - (SEMVER-MAJOR) src: add --pending-deprecation and NODE_PENDING_DEPRECATION (James M Snell) #11968
  • [faa447b256] - (SEMVER-MAJOR) src: allow ArrayBufferView as instance of Buffer (Timothy Gu) #12223
  • [47f8f7462f] - (SEMVER-MAJOR) src: remove support for --debug (Jan Krems) #12197
  • [a5f91ab230] - (SEMVER-MAJOR) src: throw when -c and -e are used simultaneously (Teddy Katz) #11689
  • [8a7db9d4b5] - (SEMVER-MAJOR) src: add --use-bundled-ca --use-openssl-ca check (Daniel Bevenius) #12087
  • [ed12ea371c] - (SEMVER-MAJOR) src: update inspector code to match upstream API (Michaël Zasso) #11752
  • [89d8dc9afd] - (SEMVER-MAJOR) src: update NODE_MODULE_VERSION to 54 (Michaël Zasso) #11752
  • [1125c8a814] - (SEMVER-MAJOR) src: fix typos in node_lttng_provider.h (Benjamin Fleischer) #11723
  • [aae8f683b4] - (SEMVER-MAJOR) src: update NODE_MODULE_VERSION to 53 (Michaël Zasso) #10992
  • [91ab09fe2a] - (SEMVER-MAJOR) src: update NODE_MODULE_VERSION to 52 (Michaël Zasso) #9618
  • [334be0feba] - (SEMVER-MAJOR) src: fix space for module version mismatch error (Yann Pringault) #10606
  • [45c9ca7fd4] - (SEMVER-MAJOR) src: remove redundant spawn/spawnSync type checks (cjihrig) #8312
  • [b374ee8c3d] - (SEMVER-MAJOR) src: add handle check to spawn_sync (cjihrig) #8312
  • [3295a7feba] - (SEMVER-MAJOR) src: allow getting Symbols on process.env (Anna Henningsen) #9631
  • [1aa595e5bd] - (SEMVER-MAJOR) src: throw on process.env symbol usage (cjihrig) #9446
  • [a235ccd168] - (SEMVER-MAJOR) src,test: debug is now an alias for inspect (Ali Ijaz Sheikh) #11441
  • [b6e1d22fa6] - (SEMVER-MAJOR) stream: add destroy and _destroy methods. (Matteo Collina) #12925
  • [f36c970cf3] - (SEMVER-MAJOR) stream: improve multiple callback error message (cjihrig) #12520
  • [202b07f414] - (SEMVER-MAJOR) stream: fix comment for sync flag of ReadableState (Wang Xinyong) #11139
  • [1004b9b4ad] - (SEMVER-MAJOR) stream: remove unused ranOut from ReadableState (Wang Xinyong) #11139
  • [03b9f6fe26] - (SEMVER-MAJOR) stream: avoid instanceof (Brian White) #10558
  • [a3539ae3be] - (SEMVER-MAJOR) stream: use plain objects for write/corked reqs (Brian White) #10558
  • [24ef1e6775] - (SEMVER-MAJOR) string_decoder: align UTF-8 handling with V8 (Brian White) #9618
  • [23fc082409] - (SEMVER-MAJOR) test: remove extra console output from test-os.js (James M Snell) #12654
  • [59c6230861] - (SEMVER-MAJOR) test: cleanup test-child-process-constructor.js (cjihrig) #12348
  • [06c29a66d4] - (SEMVER-MAJOR) test: remove common.fail() (Rich Trott) #12293
  • [0c539faac3] - (SEMVER-MAJOR) test: add common.getArrayBufferViews(buf) (Timothy Gu) #12223
  • [c5d1851ac4] - (SEMVER-MAJOR) test: drop v5.x-specific code path from simd test (Ben Noordhuis) #11346
  • [c2c6ae52ea] - (SEMVER-MAJOR) test: move test-vm-function-redefinition to parallel (Franziska Hinkelmann) #9618
  • [5b30c4f24d] - (SEMVER-MAJOR) test: refactor test-child-process-spawnsync-maxbuf (cjihrig) #10769
  • [348cc80a3c] - (SEMVER-MAJOR) tls: make rejectUnauthorized default to true (ghaiklor) #5923
  • [a2ae08999b] - (SEMVER-MAJOR) tls: runtime deprecation for tls.createSecurePair() (James M Snell) #11349
  • [d523eb9c40] - (SEMVER-MAJOR) tls: use emitWarning() for dhparam < 2048 bits (James M Snell) #11447
  • [e03a929648] - (SEMVER-MAJOR) tools: update test-npm.sh paths (Kat Marchán) #12936
  • [6f202ef857] - (SEMVER-MAJOR) tools: remove assert.fail() lint rule (Rich Trott) #12293
  • [615789b723] - (SEMVER-MAJOR) tools: enable ES2017 syntax support in ESLint (Michaël Zasso) #11210
  • [1b63fa1096] - (SEMVER-MAJOR) tty: remove NODE_TTY_UNSAFE_ASYNC (Jeremiah Senkpiel) #12057
  • [78182458e6] - (SEMVER-MAJOR) url: fix error message of url.format (DavidCai) #11162
  • [c65d55f087] - (SEMVER-MAJOR) url: do not truncate long hostnames (Junshu Okamoto) #9292
  • [3cc3e099be] - (SEMVER-MAJOR) util: show External values explicitly in inspect (Anna Henningsen) #12151
  • [4a5a9445b5] - (SEMVER-MAJOR) util: use [Array] for deeply nested arrays (Anna Henningsen) #12046
  • [5bfd13b81e] - (SEMVER-MAJOR) util: display Symbol keys in inspect by default (Shahar Or) #9726
  • [455e6f1dd8] - (SEMVER-MAJOR) util: throw toJSON errors when formatting %j (Timothy Gu) #11708
  • [ec2f098156] - (SEMVER-MAJOR) util: change sparse arrays inspection format (Alexey Orlenko) #11576
  • [aab0d202f8] - (SEMVER-MAJOR) util: convert inspect.styles and inspect.colors to prototype-less objects (Nemanja Stojanovic) #11624
  • [4151ab398b] - (SEMVER-MAJOR) util: add createClassWrapper to internal/util (James M Snell) #11391
  • [f65aa08b52] - (SEMVER-MAJOR) util: improve inspect for (Async|Generator)Function (Michaël Zasso) #11210
  • [efae43f0ee] - (SEMVER-MAJOR) zlib: fix node crashing on invalid options (Alexey Orlenko) #13098
  • [2ced07ccaf] - (SEMVER-MAJOR) zlib: support all ArrayBufferView types (Timothy Gu) #12223
  • [91383e47fd] - (SEMVER-MAJOR) zlib: support Uint8Array in convenience methods (Timothy Gu) #12001
  • [b514bd231e] - (SEMVER-MAJOR) zlib: use RangeError/TypeError consistently (James M Snell) #11391
  • [8e69f7e385] - (SEMVER-MAJOR) zlib: refactor zlib module (James M Snell) #11391
  • [dd928b04fc] - (SEMVER-MAJOR) zlib: be strict about what strategies are accepted (Rich Trott) #10934

Semver-minor Commits

  • [7e3a3c962f] - (SEMVER-MINOR) async_hooks: initial async_hooks implementation (Trevor Norris) #12892
  • [60a2fe7d47] - (SEMVER-MINOR) async_hooks: implement C++ embedder API (Anna Henningsen) #13142
  • [f1ed19d98f] - (SEMVER-MINOR) async_wrap: use more specific providers (Trevor Norris) #12892
  • [0432c6e91e] - (SEMVER-MINOR) async_wrap: use double, not int64_t, for async id (Trevor Norris) #12892
  • [fe2df3b842] - (SEMVER-MINOR) async_wrap,src: add GetAsyncId() method (Trevor Norris) #12892
  • [6d93508369] - (SEMVER-MINOR) buffer: expose FastBuffer on internal/buffer (Anna Henningsen) #11048
  • [fe5ca3ff27] - (SEMVER-MINOR) child_process: support promisified exec(File) (Anna Henningsen) #12442
  • [f146fe4ed4] - (SEMVER-MINOR) cmd: support dash as stdin alias (Ebrahim Byagowi) #13012
  • [d9f3ec8e09] - (SEMVER-MINOR) crypto: use named FunctionTemplate (Trevor Norris) #12892
  • [0e710aada4] - (SEMVER-MINOR) crypto: add sign/verify support for RSASSA-PSS (Tobias Nießen) #11705
  • [faf6654ff7] - (SEMVER-MINOR) dns: support promisified lookup(Service) (Anna Henningsen) #12442
  • [5077cde71f] - (SEMVER-MINOR) doc: restructure url.md (James M Snell) #12710
  • [d080ead0f9] - (SEMVER-MINOR) doc: graduate WHATWG URL from Experimental (James M Snell) #12710
  • [c505b8109e] - (SEMVER-MINOR) doc: document URLSearchParams constructor (Timothy Gu) #11060
  • [84dabe8373] - (SEMVER-MINOR) domain: support promises (Anna Henningsen) #12489
  • [fbcb4f50b8] - (SEMVER-MINOR) fs: support util.promisify for fs.read/fs.write (Anna Henningsen) #12442
  • [a7f5c9cb7d] - (SEMVER-MINOR) http: destroy sockets after keepAliveTimeout (Timur Shemsedinov) #2534
  • [3e6f1032a4] - (SEMVER-MINOR) http: add new functions to OutgoingMessage (Brian White) #10805
  • [c7182b9d9c] - (SEMVER-MINOR) inspector: JavaScript bindings for the inspector (Eugene Ostroukhov) #12263
  • [4a7233c178] - (SEMVER-MINOR) lib: implement async_hooks API in core (Trevor Norris) #12892
  • [c68ebe8436] - (SEMVER-MINOR) makefile: add async-hooks to test and test-ci (Trevor Norris) #12892
  • [45139e59f3] - (SEMVER-MINOR) n-api: add napi_get_version (Michael Dawson) #13207
  • [56e881d0b0] - (SEMVER-MINOR) n-api: add support for abi stable module API (Jason Ginchereau) #11975
  • [dd20e68b0f] - (SEMVER-MINOR) process: add optional detail to process emitWarning (James M Snell) #12725
  • [c0bde73f1b] - (SEMVER-MINOR) src: implement native changes for async_hooks (Trevor Norris) #12892
  • [e5a25cbc85] - (SEMVER-MINOR) src: expose node::AddPromiseHook (Anna Henningsen) #12489
  • [ec53921d2e] - (SEMVER-MINOR) src: make AtExit callback's per Environment (Daniel Bevenius) #9163
  • [ba4847e879] - (SEMVER-MINOR) src: Node Tracing Controller (misterpoe) #9304
  • [6ff3b03240] - (SEMVER-MINOR) src, inspector: add --inspect-brk option (Josh Gavant) #8979
  • [220186c4a8] - (SEMVER-MINOR) stream: support Uint8Array input to methods (Anna Henningsen) #11608
  • [07c7f198db] - (SEMVER-MINOR) stream: add final method (Calvin Metcalf) #12828
  • [11918c4aed] - (SEMVER-MINOR) stream: fix highWaterMark integer overflow (Tobias Nießen) #12593
  • [c56d6046ec] - (SEMVER-MINOR) test: add AsyncResource addon test (Anna Henningsen) #13142
  • [e3e56f1d71] - (SEMVER-MINOR) test: adding tests for initHooks API (Thorsten Lorenz) #12892
  • [732620cfe9] - (SEMVER-MINOR) test: remove unneeded tests (Trevor Norris) #12892
  • [e965ed16c1] - (SEMVER-MINOR) test: add test for promisify customPromisifyArgs (Gil Tayar) #12442
  • [3ea2301e38] - (SEMVER-MINOR) test: add a bunch of tests from bluebird (Madara Uchiha) #12442
  • [dca08152cb] - (SEMVER-MINOR) test: introduce common.crashOnUnhandledRejection (Anna Henningsen) #12489
  • [e7c51454b0] - (SEMVER-MINOR) timers: add promisify support (Anna Henningsen) #12442
  • [e600fbe576] - (SEMVER-MINOR) tls: accept lookup option for tls.connect() (Fedor Indutny) #12839
  • [c3efe72669] - (SEMVER-MINOR) tls: support Uint8Arrays for protocol list buffers (Anna Henningsen) #11984
  • [29f758731f] - (SEMVER-MINOR) tools: add MDN link for Iterable (Timothy Gu) #11060
  • [4b9d84df51] - (SEMVER-MINOR) tty_wrap: throw when uv_tty_init() returns error (Trevor Norris) #12892
  • [cc48f21c83] - (SEMVER-MINOR) url: extend URLSearchParams constructor (Timothy Gu) #11060
  • [99da8e8e02] - (SEMVER-MINOR) util: add util.promisify() (Anna Henningsen) #12442
  • [059f296050] - (SEMVER-MINOR) util: add internal bindings for promise handling (Anna Henningsen) #12442
  • [1fde98bb4f] - (SEMVER-MINOR) v8: expose new V8 serialization API (Anna Henningsen) #11048
  • [70beef97bd] - (SEMVER-MINOR) v8: add cachedDataVersionTag (Andres Suarez) #11515

Semver-patch commits