Node v5.7.0 (Current)

Rod Vagg

Notable changes

  • buffer:
    • You can now supply an encoding argument when filling a Buffer Buffer#fill(string[, start[, end]][, encoding]), supplying an existing Buffer will also work with Buffer#fill(buffer[, start[, end]]). See the API documentation for details on how this works. (Trevor Norris) #4935
    • Buffer#indexOf() no longer requires a byteOffset argument if you also wish to specify an encoding: Buffer#indexOf(val[, byteOffset][, encoding]). (Trevor Norris) #4803
  • child_process: spawn() and spawnSync() now support a 'shell' option to allow for optional execution of the given command inside a shell. If set to true, cmd.exe will be used on Windows and /bin/sh elsewhere. A path to a custom shell can also be passed to override these defaults. On Windows, this option allows .bat. and .cmd files to be executed with spawn() and spawnSync(). (Colin Ihrig) #4598
  • http_parser: Update to http-parser 2.6.2 to fix an unintentionally strict limitation of allowable header characters (James M Snell) #5237
  • dgram: socket.send() now supports accepts an array of Buffers or Strings as the first argument. See the API docs for details on how this works. (Matteo Collina) #4374
  • http: Fix a bug where handling headers will mistakenly trigger an 'upgrade' event where the server is just advertising its protocols. This bug can prevent HTTP clients from communicating with HTTP/2 enabled servers. (Fedor Indutny) #4337
  • net: Added a listening Boolean property to net and http servers to indicate whether the server is listening for connections. (José Moreira) #4743
  • node: The C++ node::MakeCallback() API is now reentrant and calling it from inside another MakeCallback() call no longer causes the nextTick queue or Promises microtask queue to be processed out of order. (Trevor Norris) #4507
  • tls: Add a new tlsSocket.getProtocol() method to get the negotiated TLS protocol version of the current connection. (Brian White) #4995
  • vm: Introduce new 'produceCachedData' and 'cachedData' options to new vm.Script() to interact with V8's code cache. When a new vm.Script object is created with the 'produceCachedData' set to true a Buffer with V8's code cache data will be produced and stored in cachedData property of the returned object. This data in turn may be supplied back to another vm.Script() object with a 'cachedData' option if the supplied source is the same. Successfully executing a script from cached data can speed up instantiation time. See the API docs for details. (Fedor Indutny) #4777
  • performance: Improvements in:
    • process.nextTick() (Ruben Bridgewater) #5092
    • path module (Brian White) #5123
    • querystring module (Brian White) #5012
    • streams module when processing small chunks (Matteo Collina) #4354

Commits

  • [3a96fa0030] - async_wrap: add parent uid to init hook (Andreas Madsen) #4600
  • [4ef04c7c4c] - async_wrap: make uid the first argument in init (Andreas Madsen) #4600
  • [4afe801f90] - async_wrap: add uid to all asyncWrap hooks (Andreas Madsen) #4600
  • [edf8f8a7da] - benchmark: split path benchmarks (Brian White) #5123
  • [8d713d8d51] - benchmark: allow empty parameters (Brian White) #5123
  • [eb6d07327a] - (SEMVER-MINOR) buffer: add encoding parameter to fill() (Trevor Norris) #4935
  • [60d2048b6c] - (SEMVER-MINOR) buffer: properly retrieve binary length of needle (Trevor Norris) #4803
  • [4c67d74607] - (SEMVER-MINOR) buffer: allow encoding param to collapse (Trevor Norris) #4803
  • [5fa4117bfc] - build: add a help message and removed a TODO. (Ojas Shirekar) #5080
  • [09bfb865af] - build: remove redundant TODO in configure (Ojas Shirekar) #5080
  • [3dfc11c516] - build: remove Makefile.build (Ojas Shirekar) #5080
  • [fc78d3d6a7] - build: skip msi build if WiX is not found (Tsarevich Dmitry) #5220
  • [356acb39d7] - build: treat aarch64 as arm64 (Johan Bergström) #5191
  • [3b83d42b4a] - build: fix build when python path contains spaces (Felix Becker) #4841
  • [9e6ad2d8ff] - child_process: fix data loss with readable event (Brian White) #5036
  • [ecc797600f] - (SEMVER-MINOR) child_process: add shell option to spawn() (cjihrig) #4598
  • [efd6f68dce] - cluster: dont rely on this in fork (Igor Klopov) #5216
  • [df93d60caf] - console: apply null as this for util.format (Jackson Tian) #5222
  • [c397ba8fa3] - contextify: use offset/length from Uint8Array (Fedor Indutny) #4947
  • [3048ac0b57] - crypto: have fixed NodeBIOs return EOF (Adam Langley) #5105
  • [af074846f5] - debugger: remove unneeded callback check (Rich Trott) #5319
  • [7bac743f36] - debugger: assert test before accessing this.binding (Prince J Wesley) #5145
  • [18c94e5a8d] - deps: remove unnecessary files (Brian White) #5212
  • [967cf97bf0] - deps: cherry-pick 2e4da65 from v8's 4.8 upstream (Michael Dawson) #5293
  • [bbdf2684d5] - deps: update to http-parser 2.6.2 (James M Snell) #5237
  • [127dd6275a] - Revert "deps: sync with upstream c-ares/c-ares@4ef6817" (Ben Noordhuis) #5199
  • [35c3832994] - deps: sync with upstream c-ares/c-ares@4ef6817 (Fedor Indutny) #5199
  • [b4db31822f] - dgram: scope redeclared variables (Rich Trott) #4940
  • [368c1d1098] - (SEMVER-MINOR) dgram: support dgram.send with multiple buffers (Matteo Collina) #4374
  • [a8862f59eb] - doc: update repo docs to use 'CTC' (Alexis Campailla) #5304
  • [6cf8ec5bd1] - doc: s/http/https in Myles Borins' GitHub link (Rod Vagg) #5356
  • [0389e3803c] - doc: clarify child_process.execFile{,Sync} file arg (Kevin Locke) #5310
  • [c48290d9b7] - doc: fix buf.length slice example (Chinedu Francis Nwafili) #5259
  • [a6e437c619] - doc: fix buffer[index] example (Chinedu Francis Nwafili) #5253
  • [73ef1bd423] - doc: fix template string (Rafael Cepeda) #5240
  • [fa04daa384] - doc: clarify exceptions during uncaughtException (Noah Rose) #5180
  • [22f132e61d] - doc: improvements to console.markdown copy (Alexander Makarenko) #5225
  • [48fa6f6063] - doc: update process.send() signature (cjihrig) #5284
  • [35d89d4662] - doc: fix net.createConnection() example (Brian White) #5219
  • [149007c9f0] - doc: replace node-forward link in CONTRIBUTING.md (Ben Noordhuis) #5227
  • [a6aaf2caab] - doc: improve scrolling, various CSS tweaks (Roman Reiss) #5198
  • [18b00deeac] - doc: update DCO to v1.1 (Mikeal Rogers) #5170
  • [3955bc4cd0] - doc: fix minor inconsistencies in repl doc (Rich Trott) #5193
  • [287bce7b48] - doc: merging behavior of writeHead vs setHeader (Alejandro Oviedo) #5081
  • [529e749d88] - doc: fix type references for link gen, link css (Claudio Rodriguez) #4741
  • [275f6dbcbb] - (SEMVER-MINOR) doc: correct tlsSocket.getCipher() description (Brian White) #4995
  • [b706b0c2c5] - http: remove old, confusing comment (Brian White) #5233
  • [ed36235248] - http: remove unnecessary check (Brian White) #5233
  • [7e82a566b3] - (SEMVER-MINOR) http: allow async createConnection() (Brian White) #4638
  • [411d813323] - http: do not emit upgrade on advertisement (Fedor Indutny) #4337
  • [bbc786b50f] - http,util: fix typos in comments (Alexander Makarenko) #5279
  • [a2d198c702] - net: use _server for internal book-keeping (Fedor Indutny) #5262
  • [18d24e60c5] - (SEMVER-MINOR) net: add net.listening boolean property over a getter (José Moreira) #4743
  • [9cee86e3e9] - node: set process._eventsCount to 0 on startup (Evan Lucas) #5208
  • [f2e4f621c5] - node: improve process.nextTick performance (Ruben Bridgewater) #5092
  • [1c6f927bd1] - path: fix input type checking regression (Brian White) #5244
  • [4dae8caf7a] - path: performance improvements on all platforms (Brian White) #5123
  • [46be1f4d0c] - querystring: improve escape() performance (Brian White) #5012
  • [27e323e8c1] - querystring: improve unescapeBuffer() performance (Brian White) #5012
  • [301023b2b4] - querystring: improve parse() performance (Brian White) #5012
  • [98907c716b] - (SEMVER-MINOR) repl: allow multiline function call (Zirak) #3823
  • [c551da8cb4] - repl: handle quotes within regexp literal (Prince J Wesley) #5117
  • [15091ccca2] - src: remove unnecessary check (Brian White) #5233
  • [830bb04d90] - src: remove TryCatch in MakeCallback (Trevor Norris) #4507
  • [7f22c8c8a6] - src: remove unused TickInfo::in_tick() (Trevor Norris) #4507
  • [406eb1f516] - src: remove unused of TickInfo::last_threw() (Trevor Norris) #4507
  • [bcec2fecbd] - src: add AsyncCallbackScope (Trevor Norris) #4507
  • [2cb1594279] - src: fix MakeCallback error handling (Trevor Norris) #4507
  • [8d6e679a90] - src,test,tools: modify for more stringent linting (Rich Trott) #5214
  • [7684b0fcdf] - stream: fix no data on partial decode (Brian White) #5226
  • [f706cb0189] - streams: 5% throughput gain when sending small chunks (Matteo Collina) #4354
  • [25513a473a] - string_decoder: fix performance regression (Brian White) #5134
  • [0e85530d8c] - test: use String.prototype.repeat() for clarity (Rich Trott) #5311
  • [5683efb90a] - test: remove flaky mark for test-debug-no-context (Rich Trott) #5317
  • [c55bb79ace] - test: add test for https server close event (Braydon Fuller) #5106
  • [138ee983b0] - test: refactor test-http-destroyed-socket-write2 (Santiago Gimeno) #4970
  • [df7d91f36b] - test: mitigate flaky test-debug-no-context (Rich Trott) #5269
  • [d9177e7c26] - test: test-process-getactivehandles is flaky (Alexis Campailla) #5303
  • [f5cc04732f] - test: mark test-http-regr-gh-2928 flaky (Rich Trott) #5280
  • [78b349d5d1] - test: disable fs watch tests for AIX (Michael Dawson) #5187
  • [82ee5e94df] - test: mark test-http-agent flaky (Rich Trott) #5209
  • [1494d6f213] - test: minimal repl eval option test (Rich Trott) #5192
  • [e7bf951136] - test: add addons test for MakeCallback (Trevor Norris) #4507
  • [98596a94fa] - (SEMVER-MINOR) test: run v8 tests from node tree (Bryon Leung) #4704
  • [69c544f245] - test: fix flaky test-http-regr-gh-2928 (Rich Trott) #5154
  • [7c88410507] - test: fix child-process-fork-regr-gh-2847 again (Santiago Gimeno) #5179
  • [2c2cb6700d] - test: remove unneeded common.indirectInstanceOf() (Rich Trott) #5149
  • [6340974f21] - test: don't run test-tick-processor.js on Aix (Michael Dawson) #5093
  • [a8f4db236c] - test: improve path tests (Brian White) #5123
  • [8301773c1e] - test: fix child-process-fork-regr-gh-2847 (Santiago Gimeno) #5121
  • [f2bd86775b] - test: update arrow function style (cjihrig) #4813
  • [aed04b85c2] - tls: nullify .ssl on handle close (Fedor Indutny) #5168
  • [c3f8aab652] - (SEMVER-MINOR) tls: add getProtocol() to TLS sockets (Brian White) #4995
  • [7fc2e3161f] - tools: add Node.js-specific ESLint rules (Rich Trott) #5320
  • [983325cb0c] - tools: replace obsolete ESLint rules (Rich Trott) #5214
  • [f601d040b5] - tools: update ESLint to version 2.1.0 (Rich Trott) #5214
  • [13af565759] - tools: remove obsolete lint rules (Rich Trott) #5214
  • [c566f44f1b] - tools: add recommended ES6 lint rules (Rich Trott) #5210
  • [b611caa0ba] - tools: add recommended linting rules (Rich Trott) #5188
  • [b1a16d1202] - tools: remove excessive comments from .eslintrc (Rich Trott) #5151
  • [c4ed5ece4d] - tools: enable no-proto rule for linter (Jackson Tian) #5140
  • [86f8477b56] - tools: disallow mixed spaces and tabs for indents (Rich Trott) #5135
  • [21fd1496a9] - tools: alphabetize eslint stylistic issues section (Rich Trott)
  • [22c8d50a1f] - tools: parse types into links in doc html gen (Claudio Rodriguez) #4741
  • [5c54d4987d] - tools: enable no-redeclare rule for linter (Rich Trott) #5047
  • [a3a0cf603a] - tools: add arrow function rules to eslint (cjihrig) #4813
  • [bcc26f747f] - tools,doc: fix linting errors (Rich Trott) #5161
  • [47274704aa] - url: fix lint and deopt issues (Brian White) #5300
  • [729ad75860] - url: improve url.parse() performance (Brian White) #4892
  • [6c8378b15b] - vm: fix produceCachedData (Jiho Choi) #5343
  • [d1cacb814f] - (SEMVER-MINOR) vm: introduce cachedData/produceCachedData (Fedor Indutny) #4777

Windows 32-bit Installer: https://nodejs.org/dist/v5.7.0/node-v5.7.0-x86.msi
Windows 64-bit Installer: https://nodejs.org/dist/v5.7.0/node-v5.7.0-x64.msi
Windows 32-bit Binary: https://nodejs.org/dist/v5.7.0/win-x86/node.exe
Windows 64-bit Binary: https://nodejs.org/dist/v5.7.0/win-x64/node.exe
Mac OS X 64-bit Installer: https://nodejs.org/dist/v5.7.0/node-v5.7.0.pkg
Mac OS X 64-bit Binary: https://nodejs.org/dist/v5.7.0/node-v5.7.0-darwin-x64.tar.gz
Linux 32-bit Binary: https://nodejs.org/dist/v5.7.0/node-v5.7.0-linux-x86.tar.xz
Linux 64-bit Binary: https://nodejs.org/dist/v5.7.0/node-v5.7.0-linux-x64.tar.xz
Linux PPC LE 64-bit Binary: https://nodejs.org/dist/v5.7.0/node-v5.7.0-linux-ppc64le.tar.xz
SmartOS 32-bit Binary: https://nodejs.org/dist/v5.7.0/node-v5.7.0-sunos-x86.tar.xz
SmartOS 64-bit Binary: https://nodejs.org/dist/v5.7.0/node-v5.7.0-sunos-x64.tar.xz
ARMv6 32-bit Binary: https://nodejs.org/dist/v5.7.0/node-v5.7.0-linux-armv6l.tar.xz
ARMv7 32-bit Binary: https://nodejs.org/dist/v5.7.0/node-v5.7.0-linux-armv7l.tar.xz
ARMv8 64-bit Binary: https://nodejs.org/dist/v5.7.0/node-v5.7.0-linux-arm64.tar.xz
Source Code: https://nodejs.org/dist/v5.7.0/node-v5.7.0.tar.gz
Other release files: https://nodejs.org/dist/v5.7.0/
Documentation: https://nodejs.org/docs/v5.7.0/api/

Shasums (GPG signing hash: SHA512, file hash: SHA256):

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

a68a9d45527077e1e044a4036a9b0fc803faa46c97e30fed71b77a759b4fa2fe  node-v5.7.0-darwin-x64.tar.gz
28b6f045f2e0af49a27b30decbb20fd7ba0fc8e2bd4cb07b195abc1012ba2bb0  node-v5.7.0-darwin-x64.tar.xz
1ac837924a7fe48f56b04b0952fa15ae6cde6ef968fd10118ca07a09fd182107  node-v5.7.0-headers.tar.gz
503d2f2cf2575b644fe402e735c8b571f64e66c72ceea619b79261270f0a2447  node-v5.7.0-headers.tar.xz
2b4de1cca92da4aaec0aec0bc767d7a60d8378e830987abc668176d9b6603ccd  node-v5.7.0-linux-arm64.tar.gz
e4e1b49269d592719d4064383a5b60d9d37b8a7fe871b133d19636dcf2d9e782  node-v5.7.0-linux-arm64.tar.xz
844f6707f105f31096579c74ad9928c5a9cce85b2a245bb1d697c06e6a9b1ee8  node-v5.7.0-linux-armv6l.tar.gz
348665019e7b73f9e0f4b20531523e487fa44ffd4dc5b22530189ef2e7c37416  node-v5.7.0-linux-armv6l.tar.xz
0712cbe3f05e1828d9cf900ad17007184abc70746bdb2d2064b645f1d3be68c2  node-v5.7.0-linux-armv7l.tar.gz
f306d89481470a4b0970cb913fe3e2008d0aeae3f137f22491d2f0ee3f6a5e53  node-v5.7.0-linux-armv7l.tar.xz
ff7d52a87ce152817e3e4e9dba24530b629729539648a0b347bb70d733591a07  node-v5.7.0-linux-ppc64le.tar.gz
cee33ce09f5a2d31756477d5d45e25293d648e25a31a4b4ea4595a460e67ff1f  node-v5.7.0-linux-ppc64le.tar.xz
ae24ae3076393e7968316098ddbb0221bde0830a0e9d878c6493604e1cc553c1  node-v5.7.0-linux-x64.tar.gz
0fe3892820fbd189d72bebe414607485fdca421e86a6c8d60a78ca88585075aa  node-v5.7.0-linux-x64.tar.xz
09776060a502118765144284c7ad32bd6a737e681819e8349489b9a015a45bbc  node-v5.7.0-linux-x86.tar.gz
8a3e03c24e3fc03a2996d725d9b6676c5e54ce4a5923fc43daf1821adc4957e8  node-v5.7.0-linux-x86.tar.xz
52770beac19d56546509ae5b7d0deff69b2ae02151dbbcf3bd410d52229b6e35  node-v5.7.0.pkg
d8acb8f8fb779d26cda6d3770d48a1f584a0e35ddf154adb4b883bcc4b48a2f2  node-v5.7.0-sunos-x64.tar.gz
2d2f59c80c31723adddaa0dd2b895c9aa079d7829c71e070f18ad775858100c7  node-v5.7.0-sunos-x64.tar.xz
208bba5c8a7cf375fa062d489fc413b96665438fd0c3e4a98ca39397c79691d5  node-v5.7.0-sunos-x86.tar.gz
b8dad0fa46426024abfb7807568547afebe6f0d98165671589c92337b2e6dcc1  node-v5.7.0-sunos-x86.tar.xz
2338b46a2f45fbb747089c66931f62555f25a5928511d3a43bbb3a39dcded2d8  node-v5.7.0.tar.gz
7b82697825bd1259d87976608a2d4da609c7bb5eb2d447a58990746317b8c70d  node-v5.7.0.tar.xz
0567317ba66b7e3f86a1aaf32a54b6485dabff9493d9d651740eccbaedb56b91  node-v5.7.0-x64.msi
ed2723660c1fd6430987904d305de075b49ce6f5cacc21685e7adf35d0af60c9  node-v5.7.0-x86.msi
44b77cb1ab7a2b2e8da91e4cacfc250646c9d0fe8c535c4f208bce74611b084c  win-x64/node.exe
d899a74a6c865c08d0bd6923d202ee21c1f4152868b5559a3b70be7b28c1d775  win-x64/node.lib
d562d5d6afa66c503df40ba531c1bd2a16c4ef3e875be5a479ffbf9dc2fcdfa9  win-x86/node.exe
d996aca9ca5d9a370df5c74c88980877f6864c13f326c0cf6e5c4c93ffd62b45  win-x86/node.lib
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQEcBAEBAgAGBQJWy+++AAoJEMJzeS99g1Rd3skIALQJLDwDo0WuNGFmMWCieq5i
fNlLQTwrCh284eEnOBSX7YfjsexLCU8ncOYWIYoJQtUioZS53RtoPpsGUxX7dqwS
T7gaq7WF4kYba+QeWSKbxv2blODDqY5dyys/ck/6Yp2OzxRUy1DkAdkXwa4dMPx/
5OVn7cn8TY/C5TobAE06BX9CQXP5v0vzqQqgB2fE1sZ7unlFe9xI5Cu5xoqa3G0w
w1vWFTOug7TJZOUgaIH8O+k53cu0k//bm582285X5YdYMknZ0PYMU+9zqD5AMH6f
6/iSuuk6lroEX+An5dK37RRXkig9BnHvnRkMxsoARIT33qkI8iauGzxNHt2jB5M=
=BwDD
-----END PGP SIGNATURE-----

Last Updated
Feb 23, 2016
Reading Time
8 min read
Contribute
Edit this page
Table of Contents
  1. Notable changes
  2. Commits