From 19df1cf07084572f2300677f9159bf54401de218 Mon Sep 17 00:00:00 2001 From: Felix Rieseberg Date: Thu, 23 Nov 2017 13:41:14 -0800 Subject: [PATCH 1/8] :package: Upgrade to StandardJS 10 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 14c3ba9421db..acf290904f64 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "remark-cli": "^4.0.0", "remark-preset-lint-markdown-style-guide": "^2.1.1", "request": "^2.68.0", - "standard": "^8.4.0", + "standard": "^10.0.0", "standard-markdown": "^4.0.0", "sumchecker": "^2.0.2", "temp": "^0.8.3" From 451a44c4b5c9156063e1dac60d01722f0e7136b7 Mon Sep 17 00:00:00 2001 From: Felix Rieseberg Date: Thu, 23 Nov 2017 13:41:47 -0800 Subject: [PATCH 2/8] =?UTF-8?q?:wrench:=20Don=E2=80=99t=20use=20deprecated?= =?UTF-8?q?=20`new=20Buffer()`?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/common/asar.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/lib/common/asar.js b/lib/common/asar.js index e35efc279958..6eaddebf2618 100644 --- a/lib/common/asar.js +++ b/lib/common/asar.js @@ -482,7 +482,7 @@ } if (info.size === 0) { return process.nextTick(function () { - callback(null, encoding ? '' : new Buffer(0)) + callback(null, encoding ? '' : Buffer.alloc(0)) }) } if (info.unpacked) { @@ -490,7 +490,7 @@ return fs.readFile(realPath, options, callback) } - const buffer = new Buffer(info.size) + const buffer = Buffer.alloc(info.size) const fd = archive.getFd() if (!(fd >= 0)) { return notFoundError(asarPath, filePath, callback) @@ -519,7 +519,7 @@ if (options) { return '' } else { - return new Buffer(0) + return Buffer.alloc(0) } } if (info.unpacked) { @@ -538,7 +538,7 @@ throw new TypeError('Bad arguments') } const {encoding} = options - const buffer = new Buffer(info.size) + const buffer = Buffer.alloc(info.size) const fd = archive.getFd() if (!(fd >= 0)) { notFoundError(asarPath, filePath) @@ -611,7 +611,7 @@ encoding: 'utf8' }) } - const buffer = new Buffer(info.size) + const buffer = Buffer.alloc(info.size) const fd = archive.getFd() if (!(fd >= 0)) { return From d0ef834b4fd87e7613ff7669e45b1c4d19b7e3ce Mon Sep 17 00:00:00 2001 From: Felix Rieseberg Date: Thu, 23 Nov 2017 13:42:09 -0800 Subject: [PATCH 3/8] :wrench: Remove redundant `await` statements --- script/merge-release.js | 10 +++++----- script/release.js | 6 +++--- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/script/merge-release.js b/script/merge-release.js index 60ac3acb244c..8917da4f2f23 100755 --- a/script/merge-release.js +++ b/script/merge-release.js @@ -31,7 +31,7 @@ async function checkoutBranch (branchName) { console.log(`Checking out ${branchName}.`) let errorMessage = `Error checking out branch ${branchName}:` let successMessage = `Successfully checked out branch ${branchName}.` - return await callGit(['checkout', branchName], errorMessage, successMessage) + return callGit(['checkout', branchName], errorMessage, successMessage) } async function commitMerge () { @@ -39,7 +39,7 @@ async function commitMerge () { let errorMessage = `Error committing merge:` let successMessage = `Successfully committed the merge for v${pkg.version}` let gitArgs = ['commit', '-m', `v${pkg.version}`] - return await callGit(gitArgs, errorMessage, successMessage) + return callGit(gitArgs, errorMessage, successMessage) } async function mergeReleaseIntoBranch (branchName) { @@ -67,14 +67,14 @@ async function pushBranch (branchName) { let pushArgs = ['push', 'origin', branchName] let errorMessage = `Could not push branch ${branchName} due to an error:` let successMessage = `Successfully pushed branch ${branchName}.` - return await callGit(pushArgs, errorMessage, successMessage) + return callGit(pushArgs, errorMessage, successMessage) } async function pull () { console.log(`Performing a git pull`) let errorMessage = `Could not pull due to an error:` let successMessage = `Successfully performed a git pull` - return await callGit(['pull'], errorMessage, successMessage) + return callGit(['pull'], errorMessage, successMessage) } async function rebase (targetBranch) { @@ -82,7 +82,7 @@ async function rebase (targetBranch) { let errorMessage = `Could not rebase due to an error:` let successMessage = `Successfully rebased release branch from ` + `${targetBranch}` - return await callGit(['rebase', targetBranch], errorMessage, successMessage) + return callGit(['rebase', targetBranch], errorMessage, successMessage) } async function mergeRelease () { diff --git a/script/release.js b/script/release.js index 42c55b5cee3b..5b62d529bd09 100755 --- a/script/release.js +++ b/script/release.js @@ -213,7 +213,7 @@ async function uploadShasumFile (filePath, fileName, release) { filePath, name: fileName } - return await github.repos.uploadAsset(githubOpts) + return github.repos.uploadAsset(githubOpts) .catch(err => { console.log(`${fail} Error uploading ${filePath} to GitHub:`, err) process.exit(1) @@ -248,7 +248,7 @@ async function publishRelease (release) { tag_name: release.tag_name, draft: false } - return await github.repos.editRelease(githubOpts) + return github.repos.editRelease(githubOpts) .catch(err => { console.log(`${fail} Error publishing release:`, err) process.exit(1) @@ -445,7 +445,7 @@ async function cleanupReleaseBranch () { await callGit(['branch', '-D', 'release'], errorMessage, successMessage) errorMessage = `Could not delete remote release branch.` successMessage = `Successfully deleted remote release branch.` - return await callGit(['push', 'origin', ':release'], errorMessage, successMessage) + return callGit(['push', 'origin', ':release'], errorMessage, successMessage) } async function callGit (args, errorMessage, successMessage) { From 97a084a591e2589f3599bd0a58a8e33e2c4e57d6 Mon Sep 17 00:00:00 2001 From: Felix Rieseberg Date: Thu, 23 Nov 2017 13:42:31 -0800 Subject: [PATCH 4/8] :wrench: Script: Reject with error --- script/ci-release-build.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/script/ci-release-build.js b/script/ci-release-build.js index 27461f95a47d..275ef98e9e38 100644 --- a/script/ci-release-build.js +++ b/script/ci-release-build.js @@ -31,7 +31,7 @@ async function makeRequest (requestOptions, parseResponse) { } else { console.log('Error: ', `(status ${res.statusCode})`, err || res.body, requestOptions) } - reject() + reject(err) } }) }) From f81bfb7b86589d7f199a44013c0279077adc2d49 Mon Sep 17 00:00:00 2001 From: Felix Rieseberg Date: Thu, 23 Nov 2017 13:42:48 -0800 Subject: [PATCH 5/8] :wrench: Fix style issues --- default_app/main.js | 1 - lib/browser/api/auto-updater/squirrel-update-win.js | 6 +++--- lib/browser/api/net.js | 3 --- lib/browser/api/web-contents.js | 1 + 4 files changed, 4 insertions(+), 7 deletions(-) diff --git a/default_app/main.js b/default_app/main.js index ce77a15362d3..7fdfc7c3fa36 100644 --- a/default_app/main.js +++ b/default_app/main.js @@ -306,7 +306,6 @@ function startRepl () { if (process.platform === 'win32') { console.error('Electron REPL not currently supported on Windows') process.exit(1) - return } const repl = require('repl') diff --git a/lib/browser/api/auto-updater/squirrel-update-win.js b/lib/browser/api/auto-updater/squirrel-update-win.js index 60345f1a1abe..d82577bcf483 100644 --- a/lib/browser/api/auto-updater/squirrel-update-win.js +++ b/lib/browser/api/auto-updater/squirrel-update-win.js @@ -28,7 +28,7 @@ var spawnUpdate = function (args, detached, callback) { // Process spawned, different args: Return with error // No process spawned: Spawn new process if (spawnedProcess && !isSameArgs(args)) { - return callback('AutoUpdater process with arguments ' + args + ' is already running') + return callback(`AutoUpdater process with arguments ${args} is already running`) } else if (!spawnedProcess) { spawnedProcess = spawn(updateExe, args, { detached: detached @@ -68,7 +68,7 @@ var spawnUpdate = function (args, detached, callback) { // Process terminated with error. if (code !== 0) { - return callback('Command failed: ' + (signal != null ? signal : code) + '\n' + stderr) + return callback(`Command failed: ${signal != null ? signal : code}\n${stderr}`) } // Success. @@ -93,7 +93,7 @@ exports.checkForUpdate = function (updateURL, callback) { json = stdout.trim().split('\n').pop() update = (ref = JSON.parse(json)) != null ? (ref1 = ref.releasesToApply) != null ? typeof ref1.pop === 'function' ? ref1.pop() : void 0 : void 0 : void 0 } catch (jsonError) { - return callback('Invalid result:\n' + stdout) + return callback(`Invalid result:\n${stdout}`) } return callback(null, update) }) diff --git a/lib/browser/api/net.js b/lib/browser/api/net.js index d588e238d43a..54ef99d407ff 100644 --- a/lib/browser/api/net.js +++ b/lib/browser/api/net.js @@ -79,7 +79,6 @@ class IncomingMessage extends Readable { this.shouldPush = true this._pushInternalData() } - } URLRequest.prototype._emitRequestEvent = function (isAsync, ...rest) { @@ -103,7 +102,6 @@ URLRequest.prototype._emitResponseEvent = function (isAsync, ...rest) { } class ClientRequest extends EventEmitter { - constructor (options, callback) { super() @@ -354,7 +352,6 @@ class ClientRequest extends EventEmitter { abort () { this.urlRequest.cancel() } - } function writeAfterEndNT (self, error, callback) { diff --git a/lib/browser/api/web-contents.js b/lib/browser/api/web-contents.js index 61b37f773317..f770dbb31b3c 100644 --- a/lib/browser/api/web-contents.js +++ b/lib/browser/api/web-contents.js @@ -6,6 +6,7 @@ const {app, ipcMain, session, NavigationController} = electron // session is not used here, the purpose is to make sure session is initalized // before the webContents module. +// eslint-disable-next-line session let nextId = 0 From f7d6e3fa7bb703e00410ce729661a91f02e97b0b Mon Sep 17 00:00:00 2001 From: Felix Rieseberg Date: Thu, 23 Nov 2017 13:53:03 -0800 Subject: [PATCH 6/8] :wrench: Disable standard/no-callback-literal where necessary --- lib/browser/api/auto-updater/squirrel-update-win.js | 6 ++++++ lib/browser/api/session.js | 2 ++ lib/browser/chrome-extension.js | 4 ++++ lib/common/asar.js | 2 ++ lib/renderer/chrome-api.js | 2 ++ lib/renderer/extensions/storage.js | 5 +++++ 6 files changed, 21 insertions(+) diff --git a/lib/browser/api/auto-updater/squirrel-update-win.js b/lib/browser/api/auto-updater/squirrel-update-win.js index d82577bcf483..b0813d1fcdda 100644 --- a/lib/browser/api/auto-updater/squirrel-update-win.js +++ b/lib/browser/api/auto-updater/squirrel-update-win.js @@ -28,6 +28,8 @@ var spawnUpdate = function (args, detached, callback) { // Process spawned, different args: Return with error // No process spawned: Spawn new process if (spawnedProcess && !isSameArgs(args)) { + // Disabled for backwards compatibility: + // eslint-disable-next-line standard/no-callback-literal return callback(`AutoUpdater process with arguments ${args} is already running`) } else if (!spawnedProcess) { spawnedProcess = spawn(updateExe, args, { @@ -68,6 +70,8 @@ var spawnUpdate = function (args, detached, callback) { // Process terminated with error. if (code !== 0) { + // Disabled for backwards compatibility: + // eslint-disable-next-line standard/no-callback-literal return callback(`Command failed: ${signal != null ? signal : code}\n${stderr}`) } @@ -93,6 +97,8 @@ exports.checkForUpdate = function (updateURL, callback) { json = stdout.trim().split('\n').pop() update = (ref = JSON.parse(json)) != null ? (ref1 = ref.releasesToApply) != null ? typeof ref1.pop === 'function' ? ref1.pop() : void 0 : void 0 : void 0 } catch (jsonError) { + // Disabled for backwards compatibility: + // eslint-disable-next-line standard/no-callback-literal return callback(`Invalid result:\n${stdout}`) } return callback(null, update) diff --git a/lib/browser/api/session.js b/lib/browser/api/session.js index 33f3b47dee0e..6c103d25d623 100644 --- a/lib/browser/api/session.js +++ b/lib/browser/api/session.js @@ -26,6 +26,8 @@ Session.prototype.setCertificateVerifyProc = function (verifyProc) { // TODO(kevinsawicki): Remove in 2.0, deprecate before then with warnings this._setCertificateVerifyProc(({hostname, certificate, verificationResult}, cb) => { verifyProc(hostname, certificate, (result) => { + // Disabled due to false positive in StandardJS + // eslint-disable-next-line standard/no-callback-literal cb(result ? 0 : -2) }) }) diff --git a/lib/browser/chrome-extension.js b/lib/browser/chrome-extension.js index 868e07e96096..af88438d33dd 100644 --- a/lib/browser/chrome-extension.js +++ b/lib/browser/chrome-extension.js @@ -311,6 +311,8 @@ const chromeExtensionHandler = function (request, callback) { const page = backgroundPages[parsed.hostname] if (page && parsed.path === `/${page.name}`) { + // Disabled due to false positive in StandardJS + // eslint-disable-next-line standard/no-callback-literal return callback({ mimeType: 'text/html', data: page.html @@ -319,6 +321,8 @@ const chromeExtensionHandler = function (request, callback) { fs.readFile(path.join(manifest.srcDirectory, parsed.path), function (err, content) { if (err) { + // Disabled due to false positive in StandardJS + // eslint-disable-next-line standard/no-callback-literal return callback(-6) // FILE_NOT_FOUND } else { return callback(content) diff --git a/lib/common/asar.js b/lib/common/asar.js index 6eaddebf2618..1b9a993a2e67 100644 --- a/lib/common/asar.js +++ b/lib/common/asar.js @@ -367,6 +367,8 @@ return invalidArchiveError(asarPath, callback) } process.nextTick(function () { + // Disabled due to false positive in StandardJS + // eslint-disable-next-line standard/no-callback-literal callback(archive.stat(filePath) !== false) }) } diff --git a/lib/renderer/chrome-api.js b/lib/renderer/chrome-api.js index 1b509178f49e..07b940675b30 100644 --- a/lib/renderer/chrome-api.js +++ b/lib/renderer/chrome-api.js @@ -147,6 +147,8 @@ exports.injectTo = function (extensionId, isBackgroundPage, context) { executeScript (tabId, details, callback) { const requestId = ++nextId ipcRenderer.once(`CHROME_TABS_EXECUTESCRIPT_RESULT_${requestId}`, (event, result) => { + // Disabled due to false positive in StandardJS + // eslint-disable-next-line standard/no-callback-literal callback([event.result]) }) ipcRenderer.send('CHROME_TABS_EXECUTESCRIPT', requestId, tabId, extensionId, details) diff --git a/lib/renderer/extensions/storage.js b/lib/renderer/extensions/storage.js index 2920a2860e03..f2a560f81c2c 100644 --- a/lib/renderer/extensions/storage.js +++ b/lib/renderer/extensions/storage.js @@ -51,6 +51,8 @@ const getStorage = (storageType, extensionId, cb) => { if (data !== null) { cb(JSON.parse(data)) } else { + // Disabled due to false positive in StandardJS + // eslint-disable-next-line standard/no-callback-literal cb({}) } }) @@ -82,6 +84,9 @@ const getStorageManager = (storageType, extensionId) => { } break } + + // Disabled due to false positive in StandardJS + // eslint-disable-next-line standard/no-callback-literal if (keys.length === 0) return callback({}) let items = {} From 0278e380de36977ec853ec610c192a08dd2a0101 Mon Sep 17 00:00:00 2001 From: Felix Rieseberg Date: Thu, 23 Nov 2017 14:22:31 -0800 Subject: [PATCH 7/8] =?UTF-8?q?:wrench:=20Spec:=20Don=E2=80=99t=20use=20de?= =?UTF-8?q?precated=20`new=20Buffer()`?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- spec/api-browser-window-spec.js | 4 ++-- spec/api-ipc-spec.js | 4 ++-- spec/api-protocol-spec.js | 6 +++--- spec/api-session-spec.js | 4 ++-- spec/asar-spec.js | 6 +++--- spec/node-spec.js | 8 ++++---- 6 files changed, 16 insertions(+), 16 deletions(-) diff --git a/spec/api-browser-window-spec.js b/spec/api-browser-window-spec.js index 2adc82df05d0..066d47d9b708 100644 --- a/spec/api-browser-window-spec.js +++ b/spec/api-browser-window-spec.js @@ -27,7 +27,7 @@ describe('BrowserWindow module', () => { postData = [ { type: 'rawData', - bytes: new Buffer('username=test&file=') + bytes: Buffer.from('username=test&file=') }, { type: 'file', @@ -270,7 +270,7 @@ describe('BrowserWindow module', () => { assert.equal(isMainFrame, true) done() }) - const data = new Buffer(2 * 1024 * 1024).toString('base64') + const data = Buffer.alloc(2 * 1024 * 1024).toString('base64') w.loadURL(`data:image/png;base64,${data}`) }) diff --git a/spec/api-ipc-spec.js b/spec/api-ipc-spec.js index 79f7c0927037..4bb563184ad2 100644 --- a/spec/api-ipc-spec.js +++ b/spec/api-ipc-spec.js @@ -145,7 +145,7 @@ describe('ipc module', () => { describe('remote.createFunctionWithReturnValue', () => { it('should be called in browser synchronously', () => { - const buf = new Buffer('test') + const buf = Buffer.from('test') const call = remote.require(path.join(fixtures, 'module', 'call.js')) const result = call.call(remote.createFunctionWithReturnValue(buf)) assert.equal(result.constructor.name, 'Buffer') @@ -239,7 +239,7 @@ describe('ipc module', () => { const printName = remote.require(print) it('keeps its constructor name for objects', () => { - const buf = new Buffer('test') + const buf = Buffer.from('test') assert.equal(printName.print(buf), 'Buffer') }) diff --git a/spec/api-protocol-spec.js b/spec/api-protocol-spec.js index 2d76d49c6a53..a9d69867157b 100644 --- a/spec/api-protocol-spec.js +++ b/spec/api-protocol-spec.js @@ -28,7 +28,7 @@ describe('protocol module', () => { const body = stream.PassThrough() async function sendChunks () { - let buf = new Buffer(data) + let buf = Buffer.from(data) for (;;) { body.push(buf.slice(0, chunkSize)) buf = buf.slice(chunkSize) @@ -204,7 +204,7 @@ describe('protocol module', () => { }) describe('protocol.registerBufferProtocol', () => { - const buffer = new Buffer(text) + const buffer = Buffer.from(text) it('sends Buffer as response', (done) => { const handler = (request, callback) => callback(buffer) protocol.registerBufferProtocol(protocolName, handler, (error) => { @@ -767,7 +767,7 @@ describe('protocol module', () => { describe('protocol.interceptBufferProtocol', () => { it('can intercept http protocol', (done) => { - const handler = (request, callback) => callback(new Buffer(text)) + const handler = (request, callback) => callback(Buffer.from(text)) protocol.interceptBufferProtocol('http', handler, (error) => { if (error) return done(error) $.ajax({ diff --git a/spec/api-session-spec.js b/spec/api-session-spec.js index 54235a334a54..50504ccadae1 100644 --- a/spec/api-session-spec.js +++ b/spec/api-session-spec.js @@ -242,7 +242,7 @@ describe('session module', () => { }) it('can cancel default download behavior', (done) => { - const mockFile = new Buffer(1024) + const mockFile = Buffer.alloc(1024) const contentDisposition = 'inline; filename="mockFile.txt"' const downloadServer = http.createServer((req, res) => { res.writeHead(200, { @@ -271,7 +271,7 @@ describe('session module', () => { }) describe('DownloadItem', () => { - const mockPDF = new Buffer(1024 * 1024 * 5) + const mockPDF = Buffer.alloc(1024 * 1024 * 5) let contentDisposition = 'inline; filename="mock.pdf"' const downloadFilePath = path.join(fixtures, 'mock.pdf') const downloadServer = http.createServer((req, res) => { diff --git a/spec/asar-spec.js b/spec/asar-spec.js index 31f15ef77284..f87554f32e26 100644 --- a/spec/asar-spec.js +++ b/spec/asar-spec.js @@ -15,7 +15,7 @@ describe('asar package', function () { describe('node api', function () { it('supports paths specified as a Buffer', function () { - var file = new Buffer(path.join(fixtures, 'asar', 'a.asar', 'file1')) + var file = Buffer.from(path.join(fixtures, 'asar', 'a.asar', 'file1')) assert.equal(fs.existsSync(file), true) }) @@ -491,7 +491,7 @@ describe('asar package', function () { file = ref2[j] p = path.join(fixtures, 'asar', 'a.asar', file) fd = fs.openSync(p, 'r') - buffer = new Buffer(6) + buffer = Buffer.alloc(6) fs.readSync(fd, buffer, 0, 6, 0) assert.equal(String(buffer).trim(), 'file1') fs.closeSync(fd) @@ -512,7 +512,7 @@ describe('asar package', function () { var p = path.join(fixtures, 'asar', 'a.asar', 'file1') fs.open(p, 'r', function (err, fd) { assert.equal(err, null) - var buffer = new Buffer(6) + var buffer = Buffer.alloc(6) fs.read(fd, buffer, 0, 6, 0, function (err) { assert.equal(err, null) assert.equal(String(buffer).trim(), 'file1') diff --git a/spec/node-spec.js b/spec/node-spec.js index 57cb31e2b528..ae639167ff07 100644 --- a/spec/node-spec.js +++ b/spec/node-spec.js @@ -274,7 +274,7 @@ describe('node feature', () => { it('can be created from WebKit external string', () => { const p = document.createElement('p') p.innerText = '闲云潭影日悠悠,物换星移几度秋' - const b = new Buffer(p.innerText) + const b = Buffer.from(p.innerText) assert.equal(b.toString(), '闲云潭影日悠悠,物换星移几度秋') assert.equal(Buffer.byteLength(p.innerText), 45) }) @@ -282,15 +282,15 @@ describe('node feature', () => { it('correctly parses external one-byte UTF8 string', () => { const p = document.createElement('p') p.innerText = 'Jøhänñéß' - const b = new Buffer(p.innerText) + const b = Buffer.from(p.innerText) assert.equal(b.toString(), 'Jøhänñéß') assert.equal(Buffer.byteLength(p.innerText), 13) }) it('does not crash when creating large Buffers', () => { - let buffer = new Buffer(new Array(4096).join(' ')) + let buffer = Buffer.from(new Array(4096).join(' ')) assert.equal(buffer.length, 4095) - buffer = new Buffer(new Array(4097).join(' ')) + buffer = Buffer.from(new Array(4097).join(' ')) assert.equal(buffer.length, 4096) }) }) From 9f0df695ca4899ae2e351677dc5a875b80cec585 Mon Sep 17 00:00:00 2001 From: Felix Rieseberg Date: Thu, 23 Nov 2017 14:22:43 -0800 Subject: [PATCH 8/8] :wrench: Spec: Fix style issues --- spec/api-browser-window-spec.js | 6 +++++- spec/api-ipc-spec.js | 1 + spec/api-native-image-spec.js | 2 ++ spec/api-net-spec.js | 11 +++++++++++ spec/api-protocol-spec.js | 3 +++ spec/api-session-spec.js | 3 +++ spec/api-web-contents-spec.js | 5 ++++- spec/api-web-frame-spec.js | 3 +++ spec/api-web-request-spec.js | 3 +++ spec/chromium-spec.js | 3 +++ spec/node-spec.js | 3 ++- spec/static/main.js | 4 ++++ spec/webview-spec.js | 7 +++++-- 13 files changed, 49 insertions(+), 5 deletions(-) diff --git a/spec/api-browser-window-spec.js b/spec/api-browser-window-spec.js index 066d47d9b708..fb7e6bf2755c 100644 --- a/spec/api-browser-window-spec.js +++ b/spec/api-browser-window-spec.js @@ -153,7 +153,7 @@ describe('BrowserWindow module', () => { ] const responseEvent = 'window-webContents-destroyed' - function* genNavigationEvent () { + function * genNavigationEvent () { let eventOptions = null while ((eventOptions = events.shift()) && events.length) { let w = new BrowserWindow({show: false}) @@ -1056,6 +1056,8 @@ describe('BrowserWindow module', () => { // http protocol to simulate accessing another domain. This is required // because the code paths for cross domain popups is different. function crossDomainHandler (request, callback) { + // Disabled due to false positive in StandardJS + // eslint-disable-next-line standard/no-callback-literal callback({ mimeType: 'text/html', data: `

${request.url}

` @@ -3025,6 +3027,8 @@ const isScaleFactorRounding = () => { function serveFileFromProtocol (protocolName, filePath) { return new Promise((resolve, reject) => { protocol.registerBufferProtocol(protocolName, (request, callback) => { + // Disabled due to false positive in StandardJS + // eslint-disable-next-line standard/no-callback-literal callback({ mimeType: 'text/html', data: fs.readFileSync(filePath) diff --git a/spec/api-ipc-spec.js b/spec/api-ipc-spec.js index 4bb563184ad2..b7b233adc3db 100644 --- a/spec/api-ipc-spec.js +++ b/spec/api-ipc-spec.js @@ -195,6 +195,7 @@ describe('ipc module', () => { const foo = remote.require(path.join(fixtures, 'module', 'error-properties.js')) assert.throws(() => { + // eslint-disable-next-line foo.bar }, /getting error/) diff --git a/spec/api-native-image-spec.js b/spec/api-native-image-spec.js index a86bda75af94..c604d3917023 100644 --- a/spec/api-native-image-spec.js +++ b/spec/api-native-image-spec.js @@ -1,5 +1,7 @@ 'use strict' +/* eslint-disable no-unused-expressions */ + const {expect} = require('chai') const {nativeImage} = require('electron') const path = require('path') diff --git a/spec/api-net-spec.js b/spec/api-net-spec.js index 69aa1154ee8e..4f9abfe1a5ff 100644 --- a/spec/api-net-spec.js +++ b/spec/api-net-spec.js @@ -6,6 +6,9 @@ const url = require('url') const {net} = remote const {session} = remote +/* The whole net API doesn't use standard callbacks */ +/* eslint-disable standard/no-callback-literal */ + function randomBuffer (size, start, end) { start = start || 0 end = end || 255 @@ -855,6 +858,8 @@ describe('net module', () => { (details, callback) => { if (details.url === `${server.url}${requestUrl}`) { requestIsIntercepted = true + // Disabled due to false positive in StandardJS + // eslint-disable-next-line standard/no-callback-literal callback({ redirectURL: `${server.url}${redirectUrl}` }) @@ -907,6 +912,8 @@ describe('net module', () => { customSession.webRequest.onBeforeRequest((details, callback) => { if (details.url === `${server.url}${requestUrl}`) { requestIsIntercepted = true + // Disabled due to false positive in StandardJS + // eslint-disable-next-line standard/no-callback-literal callback({ redirectURL: `${server.url}${redirectUrl}` }) @@ -1154,6 +1161,8 @@ describe('net module', () => { url: `${server.url}${requestUrl}`, session: 1 }) + + // eslint-disable-next-line urlRequest } catch (exception) { done() @@ -1223,6 +1232,8 @@ describe('net module', () => { url: `${server.url}${requestUrl}`, partition: 1 }) + + // eslint-disable-next-line urlRequest } catch (exception) { done() diff --git a/spec/api-protocol-spec.js b/spec/api-protocol-spec.js index a9d69867157b..f214bfc6d27f 100644 --- a/spec/api-protocol-spec.js +++ b/spec/api-protocol-spec.js @@ -10,6 +10,9 @@ const {BrowserWindow, ipcMain, protocol, session, webContents} = remote // and use Stream instances created in the browser process. const stream = remote.require('stream') +/* The whole protocol API doesn't use standard callbacks */ +/* eslint-disable standard/no-callback-literal */ + describe('protocol module', () => { const protocolName = 'sp' const text = 'valar morghulis' diff --git a/spec/api-session-spec.js b/spec/api-session-spec.js index 50504ccadae1..cf6296cd448f 100644 --- a/spec/api-session-spec.js +++ b/spec/api-session-spec.js @@ -10,6 +10,9 @@ const {closeWindow} = require('./window-helpers') const {ipcRenderer, remote} = require('electron') const {ipcMain, session, BrowserWindow, net} = remote +/* The whole session API doesn't use standard callbacks */ +/* eslint-disable standard/no-callback-literal */ + describe('session module', () => { let fixtures = path.resolve(__dirname, 'fixtures') let w = null diff --git a/spec/api-web-contents-spec.js b/spec/api-web-contents-spec.js index 39e466d56bce..4e5cc022df7c 100644 --- a/spec/api-web-contents-spec.js +++ b/spec/api-web-contents-spec.js @@ -10,6 +10,9 @@ const {BrowserWindow, webContents, ipcMain, session} = remote const isCi = remote.getGlobal('isCi') +/* The whole webContents API doesn't use standard callbacks */ +/* eslint-disable standard/no-callback-literal */ + describe('webContents module', () => { const fixtures = path.resolve(__dirname, 'fixtures') let w @@ -634,7 +637,7 @@ describe('webContents module', () => { ] const responseEvent = 'webcontents-destroyed' - function* genNavigationEvent () { + function * genNavigationEvent () { let eventOptions = null while ((eventOptions = events.shift()) && events.length) { eventOptions.responseEvent = responseEvent diff --git a/spec/api-web-frame-spec.js b/spec/api-web-frame-spec.js index ce0d0436ec58..a62c075d8e86 100644 --- a/spec/api-web-frame-spec.js +++ b/spec/api-web-frame-spec.js @@ -4,6 +4,9 @@ const {closeWindow} = require('./window-helpers') const {remote, webFrame} = require('electron') const {BrowserWindow, protocol, ipcMain} = remote +/* Most of the APIs here don't use standard callbacks */ +/* eslint-disable standard/no-callback-literal */ + describe('webFrame module', function () { var fixtures = path.resolve(__dirname, 'fixtures') var w = null diff --git a/spec/api-web-request-spec.js b/spec/api-web-request-spec.js index 6ad0550eb7d4..7dc1f370ce86 100644 --- a/spec/api-web-request-spec.js +++ b/spec/api-web-request-spec.js @@ -4,6 +4,9 @@ const qs = require('querystring') const remote = require('electron').remote const session = remote.session +/* The whole webRequest API doesn't use standard callbacks */ +/* eslint-disable standard/no-callback-literal */ + describe('webRequest module', () => { const ses = session.defaultSession const server = http.createServer((req, res) => { diff --git a/spec/chromium-spec.js b/spec/chromium-spec.js index 1420fed7c6a7..f068ef75f12d 100644 --- a/spec/chromium-spec.js +++ b/spec/chromium-spec.js @@ -11,6 +11,9 @@ const {app, BrowserWindow, ipcMain, protocol, session, webContents} = remote const isCI = remote.getGlobal('isCi') +/* Most of the APIs here don't use standard callbacks */ +/* eslint-disable standard/no-callback-literal */ + describe('chromium feature', () => { const fixtures = path.resolve(__dirname, 'fixtures') let listener = null diff --git a/spec/node-spec.js b/spec/node-spec.js index ae639167ff07..6f2390e93eab 100644 --- a/spec/node-spec.js +++ b/spec/node-spec.js @@ -298,6 +298,7 @@ describe('node feature', () => { describe('process.stdout', () => { it('does not throw an exception when accessed', () => { assert.doesNotThrow(() => { + // eslint-disable-next-line process.stdout }) }) @@ -332,7 +333,7 @@ describe('node feature', () => { describe('process.stdin', () => { it('does not throw an exception when accessed', () => { assert.doesNotThrow(() => { - process.stdin + process.stdin // eslint-disable-line }) }) diff --git a/spec/static/main.js b/spec/static/main.js index 4a4dfd109df3..80c8e716c678 100644 --- a/spec/static/main.js +++ b/spec/static/main.js @@ -32,9 +32,11 @@ app.commandLine.appendSwitch('disable-renderer-backgrounding') // Accessing stdout in the main process will result in the process.stdout // throwing UnknownSystemError in renderer process sometimes. This line makes // sure we can reproduce it in renderer process. +// eslint-disable-next-line process.stdout // Access console to reproduce #3482. +// eslint-disable-next-line console ipcMain.on('message', function (event, ...args) { @@ -378,6 +380,8 @@ const suspendListeners = (emitter, eventName, callback) => { listeners.forEach((listener) => { emitter.on(eventName, listener) }) + + // eslint-disable-next-line standard/no-callback-literal callback(...args) }) } diff --git a/spec/webview-spec.js b/spec/webview-spec.js index 0ce043069f24..4ac8136b81fc 100644 --- a/spec/webview-spec.js +++ b/spec/webview-spec.js @@ -9,6 +9,9 @@ const {closeWindow} = require('./window-helpers') const isCI = remote.getGlobal('isCi') const nativeModulesEnabled = remote.getGlobal('nativeModulesEnabled') +/* Most of the APIs here don't use standard callbacks */ +/* eslint-disable standard/no-callback-literal */ + describe(' tag', function () { this.timeout(3 * 60 * 1000) @@ -1423,7 +1426,7 @@ describe(' tag', function () { }) webview.style.display = 'none' - webview.offsetHeight + webview.offsetHeight // eslint-disable-line webview.style.display = 'block' }) webview.src = `file://${fixtures}/pages/a.html` @@ -1442,7 +1445,7 @@ describe(' tag', function () { }) webview.style.display = 'none' - webview.offsetHeight + webview.offsetHeight // eslint-disable-line webview.style.display = 'block' }) webview.src = `file://${fixtures}/pages/a.html`