-
Notifications
You must be signed in to change notification settings - Fork 377
Merge main into releases/v3 #3012
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Bumps the actions group with 1 update: [ruby/setup-ruby](https://github.com/ruby/setup-ruby). Updates `ruby/setup-ruby` from 1.247.0 to 1.253.0 - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Changelog](https://github.com/ruby/setup-ruby/blob/master/release.rb) - [Commits](ruby/setup-ruby@4727905...bb6434c) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-version: 1.253.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: actions ... Signed-off-by: dependabot[bot] <support@github.com>
Mergeback v3.29.5 refs/heads/releases/v3 into main
…s-010b5c0fb1 Bump ruby/setup-ruby from 1.247.0 to 1.253.0 in the actions group
* Bump form-data from 2.5.1 to 2.5.5 in the npm_and_yarn group Bumps the npm_and_yarn group with 1 update: [form-data](https://github.com/form-data/form-data). Updates `form-data` from 2.5.1 to 2.5.5 - [Release notes](https://github.com/form-data/form-data/releases) - [Changelog](https://github.com/form-data/form-data/blob/v2.5.5/CHANGELOG.md) - [Commits](form-data/form-data@v2.5.1...v2.5.5) --- updated-dependencies: - dependency-name: form-data dependency-version: 2.5.5 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] <support@github.com> * Update checked-in dependencies --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Michael B. Gale <mbg@github.com>
…sarif-files-ff Remove `disable_combine_sarif_files` feature flag
Bumps the npm group with 5 updates: | Package | From | To | | --- | --- | --- | | [follow-redirects](https://github.com/follow-redirects/follow-redirects) | `1.15.9` | `1.15.11` | | [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.38.0` | `8.39.0` | | [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.38.0` | `8.39.0` | | [nock](https://github.com/nock/nock) | `14.0.7` | `14.0.8` | | [typescript](https://github.com/microsoft/TypeScript) | `5.8.3` | `5.9.2` | Updates `follow-redirects` from 1.15.9 to 1.15.11 - [Release notes](https://github.com/follow-redirects/follow-redirects/releases) - [Commits](follow-redirects/follow-redirects@v1.15.9...v1.15.11) Updates `@typescript-eslint/eslint-plugin` from 8.38.0 to 8.39.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.39.0/packages/eslint-plugin) Updates `@typescript-eslint/parser` from 8.38.0 to 8.39.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.39.0/packages/parser) Updates `nock` from 14.0.7 to 14.0.8 - [Release notes](https://github.com/nock/nock/releases) - [Changelog](https://github.com/nock/nock/blob/main/CHANGELOG.md) - [Commits](nock/nock@v14.0.7...v14.0.8) Updates `typescript` from 5.8.3 to 5.9.2 - [Release notes](https://github.com/microsoft/TypeScript/releases) - [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release-publish.yml) - [Commits](microsoft/TypeScript@v5.8.3...v5.9.2) --- updated-dependencies: - dependency-name: follow-redirects dependency-version: 1.15.11 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: npm - dependency-name: "@typescript-eslint/eslint-plugin" dependency-version: 8.39.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: npm - dependency-name: "@typescript-eslint/parser" dependency-version: 8.39.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: npm - dependency-name: nock dependency-version: 14.0.8 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: npm - dependency-name: typescript dependency-version: 5.9.2 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: npm ... Signed-off-by: dependabot[bot] <support@github.com>
Bumps the actions group with 1 update: [ruby/setup-ruby](https://github.com/ruby/setup-ruby). Updates `ruby/setup-ruby` from 1.253.0 to 1.254.0 - [Release notes](https://github.com/ruby/setup-ruby/releases) - [Changelog](https://github.com/ruby/setup-ruby/blob/master/release.rb) - [Commits](ruby/setup-ruby@bb6434c...2a7b300) --- updated-dependencies: - dependency-name: ruby/setup-ruby dependency-version: 1.254.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: actions ... Signed-off-by: dependabot[bot] <support@github.com>
…s-f69d1f6078 Bump ruby/setup-ruby from 1.253.0 to 1.254.0 in the actions group
…c8ab2f Bump the npm group with 5 updates
Update default bundle to 2.22.3
Tests were added with copilot, and uncovered a bug where one of the regexps looking for `[autobuild]` was not escaping the square brackets.
…yarn-5a0513363d Bump tmp from 0.2.3 to 0.2.4 in the npm_and_yarn group
Rewrite legacy SARIF categories for CQ
Support auto-detecting Actions workflows
Make all errors on an unsupported platform `ConfigurationError`s
Clean up the database if it will be uploaded
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This is a release preparation PR merging main into releases/v3
. The primary purpose is to merge accumulated changes from multiple pull requests into the v3 release branch, including deprecating the cleanup-level
input, updating the default CodeQL bundle version, and various code quality improvements.
Key Changes:
- Deprecated the
cleanup-level
input to the analyze action and automated database cleanup management - Updated default CodeQL bundle version from 2.22.2 to 2.22.3
- Refactored language handling to use dynamic language resolution from CodeQL CLI instead of hardcoded language lists
Reviewed Changes
Copilot reviewed 39 out of 464 changed files in this pull request and generated 5 comments.
Show a summary per file
File | Description |
---|---|
lib/util.js | Added async utility functions and removed String() wrappers from environment variable exports |
lib/upload-sarif-action.js | Added category fixing for code quality uploads |
lib/upload-lib.test.js | Removed feature flag parameter from test function calls |
lib/upload-lib.js | Removed feature flag dependency for SARIF file combining logic |
lib/tracer-config.js | Updated to use async language checking instead of hardcoded language lists |
lib/languages.js | Simplified to only export KnownLanguage enum, removing parsing and type checking functions |
lib/analyze-action.js | Removed cleanup-level input handling and automated database cleanup |
lib/codeql.js | Added language type checking methods and updated database cleanup to work on clusters |
lib/actions-util.js | Added code quality category mapping functionality |
lib/defaults.json | Updated CodeQL bundle version to 2.22.3 |
analyze/action.yml | Deprecated cleanup-level input with updated description |
CHANGELOG.md | Added entry for version 3.29.6 with deprecation notice and version update |
async function asyncSome(array, predicate) { | ||
const results = await Promise.all(array.map(predicate)); | ||
return results.some((result) => result); | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The new asyncFilter
and asyncSome
utility functions lack JSDoc documentation. These functions should have documentation explaining their purpose, parameters, return values, and usage examples since they are exported from the util module.
Copilot uses AI. Check for mistakes.
@@ -160,7 +160,7 @@ function tryGetBundleVersionFromTagName(tagName, logger) { | |||
} | |||
function tryGetTagNameFromUrl(url, logger) { | |||
const matches = [...url.matchAll(/\/(codeql-bundle-[^/]*)\//g)]; | |||
if (!matches.length) { | |||
if (matches.length === 0) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[nitpick] Using matches.length === 0
is more explicit and clearer than the original !matches.length
. This change improves code readability by making the intent more obvious.
Copilot uses AI. Check for mistakes.
...getExtraOptionsFromEnv(["database", "cleanup"]), | ||
]; | ||
await runCli(cmd, codeqlArgs); | ||
for (const language of config.languages) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The databaseCleanupCluster
method now processes languages sequentially with for...of
. If cleanup operations are independent, consider using Promise.all()
to process them in parallel for better performance.
for (const language of config.languages) { | |
await Promise.all(config.languages.map(async (language) => { |
Copilot uses AI. Check for mistakes.
@@ -98,7 +98,7 @@ function cleanupDatabaseClusterDirectory(config, logger, | |||
rmSync = fs.rmSync) { | |||
if (fs.existsSync(config.dbLocation) && | |||
(fs.statSync(config.dbLocation).isFile() || | |||
fs.readdirSync(config.dbLocation).length)) { | |||
fs.readdirSync(config.dbLocation).length > 0)) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[nitpick] Using .length > 0
instead of .length
makes the boolean intent more explicit and consistent with the style change seen elsewhere in the codebase.
Copilot uses AI. Check for mistakes.
@@ -394,7 +387,7 @@ function validateSarifFileSchema(sarif, sarifFilePath, logger) { | |||
for (const warning of warnings) { | |||
logger.info(`Warning: '${warning.instance}' is not a valid URI in '${warning.property}'.`); | |||
} | |||
if (errors.length) { | |||
if (errors.length > 0) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[nitpick] Using errors.length > 0
instead of errors.length
makes the boolean intent more explicit and consistent with the style improvements throughout the codebase.
if (errors.length > 0) { | |
if (errors.length) { |
Copilot uses AI. Check for mistakes.
Merging 67a6ea7 into
releases/v3
.Conductor for this PR is @cklin.
Contains the following pull requests:
disable_combine_sarif_files
feature flag #2991 (@koesie10)ConfigurationError
s #3005 (@redsun82)Please do the following:
releases/v3
branch.Create a merge commit
is selected rather thanSquash and merge
orRebase and merge
.