diff --git a/.github/check-sarif/action.yml b/.github/check-sarif/action.yml new file mode 100644 index 0000000000..ea540ec7c5 --- /dev/null +++ b/.github/check-sarif/action.yml @@ -0,0 +1,20 @@ +name: Check SARIF +description: Checks a SARIF file to see if certain queries were run and others were not run. +inputs: + sarif-file: + required: true + description: The SARIF file to check + + queries-run: + required: true + description: | + Comma separated list of query ids that should be included in this SARIF file. + + queries-not-run: + required: true + description: | + Comma separated list of query ids that should NOT be included in this SARIF file. + +runs: + using: node12 + main: index.js diff --git a/.github/check-sarif/index.js b/.github/check-sarif/index.js new file mode 100644 index 0000000000..c002b07697 --- /dev/null +++ b/.github/check-sarif/index.js @@ -0,0 +1,43 @@ +'use strict' + +const core = require('@actions/core') +const fs = require('fs') + +const sarif = JSON.parse(fs.readFileSync(core.getInput('sarif-file'), 'utf8')) +const rules = sarif.runs[0].tool.extensions.flatMap(ext => ext.rules || []) +const ruleIds = rules.map(rule => rule.id) + +// Check that all the expected queries ran +const expectedQueriesRun = getQueryIdsInput('queries-run') +const queriesThatShouldHaveRunButDidNot = expectedQueriesRun.filter(queryId => !ruleIds.includes(queryId)) + +if (queriesThatShouldHaveRunButDidNot.length > 0) { + core.setFailed(`The following queries were expected to run but did not: ${queriesThatShouldHaveRunButDidNot.join(', ')}`) +} + +// Check that all the unexpected queries did not run +const expectedQueriesNotRun = getQueryIdsInput('queries-not-run') + +const queriesThatShouldNotHaveRunButDid = expectedQueriesNotRun.filter(queryId => ruleIds.includes(queryId)) + +if (queriesThatShouldNotHaveRunButDid.length > 0) { + core.setFailed(`The following queries were NOT expected to have run but did: ${queriesThatShouldNotHaveRunButDid.join(', ')}`) +} + + +core.startGroup('All queries run') +rules.forEach(rule => { + core.info(`${rule.id}: ${(rule.properties && rule.properties.name) || rule.name}`) +}) +core.endGroup() + +core.startGroup('Full SARIF') +core.info(JSON.stringify(sarif, null, 2)) +core.endGroup() + +function getQueryIdsInput(name) { + return core.getInput(name) + .split(',') + .map(q => q.trim()) + .filter(q => q.length > 0) +} diff --git a/.github/query-filter-test/action.yml b/.github/query-filter-test/action.yml new file mode 100644 index 0000000000..89eadb1200 --- /dev/null +++ b/.github/query-filter-test/action.yml @@ -0,0 +1,52 @@ +name: Query Filter Test +description: Runs a test of query filters using the check SARIF action +inputs: + sarif-file: + required: true + description: The SARIF file to check + + queries-run: + required: true + description: | + Comma separated list of query ids that should be included in this SARIF file. + + queries-not-run: + required: true + description: | + Comma separated list of query ids that should NOT be included in this SARIF file. + + config-file: + required: true + description: | + The location of the codeql configuration file to use. + + tools: + required: true + description: | + The url of codeql to use. + +runs: + using: composite + steps: + - uses: ./../action/init + with: + languages: javascript + config-file: ${{ inputs.config-file }} + tools: ${{ inputs.tools }} + db-location: ${{ runner.temp }}/query-filter-test + - uses: ./../action/analyze + with: + output: ${{ runner.temp }}/results + upload-database: false + upload: false + env: + TEST_MODE: "true" + - name: Check SARIF + uses: ./../action/.github/check-sarif + with: + sarif-file: ${{ inputs.sarif-file }} + queries-run: ${{ inputs.queries-run}} + queries-not-run: ${{ inputs.queries-not-run}} + - name: Cleanup after test + shell: bash + run: rm -rf "$RUNNER_TEMP/results" "$RUNNER_TEMP//query-filter-test" diff --git a/.github/workflows/expected-queries-runs.yml b/.github/workflows/expected-queries-runs.yml new file mode 100644 index 0000000000..3e011f9342 --- /dev/null +++ b/.github/workflows/expected-queries-runs.yml @@ -0,0 +1,47 @@ +name: Check queries that ran + +on: + push: + branches: + - main + - releases/v1 + - releases/v2 + pull_request: + types: + - opened + - synchronize + - reopened + - ready_for_review + workflow_dispatch: {} + +jobs: + expected-queries: + name: Expected Queries Tests + timeout-minutes: 45 + runs-on: ubuntu-latest + steps: + - name: Check out repository + uses: actions/checkout@v3 + - name: Prepare test + id: prepare-test + uses: ./.github/prepare-test + with: + version: latest + - uses: ./../action/init + with: + languages: javascript + tools: ${{ steps.prepare-test.outputs.tools-url }} + - uses: ./../action/analyze + with: + output: ${{ runner.temp }}/results + upload-database: false + upload: false + env: + TEST_MODE: true + + - name: Check Sarif + uses: ./../action/.github/check-sarif + with: + sarif-file: ${{ runner.temp }}/results/javascript.sarif + queries-run: js/incomplete-hostname-regexp,js/path-injection + queries-not-run: foo,bar diff --git a/.github/workflows/query-filters.yml b/.github/workflows/query-filters.yml new file mode 100644 index 0000000000..864a4fdbeb --- /dev/null +++ b/.github/workflows/query-filters.yml @@ -0,0 +1,56 @@ +name: Query filters tests + +on: + push: + branches: + - main + - releases/v1 + - releases/v2 + pull_request: + types: + - opened + - synchronize + - reopened + - ready_for_review + workflow_dispatch: {} + +jobs: + query-filters: + name: Query Filters Tests + timeout-minutes: 45 + runs-on: ubuntu-latest + steps: + - name: Check out repository + uses: actions/checkout@v3 + - name: Prepare test + id: prepare-test + uses: ./.github/prepare-test + with: + version: latest + + - name: Check SARIF for default queries with Single include, Single exclude + uses: ./../action/.github/query-filter-test + with: + sarif-file: ${{ runner.temp }}/results/javascript.sarif + queries-run: js/zipslip + queries-not-run: js/path-injection + config-file: ./.github/codeql/codeql-config-query-filters1.yml + tools: ${{ steps.prepare-test.outputs.tools-url }} + + - name: Check SARIF for query packs with Single include, Single exclude + uses: ./../action/.github/query-filter-test + with: + sarif-file: ${{ runner.temp }}/results/javascript.sarif + queries-run: js/zipslip,javascript/example/empty-or-one-block + queries-not-run: js/path-injection + config-file: ./.github/codeql/codeql-config-query-filters2.yml + tools: ${{ steps.prepare-test.outputs.tools-url }} + + - name: Check SARIF for query packs and local queries with Single include, Single exclude + uses: ./../action/.github/query-filter-test + with: + sarif-file: ${{ runner.temp }}/results/javascript.sarif + queries-run: js/zipslip,javascript/example/empty-or-one-block,inrepo-javascript-querypack/show-ifs + queries-not-run: js/path-injection,complex-python-querypack/show-ifs,complex-python-querypack/foo/bar/show-ifs + config-file: ./.github/codeql/codeql-config-query-filters3.yml + tools: ${{ steps.prepare-test.outputs.tools-url }} diff --git a/.github/workflows/script/update-required-checks.sh b/.github/workflows/script/update-required-checks.sh index 13a825f994..46672c4585 100755 --- a/.github/workflows/script/update-required-checks.sh +++ b/.github/workflows/script/update-required-checks.sh @@ -21,7 +21,7 @@ fi echo "Getting checks for $GITHUB_SHA" # Ignore any checks with "https://", CodeQL, LGTM, and Update checks. -CHECKS="$(gh api repos/github/codeql-action/commits/${GITHUB_SHA}/check-runs --paginate | jq --slurp --compact-output --raw-output '[.[].check_runs | .[].name | select(contains("https://") or . == "CodeQL" or . == "LGTM.com" or contains("Update") | not)] | sort')" +CHECKS="$(gh api repos/github/codeql-action/commits/${GITHUB_SHA}/check-runs --paginate | jq --slurp --compact-output --raw-output '[.[].check_runs | .[].name | select(contains("https://") or . == "CodeQL" or . == "LGTM.com" or contains("Update") | not)] | unique | sort')" echo "$CHECKS" | jq diff --git a/CHANGELOG.md b/CHANGELOG.md index 92168dc5c8..5ea3fbb330 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,10 @@ # CodeQL Action Changelog +## 2.1.13 - 21 Jun 2022 + +- Add the ability to filter queries from a code scanning run by using the `query-filters` option in the code scanning configuration file. [#1098](https://github.com/github/codeql-action/pull/1098) +- Update default CodeQL bundle version to 2.9.4. [#1100](https://github.com/github/codeql-action/pull/1100) + ## 2.1.12 - 01 Jun 2022 - Update default CodeQL bundle version to 2.9.3. [#1084](https://github.com/github/codeql-action/pull/1084) diff --git a/lib/actions-util.js.map b/lib/actions-util.js.map index 71933f41c5..fa08623ed6 100644 --- a/lib/actions-util.js.map +++ b/lib/actions-util.js.map @@ -1 +1 @@ -{"version":3,"file":"actions-util.js","sourceRoot":"","sources":["../src/actions-util.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"actions-util.js","sourceRoot":"","sources":["../src/actions-util.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/actions-util.test.js.map b/lib/actions-util.test.js.map index 38665dce06..8e64a583fc 100644 --- a/lib/actions-util.test.js.map +++ b/lib/actions-util.test.js.map @@ -1 +1 @@ -{"version":3,"file":"actions-util.test.js","sourceRoot":"","sources":["../src/actions-util.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"actions-util.test.js","sourceRoot":"","sources":["../src/actions-util.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/analyze.js b/lib/analyze.js index 2e8169c821..f86ca432b3 100644 --- a/lib/analyze.js +++ b/lib/analyze.js @@ -18,14 +18,19 @@ var __importStar = (this && this.__importStar) || function (mod) { __setModuleDefault(result, mod); return result; }; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; Object.defineProperty(exports, "__esModule", { value: true }); -exports.runCleanup = exports.runFinalize = exports.runQueries = exports.CodeQLAnalysisError = void 0; +exports.validateQueryFilters = exports.runCleanup = exports.runFinalize = exports.createQuerySuiteContents = exports.convertPackToQuerySuiteEntry = exports.runQueries = exports.CodeQLAnalysisError = void 0; const fs = __importStar(require("fs")); const path = __importStar(require("path")); const toolrunner = __importStar(require("@actions/exec/lib/toolrunner")); +const del_1 = __importDefault(require("del")); const yaml = __importStar(require("js-yaml")); const analysisPaths = __importStar(require("./analysis-paths")); const codeql_1 = require("./codeql"); +const configUtils = __importStar(require("./config-utils")); const count_loc_1 = require("./count-loc"); const languages_1 = require("./languages"); const sharedEnv = __importStar(require("./shared-environment")); @@ -124,6 +129,7 @@ async function runQueries(sarifFolder, memoryFlag, addSnippetsFlag, threadsFlag, } for (const language of config.languages) { const queries = config.queries[language]; + const queryFilters = validateQueryFilters(config.originalUserInput["query-filters"]); const packsWithVersion = config.packs[language] || []; const hasBuiltinQueries = (queries === null || queries === void 0 ? void 0 : queries.builtin.length) > 0; const hasCustomQueries = (queries === null || queries === void 0 ? void 0 : queries.custom.length) > 0; @@ -146,7 +152,7 @@ async function runQueries(sarifFolder, memoryFlag, addSnippetsFlag, threadsFlag, const querySuitePaths = []; if (queries["builtin"].length > 0) { const startTimeBuiltIn = new Date().getTime(); - querySuitePaths.push(await runQueryGroup(language, "builtin", createQuerySuiteContents(queries["builtin"]), undefined)); + querySuitePaths.push(await runQueryGroup(language, "builtin", createQuerySuiteContents(queries["builtin"], queryFilters), undefined)); statusReport[`analyze_builtin_queries_${language}_duration_ms`] = new Date().getTime() - startTimeBuiltIn; } @@ -154,12 +160,12 @@ async function runQueries(sarifFolder, memoryFlag, addSnippetsFlag, threadsFlag, let ranCustom = false; for (let i = 0; i < queries["custom"].length; ++i) { if (queries["custom"][i].queries.length > 0) { - querySuitePaths.push(await runQueryGroup(language, `custom-${i}`, createQuerySuiteContents(queries["custom"][i].queries), queries["custom"][i].searchPath)); + querySuitePaths.push(await runQueryGroup(language, `custom-${i}`, createQuerySuiteContents(queries["custom"][i].queries, queryFilters), queries["custom"][i].searchPath)); ranCustom = true; } } if (packsWithVersion.length > 0) { - querySuitePaths.push(...(await runQueryPacks(language, "packs", packsWithVersion, undefined))); + querySuitePaths.push(await runQueryPacks(language, "packs", packsWithVersion, queryFilters)); ranCustom = true; } if (ranCustom) { @@ -217,23 +223,41 @@ async function runQueries(sarifFolder, memoryFlag, addSnippetsFlag, threadsFlag, logger.debug(`BQRS results produced for ${language} (queries: ${type})"`); return querySuitePath; } - async function runQueryPacks(language, type, packs, searchPath) { + async function runQueryPacks(language, type, packs, queryFilters) { const databasePath = util.getCodeQLDatabasePath(config, language); - // Run the queries individually instead of all at once to avoid command - // line length restrictions, particularly on windows. for (const pack of packs) { logger.debug(`Running query pack for ${language}-${type}: ${pack}`); - const codeql = await (0, codeql_1.getCodeQL)(config.codeQLCmd); - await codeql.databaseRunQueries(databasePath, searchPath, pack, memoryFlag, threadsFlag); - logger.debug(`BQRS results produced for ${language} (queries: ${type})"`); } - return packs; + // combine the list of packs into a query suite in order to run them all simultaneously. + const querySuite = packs.map(convertPackToQuerySuiteEntry).concat(queryFilters); + const querySuitePath = `${databasePath}-queries-${type}.qls`; + fs.writeFileSync(querySuitePath, yaml.dump(querySuite)); + logger.debug(`BQRS results produced for ${language} (queries: ${type})"`); + const codeql = await (0, codeql_1.getCodeQL)(config.codeQLCmd); + await codeql.databaseRunQueries(databasePath, undefined, querySuitePath, memoryFlag, threadsFlag); + return querySuitePath; } } exports.runQueries = runQueries; -function createQuerySuiteContents(queries) { - return queries.map((q) => `- query: ${q}`).join("\n"); +function convertPackToQuerySuiteEntry(packStr) { + var _a, _b, _c, _d; + const pack = configUtils.parsePacksSpecification(packStr); + return { + qlpack: !pack.path ? pack.name : undefined, + from: pack.path ? pack.name : undefined, + version: pack.version, + query: ((_a = pack.path) === null || _a === void 0 ? void 0 : _a.endsWith(".ql")) ? pack.path : undefined, + queries: !((_b = pack.path) === null || _b === void 0 ? void 0 : _b.endsWith(".ql")) && !((_c = pack.path) === null || _c === void 0 ? void 0 : _c.endsWith(".qls")) + ? pack.path + : undefined, + apply: ((_d = pack.path) === null || _d === void 0 ? void 0 : _d.endsWith(".qls")) ? pack.path : undefined, + }; +} +exports.convertPackToQuerySuiteEntry = convertPackToQuerySuiteEntry; +function createQuerySuiteContents(queries, queryFilters) { + return yaml.dump(queries.map((q) => ({ query: q })).concat(queryFilters)); } +exports.createQuerySuiteContents = createQuerySuiteContents; async function runFinalize(outputDir, threadsFlag, memoryFlag, config, logger) { const codeql = await (0, codeql_1.getCodeQL)(config.codeQLCmd); if (await util.codeQlVersionAbove(codeql, codeql_1.CODEQL_VERSION_NEW_TRACING)) { @@ -244,13 +268,8 @@ async function runFinalize(outputDir, threadsFlag, memoryFlag, config, logger) { // Delete the tracer config env var to avoid tracing ourselves delete process.env[sharedEnv.ODASA_TRACER_CONFIGURATION]; } - // After switching to Node16, this entire block can be replaced with `await fs.promises.rm(outputDir, { recursive: true, force: true });`. try { - await fs.promises.rmdir(outputDir, { - recursive: true, - maxRetries: 5, - retryDelay: 2000, - }); + await (0, del_1.default)(outputDir, { force: true }); } catch (error) { if ((error === null || error === void 0 ? void 0 : error.code) !== "ENOENT") { @@ -299,4 +318,25 @@ function printLinesOfCodeSummary(logger, language, lineCounts) { logger.info(`Counted a baseline of ${lineCounts[language]} lines of code for ${language}.`); } } +// exported for testing +function validateQueryFilters(queryFilters) { + if (!queryFilters) { + return []; + } + const errors = []; + for (const qf of queryFilters) { + const keys = Object.keys(qf); + if (keys.length !== 1) { + errors.push(`Query filter must have exactly one key: ${JSON.stringify(qf)}`); + } + if (!["exclude", "include"].includes(keys[0])) { + errors.push(`Only "include" or "exclude" filters are allowed:\n${JSON.stringify(qf)}`); + } + } + if (errors.length) { + throw new Error(`Invalid query filter.\n${errors.join("\n")}`); + } + return queryFilters; +} +exports.validateQueryFilters = validateQueryFilters; //# sourceMappingURL=analyze.js.map \ No newline at end of file diff --git a/lib/analyze.js.map b/lib/analyze.js.map index 99d389afed..65eb8aaa05 100644 --- a/lib/analyze.js.map +++ b/lib/analyze.js.map @@ -1 +1 @@ -{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../src/analyze.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../src/analyze.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/analyze.test.js b/lib/analyze.test.js index b82884d756..542cd382d0 100644 --- a/lib/analyze.test.js +++ b/lib/analyze.test.js @@ -210,4 +210,136 @@ const util = __importStar(require("./util")); } } }); +(0, ava_1.default)("validateQueryFilters", (t) => { + t.notThrows(() => (0, analyze_1.validateQueryFilters)([])); + t.notThrows(() => (0, analyze_1.validateQueryFilters)(undefined)); + t.notThrows(() => { + return (0, analyze_1.validateQueryFilters)([ + { + exclude: { + "problem.severity": "recommendation", + }, + }, + { + exclude: { + "tags contain": ["foo", "bar"], + }, + }, + { + include: { + "problem.severity": "something-to-think-about", + }, + }, + { + include: { + "tags contain": ["baz", "bop"], + }, + }, + ]); + }); + t.throws(() => { + return (0, analyze_1.validateQueryFilters)([ + { + exclude: { + "tags contain": ["foo", "bar"], + }, + include: { + "tags contain": ["baz", "bop"], + }, + }, + ]); + }, { message: /Query filter must have exactly one key/ }); + t.throws(() => { + return (0, analyze_1.validateQueryFilters)([{ xxx: "foo" }]); + }, { message: /Only "include" or "exclude" filters are allowed/ }); +}); +const convertPackToQuerySuiteEntryMacro = ava_1.default.macro({ + exec: (t, packSpec, suiteEntry) => t.deepEqual((0, analyze_1.convertPackToQuerySuiteEntry)(packSpec), suiteEntry), + title: (_providedTitle, packSpec) => `Query Suite Entry: ${packSpec}`, +}); +(0, ava_1.default)(convertPackToQuerySuiteEntryMacro, "a/b", { + qlpack: "a/b", + from: undefined, + version: undefined, + query: undefined, + queries: undefined, + apply: undefined, +}); +(0, ava_1.default)(convertPackToQuerySuiteEntryMacro, "a/b@~1.2.3", { + qlpack: "a/b", + from: undefined, + version: "~1.2.3", + query: undefined, + queries: undefined, + apply: undefined, +}); +(0, ava_1.default)(convertPackToQuerySuiteEntryMacro, "a/b:my/path", { + qlpack: undefined, + from: "a/b", + version: undefined, + query: undefined, + queries: "my/path", + apply: undefined, +}); +(0, ava_1.default)(convertPackToQuerySuiteEntryMacro, "a/b@~1.2.3:my/path", { + qlpack: undefined, + from: "a/b", + version: "~1.2.3", + query: undefined, + queries: "my/path", + apply: undefined, +}); +(0, ava_1.default)(convertPackToQuerySuiteEntryMacro, "a/b:my/path/query.ql", { + qlpack: undefined, + from: "a/b", + version: undefined, + query: "my/path/query.ql", + queries: undefined, + apply: undefined, +}); +(0, ava_1.default)(convertPackToQuerySuiteEntryMacro, "a/b@~1.2.3:my/path/query.ql", { + qlpack: undefined, + from: "a/b", + version: "~1.2.3", + query: "my/path/query.ql", + queries: undefined, + apply: undefined, +}); +(0, ava_1.default)(convertPackToQuerySuiteEntryMacro, "a/b:my/path/suite.qls", { + qlpack: undefined, + from: "a/b", + version: undefined, + query: undefined, + queries: undefined, + apply: "my/path/suite.qls", +}); +(0, ava_1.default)(convertPackToQuerySuiteEntryMacro, "a/b@~1.2.3:my/path/suite.qls", { + qlpack: undefined, + from: "a/b", + version: "~1.2.3", + query: undefined, + queries: undefined, + apply: "my/path/suite.qls", +}); +(0, ava_1.default)("convertPackToQuerySuiteEntry Failure", (t) => { + t.throws(() => (0, analyze_1.convertPackToQuerySuiteEntry)("this-is-not-a-pack")); +}); +(0, ava_1.default)("createQuerySuiteContents", (t) => { + const yamlResult = (0, analyze_1.createQuerySuiteContents)(["query1.ql", "query2.ql"], [ + { + exclude: { "problem.severity": "recommendation" }, + }, + { + include: { "problem.severity": "recommendation" }, + }, + ]); + const expected = `- query: query1.ql +- query: query2.ql +- exclude: + problem.severity: recommendation +- include: + problem.severity: recommendation +`; + t.deepEqual(yamlResult, expected); +}); //# sourceMappingURL=analyze.test.js.map \ No newline at end of file diff --git a/lib/analyze.test.js.map b/lib/analyze.test.js.map index 1c902cf457..6183b04c28 100644 --- a/lib/analyze.test.js.map +++ b/lib/analyze.test.js.map @@ -1 +1 @@ -{"version":3,"file":"analyze.test.js","sourceRoot":"","sources":["../src/analyze.test.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,2CAA6B;AAE7B,8CAAuB;AACvB,8CAAgC;AAChC,6CAA+B;AAE/B,uCAAuC;AACvC,qCAAqC;AAErC,mDAAqC;AACrC,2CAAuC;AACvC,uCAA4C;AAC5C,mDAA+D;AAC/D,6CAA+B;AAE/B,IAAA,0BAAU,EAAC,aAAI,CAAC,CAAC;AAEjB,yEAAyE;AACzE,wEAAwE;AACxE,oDAAoD;AACpD,IAAA,aAAI,EAAC,8CAA8C,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IAC/D,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,oBAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE;QACtE,+CAA+C;QAC/C,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAClB,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;IACxD,IAAI,eAAe,GAA8B,EAAE,CAAC;IACpD,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QAC5C,IAAA,gCAAgB,EAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAEjC,MAAM,UAAU,GAAG,EAAE,CAAC;QACtB,MAAM,eAAe,GAAG,EAAE,CAAC;QAC3B,MAAM,WAAW,GAAG,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG;YACZ,CAAC,oBAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC;YAC7B,CAAC,oBAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC;SAC/B,CAAC;QAEF,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,oBAAQ,CAAC,EAAE;YAC9C,IAAA,kBAAS,EAAC;gBACR,YAAY,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;gBACzC,kBAAkB,EAAE,KAAK,EACvB,GAAW,EACX,UAA8B,EAC9B,EAAE;oBACF,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACnC,CAAC;gBACD,wBAAwB,EAAE,KAAK,EAC7B,GAAW,EACX,WAAqB,EACrB,SAAiB,EACjB,EAAE;oBACF,EAAE,CAAC,aAAa,CACd,SAAS,EACT,IAAI,CAAC,SAAS,CAAC;wBACb,IAAI,EAAE;4BACJ,+EAA+E;4BAC/E;gCACE,IAAI,EAAE;oCACJ,UAAU,EAAE;wCACV;4CACE,KAAK,EAAE;gDACL;oDACE,UAAU,EAAE;wDACV,IAAI,EAAE,CAAC,eAAe,CAAC;qDACxB;iDACF;6CACF;yCACF;qCACF;iCACF;gCACD,UAAU,EAAE;oCACV,aAAa,EAAE;wCACb;4CACE,IAAI,EAAE;gDACJ,KAAK,EAAE,CAAC;gDACR,aAAa,EAAE;oDACb,KAAK,EAAE,CAAC;iDACT;6CACF;4CACD,KAAK,EAAE,GAAG;yCACX;qCACF;iCACF;6BACF;4BACD,EAAE;yBACH;qBACF,CAAC,CACH,CAAC;oBACF,OAAO,EAAE,CAAC;gBACZ,CAAC;aACF,CAAC,CAAC;YAEH,eAAe,GAAG,EAAE,CAAC;YACrB,MAAM,MAAM,GAAW;gBACrB,SAAS,EAAE,CAAC,QAAQ,CAAC;gBACrB,OAAO,EAAE,EAAE;gBACX,WAAW,EAAE,EAAE;gBACf,KAAK,EAAE,EAAE;gBACT,iBAAiB,EAAE,EAAE;gBACrB,OAAO,EAAE,MAAM;gBACf,YAAY,EAAE,MAAM;gBACpB,SAAS,EAAE,EAAE;gBACb,aAAa,EAAE;oBACb,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM;iBACV;gBACvB,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,kBAAkB,CAAC;gBACpD,KAAK;gBACL,SAAS,EAAE,KAAK;gBAChB,iBAAiB,EAAE,IAAI,CAAC,2BAA2B;gBACnD,iBAAiB,EAAE,IAAI,CAAC,2BAA2B;gBACnD,iBAAiB,EAAE,KAAK;aACzB,CAAC;YACF,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE;gBACzD,SAAS,EAAE,IAAI;aAChB,CAAC,CAAC;YAEH,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG;gBACzB,OAAO,EAAE,CAAC,QAAQ,CAAC;gBACnB,MAAM,EAAE,EAAE;aACX,CAAC;YACF,MAAM,mBAAmB,GAAG,MAAM,IAAA,oBAAU,EAC1C,MAAM,EACN,UAAU,EACV,eAAe,EACf,WAAW,EACX,SAAS,EACT,MAAM,EACN,IAAA,yBAAe,EAAC,IAAI,CAAC,CACtB,CAAC;YACF,MAAM,QAAQ,GAAG,QAAQ,IAAI,KAAK,CAAC;YACnC,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,IAAI,EAAE,CAAC;YACjE,IAAI,QAAQ,EAAE;gBACZ,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,EAAE,gBAAgB,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACrE,CAAC,CAAC,SAAS,CACT,gBAAgB,CAAC,CAAC,CAAC,EACnB,2BAA2B,QAAQ,cAAc,CAClD,CAAC;gBACF,CAAC,CAAC,SAAS,CACT,gBAAgB,CAAC,CAAC,CAAC,EACnB,0BAA0B,QAAQ,cAAc,CACjD,CAAC;gBACF,CAAC,CAAC,SAAS,CACT,gBAAgB,CAAC,CAAC,CAAC,EACnB,qBAAqB,QAAQ,cAAc,CAC5C,CAAC;aACH;iBAAM;gBACL,CAAC,CAAC,SAAS,CACT,gBAAgB,CAAC,CAAC,CAAC,EACnB,2BAA2B,QAAQ,cAAc,CAClD,CAAC;gBACF,CAAC,CAAC,SAAS,CACT,gBAAgB,CAAC,CAAC,CAAC,EACnB,qBAAqB,QAAQ,cAAc,CAC5C,CAAC;aACH;YAED,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG;gBACzB,OAAO,EAAE,EAAE;gBACX,MAAM,EAAE;oBACN;wBACE,OAAO,EAAE,CAAC,QAAQ,CAAC;wBACnB,UAAU,EAAE,IAAI;qBACjB;oBACD;wBACE,OAAO,EAAE,CAAC,QAAQ,CAAC;wBACnB,UAAU,EAAE,IAAI;qBACjB;iBACF;aACF,CAAC;YACF,MAAM,kBAAkB,GAAG,MAAM,IAAA,oBAAU,EACzC,MAAM,EACN,UAAU,EACV,eAAe,EACf,WAAW,EACX,SAAS,EACT,MAAM,EACN,IAAA,yBAAe,EAAC,IAAI,CAAC,CACtB,CAAC;YACF,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACvD,CAAC,CAAC,IAAI,CACJ,0BAA0B,QAAQ,cAAc,IAAI,kBAAkB,CACvE,CAAC;YACF,MAAM,uBAAuB,GAAG,QAAQ;gBACtC,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC;gBAC/C,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC5B,CAAC,CAAC,SAAS,CAAC,eAAe,EAAE,uBAAuB,CAAC,CAAC;YACtD,CAAC,CAAC,IAAI,CAAC,qBAAqB,QAAQ,cAAc,IAAI,kBAAkB,CAAC,CAAC;SAC3E;QAED,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACzB,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,SAAS,gBAAgB,CAAC,MAAc;QACtC,gDAAgD;QAChD,MAAM,CAAC,IAAI,CAAC,oBAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YACxC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QACpE,CAAC,CAAC,CAAC;IACL,CAAC;IAED,SAAS,sBAAsB,CAAC,QAAgB,EAAE,SAAiB;QACjE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;QAC5D,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,aAAa,EAAE;YAClD;gBACE,IAAI,EAAE;oBACJ,KAAK,EAAE,CAAC;oBACR,aAAa,EAAE;wBACb,KAAK,EAAE,CAAC;qBACT;iBACF;gBACD,KAAK,EAAE,GAAG;gBACV,QAAQ,EAAE,SAAS;aACpB;SACF,CAAC,CAAC;QACH,sDAAsD;QACtD,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,SAAS,iBAAiB,CAAC,MAAc;QACvC,MAAM,UAAU,GAAG;YACjB;gBACE,KAAK,EAAE,QAAQ;aAChB;SACF,CAAC;QACF,MAAM,WAAW,GAAG;YAClB;gBACE,KAAK,EAAE,QAAQ;aAChB;SACF,CAAC;QACF,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,oBAAQ,CAAC,EAAE;YAC1C,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,GAAG,IAAI,sBAAsB,CAAC,EAAE,UAAU,CAAC,CAAC;YACrE,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,GAAG,IAAI,uBAAuB,CAAC,EAAE,UAAU,CAAC,CAAC;YACtE,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,GAAG,IAAI,uBAAuB,CAAC,EAAE,WAAW,CAAC,CAAC;SACxE;QAED,SAAS,YAAY,CAAC,IAAY;YAChC,MAAM,CAAC,GAAG,EAAE,CAAC,YAAY,CACvB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,kBAAkB,EAAE,IAAI,CAAC,EAC3C,MAAM,CACP,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAEf,OAAO,IAAI,CAAC,IAAI,CACd,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,kBAAkB,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CACrE,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAC"} \ No newline at end of file +{"version":3,"file":"analyze.test.js","sourceRoot":"","sources":["../src/analyze.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/api-compatibility.json b/lib/api-compatibility.json index ea60e4b895..35e1fe9409 100644 --- a/lib/api-compatibility.json +++ b/lib/api-compatibility.json @@ -1 +1 @@ -{ "maximumVersion": "3.5", "minimumVersion": "3.1" } +{ "maximumVersion": "3.6", "minimumVersion": "3.2" } diff --git a/lib/config-utils.js b/lib/config-utils.js index 138113c5b3..0da6753dc9 100644 --- a/lib/config-utils.js +++ b/lib/config-utils.js @@ -19,7 +19,7 @@ var __importStar = (this && this.__importStar) || function (mod) { return result; }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.getConfig = exports.getPathToParsedConfigFile = exports.initConfig = exports.parsePacks = exports.validatePacksSpecification = exports.parsePacksFromConfig = exports.getDefaultConfig = exports.getUnknownLanguagesError = exports.getNoLanguagesError = exports.getConfigFileDirectoryGivenMessage = exports.getConfigFileFormatInvalidMessage = exports.getConfigFileRepoFormatInvalidMessage = exports.getConfigFileDoesNotExistErrorMessage = exports.getConfigFileOutsideWorkspaceErrorMessage = exports.getLocalPathDoesNotExist = exports.getLocalPathOutsideOfRepository = exports.getPacksStrInvalid = exports.getPacksInvalid = exports.getPacksInvalidSplit = exports.getPacksRequireLanguage = exports.getPathsInvalid = exports.getPathsIgnoreInvalid = exports.getQueryUsesInvalid = exports.getQueriesInvalid = exports.getDisableDefaultQueriesInvalid = exports.getNameInvalid = exports.validateAndSanitisePath = void 0; +exports.getConfig = exports.getPathToParsedConfigFile = exports.initConfig = exports.parsePacks = exports.validatePackSpecification = exports.prettyPrintPack = exports.parsePacksSpecification = exports.parsePacksFromConfig = exports.getDefaultConfig = exports.getUnknownLanguagesError = exports.getNoLanguagesError = exports.getConfigFileDirectoryGivenMessage = exports.getConfigFileFormatInvalidMessage = exports.getConfigFileRepoFormatInvalidMessage = exports.getConfigFileDoesNotExistErrorMessage = exports.getConfigFileOutsideWorkspaceErrorMessage = exports.getLocalPathDoesNotExist = exports.getLocalPathOutsideOfRepository = exports.getPacksStrInvalid = exports.getPacksInvalid = exports.getPacksInvalidSplit = exports.getPacksRequireLanguage = exports.getPathsInvalid = exports.getPathsIgnoreInvalid = exports.getQueryUsesInvalid = exports.getQueriesInvalid = exports.getDisableDefaultQueriesInvalid = exports.getNameInvalid = exports.validateAndSanitisePath = void 0; const fs = __importStar(require("fs")); const path = __importStar(require("path")); const yaml = __importStar(require("js-yaml")); @@ -150,9 +150,7 @@ async function addBuiltinSuiteQueries(languages, codeQL, resultMap, packs, suite return injectedMlQueries; } function isMlPoweredJsQueriesPack(pack) { - return (pack === util_1.ML_POWERED_JS_QUERIES_PACK_NAME || - pack.startsWith(`${util_1.ML_POWERED_JS_QUERIES_PACK_NAME}@`) || - pack.startsWith(`${util_1.ML_POWERED_JS_QUERIES_PACK_NAME}:`)); + return parsePacksSpecification(pack).name === util_1.ML_POWERED_JS_QUERIES_PACK_NAME; } /** * Retrieve the set of queries at localQueryPath and add them to resultMap. @@ -638,10 +636,7 @@ function parsePacksFromConfig(packsByLanguage, languages, configFile) { if (!languages.includes(lang)) { throw new Error(getPacksRequireLanguage(lang, configFile)); } - packs[lang] = []; - for (const packStr of packsArr) { - packs[lang].push(validatePacksSpecification(packStr, configFile)); - } + packs[lang] = packsArr.map((packStr) => validatePackSpecification(packStr, configFile)); } return packs; } @@ -665,7 +660,7 @@ function parsePacksFromInput(packsInput, languages) { } return { [languages[0]]: packsInput.split(",").reduce((packs, pack) => { - packs.push(validatePacksSpecification(pack, "")); + packs.push(validatePackSpecification(pack)); return packs; }, []), }; @@ -688,7 +683,7 @@ function parsePacksFromInput(packsInput, languages) { * @param packStr the package specification to verify. * @param configFile Config file to use for error reporting */ -function validatePacksSpecification(packStr, configFile) { +function parsePacksSpecification(packStr, configFile) { if (typeof packStr !== "string") { throw new Error(getPacksStrInvalid(packStr, configFile)); } @@ -730,9 +725,21 @@ function validatePacksSpecification(packStr, configFile) { // 0 length path throw new Error(getPacksStrInvalid(packStr, configFile)); } - return (packName + (version ? `@${version}` : "") + (packPath ? `:${packPath}` : "")); + return { + name: packName, + version, + path: packPath, + }; +} +exports.parsePacksSpecification = parsePacksSpecification; +function prettyPrintPack(pack) { + return `${pack.name}${pack.version ? `@${pack.version}` : ""}${pack.path ? `:${pack.path}` : ""}`; +} +exports.prettyPrintPack = prettyPrintPack; +function validatePackSpecification(pack, configFile) { + return prettyPrintPack(parsePacksSpecification(pack, configFile)); } -exports.validatePacksSpecification = validatePacksSpecification; +exports.validatePackSpecification = validatePackSpecification; // exported for testing function parsePacks(rawPacksFromConfig, rawPacksInput, languages, configFile) { const packsFromInput = parsePacksFromInput(rawPacksInput, languages); diff --git a/lib/config-utils.js.map b/lib/config-utils.js.map index 1cf3ebd594..62d1f35bad 100644 --- a/lib/config-utils.js.map +++ b/lib/config-utils.js.map @@ -1 +1 @@ -{"version":3,"file":"config-utils.js","sourceRoot":"","sources":["../src/config-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"config-utils.js","sourceRoot":"","sources":["../src/config-utils.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/config-utils.test.js b/lib/config-utils.test.js index deb3bd38a5..935b4b43fa 100644 --- a/lib/config-utils.test.js +++ b/lib/config-utils.test.js @@ -828,6 +828,46 @@ const invalidPackNameMacro = ava_1.default.macro({ (0, ava_1.default)(invalidPackNameMacro, "c/d@../a"); (0, ava_1.default)(invalidPackNameMacro, "c/d@b/../a"); (0, ava_1.default)(invalidPackNameMacro, "c/d:z@1"); +/** + * Test macro for pretty printing pack specs + */ +const packSpecPrettyPrintingMacro = ava_1.default.macro({ + exec: (t, packStr, packObj) => { + const parsed = configUtils.parsePacksSpecification(packStr); + t.deepEqual(parsed, packObj, "parsed pack spec is correct"); + const stringified = configUtils.prettyPrintPack(packObj); + t.deepEqual(stringified, packStr.trim(), "pretty-printed pack spec is correct"); + t.deepEqual(configUtils.validatePackSpecification(packStr), packStr.trim(), "pack spec is valid"); + }, + title: (_providedTitle, packStr, + // eslint-disable-next-line @typescript-eslint/no-unused-vars + _packObj) => `Prettyprint pack spec: '${packStr}'`, +}); +(0, ava_1.default)(packSpecPrettyPrintingMacro, "a/b", { + name: "a/b", + version: undefined, + path: undefined, +}); +(0, ava_1.default)(packSpecPrettyPrintingMacro, "a/b@~1.2.3", { + name: "a/b", + version: "~1.2.3", + path: undefined, +}); +(0, ava_1.default)(packSpecPrettyPrintingMacro, "a/b@~1.2.3:abc/def", { + name: "a/b", + version: "~1.2.3", + path: "abc/def", +}); +(0, ava_1.default)(packSpecPrettyPrintingMacro, "a/b:abc/def", { + name: "a/b", + version: undefined, + path: "abc/def", +}); +(0, ava_1.default)(packSpecPrettyPrintingMacro, " a/b:abc/def ", { + name: "a/b", + version: undefined, + path: "abc/def", +}); /** * Test macro for testing the packs block and the packs input */ @@ -925,4 +965,10 @@ const mlPoweredQueriesMacro = ava_1.default.macro({ (0, ava_1.default)(mlPoweredQueriesMacro, "2.9.0", true, undefined, "security-and-quality", "~0.2.0"); // Test that we don't inject an ML-powered query pack if the user has already specified one. (0, ava_1.default)(mlPoweredQueriesMacro, "2.9.0", true, "codeql/javascript-experimental-atm-queries@0.0.1", "security-and-quality", "0.0.1"); +// Test that ML-powered queries are run on all platforms running `security-extended` on CodeQL +// CLI 2.9.3+. +(0, ava_1.default)(mlPoweredQueriesMacro, "2.9.3", true, undefined, "security-extended", "~0.3.0"); +// Test that ML-powered queries are run on all platforms running `security-and-quality` on CodeQL +// CLI 2.9.3+. +(0, ava_1.default)(mlPoweredQueriesMacro, "2.9.3", true, undefined, "security-and-quality", "~0.3.0"); //# sourceMappingURL=config-utils.test.js.map \ No newline at end of file diff --git a/lib/config-utils.test.js.map b/lib/config-utils.test.js.map index 9f63eda4ae..71284893e0 100644 --- a/lib/config-utils.test.js.map +++ b/lib/config-utils.test.js.map @@ -1 +1 @@ -{"version":3,"file":"config-utils.test.js","sourceRoot":"","sources":["../src/config-utils.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"config-utils.test.js","sourceRoot":"","sources":["../src/config-utils.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/defaults.json b/lib/defaults.json index 7c68771c2a..281e00c3be 100644 --- a/lib/defaults.json +++ b/lib/defaults.json @@ -1,3 +1,3 @@ { - "bundleVersion": "codeql-bundle-20220527" + "bundleVersion": "codeql-bundle-20220615" } diff --git a/lib/languages.js b/lib/languages.js index 50fae3c146..f7b71b4f9a 100644 --- a/lib/languages.js +++ b/lib/languages.js @@ -11,6 +11,7 @@ var Language; Language["javascript"] = "javascript"; Language["python"] = "python"; Language["ruby"] = "ruby"; + Language["swift"] = "swift"; })(Language = exports.Language || (exports.Language = {})); // Additional names for languages const LANGUAGE_ALIASES = { @@ -35,7 +36,7 @@ function parseLanguage(language) { } exports.parseLanguage = parseLanguage; function isTracedLanguage(language) { - return (["cpp", "java", "csharp"].includes(language) || + return (["cpp", "java", "csharp", "swift"].includes(language) || (process.env["CODEQL_EXTRACTOR_GO_BUILD_TRACING"] === "on" && language === Language.go)); } diff --git a/lib/languages.js.map b/lib/languages.js.map index fd2336b8e6..8fe2134410 100644 --- a/lib/languages.js.map +++ b/lib/languages.js.map @@ -1 +1 @@ -{"version":3,"file":"languages.js","sourceRoot":"","sources":["../src/languages.ts"],"names":[],"mappings":";;;AAAA,wCAAwC;AACxC,IAAY,QAQX;AARD,WAAY,QAAQ;IAClB,6BAAiB,CAAA;IACjB,uBAAW,CAAA;IACX,qBAAS,CAAA;IACT,yBAAa,CAAA;IACb,qCAAyB,CAAA;IACzB,6BAAiB,CAAA;IACjB,yBAAa,CAAA;AACf,CAAC,EARW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QAQnB;AAED,iCAAiC;AACjC,MAAM,gBAAgB,GAAiC;IACrD,CAAC,EAAE,QAAQ,CAAC,GAAG;IACf,KAAK,EAAE,QAAQ,CAAC,GAAG;IACnB,IAAI,EAAE,QAAQ,CAAC,MAAM;IACrB,UAAU,EAAE,QAAQ,CAAC,UAAU;CAChC,CAAC;AAEF,gGAAgG;AAChG,SAAgB,aAAa,CAAC,QAAgB;IAC5C,0BAA0B;IAC1B,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IAElC,6BAA6B;IAC7B,IAAI,QAAQ,IAAI,QAAQ,EAAE;QACxB,OAAO,QAAoB,CAAC;KAC7B;IAED,yBAAyB;IACzB,IAAI,QAAQ,IAAI,gBAAgB,EAAE;QAChC,OAAO,gBAAgB,CAAC,QAAQ,CAAC,CAAC;KACnC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAfD,sCAeC;AAED,SAAgB,gBAAgB,CAAC,QAAkB;IACjD,OAAO,CACL,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC5C,CAAC,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,KAAK,IAAI;YACxD,QAAQ,KAAK,QAAQ,CAAC,EAAE,CAAC,CAC5B,CAAC;AACJ,CAAC;AAND,4CAMC;AAED,SAAgB,iBAAiB,CAAC,QAAkB;IAClD,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;AACrC,CAAC;AAFD,8CAEC"} \ No newline at end of file +{"version":3,"file":"languages.js","sourceRoot":"","sources":["../src/languages.ts"],"names":[],"mappings":";;;AAAA,wCAAwC;AACxC,IAAY,QASX;AATD,WAAY,QAAQ;IAClB,6BAAiB,CAAA;IACjB,uBAAW,CAAA;IACX,qBAAS,CAAA;IACT,yBAAa,CAAA;IACb,qCAAyB,CAAA;IACzB,6BAAiB,CAAA;IACjB,yBAAa,CAAA;IACb,2BAAe,CAAA;AACjB,CAAC,EATW,QAAQ,GAAR,gBAAQ,KAAR,gBAAQ,QASnB;AAED,iCAAiC;AACjC,MAAM,gBAAgB,GAAiC;IACrD,CAAC,EAAE,QAAQ,CAAC,GAAG;IACf,KAAK,EAAE,QAAQ,CAAC,GAAG;IACnB,IAAI,EAAE,QAAQ,CAAC,MAAM;IACrB,UAAU,EAAE,QAAQ,CAAC,UAAU;CAChC,CAAC;AAEF,gGAAgG;AAChG,SAAgB,aAAa,CAAC,QAAgB;IAC5C,0BAA0B;IAC1B,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IAElC,6BAA6B;IAC7B,IAAI,QAAQ,IAAI,QAAQ,EAAE;QACxB,OAAO,QAAoB,CAAC;KAC7B;IAED,yBAAyB;IACzB,IAAI,QAAQ,IAAI,gBAAgB,EAAE;QAChC,OAAO,gBAAgB,CAAC,QAAQ,CAAC,CAAC;KACnC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAfD,sCAeC;AAED,SAAgB,gBAAgB,CAAC,QAAkB;IACjD,OAAO,CACL,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACrD,CAAC,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,KAAK,IAAI;YACxD,QAAQ,KAAK,QAAQ,CAAC,EAAE,CAAC,CAC5B,CAAC;AACJ,CAAC;AAND,4CAMC;AAED,SAAgB,iBAAiB,CAAC,QAAkB;IAClD,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;AACrC,CAAC;AAFD,8CAEC"} \ No newline at end of file diff --git a/lib/util.js b/lib/util.js index 8c69f27985..d0603486b2 100644 --- a/lib/util.js +++ b/lib/util.js @@ -33,6 +33,7 @@ const api = __importStar(require("./api-client")); const api_client_1 = require("./api-client"); const apiCompatibility = __importStar(require("./api-compatibility.json")); const codeql_1 = require("./codeql"); +const config_utils_1 = require("./config-utils"); /** * Specifies bundle versions that are known to be broken * and will not be used if found in the toolcache. @@ -552,10 +553,20 @@ exports.ML_POWERED_JS_QUERIES_PACK_NAME = "codeql/javascript-experimental-atm-qu * queries beta. */ async function getMlPoweredJsQueriesPack(codeQL) { - if (await codeQlVersionAbove(codeQL, "2.8.4")) { - return `${exports.ML_POWERED_JS_QUERIES_PACK_NAME}@~0.2.0`; + let version; + if (await codeQlVersionAbove(codeQL, "2.9.3")) { + version = `~0.3.0`; } - return `${exports.ML_POWERED_JS_QUERIES_PACK_NAME}@~0.1.0`; + else if (await codeQlVersionAbove(codeQL, "2.8.4")) { + version = `~0.2.0`; + } + else { + version = `~0.1.0`; + } + return (0, config_utils_1.prettyPrintPack)({ + name: exports.ML_POWERED_JS_QUERIES_PACK_NAME, + version, + }); } exports.getMlPoweredJsQueriesPack = getMlPoweredJsQueriesPack; /** @@ -581,9 +592,8 @@ exports.getMlPoweredJsQueriesPack = getMlPoweredJsQueriesPack; */ function getMlPoweredJsQueriesStatus(config) { const mlPoweredJsQueryPacks = (config.packs.javascript || []) - .map((pack) => pack.split("@")) - .filter((packNameVersion) => packNameVersion[0] === "codeql/javascript-experimental-atm-queries" && - packNameVersion.length <= 2); + .map((p) => (0, config_utils_1.parsePacksSpecification)(p)) + .filter((pack) => pack.name === "codeql/javascript-experimental-atm-queries" && !pack.path); switch (mlPoweredJsQueryPacks.length) { case 1: // We should always specify an explicit version string in `getMlPoweredJsQueriesPack`, @@ -591,7 +601,7 @@ function getMlPoweredJsQueriesStatus(config) { // with each version of the CodeQL Action. Therefore in practice we should only hit the // `latest` case here when customers have explicitly added the ML-powered query pack to their // CodeQL config. - return mlPoweredJsQueryPacks[0][1] || "latest"; + return mlPoweredJsQueryPacks[0].version || "latest"; case 0: return "false"; default: diff --git a/lib/util.js.map b/lib/util.js.map index 8082ae9e5b..539721e73a 100644 --- a/lib/util.js.map +++ b/lib/util.js.map @@ -1 +1 @@ -{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"util.js","sourceRoot":"","sources":["../src/util.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/util.test.js b/lib/util.test.js index aee9e516c1..f81546c5ec 100644 --- a/lib/util.test.js +++ b/lib/util.test.js @@ -209,13 +209,13 @@ const ML_POWERED_JS_STATUS_TESTS = [ // If no packs are loaded, status is false. [[], "false"], // If another pack is loaded but not the ML-powered query pack, status is false. - [["someOtherPack"], "false"], + [["some-other/pack"], "false"], // If the ML-powered query pack is loaded with a specific version, status is that version. [[`${util.ML_POWERED_JS_QUERIES_PACK_NAME}@~0.1.0`], "~0.1.0"], // If the ML-powered query pack is loaded with a specific version and another pack is loaded, the // status is the version of the ML-powered query pack. [ - ["someOtherPack", `${util.ML_POWERED_JS_QUERIES_PACK_NAME}@~0.1.0`], + ["some-other/pack", `${util.ML_POWERED_JS_QUERIES_PACK_NAME}@~0.1.0`], "~0.1.0", ], // If the ML-powered query pack is loaded without a version, the status is "latest". @@ -230,7 +230,7 @@ const ML_POWERED_JS_STATUS_TESTS = [ ], // If the ML-powered query pack is loaded with no specific version, and another pack is loaded, // the status is "latest". - [["someOtherPack", util.ML_POWERED_JS_QUERIES_PACK_NAME], "latest"], + [["some-other/pack", util.ML_POWERED_JS_QUERIES_PACK_NAME], "latest"], ]; for (const [packs, expectedStatus] of ML_POWERED_JS_STATUS_TESTS) { const packDescriptions = `[${packs diff --git a/lib/util.test.js.map b/lib/util.test.js.map index 1c5e60313d..0ebbbe9f27 100644 --- a/lib/util.test.js.map +++ b/lib/util.test.js.map @@ -1 +1 @@ -{"version":3,"file":"util.test.js","sourceRoot":"","sources":["../src/util.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"util.test.js","sourceRoot":"","sources":["../src/util.test.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/node_modules/.package-lock.json b/node_modules/.package-lock.json index 5abf4b86a4..673bbadc11 100644 --- a/node_modules/.package-lock.json +++ b/node_modules/.package-lock.json @@ -1,6 +1,6 @@ { "name": "codeql", - "version": "2.1.12", + "version": "2.1.13", "lockfileVersion": 2, "requires": true, "packages": { @@ -469,6 +469,12 @@ "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", "dev": true }, + "node_modules/@types/js-yaml": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.5.tgz", + "integrity": "sha512-FhpRzf927MNQdRZP0J5DLIdTXhjLYzeUTmLAu69mnVksLH9CJY3IuSeEgbKUki7GQZm0WqDkGzyxju2EZGD2wA==", + "dev": true + }, "node_modules/@types/json-schema": { "version": "7.0.8", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.8.tgz", diff --git a/node_modules/@types/js-yaml/LICENSE b/node_modules/@types/js-yaml/LICENSE new file mode 100755 index 0000000000..9e841e7a26 --- /dev/null +++ b/node_modules/@types/js-yaml/LICENSE @@ -0,0 +1,21 @@ + MIT License + + Copyright (c) Microsoft Corporation. + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE diff --git a/node_modules/@types/js-yaml/README.md b/node_modules/@types/js-yaml/README.md new file mode 100755 index 0000000000..fbd44dd152 --- /dev/null +++ b/node_modules/@types/js-yaml/README.md @@ -0,0 +1,16 @@ +# Installation +> `npm install --save @types/js-yaml` + +# Summary +This package contains type definitions for js-yaml (https://github.com/nodeca/js-yaml). + +# Details +Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/js-yaml. + +### Additional Details + * Last updated: Fri, 19 Nov 2021 18:01:12 GMT + * Dependencies: none + * Global values: `jsyaml` + +# Credits +These definitions were written by [Bart van der Schoor](https://github.com/Bartvds), [Sebastian Clausen](https://github.com/sclausen), [ExE Boss](https://github.com/ExE-Boss), [Armaan Tobaccowalla](https://github.com/ArmaanT), and [Linus Unnebäck](https://github.com/LinusU). diff --git a/node_modules/@types/js-yaml/index.d.mts b/node_modules/@types/js-yaml/index.d.mts new file mode 100755 index 0000000000..8faff016fc --- /dev/null +++ b/node_modules/@types/js-yaml/index.d.mts @@ -0,0 +1,2 @@ +export * from "./index.js"; +export { default } from "./index.js"; \ No newline at end of file diff --git a/node_modules/@types/js-yaml/index.d.ts b/node_modules/@types/js-yaml/index.d.ts new file mode 100755 index 0000000000..cfb9b45bfc --- /dev/null +++ b/node_modules/@types/js-yaml/index.d.ts @@ -0,0 +1,154 @@ +// Type definitions for js-yaml 4.0 +// Project: https://github.com/nodeca/js-yaml +// Definitions by: Bart van der Schoor +// Sebastian Clausen +// ExE Boss +// Armaan Tobaccowalla +// Linus Unnebäck +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.2 + +export as namespace jsyaml; + +export function load(str: string, opts?: LoadOptions): unknown; + +export class Type { + constructor(tag: string, opts?: TypeConstructorOptions); + kind: 'sequence' | 'scalar' | 'mapping' | null; + resolve(data: any): boolean; + construct(data: any, type?: string): any; + instanceOf: object | null; + predicate: ((data: object) => boolean) | null; + represent: ((data: object) => any) | { [x: string]: (data: object) => any } | null; + representName: ((data: object) => any) | null; + defaultStyle: string | null; + multi: boolean; + styleAliases: { [x: string]: any }; +} + +export class Schema { + constructor(definition: SchemaDefinition | Type[] | Type); + extend(types: SchemaDefinition | Type[] | Type): Schema; +} + +export function loadAll(str: string, iterator?: null, opts?: LoadOptions): unknown[]; +export function loadAll(str: string, iterator: (doc: unknown) => void, opts?: LoadOptions): void; + +export function dump(obj: any, opts?: DumpOptions): string; + +export interface LoadOptions { + /** string to be used as a file path in error/warning messages. */ + filename?: string | undefined; + /** function to call on warning messages. */ + onWarning?(this: null, e: YAMLException): void; + /** specifies a schema to use. */ + schema?: Schema | undefined; + /** compatibility with JSON.parse behaviour. */ + json?: boolean | undefined; + /** listener for parse events */ + listener?(this: State, eventType: EventType, state: State): void; +} + +export type EventType = 'open' | 'close'; + +export interface State { + input: string; + filename: string | null; + schema: Schema; + onWarning: (this: null, e: YAMLException) => void; + json: boolean; + length: number; + position: number; + line: number; + lineStart: number; + lineIndent: number; + version: null | number; + checkLineBreaks: boolean; + kind: string; + result: any; + implicitTypes: Type[]; +} + +export interface DumpOptions { + /** indentation width to use (in spaces). */ + indent?: number | undefined; + /** when true, will not add an indentation level to array elements */ + noArrayIndent?: boolean | undefined; + /** do not throw on invalid types (like function in the safe schema) and skip pairs and single values with such types. */ + skipInvalid?: boolean | undefined; + /** specifies level of nesting, when to switch from block to flow style for collections. -1 means block style everwhere */ + flowLevel?: number | undefined; + /** Each tag may have own set of styles. - "tag" => "style" map. */ + styles?: { [x: string]: any } | undefined; + /** specifies a schema to use. */ + schema?: Schema | undefined; + /** if true, sort keys when dumping YAML. If a function, use the function to sort the keys. (default: false) */ + sortKeys?: boolean | ((a: any, b: any) => number) | undefined; + /** set max line width. (default: 80) */ + lineWidth?: number | undefined; + /** if true, don't convert duplicate objects into references (default: false) */ + noRefs?: boolean | undefined; + /** if true don't try to be compatible with older yaml versions. Currently: don't quote "yes", "no" and so on, as required for YAML 1.1 (default: false) */ + noCompatMode?: boolean | undefined; + /** + * if true flow sequences will be condensed, omitting the space between `key: value` or `a, b`. Eg. `'[a,b]'` or `{a:{b:c}}`. + * Can be useful when using yaml for pretty URL query params as spaces are %-encoded. (default: false). + */ + condenseFlow?: boolean | undefined; + /** strings will be quoted using this quoting style. If you specify single quotes, double quotes will still be used for non-printable characters. (default: `'`) */ + quotingType?: "'" | '"' | undefined; + /** if true, all non-key strings will be quoted even if they normally don't need to. (default: false) */ + forceQuotes?: boolean | undefined; + /** callback `function (key, value)` called recursively on each key/value in source object (see `replacer` docs for `JSON.stringify`). */ + replacer?: ((key: string, value: any) => any) | undefined; +} + +export interface TypeConstructorOptions { + kind?: 'sequence' | 'scalar' | 'mapping' | undefined; + resolve?: ((data: any) => boolean) | undefined; + construct?: ((data: any, type?: string) => any) | undefined; + instanceOf?: object | undefined; + predicate?: ((data: object) => boolean) | undefined; + represent?: ((data: object) => any) | { [x: string]: (data: object) => any } | undefined; + representName?: ((data: object) => any) | undefined; + defaultStyle?: string | undefined; + multi?: boolean | undefined; + styleAliases?: { [x: string]: any } | undefined; +} + +export interface SchemaDefinition { + implicit?: Type[] | undefined; + explicit?: Type[] | undefined; +} + +/** only strings, arrays and plain objects: http://www.yaml.org/spec/1.2/spec.html#id2802346 */ +export let FAILSAFE_SCHEMA: Schema; +/** only strings, arrays and plain objects: http://www.yaml.org/spec/1.2/spec.html#id2802346 */ +export let JSON_SCHEMA: Schema; +/** same as JSON_SCHEMA: http://www.yaml.org/spec/1.2/spec.html#id2804923 */ +export let CORE_SCHEMA: Schema; +/** all supported YAML types */ +export let DEFAULT_SCHEMA: Schema; + +export interface Mark { + buffer: string; + column: number; + line: number; + name: string; + position: number; + snippet: string; +} + +export class YAMLException extends Error { + constructor(reason?: string, mark?: Mark); + + toString(compact?: boolean): string; + + name: string; + + reason: string; + + message: string; + + mark: Mark; +} diff --git a/node_modules/@types/js-yaml/package.json b/node_modules/@types/js-yaml/package.json new file mode 100755 index 0000000000..23c1320180 --- /dev/null +++ b/node_modules/@types/js-yaml/package.json @@ -0,0 +1,53 @@ +{ + "name": "@types/js-yaml", + "version": "4.0.5", + "description": "TypeScript definitions for js-yaml", + "homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/js-yaml", + "license": "MIT", + "contributors": [ + { + "name": "Bart van der Schoor", + "url": "https://github.com/Bartvds", + "githubUsername": "Bartvds" + }, + { + "name": "Sebastian Clausen", + "url": "https://github.com/sclausen", + "githubUsername": "sclausen" + }, + { + "name": "ExE Boss", + "url": "https://github.com/ExE-Boss", + "githubUsername": "ExE-Boss" + }, + { + "name": "Armaan Tobaccowalla", + "url": "https://github.com/ArmaanT", + "githubUsername": "ArmaanT" + }, + { + "name": "Linus Unnebäck", + "url": "https://github.com/LinusU", + "githubUsername": "LinusU" + } + ], + "main": "", + "types": "index.d.ts", + "repository": { + "type": "git", + "url": "https://github.com/DefinitelyTyped/DefinitelyTyped.git", + "directory": "types/js-yaml" + }, + "scripts": {}, + "dependencies": {}, + "typesPublisherContentHash": "6f40877154edac83ffa22d53a6aca74f151a0d094074c81ce7fb21df57ea5725", + "typeScriptVersion": "3.8", + "exports": { + ".": { + "types": { + "import": "./index.d.mts", + "default": "./index.d.ts" + } + } + } +} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index f78268939d..e284a5c681 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "codeql", - "version": "2.1.12", + "version": "2.1.13", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "codeql", - "version": "2.1.12", + "version": "2.1.13", "license": "MIT", "dependencies": { "@actions/artifact": "^1.0.0", @@ -38,6 +38,7 @@ }, "devDependencies": { "@ava/typescript": "3.0.1", + "@types/js-yaml": "^4.0.5", "@types/long": "4.0.1", "@types/node": "16.11.22", "@types/semver": "^7.3.8", @@ -521,6 +522,12 @@ "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", "dev": true }, + "node_modules/@types/js-yaml": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.5.tgz", + "integrity": "sha512-FhpRzf927MNQdRZP0J5DLIdTXhjLYzeUTmLAu69mnVksLH9CJY3IuSeEgbKUki7GQZm0WqDkGzyxju2EZGD2wA==", + "dev": true + }, "node_modules/@types/json-schema": { "version": "7.0.8", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.8.tgz", @@ -5885,6 +5892,12 @@ "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", "dev": true }, + "@types/js-yaml": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.5.tgz", + "integrity": "sha512-FhpRzf927MNQdRZP0J5DLIdTXhjLYzeUTmLAu69mnVksLH9CJY3IuSeEgbKUki7GQZm0WqDkGzyxju2EZGD2wA==", + "dev": true + }, "@types/json-schema": { "version": "7.0.8", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.8.tgz", diff --git a/package.json b/package.json index 526b90d97a..dd8a91b752 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "codeql", - "version": "2.1.12", + "version": "2.1.13", "private": true, "description": "CodeQL action", "scripts": { @@ -53,6 +53,7 @@ ], "devDependencies": { "@ava/typescript": "3.0.1", + "@types/js-yaml": "^4.0.5", "@types/long": "4.0.1", "@types/node": "16.11.22", "@types/semver": "^7.3.8", diff --git a/src/actions-util.test.ts b/src/actions-util.test.ts index 95a8c37b15..d706c3e073 100644 --- a/src/actions-util.test.ts +++ b/src/actions-util.test.ts @@ -269,7 +269,7 @@ test("getWorkflowErrors() when on.push is correct with empty objects", (t) => { on: push: pull_request: -`) +`) as actionsutil.Workflow ); t.deepEqual(...errorCodes(errors, [])); @@ -441,7 +441,7 @@ on: push: branches: ["main"] pull_request: -`) +`) as actionsutil.Workflow ); t.deepEqual( @@ -559,7 +559,7 @@ test("getWorkflowErrors() when branches contain dots", (t) => { pull_request: # The branches below must be a subset of the branches above branches: [4.1, master] -`) +`) as actionsutil.Workflow ); t.deepEqual(...errorCodes(errors, [])); @@ -575,7 +575,7 @@ on: pull_request: # The branches below must be a subset of the branches above branches: [master] -`) +`) as actionsutil.Workflow ); t.deepEqual(...errorCodes(errors, [])); @@ -604,7 +604,7 @@ jobs: test3: steps: [] -`) +`) as actionsutil.Workflow ); t.deepEqual( @@ -635,7 +635,7 @@ jobs: test3: steps: [] -`) +`) as actionsutil.Workflow ); t.deepEqual(...errorCodes(errors, [])); @@ -645,7 +645,7 @@ test("getWorkflowErrors() when on is missing", (t) => { const errors = actionsutil.getWorkflowErrors( yaml.load(` name: "CodeQL" -`) +`) as actionsutil.Workflow ); t.deepEqual(...errorCodes(errors, [])); @@ -658,7 +658,7 @@ test("getWorkflowErrors() with a different on setup", (t) => { yaml.load(` name: "CodeQL" on: "workflow_dispatch" -`) +`) as actionsutil.Workflow ), [] ) @@ -670,7 +670,7 @@ on: "workflow_dispatch" yaml.load(` name: "CodeQL" on: [workflow_dispatch] -`) +`) as actionsutil.Workflow ), [] ) @@ -683,7 +683,7 @@ on: [workflow_dispatch] name: "CodeQL" on: workflow_dispatch: {} -`) +`) as actionsutil.Workflow ), [] ) @@ -699,7 +699,7 @@ name: "CodeQL" on: push: branches: [master] -`) +`) as actionsutil.Workflow ), [] ) @@ -711,7 +711,7 @@ on: yaml.load(` name: "CodeQL" on: ["push"] -`) +`) as actionsutil.Workflow ), [] ) diff --git a/src/actions-util.ts b/src/actions-util.ts index 55e40572fa..c404c06e6b 100644 --- a/src/actions-util.ts +++ b/src/actions-util.ts @@ -191,7 +191,7 @@ interface WorkflowTriggers { pull_request?: WorkflowTrigger | null; } -interface Workflow { +export interface Workflow { jobs?: { [key: string]: WorkflowJob }; on?: string | string[] | WorkflowTriggers; } @@ -411,7 +411,7 @@ export async function getWorkflow(): Promise { relativePath ); - return yaml.load(fs.readFileSync(absolutePath, "utf-8")); + return yaml.load(fs.readFileSync(absolutePath, "utf-8")) as Workflow; } /** diff --git a/src/analyze.test.ts b/src/analyze.test.ts index d79ac792c5..3bda3202e7 100644 --- a/src/analyze.test.ts +++ b/src/analyze.test.ts @@ -1,11 +1,16 @@ import * as fs from "fs"; import * as path from "path"; -import test from "ava"; +import test, { ExecutionContext } from "ava"; import * as yaml from "js-yaml"; import * as sinon from "sinon"; -import { runQueries } from "./analyze"; +import { + convertPackToQuerySuiteEntry, + createQuerySuiteContents, + runQueries, + validateQueryFilters, +} from "./analyze"; import { setCodeQL } from "./codeql"; import { Config } from "./config-utils"; import * as count from "./count-loc"; @@ -249,3 +254,161 @@ test("status report fields and search path setting", async (t) => { } } }); + +test("validateQueryFilters", (t) => { + t.notThrows(() => validateQueryFilters([])); + t.notThrows(() => validateQueryFilters(undefined)); + t.notThrows(() => { + return validateQueryFilters([ + { + exclude: { + "problem.severity": "recommendation", + }, + }, + { + exclude: { + "tags contain": ["foo", "bar"], + }, + }, + { + include: { + "problem.severity": "something-to-think-about", + }, + }, + { + include: { + "tags contain": ["baz", "bop"], + }, + }, + ]); + }); + + t.throws( + () => { + return validateQueryFilters([ + { + exclude: { + "tags contain": ["foo", "bar"], + }, + include: { + "tags contain": ["baz", "bop"], + }, + }, + ]); + }, + { message: /Query filter must have exactly one key/ } + ); + + t.throws( + () => { + return validateQueryFilters([{ xxx: "foo" } as any]); + }, + { message: /Only "include" or "exclude" filters are allowed/ } + ); +}); + +const convertPackToQuerySuiteEntryMacro = test.macro({ + exec: (t: ExecutionContext, packSpec: string, suiteEntry: any) => + t.deepEqual(convertPackToQuerySuiteEntry(packSpec), suiteEntry), + + title: (_providedTitle, packSpec: string) => `Query Suite Entry: ${packSpec}`, +}); + +test(convertPackToQuerySuiteEntryMacro, "a/b", { + qlpack: "a/b", + from: undefined, + version: undefined, + query: undefined, + queries: undefined, + apply: undefined, +}); + +test(convertPackToQuerySuiteEntryMacro, "a/b@~1.2.3", { + qlpack: "a/b", + from: undefined, + version: "~1.2.3", + query: undefined, + queries: undefined, + apply: undefined, +}); + +test(convertPackToQuerySuiteEntryMacro, "a/b:my/path", { + qlpack: undefined, + from: "a/b", + version: undefined, + query: undefined, + queries: "my/path", + apply: undefined, +}); + +test(convertPackToQuerySuiteEntryMacro, "a/b@~1.2.3:my/path", { + qlpack: undefined, + from: "a/b", + version: "~1.2.3", + query: undefined, + queries: "my/path", + apply: undefined, +}); + +test(convertPackToQuerySuiteEntryMacro, "a/b:my/path/query.ql", { + qlpack: undefined, + from: "a/b", + version: undefined, + query: "my/path/query.ql", + queries: undefined, + apply: undefined, +}); + +test(convertPackToQuerySuiteEntryMacro, "a/b@~1.2.3:my/path/query.ql", { + qlpack: undefined, + from: "a/b", + version: "~1.2.3", + query: "my/path/query.ql", + queries: undefined, + apply: undefined, +}); + +test(convertPackToQuerySuiteEntryMacro, "a/b:my/path/suite.qls", { + qlpack: undefined, + from: "a/b", + version: undefined, + query: undefined, + queries: undefined, + apply: "my/path/suite.qls", +}); + +test(convertPackToQuerySuiteEntryMacro, "a/b@~1.2.3:my/path/suite.qls", { + qlpack: undefined, + from: "a/b", + version: "~1.2.3", + query: undefined, + queries: undefined, + apply: "my/path/suite.qls", +}); + +test("convertPackToQuerySuiteEntry Failure", (t) => { + t.throws(() => convertPackToQuerySuiteEntry("this-is-not-a-pack")); +}); + +test("createQuerySuiteContents", (t) => { + const yamlResult = createQuerySuiteContents( + ["query1.ql", "query2.ql"], + [ + { + exclude: { "problem.severity": "recommendation" }, + }, + { + include: { "problem.severity": "recommendation" }, + }, + ] + ); + const expected = `- query: query1.ql +- query: query2.ql +- exclude: + problem.severity: recommendation +- include: + problem.severity: recommendation +`; + + t.deepEqual(yamlResult, expected); +}); diff --git a/src/analyze.ts b/src/analyze.ts index 6932a219b9..0edb367119 100644 --- a/src/analyze.ts +++ b/src/analyze.ts @@ -2,6 +2,7 @@ import * as fs from "fs"; import * as path from "path"; import * as toolrunner from "@actions/exec/lib/toolrunner"; +import del from "del"; import * as yaml from "js-yaml"; import * as analysisPaths from "./analysis-paths"; @@ -151,7 +152,7 @@ function dbIsFinalized( try { const dbInfo = yaml.load( fs.readFileSync(path.resolve(dbPath, "codeql-database.yml"), "utf8") - ); + ) as { inProgress?: boolean }; return !("inProgress" in dbInfo); } catch (e) { logger.warning( @@ -223,6 +224,9 @@ export async function runQueries( for (const language of config.languages) { const queries = config.queries[language]; + const queryFilters = validateQueryFilters( + config.originalUserInput["query-filters"] + ); const packsWithVersion = config.packs[language] || []; const hasBuiltinQueries = queries?.builtin.length > 0; @@ -260,7 +264,7 @@ export async function runQueries( await runQueryGroup( language, "builtin", - createQuerySuiteContents(queries["builtin"]), + createQuerySuiteContents(queries["builtin"], queryFilters), undefined ) ); @@ -275,7 +279,10 @@ export async function runQueries( await runQueryGroup( language, `custom-${i}`, - createQuerySuiteContents(queries["custom"][i].queries), + createQuerySuiteContents( + queries["custom"][i].queries, + queryFilters + ), queries["custom"][i].searchPath ) ); @@ -284,12 +291,7 @@ export async function runQueries( } if (packsWithVersion.length > 0) { querySuitePaths.push( - ...(await runQueryPacks( - language, - "packs", - packsWithVersion, - undefined - )) + await runQueryPacks(language, "packs", packsWithVersion, queryFilters) ); ranCustom = true; } @@ -391,32 +393,61 @@ export async function runQueries( language: Language, type: string, packs: string[], - searchPath: string | undefined - ): Promise { + queryFilters: configUtils.QueryFilter[] + ): Promise { const databasePath = util.getCodeQLDatabasePath(config, language); - // Run the queries individually instead of all at once to avoid command - // line length restrictions, particularly on windows. for (const pack of packs) { logger.debug(`Running query pack for ${language}-${type}: ${pack}`); + } - const codeql = await getCodeQL(config.codeQLCmd); - await codeql.databaseRunQueries( - databasePath, - searchPath, - pack, - memoryFlag, - threadsFlag - ); + // combine the list of packs into a query suite in order to run them all simultaneously. + const querySuite = ( + packs.map(convertPackToQuerySuiteEntry) as configUtils.QuerySuiteEntry[] + ).concat(queryFilters); - logger.debug(`BQRS results produced for ${language} (queries: ${type})"`); - } - return packs; + const querySuitePath = `${databasePath}-queries-${type}.qls`; + fs.writeFileSync(querySuitePath, yaml.dump(querySuite)); + + logger.debug(`BQRS results produced for ${language} (queries: ${type})"`); + + const codeql = await getCodeQL(config.codeQLCmd); + await codeql.databaseRunQueries( + databasePath, + undefined, + querySuitePath, + memoryFlag, + threadsFlag + ); + + return querySuitePath; } } -function createQuerySuiteContents(queries: string[]) { - return queries.map((q: string) => `- query: ${q}`).join("\n"); +export function convertPackToQuerySuiteEntry( + packStr: string +): configUtils.QuerySuitePackEntry { + const pack = configUtils.parsePacksSpecification(packStr); + return { + qlpack: !pack.path ? pack.name : undefined, + from: pack.path ? pack.name : undefined, + version: pack.version, + query: pack.path?.endsWith(".ql") ? pack.path : undefined, + queries: + !pack.path?.endsWith(".ql") && !pack.path?.endsWith(".qls") + ? pack.path + : undefined, + apply: pack.path?.endsWith(".qls") ? pack.path : undefined, + }; +} + +export function createQuerySuiteContents( + queries: string[], + queryFilters: configUtils.QueryFilter[] +) { + return yaml.dump( + queries.map((q: string) => ({ query: q })).concat(queryFilters as any) + ); } export async function runFinalize( @@ -435,13 +466,8 @@ export async function runFinalize( delete process.env[sharedEnv.ODASA_TRACER_CONFIGURATION]; } - // After switching to Node16, this entire block can be replaced with `await fs.promises.rm(outputDir, { recursive: true, force: true });`. try { - await fs.promises.rmdir(outputDir, { - recursive: true, - maxRetries: 5, - retryDelay: 2000, - } as any); + await del(outputDir, { force: true }); } catch (error: any) { if (error?.code !== "ENOENT") { throw error; @@ -509,3 +535,33 @@ function printLinesOfCodeSummary( ); } } + +// exported for testing +export function validateQueryFilters(queryFilters?: configUtils.QueryFilter[]) { + if (!queryFilters) { + return []; + } + + const errors: string[] = []; + for (const qf of queryFilters) { + const keys = Object.keys(qf); + if (keys.length !== 1) { + errors.push( + `Query filter must have exactly one key: ${JSON.stringify(qf)}` + ); + } + if (!["exclude", "include"].includes(keys[0])) { + errors.push( + `Only "include" or "exclude" filters are allowed:\n${JSON.stringify( + qf + )}` + ); + } + } + + if (errors.length) { + throw new Error(`Invalid query filter.\n${errors.join("\n")}`); + } + + return queryFilters; +} diff --git a/src/api-compatibility.json b/src/api-compatibility.json index d3180807c9..e400a6aec8 100644 --- a/src/api-compatibility.json +++ b/src/api-compatibility.json @@ -1 +1 @@ -{"maximumVersion": "3.5", "minimumVersion": "3.1"} +{"maximumVersion": "3.6", "minimumVersion": "3.2"} diff --git a/src/config-utils.test.ts b/src/config-utils.test.ts index c82ee27768..bc657cbeb4 100644 --- a/src/config-utils.test.ts +++ b/src/config-utils.test.ts @@ -1572,6 +1572,60 @@ test(invalidPackNameMacro, "c/d@../a"); test(invalidPackNameMacro, "c/d@b/../a"); test(invalidPackNameMacro, "c/d:z@1"); +/** + * Test macro for pretty printing pack specs + */ +const packSpecPrettyPrintingMacro = test.macro({ + exec: (t: ExecutionContext, packStr: string, packObj: configUtils.Pack) => { + const parsed = configUtils.parsePacksSpecification(packStr); + t.deepEqual(parsed, packObj, "parsed pack spec is correct"); + const stringified = configUtils.prettyPrintPack(packObj); + t.deepEqual( + stringified, + packStr.trim(), + "pretty-printed pack spec is correct" + ); + + t.deepEqual( + configUtils.validatePackSpecification(packStr), + packStr.trim(), + "pack spec is valid" + ); + }, + title: ( + _providedTitle: string | undefined, + packStr: string, + // eslint-disable-next-line @typescript-eslint/no-unused-vars + _packObj: configUtils.Pack + ) => `Prettyprint pack spec: '${packStr}'`, +}); + +test(packSpecPrettyPrintingMacro, "a/b", { + name: "a/b", + version: undefined, + path: undefined, +}); +test(packSpecPrettyPrintingMacro, "a/b@~1.2.3", { + name: "a/b", + version: "~1.2.3", + path: undefined, +}); +test(packSpecPrettyPrintingMacro, "a/b@~1.2.3:abc/def", { + name: "a/b", + version: "~1.2.3", + path: "abc/def", +}); +test(packSpecPrettyPrintingMacro, "a/b:abc/def", { + name: "a/b", + version: undefined, + path: "abc/def", +}); +test(packSpecPrettyPrintingMacro, " a/b:abc/def ", { + name: "a/b", + version: undefined, + path: "abc/def", +}); + /** * Test macro for testing the packs block and the packs input */ @@ -1865,3 +1919,23 @@ test( "security-and-quality", "0.0.1" ); +// Test that ML-powered queries are run on all platforms running `security-extended` on CodeQL +// CLI 2.9.3+. +test( + mlPoweredQueriesMacro, + "2.9.3", + true, + undefined, + "security-extended", + "~0.3.0" +); +// Test that ML-powered queries are run on all platforms running `security-and-quality` on CodeQL +// CLI 2.9.3+. +test( + mlPoweredQueriesMacro, + "2.9.3", + true, + undefined, + "security-and-quality", + "~0.3.0" +); diff --git a/src/config-utils.ts b/src/config-utils.ts index 9ba35da967..8027a6e8fb 100644 --- a/src/config-utils.ts +++ b/src/config-utils.ts @@ -49,8 +49,38 @@ export interface UserConfig { // language. If this is a single language analysis, then no split by // language is necessary. packs?: Record | string[]; + + // Set of query filters to include and exclude extra queries based on + // codeql query suite `include` and `exclude` properties + "query-filters"?: QueryFilter[]; +} + +export type QueryFilter = ExcludeQueryFilter | IncludeQueryFilter; + +interface ExcludeQueryFilter { + exclude: Record; } +interface IncludeQueryFilter { + include: Record; +} + +export type QuerySuitePackEntry = { + version?: string; +} & ( + | { + qlpack: string; + } + | { + from?: string; + query?: string; + queries?: string; + apply?: string; + } +); + +export type QuerySuiteEntry = QuerySuitePackEntry | QueryFilter; + /** * Lists of query files for each language. * Will only contain .ql files and not other kinds of files, @@ -157,6 +187,12 @@ export interface Config { export type Packs = Partial>; +export interface Pack { + name: string; + version?: string; + path?: string; +} + /** * A list of queries from https://github.com/github/codeql that * we don't want to run. Disabling them here is a quicker alternative to @@ -319,11 +355,7 @@ async function addBuiltinSuiteQueries( } function isMlPoweredJsQueriesPack(pack: string) { - return ( - pack === ML_POWERED_JS_QUERIES_PACK_NAME || - pack.startsWith(`${ML_POWERED_JS_QUERIES_PACK_NAME}@`) || - pack.startsWith(`${ML_POWERED_JS_QUERIES_PACK_NAME}:`) - ); + return parsePacksSpecification(pack).name === ML_POWERED_JS_QUERIES_PACK_NAME; } /** @@ -1170,10 +1202,10 @@ export function parsePacksFromConfig( if (!languages.includes(lang as Language)) { throw new Error(getPacksRequireLanguage(lang, configFile)); } - packs[lang] = []; - for (const packStr of packsArr) { - packs[lang].push(validatePacksSpecification(packStr, configFile)); - } + + packs[lang] = packsArr.map((packStr) => + validatePackSpecification(packStr, configFile) + ); } return packs; } @@ -1206,7 +1238,7 @@ function parsePacksFromInput( return { [languages[0]]: packsInput.split(",").reduce((packs, pack) => { - packs.push(validatePacksSpecification(pack, "")); + packs.push(validatePackSpecification(pack)); return packs; }, [] as string[]), }; @@ -1230,10 +1262,10 @@ function parsePacksFromInput( * @param packStr the package specification to verify. * @param configFile Config file to use for error reporting */ -export function validatePacksSpecification( +export function parsePacksSpecification( packStr: string, configFile?: string -): string { +): Pack { if (typeof packStr !== "string") { throw new Error(getPacksStrInvalid(packStr, configFile)); } @@ -1286,9 +1318,21 @@ export function validatePacksSpecification( throw new Error(getPacksStrInvalid(packStr, configFile)); } - return ( - packName + (version ? `@${version}` : "") + (packPath ? `:${packPath}` : "") - ); + return { + name: packName, + version, + path: packPath, + }; +} + +export function prettyPrintPack(pack: Pack) { + return `${pack.name}${pack.version ? `@${pack.version}` : ""}${ + pack.path ? `:${pack.path}` : "" + }`; +} + +export function validatePackSpecification(pack: string, configFile?: string) { + return prettyPrintPack(parsePacksSpecification(pack, configFile)); } // exported for testing @@ -1448,7 +1492,7 @@ function getLocalConfig(configFile: string, workspacePath: string): UserConfig { throw new Error(getConfigFileDoesNotExistErrorMessage(configFile)); } - return yaml.load(fs.readFileSync(configFile, "utf8")); + return yaml.load(fs.readFileSync(configFile, "utf8")) as UserConfig; } async function getRemoteConfig( @@ -1483,7 +1527,9 @@ async function getRemoteConfig( throw new Error(getConfigFileFormatInvalidMessage(configFile)); } - return yaml.load(Buffer.from(fileContents, "base64").toString("binary")); + return yaml.load( + Buffer.from(fileContents, "base64").toString("binary") + ) as UserConfig; } /** diff --git a/src/defaults.json b/src/defaults.json index 91bb15024d..0ef942bc41 100644 --- a/src/defaults.json +++ b/src/defaults.json @@ -1,3 +1,3 @@ { - "bundleVersion": "codeql-bundle-20220527" + "bundleVersion": "codeql-bundle-20220615" } diff --git a/src/languages.ts b/src/languages.ts index a696908c7f..357cea5c18 100644 --- a/src/languages.ts +++ b/src/languages.ts @@ -7,6 +7,7 @@ export enum Language { javascript = "javascript", python = "python", ruby = "ruby", + swift = "swift", } // Additional names for languages @@ -37,7 +38,7 @@ export function parseLanguage(language: string): Language | undefined { export function isTracedLanguage(language: Language): boolean { return ( - ["cpp", "java", "csharp"].includes(language) || + ["cpp", "java", "csharp", "swift"].includes(language) || (process.env["CODEQL_EXTRACTOR_GO_BUILD_TRACING"] === "on" && language === Language.go) ); diff --git a/src/util.test.ts b/src/util.test.ts index 807a347993..39d2942ba2 100644 --- a/src/util.test.ts +++ b/src/util.test.ts @@ -298,13 +298,13 @@ const ML_POWERED_JS_STATUS_TESTS: Array<[string[], string]> = [ // If no packs are loaded, status is false. [[], "false"], // If another pack is loaded but not the ML-powered query pack, status is false. - [["someOtherPack"], "false"], + [["some-other/pack"], "false"], // If the ML-powered query pack is loaded with a specific version, status is that version. [[`${util.ML_POWERED_JS_QUERIES_PACK_NAME}@~0.1.0`], "~0.1.0"], // If the ML-powered query pack is loaded with a specific version and another pack is loaded, the // status is the version of the ML-powered query pack. [ - ["someOtherPack", `${util.ML_POWERED_JS_QUERIES_PACK_NAME}@~0.1.0`], + ["some-other/pack", `${util.ML_POWERED_JS_QUERIES_PACK_NAME}@~0.1.0`], "~0.1.0", ], // If the ML-powered query pack is loaded without a version, the status is "latest". @@ -319,7 +319,7 @@ const ML_POWERED_JS_STATUS_TESTS: Array<[string[], string]> = [ ], // If the ML-powered query pack is loaded with no specific version, and another pack is loaded, // the status is "latest". - [["someOtherPack", util.ML_POWERED_JS_QUERIES_PACK_NAME], "latest"], + [["some-other/pack", util.ML_POWERED_JS_QUERIES_PACK_NAME], "latest"], ]; for (const [packs, expectedStatus] of ML_POWERED_JS_STATUS_TESTS) { diff --git a/src/util.ts b/src/util.ts index e41078be66..e7f9988e9d 100644 --- a/src/util.ts +++ b/src/util.ts @@ -11,7 +11,11 @@ import * as api from "./api-client"; import { getApiClient, GitHubApiDetails } from "./api-client"; import * as apiCompatibility from "./api-compatibility.json"; import { CodeQL, CODEQL_VERSION_NEW_TRACING } from "./codeql"; -import { Config } from "./config-utils"; +import { + Config, + parsePacksSpecification, + prettyPrintPack, +} from "./config-utils"; import { Language } from "./languages"; import { Logger } from "./logging"; @@ -664,10 +668,18 @@ export const ML_POWERED_JS_QUERIES_PACK_NAME = export async function getMlPoweredJsQueriesPack( codeQL: CodeQL ): Promise { - if (await codeQlVersionAbove(codeQL, "2.8.4")) { - return `${ML_POWERED_JS_QUERIES_PACK_NAME}@~0.2.0`; + let version; + if (await codeQlVersionAbove(codeQL, "2.9.3")) { + version = `~0.3.0`; + } else if (await codeQlVersionAbove(codeQL, "2.8.4")) { + version = `~0.2.0`; + } else { + version = `~0.1.0`; } - return `${ML_POWERED_JS_QUERIES_PACK_NAME}@~0.1.0`; + return prettyPrintPack({ + name: ML_POWERED_JS_QUERIES_PACK_NAME, + version, + }); } /** @@ -693,11 +705,10 @@ export async function getMlPoweredJsQueriesPack( */ export function getMlPoweredJsQueriesStatus(config: Config): string { const mlPoweredJsQueryPacks = (config.packs.javascript || []) - .map((pack) => pack.split("@")) + .map((p) => parsePacksSpecification(p)) .filter( - (packNameVersion) => - packNameVersion[0] === "codeql/javascript-experimental-atm-queries" && - packNameVersion.length <= 2 + (pack) => + pack.name === "codeql/javascript-experimental-atm-queries" && !pack.path ); switch (mlPoweredJsQueryPacks.length) { case 1: @@ -706,7 +717,7 @@ export function getMlPoweredJsQueriesStatus(config: Config): string { // with each version of the CodeQL Action. Therefore in practice we should only hit the // `latest` case here when customers have explicitly added the ML-powered query pack to their // CodeQL config. - return mlPoweredJsQueryPacks[0][1] || "latest"; + return mlPoweredJsQueryPacks[0].version || "latest"; case 0: return "false"; default: diff --git a/tests/multi-language-repo/.github/codeql/codeql-config-query-filters1.yml b/tests/multi-language-repo/.github/codeql/codeql-config-query-filters1.yml new file mode 100644 index 0000000000..d0376a1b28 --- /dev/null +++ b/tests/multi-language-repo/.github/codeql/codeql-config-query-filters1.yml @@ -0,0 +1,10 @@ +name: "Check SARIF for default queries with Single include, Single exclude" + +query-filters: +# This should run js/path-injection and js/zipslip +- include: + tags contain: external/cwe/cwe-022 + +# Removes js/path-injection +- exclude: + id: js/path-injection diff --git a/tests/multi-language-repo/.github/codeql/codeql-config-query-filters2.yml b/tests/multi-language-repo/.github/codeql/codeql-config-query-filters2.yml new file mode 100644 index 0000000000..8f9321c860 --- /dev/null +++ b/tests/multi-language-repo/.github/codeql/codeql-config-query-filters2.yml @@ -0,0 +1,21 @@ +name: "Check SARIF for query packs with Single include, Single exclude" + +disable-default-queries: true + +packs: + javascript: + - codeql/javascript-queries + - dsp-testing/codeql-pack1@1.0.0 + +query-filters: +# This should run js/path-injection and js/zipslip +- include: + tags contain: external/cwe/cwe-022 + +# Removes js/path-injection +- exclude: + id: js/path-injection + +# Query from extra pack +- include: + id: javascript/example/empty-or-one-block diff --git a/tests/multi-language-repo/.github/codeql/codeql-config-query-filters3.yml b/tests/multi-language-repo/.github/codeql/codeql-config-query-filters3.yml new file mode 100644 index 0000000000..e3ec3b32d6 --- /dev/null +++ b/tests/multi-language-repo/.github/codeql/codeql-config-query-filters3.yml @@ -0,0 +1,35 @@ +name: "Check SARIF for query packs and local queries with Single include, Single exclude" + +disable-default-queries: true + +queries: +# Local query + - name: Run an extra local query + uses: ./codeql-qlpacks/javascript-qlpack/show_ifs.ql + +# These queries are ignored + - name: Ignored queries + uses: ./codeql-qlpacks/complex-python-qlpack/rootAndBar.qls + + +packs: + javascript: + - codeql/javascript-queries + - dsp-testing/codeql-pack1@1.0.0 + +query-filters: +# This should run js/path-injection and js/zipslip +- include: + tags contain: external/cwe/cwe-022 + +# Removes js/path-injection +- exclude: + id: js/path-injection + +# Query from extra pack +- include: + id: javascript/example/empty-or-one-block + +# Local query +- include: + id: inrepo-javascript-querypack/show-ifs