From cab34ba75eb4979b2523e4f4ee44d163e396a563 Mon Sep 17 00:00:00 2001 From: Giovanni Lela Date: Mon, 6 Nov 2017 16:01:17 +0100 Subject: [PATCH 01/34] tools: replace string concatenation with template literals Replace a string concatenation in the processList function in doc/json.js. If missing, initialize the textRow property in the same line of the concatenation. PR-URL: https://github.com/nodejs/node/pull/16806 Reviewed-By: Anatoli Papirovski Reviewed-By: Gireesh Punathil Reviewed-By: Vse Mozhet Byt Reviewed-By: Rich Trott --- tools/doc/json.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/tools/doc/json.js b/tools/doc/json.js index ddf7cedcf4c..2966e4c3d91 100644 --- a/tools/doc/json.js +++ b/tools/doc/json.js @@ -256,8 +256,7 @@ function processList(section) { `${JSON.stringify(tok)}\n` + JSON.stringify(list)); } - current.textRaw = current.textRaw || ''; - current.textRaw += `${tok.text} `; + current.textRaw = `${current.textRaw || ''}${tok.text} `; } }); From 820bb0084b40c1466aee13ad3c1667c478b4e550 Mon Sep 17 00:00:00 2001 From: Matthias Reis Date: Mon, 6 Nov 2017 16:09:54 +0100 Subject: [PATCH 02/34] test: clarified assert message for test-require-json.js PR-URL: https://github.com/nodejs/node/pull/16807 Reviewed-By: Gireesh Punathil Reviewed-By: Rich Trott --- test/parallel/test-require-json.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/test/parallel/test-require-json.js b/test/parallel/test-require-json.js index 608a661b1c8..c9701ee728f 100644 --- a/test/parallel/test-require-json.js +++ b/test/parallel/test-require-json.js @@ -29,5 +29,6 @@ try { } catch (err) { assert.ok( /test[/\\]fixtures[/\\]invalid\.json: Unexpected string/.test(err.message), - 'require() json error should include path'); + `require() json error should include path - currently: ${err.message}` + ); } From 0736ad47433104666aa4e4c1781be743db43f653 Mon Sep 17 00:00:00 2001 From: John Byrne Date: Mon, 6 Nov 2017 15:03:54 +0000 Subject: [PATCH 03/34] test: use default assertion messages The string literal messages in addons-napi/test_buffer/test.js are less helpful than the default messages, so use the default messages. PR-URL: https://github.com/nodejs/node/pull/16808 Reviewed-By: Colin Ihrig Reviewed-By: Gireesh Punathil Reviewed-By: Rich Trott --- test/addons-napi/test_buffer/test.js | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/test/addons-napi/test_buffer/test.js b/test/addons-napi/test_buffer/test.js index 6fb80b02053..713966775df 100644 --- a/test/addons-napi/test_buffer/test.js +++ b/test/addons-napi/test_buffer/test.js @@ -5,20 +5,17 @@ const common = require('../../common'); const binding = require(`./build/${common.buildType}/test_buffer`); const assert = require('assert'); -assert.strictEqual(binding.newBuffer().toString(), binding.theText, - 'buffer returned by newBuffer() has wrong contents'); -assert.strictEqual(binding.newExternalBuffer().toString(), binding.theText, - 'buffer returned by newExternalBuffer() has wrong contents'); +assert.strictEqual(binding.newBuffer().toString(), binding.theText); +assert.strictEqual(binding.newExternalBuffer().toString(), binding.theText); console.log('gc1'); global.gc(); assert.strictEqual(binding.getDeleterCallCount(), 1, 'deleter was not called'); -assert.strictEqual(binding.copyBuffer().toString(), binding.theText, - 'buffer returned by copyBuffer() has wrong contents'); +assert.strictEqual(binding.copyBuffer().toString(), binding.theText); let buffer = binding.staticBuffer(); assert.strictEqual(binding.bufferHasInstance(buffer), true, 'buffer type checking fails'); -assert.strictEqual(binding.bufferInfo(buffer), true, 'buffer data is accurate'); +assert.strictEqual(binding.bufferInfo(buffer), true); buffer = null; global.gc(); console.log('gc2'); From fb31e074503145302acaaec49bbf779fdf067d83 Mon Sep 17 00:00:00 2001 From: Octavian Ionescu Date: Mon, 6 Nov 2017 17:13:49 +0200 Subject: [PATCH 04/34] test: replace fixturesDir with usage of fixtures module Repalce common.fixturesDir with usage of the fixtures module in test-tls-ecdh-disable. Add a comment explaining the test. PR-URL: https://github.com/nodejs/node/pull/16810 Reviewed-By: Colin Ihrig Reviewed-By: Gireesh Punathil Reviewed-By: Rich Trott --- test/parallel/test-tls-ecdh-disable.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/test/parallel/test-tls-ecdh-disable.js b/test/parallel/test-tls-ecdh-disable.js index 24ebeb37605..72b51771c87 100644 --- a/test/parallel/test-tls-ecdh-disable.js +++ b/test/parallel/test-tls-ecdh-disable.js @@ -19,8 +19,12 @@ // OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE // USE OR OTHER DEALINGS IN THE SOFTWARE. +// Test that the usage of eliptic curves are not permitted if disabled during +// server initialization. + 'use strict'; const common = require('../common'); +const { readKey } = require('../common/fixtures'); if (!common.hasCrypto) common.skip('missing crypto'); @@ -30,11 +34,10 @@ if (!common.opensslCli) const assert = require('assert'); const tls = require('tls'); const exec = require('child_process').exec; -const fs = require('fs'); const options = { - key: fs.readFileSync(`${common.fixturesDir}/keys/agent2-key.pem`), - cert: fs.readFileSync(`${common.fixturesDir}/keys/agent2-cert.pem`), + key: readKey('agent2-key.pem'), + cert: readKey('agent2-cert.pem'), ciphers: 'ECDHE-RSA-AES128-SHA', ecdhCurve: false }; From f60c692499c488d4ab59b67b258eea88dc826287 Mon Sep 17 00:00:00 2001 From: Luigi Pinca Date: Fri, 3 Nov 2017 18:13:48 +0100 Subject: [PATCH 05/34] http: use 'connect' event only if socket is connecting Fixes a bug that prevented `ClientRequest.prototype.setTimeout()` from working properly when the socket was reused for multiple requests. Fixes: https://github.com/nodejs/node/issues/16716 Refs: https://github.com/nodejs/node/pull/8895 PR-URL: https://github.com/nodejs/node/pull/16725 Reviewed-By: Rich Trott Reviewed-By: James M Snell Reviewed-By: Colin Ihrig Reviewed-By: Benjamin Gruenbaum --- lib/_http_client.js | 8 +++- ...st-http-client-timeout-connect-listener.js | 42 +++++++++++++++++++ 2 files changed, 48 insertions(+), 2 deletions(-) create mode 100644 test/parallel/test-http-client-timeout-connect-listener.js diff --git a/lib/_http_client.js b/lib/_http_client.js index fedadedcc2e..df99daa9d54 100644 --- a/lib/_http_client.js +++ b/lib/_http_client.js @@ -728,9 +728,13 @@ ClientRequest.prototype.setTimeout = function setTimeout(msecs, callback) { } this.once('socket', function(sock) { - sock.once('connect', function() { + if (sock.connecting) { + sock.once('connect', function() { + sock.setTimeout(msecs, emitTimeout); + }); + } else { sock.setTimeout(msecs, emitTimeout); - }); + } }); return this; diff --git a/test/parallel/test-http-client-timeout-connect-listener.js b/test/parallel/test-http-client-timeout-connect-listener.js new file mode 100644 index 00000000000..ea09aff718d --- /dev/null +++ b/test/parallel/test-http-client-timeout-connect-listener.js @@ -0,0 +1,42 @@ +'use strict'; +const common = require('../common'); + +// This test ensures that `ClientRequest.prototype.setTimeout()` does +// not add a listener for the `'connect'` event to the socket if the +// socket is already connected. + +const assert = require('assert'); +const http = require('http'); + +// Maximum allowed value for timeouts. +const timeout = 2 ** 31 - 1; + +const server = http.createServer((req, res) => { + res.end(); +}); + +server.listen(0, common.mustCall(() => { + const agent = new http.Agent({ keepAlive: true, maxSockets: 1 }); + const options = { port: server.address().port, agent: agent }; + + doRequest(options, common.mustCall(() => { + const req = doRequest(options, common.mustCall(() => { + agent.destroy(); + server.close(); + })); + + req.on('socket', common.mustCall((socket) => { + assert.strictEqual(socket.listenerCount('connect'), 0); + })); + })); +})); + +function doRequest(options, callback) { + const req = http.get(options, (res) => { + res.on('end', callback); + res.resume(); + }); + + req.setTimeout(timeout); + return req; +} From 13e983bf8364399fc2f8d610802367383ea496ca Mon Sep 17 00:00:00 2001 From: Kevin Yu Date: Mon, 6 Nov 2017 15:06:51 +0000 Subject: [PATCH 06/34] tools: replace string concatenation with template literals Replace string concatenation with template literals in tools/doc/preprocess.js. PR-URL: https://github.com/nodejs/node/pull/16804 Reviewed-By: Vse Mozhet Byt Reviewed-By: Rich Trott Reviewed-By: Anatoli Papirovski --- tools/doc/preprocess.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tools/doc/preprocess.js b/tools/doc/preprocess.js index 00654baa6cf..35348d583b0 100644 --- a/tools/doc/preprocess.js +++ b/tools/doc/preprocess.js @@ -29,7 +29,7 @@ function processIncludes(inputFile, input, cb) { if (incCount === 0) cb(null, input); includes.forEach(function(include) { var fname = include.replace(/^@include\s+/, ''); - if (!fname.match(/\.md$/)) fname += '.md'; + if (!fname.match(/\.md$/)) fname = `${fname}.md`; if (includeData.hasOwnProperty(fname)) { input = input.split(include).join(includeData[fname]); @@ -51,8 +51,8 @@ function processIncludes(inputFile, input, cb) { // Add comments to let the HTML generator know how the anchors for // headings should look like. includeData[fname] = `\n` + - inc + `\n\n`; - input = input.split(include + '\n').join(includeData[fname] + '\n'); + `${inc}\n\n`; + input = input.split(`${include}\n`).join(`${includeData[fname]}\n`); if (incCount === 0) { return cb(null, input); } From 48a777287d1e0b4e199efe2137d5513c3edfc85d Mon Sep 17 00:00:00 2001 From: Jimi van der Woning Date: Mon, 6 Nov 2017 17:36:56 +0100 Subject: [PATCH 07/34] test: fix typos in read-buffer tests The offset-exceeding tests for readFloat contained a double test for readFloatLE instead of one for readFloatLE and one for readFloatBE. This is fixed in this commit. PR-URL: https://github.com/nodejs/node/pull/16834 Reviewed-By: Vse Mozhet Byt Reviewed-By: Rich Trott --- test/parallel/test-buffer-read.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/parallel/test-buffer-read.js b/test/parallel/test-buffer-read.js index 777ced08c5d..b5bdbbb7a4b 100644 --- a/test/parallel/test-buffer-read.js +++ b/test/parallel/test-buffer-read.js @@ -59,13 +59,13 @@ read(buf, 'readUIntBE', [2, 0], 0xfd); read(buf, 'readUIntLE', [2, 0], 0x48); // attempt to overflow buffers, similar to previous bug in array buffers -assert.throws(() => Buffer.allocUnsafe(8).readFloatLE(0xffffffff), +assert.throws(() => Buffer.allocUnsafe(8).readFloatBE(0xffffffff), RangeError); assert.throws(() => Buffer.allocUnsafe(8).readFloatLE(0xffffffff), RangeError); // ensure negative values can't get past offset -assert.throws(() => Buffer.allocUnsafe(8).readFloatLE(-1), RangeError); +assert.throws(() => Buffer.allocUnsafe(8).readFloatBE(-1), RangeError); assert.throws(() => Buffer.allocUnsafe(8).readFloatLE(-1), RangeError); // offset checks From 74d9dc2f5d6cf08087bff8ab94c30ee5622e9c4a Mon Sep 17 00:00:00 2001 From: Vse Mozhet Byt Date: Mon, 6 Nov 2017 20:46:06 +0200 Subject: [PATCH 08/34] tools: remove unneeded parentheses in doc/html.js PR-URL: https://github.com/nodejs/node/pull/16845 Ref: https://github.com/nodejs/node/pull/16801#discussion_r149142120 Reviewed-By: Colin Ihrig Reviewed-By: Jeremiah Senkpiel Reviewed-By: Rich Trott --- tools/doc/html.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/doc/html.js b/tools/doc/html.js index 462de24fd7b..6729dbba186 100644 --- a/tools/doc/html.js +++ b/tools/doc/html.js @@ -518,7 +518,7 @@ function getId(text) { text = text.replace(/^_+|_+$/, ''); text = text.replace(/^([^a-z])/, '_$1'); if (idCounters.hasOwnProperty(text)) { - text += `_${(++idCounters[text])}`; + text += `_${++idCounters[text]}`; } else { idCounters[text] = 0; } From 207b24a75e5a23b58e960effe9852430cacdddbe Mon Sep 17 00:00:00 2001 From: Dara Hayes Date: Mon, 6 Nov 2017 15:23:13 +0000 Subject: [PATCH 09/34] test: update test to use fixtures.readKey Use fixtures.readKey() rather than common.fixturesDir in test-regress-GH-1531. PR-URL: https://github.com/nodejs/node/pull/16811 Reviewed-By: Colin Ihrig Reviewed-By: Anatoli Papirovski Reviewed-By: Gireesh Punathil Reviewed-By: Rich Trott --- test/parallel/test-regress-GH-1531.js | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/test/parallel/test-regress-GH-1531.js b/test/parallel/test-regress-GH-1531.js index 7d1f4a0dbec..a61cc64ab62 100644 --- a/test/parallel/test-regress-GH-1531.js +++ b/test/parallel/test-regress-GH-1531.js @@ -1,16 +1,20 @@ 'use strict'; const common = require('../common'); +// This test ensures that a http request callback is called +// when the agent option is set +// See https://github.com/nodejs/node-v0.x-archive/issues/1531 + if (!common.hasCrypto) common.skip('missing crypto'); -const https = require('https'); +const fixtures = require('../common/fixtures'); -const fs = require('fs'); +const https = require('https'); const options = { - key: fs.readFileSync(`${common.fixturesDir}/keys/agent1-key.pem`), - cert: fs.readFileSync(`${common.fixturesDir}/keys/agent1-cert.pem`) + key: fixtures.readKey('agent1-key.pem'), + cert: fixtures.readKey('agent1-cert.pem') }; const server = https.createServer(options, function(req, res) { From ac1e6bda899b68e96cf7a84b0cea0d5bf6c564fa Mon Sep 17 00:00:00 2001 From: "Maring, Damian Lion" Date: Mon, 6 Nov 2017 15:06:30 +0000 Subject: [PATCH 10/34] test: use fixtures module in test-repl PR-URL: https://github.com/nodejs/node/pull/16809 Reviewed-By: Rich Trott Reviewed-By: Gireesh Punathil --- test/parallel/test-repl.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/test/parallel/test-repl.js b/test/parallel/test-repl.js index 54ad848b5b3..6d4f0d8c7a5 100644 --- a/test/parallel/test-repl.js +++ b/test/parallel/test-repl.js @@ -21,6 +21,7 @@ 'use strict'; const common = require('../common'); +const fixtures = require('../common/fixtures'); const assert = require('assert'); common.globalCheck = false; @@ -40,7 +41,7 @@ let server_tcp, server_unix, client_tcp, client_unix, replServer; // absolute path to test/fixtures/a.js -const moduleFilename = require('path').join(common.fixturesDir, 'a'); +const moduleFilename = fixtures.path('a'); console.error('repl test'); From 2336df1b502d55261baf3ebd6e22c011c619b069 Mon Sep 17 00:00:00 2001 From: Attila Gonda Date: Mon, 6 Nov 2017 15:12:19 +0000 Subject: [PATCH 11/34] test: add detailed message for assertion failure PR-URL: https://github.com/nodejs/node/pull/16812 Reviewed-By: Rich Trott Reviewed-By: Joyee Cheung Reviewed-By: Gireesh Punathil --- test/addons-napi/test_typedarray/test.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/test/addons-napi/test_typedarray/test.js b/test/addons-napi/test_typedarray/test.js index 25f701f2d30..27ef054fe46 100644 --- a/test/addons-napi/test_typedarray/test.js +++ b/test/addons-napi/test_typedarray/test.js @@ -49,7 +49,9 @@ arrayTypes.forEach((currentType) => { const theArray = test_typedarray.CreateTypedArray(template, buffer); assert.ok(theArray instanceof currentType, - 'Type of new array should match that of the template'); + 'Type of new array should match that of the template. ' + + `Expected type: ${currentType.name}, ` + + `actual type: ${template.constructor.name}`); assert.notStrictEqual(theArray, template); assert.strictEqual(theArray.buffer, buffer); }); From 17d83883e19a530c8df276b373b2fbc39f81f7f3 Mon Sep 17 00:00:00 2001 From: Brian O'Connell Date: Mon, 6 Nov 2017 15:15:14 +0000 Subject: [PATCH 12/34] test: refactor tls test to use fixtres.readSync PR-URL: https://github.com/nodejs/node/pull/16816 Reviewed-By: Colin Ihrig Reviewed-By: Gireesh Punathil --- test/parallel/test-tls-hello-parser-failure.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/test/parallel/test-tls-hello-parser-failure.js b/test/parallel/test-tls-hello-parser-failure.js index ed4c4f7b991..4a7d8999c78 100644 --- a/test/parallel/test-tls-hello-parser-failure.js +++ b/test/parallel/test-tls-hello-parser-failure.js @@ -22,6 +22,10 @@ 'use strict'; const common = require('../common'); +const fixtures = require('../common/fixtures'); + +// This test ensures that the tls parser causes a client error if the client +// sends invalid data. if (!common.hasCrypto) common.skip('missing crypto'); @@ -30,11 +34,10 @@ const assert = require('assert'); const tls = require('tls'); const net = require('net'); -const fs = require('fs'); const options = { - key: fs.readFileSync(`${common.fixturesDir}/test_key.pem`), - cert: fs.readFileSync(`${common.fixturesDir}/test_cert.pem`) + key: fixtures.readSync('test_key.pem'), + cert: fixtures.readSync('test_cert.pem') }; const bonkers = Buffer.alloc(1024 * 1024, 42); From 137c780d4bb3cd9c36f2837477f73bc4a2e9e4bd Mon Sep 17 00:00:00 2001 From: Luigi Pinca Date: Sat, 4 Nov 2017 09:53:09 +0100 Subject: [PATCH 13/34] doc: fix json generator warnings MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Fix `console.countReset()` signature - Fix `console.group()` arguments list PR-URL: https://github.com/nodejs/node/pull/16742 Reviewed-By: Anatoli Papirovski Reviewed-By: Colin Ihrig Reviewed-By: Tobias Nießen Reviewed-By: Daniel Bevenius Reviewed-By: Gireesh Punathil Reviewed-By: James M Snell --- doc/api/console.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/api/console.md b/doc/api/console.md index 9ccdad99983..8a9ca1ac861 100644 --- a/doc/api/console.md +++ b/doc/api/console.md @@ -216,7 +216,7 @@ undefined > ``` -### console.countReset([label = 'default']) +### console.countReset([label='default']) @@ -293,7 +293,7 @@ values are concatenated. See [`util.format()`][] for more information. added: v8.5.0 --> -* `label` {any} +* `...label` {any} Increases indentation of subsequent lines by two spaces. From 79f90f3d98d1f81ef0065a829b6c14e418401306 Mon Sep 17 00:00:00 2001 From: Sascha Tandel Date: Mon, 6 Nov 2017 15:19:09 +0000 Subject: [PATCH 14/34] test: include file mode in assert message If the REPL history file is created with an invalid mode include the failed mode in the error message. PR-URL: https://github.com/nodejs/node/pull/16815 Reviewed-By: Gireesh Punathil Reviewed-By: Joyee Cheung --- test/parallel/test-repl-history-perm.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/test/parallel/test-repl-history-perm.js b/test/parallel/test-repl-history-perm.js index 5ca8bf57a43..9f14ece568d 100644 --- a/test/parallel/test-repl-history-perm.js +++ b/test/parallel/test-repl-history-perm.js @@ -1,4 +1,7 @@ 'use strict'; + +// Verifies that the REPL history file is created with mode 0600 + // Flags: --expose_internals const common = require('../common'); @@ -39,9 +42,10 @@ const checkResults = common.mustCall(function(err, r) { r.input.end(); const stat = fs.statSync(replHistoryPath); + const fileMode = stat.mode & 0o777; assert.strictEqual( - stat.mode & 0o777, 0o600, - 'REPL history file should be mode 0600'); + fileMode, 0o600, + `REPL history file should be mode 0600 but was 0${fileMode.toString(8)}`); }); repl.createInternalRepl( From 09c152e9b40ea9809c455073e1e615e4af5e1d63 Mon Sep 17 00:00:00 2001 From: Sean Karson Date: Mon, 6 Nov 2017 15:14:16 +0000 Subject: [PATCH 15/34] test: show incorrect value on test failure PR-URL: https://github.com/nodejs/node/pull/16818 Reviewed-By: Colin Ihrig Reviewed-By: Gireesh Punathil Reviewed-By: Rich Trott Reviewed-By: Khaidi Chu --- test/async-hooks/test-promise.promise-before-init-hooks.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/async-hooks/test-promise.promise-before-init-hooks.js b/test/async-hooks/test-promise.promise-before-init-hooks.js index 79bbd1751d8..957d1a75e49 100644 --- a/test/async-hooks/test-promise.promise-before-init-hooks.js +++ b/test/async-hooks/test-promise.promise-before-init-hooks.js @@ -16,7 +16,7 @@ hooks.enable(); p.then(function afterresolution(val) { assert.strictEqual(val, 5); const as = hooks.activitiesOfTypes('PROMISE'); - assert.strictEqual(as.length, 1, 'one activity'); + assert.strictEqual(as.length, 1); checkInvocations(as[0], { init: 1, before: 1 }, 'after resolution child promise'); return val; From 2054c66e7773e54a2f5a0844322b5e5752b6cff3 Mon Sep 17 00:00:00 2001 From: Nicolas Morel Date: Mon, 6 Nov 2017 16:37:55 +0100 Subject: [PATCH 16/34] test: remove custom message from assertion The custom message means that the values involved are not reported. Remove the custom message for a more detailed error message. PR-URL: https://github.com/nodejs/node/pull/16824 Reviewed-By: Colin Ihrig Reviewed-By: Anatoli Papirovski Reviewed-By: Gireesh Punathil Reviewed-By: Rich Trott --- test/addons/async-hooks-promise/test.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/test/addons/async-hooks-promise/test.js b/test/addons/async-hooks-promise/test.js index 81389378b07..a6c48e94a34 100644 --- a/test/addons/async-hooks-promise/test.js +++ b/test/addons/async-hooks-promise/test.js @@ -34,8 +34,7 @@ const hook1 = async_hooks.createHook({ // Check that the internal field returns the same PromiseWrap passed to init(). assert.strictEqual( binding.getPromiseField(Promise.resolve(1)), - pwrap, - 'Unexpected PromiseWrap'); + pwrap); hook1.disable(); From 9a1565e41af291bef8cbe4597d2789e64e9bc5b4 Mon Sep 17 00:00:00 2001 From: fjau Date: Mon, 6 Nov 2017 17:06:03 +0000 Subject: [PATCH 17/34] test: improve message in test-fs-readfile-pipe-large MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Improve assertion message by including expected and actual values. PR-URL: https://github.com/nodejs/node/pull/16840 Reviewed-By: Anna Henningsen Reviewed-By: Michaël Zasso Reviewed-By: Gireesh Punathil Reviewed-By: Luigi Pinca --- test/parallel/test-fs-readfile-pipe-large.js | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/test/parallel/test-fs-readfile-pipe-large.js b/test/parallel/test-fs-readfile-pipe-large.js index 4d278ee0f22..17831f81f6d 100644 --- a/test/parallel/test-fs-readfile-pipe-large.js +++ b/test/parallel/test-fs-readfile-pipe-large.js @@ -29,8 +29,16 @@ const node = JSON.stringify(process.execPath); const cmd = `cat ${filename} | ${node} ${f} child`; exec(cmd, { maxBuffer: 1000000 }, function(err, stdout, stderr) { assert.ifError(err); - assert.strictEqual(stdout, dataExpected, 'it reads the file and outputs it'); - assert.strictEqual(stderr, '', 'it does not write to stderr'); + assert.strictEqual( + stdout, + dataExpected, + `expect it reads the file and outputs 999999 'a' but got : ${stdout}` + ); + assert.strictEqual( + stderr, + '', + `expect that it does not write to stderr, but got : ${stderr}` + ); console.log('ok'); }); From 37c118810cc18dbd04a8bb253c024abd9081e2bb Mon Sep 17 00:00:00 2001 From: SonaySevik Date: Mon, 6 Nov 2017 16:02:03 +0000 Subject: [PATCH 18/34] doc: add isTTY property documentation PR-URL: https://github.com/nodejs/node/pull/16828 Reviewed-By: Gireesh Punathil Reviewed-By: Colin Ihrig Reviewed-By: Sam Roberts --- doc/api/tty.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/doc/api/tty.md b/doc/api/tty.md index 497f53509d5..f91a37a1209 100644 --- a/doc/api/tty.md +++ b/doc/api/tty.md @@ -47,6 +47,13 @@ added: v0.7.7 A `boolean` that is `true` if the TTY is currently configured to operate as a raw device. Defaults to `false`. +### readStream.isTTY + + +A `boolean` that is always `true`. + ### readStream.setRawMode(mode) + +A `boolean` that is always `true`. + ### writeStream.rows diff --git a/doc/changelogs/CHANGELOG_V9.md b/doc/changelogs/CHANGELOG_V9.md index c33a7ab2ee3..7194b86a535 100644 --- a/doc/changelogs/CHANGELOG_V9.md +++ b/doc/changelogs/CHANGELOG_V9.md @@ -6,6 +6,7 @@ +9.1.0
9.0.0
@@ -22,6 +23,119 @@ * [io.js](CHANGELOG_IOJS.md) * [Archive](CHANGELOG_ARCHIVE.md) + +## 2017-11-07, Version 9.1.0 (Current), @cjihrig + +### Notable Changes + +* **CLI**: + - `NODE_OPTIONS` now supports the `--stack-trace-limit` option. [#16495](https://github.com/nodejs/node/pull/16495) +* **deps**: + - OpenSSL is upgraded to 1.0.2m [#16691](https://github.com/nodejs/node/pull/16691) +* **http**: + - A `'connect'` event handler leak has been fixed. [#16725](https://github.com/nodejs/node/pull/16725) + - The `103 Early Hints` status code is now supported. [#16644](https://github.com/nodejs/node/pull/16644) + +### Commits + +* [[`32417999ac`](https://github.com/nodejs/node/commit/32417999ac)] - **build**: suppress lint-md output (Gibson Fahnestock) [#16551](https://github.com/nodejs/node/pull/16551) +* [[`433745e7eb`](https://github.com/nodejs/node/commit/433745e7eb)] - **build**: add missing comma in sources list (Daniel Bevenius) [#16613](https://github.com/nodejs/node/pull/16613) +* [[`8bc5249223`](https://github.com/nodejs/node/commit/8bc5249223)] - **build**: make test-doc and lint addon docs (Joyee Cheung) [#16377](https://github.com/nodejs/node/pull/16377) +* [[`88ad01fce7`](https://github.com/nodejs/node/commit/88ad01fce7)] - **build**: make doc target quiet (Daniel Bevenius) [#16516](https://github.com/nodejs/node/pull/16516) +* [[`f3e01618f1`](https://github.com/nodejs/node/commit/f3e01618f1)] - **build,src**: Add CloudABI as a POSIX-like runtime environment. (Ed Schouten) [#16612](https://github.com/nodejs/node/pull/16612) +* [[`7349d42945`](https://github.com/nodejs/node/commit/7349d42945)] - **(SEMVER-MINOR)** **cli**: add --stack-trace-limit to NODE_OPTIONS (Anna Henningsen) [#16495](https://github.com/nodejs/node/pull/16495) +* [[`ed0fbd8d72`](https://github.com/nodejs/node/commit/ed0fbd8d72)] - **deps**: cherry-pick e7f4e9e from upstream libuv (Bartosz Sosnowski) [#16724](https://github.com/nodejs/node/pull/16724) +* [[`185229e258`](https://github.com/nodejs/node/commit/185229e258)] - **deps**: update openssl asm and asm_obsolete files (Shigeki Ohtsu) [#16691](https://github.com/nodejs/node/pull/16691) +* [[`162686f5f4`](https://github.com/nodejs/node/commit/162686f5f4)] - **deps**: add -no_rand_screen to openssl s_client (Shigeki Ohtsu) [nodejs/io.js#1836](https://github.com/nodejs/io.js/pull/1836) +* [[`e0f6dee961`](https://github.com/nodejs/node/commit/e0f6dee961)] - **deps**: fix asm build error of openssl in x86_win32 (Shigeki Ohtsu) [iojs/io.js#1389](https://github.com/iojs/io.js/pull/1389) +* [[`3d7eea5da8`](https://github.com/nodejs/node/commit/3d7eea5da8)] - **deps**: fix openssl assembly error on ia32 win32 (Fedor Indutny) [iojs/io.js#1389](https://github.com/iojs/io.js/pull/1389) +* [[`3438765781`](https://github.com/nodejs/node/commit/3438765781)] - **deps**: copy all openssl header files to include dir (Shigeki Ohtsu) [#16691](https://github.com/nodejs/node/pull/16691) +* [[`b130febd1d`](https://github.com/nodejs/node/commit/b130febd1d)] - **deps**: upgrade openssl sources to 1.0.2m (Shigeki Ohtsu) [#16691](https://github.com/nodejs/node/pull/16691) +* [[`90e8e81bbb`](https://github.com/nodejs/node/commit/90e8e81bbb)] - **doc**: mention constant-time in crypto doc (Mithun Sasidharan) [#16604](https://github.com/nodejs/node/pull/16604) +* [[`dee7800ae8`](https://github.com/nodejs/node/commit/dee7800ae8)] - **doc**: add links to EventEmitter in errors.md (Delapouite) [#16861](https://github.com/nodejs/node/pull/16861) +* [[`f097e2775b`](https://github.com/nodejs/node/commit/f097e2775b)] - **doc**: fix a link in dgram.md (Vse Mozhet Byt) [#16854](https://github.com/nodejs/node/pull/16854) +* [[`978aa8476b`](https://github.com/nodejs/node/commit/978aa8476b)] - **doc**: add isTTY property documentation (SonaySevik) [#16828](https://github.com/nodejs/node/pull/16828) +* [[`6739f41f2d`](https://github.com/nodejs/node/commit/6739f41f2d)] - **doc**: fix json generator warnings (Luigi Pinca) [#16742](https://github.com/nodejs/node/pull/16742) +* [[`2bb148f7bb`](https://github.com/nodejs/node/commit/2bb148f7bb)] - **doc**: make stream.Readable consistent (Sakthipriyan Vairamani (thefourtheye)) [#16786](https://github.com/nodejs/node/pull/16786) +* [[`e05d4f43b6`](https://github.com/nodejs/node/commit/e05d4f43b6)] - **doc**: correct effects to affects (gowpen) [#16794](https://github.com/nodejs/node/pull/16794) +* [[`d7df4dfa1c`](https://github.com/nodejs/node/commit/d7df4dfa1c)] - **doc**: correct EventEmitter reference (gowpen) [#16791](https://github.com/nodejs/node/pull/16791) +* [[`77e4ec8c51`](https://github.com/nodejs/node/commit/77e4ec8c51)] - **doc**: update license to include node-inspect (Myles Borins) [#16659](https://github.com/nodejs/node/pull/16659) +* [[`7388144dbc`](https://github.com/nodejs/node/commit/7388144dbc)] - **doc**: add 9.x to version picker and mark 8.x as LTS (Chris Young) [#16672](https://github.com/nodejs/node/pull/16672) +* [[`e585c41487`](https://github.com/nodejs/node/commit/e585c41487)] - **doc**: add docs for Zlib#close() (Luigi Pinca) [#16592](https://github.com/nodejs/node/pull/16592) +* [[`d5ea177652`](https://github.com/nodejs/node/commit/d5ea177652)] - **doc**: add nodejs/gyp team for GYP related issues (Gibson Fahnestock) [#16638](https://github.com/nodejs/node/pull/16638) +* [[`09181eb976`](https://github.com/nodejs/node/commit/09181eb976)] - **doc**: add details about rss on process.memoryUsage (Anthony Nandaa) [#16566](https://github.com/nodejs/node/pull/16566) +* [[`3fd7eddb44`](https://github.com/nodejs/node/commit/3fd7eddb44)] - **doc**: add windowsVerbatimArguments docs (Andrew Stucki) [#16299](https://github.com/nodejs/node/pull/16299) +* [[`1771bb5039`](https://github.com/nodejs/node/commit/1771bb5039)] - **doc**: fix Changelog link order (Gibson Fahnestock) [#16632](https://github.com/nodejs/node/pull/16632) +* [[`6ee28b2823`](https://github.com/nodejs/node/commit/6ee28b2823)] - **doc**: util.isDeepStrictEqual returns boolean (Lucas Azzola) [#16653](https://github.com/nodejs/node/pull/16653) +* [[`59a4789eee`](https://github.com/nodejs/node/commit/59a4789eee)] - **doc**: howto decode buffers extending from Writable (dicearr) [#16403](https://github.com/nodejs/node/pull/16403) +* [[`d733dd9468`](https://github.com/nodejs/node/commit/d733dd9468)] - **doc**: add *-inl.h include rule to C++ style guide (Joyee Cheung) [#16548](https://github.com/nodejs/node/pull/16548) +* [[`1cef9ef1de`](https://github.com/nodejs/node/commit/1cef9ef1de)] - **doc**: make default values and periods consistent (Matej Krajčovič) [#16563](https://github.com/nodejs/node/pull/16563) +* [[`77f0359708`](https://github.com/nodejs/node/commit/77f0359708)] - **http**: use 'connect' event only if socket is connecting (Luigi Pinca) [#16725](https://github.com/nodejs/node/pull/16725) +* [[`9c39d79908`](https://github.com/nodejs/node/commit/9c39d79908)] - **http**: use arrow fns for lexical `this` in Agent (Bryan English) [#16475](https://github.com/nodejs/node/pull/16475) +* [[`1b090c9b66`](https://github.com/nodejs/node/commit/1b090c9b66)] - **http, http2**: add 103 Early Hints status code (Yosuke Furukawa) [#16644](https://github.com/nodejs/node/pull/16644) +* [[`d6d461003f`](https://github.com/nodejs/node/commit/d6d461003f)] - **http, tls**: better support for IPv6 addresses (Mattias Holmlund) [#14772](https://github.com/nodejs/node/pull/14772) +* [[`762a11fab3`](https://github.com/nodejs/node/commit/762a11fab3)] - **http2**: improve errors thrown in header validation (Joyee Cheung) [#16718](https://github.com/nodejs/node/pull/16718) +* [[`72d0e7e70b`](https://github.com/nodejs/node/commit/72d0e7e70b)] - **http2**: refactor multiple internals (James M Snell) [#16676](https://github.com/nodejs/node/pull/16676) +* [[`e3283c71ce`](https://github.com/nodejs/node/commit/e3283c71ce)] - **http2**: allocate on every chunk send (James M Snell) [#16669](https://github.com/nodejs/node/pull/16669) +* [[`dfe56847ac`](https://github.com/nodejs/node/commit/dfe56847ac)] - **http2**: refactor settings handling (James M Snell) [#16668](https://github.com/nodejs/node/pull/16668) +* [[`bf7dc38ae4`](https://github.com/nodejs/node/commit/bf7dc38ae4)] - **http2**: make sessions garbage-collectible (Anna Henningsen) [#16461](https://github.com/nodejs/node/pull/16461) +* [[`3f529620cc`](https://github.com/nodejs/node/commit/3f529620cc)] - **http2**: remove unused assignment (Anna Henningsen) [#16461](https://github.com/nodejs/node/pull/16461) +* [[`b50c33470e`](https://github.com/nodejs/node/commit/b50c33470e)] - **http2**: track async state for sending (Anna Henningsen) [#16461](https://github.com/nodejs/node/pull/16461) +* [[`224ea159ae`](https://github.com/nodejs/node/commit/224ea159ae)] - **http2**: move uv_prepare handle to `Http2Session` (Anna Henningsen) [#16461](https://github.com/nodejs/node/pull/16461) +* [[`6074c8cdbb`](https://github.com/nodejs/node/commit/6074c8cdbb)] - **inspector**: include node_platform.h header (Alexey Kuzmin) [#16677](https://github.com/nodejs/node/pull/16677) +* [[`e0c7b3d13f`](https://github.com/nodejs/node/commit/e0c7b3d13f)] - **lib**: shuffle v8_prof_polyfill.js for unit testing (Ben Noordhuis) [#16769](https://github.com/nodejs/node/pull/16769) +* [[`c14030ec7a`](https://github.com/nodejs/node/commit/c14030ec7a)] - **lib**: fix version check in tick processor (Ben Noordhuis) [#16769](https://github.com/nodejs/node/pull/16769) +* [[`a0b94f4e12`](https://github.com/nodejs/node/commit/a0b94f4e12)] - **lib**: refactor ES module loader for readability (Anna Henningsen) [#16579](https://github.com/nodejs/node/pull/16579) +* [[`083a6e3830`](https://github.com/nodejs/node/commit/083a6e3830)] - **openssl**: fix keypress requirement in apps on win32 (Shigeki Ohtsu) [iojs/io.js#1389](https://github.com/iojs/io.js/pull/1389) +* [[`05f90478fc`](https://github.com/nodejs/node/commit/05f90478fc)] - **repl**: avoid crashing from null and undefined errors (cPhost) [#16574](https://github.com/nodejs/node/pull/16574) +* [[`da66610798`](https://github.com/nodejs/node/commit/da66610798)] - **src**: fix -Winconsistent-missing-override warning (Ben Noordhuis) [#16726](https://github.com/nodejs/node/pull/16726) +* [[`6a2cb124e3`](https://github.com/nodejs/node/commit/6a2cb124e3)] - **src**: clean up uv_fs_t's in module_wrap.cc (cjihrig) [#16722](https://github.com/nodejs/node/pull/16722) +* [[`8a2b4ee7bb`](https://github.com/nodejs/node/commit/8a2b4ee7bb)] - **src**: remove unnecessary call to SetHiddenPrototype (Toon Verwaest) [#16554](https://github.com/nodejs/node/pull/16554) +* [[`a87f846cc1`](https://github.com/nodejs/node/commit/a87f846cc1)] - **src**: add method to compute storage in WriteWrap (Anna Henningsen) [#16727](https://github.com/nodejs/node/pull/16727) +* [[`a814786a06`](https://github.com/nodejs/node/commit/a814786a06)] - **src**: improve module loader readability (Anna Henningsen) [#16536](https://github.com/nodejs/node/pull/16536) +* [[`c40b3c6d2a`](https://github.com/nodejs/node/commit/c40b3c6d2a)] - **src**: add 'dynamic' process.release.lts property (Rod Vagg) [#16656](https://github.com/nodejs/node/pull/16656) +* [[`f3a65a85d9`](https://github.com/nodejs/node/commit/f3a65a85d9)] - **src**: pass context to Get() operations for cares_wrap (Evan Lucas) [#16641](https://github.com/nodejs/node/pull/16641) +* [[`4f8765d4c8`](https://github.com/nodejs/node/commit/4f8765d4c8)] - **src**: remove unused includes in string_bytes.h (Daniel Bevenius) [#16606](https://github.com/nodejs/node/pull/16606) +* [[`c4736cfcba`](https://github.com/nodejs/node/commit/c4736cfcba)] - **src**: fix etw provider include on Windows (Joyee Cheung) [#16639](https://github.com/nodejs/node/pull/16639) +* [[`f31b796175`](https://github.com/nodejs/node/commit/f31b796175)] - **src**: add `InternalCallbackScope` util constructor (Anna Henningsen) [#16461](https://github.com/nodejs/node/pull/16461) +* [[`97fd6df920`](https://github.com/nodejs/node/commit/97fd6df920)] - **src**: do not include x.h if x-inl.h is included (Joyee Cheung) [#16548](https://github.com/nodejs/node/pull/16548) +* [[`2294ba49be`](https://github.com/nodejs/node/commit/2294ba49be)] - **test**: tick processor version check regression test (Ben Noordhuis) [#16769](https://github.com/nodejs/node/pull/16769) +* [[`b44157378a`](https://github.com/nodejs/node/commit/b44157378a)] - **test**: use default assertion message (jonask) [#16819](https://github.com/nodejs/node/pull/16819) +* [[`a409b874d9`](https://github.com/nodejs/node/commit/a409b874d9)] - **test**: improve message in test-fs-readfile-pipe-large (fjau) [#16840](https://github.com/nodejs/node/pull/16840) +* [[`527dddac2f`](https://github.com/nodejs/node/commit/527dddac2f)] - **test**: remove custom message from assertion (Nicolas Morel) [#16824](https://github.com/nodejs/node/pull/16824) +* [[`a85d6e9be8`](https://github.com/nodejs/node/commit/a85d6e9be8)] - **test**: show incorrect value on test failure (Sean Karson) [#16818](https://github.com/nodejs/node/pull/16818) +* [[`50d505c188`](https://github.com/nodejs/node/commit/50d505c188)] - **test**: include file mode in assert message (Sascha Tandel) [#16815](https://github.com/nodejs/node/pull/16815) +* [[`5f88543778`](https://github.com/nodejs/node/commit/5f88543778)] - **test**: refactor tls test to use fixtres.readSync (Brian O'Connell) [#16816](https://github.com/nodejs/node/pull/16816) +* [[`d054e94fdc`](https://github.com/nodejs/node/commit/d054e94fdc)] - **test**: add detailed message for assertion failure (Attila Gonda) [#16812](https://github.com/nodejs/node/pull/16812) +* [[`6831e42988`](https://github.com/nodejs/node/commit/6831e42988)] - **test**: use fixtures module in test-repl (Maring, Damian Lion) [#16809](https://github.com/nodejs/node/pull/16809) +* [[`ef679803a0`](https://github.com/nodejs/node/commit/ef679803a0)] - **test**: update test to use fixtures.readKey (Dara Hayes) [#16811](https://github.com/nodejs/node/pull/16811) +* [[`219ac4bde6`](https://github.com/nodejs/node/commit/219ac4bde6)] - **test**: fix typos in read-buffer tests (Jimi van der Woning) [#16834](https://github.com/nodejs/node/pull/16834) +* [[`e4b3c00e48`](https://github.com/nodejs/node/commit/e4b3c00e48)] - **test**: replace fixturesDir with usage of fixtures module (Octavian Ionescu) [#16810](https://github.com/nodejs/node/pull/16810) +* [[`021ccb4011`](https://github.com/nodejs/node/commit/021ccb4011)] - **test**: use default assertion messages (John Byrne) [#16808](https://github.com/nodejs/node/pull/16808) +* [[`2156828f20`](https://github.com/nodejs/node/commit/2156828f20)] - **test**: clarified assert message for test-require-json.js (Matthias Reis) [#16807](https://github.com/nodejs/node/pull/16807) +* [[`ec1b1108af`](https://github.com/nodejs/node/commit/ec1b1108af)] - **test**: replace common.fixturesDir with fixtures module (Dumitru Glavan) [#16803](https://github.com/nodejs/node/pull/16803) +* [[`700c5e7795`](https://github.com/nodejs/node/commit/700c5e7795)] - **test**: replace common.fixturesDir with fixtures.readSync() (Adri Van Houdt) [#16802](https://github.com/nodejs/node/pull/16802) +* [[`bcd818af2a`](https://github.com/nodejs/node/commit/bcd818af2a)] - **test**: replace `common.fixturesDir` usage (Sascha Tandel) [#16800](https://github.com/nodejs/node/pull/16800) +* [[`f3e63f254c`](https://github.com/nodejs/node/commit/f3e63f254c)] - **test**: update test to use fixtures (Adam Wegrzynek) [#16799](https://github.com/nodejs/node/pull/16799) +* [[`0ab3d37be5`](https://github.com/nodejs/node/commit/0ab3d37be5)] - **test**: refactor exitedAfterDisconnect test (Rich Trott) [#16729](https://github.com/nodejs/node/pull/16729) +* [[`26f1a1d9e9`](https://github.com/nodejs/node/commit/26f1a1d9e9)] - **test**: fix test-cli-node-options on Windows (Anna Henningsen) [#16709](https://github.com/nodejs/node/pull/16709) +* [[`fc58c5231f`](https://github.com/nodejs/node/commit/fc58c5231f)] - **test**: fix malformed parallel.status line (Rich Trott) [#16702](https://github.com/nodejs/node/pull/16702) +* [[`689c9d401e`](https://github.com/nodejs/node/commit/689c9d401e)] - **test**: mark test-async-wrap-uncaughtexception as flaky (Refael Ackermann) [#16694](https://github.com/nodejs/node/pull/16694) +* [[`0b337cbee8`](https://github.com/nodejs/node/commit/0b337cbee8)] - **test**: fix flaky test-http2-server-rst-stream.js (Anatoli Papirovski) [#16690](https://github.com/nodejs/node/pull/16690) +* [[`5077faffaa`](https://github.com/nodejs/node/commit/5077faffaa)] - **test**: pause child until parent is ready (jBarz) [#15774](https://github.com/nodejs/node/pull/15774) +* [[`d178c6dc91`](https://github.com/nodejs/node/commit/d178c6dc91)] - **test**: update process-release for Node 8 Carbon (Jeremiah Senkpiel) [#16656](https://github.com/nodejs/node/pull/16656) +* [[`ffe4d7b468`](https://github.com/nodejs/node/commit/ffe4d7b468)] - **test**: increase coverage for ModuleMap (Rob Paton) [#16045](https://github.com/nodejs/node/pull/16045) +* [[`f9b2099d51`](https://github.com/nodejs/node/commit/f9b2099d51)] - **test**: use fixtures module in test-https-pfx (Ken Takagi) [#15895](https://github.com/nodejs/node/pull/15895) +* [[`6998591be7`](https://github.com/nodejs/node/commit/6998591be7)] - **test,net**: remove scatological terminology (Rich Trott) [#16599](https://github.com/nodejs/node/pull/16599) +* [[`87b4e3ed49`](https://github.com/nodejs/node/commit/87b4e3ed49)] - **tls**: accept array of protocols in TLSSocket (Mark S. Everitt) [#16655](https://github.com/nodejs/node/pull/16655) +* [[`e9396d28b1`](https://github.com/nodejs/node/commit/e9396d28b1)] - **tools**: remove unneeded parentheses in doc/html.js (Vse Mozhet Byt) [#16845](https://github.com/nodejs/node/pull/16845) +* [[`6e22dc817f`](https://github.com/nodejs/node/commit/6e22dc817f)] - **tools**: replace string concatenation with template literals (Kevin Yu) [#16804](https://github.com/nodejs/node/pull/16804) +* [[`e781d93bd0`](https://github.com/nodejs/node/commit/e781d93bd0)] - **tools**: replace string concatenation with template literals (Giovanni Lela) [#16806](https://github.com/nodejs/node/pull/16806) +* [[`422d3158ee`](https://github.com/nodejs/node/commit/422d3158ee)] - **tools**: replace string concetation with templates (Patrick Heneise) [#16801](https://github.com/nodejs/node/pull/16801) +* [[`fa5a8419c7`](https://github.com/nodejs/node/commit/fa5a8419c7)] - **tools**: update to ESLint 4.10.0 (cjihrig) [#16738](https://github.com/nodejs/node/pull/16738) +* [[`326a048a5c`](https://github.com/nodejs/node/commit/326a048a5c)] - **tools**: add fixer for no-let-in-for-declaration (Weijia Wang) [#16642](https://github.com/nodejs/node/pull/16642) +* [[`d6a0ffe367`](https://github.com/nodejs/node/commit/d6a0ffe367)] - **zlib**: warn before crash on invalid internals usage (Anna Henningsen) [#16657](https://github.com/nodejs/node/pull/16657) + ## 2017-10-31, Version 9.0.0 (Current), @jasnell