Compare commits

..

25 Commits

Author SHA1 Message Date
Mario Campos
a8d1ac45b9 Merge pull request #3187 from github/backport-v3.30.7-e296a9355
Merge releases/v4 into releases/v3
2025-10-07 10:58:53 -05:00
github-actions[bot]
c551c50310 Rebuild 2025-10-07 15:33:29 +00:00
Mario Campos
01f1a24033 Downgrade action.yml to use Node.js 20 instead of Node.js 24 for v3 2025-10-07 10:29:22 -05:00
github-actions[bot]
b264e15259 Update version and changelog for v3.30.7 2025-10-07 15:23:05 +00:00
Mario Campos
e296a93559 Merge pull request #3183 from github/update-v4.30.7-55283843c
Merge main into releases/v4
2025-10-07 10:21:14 -05:00
github-actions[bot]
93c16735fa Update changelog for v4.30.7 2025-10-06 18:19:26 +00:00
Mario Campos
55283843ca Merge pull request #3169 from github/mario-campos/node24
[v4] Upgrade Node.js runtime from v20 to v24
2025-10-06 12:52:46 -05:00
Mario Campos
b66db86c84 Hoist CHANGELOG note back to "UNRELEASED" section. 2025-10-06 11:40:43 -05:00
Mario Campos
b2e22323e2 Merge remote-tracking branch 'origin/main' into mario-campos/node24
# Conflicts:
#	lib/analyze-action-post.js
#	lib/analyze-action.js
#	lib/autobuild-action.js
#	lib/init-action-post.js
#	lib/init-action.js
#	lib/resolve-environment-action.js
#	lib/start-proxy-action-post.js
#	lib/start-proxy-action.js
#	lib/upload-lib.js
#	lib/upload-sarif-action-post.js
#	lib/upload-sarif-action.js
#	package-lock.json
#	package.json
2025-10-03 12:59:21 -05:00
Michael B. Gale
065c6cfb78 Merge pull request #3174 from github/mbg/fix/start-proxy-matrix
Make `matrix` available to `start-proxy` action
2025-10-03 12:26:10 +01:00
Michael B. Gale
7fb8378d93 Re-throw exception in createStatusReportBase when in test mode 2025-10-03 11:59:36 +01:00
Mario Campos
dddf033776 Revert changes to build.mjs 2025-10-02 14:32:40 -05:00
Mario Campos
54ae8ba5b1 Simplify PR check by reverting changes to @types/node. 2025-10-02 14:24:46 -05:00
Michael B. Gale
65e9e640ee Make matrix available to start-proxy action 2025-10-02 17:45:22 +01:00
Nick Rolfe
21a7ba37dd Merge pull request #3173 from github/mergeback/v3.30.6-to-main-64d10c13
Mergeback v3.30.6 refs/heads/releases/v3 into main
2025-10-02 15:15:57 +01:00
github-actions[bot]
70836b1ec4 Rebuild 2025-10-02 13:55:07 +00:00
github-actions[bot]
205744e04f Update changelog and version after v3.30.6 2025-10-02 13:53:03 +00:00
Henry Mercer
d899b2ed98 Merge branch 'main' into mario-campos/node24 2025-10-02 12:36:53 +01:00
Mario Campos
3adb1ff7b8 Reorder supported tags in descending order
Co-authored-by: Henry Mercer <henrymercer@github.com>
2025-10-01 09:04:18 -05:00
Mario Campos
d4b5380db4 Document Node.js 24 change in CHANGELOG.md. 2025-09-30 14:11:13 -05:00
Mario Campos
d4bbcb74ca Implement simultaneous PR checks for Node.js v20, v24.
Copied from #2006.
2025-09-30 14:11:13 -05:00
Mario Campos
180438161e Specify Node.js v24 in actions/setup-node steps. 2025-09-30 14:11:13 -05:00
Mario Campos
d7ada03e02 Downgrade upload-sarif@v4 -> v3
I got ahead of myself; v4 hasn't been tagged yet.
2025-09-30 14:11:13 -05:00
Mario Campos
30445af89f Rebuild JS after upgrading to Node.js 24. 2025-09-30 14:11:04 -05:00
Mario Campos
7434149006 Upgrade Node.js version to 24.
This requires creating a new major-version (v4) of codeql-action.
2025-09-30 13:56:31 -05:00
25 changed files with 101 additions and 72 deletions

View File

@@ -58,7 +58,7 @@ jobs:
- name: Set up Node.js
uses: actions/setup-node@v5
with:
node-version: '20'
node-version: 24
cache: 'npm'
- name: Install dependencies

View File

@@ -20,6 +20,7 @@ jobs:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
node-version: [20, 24]
permissions:
contents: read
security-events: write # needed to upload ESLint results
@@ -36,7 +37,7 @@ jobs:
- name: Set up Node.js
uses: actions/setup-node@v5
with:
node-version: '20.x'
node-version: ${{ matrix.node-version }}
cache: 'npm'
- name: Set up Python
@@ -73,7 +74,7 @@ jobs:
- name: Upload sarif
uses: github/codeql-action/upload-sarif@v3
if: matrix.os == 'ubuntu-latest'
if: matrix.os == 'ubuntu-latest' && matrix.node-version == 24
with:
sarif_file: eslint.sarif
category: eslint

View File

@@ -34,7 +34,7 @@ jobs:
- name: Install Node.js
uses: actions/setup-node@v5
with:
node-version: 20.x
node-version: 24
cache: npm
- name: Install dependencies

View File

@@ -43,7 +43,7 @@ jobs:
- name: Set up Node.js
uses: actions/setup-node@v5
with:
node-version: '20.x'
node-version: 24
cache: 'npm'
- name: Install dependencies

View File

@@ -2,6 +2,10 @@
See the [releases page](https://github.com/github/codeql-action/releases) for the relevant changes to the CodeQL CLI and language packs.
## 3.30.7 - 06 Oct 2025
No user facing changes.
## 3.30.6 - 02 Oct 2025
- Update default CodeQL bundle version to 2.23.2. [#3168](https://github.com/github/codeql-action/pull/3168)
@@ -236,17 +240,13 @@ No user facing changes.
## 3.26.12 - 07 Oct 2024
- _Upcoming breaking change_: Add a deprecation warning for customers using CodeQL version 2.14.5 and earlier. These versions of CodeQL were discontinued on 24 September 2024 alongside GitHub Enterprise Server 3.10, and will be unsupported by CodeQL Action versions 3.27.0 and later and versions 2.27.0 and later. [#2520](https://github.com/github/codeql-action/pull/2520)
- If you are using one of these versions, please update to CodeQL CLI version 2.14.6 or later. For instance, if you have specified a custom version of the CLI using the 'tools' input to the 'init' Action, you can remove this input to use the default version.
- Alternatively, if you want to continue using a version of the CodeQL CLI between 2.13.5 and 2.14.5, you can replace `github/codeql-action/*@v3` by `github/codeql-action/*@v3.26.11` and `github/codeql-action/*@v2` by `github/codeql-action/*@v2.26.11` in your code scanning workflow to ensure you continue using this version of the CodeQL Action.
## 3.26.11 - 03 Oct 2024
- _Upcoming breaking change_: Add support for using `actions/download-artifact@v4` to programmatically consume CodeQL Action debug artifacts.
Starting November 30, 2024, GitHub.com customers will [no longer be able to use `actions/download-artifact@v3`](https://github.blog/changelog/2024-04-16-deprecation-notice-v3-of-the-artifact-actions/). Therefore, to avoid breakage, customers who programmatically download the CodeQL Action debug artifacts should set the `CODEQL_ACTION_ARTIFACT_V4_UPGRADE` environment variable to `true` and bump `actions/download-artifact@v3` to `actions/download-artifact@v4` in their workflows. The CodeQL Action will enable this behavior by default in early November and workflows that have not yet bumped `actions/download-artifact@v3` to `actions/download-artifact@v4` will begin failing then.
This change is currently unavailable for GitHub Enterprise Server customers, as `actions/upload-artifact@v4` and `actions/download-artifact@v4` are not yet compatible with GHES.
- Update default CodeQL bundle version to 2.19.1. [#2519](https://github.com/github/codeql-action/pull/2519)
@@ -369,12 +369,9 @@ No user facing changes.
## 3.25.0 - 15 Apr 2024
- The deprecated feature for extracting dependencies for a Python analysis has been removed. [#2224](https://github.com/github/codeql-action/pull/2224)
As a result, the following inputs and environment variables are now ignored:
- The `setup-python-dependencies` input to the `init` Action
- The `CODEQL_ACTION_DISABLE_PYTHON_DEPENDENCY_INSTALLATION` environment variable
We recommend removing any references to these from your workflows. For more information, see the release notes for CodeQL Action v3.23.0 and v2.23.0.
- Automatically overwrite an existing database if found on the filesystem. [#2229](https://github.com/github/codeql-action/pull/2229)
- Bump the minimum CodeQL bundle version to 2.12.6. [#2232](https://github.com/github/codeql-action/pull/2232)

View File

@@ -13,7 +13,7 @@ Please note that this project is released with a [Contributor Code of Conduct][c
## Development and Testing
Before you start, ensure that you have a recent version of node (16 or higher) installed, along with a recent version of npm (9.2 or higher). You can see which version of node is used by the action in `init/action.yml`.
Before you start, ensure that you have a recent version of node (24 or higher) installed, along with a recent version of npm (9.2 or higher). You can see which version of node is used by the action in `init/action.yml`.
### Common tasks

View File

@@ -62,7 +62,8 @@ For compiled languages:
The following versions of the CodeQL Action are currently supported:
- v3 (latest)
- v4 (latest)
- v3
## Supported versions of the CodeQL Bundle on GitHub Enterprise Server

View File

@@ -26438,7 +26438,7 @@ var require_package = __commonJS({
"package.json"(exports2, module2) {
module2.exports = {
name: "codeql",
version: "3.30.6",
version: "3.30.7",
private: true,
description: "CodeQL action",
scripts: {

5
lib/analyze-action.js generated
View File

@@ -32287,7 +32287,7 @@ var require_package = __commonJS({
"package.json"(exports2, module2) {
module2.exports = {
name: "codeql",
version: "3.30.6",
version: "3.30.7",
private: true,
description: "CodeQL action",
scripts: {
@@ -94123,6 +94123,9 @@ async function createStatusReportBase(actionName, status, actionStartedAt, confi
logger.warning(
`Caught an exception while gathering information for telemetry: ${e}. Will skip sending status report.`
);
if (isInTestMode()) {
throw e;
}
return void 0;
}
}

View File

@@ -26438,7 +26438,7 @@ var require_package = __commonJS({
"package.json"(exports2, module2) {
module2.exports = {
name: "codeql",
version: "3.30.6",
version: "3.30.7",
private: true,
description: "CodeQL action",
scripts: {
@@ -79872,6 +79872,9 @@ async function createStatusReportBase(actionName, status, actionStartedAt, confi
logger.warning(
`Caught an exception while gathering information for telemetry: ${e}. Will skip sending status report.`
);
if (isInTestMode()) {
throw e;
}
return void 0;
}
}

View File

@@ -32287,7 +32287,7 @@ var require_package = __commonJS({
"package.json"(exports2, module2) {
module2.exports = {
name: "codeql",
version: "3.30.6",
version: "3.30.7",
private: true,
description: "CodeQL action",
scripts: {
@@ -131599,6 +131599,9 @@ async function createStatusReportBase(actionName, status, actionStartedAt, confi
logger.warning(
`Caught an exception while gathering information for telemetry: ${e}. Will skip sending status report.`
);
if (isInTestMode()) {
throw e;
}
return void 0;
}
}

5
lib/init-action.js generated
View File

@@ -32287,7 +32287,7 @@ var require_package = __commonJS({
"package.json"(exports2, module2) {
module2.exports = {
name: "codeql",
version: "3.30.6",
version: "3.30.7",
private: true,
description: "CodeQL action",
scripts: {
@@ -90274,6 +90274,9 @@ async function createStatusReportBase(actionName, status, actionStartedAt, confi
logger.warning(
`Caught an exception while gathering information for telemetry: ${e}. Will skip sending status report.`
);
if (isInTestMode()) {
throw e;
}
return void 0;
}
}

View File

@@ -26438,7 +26438,7 @@ var require_package = __commonJS({
"package.json"(exports2, module2) {
module2.exports = {
name: "codeql",
version: "3.30.6",
version: "3.30.7",
private: true,
description: "CodeQL action",
scripts: {
@@ -79499,6 +79499,9 @@ async function createStatusReportBase(actionName, status, actionStartedAt, confi
logger.warning(
`Caught an exception while gathering information for telemetry: ${e}. Will skip sending status report.`
);
if (isInTestMode()) {
throw e;
}
return void 0;
}
}

View File

@@ -26438,7 +26438,7 @@ var require_package = __commonJS({
"package.json"(exports2, module2) {
module2.exports = {
name: "codeql",
version: "3.30.6",
version: "3.30.7",
private: true,
description: "CodeQL action",
scripts: {

View File

@@ -44974,7 +44974,7 @@ var require_package = __commonJS({
"package.json"(exports2, module2) {
module2.exports = {
name: "codeql",
version: "3.30.6",
version: "3.30.7",
private: true,
description: "CodeQL action",
scripts: {
@@ -95649,6 +95649,9 @@ async function createStatusReportBase(actionName, status, actionStartedAt, confi
logger.warning(
`Caught an exception while gathering information for telemetry: ${e}. Will skip sending status report.`
);
if (isInTestMode()) {
throw e;
}
return void 0;
}
}

2
lib/upload-lib.js generated
View File

@@ -33584,7 +33584,7 @@ var require_package = __commonJS({
"package.json"(exports2, module2) {
module2.exports = {
name: "codeql",
version: "3.30.6",
version: "3.30.7",
private: true,
description: "CodeQL action",
scripts: {

View File

@@ -26438,7 +26438,7 @@ var require_package = __commonJS({
"package.json"(exports2, module2) {
module2.exports = {
name: "codeql",
version: "3.30.6",
version: "3.30.7",
private: true,
description: "CodeQL action",
scripts: {

View File

@@ -32287,7 +32287,7 @@ var require_package = __commonJS({
"package.json"(exports2, module2) {
module2.exports = {
name: "codeql",
version: "3.30.6",
version: "3.30.7",
private: true,
description: "CodeQL action",
scripts: {
@@ -89910,6 +89910,9 @@ async function createStatusReportBase(actionName, status, actionStartedAt, confi
logger.warning(
`Caught an exception while gathering information for telemetry: ${e}. Will skip sending status report.`
);
if (isInTestMode()) {
throw e;
}
return void 0;
}
}

4
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{
"name": "codeql",
"version": "3.30.6",
"version": "4.30.7",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "codeql",
"version": "3.30.6",
"version": "4.30.7",
"license": "MIT",
"dependencies": {
"@actions/artifact": "^2.3.1",

View File

@@ -1,6 +1,6 @@
{
"name": "codeql",
"version": "3.30.6",
"version": "3.30.7",
"private": true,
"description": "CodeQL action",
"scripts": {

View File

@@ -52,11 +52,11 @@ export async function determineAutobuildLanguages(
* For example, consider a user with the following workflow file:
*
* ```yml
* - uses: github/codeql-action/init@v3
* - uses: github/codeql-action/init@v4
* with:
* languages: go, java
* - uses: github/codeql-action/autobuild@v3
* - uses: github/codeql-action/analyze@v3
* - uses: github/codeql-action/autobuild@v4
* - uses: github/codeql-action/analyze@v4
* ```
*
* - With Go extraction disabled, we will run the Java autobuilder in the

View File

@@ -84,14 +84,14 @@ test("uploads failed SARIF run with `diagnostics export` if feature flag is off"
},
{
name: "Initialize CodeQL",
uses: "github/codeql-action/init@v3",
uses: "github/codeql-action/init@v4",
with: {
languages: "javascript",
},
},
{
name: "Perform CodeQL Analysis",
uses: "github/codeql-action/analyze@v3",
uses: "github/codeql-action/analyze@v4",
with: {
category: "my-category",
},
@@ -108,14 +108,14 @@ test("uploads failed SARIF run with `diagnostics export` if the database doesn't
},
{
name: "Initialize CodeQL",
uses: "github/codeql-action/init@v3",
uses: "github/codeql-action/init@v4",
with: {
languages: "javascript",
},
},
{
name: "Perform CodeQL Analysis",
uses: "github/codeql-action/analyze@v3",
uses: "github/codeql-action/analyze@v4",
with: {
category: "my-category",
},
@@ -135,14 +135,14 @@ test("uploads failed SARIF run with database export-diagnostics if the database
},
{
name: "Initialize CodeQL",
uses: "github/codeql-action/init@v3",
uses: "github/codeql-action/init@v4",
with: {
languages: "javascript",
},
},
{
name: "Perform CodeQL Analysis",
uses: "github/codeql-action/analyze@v3",
uses: "github/codeql-action/analyze@v4",
with: {
category: "my-category",
},
@@ -192,14 +192,14 @@ for (const { uploadInput, shouldUpload } of UPLOAD_INPUT_TEST_CASES) {
},
{
name: "Initialize CodeQL",
uses: "github/codeql-action/init@v3",
uses: "github/codeql-action/init@v4",
with: {
languages: "javascript",
},
},
{
name: "Perform CodeQL Analysis",
uses: "github/codeql-action/analyze@v3",
uses: "github/codeql-action/analyze@v4",
with: {
category: "my-category",
upload: uploadInput,
@@ -227,14 +227,14 @@ test("uploading failed SARIF run succeeds when workflow uses an input with a mat
},
{
name: "Initialize CodeQL",
uses: "github/codeql-action/init@v3",
uses: "github/codeql-action/init@v4",
with: {
languages: "javascript",
},
},
{
name: "Perform CodeQL Analysis",
uses: "github/codeql-action/analyze@v3",
uses: "github/codeql-action/analyze@v4",
with: {
category: "/language:${{ matrix.language }}",
},
@@ -254,14 +254,14 @@ test("uploading failed SARIF run fails when workflow uses a complex upload input
},
{
name: "Initialize CodeQL",
uses: "github/codeql-action/init@v3",
uses: "github/codeql-action/init@v4",
with: {
languages: "javascript",
},
},
{
name: "Perform CodeQL Analysis",
uses: "github/codeql-action/analyze@v3",
uses: "github/codeql-action/analyze@v4",
with: {
upload: "${{ matrix.language != 'csharp' }}",
},

View File

@@ -375,6 +375,12 @@ export async function createStatusReportBase(
logger.warning(
`Caught an exception while gathering information for telemetry: ${e}. Will skip sending status report.`,
);
// Re-throw the exception in test mode. While testing, we want to know if something goes wrong here.
if (isInTestMode()) {
throw e;
}
return undefined;
}
}

View File

@@ -395,9 +395,9 @@ async function testLanguageAliases(
},
},
steps: [
{ uses: "actions/checkout@v3" },
{ uses: "github/codeql-action/init@v3" },
{ uses: "github/codeql-action/analyze@v3" },
{ uses: "actions/checkout@v4" },
{ uses: "github/codeql-action/init@v4" },
{ uses: "github/codeql-action/analyze@v4" },
],
},
},
@@ -666,7 +666,7 @@ test("getWorkflowErrors() should report a warning if different versions of the C
analyze:
steps:
- uses: github/codeql-action/init@v2
- uses: github/codeql-action/analyze@v3
- uses: github/codeql-action/analyze@v4
`) as Workflow,
await getCodeQLForTesting(),
);
@@ -686,8 +686,8 @@ test("getWorkflowErrors() should not report a warning if the same versions of th
jobs:
analyze:
steps:
- uses: github/codeql-action/init@v3
- uses: github/codeql-action/analyze@v3
- uses: github/codeql-action/init@v4
- uses: github/codeql-action/analyze@v4
`) as Workflow,
await getCodeQLForTesting(),
);
@@ -706,7 +706,7 @@ test("getWorkflowErrors() should not report a warning involving versions of othe
analyze:
steps:
- uses: actions/checkout@v5
- uses: github/codeql-action/init@v3
- uses: github/codeql-action/init@v4
`) as Workflow,
await getCodeQLForTesting(),
);
@@ -723,9 +723,9 @@ test("getCategoryInputOrThrow returns category for simple workflow with category
analysis:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: github/codeql-action/init@v3
- uses: github/codeql-action/analyze@v3
- uses: actions/checkout@v4
- uses: github/codeql-action/init@v4
- uses: github/codeql-action/analyze@v4
with:
category: some-category
`) as Workflow,
@@ -745,9 +745,9 @@ test("getCategoryInputOrThrow returns undefined for simple workflow without cate
analysis:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: github/codeql-action/init@v3
- uses: github/codeql-action/analyze@v3
- uses: actions/checkout@v4
- uses: github/codeql-action/init@v4
- uses: github/codeql-action/analyze@v4
`) as Workflow,
"analysis",
{},
@@ -765,19 +765,19 @@ test("getCategoryInputOrThrow returns category for workflow with multiple jobs",
foo:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: github/codeql-action/init@v3
- uses: actions/checkout@v4
- uses: github/codeql-action/init@v4
- runs: ./build foo
- uses: github/codeql-action/analyze@v3
- uses: github/codeql-action/analyze@v4
with:
category: foo-category
bar:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: github/codeql-action/init@v3
- uses: actions/checkout@v4
- uses: github/codeql-action/init@v4
- runs: ./build bar
- uses: github/codeql-action/analyze@v3
- uses: github/codeql-action/analyze@v4
with:
category: bar-category
`) as Workflow,
@@ -800,11 +800,11 @@ test("getCategoryInputOrThrow finds category for workflow with language matrix",
matrix:
language: [javascript, python]
steps:
- uses: actions/checkout@v3
- uses: github/codeql-action/init@v3
- uses: actions/checkout@v4
- uses: github/codeql-action/init@v4
with:
language: \${{ matrix.language }}
- uses: github/codeql-action/analyze@v3
- uses: github/codeql-action/analyze@v4
with:
category: "/language:\${{ matrix.language }}"
`) as Workflow,
@@ -824,9 +824,9 @@ test("getCategoryInputOrThrow throws error for workflow with dynamic category",
jobs:
analysis:
steps:
- uses: actions/checkout@v3
- uses: github/codeql-action/init@v3
- uses: github/codeql-action/analyze@v3
- uses: actions/checkout@v4
- uses: github/codeql-action/init@v4
- uses: github/codeql-action/analyze@v4
with:
category: "\${{ github.workflow }}"
`) as Workflow,
@@ -851,12 +851,12 @@ test("getCategoryInputOrThrow throws error for workflow with multiple calls to a
analysis:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: github/codeql-action/init@v3
- uses: github/codeql-action/analyze@v3
- uses: actions/checkout@v4
- uses: github/codeql-action/init@v4
- uses: github/codeql-action/analyze@v4
with:
category: some-category
- uses: github/codeql-action/analyze@v3
- uses: github/codeql-action/analyze@v4
with:
category: another-category
`) as Workflow,

View File

@@ -16,6 +16,9 @@ inputs:
language:
description: The programming language to setup the proxy for the correct ecosystem
required: false
matrix:
default: ${{ toJson(matrix) }}
required: false
outputs:
proxy_host:
description: The IP address of the proxy