Release proposal: 5.7.0 (Stable)
For Tuesday, the 23rd, it's not even been two weeks and the backlog is already pretty amazing:
Notable changes
-
buffer:
- You can now supply an
encoding
argument when filling a BufferBuffer#fill(string[, start[, end]][, encoding])
, supplying an existing Buffer will also work withBuffer#fill(buffer[, start[, end]])
. See the API documentation for details on how this works. (Trevor Norris) #4935 -
Buffer#indexOf()
no longer requires abyteOffset
argument if you also wish to specify anencoding
:Buffer#indexOf(val[, byteOffset][, encoding])
. (Trevor Norris) #4803
- You can now supply an
-
child_process:
spawn()
andspawnSync()
now support a'shell'
option to allow for optional execution of the given command inside a shell. If set totrue
,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 withspawn()
andspawnSync()
. (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 tonet
andhttp
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 anotherMakeCallback()
call no longer causes thenextTick
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 tonew vm.Script()
to interact with V8's code cache. When a newvm.Script
object is created with the'produceCachedData'
set totrue
aBuffer
with V8's code cache data will be produced and stored incachedData
property of the returned object. This data in turn may be supplied back to anothervm.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:
Current CI run: https://ci.nodejs.org/job/node-test-commit/2273/ No citgm run yet, the path regression should be fixed at least.