From 73bf2d68efc363810209bb3c35768793b1e40ecb Mon Sep 17 00:00:00 2001 From: Andrew Clark Date: Fri, 13 Nov 2020 13:00:45 -0600 Subject: [PATCH] Pass extra CLI args through to ESLint (#20250) These now work: ``` yarn run lint --fix yarn run linc --fix ``` --- scripts/eslint/index.js | 5 +++-- scripts/tasks/eslint.js | 4 +++- scripts/tasks/linc.js | 4 +++- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/scripts/eslint/index.js b/scripts/eslint/index.js index d9acaf913e..4a8f186872 100644 --- a/scripts/eslint/index.js +++ b/scripts/eslint/index.js @@ -64,13 +64,14 @@ function intersect(files, patterns) { return [...new Set(intersection)]; } -function runESLint({onlyChanged}) { +function runESLint({onlyChanged, ...options}) { if (typeof onlyChanged !== 'boolean') { throw new Error('Pass options.onlyChanged as a boolean.'); } const {errorCount, warningCount, output} = runESLintOnFilesWithOptions( allPaths, - onlyChanged + onlyChanged, + options ); console.log(output); return errorCount === 0 && warningCount === 0; diff --git a/scripts/tasks/eslint.js b/scripts/tasks/eslint.js index 9b7e9f8b90..aa01f41dd1 100644 --- a/scripts/tasks/eslint.js +++ b/scripts/tasks/eslint.js @@ -7,6 +7,7 @@ 'use strict'; +const minimist = require('minimist'); const runESLint = require('../eslint'); console.log('Linting all files...'); @@ -15,7 +16,8 @@ if (!process.env.CI) { console.log('Hint: run `yarn linc` to only lint changed files.'); } -if (runESLint({onlyChanged: false})) { +const cliOptions = minimist(process.argv.slice(2)); +if (runESLint({onlyChanged: false, ...cliOptions})) { console.log('Lint passed.'); } else { console.log('Lint failed.'); diff --git a/scripts/tasks/linc.js b/scripts/tasks/linc.js index ddd725b2a3..282926399b 100644 --- a/scripts/tasks/linc.js +++ b/scripts/tasks/linc.js @@ -7,11 +7,13 @@ 'use strict'; +const minimist = require('minimist'); const runESLint = require('../eslint'); console.log('Linting changed files...'); -if (runESLint({onlyChanged: true})) { +const cliOptions = minimist(process.argv.slice(2)); +if (runESLint({onlyChanged: true, ...cliOptions})) { console.log('Lint passed for changed files.'); } else { console.log('Lint failed for changed files.');