Skip to content

Releases: nodejs/node

2018-06-12, Version 6.14.3 'Boron' (LTS), @evanlucas

13 Jun 00:23
v6.14.3
Compare
Choose a tag to compare

Notable Changes

  • buffer (CVE-2018-7167): Fixes Denial of Service vulnerability where calling Buffer.fill() could hang

Commits

2018-06-06, Version 10.4.0 (Current), @MylesBorins

06 Jun 14:38
Compare
Choose a tag to compare

Notable Changes

  • deps:
    • update V8 to 6.7.288.43 (Michaël Zasso) #19989
  • stream:
    • ensure Stream.pipeline re-throws errors without callback (Blaine Bublitz) #20437

Commits

  • [9ada68b186] - benchmark: refactor benchmark/assert/throws.js (Rich Trott) #21030
  • [b8470b929f] - benchmark: refactor deepequal-typedarrays (Rich Trott) #21030
  • [686587ba1a] - benchmark: refactor deepequal-set (Rich Trott) #21030
  • [56c67595db] - benchmark: refactor prims-and-objs-big-loop (Rich Trott) #21030
  • [6fbb00e887] - benchmark: refactor prims-and-objs-big-array-set (Rich Trott) #21030
  • [4d714421e9] - benchmark: refactor deepequal-object (Rich Trott) #21030
  • [9b0fc59723] - benchmark: refactor deepequal-map (Rich Trott) #21030
  • [90d86586d2] - benchmark: refactor deepequal-buffer (Rich Trott) #21030
  • [be249d9eb5] - benchmark: fix "comparisons"' typo (Yuta Hiroto) #21085
  • [bad3c92124] - (SEMVER-MINOR) build: reset embedder string to "-node.0" (Michaël Zasso) #19989
  • [35d6661973] - deps: cherry-pick 6989b3f6d7 from V8 upstream (Timothy Gu) #20826
  • [4e788dc2f5] - (SEMVER-MINOR) deps: backport 91ddb65d from upstream V8 (Maya Lekova) #19989
  • [fb2686148e] - deps: cherry-pick ff0a9793334 from upstream V8 (Anna Henningsen) #20719
  • [40c8bbecec] - deps: cherry-pick 23652c5f from upstream V8 (Eugene Ostroukhov) #20608
  • [a7aff77a97] - (SEMVER-MINOR) deps: cherry-pick 39d546a from upstream V8 (Gus Caplan) #20016
  • [fed1d18054] - (SEMVER-MINOR) deps: update v8.gyp (Michaël Zasso) #19989
  • [da8ad4aba9] - (SEMVER-MINOR) deps: update V8 to 6.7.288.43 (Michaël Zasso) #19989
  • [2c671ab2fd] - doc: fix typo in addons.md (Rich Trott) #21137
  • [e2a792866c] - doc: add offboarding doc (Rich Trott) #21103
  • [15aa3c1046] - doc: add notable-change to onboarding.md exercise (Rich Trott) #21040
  • [29c35bd0de] - doc: remove link prediction from STYLE_GUIDE.md (Rich Trott) #21031
  • [261ef1d242] - doc: remove POST_STATUS_TO_PR from onboarding.md (Rich Trott) #21042
  • [2edf1728a0] - doc: fix typos on e.g. abbreviations (Rich Trott) #21045
  • [b1f0907416] - doc: use "is" rather than "has been" (Rich Trott) #21043
  • [f5bf2c8d08] - doc: move upstream information to onboarding doc (Rich Trott) #21029
  • [09aec436cb] - doc: remove vestigial onboarding section (Rich Trott) #21028
  • [fd201e0d32] - doc: add guides on writing tests involving promises (Joyee Cheung) #20988
  • [4cd44203de] - doc: remove invalid vm.Script arguments (Simen Bekkhus) #20984
  • [4012e0550a] - doc: fix typo in n-api.md (ohbarye) #21060
  • [bb8d341714] - doc: better font stack for monospace in docs (Roman Reiss) #21036
  • [1b8e8e90af] - doc: make minor improvements to fs.realpath() docs (Rich Trott) #20953
  • [c2ae93db63] - doc: add missing link for 10.3.0 changelog (Myles Borins) #21017
  • [8dc7c883a7] - doc: improve note on zlib APIs threadpool usage (Luigi Pinca) #20380
  • [ab43581f15] - doc: make constants enumeration consistent (Diego Rodríguez Baquero) #20991
  • [44ef458d9c] - fs: ensure options.flag defaults to 'r' in readFile (Unknown) #20268
  • [341b2c21f3] - http2: fix premature destroy (Anatoli Papirovski) #21051
  • [d4787cfd61] - http2: force through RST_STREAM in destroy (Anatoli Papirovski) #21016
  • [2a9912c0df] - http2: delay closing stream (Anatoli Papirovski) #20997
  • [182c73bf7f] - http2: switch to new runtime-controlled debugging system (Anna Henningsen) #20987
  • [1d22254c4d] - https: removed extra _http_server require (ErnestoSalazar) #21069
  • [1c211ec901] - inspector: code cleanup (Eugene Ostroukhov) #21070
  • [a30bf55e69] - lib: use focused ESLint disabling in util.js (Rich Trott) #21041
  • [f2c9e5af09] - lib: introduce internal/validators (Michaël Zasso) #21149
  • [46d1025add] - net: use object destructuring (starkewang) #20959
  • [afc811cc1c] - src: break out of timers loop if !can\_call\_into\_js() (Anna Henningsen) #20884
  • [8862f0a613] - src: store pointer to Environment on DestroyParam (Anatoli Papirovski) #21099
  • [66f4c7bdec] - src: fix typo string_search.h comment (Masashi Hirano) #21115
  • [f79096a3f2] - src: do not cache NumberOfHeapSpaces() globally (Anna Henningsen) #20971
  • [7c0c61bde1] - (SEMVER-MINOR) src: update postmortem constant name (cjihrig) #19989
  • [2d3137c5a9] - (SEMVER-MINOR) src: fix GetCpuProfiler() deprecation warning (Michaël Zasso) #19989
  • [af62a16ff6] - (SEMVER-MINOR) Revert "src: fix GetCpuProfiler() deprecation warning" (Michaël Zasso) #19989
  • [af06581b84] - src: restore stdio on program exit (Ben Noordhuis) [#205...
Read more

2018-05-29, Version 10.3.0 (Current), @MylesBorins

06 Jun 08:36
Compare
Choose a tag to compare

Notable Changes

  • deps:
    • upgrade npm to 6.1.0 (Rebecca Turner) #20190
  • fs:
    • fix reads with pos > 4GB (Mathias Buus) #21003
  • net:
    • new option to allow IPC servers to be readable and writable by all users (Bartosz Sosnowski) #19472
  • stream:
    • fix removeAllListeners() for Stream.Readable to work as expected when no arguments are passed (Kael Zhang) #20924
  • Added new collaborators

Commits

  • [ea702e2812] - assert: handle undefined filename in getErrMessage (Tim Seckinger) #20848
  • [d7fed22511] - build,win: disable DLL-interface warnings (Bert Belder) #20958
  • [efc7f91354] - deps: cherry-pick 6989b3f6d7 from V8 upstream (Timothy Gu) #20826
  • [d0cdcb61fe] - (SEMVER-MINOR) deps: upgrade npm to 6.1.0 (Rebecca Turner) #20190
  • [ce13797dca] - doc: fix doc for napi_get_typedarray_info (Michael Dawson) #20747
  • [babc9da6f9] - doc: add jdalton to collaborators (John-David Dalton) #20968
  • [f0704f2407] - doc: mark Node 4 as EOL in changelog (Teddy Katz) #20926
  • [87ad9318bb] - doc: update the notable changes (Ruben Bridgewater) #20316
  • [c036cda1f5] - doc: fix outdated link FSEvents (amitbend) #20949
  • [1f3eb1cc1e] - doc: fix filehandle.truncate() sample codes (Masashi Hirano) #20913
  • [819bba6d2b] - doc: removed LTS label from v4 in doc version picker (Chris Young) #20904
  • [be2a467395] - doc: fix incorrect fs.readFileSync example output (Teddy Katz) #20902
  • [bfe6dc369d] - fs: fix reads with pos > 4GB (Mathias Buus) #21003
  • [c2c3b6f434] - lib: use object destructuring for ContextifyScript (Daniel Bevenius) #20934
  • [d2bcd55fb5] - lib: remove unnecessary string interpolation (Daniel Bevenius) #20890
  • [099c6b6c5d] - meta: add link to unofficial discord (Gus Caplan) #20508
  • [45adec2616] - module: name anonymous function for debugging (Nicholas Dangles) #20811
  • [ba30d149ea] - n-api: throw when entry point is null (Gabriel Schulhof) #20779
  • [b242248188] - (SEMVER-MINOR) net: allow IPC servers be accessible by all (Bartosz Sosnowski) #19472
  • [ed9e964357] - net: remove unnecessary variables (chainhelen) #20864
  • [5f9c01b646] - Revert "repl: add friendly tips about how to exit repl" (cjihrig) #20972
  • [902120a927] - src: add CHECK_NULL/CHECK_NOT_NULL macros (Tobias Nießen) #20914
  • [5e69e1a51e] - src: add CHECK_IMPLIES macro (Tobias Nießen) #20914
  • [418739c021] - src: fix MallocedBuffer move assignment operator (Anna Henningsen) #20883
  • [b4519cac20] - src: move DeleteFnPtr into util.h (Anna Henningsen) #20885
  • [b0023d7bc9] - src,doc: add doc of --prof flag to help command (ohbarye) #20845
  • [8f52c3fb6b] - stream: fix removeAllListeners() for Stream.Readable (Kael Zhang) #20924
  • [011235768c] - test: improve assert test hygiene (Rich Trott) #20861
  • [88f9a399d6] - test: isolate unusual assert test in its own file (Rich Trott) #20861
  • [460a5025d0] - test: fix test failure on aix (Ruben Bridgewater) #20940
  • [d09bec8a04] - test: improve error message in async-wrap test (Rich Trott) #20948
  • [460add98fb] - test: reduce runtime (Ruben Bridgewater) #20688
  • [82afb4cf7d] - test: remove message argument from strictEqual() (sagirk) #20912
  • [40e57885d4] - test: remove string literal from strictEqual (AbhimanyuVashisht) #20920
  • [9bbab91479] - test: include port in assertion message (nam) #20889
  • [554ad478d4] - test: improve coverage for readline.Interface (Masashi Hirano) #20704
  • [443d60afcc] - test: use log only in test-child-process-fork-net (Rich Trott) #20873
  • [ed84b7d42f] - test: changed assert message from string literal to template literal (CoreyGMartin) #20870
  • [b62cbe106c] - tools: update tools/doc/package-lock.json (Rich Trott) #20970
  • [46e7cec7a5] - tools: fix sorting in doc/type-parser.js (Vse Mozhet Byt) #20976

2018-05-24, Version 10.2.1 (Current), @MylesBorins

06 Jun 08:35
Compare
Choose a tag to compare

Notable Changes

This is a follow up release to fix two regressions that were introduced in v10.2.0.

Commits

  • [2a9c83321b] - http: fix res emit close before user finish (Robert Nagy) #20941
  • [0b1ba20fc0] - src: re-integrate headers into node.h (Anna Henningsen) #20939
  • [52f21fbfbc] - test: mark test-zlib.zlib-binding.deflate as flaky (Matheus Marchini) #20935

2018-05-23, Version 10.2.0 (Current), @MylesBorins

24 May 15:30
Compare
Choose a tag to compare

Notable Changes

  • addons:
    • Fixed a memory leak for users of AsyncResource and N-API. (Michael Dawson) #20668
  • assert:
    • The error parameter of assert.throws() can be an object containing regular expressions now. (Ruben Bridgewater) #20485
  • crypto:
    • The authTagLength option has been made more flexible. (Tobias Nießen) #20235, #20039
  • esm:
    • Builtin modules (e.g. fs) now provide named exports in ES6 modules. (Gus Caplan) #20403
  • http:
    • Handling of close and aborted events has been made more consistent. (Robert Nagy) #20075, #20611
  • module:
    • add --preserve-symlinks-main (David Goldstein) #19911
  • timers:
    • timeout.refresh() has been added to the public API. (Jeremiah Senkpiel) #20298
  • Embedder support:
    • Functions for creating V8 Isolate and Context objects with Node.js-specific behaviour have been added to the API. (Allen Yonghuang Wang) #20639
    • Node.js Environments clean up resources before exiting now. (Anna Henningsen) #19377
    • Support for multi-threaded embedding has been improved. (Anna Henningsen) #20542, #20539, #20541

Commits

  • [8f8a0e3483] - assert: fix wrong message indentation (Ruben Bridgewater) #20791
  • [338e663860] - assert: fix EOL issue in messages on Windows (Ruben Bridgewater) #20754
  • [1160d61cd9] - assert: support symbols as assertion messages (cjihrig) #20693
  • [bb857d9e71] - assert: make sure throws is able to handle primitives (Ruben Bridgewater) #20482
  • [5d06c1e1ae] - assert: move AssertionError into own file (Ruben Bridgewater) #20486
  • [a5ee31bba1] - (SEMVER-MINOR) assert: accept regular expressions to validate (Ruben Bridgewater) #20485
  • [74db9f43ba] - assert,util: lazy load comparison functions (Ruben Bridgewater) #20567
  • [9feca3ea32] - async_hooks: lazy loading for startup performance (Ruben Bridgewater) #20567
  • [e61337d36d] - async_wrap: fix memory leak in AsyncResource (Michael Dawson) #20668
  • [56de3bfb70] - benchmark: add tls benchmark for legacy SecurePair (Alex Fernández) #20344
  • [3b516177c8] - build: use nyc's merge command (Benjamin Coe) #20760
  • [aaf1df59be] - build: export openssl TLSv1 methods again (Ben Noordhuis) #20712
  • [7a980086c8] - build: always use BUILDTYPE binary to run JS tests (Joyee Cheung) #20362
  • [47103493f7] - child_process: fix exec set stdout.setEncoding (killagu) #18976
  • [4a872b98a0] - cluster: remove obsolete array allocation (Ruben Bridgewater) #20567
  • [a41c44a307] - codeowners: add rule for *.gypi files (Ben Noordhuis) #20740
  • [b701f5af18] - codeowners: fix typo in v8-inspector team name (Ben Noordhuis) #20740
  • [3fd67249df] - console: .table fall back to logging for function too (ohbarye) #20681
  • [bc6dbc3bfc] - console: lazy load cli (Ruben Bridgewater) #20567
  • [cecec46204] - crypto: add test case for AES key wrapping (Yihong Wang) #20587
  • [34d67085d5] - crypto: allocate more memory for cipher.update() (Yihong Wang) #20370
  • [2b2ccae390] - (SEMVER-MINOR) crypto: support authTagLength in GCM encryption (Tobias Nießen) #20235
  • [1e5de6fe97] - crypto: add using directives for v8::Int32, Uint32 (Tobias Nießen) #20225
  • [f5e7010eb9] - crypto: use kNoAuthTagLength in InitAuthenticated (Tobias Nießen) #20225
  • [5ea1a58db9] - crypto: remove rsaPrivate and rename rsaPublic (Daniel Bevenius) #20164
  • [503844eb73] - crypto: add addCipherPrototypeFunctions function (Daniel Bevenius) #20164
  • [72029b8cc7] - crypto: add createCipher/WithIV functions (Daniel Bevenius) #20164
  • [bdd2856152] - (SEMVER-MINOR) crypto: allow to restrict valid GCM tag length (Tobias Nießen) #20039
  • [e56716e396] - deps: cherry-pick ff0a9793334 from upstream V8 (Anna Henningsen) #20719
  • [8e058d5f94] - deps: patch V8 to 6.6.346.32 (Myles Borins) #20748
  • [cb94601cf2] - deps: cherry-pick 23652c5f from upstream V8 (Eugene Ostroukhov) #20608
  • [91e60b0d33] - deps: V8: cherry-pick b49206d from upstream (Ali Ijaz Sheikh) #20727
  • [6ce589f7f4] - deps: patch V8 to 6.6.346.31 (Myles Borins) #20603
  • [f69a823f8e] - deps: upgrade to libuv 1.20.3 (cjihrig) #20585
  • [60eab9100f] - dns: lazy loaded (Ruben Bridgewater) #20567
  • [c1fe9b29b1] - doc: add note about autocrlf required for tests (Bartosz Sosnowski) #20752
  • [8a17a259f3] - doc: fix some nits in hardcoded manpage links (Vse Mozhet Byt) #20854
  • [8317a468db] - doc: fix fs.promises sample codes (Keita Akutsu) #20838
  • [37b9fe1e68] - doc: fix typo in http2.md (Keita Akutsu) #20843
  • [88aee8a65c] - doc: improve _Deprecation_ definition (Rich Trott) #20788
  • [7b1c035218] - doc: describe using multiple link-module on win (Bartosz Sosnowski) #20774
  • [9a8cdc93ff] - doc: fix typo in COLLABORATOR_GUIDE.md (Vse Mozhet Byt) #20742
  • [657f8cbe41] - doc: fix linter warnings and typos in manpage (Alhadis) #20741
  • [165971d35b] - doc: sort references in A...
Read more

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

24 May 15:29
Compare
Choose a tag to compare

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

Read more

2018-05-08, Version 10.1.0 (Current), @MylesBorins

24 May 15:29
Compare
Choose a tag to compare

Notable Changes

  • console:
    • make console.table() use colored inspect (TSUYUSATO Kitsune) #20510
  • fs:
    • move fs/promises to fs.promises (cjihrig) #20504
  • http:
    • added aborted property to request (Robert Nagy) #20094
  • n-api:
    • initialize a module via a special symbol (Gabriel Schulhof) #20161
  • src:
    • add public API to expose the main V8 Platform (Allen Yonghuang Wang) #20447

Commits

Read more

2018-04-30, Version 6.14.2 'Boron' (LTS), @MylesBorins

24 May 15:28
Compare
Choose a tag to compare

Notable Changes

  • n-api:
    • n-api has been backported to v6.x. It is being landed as an experimental interface,
      and as such is landing in a Semver-Patch release. (Gabriel Schulhof) #19447

Commits

Read more

2018-04-24, Version 10.0.0 (Current), @jasnell

24 May 15:27
v10.0.0
Compare
Choose a tag to compare

Notable Changes

  • Assert
    • Calling assert.fail() with more than one argument is deprecated. [70dcacd710]
    • Calling assert.ok() with no arguments will now throw. [3cd7977a42]
    • Calling assert.ifError() will now throw with any argument other than undefined or null. Previously the method would throw with any truthy value. [e65a6e81ef]
    • The assert.rejects() and assert.doesNotReject() methods have been added for working with async functions. [599337f43e]
  • Async_hooks
    • Older experimental async_hooks APIs have been removed. [1cc6b993b9]
  • Buffer
    • Uses of new Buffer() and Buffer() outside of the node_modules directory will now emit a runtime deprecation warning. [9d4ab90117]
    • Buffer.isEncoding() now returns undefined for falsy values, including an empty string. [452eed956e]
    • Buffer.fill() will throw if an attempt is made to fill with an empty Buffer. [1e802539b2]
  • Child Process
  • Console
    • The console.table() method has been added. [97ace04492]
  • Crypto
    • The crypto.createCipher() and crypto.createDecipher() methods have been deprecated. Please use crypto.createCipheriv() and crypto.createDecipheriv() instead. [81f88e30dd]
    • The decipher.finaltol() method has been deprecated. [19f3927d92]
    • The crypto.DEFAULT_ENCODING property has been deprecated. [6035beea93]
    • The ECDH.convertKey() method has been added. [f2e02883e7]
    • The crypto.fips property has been deprecated. [6e7992e8b8]
  • Dependencies
  • EventEmitter
    • The EventEmitter.prototype.off() method has been added as an alias for EventEmitter.prototype.removeListener(). [3bb6f07d52]
  • File System
    • The fs/promises API provides experimental promisified versions of the fs functions. [329fc78e49]
    • Invalid path errors are now thrown synchronously. [d8f73385e2]
    • The fs.readFile() method now partitions reads to avoid thread pool exhaustion. [67a4ce1c6e]
  • HTTP
    • Processing of HTTP Status codes 100, 102-199 has been improved. [baf8495078]
    • Multi-byte characters in URL paths are now forbidden. [b961d9fd83]
  • N-API
    • The n-api is no longer experimental. [cd7d7b15c1]
  • Net
    • The 'close' event will be emitted after 'end'. [9b7a6914a7]
  • Perf_hooks
    • The PerformanceObserver class is now an AsyncResource and can be monitored using async_hooks. [009e41826f]
    • Trace events are now emitted for performance events. [9e509b622b]
    • The performance API has been simplified. [2ec6995555]
    • Performance milestone marks will be emitted as trace events. [96cb4fb795]
  • Process
    • Using non-string values for process.env is deprecated. [5826fe4e79]
    • The process.assert() method is deprecated. [703e37cf3f]
  • REPL
    • REPL now experimentally supports top-level await when using the --experimental-repl-await flag. [eeab7bc068]
    • The previously deprecated "magic mode" has been removed. [4893f70d12]
    • The previously deprecated NODE_REPL_HISTORY_FILE environment variable has been removed. [60c9ad7979]
    • Proxy objects are shown as Proxy objects when inspected. [90a43906ab]
  • Streams
    • The 'readable' event is now always deferred with nextTick. [1e0f3315c7]
    • A new pipeline() method has been provided for building end-to-data stream pipelines. [a5cf3feaf1]
    • Experimental support for async for-await has been added to stream.Readable. [61b4d60c5d]
  • Timers
    • The enroll() and unenroll() methods have been deprecated. [68783ae0b8]
  • TLS
    • The tls.convertNPNProtocols() method has been deprecated. [9204a0db6e]
    • Support for NPN (next protocol negotiation) has been dropped. [5bfbe5ceae]
    • The ecdhCurve default is now 'auto'. [af78840b19]
  • Trace Events
    • A new trace_events top-level module allows trace event categories to be enabled/disabled at runtime. [da5d818a54]
  • URL
    • The WHATWG URL API is now a global. [312414662b]
  • Util
    • util.types.is[…] type checks have been added. [b20af8088a]
    • Support for bigint formatting has been added to util.inspect(). [39dc947409]

Deprecations:

The following APIs have been deprecated in Node.js 10.0.0

  • Passing more than one argument to assert.fail() will emit a runtime deprecation warning. [70dcacd710]
  • Previously deprecated legacy async_hooks APIs have reached end-of-life and have been removed. [1cc6b993b9]
  • Using require() to access several of Node.js' own internal dependencies will emit a runtime deprecation. [0e10717e43]
  • The crypto.createCipher() and crypto.createDecipher() methods have been deprecated in documentation.[81f88e30dd]
  • Using the Decipher.finaltol() method will emit a runtime deprecation warning. [19f3927d92]
  • Using the crypto.DEFAULT_ENCODING property will emit a runtime deprecation warning. [6035beea93]
  • Use by native addons of the MakeCallback() variant that passes a Domain will emit a runtime deprecation warning. [14bc3e22f3], [efb32592e1]
  • Previously deprecated internal getters/setters on net.Server has reached end-of-life and have been removed. [3701b02309]
  • Use of non-string values for process.env has been deprecated in documentation. [5826fe4e79]
  • Use of process.assert() will emit a runtime deprecation warning. [703e37cf3f]
  • Previously deprecated NODE_REPL_HISTORY_FILE environment variable has reached end-of-life and has been removed. [60c9ad7979]
  • Use of the timers.enroll() and timers.unenroll() methods will emit a runtime deprecation warning. [68783ae0b8]
  • Use of the tls.convertNPNProtocols() method will emit a runtime deprecation warning. Support for NPN has been removed from Node.js. [9204a0db6e]
  • The crypto.fips property has been deprecated in documentation. [6e7992e8b8]

Commits

Semver-major

  • [c9bb91af33] - (SEMVER-MAJOR) assert: remove errorDiff property (Ruben Bridgewater) #19467
  • [eb427caadd] - (SEMVER-MAJOR) assert: improve default error messages (Ruben Bridgewater) #19467
  • [1964978fb8] - (SEMVER-MAJOR) assert: detect faulty throws usage (Ruben Bridgewater) #19867
  • [[9743e756e2](https://github.com/nodejs/node/commit...
Read more

2018-04-05, Version 9.11.1 (Current), @MylesBorins

05 Apr 07:17
Compare
Choose a tag to compare

Notable Changes

No additional commits.

An infrastructure issue caused a non-functioning msi installer for x64 to be promoted.
The patch release is to ensure that all binaries and installers work as expected.