Node.js v4.4.5 Release Brief
This LTS release is the result of a buildup of regular maintenance commits.
Notably, some erroneous behavior of Buffer#lastIndexOf()
was fixed, and a vm
-related memory leak has been resolved.
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 75 commits:
- 16 were documentation-only commits.
- 22 only modify tests and 8 only affect internal tooling.
- One dependency was upgraded:
- 4 Patches were floated onto V8:
- [
3c50350
] - Fixed null pointer checks. (upstream 4e8736d) #6669 - [
a40730b
] - Backported IsValid changes from 4e8736d. #6669 - [
1383d00 as 433fb9a
] - #6179 - [
125ac66 as d1fca27
] - #6086
- [
The remaining significant commits are as follows:
- [
59a977dd22
] - assert: respectassert.doesNotThrow()
message. (Ilya Shaisultanov) #2407 - [
8b077faa82
] - buffer: fixUCS2
indexOf()
for odd buffer length (Anna Henningsen) #6511 - [
12a9699fcf
] - buffer: fix needle length misestimation forUCS2
(Anna Henningsen) #6511 - [
292b1b733e
] - build: fixmake tar-headers
for Linux (Gibson Fahnestock) #5978 - [
918d33ad4b
] - build: add script to create Android.mk
files (Robert Chiras) #5544 - [
4ad71847bc
] - build: add support forx86
architecture (Robert Chiras) #5544 - [
6ad85914b1
] - child_process: addnullptr
checks afteralloc
s (Anna Henningsen) #6256 - [
823f726f66
] - contextify: tie lifetimes of context & sandbox (Ali Ijaz Sheikh) #5800 - [
9ddb44ba61
] - contextify: cache sandbox and context in locals (Ali Ijaz Sheikh) #5392 - [
8ebdcd65b0
] - contextify: replace deprecatedSetWeak
usage (Ali Ijaz Sheikh) #5392 - [
9e6d8170f7
] - contextify: cleanup weak ref for sandbox (Ali Ijaz Sheikh) #5392 - [
b6fc15347d
] - contextify: cleanup weak ref for global proxy (Ali Ijaz Sheikh) #5392 - [
620a261240
] - http: disallow sending obviously invalid status codes (Brian White) #6291 - [
9a8b53124d
] - http: unref socket timer on parser execute (Fedor Indutny) #6286 - [
b28e44deb2
] - http: CorrectsIPv6
address inHost
header (Mihai Potra) #5314 - [
2fac15ba94
] - src: fixFindFirstCharacter
argument alignment (Anna Henningsen) #6511 - [
2942cff069
] - src: add missinginline
keywords (Ben Noordhuis) #6056 - [
e0eebf412e
] - src,tools: remove null sentinel from source array (Ben Noordhuis) #5418 - [
8f18414cd5
] - src,tools: drop null byte from built-in source code (Ben Noordhuis) #5418 - [
d7a3ea457b
] - src,tools: allowutf-8
in built-in js source code (Ben Noordhuis) #5418 - [
51c0808b55
] - stream: FixreadableState.awaitDrain
mechanism (Anna Henningsen) #6023 - [
48684af55f
] - zlib: fix use after null when calling.close()
(James Lal) #5982
Notable Changes
- buffer:
lastIndexOf()
no longer errors if called with a search term longer than the buffer. (Anna Henningsen) #6511 - contextify:
Context
objects are now properly garbage collected. (Ali Ijaz Sheikh) #6871- This solves a problem some individuals were experiencing with extreme memory growth.
- http: Invalid status codes can no longer be sent. (Brian White) #6291
- Now limited to 3 digit numbers between, and including,
100
-999
.
- Now limited to 3 digit numbers between, and including,
Git Diffstats
(Showing the delta between v4.4.4 and v4.4.5, ignoring deps/npm
.)
Without deps, docs, benchmarks, or tests:
.eslintignore | 1 -
.eslintrc | 1 +
Makefile | 7 ++-
android-configure | 47 +++++++++++---
common.gypi | 8 +++
lib/_http_client.js | 11 ++++
lib/_http_server.js | 5 ++
lib/_stream_readable.js | 6 +-
lib/assert.js | 9 ++-
lib/internal/v8_prof_processor.js | 1 +
lib/zlib.js | 4 +-
src/base-object.h | 4 +-
src/node_buffer.cc | 8 ++-
src/node_contextify.cc | 122 +++++++++++++++---------------------
src/node_javascript.cc | 24 ++++---
src/node_version.h | 2 +-
src/process_wrap.cc | 2 +
src/string_search.h | 3 +-
tools/create_android_makefiles | 46 ++++++++++++++
tools/install.py | 7 +--
tools/js2c.py | 33 ++--------
tools/test-npm.sh | 1 -
tools/test.py | 10 ++-
23 files changed, 216 insertions(+), 146 deletions(-)
Deps only:
deps/v8/src/compiler/code-generator.cc | 9 ++++++---
deps/v8/src/compiler/instruction-selector-impl.h | 2 +-
deps/v8/src/compiler/instruction-selector.cc | 3 ++-
deps/v8/src/compiler/instruction.cc | 12 ++++++------
deps/v8/src/compiler/instruction.h | 7 ++++---
deps/v8/src/debug-debugger.js | 2 +-
deps/v8/src/heap/incremental-marking.cc | 4 ++--
deps/v8/src/heap/spaces-inl.h | 2 +-
deps/v8/src/heap/spaces.cc | 2 +-
deps/v8/src/heap/spaces.h | 4 ++--
deps/v8/test/cctest/test-spaces.cc | 6 +++---
deps/v8/tools/tickprocessor.js | 5 ++++-
12 files changed, 33 insertions(+), 25 deletions(-)
Docs only:
BUILDING.md | 15 +++++++
CHANGELOG.md | 96 +++++++++++++++++++++++++++++++++++++++-
doc/api/child_process.markdown | 26 ++++++++++-
doc/api/console.markdown | 41 +++++++++++++++++
doc/api/crypto.markdown | 2 +-
doc/api/errors.markdown | 31 +++++--------
doc/api/fs.markdown | 11 +++++
doc/api/globals.markdown | 5 ++-
doc/api/http.markdown | 17 +++----
doc/api/https.markdown | 4 +-
doc/api/path.markdown | 47 +-------------------
doc/api/stream.markdown | 2 +-
doc/api/tls.markdown | 8 ++--
doc/api/vm.markdown | 4 +-
doc/api/zlib.markdown | 36 +++++++++++++++
doc/api_assets/style.css | 10 +----
test/README.md | 4 +-
17 files changed, 262 insertions(+), 97 deletions(-)
Tests & Benchmarks only:
8.2% test/addons/stringbytes-external-exceed-max/
0.0% test/message/
53.2% test/parallel/
0.4% test/pummel/
37.7% test/sequential/
0.1% test/
133 files changed, 2198 insertions(+), 1898 deletions(-)
Most active commit
Of the 75 commits, 620a261
was the most active:
(Excluding docs, npm, eslint, and tests.)
commit 620a261240a20ec1ba00cfc1cfcd9a7ead84c0bf
Author: Brian White <mscdex@mscdex.net>
Date: Tue Apr 19 20:49:45 2016 -0400
http: disallow sending obviously invalid status codes
PR-URL: https://github.com/nodejs/node/pull/6291
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
Reviewed-By: Сковорода Никита Андреевич <chalkerx@gmail.com>
Reviewed-By: Fedor Indutny <fedor.indutny@gmail.com>
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
lib/_http_server.js | 4 ++
test/parallel/test-http-response-statuscode.js | 91 ++++++++++++++++++++++++
2 files changed, 95 insertions(+)
This is a regular and routine release for a Node.js LTS 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.