Node.js v5.5.0 Release Brief
This week’s stable release is 👏 Evan Lucas’s 👏 first Node release as part of the Node.js release team. 🎉
As with all releases within major version lines, minor and patch upgrades should be drop-in replacements for previous versions.
Overview
Of a total of 59 commits:
- 14 were documentation-only commits.
- 11 only modify tests and 7 only affect internal tooling.
- The
LICENSE
file has seen a significant update, and is now compiled from the licenses of Node’s dependencies via a script. The licensing itself remains the same.
5 commits were tagged as semver-minor
, adding new functionality and justifying the jump to v5.5.0:
- [
a8330f73ab
] - (SEMVER-MINOR) events: make sure console functions exist (Dave) #4479 - [
28793958af
] - (SEMVER-MINOR) fs: add autoClose option to fs.createWriteStream (Saquib) #3679 - [
c1712947b2
] - (SEMVER-MINOR) http: improves expect header handling (Daniel Sellers) #4501 - [
848b04bf78
] - (SEMVER-MINOR) node: allow preload modules with -i (Evan Lucas) #4696 - [
4254508fb1
] - (SEMVER-MINOR) v8,src: expose statistics about heap spaces (Ben Ripkens) #4463
The remaining significant commits are as follows:
- [
14061c6498
] - buffer: remove unnecessary TODO comments (Peter Geiss) #4719 - [
f221a43f3e
] - buffer: make byteLength work with Buffer correctly (Jackson Tian) #4738 - [
fe5b71028d
] - build: add option to select VS version (julien.waechter) #4645 - [
cde06c6fec
] - build: fix and refactor VTune config in vcbuild.bat (Rod Vagg) #4192 - [
b03cc991aa
] - build: minor corrections in VTune configure text (Rod Vagg) #4192 - [
045dac7961
] - cluster: fix race condition setting suicide prop (Santiago Gimeno) #4349 - [
8bf5b33019
] - crypto: clear error stack in ECDH::Initialize (Fedor Indutny) #4689 - [
0d0a5ed816
] - debugger: remove variable redeclarations (Rich Trott) #4633 - [
67d2e2b0a7
] - dgram: prevent disabled optimization of bind() (Brian White) #4613 - [
b0b71d52c6
] - gitignore: never ignore debug module (Michaël Zasso) #2286 - [
88fcc8bd25
] - lib: fix style issues after eslint update (Michaël Zasso) nodejs/io.js#2286 - [
4e04063e75
] - lib: use arrow functions instead of bind (Minwoo Jung) #3622 - [
f0ee088f3b
] - lib,test: remove extra semicolons (Michaël Zasso) #2205 - [
eb2b8c637b
] - module: cache stat() results more aggressively (Ben Noordhuis) #4575 - [
d8f5bd4fe1
] - module: avoid ArgumentsAdaptorTrampoline frame (Ben Noordhuis) #4575 - [
c6ac464dbc
] - querystring: improve parse() performance (Brian White) #4675 - [
d533364a24
] - readline: Remove XXX and output debuglog (Kohei TAKATA) #4690 - [
8104d9d875
] - repl: make sure historyPath is trimmed (Evan Lucas) #4539 - [
a2c257a3ef
] - src: fix negative values in process.hrtime() (Ben Noordhuis) #4757 - [
3af206d6c1
] - src: return UV_EAI_NODATA on empty lookup (cjihrig) #4715 - [
6988d2edb3
] - src: don't check failure with ERR_peek_error() (Ben Noordhuis) #4731 - [
426ff820f5
] - stream: prevent object map change in ReadableState (Evan Lucas) #4761
Notable Changes
- events: Make sure console functions exist in the case of a circular dependency (Dave) #4479.
- fs: Added an
autoClose
option to fs.createWriteStream
(Saquib) #3679. - http: Improved expect header handling and added a new
'checkExpectation'
event (Daniel Sellers) #4501. - node: Preloading modules (
--require
) now works with the repl (Evan Lucas) #4696. - v8: Added a new
v8.getHeapSpaceStatistics()
API (Ben Ripkens) #4463. - Three minor performance improvements:
Git Diffstats
(Showing the delta between v5.4.1 and v5.5.0, ignoring deps/npm
.)
Without deps, docs, benchmarks, or tests:
.eslintignore | 2 +-
.eslintrc | 12 +-
.gitignore | 4 +-
LICENSE | 1330 ++++++++++++++++--------------
Makefile | 8 +-
configure | 8 +-
lib/_debugger.js | 142 ++--
lib/_http_server.js | 28 +-
lib/_stream_readable.js | 1 +
lib/_tls_legacy.js | 27 +-
lib/_tls_wrap.js | 30 +-
lib/assert.js | 10 +-
lib/buffer.js | 7 +-
lib/cluster.js | 60 +-
lib/dgram.js | 3 +-
lib/events.js | 17 +-
lib/fs.js | 39 +-
lib/internal/child_process.js | 14 +-
lib/internal/module.js | 11 +-
lib/internal/repl.js | 13 +-
lib/module.js | 28 +-
lib/net.js | 28 +-
lib/path.js | 68 +-
lib/querystring.js | 34 +-
lib/readline.js | 7 +-
lib/tls.js | 14 +-
lib/url.js | 42 +-
lib/v8.js | 33 +-
src/cares_wrap.cc | 4 +
src/env-inl.h | 12 +
src/env.h | 4 +
src/node.js | 8 +-
src/node_crypto.cc | 5 +-
src/node_v8.cc | 87 +-
src/node_version.h | 4 +-
tools/doc/addon-verify.js | 34 +-
tools/eslint-rules/required-modules.js | 6 +-
tools/license-builder.sh | 64 ++
vcbuild.bat | 20 +-
39 files changed, 1338 insertions(+), 930 deletions(-)
Docs only:
CHANGELOG.md | 84 ++++++++++++++++++++++++++++++++++++++++
README.md | 4 +-
doc/api/addons.markdown | 2 +-
doc/api/child_process.markdown | 39 ++++++++++---------
doc/api/fs.markdown | 17 +++++++-
doc/api/http.markdown | 15 ++++++-
doc/api/repl.markdown | 2 +-
doc/api/stream.markdown | 29 +++++++-------
doc/api/v8.markdown | 49 +++++++++++++++++++++++
doc/node.1 | 2 +-
doc/releases.md | 8 +++-
11 files changed, 210 insertions(+), 41 deletions(-)
Tests & Benchmarks only:
0.2% benchmark/querystring/
0.2% test/debugger/
0.7% test/fixtures/module-require-depth/
0.0% test/fixtures/
2.3% test/gc/
6.0% test/internet/
72.2% test/parallel/
2.2% test/pummel/
15.8% test/sequential/
0.0% test/
160 files changed, 1716 insertions(+), 1424 deletions(-)
Most active commit
Of the 59 commits, 4254508
was the most active:
(Excluding docs, npm, eslint, and tests.)
commit 4254508fb123e79df1f1c86b3c24cf710903b87e
Author: Ben Ripkens <bripkens.dev@gmail.com>
Date: Tue Dec 29 11:54:35 2015 +0100
v8,src: expose statistics about heap spaces
Provide means to inspect information about the separate heap spaces
via a callable API. This is helpful to analyze memory issues.
Fixes: https://github.com/nodejs/node/issues/2079
PR-URL: https://github.com/nodejs/node/pull/4463
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
doc/api/v8.markdown | 49 ++++++++++++++++++++++
lib/v8.js | 33 ++++++++++++++-
src/env-inl.h | 12 ++++++
src/env.h | 4 ++
src/node_v8.cc | 87 +++++++++++++++++++++++++++++++++++++++-
test/parallel/test-v8-stats.js | 19 +++++++++
6 files changed, 202 insertions(+), 2 deletions(-)
This is a regular and routine release for a Node.js stable release line. We will be sure to let you know when a release contains a critical update and a recommendation to upgrade. Of course, we'd love you to upgrade, but this release is not critical unless you are experiencing one of the issues identified and fixed above.