Node.js v5.8.0 Release Brief
This week’s stable release fixes some regressions, adds some minor features, and includes a little perf improvement.
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 31 commits:
- 6 were documentation-only commits.
- 5 only modify tests and 5 only affect internal tooling.
- There was one dependency update: npm @ 3.7.3.
5 commits were tagged as semver-minor
, adding new functionality and justifying the jump to v5.8.0:
- [
a3017992e4
] - (SEMVER-MINOR) child_process: addkeepOpen
option tosend()
(cjihrig) #5283 - [
6d4887ccc2
] - (SEMVER-MINOR) child_process: support options insend()
(cjihrig) #5283 - [
9db827c7aa
] - (SEMVER-MINOR) constants: defineENGINE_METHOD_RSA
(Sam Roberts) #5463 - [
b54a26fa61
] - (SEMVER-MINOR) doc: correct name of engine methods (Sam Roberts) #5463 - [
e572e421b4
] - (SEMVER-MINOR) repl: accept no arguments tostart()
(cjihrig) #5388
The remaining significant commits are as follows:
- [
12ca84fc7f
] - benchmark: addutil.format()
benchmark (Evan Lucas) #5360 - [
b955d02266
] - benchmark: fix lint errors (Rich Trott) #5517 - [
2abf866b6e
] - build: update Node.js logo on Win installer (Robert Jefe Lindstaedt) #5531 - [
86900f8f2b
] - build: correctly detect clang version (Stefan Budeanu) #5553 - [
67e9f65958
] - dgram: default send address to127.0.0.1
or::1
(Matteo Collina) #5493 - [
f3971f5817
] - path: fixnormalize()
for absolutes (Evan Lucas) #5589 - [
5e6d706758
] - src,http: fix uncaughtException miss in http (Trevor Norris) #5591 - [
971edde0cb
] - util: improveformat()
performance further (Brian White) #5360 - [
c32d460747
] - util: improveutil.format()
performance (Evan Lucas) #5360
Notable Changes
- child_process:
send()
now accepts an options parameter (cjihrig) #5283.- Currently the only option is
keepOpen
, which keeps the underlying socket open after the message is sent.
- Currently the only option is
- constants:
ENGINE_METHOD_RSA
is now correctly exposed (Sam Roberts) #5463. - Fixed two regressions which originated in v5.7.0:
- repl:
start()
no longer requires an options parameter (cjihrig) #5388. - util: Improved
format()
performance 50-300% (Evan Lucas) #5360.
Git Diffstats
(Showing the delta between v5.7.1 and v5.8.0, ignoring deps/npm
.)
Without deps, docs, benchmarks, or tests:
.eslintrc | 16 ++++----
Makefile | 7 +++-
configure | 14 +++++--
lib/dgram.js | 11 +++++-
lib/internal/child_process.js | 63 +++++++++++++++++++++----------
lib/path.js | 4 +-
lib/repl.js | 2 -
lib/util.js | 84 +++++++++++++++++++++++++++++------------
src/async-wrap.cc | 6 +--
src/node.cc | 6 ++-
src/node_constants.cc | 4 ++
src/node_version.h | 4 +-
tools/cpplint.py | 3 --
tools/test.py | 10 +++--
vcbuild.bat | 3 +-
15 files changed, 161 insertions(+), 76 deletions(-)
Deps only:
deps/openssl/openssl.gyp | 1 +
deps/openssl/openssl.gypi | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
Docs only:
CHANGELOG.md | 47 ++++++++++++++++
doc/api/child_process.markdown | 11 +++-
doc/api/crypto.markdown | 4 +-
doc/api/dgram.markdown | 5 +-
doc/api/documentation.markdown | 7 +++
doc/api/fs.markdown | 2 +-
doc/api/process.markdown | 71 +++++++++++++-----------
doc/api/repl.markdown | 2 +-
doc/api/v8.markdown | 2 +-
doc/api_assets/style.css | 13 +++--
doc/full-white-stripe.jpg | Bin 3636 -> 9483 bytes
doc/thin-white-stripe.jpg | Bin 3099 -> 6525 bytes
test/README.md | 117 +++++++++++++++++++++++++++++++++++++++
13 files changed, 232 insertions(+), 49 deletions(-)
Tests & Benchmarks only:
benchmark/arrays/var-int.js | 4 +-
benchmark/arrays/zero-float.js | 4 +-
benchmark/arrays/zero-int.js | 4 +-
benchmark/buffers/buffer-base64-decode.js | 10 ++--
benchmark/buffers/buffer-creation.js | 2 +-
benchmark/buffers/buffer-indexof.js | 5 +-
benchmark/compare.js | 25 ++++++++--
benchmark/domain/domain-fn-args.js | 4 +-
benchmark/fs/bench-readdir.js | 3 +-
benchmark/fs/bench-readdirSync.js | 3 +-
benchmark/http_simple_auto.js | 4 +-
benchmark/http_simple_cluster.js | 7 +--
benchmark/idle_clients.js | 1 -
benchmark/misc/freelist.js | 2 +-
benchmark/misc/v8-bench.js | 2 +-
benchmark/module/module-loader.js | 10 +++-
benchmark/tls/throughput.js | 6 ++-
benchmark/util/format.js | 40 ++++++++++++++++
test/debugger/test-debug-break-on-uncaught.js | 5 --
.../known_issues/test-vm-function-redefinition.js | 11 +++++
test/known_issues/testcfg.py | 6 +++
test/parallel/parallel.status | 1 -
.../parallel/test-child-process-send-keep-open.js | 52 +++++++++++++++++++++
.../test-child-process-send-type-error.js | 25 ++++++++++
test/parallel/test-dgram-send-default-host.js | 12 -----
.../parallel/test-dgram-udp6-send-default-host.js | 36 ++++++++++++++
.../parallel/test-http-catch-uncaughtexception.js | 23 +++++++++
test/parallel/test-memory-usage.js | 4 +-
test/parallel/test-npm-install.js | 40 ++++++++++++++++
test/parallel/test-path.js | 3 ++
test/parallel/test-process-getactivehandles.js | 17 ++++---
test/parallel/test-repl-options.js | 14 ++++++
test/parallel/test-util-inspect.js | 2 +-
33 files changed, 329 insertions(+), 58 deletions(-)
Most active commit
Of the 31 commits, a301799
was the most active:
(Excluding docs, npm, eslint, and tests.)
commit a3017992e42dfccdeb5d3c94d27656b99c3ceaeb
Author: cjihrig <cjihrig@gmail.com>
Date: Tue Feb 16 22:18:10 2016 -0500
child_process: add keepOpen option to send()
This option allows an instance of net.Socket to be kept open in
the sending process.
Fixes: https://github.com/nodejs/node/issues/4271
PR-URL: https://github.com/nodejs/node/pull/5283
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
doc/api/child_process.markdown | 7 ++-
lib/internal/child_process.js | 14 ++++--
.../parallel/test-child-process-send-keep-open.js | 52 +++++++++++++++++++++
3 files changed, 67 insertions(+), 6 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.