diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 692d6b83a9408..109d0b7c32bce 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -39,7 +39,8 @@ jobs: - run: npm ci - name: Tests - run: npm run test -- --bundle=${{ matrix.bundle }} + # run tests, but lint separately + run: npm run test -- --no-lint --bundle=${{ matrix.bundle }} lint: runs-on: ubuntu-latest diff --git a/Herebyfile.mjs b/Herebyfile.mjs index 2ac34dfde47b5..f3a53ee44c86e 100644 --- a/Herebyfile.mjs +++ b/Herebyfile.mjs @@ -702,12 +702,19 @@ export const runTestsAndWatch = task({ }, }); -export const runTestsParallel = task({ - name: "runtests-parallel", +const doRunTestsParallel = task({ + name: "do-runtests-parallel", description: "Runs all the tests in parallel using the built run.js file.", dependencies: runtestsDeps, run: () => runConsoleTests(testRunner, "min", /*runInParallel*/ cmdLineOptions.workers > 1), }); + +export const runTestsParallel = task({ + name: "runtests-parallel", + description: "Runs all the tests in parallel using the built run.js file, linting in parallel if --lint=true.", + dependencies: [doRunTestsParallel].concat(cmdLineOptions.lint ? [lint] : []), +}); + // task("runtests-parallel").flags = { // " --light": "Run tests in light mode (fewer verifications, but tests run faster).", // " --keepFailed": "Keep tests in .failed-tests even if they pass.", diff --git a/scripts/build/options.mjs b/scripts/build/options.mjs index 8c354552b10f9..43afde3db37be 100644 --- a/scripts/build/options.mjs +++ b/scripts/build/options.mjs @@ -4,7 +4,7 @@ import os from "os"; const ci = ["1", "true"].includes(process.env.CI ?? ""); const parsed = minimist(process.argv.slice(2), { - boolean: ["dirty", "light", "colors", "lkg", "soft", "fix", "failed", "keepFailed", "force", "built", "ci", "bundle", "typecheck"], + boolean: ["dirty", "light", "colors", "lkg", "soft", "fix", "failed", "keepFailed", "force", "built", "ci", "bundle", "typecheck", "lint"], string: ["browser", "tests", "break", "host", "reporter", "stackTraceLimit", "timeout", "shards", "shardId"], alias: { /* eslint-disable quote-props */ @@ -41,6 +41,7 @@ const parsed = minimist(process.argv.slice(2), { ci, bundle: true, typecheck: true, + lint: true, } }); @@ -86,5 +87,6 @@ export default options; * @property {string} break * @property {boolean} bundle * @property {boolean} typecheck + * @property {boolean} lint */ void 0;