Merge branch 'main' into henrymercer/prefer-fs-delete

This commit is contained in:
Henry Mercer
2025-10-28 15:26:42 +00:00
30 changed files with 3241 additions and 24757 deletions

View File

@@ -79,7 +79,7 @@ jobs:
output: ${{ runner.temp }}/results
upload-database: false
- name: Upload SARIF
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v5
with:
name: ${{ matrix.os }}-zstd-bundle.sarif
path: ${{ runner.temp }}/results/javascript.sarif

View File

@@ -67,7 +67,7 @@ jobs:
output: ${{ runner.temp }}/results
upload-database: false
- name: Upload SARIF
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v5
with:
name: config-export-${{ matrix.os }}-${{ matrix.version }}.sarif.json
path: ${{ runner.temp }}/results/javascript.sarif

View File

@@ -78,7 +78,7 @@ jobs:
output: ${{ runner.temp }}/results
upload-database: false
- name: Upload SARIF
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v5
with:
name: diagnostics-export-${{ matrix.os }}-${{ matrix.version }}.sarif.json
path: ${{ runner.temp }}/results/javascript.sarif

View File

@@ -85,7 +85,7 @@ jobs:
with:
output: ${{ runner.temp }}/results
- name: Upload SARIF
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v5
with:
name: with-baseline-information-${{ matrix.os }}-${{ matrix.version }}.sarif.json
path: ${{ runner.temp }}/results/javascript.sarif

View File

@@ -64,7 +64,7 @@ jobs:
with:
output: ${{ runner.temp }}/results
- name: Upload SARIF
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v5
with:
name: ${{ matrix.os }}-${{ matrix.version }}.sarif.json
path: ${{ runner.temp }}/results/javascript.sarif

View File

@@ -83,7 +83,7 @@ jobs:
post-processed-sarif-path: ${{ runner.temp }}/post-processed
- name: Upload security SARIF
if: contains(matrix.analysis-kinds, 'code-scanning')
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v5
with:
name: |
quality-queries-${{ matrix.os }}-${{ matrix.version }}-${{ matrix.analysis-kinds }}.sarif.json
@@ -91,14 +91,14 @@ jobs:
retention-days: 7
- name: Upload quality SARIF
if: contains(matrix.analysis-kinds, 'code-quality')
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v5
with:
name: |
quality-queries-${{ matrix.os }}-${{ matrix.version }}-${{ matrix.analysis-kinds }}.quality.sarif.json
path: ${{ runner.temp }}/results/javascript.quality.sarif
retention-days: 7
- name: Upload post-processed SARIF
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v5
with:
name: |
post-processed-${{ matrix.os }}-${{ matrix.version }}-${{ matrix.analysis-kinds }}.sarif.json

View File

@@ -56,7 +56,7 @@ jobs:
use-all-platform-bundle: 'false'
setup-kotlin: 'true'
- name: Set up Ruby
uses: ruby/setup-ruby@ab177d40ee5483edb974554986f56b33477e21d0 # v1.265.0
uses: ruby/setup-ruby@d5126b9b3579e429dd52e51e68624dda2e05be25 # v1.267.0
with:
ruby-version: 2.6
- name: Install Code Scanning integration

File diff suppressed because one or more lines are too long

301
lib/analyze-action.js generated
View File

@@ -10754,7 +10754,7 @@ var require_mock_interceptor = __commonJS({
var require_mock_client = __commonJS({
"node_modules/undici/lib/mock/mock-client.js"(exports2, module2) {
"use strict";
var { promisify: promisify2 } = require("util");
var { promisify } = require("util");
var Client = require_client();
var { buildMockDispatch } = require_mock_utils();
var {
@@ -10794,7 +10794,7 @@ var require_mock_client = __commonJS({
return new MockInterceptor(opts, this[kDispatches]);
}
async [kClose]() {
await promisify2(this[kOriginalClose])();
await promisify(this[kOriginalClose])();
this[kConnected] = 0;
this[kMockAgent][Symbols.kClients].delete(this[kOrigin]);
}
@@ -10807,7 +10807,7 @@ var require_mock_client = __commonJS({
var require_mock_pool = __commonJS({
"node_modules/undici/lib/mock/mock-pool.js"(exports2, module2) {
"use strict";
var { promisify: promisify2 } = require("util");
var { promisify } = require("util");
var Pool = require_pool();
var { buildMockDispatch } = require_mock_utils();
var {
@@ -10847,7 +10847,7 @@ var require_mock_pool = __commonJS({
return new MockInterceptor(opts, this[kDispatches]);
}
async [kClose]() {
await promisify2(this[kOriginalClose])();
await promisify(this[kOriginalClose])();
this[kConnected] = 0;
this[kMockAgent][Symbols.kClients].delete(this[kOrigin]);
}
@@ -18148,7 +18148,7 @@ var require_summary = __commonJS({
exports2.summary = exports2.markdownSummary = exports2.SUMMARY_DOCS_URL = exports2.SUMMARY_ENV_VAR = void 0;
var os_1 = require("os");
var fs_1 = require("fs");
var { access: access2, appendFile, writeFile } = fs_1.promises;
var { access, appendFile, writeFile } = fs_1.promises;
exports2.SUMMARY_ENV_VAR = "GITHUB_STEP_SUMMARY";
exports2.SUMMARY_DOCS_URL = "https://docs.github.com/actions/using-workflows/workflow-commands-for-github-actions#adding-a-job-summary";
var Summary = class {
@@ -18171,7 +18171,7 @@ var require_summary = __commonJS({
throw new Error(`Unable to find environment variable for $${exports2.SUMMARY_ENV_VAR}. Check if your runtime environment supports job summaries.`);
}
try {
yield access2(pathFromEnv, fs_1.constants.R_OK | fs_1.constants.W_OK);
yield access(pathFromEnv, fs_1.constants.R_OK | fs_1.constants.W_OK);
} catch (_a) {
throw new Error(`Unable to access summary file: '${pathFromEnv}'. Check if the file has correct read/write permissions.`);
}
@@ -19846,6 +19846,7 @@ var require_context = __commonJS({
this.action = process.env.GITHUB_ACTION;
this.actor = process.env.GITHUB_ACTOR;
this.job = process.env.GITHUB_JOB;
this.runAttempt = parseInt(process.env.GITHUB_RUN_ATTEMPT, 10);
this.runNumber = parseInt(process.env.GITHUB_RUN_NUMBER, 10);
this.runId = parseInt(process.env.GITHUB_RUN_ID, 10);
this.apiUrl = (_a = process.env.GITHUB_API_URL) !== null && _a !== void 0 ? _a : `https://api.github.com`;
@@ -21748,21 +21749,36 @@ var require_dist_node11 = __commonJS({
return to;
};
var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
var dist_src_exports = {};
__export2(dist_src_exports, {
var index_exports = {};
__export2(index_exports, {
Octokit: () => Octokit
});
module2.exports = __toCommonJS2(dist_src_exports);
module2.exports = __toCommonJS2(index_exports);
var import_universal_user_agent = require_dist_node();
var import_before_after_hook = require_before_after_hook();
var import_request = require_dist_node5();
var import_graphql = require_dist_node9();
var import_auth_token = require_dist_node10();
var VERSION = "5.2.0";
var VERSION = "5.2.2";
var noop = () => {
};
var consoleWarn = console.warn.bind(console);
var consoleError = console.error.bind(console);
function createLogger(logger = {}) {
if (typeof logger.debug !== "function") {
logger.debug = noop;
}
if (typeof logger.info !== "function") {
logger.info = noop;
}
if (typeof logger.warn !== "function") {
logger.warn = consoleWarn;
}
if (typeof logger.error !== "function") {
logger.error = consoleError;
}
return logger;
}
var userAgentTrail = `octokit-core.js/${VERSION} ${(0, import_universal_user_agent.getUserAgent)()}`;
var Octokit = class {
static {
@@ -21836,15 +21852,7 @@ var require_dist_node11 = __commonJS({
}
this.request = import_request.request.defaults(requestDefaults);
this.graphql = (0, import_graphql.withCustomRequest)(this.request).defaults(requestDefaults);
this.log = Object.assign(
{
debug: noop,
info: noop,
warn: consoleWarn,
error: consoleError
},
options.log
);
this.log = createLogger(options.log);
this.hook = hook;
if (!options.authStrategy) {
if (!options.auth) {
@@ -24862,8 +24870,8 @@ var require_semver = __commonJS({
}
// preminor will bump the version up to the next minor release, and immediately
// down to pre-release. premajor and prepatch work the same way.
inc(release3, identifier, identifierBase) {
if (release3.startsWith("pre")) {
inc(release2, identifier, identifierBase) {
if (release2.startsWith("pre")) {
if (!identifier && identifierBase === false) {
throw new Error("invalid increment argument: identifier is empty");
}
@@ -24874,7 +24882,7 @@ var require_semver = __commonJS({
}
}
}
switch (release3) {
switch (release2) {
case "premajor":
this.prerelease.length = 0;
this.patch = 0;
@@ -24965,7 +24973,7 @@ var require_semver = __commonJS({
break;
}
default:
throw new Error(`invalid increment argument: ${release3}`);
throw new Error(`invalid increment argument: ${release2}`);
}
this.raw = this.format();
if (this.build.length) {
@@ -25031,7 +25039,7 @@ var require_inc = __commonJS({
"node_modules/semver/functions/inc.js"(exports2, module2) {
"use strict";
var SemVer = require_semver();
var inc = (version, release3, options, identifier, identifierBase) => {
var inc = (version, release2, options, identifier, identifierBase) => {
if (typeof options === "string") {
identifierBase = identifier;
identifier = options;
@@ -25041,7 +25049,7 @@ var require_inc = __commonJS({
return new SemVer(
version instanceof SemVer ? version.version : version,
options
).inc(release3, identifier, identifierBase).version;
).inc(release2, identifier, identifierBase).version;
} catch (er) {
return null;
}
@@ -26484,7 +26492,7 @@ var require_package = __commonJS({
},
license: "MIT",
dependencies: {
"@actions/artifact": "^2.3.1",
"@actions/artifact": "^4.0.0",
"@actions/artifact-legacy": "npm:@actions/artifact@^1.1.2",
"@actions/cache": "^4.1.0",
"@actions/core": "^1.11.1",
@@ -26498,7 +26506,6 @@ var require_package = __commonJS({
"@octokit/request-error": "^7.0.1",
"@schemastore/package": "0.0.10",
archiver: "^7.0.1",
"check-disk-space": "^3.4.0",
"console-log-level": "^1.4.1",
"fast-deep-equal": "^3.1.3",
"follow-redirects": "^1.15.11",
@@ -26517,8 +26524,8 @@ var require_package = __commonJS({
"@eslint/eslintrc": "^3.3.1",
"@eslint/js": "^9.38.0",
"@microsoft/eslint-formatter-sarif": "^3.1.0",
"@octokit/types": "^15.0.0",
"@types/archiver": "^6.0.3",
"@octokit/types": "^15.0.1",
"@types/archiver": "^6.0.4",
"@types/console-log-level": "^1.4.5",
"@types/follow-redirects": "^1.14.4",
"@types/js-yaml": "^4.0.9",
@@ -26526,7 +26533,7 @@ var require_package = __commonJS({
"@types/node-forge": "^1.3.14",
"@types/semver": "^7.7.1",
"@types/sinon": "^17.0.4",
"@typescript-eslint/eslint-plugin": "^8.46.1",
"@typescript-eslint/eslint-plugin": "^8.46.2",
"@typescript-eslint/parser": "^8.41.0",
ava: "^6.4.1",
esbuild: "^0.25.11",
@@ -31436,8 +31443,8 @@ var require_semver3 = __commonJS({
}
} while (++i2);
};
SemVer.prototype.inc = function(release3, identifier) {
switch (release3) {
SemVer.prototype.inc = function(release2, identifier) {
switch (release2) {
case "premajor":
this.prerelease.length = 0;
this.patch = 0;
@@ -31513,20 +31520,20 @@ var require_semver3 = __commonJS({
}
break;
default:
throw new Error("invalid increment argument: " + release3);
throw new Error("invalid increment argument: " + release2);
}
this.format();
this.raw = this.version;
return this;
};
exports2.inc = inc;
function inc(version, release3, loose, identifier) {
function inc(version, release2, loose, identifier) {
if (typeof loose === "string") {
identifier = loose;
loose = void 0;
}
try {
return new SemVer(version, loose).inc(release3, identifier).version;
return new SemVer(version, loose).inc(release2, identifier).version;
} catch (er) {
return null;
}
@@ -55008,7 +55015,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
}
}
};
var access2 = {
var access = {
parameterPath: ["options", "access"],
mapper: {
serializedName: "x-ms-blob-public-access",
@@ -56816,7 +56823,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
requestId,
accept1,
metadata,
access2,
access,
defaultEncryptionScope,
preventEncryptionScopeOverride
],
@@ -56963,7 +56970,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
accept,
version,
requestId,
access2,
access,
leaseId,
ifModifiedSince,
ifUnmodifiedSince
@@ -65809,7 +65816,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
* @param containerAcl - Array of elements each having a unique Id and details of the access policy.
* @param options - Options to Container Set Access Policy operation.
*/
async setAccessPolicy(access3, containerAcl2, options = {}) {
async setAccessPolicy(access2, containerAcl2, options = {}) {
options.conditions = options.conditions || {};
return tracingClient.withSpan("ContainerClient-setAccessPolicy", options, async (updatedOptions) => {
const acl = [];
@@ -65825,7 +65832,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
}
return assertResponse(await this.containerContext.setAccessPolicy({
abortSignal: options.abortSignal,
access: access3,
access: access2,
containerAcl: acl,
leaseAccessConditions: options.conditions,
modifiedAccessConditions: options.conditions,
@@ -80106,149 +80113,15 @@ var io2 = __toESM(require_io());
// src/util.ts
var fs = __toESM(require("fs"));
var fsPromises = __toESM(require("fs/promises"));
var os = __toESM(require("os"));
var path = __toESM(require("path"));
var core3 = __toESM(require_core());
var exec = __toESM(require_exec());
var io = __toESM(require_io());
// node_modules/check-disk-space/dist/check-disk-space.mjs
var import_node_child_process = require("node:child_process");
var import_promises = require("node:fs/promises");
var import_node_os = require("node:os");
var import_node_path = require("node:path");
var import_node_process = require("node:process");
var import_node_util = require("node:util");
var InvalidPathError = class _InvalidPathError extends Error {
constructor(message) {
super(message);
this.name = "InvalidPathError";
Object.setPrototypeOf(this, _InvalidPathError.prototype);
}
};
var NoMatchError = class _NoMatchError extends Error {
constructor(message) {
super(message);
this.name = "NoMatchError";
Object.setPrototypeOf(this, _NoMatchError.prototype);
}
};
async function isDirectoryExisting(directoryPath, dependencies) {
try {
await dependencies.fsAccess(directoryPath);
return Promise.resolve(true);
} catch (error2) {
return Promise.resolve(false);
}
}
async function getFirstExistingParentPath(directoryPath, dependencies) {
let parentDirectoryPath = directoryPath;
let parentDirectoryFound = await isDirectoryExisting(parentDirectoryPath, dependencies);
while (!parentDirectoryFound) {
parentDirectoryPath = dependencies.pathNormalize(parentDirectoryPath + "/..");
parentDirectoryFound = await isDirectoryExisting(parentDirectoryPath, dependencies);
}
return parentDirectoryPath;
}
async function hasPowerShell3(dependencies) {
const major = parseInt(dependencies.release.split(".")[0], 10);
if (major <= 6) {
return false;
}
try {
await dependencies.cpExecFile("where", ["powershell"], { windowsHide: true });
return true;
} catch (error2) {
return false;
}
}
function checkDiskSpace(directoryPath, dependencies = {
platform: import_node_process.platform,
release: (0, import_node_os.release)(),
fsAccess: import_promises.access,
pathNormalize: import_node_path.normalize,
pathSep: import_node_path.sep,
cpExecFile: (0, import_node_util.promisify)(import_node_child_process.execFile)
}) {
function mapOutput(stdout, filter, mapping, coefficient) {
const parsed = stdout.split("\n").map((line) => line.trim()).filter((line) => line.length !== 0).slice(1).map((line) => line.split(/\s+(?=[\d/])/));
const filtered = parsed.filter(filter);
if (filtered.length === 0) {
throw new NoMatchError();
}
const diskData = filtered[0];
return {
diskPath: diskData[mapping.diskPath],
free: parseInt(diskData[mapping.free], 10) * coefficient,
size: parseInt(diskData[mapping.size], 10) * coefficient
};
}
async function check(cmd, filter, mapping, coefficient = 1) {
const [file, ...args] = cmd;
if (file === void 0) {
return Promise.reject(new Error("cmd must contain at least one item"));
}
try {
const { stdout } = await dependencies.cpExecFile(file, args, { windowsHide: true });
return mapOutput(stdout, filter, mapping, coefficient);
} catch (error2) {
return Promise.reject(error2);
}
}
async function checkWin32(directoryPath2) {
if (directoryPath2.charAt(1) !== ":") {
return Promise.reject(new InvalidPathError(`The following path is invalid (should be X:\\...): ${directoryPath2}`));
}
const powershellCmd = [
"powershell",
"Get-CimInstance -ClassName Win32_LogicalDisk | Select-Object Caption, FreeSpace, Size"
];
const wmicCmd = [
"wmic",
"logicaldisk",
"get",
"size,freespace,caption"
];
const cmd = await hasPowerShell3(dependencies) ? powershellCmd : wmicCmd;
return check(cmd, (driveData) => {
const driveLetter = driveData[0];
return directoryPath2.toUpperCase().startsWith(driveLetter.toUpperCase());
}, {
diskPath: 0,
free: 1,
size: 2
});
}
async function checkUnix(directoryPath2) {
if (!dependencies.pathNormalize(directoryPath2).startsWith(dependencies.pathSep)) {
return Promise.reject(new InvalidPathError(`The following path is invalid (should start by ${dependencies.pathSep}): ${directoryPath2}`));
}
const pathToCheck = await getFirstExistingParentPath(directoryPath2, dependencies);
return check(
[
"df",
"-Pk",
"--",
pathToCheck
],
() => true,
// We should only get one line, so we did not need to filter
{
diskPath: 5,
free: 3,
size: 1
},
1024
);
}
if (dependencies.platform === "win32") {
return checkWin32(directoryPath);
}
return checkUnix(directoryPath);
}
// node_modules/get-folder-size/index.js
var import_node_path2 = require("node:path");
var import_node_path = require("node:path");
async function getFolderSize(itemPath, options) {
return await core(itemPath, options, { errors: true });
}
@@ -80273,7 +80146,7 @@ async function core(rootItemPath, options = {}, returnType = {}) {
if (typeof directoryItems !== "object") return;
await Promise.all(
directoryItems.map(
(directoryItem) => processItem((0, import_node_path2.join)(itemPath, directoryItem))
(directoryItem) => processItem((0, import_node_path.join)(itemPath, directoryItem))
)
);
}
@@ -82917,8 +82790,8 @@ function getToolNames(sarif) {
}
return Object.keys(toolNames);
}
function getSystemReservedMemoryMegaBytes(totalMemoryMegaBytes, platform3) {
const fixedAmount = 1024 * (platform3 === "win32" ? 1.5 : 1);
function getSystemReservedMemoryMegaBytes(totalMemoryMegaBytes, platform2) {
const fixedAmount = 1024 * (platform2 === "win32" ? 1.5 : 1);
const scaledAmount = getReservedRamScaleFactor() * Math.max(totalMemoryMegaBytes - 8 * 1024, 0);
return fixedAmount + scaledAmount;
}
@@ -82932,7 +82805,7 @@ function getReservedRamScaleFactor() {
}
return envVar / 100;
}
function getMemoryFlagValueForPlatform(userInput, totalMemoryBytes, platform3) {
function getMemoryFlagValueForPlatform(userInput, totalMemoryBytes, platform2) {
let memoryToUseMegaBytes;
if (userInput) {
memoryToUseMegaBytes = Number(userInput);
@@ -82945,7 +82818,7 @@ function getMemoryFlagValueForPlatform(userInput, totalMemoryBytes, platform3) {
const totalMemoryMegaBytes = totalMemoryBytes / (1024 * 1024);
const reservedMemoryMegaBytes = getSystemReservedMemoryMegaBytes(
totalMemoryMegaBytes,
platform3
platform2
);
memoryToUseMegaBytes = totalMemoryMegaBytes - reservedMemoryMegaBytes;
}
@@ -83300,16 +83173,14 @@ function getErrorMessage(error2) {
}
async function checkDiskUsage(logger) {
try {
if (process.platform === "darwin" && (process.arch === "arm" || process.arch === "arm64") && !await checkSipEnablement(logger)) {
return void 0;
}
const diskUsage = await checkDiskSpace(
const diskUsage = await fsPromises.statfs(
getRequiredEnvParam("GITHUB_WORKSPACE")
);
const mbInBytes = 1024 * 1024;
const gbInBytes = 1024 * 1024 * 1024;
if (diskUsage.free < 2 * gbInBytes) {
const message = `The Actions runner is running low on disk space (${(diskUsage.free / mbInBytes).toPrecision(4)} MB available).`;
const blockSizeInBytes = diskUsage.bsize;
const numBlocksPerMb = 1024 * 1024 / blockSizeInBytes;
const numBlocksPerGb = 1024 * 1024 * 1024 / blockSizeInBytes;
if (diskUsage.bavail < 2 * numBlocksPerGb) {
const message = `The Actions runner is running low on disk space (${(diskUsage.bavail / numBlocksPerMb).toPrecision(4)} MB available).`;
if (process.env["CODEQL_ACTION_HAS_WARNED_ABOUT_DISK_SPACE" /* HAS_WARNED_ABOUT_DISK_SPACE */] !== "true") {
logger.warning(message);
} else {
@@ -83318,8 +83189,8 @@ async function checkDiskUsage(logger) {
core3.exportVariable("CODEQL_ACTION_HAS_WARNED_ABOUT_DISK_SPACE" /* HAS_WARNED_ABOUT_DISK_SPACE */, "true");
}
return {
numAvailableBytes: diskUsage.free,
numTotalBytes: diskUsage.size
numAvailableBytes: diskUsage.bavail * blockSizeInBytes,
numTotalBytes: diskUsage.blocks * blockSizeInBytes
};
} catch (error2) {
logger.warning(
@@ -83353,34 +83224,6 @@ function satisfiesGHESVersion(ghesVersion, range, defaultIfInvalid) {
function cloneObject(obj) {
return JSON.parse(JSON.stringify(obj));
}
async function checkSipEnablement(logger) {
if (process.env["CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */] !== void 0 && ["true", "false"].includes(process.env["CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */])) {
return process.env["CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */] === "true";
}
try {
const sipStatusOutput = await exec.getExecOutput("csrutil status");
if (sipStatusOutput.exitCode === 0) {
if (sipStatusOutput.stdout.includes(
"System Integrity Protection status: enabled."
)) {
core3.exportVariable("CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */, "true");
return true;
}
if (sipStatusOutput.stdout.includes(
"System Integrity Protection status: disabled."
)) {
core3.exportVariable("CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */, "false");
return false;
}
}
return void 0;
} catch (e) {
logger.warning(
`Failed to determine if System Integrity Protection was enabled: ${e}`
);
return void 0;
}
}
async function cleanUpPath(file, name, logger) {
logger.debug(`Cleaning up ${name}.`);
try {
@@ -84068,7 +83911,7 @@ function getCliConfigCategoryIfExists(cliError) {
}
function isUnsupportedPlatform() {
return !SUPPORTED_PLATFORMS.some(
([platform3, arch2]) => platform3 === process.platform && arch2 === process.arch
([platform2, arch2]) => platform2 === process.platform && arch2 === process.arch
);
}
function getUnsupportedPlatformError(cliError) {
@@ -85754,17 +85597,17 @@ function getCodeQLBundleExtension(compressionMethod) {
}
function getCodeQLBundleName(compressionMethod) {
const extension = getCodeQLBundleExtension(compressionMethod);
let platform3;
let platform2;
if (process.platform === "win32") {
platform3 = "win64";
platform2 = "win64";
} else if (process.platform === "linux") {
platform3 = "linux64";
platform2 = "linux64";
} else if (process.platform === "darwin") {
platform3 = "osx64";
platform2 = "osx64";
} else {
return `codeql-bundle${extension}`;
}
return `codeql-bundle-${platform3}${extension}`;
return `codeql-bundle-${platform2}${extension}`;
}
function getCodeQLActionRepository(logger) {
if (isRunningLocalAction()) {
@@ -85798,12 +85641,12 @@ async function getCodeQLBundleDownloadURL(tagName, apiDetails, compressionMethod
}
const [repositoryOwner, repositoryName] = repository.split("/");
try {
const release3 = await getApiClient().rest.repos.getReleaseByTag({
const release2 = await getApiClient().rest.repos.getReleaseByTag({
owner: repositoryOwner,
repo: repositoryName,
tag: tagName
});
for (const asset of release3.data.assets) {
for (const asset of release2.data.assets) {
if (asset.name === codeQLBundleName) {
logger.info(
`Found CodeQL bundle ${codeQLBundleName} in ${repository} on ${apiURL} with URL ${asset.url}.`
@@ -86243,14 +86086,14 @@ async function getNightlyToolsUrl(logger) {
zstdAvailability.available
) ? "zstd" : "gzip";
try {
const release3 = await getApiClient().rest.repos.listReleases({
const release2 = await getApiClient().rest.repos.listReleases({
owner: CODEQL_NIGHTLIES_REPOSITORY_OWNER,
repo: CODEQL_NIGHTLIES_REPOSITORY_NAME,
per_page: 1,
page: 1,
prerelease: true
});
const latestRelease = release3.data[0];
const latestRelease = release2.data[0];
if (!latestRelease) {
throw new Error("Could not find the latest nightly release.");
}

275
lib/autobuild-action.js generated
View File

@@ -10754,7 +10754,7 @@ var require_mock_interceptor = __commonJS({
var require_mock_client = __commonJS({
"node_modules/undici/lib/mock/mock-client.js"(exports2, module2) {
"use strict";
var { promisify: promisify2 } = require("util");
var { promisify } = require("util");
var Client = require_client();
var { buildMockDispatch } = require_mock_utils();
var {
@@ -10794,7 +10794,7 @@ var require_mock_client = __commonJS({
return new MockInterceptor(opts, this[kDispatches]);
}
async [kClose]() {
await promisify2(this[kOriginalClose])();
await promisify(this[kOriginalClose])();
this[kConnected] = 0;
this[kMockAgent][Symbols.kClients].delete(this[kOrigin]);
}
@@ -10807,7 +10807,7 @@ var require_mock_client = __commonJS({
var require_mock_pool = __commonJS({
"node_modules/undici/lib/mock/mock-pool.js"(exports2, module2) {
"use strict";
var { promisify: promisify2 } = require("util");
var { promisify } = require("util");
var Pool = require_pool();
var { buildMockDispatch } = require_mock_utils();
var {
@@ -10847,7 +10847,7 @@ var require_mock_pool = __commonJS({
return new MockInterceptor(opts, this[kDispatches]);
}
async [kClose]() {
await promisify2(this[kOriginalClose])();
await promisify(this[kOriginalClose])();
this[kConnected] = 0;
this[kMockAgent][Symbols.kClients].delete(this[kOrigin]);
}
@@ -18148,7 +18148,7 @@ var require_summary = __commonJS({
exports2.summary = exports2.markdownSummary = exports2.SUMMARY_DOCS_URL = exports2.SUMMARY_ENV_VAR = void 0;
var os_1 = require("os");
var fs_1 = require("fs");
var { access: access2, appendFile, writeFile } = fs_1.promises;
var { access, appendFile, writeFile } = fs_1.promises;
exports2.SUMMARY_ENV_VAR = "GITHUB_STEP_SUMMARY";
exports2.SUMMARY_DOCS_URL = "https://docs.github.com/actions/using-workflows/workflow-commands-for-github-actions#adding-a-job-summary";
var Summary = class {
@@ -18171,7 +18171,7 @@ var require_summary = __commonJS({
throw new Error(`Unable to find environment variable for $${exports2.SUMMARY_ENV_VAR}. Check if your runtime environment supports job summaries.`);
}
try {
yield access2(pathFromEnv, fs_1.constants.R_OK | fs_1.constants.W_OK);
yield access(pathFromEnv, fs_1.constants.R_OK | fs_1.constants.W_OK);
} catch (_a) {
throw new Error(`Unable to access summary file: '${pathFromEnv}'. Check if the file has correct read/write permissions.`);
}
@@ -19846,6 +19846,7 @@ var require_context = __commonJS({
this.action = process.env.GITHUB_ACTION;
this.actor = process.env.GITHUB_ACTOR;
this.job = process.env.GITHUB_JOB;
this.runAttempt = parseInt(process.env.GITHUB_RUN_ATTEMPT, 10);
this.runNumber = parseInt(process.env.GITHUB_RUN_NUMBER, 10);
this.runId = parseInt(process.env.GITHUB_RUN_ID, 10);
this.apiUrl = (_a = process.env.GITHUB_API_URL) !== null && _a !== void 0 ? _a : `https://api.github.com`;
@@ -21748,21 +21749,36 @@ var require_dist_node11 = __commonJS({
return to;
};
var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
var dist_src_exports = {};
__export2(dist_src_exports, {
var index_exports = {};
__export2(index_exports, {
Octokit: () => Octokit
});
module2.exports = __toCommonJS2(dist_src_exports);
module2.exports = __toCommonJS2(index_exports);
var import_universal_user_agent = require_dist_node();
var import_before_after_hook = require_before_after_hook();
var import_request = require_dist_node5();
var import_graphql = require_dist_node9();
var import_auth_token = require_dist_node10();
var VERSION = "5.2.0";
var VERSION = "5.2.2";
var noop = () => {
};
var consoleWarn = console.warn.bind(console);
var consoleError = console.error.bind(console);
function createLogger(logger = {}) {
if (typeof logger.debug !== "function") {
logger.debug = noop;
}
if (typeof logger.info !== "function") {
logger.info = noop;
}
if (typeof logger.warn !== "function") {
logger.warn = consoleWarn;
}
if (typeof logger.error !== "function") {
logger.error = consoleError;
}
return logger;
}
var userAgentTrail = `octokit-core.js/${VERSION} ${(0, import_universal_user_agent.getUserAgent)()}`;
var Octokit = class {
static {
@@ -21836,15 +21852,7 @@ var require_dist_node11 = __commonJS({
}
this.request = import_request.request.defaults(requestDefaults);
this.graphql = (0, import_graphql.withCustomRequest)(this.request).defaults(requestDefaults);
this.log = Object.assign(
{
debug: noop,
info: noop,
warn: consoleWarn,
error: consoleError
},
options.log
);
this.log = createLogger(options.log);
this.hook = hook;
if (!options.authStrategy) {
if (!options.auth) {
@@ -24862,8 +24870,8 @@ var require_semver = __commonJS({
}
// preminor will bump the version up to the next minor release, and immediately
// down to pre-release. premajor and prepatch work the same way.
inc(release3, identifier, identifierBase) {
if (release3.startsWith("pre")) {
inc(release2, identifier, identifierBase) {
if (release2.startsWith("pre")) {
if (!identifier && identifierBase === false) {
throw new Error("invalid increment argument: identifier is empty");
}
@@ -24874,7 +24882,7 @@ var require_semver = __commonJS({
}
}
}
switch (release3) {
switch (release2) {
case "premajor":
this.prerelease.length = 0;
this.patch = 0;
@@ -24965,7 +24973,7 @@ var require_semver = __commonJS({
break;
}
default:
throw new Error(`invalid increment argument: ${release3}`);
throw new Error(`invalid increment argument: ${release2}`);
}
this.raw = this.format();
if (this.build.length) {
@@ -25031,7 +25039,7 @@ var require_inc = __commonJS({
"node_modules/semver/functions/inc.js"(exports2, module2) {
"use strict";
var SemVer = require_semver();
var inc = (version, release3, options, identifier, identifierBase) => {
var inc = (version, release2, options, identifier, identifierBase) => {
if (typeof options === "string") {
identifierBase = identifier;
identifier = options;
@@ -25041,7 +25049,7 @@ var require_inc = __commonJS({
return new SemVer(
version instanceof SemVer ? version.version : version,
options
).inc(release3, identifier, identifierBase).version;
).inc(release2, identifier, identifierBase).version;
} catch (er) {
return null;
}
@@ -26484,7 +26492,7 @@ var require_package = __commonJS({
},
license: "MIT",
dependencies: {
"@actions/artifact": "^2.3.1",
"@actions/artifact": "^4.0.0",
"@actions/artifact-legacy": "npm:@actions/artifact@^1.1.2",
"@actions/cache": "^4.1.0",
"@actions/core": "^1.11.1",
@@ -26498,7 +26506,6 @@ var require_package = __commonJS({
"@octokit/request-error": "^7.0.1",
"@schemastore/package": "0.0.10",
archiver: "^7.0.1",
"check-disk-space": "^3.4.0",
"console-log-level": "^1.4.1",
"fast-deep-equal": "^3.1.3",
"follow-redirects": "^1.15.11",
@@ -26517,8 +26524,8 @@ var require_package = __commonJS({
"@eslint/eslintrc": "^3.3.1",
"@eslint/js": "^9.38.0",
"@microsoft/eslint-formatter-sarif": "^3.1.0",
"@octokit/types": "^15.0.0",
"@types/archiver": "^6.0.3",
"@octokit/types": "^15.0.1",
"@types/archiver": "^6.0.4",
"@types/console-log-level": "^1.4.5",
"@types/follow-redirects": "^1.14.4",
"@types/js-yaml": "^4.0.9",
@@ -26526,7 +26533,7 @@ var require_package = __commonJS({
"@types/node-forge": "^1.3.14",
"@types/semver": "^7.7.1",
"@types/sinon": "^17.0.4",
"@typescript-eslint/eslint-plugin": "^8.46.1",
"@typescript-eslint/eslint-plugin": "^8.46.2",
"@typescript-eslint/parser": "^8.41.0",
ava: "^6.4.1",
esbuild: "^0.25.11",
@@ -31436,8 +31443,8 @@ var require_semver3 = __commonJS({
}
} while (++i2);
};
SemVer.prototype.inc = function(release3, identifier) {
switch (release3) {
SemVer.prototype.inc = function(release2, identifier) {
switch (release2) {
case "premajor":
this.prerelease.length = 0;
this.patch = 0;
@@ -31513,20 +31520,20 @@ var require_semver3 = __commonJS({
}
break;
default:
throw new Error("invalid increment argument: " + release3);
throw new Error("invalid increment argument: " + release2);
}
this.format();
this.raw = this.version;
return this;
};
exports2.inc = inc;
function inc(version, release3, loose, identifier) {
function inc(version, release2, loose, identifier) {
if (typeof loose === "string") {
identifier = loose;
loose = void 0;
}
try {
return new SemVer(version, loose).inc(release3, identifier).version;
return new SemVer(version, loose).inc(release2, identifier).version;
} catch (er) {
return null;
}
@@ -55008,7 +55015,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
}
}
};
var access2 = {
var access = {
parameterPath: ["options", "access"],
mapper: {
serializedName: "x-ms-blob-public-access",
@@ -56816,7 +56823,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
requestId,
accept1,
metadata,
access2,
access,
defaultEncryptionScope,
preventEncryptionScopeOverride
],
@@ -56963,7 +56970,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
accept,
version,
requestId,
access2,
access,
leaseId,
ifModifiedSince,
ifUnmodifiedSince
@@ -65809,7 +65816,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
* @param containerAcl - Array of elements each having a unique Id and details of the access policy.
* @param options - Options to Container Set Access Policy operation.
*/
async setAccessPolicy(access3, containerAcl2, options = {}) {
async setAccessPolicy(access2, containerAcl2, options = {}) {
options.conditions = options.conditions || {};
return tracingClient.withSpan("ContainerClient-setAccessPolicy", options, async (updatedOptions) => {
const acl = [];
@@ -65825,7 +65832,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
}
return assertResponse(await this.containerContext.setAccessPolicy({
abortSignal: options.abortSignal,
access: access3,
access: access2,
containerAcl: acl,
leaseAccessConditions: options.conditions,
modifiedAccessConditions: options.conditions,
@@ -76103,148 +76110,14 @@ var github = __toESM(require_github());
var io2 = __toESM(require_io());
// src/util.ts
var fsPromises = __toESM(require("fs/promises"));
var path = __toESM(require("path"));
var core3 = __toESM(require_core());
var exec = __toESM(require_exec());
var io = __toESM(require_io());
// node_modules/check-disk-space/dist/check-disk-space.mjs
var import_node_child_process = require("node:child_process");
var import_promises = require("node:fs/promises");
var import_node_os = require("node:os");
var import_node_path = require("node:path");
var import_node_process = require("node:process");
var import_node_util = require("node:util");
var InvalidPathError = class _InvalidPathError extends Error {
constructor(message) {
super(message);
this.name = "InvalidPathError";
Object.setPrototypeOf(this, _InvalidPathError.prototype);
}
};
var NoMatchError = class _NoMatchError extends Error {
constructor(message) {
super(message);
this.name = "NoMatchError";
Object.setPrototypeOf(this, _NoMatchError.prototype);
}
};
async function isDirectoryExisting(directoryPath, dependencies) {
try {
await dependencies.fsAccess(directoryPath);
return Promise.resolve(true);
} catch (error2) {
return Promise.resolve(false);
}
}
async function getFirstExistingParentPath(directoryPath, dependencies) {
let parentDirectoryPath = directoryPath;
let parentDirectoryFound = await isDirectoryExisting(parentDirectoryPath, dependencies);
while (!parentDirectoryFound) {
parentDirectoryPath = dependencies.pathNormalize(parentDirectoryPath + "/..");
parentDirectoryFound = await isDirectoryExisting(parentDirectoryPath, dependencies);
}
return parentDirectoryPath;
}
async function hasPowerShell3(dependencies) {
const major = parseInt(dependencies.release.split(".")[0], 10);
if (major <= 6) {
return false;
}
try {
await dependencies.cpExecFile("where", ["powershell"], { windowsHide: true });
return true;
} catch (error2) {
return false;
}
}
function checkDiskSpace(directoryPath, dependencies = {
platform: import_node_process.platform,
release: (0, import_node_os.release)(),
fsAccess: import_promises.access,
pathNormalize: import_node_path.normalize,
pathSep: import_node_path.sep,
cpExecFile: (0, import_node_util.promisify)(import_node_child_process.execFile)
}) {
function mapOutput(stdout, filter, mapping, coefficient) {
const parsed = stdout.split("\n").map((line) => line.trim()).filter((line) => line.length !== 0).slice(1).map((line) => line.split(/\s+(?=[\d/])/));
const filtered = parsed.filter(filter);
if (filtered.length === 0) {
throw new NoMatchError();
}
const diskData = filtered[0];
return {
diskPath: diskData[mapping.diskPath],
free: parseInt(diskData[mapping.free], 10) * coefficient,
size: parseInt(diskData[mapping.size], 10) * coefficient
};
}
async function check(cmd, filter, mapping, coefficient = 1) {
const [file, ...args] = cmd;
if (file === void 0) {
return Promise.reject(new Error("cmd must contain at least one item"));
}
try {
const { stdout } = await dependencies.cpExecFile(file, args, { windowsHide: true });
return mapOutput(stdout, filter, mapping, coefficient);
} catch (error2) {
return Promise.reject(error2);
}
}
async function checkWin32(directoryPath2) {
if (directoryPath2.charAt(1) !== ":") {
return Promise.reject(new InvalidPathError(`The following path is invalid (should be X:\\...): ${directoryPath2}`));
}
const powershellCmd = [
"powershell",
"Get-CimInstance -ClassName Win32_LogicalDisk | Select-Object Caption, FreeSpace, Size"
];
const wmicCmd = [
"wmic",
"logicaldisk",
"get",
"size,freespace,caption"
];
const cmd = await hasPowerShell3(dependencies) ? powershellCmd : wmicCmd;
return check(cmd, (driveData) => {
const driveLetter = driveData[0];
return directoryPath2.toUpperCase().startsWith(driveLetter.toUpperCase());
}, {
diskPath: 0,
free: 1,
size: 2
});
}
async function checkUnix(directoryPath2) {
if (!dependencies.pathNormalize(directoryPath2).startsWith(dependencies.pathSep)) {
return Promise.reject(new InvalidPathError(`The following path is invalid (should start by ${dependencies.pathSep}): ${directoryPath2}`));
}
const pathToCheck = await getFirstExistingParentPath(directoryPath2, dependencies);
return check(
[
"df",
"-Pk",
"--",
pathToCheck
],
() => true,
// We should only get one line, so we did not need to filter
{
diskPath: 5,
free: 3,
size: 1
},
1024
);
}
if (dependencies.platform === "win32") {
return checkWin32(directoryPath);
}
return checkUnix(directoryPath);
}
// node_modules/get-folder-size/index.js
var import_node_path2 = require("node:path");
var import_node_path = require("node:path");
async function getFolderSize(itemPath, options) {
return await core(itemPath, options, { errors: true });
}
@@ -76269,7 +76142,7 @@ async function core(rootItemPath, options = {}, returnType = {}) {
if (typeof directoryItems !== "object") return;
await Promise.all(
directoryItems.map(
(directoryItem) => processItem((0, import_node_path2.join)(itemPath, directoryItem))
(directoryItem) => processItem((0, import_node_path.join)(itemPath, directoryItem))
)
);
}
@@ -79038,16 +78911,14 @@ function getErrorMessage(error2) {
}
async function checkDiskUsage(logger) {
try {
if (process.platform === "darwin" && (process.arch === "arm" || process.arch === "arm64") && !await checkSipEnablement(logger)) {
return void 0;
}
const diskUsage = await checkDiskSpace(
const diskUsage = await fsPromises.statfs(
getRequiredEnvParam("GITHUB_WORKSPACE")
);
const mbInBytes = 1024 * 1024;
const gbInBytes = 1024 * 1024 * 1024;
if (diskUsage.free < 2 * gbInBytes) {
const message = `The Actions runner is running low on disk space (${(diskUsage.free / mbInBytes).toPrecision(4)} MB available).`;
const blockSizeInBytes = diskUsage.bsize;
const numBlocksPerMb = 1024 * 1024 / blockSizeInBytes;
const numBlocksPerGb = 1024 * 1024 * 1024 / blockSizeInBytes;
if (diskUsage.bavail < 2 * numBlocksPerGb) {
const message = `The Actions runner is running low on disk space (${(diskUsage.bavail / numBlocksPerMb).toPrecision(4)} MB available).`;
if (process.env["CODEQL_ACTION_HAS_WARNED_ABOUT_DISK_SPACE" /* HAS_WARNED_ABOUT_DISK_SPACE */] !== "true") {
logger.warning(message);
} else {
@@ -79056,8 +78927,8 @@ async function checkDiskUsage(logger) {
core3.exportVariable("CODEQL_ACTION_HAS_WARNED_ABOUT_DISK_SPACE" /* HAS_WARNED_ABOUT_DISK_SPACE */, "true");
}
return {
numAvailableBytes: diskUsage.free,
numTotalBytes: diskUsage.size
numAvailableBytes: diskUsage.bavail * blockSizeInBytes,
numTotalBytes: diskUsage.blocks * blockSizeInBytes
};
} catch (error2) {
logger.warning(
@@ -79083,34 +78954,6 @@ function checkActionVersion(version, githubVersion) {
function cloneObject(obj) {
return JSON.parse(JSON.stringify(obj));
}
async function checkSipEnablement(logger) {
if (process.env["CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */] !== void 0 && ["true", "false"].includes(process.env["CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */])) {
return process.env["CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */] === "true";
}
try {
const sipStatusOutput = await exec.getExecOutput("csrutil status");
if (sipStatusOutput.exitCode === 0) {
if (sipStatusOutput.stdout.includes(
"System Integrity Protection status: enabled."
)) {
core3.exportVariable("CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */, "true");
return true;
}
if (sipStatusOutput.stdout.includes(
"System Integrity Protection status: disabled."
)) {
core3.exportVariable("CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */, "false");
return false;
}
}
return void 0;
} catch (e) {
logger.warning(
`Failed to determine if System Integrity Protection was enabled: ${e}`
);
return void 0;
}
}
async function asyncFilter(array, predicate) {
const results = await Promise.all(array.map(predicate));
return array.filter((_, index) => results[index]);
@@ -79578,7 +79421,7 @@ function getCliConfigCategoryIfExists(cliError) {
}
function isUnsupportedPlatform() {
return !SUPPORTED_PLATFORMS.some(
([platform2, arch]) => platform2 === process.platform && arch === process.arch
([platform, arch]) => platform === process.platform && arch === process.arch
);
}
function getUnsupportedPlatformError(cliError) {

6543
lib/init-action-post.js generated

File diff suppressed because one or more lines are too long

301
lib/init-action.js generated
View File

@@ -10754,7 +10754,7 @@ var require_mock_interceptor = __commonJS({
var require_mock_client = __commonJS({
"node_modules/undici/lib/mock/mock-client.js"(exports2, module2) {
"use strict";
var { promisify: promisify2 } = require("util");
var { promisify } = require("util");
var Client = require_client();
var { buildMockDispatch } = require_mock_utils();
var {
@@ -10794,7 +10794,7 @@ var require_mock_client = __commonJS({
return new MockInterceptor(opts, this[kDispatches]);
}
async [kClose]() {
await promisify2(this[kOriginalClose])();
await promisify(this[kOriginalClose])();
this[kConnected] = 0;
this[kMockAgent][Symbols.kClients].delete(this[kOrigin]);
}
@@ -10807,7 +10807,7 @@ var require_mock_client = __commonJS({
var require_mock_pool = __commonJS({
"node_modules/undici/lib/mock/mock-pool.js"(exports2, module2) {
"use strict";
var { promisify: promisify2 } = require("util");
var { promisify } = require("util");
var Pool = require_pool();
var { buildMockDispatch } = require_mock_utils();
var {
@@ -10847,7 +10847,7 @@ var require_mock_pool = __commonJS({
return new MockInterceptor(opts, this[kDispatches]);
}
async [kClose]() {
await promisify2(this[kOriginalClose])();
await promisify(this[kOriginalClose])();
this[kConnected] = 0;
this[kMockAgent][Symbols.kClients].delete(this[kOrigin]);
}
@@ -18148,7 +18148,7 @@ var require_summary = __commonJS({
exports2.summary = exports2.markdownSummary = exports2.SUMMARY_DOCS_URL = exports2.SUMMARY_ENV_VAR = void 0;
var os_1 = require("os");
var fs_1 = require("fs");
var { access: access2, appendFile, writeFile } = fs_1.promises;
var { access, appendFile, writeFile } = fs_1.promises;
exports2.SUMMARY_ENV_VAR = "GITHUB_STEP_SUMMARY";
exports2.SUMMARY_DOCS_URL = "https://docs.github.com/actions/using-workflows/workflow-commands-for-github-actions#adding-a-job-summary";
var Summary = class {
@@ -18171,7 +18171,7 @@ var require_summary = __commonJS({
throw new Error(`Unable to find environment variable for $${exports2.SUMMARY_ENV_VAR}. Check if your runtime environment supports job summaries.`);
}
try {
yield access2(pathFromEnv, fs_1.constants.R_OK | fs_1.constants.W_OK);
yield access(pathFromEnv, fs_1.constants.R_OK | fs_1.constants.W_OK);
} catch (_a) {
throw new Error(`Unable to access summary file: '${pathFromEnv}'. Check if the file has correct read/write permissions.`);
}
@@ -20153,8 +20153,8 @@ var require_semver = __commonJS({
}
// preminor will bump the version up to the next minor release, and immediately
// down to pre-release. premajor and prepatch work the same way.
inc(release3, identifier, identifierBase) {
if (release3.startsWith("pre")) {
inc(release2, identifier, identifierBase) {
if (release2.startsWith("pre")) {
if (!identifier && identifierBase === false) {
throw new Error("invalid increment argument: identifier is empty");
}
@@ -20165,7 +20165,7 @@ var require_semver = __commonJS({
}
}
}
switch (release3) {
switch (release2) {
case "premajor":
this.prerelease.length = 0;
this.patch = 0;
@@ -20256,7 +20256,7 @@ var require_semver = __commonJS({
break;
}
default:
throw new Error(`invalid increment argument: ${release3}`);
throw new Error(`invalid increment argument: ${release2}`);
}
this.raw = this.format();
if (this.build.length) {
@@ -20322,7 +20322,7 @@ var require_inc = __commonJS({
"node_modules/semver/functions/inc.js"(exports2, module2) {
"use strict";
var SemVer = require_semver();
var inc = (version, release3, options, identifier, identifierBase) => {
var inc = (version, release2, options, identifier, identifierBase) => {
if (typeof options === "string") {
identifierBase = identifier;
identifier = options;
@@ -20332,7 +20332,7 @@ var require_inc = __commonJS({
return new SemVer(
version instanceof SemVer ? version.version : version,
options
).inc(release3, identifier, identifierBase).version;
).inc(release2, identifier, identifierBase).version;
} catch (er) {
return null;
}
@@ -21776,6 +21776,7 @@ var require_context = __commonJS({
this.action = process.env.GITHUB_ACTION;
this.actor = process.env.GITHUB_ACTOR;
this.job = process.env.GITHUB_JOB;
this.runAttempt = parseInt(process.env.GITHUB_RUN_ATTEMPT, 10);
this.runNumber = parseInt(process.env.GITHUB_RUN_NUMBER, 10);
this.runId = parseInt(process.env.GITHUB_RUN_ID, 10);
this.apiUrl = (_a = process.env.GITHUB_API_URL) !== null && _a !== void 0 ? _a : `https://api.github.com`;
@@ -23678,21 +23679,36 @@ var require_dist_node11 = __commonJS({
return to;
};
var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
var dist_src_exports = {};
__export2(dist_src_exports, {
var index_exports = {};
__export2(index_exports, {
Octokit: () => Octokit
});
module2.exports = __toCommonJS2(dist_src_exports);
module2.exports = __toCommonJS2(index_exports);
var import_universal_user_agent = require_dist_node();
var import_before_after_hook = require_before_after_hook();
var import_request = require_dist_node5();
var import_graphql = require_dist_node9();
var import_auth_token = require_dist_node10();
var VERSION = "5.2.0";
var VERSION = "5.2.2";
var noop = () => {
};
var consoleWarn = console.warn.bind(console);
var consoleError = console.error.bind(console);
function createLogger(logger = {}) {
if (typeof logger.debug !== "function") {
logger.debug = noop;
}
if (typeof logger.info !== "function") {
logger.info = noop;
}
if (typeof logger.warn !== "function") {
logger.warn = consoleWarn;
}
if (typeof logger.error !== "function") {
logger.error = consoleError;
}
return logger;
}
var userAgentTrail = `octokit-core.js/${VERSION} ${(0, import_universal_user_agent.getUserAgent)()}`;
var Octokit = class {
static {
@@ -23766,15 +23782,7 @@ var require_dist_node11 = __commonJS({
}
this.request = import_request.request.defaults(requestDefaults);
this.graphql = (0, import_graphql.withCustomRequest)(this.request).defaults(requestDefaults);
this.log = Object.assign(
{
debug: noop,
info: noop,
warn: consoleWarn,
error: consoleError
},
options.log
);
this.log = createLogger(options.log);
this.hook = hook;
if (!options.authStrategy) {
if (!options.auth) {
@@ -26484,7 +26492,7 @@ var require_package = __commonJS({
},
license: "MIT",
dependencies: {
"@actions/artifact": "^2.3.1",
"@actions/artifact": "^4.0.0",
"@actions/artifact-legacy": "npm:@actions/artifact@^1.1.2",
"@actions/cache": "^4.1.0",
"@actions/core": "^1.11.1",
@@ -26498,7 +26506,6 @@ var require_package = __commonJS({
"@octokit/request-error": "^7.0.1",
"@schemastore/package": "0.0.10",
archiver: "^7.0.1",
"check-disk-space": "^3.4.0",
"console-log-level": "^1.4.1",
"fast-deep-equal": "^3.1.3",
"follow-redirects": "^1.15.11",
@@ -26517,8 +26524,8 @@ var require_package = __commonJS({
"@eslint/eslintrc": "^3.3.1",
"@eslint/js": "^9.38.0",
"@microsoft/eslint-formatter-sarif": "^3.1.0",
"@octokit/types": "^15.0.0",
"@types/archiver": "^6.0.3",
"@octokit/types": "^15.0.1",
"@types/archiver": "^6.0.4",
"@types/console-log-level": "^1.4.5",
"@types/follow-redirects": "^1.14.4",
"@types/js-yaml": "^4.0.9",
@@ -26526,7 +26533,7 @@ var require_package = __commonJS({
"@types/node-forge": "^1.3.14",
"@types/semver": "^7.7.1",
"@types/sinon": "^17.0.4",
"@typescript-eslint/eslint-plugin": "^8.46.1",
"@typescript-eslint/eslint-plugin": "^8.46.2",
"@typescript-eslint/parser": "^8.41.0",
ava: "^6.4.1",
esbuild: "^0.25.11",
@@ -31587,8 +31594,8 @@ var require_semver3 = __commonJS({
}
} while (++i2);
};
SemVer.prototype.inc = function(release3, identifier) {
switch (release3) {
SemVer.prototype.inc = function(release2, identifier) {
switch (release2) {
case "premajor":
this.prerelease.length = 0;
this.patch = 0;
@@ -31664,20 +31671,20 @@ var require_semver3 = __commonJS({
}
break;
default:
throw new Error("invalid increment argument: " + release3);
throw new Error("invalid increment argument: " + release2);
}
this.format();
this.raw = this.version;
return this;
};
exports2.inc = inc;
function inc(version, release3, loose, identifier) {
function inc(version, release2, loose, identifier) {
if (typeof loose === "string") {
identifier = loose;
loose = void 0;
}
try {
return new SemVer(version, loose).inc(release3, identifier).version;
return new SemVer(version, loose).inc(release2, identifier).version;
} catch (er) {
return null;
}
@@ -55159,7 +55166,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
}
}
};
var access2 = {
var access = {
parameterPath: ["options", "access"],
mapper: {
serializedName: "x-ms-blob-public-access",
@@ -56967,7 +56974,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
requestId,
accept1,
metadata,
access2,
access,
defaultEncryptionScope,
preventEncryptionScopeOverride
],
@@ -57114,7 +57121,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
accept,
version,
requestId,
access2,
access,
leaseId,
ifModifiedSince,
ifUnmodifiedSince
@@ -65960,7 +65967,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
* @param containerAcl - Array of elements each having a unique Id and details of the access policy.
* @param options - Options to Container Set Access Policy operation.
*/
async setAccessPolicy(access3, containerAcl2, options = {}) {
async setAccessPolicy(access2, containerAcl2, options = {}) {
options.conditions = options.conditions || {};
return tracingClient.withSpan("ContainerClient-setAccessPolicy", options, async (updatedOptions) => {
const acl = [];
@@ -65976,7 +65983,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
}
return assertResponse(await this.containerContext.setAccessPolicy({
abortSignal: options.abortSignal,
access: access3,
access: access2,
containerAcl: acl,
leaseAccessConditions: options.conditions,
modifiedAccessConditions: options.conditions,
@@ -77411,149 +77418,15 @@ var io2 = __toESM(require_io());
// src/util.ts
var fs = __toESM(require("fs"));
var fsPromises = __toESM(require("fs/promises"));
var os = __toESM(require("os"));
var path = __toESM(require("path"));
var core3 = __toESM(require_core());
var exec = __toESM(require_exec());
var io = __toESM(require_io());
// node_modules/check-disk-space/dist/check-disk-space.mjs
var import_node_child_process = require("node:child_process");
var import_promises = require("node:fs/promises");
var import_node_os = require("node:os");
var import_node_path = require("node:path");
var import_node_process = require("node:process");
var import_node_util = require("node:util");
var InvalidPathError = class _InvalidPathError extends Error {
constructor(message) {
super(message);
this.name = "InvalidPathError";
Object.setPrototypeOf(this, _InvalidPathError.prototype);
}
};
var NoMatchError = class _NoMatchError extends Error {
constructor(message) {
super(message);
this.name = "NoMatchError";
Object.setPrototypeOf(this, _NoMatchError.prototype);
}
};
async function isDirectoryExisting(directoryPath, dependencies) {
try {
await dependencies.fsAccess(directoryPath);
return Promise.resolve(true);
} catch (error2) {
return Promise.resolve(false);
}
}
async function getFirstExistingParentPath(directoryPath, dependencies) {
let parentDirectoryPath = directoryPath;
let parentDirectoryFound = await isDirectoryExisting(parentDirectoryPath, dependencies);
while (!parentDirectoryFound) {
parentDirectoryPath = dependencies.pathNormalize(parentDirectoryPath + "/..");
parentDirectoryFound = await isDirectoryExisting(parentDirectoryPath, dependencies);
}
return parentDirectoryPath;
}
async function hasPowerShell3(dependencies) {
const major = parseInt(dependencies.release.split(".")[0], 10);
if (major <= 6) {
return false;
}
try {
await dependencies.cpExecFile("where", ["powershell"], { windowsHide: true });
return true;
} catch (error2) {
return false;
}
}
function checkDiskSpace(directoryPath, dependencies = {
platform: import_node_process.platform,
release: (0, import_node_os.release)(),
fsAccess: import_promises.access,
pathNormalize: import_node_path.normalize,
pathSep: import_node_path.sep,
cpExecFile: (0, import_node_util.promisify)(import_node_child_process.execFile)
}) {
function mapOutput(stdout, filter, mapping, coefficient) {
const parsed = stdout.split("\n").map((line) => line.trim()).filter((line) => line.length !== 0).slice(1).map((line) => line.split(/\s+(?=[\d/])/));
const filtered = parsed.filter(filter);
if (filtered.length === 0) {
throw new NoMatchError();
}
const diskData = filtered[0];
return {
diskPath: diskData[mapping.diskPath],
free: parseInt(diskData[mapping.free], 10) * coefficient,
size: parseInt(diskData[mapping.size], 10) * coefficient
};
}
async function check(cmd, filter, mapping, coefficient = 1) {
const [file, ...args] = cmd;
if (file === void 0) {
return Promise.reject(new Error("cmd must contain at least one item"));
}
try {
const { stdout } = await dependencies.cpExecFile(file, args, { windowsHide: true });
return mapOutput(stdout, filter, mapping, coefficient);
} catch (error2) {
return Promise.reject(error2);
}
}
async function checkWin32(directoryPath2) {
if (directoryPath2.charAt(1) !== ":") {
return Promise.reject(new InvalidPathError(`The following path is invalid (should be X:\\...): ${directoryPath2}`));
}
const powershellCmd = [
"powershell",
"Get-CimInstance -ClassName Win32_LogicalDisk | Select-Object Caption, FreeSpace, Size"
];
const wmicCmd = [
"wmic",
"logicaldisk",
"get",
"size,freespace,caption"
];
const cmd = await hasPowerShell3(dependencies) ? powershellCmd : wmicCmd;
return check(cmd, (driveData) => {
const driveLetter = driveData[0];
return directoryPath2.toUpperCase().startsWith(driveLetter.toUpperCase());
}, {
diskPath: 0,
free: 1,
size: 2
});
}
async function checkUnix(directoryPath2) {
if (!dependencies.pathNormalize(directoryPath2).startsWith(dependencies.pathSep)) {
return Promise.reject(new InvalidPathError(`The following path is invalid (should start by ${dependencies.pathSep}): ${directoryPath2}`));
}
const pathToCheck = await getFirstExistingParentPath(directoryPath2, dependencies);
return check(
[
"df",
"-Pk",
"--",
pathToCheck
],
() => true,
// We should only get one line, so we did not need to filter
{
diskPath: 5,
free: 3,
size: 1
},
1024
);
}
if (dependencies.platform === "win32") {
return checkWin32(directoryPath);
}
return checkUnix(directoryPath);
}
// node_modules/get-folder-size/index.js
var import_node_path2 = require("node:path");
var import_node_path = require("node:path");
async function getFolderSize(itemPath, options) {
return await core(itemPath, options, { errors: true });
}
@@ -77578,7 +77451,7 @@ async function core(rootItemPath, options = {}, returnType = {}) {
if (typeof directoryItems !== "object") return;
await Promise.all(
directoryItems.map(
(directoryItem) => processItem((0, import_node_path2.join)(itemPath, directoryItem))
(directoryItem) => processItem((0, import_node_path.join)(itemPath, directoryItem))
)
);
}
@@ -80220,8 +80093,8 @@ function getExtraOptionsEnvParam() {
);
}
}
function getSystemReservedMemoryMegaBytes(totalMemoryMegaBytes, platform3) {
const fixedAmount = 1024 * (platform3 === "win32" ? 1.5 : 1);
function getSystemReservedMemoryMegaBytes(totalMemoryMegaBytes, platform2) {
const fixedAmount = 1024 * (platform2 === "win32" ? 1.5 : 1);
const scaledAmount = getReservedRamScaleFactor() * Math.max(totalMemoryMegaBytes - 8 * 1024, 0);
return fixedAmount + scaledAmount;
}
@@ -80235,7 +80108,7 @@ function getReservedRamScaleFactor() {
}
return envVar / 100;
}
function getMemoryFlagValueForPlatform(userInput, totalMemoryBytes, platform3) {
function getMemoryFlagValueForPlatform(userInput, totalMemoryBytes, platform2) {
let memoryToUseMegaBytes;
if (userInput) {
memoryToUseMegaBytes = Number(userInput);
@@ -80248,7 +80121,7 @@ function getMemoryFlagValueForPlatform(userInput, totalMemoryBytes, platform3) {
const totalMemoryMegaBytes = totalMemoryBytes / (1024 * 1024);
const reservedMemoryMegaBytes = getSystemReservedMemoryMegaBytes(
totalMemoryMegaBytes,
platform3
platform2
);
memoryToUseMegaBytes = totalMemoryMegaBytes - reservedMemoryMegaBytes;
}
@@ -80615,16 +80488,14 @@ function prettyPrintPack(pack) {
}
async function checkDiskUsage(logger) {
try {
if (process.platform === "darwin" && (process.arch === "arm" || process.arch === "arm64") && !await checkSipEnablement(logger)) {
return void 0;
}
const diskUsage = await checkDiskSpace(
const diskUsage = await fsPromises.statfs(
getRequiredEnvParam("GITHUB_WORKSPACE")
);
const mbInBytes = 1024 * 1024;
const gbInBytes = 1024 * 1024 * 1024;
if (diskUsage.free < 2 * gbInBytes) {
const message = `The Actions runner is running low on disk space (${(diskUsage.free / mbInBytes).toPrecision(4)} MB available).`;
const blockSizeInBytes = diskUsage.bsize;
const numBlocksPerMb = 1024 * 1024 / blockSizeInBytes;
const numBlocksPerGb = 1024 * 1024 * 1024 / blockSizeInBytes;
if (diskUsage.bavail < 2 * numBlocksPerGb) {
const message = `The Actions runner is running low on disk space (${(diskUsage.bavail / numBlocksPerMb).toPrecision(4)} MB available).`;
if (process.env["CODEQL_ACTION_HAS_WARNED_ABOUT_DISK_SPACE" /* HAS_WARNED_ABOUT_DISK_SPACE */] !== "true") {
logger.warning(message);
} else {
@@ -80633,8 +80504,8 @@ async function checkDiskUsage(logger) {
core3.exportVariable("CODEQL_ACTION_HAS_WARNED_ABOUT_DISK_SPACE" /* HAS_WARNED_ABOUT_DISK_SPACE */, "true");
}
return {
numAvailableBytes: diskUsage.free,
numTotalBytes: diskUsage.size
numAvailableBytes: diskUsage.bavail * blockSizeInBytes,
numTotalBytes: diskUsage.blocks * blockSizeInBytes
};
} catch (error2) {
logger.warning(
@@ -80674,34 +80545,6 @@ var BuildMode = /* @__PURE__ */ ((BuildMode3) => {
function cloneObject(obj) {
return JSON.parse(JSON.stringify(obj));
}
async function checkSipEnablement(logger) {
if (process.env["CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */] !== void 0 && ["true", "false"].includes(process.env["CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */])) {
return process.env["CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */] === "true";
}
try {
const sipStatusOutput = await exec.getExecOutput("csrutil status");
if (sipStatusOutput.exitCode === 0) {
if (sipStatusOutput.stdout.includes(
"System Integrity Protection status: enabled."
)) {
core3.exportVariable("CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */, "true");
return true;
}
if (sipStatusOutput.stdout.includes(
"System Integrity Protection status: disabled."
)) {
core3.exportVariable("CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */, "false");
return false;
}
}
return void 0;
} catch (e) {
logger.warning(
`Failed to determine if System Integrity Protection was enabled: ${e}`
);
return void 0;
}
}
async function cleanUpPath(file, name, logger) {
logger.debug(`Cleaning up ${name}.`);
try {
@@ -83556,7 +83399,7 @@ function getCliConfigCategoryIfExists(cliError) {
}
function isUnsupportedPlatform() {
return !SUPPORTED_PLATFORMS.some(
([platform3, arch2]) => platform3 === process.platform && arch2 === process.arch
([platform2, arch2]) => platform2 === process.platform && arch2 === process.arch
);
}
function getUnsupportedPlatformError(cliError) {
@@ -83918,17 +83761,17 @@ function getCodeQLBundleExtension(compressionMethod) {
}
function getCodeQLBundleName(compressionMethod) {
const extension = getCodeQLBundleExtension(compressionMethod);
let platform3;
let platform2;
if (process.platform === "win32") {
platform3 = "win64";
platform2 = "win64";
} else if (process.platform === "linux") {
platform3 = "linux64";
platform2 = "linux64";
} else if (process.platform === "darwin") {
platform3 = "osx64";
platform2 = "osx64";
} else {
return `codeql-bundle${extension}`;
}
return `codeql-bundle-${platform3}${extension}`;
return `codeql-bundle-${platform2}${extension}`;
}
function getCodeQLActionRepository(logger) {
if (isRunningLocalAction()) {
@@ -83962,12 +83805,12 @@ async function getCodeQLBundleDownloadURL(tagName, apiDetails, compressionMethod
}
const [repositoryOwner, repositoryName] = repository.split("/");
try {
const release3 = await getApiClient().rest.repos.getReleaseByTag({
const release2 = await getApiClient().rest.repos.getReleaseByTag({
owner: repositoryOwner,
repo: repositoryName,
tag: tagName
});
for (const asset of release3.data.assets) {
for (const asset of release2.data.assets) {
if (asset.name === codeQLBundleName) {
logger.info(
`Found CodeQL bundle ${codeQLBundleName} in ${repository} on ${apiURL} with URL ${asset.url}.`
@@ -84407,14 +84250,14 @@ async function getNightlyToolsUrl(logger) {
zstdAvailability.available
) ? "zstd" : "gzip";
try {
const release3 = await getApiClient().rest.repos.listReleases({
const release2 = await getApiClient().rest.repos.listReleases({
owner: CODEQL_NIGHTLIES_REPOSITORY_OWNER,
repo: CODEQL_NIGHTLIES_REPOSITORY_NAME,
per_page: 1,
page: 1,
prerelease: true
});
const latestRelease = release3.data[0];
const latestRelease = release2.data[0];
if (!latestRelease) {
throw new Error("Could not find the latest nightly release.");
}

View File

@@ -10754,7 +10754,7 @@ var require_mock_interceptor = __commonJS({
var require_mock_client = __commonJS({
"node_modules/undici/lib/mock/mock-client.js"(exports2, module2) {
"use strict";
var { promisify: promisify2 } = require("util");
var { promisify } = require("util");
var Client = require_client();
var { buildMockDispatch } = require_mock_utils();
var {
@@ -10794,7 +10794,7 @@ var require_mock_client = __commonJS({
return new MockInterceptor(opts, this[kDispatches]);
}
async [kClose]() {
await promisify2(this[kOriginalClose])();
await promisify(this[kOriginalClose])();
this[kConnected] = 0;
this[kMockAgent][Symbols.kClients].delete(this[kOrigin]);
}
@@ -10807,7 +10807,7 @@ var require_mock_client = __commonJS({
var require_mock_pool = __commonJS({
"node_modules/undici/lib/mock/mock-pool.js"(exports2, module2) {
"use strict";
var { promisify: promisify2 } = require("util");
var { promisify } = require("util");
var Pool = require_pool();
var { buildMockDispatch } = require_mock_utils();
var {
@@ -10847,7 +10847,7 @@ var require_mock_pool = __commonJS({
return new MockInterceptor(opts, this[kDispatches]);
}
async [kClose]() {
await promisify2(this[kOriginalClose])();
await promisify(this[kOriginalClose])();
this[kConnected] = 0;
this[kMockAgent][Symbols.kClients].delete(this[kOrigin]);
}
@@ -18148,7 +18148,7 @@ var require_summary = __commonJS({
exports2.summary = exports2.markdownSummary = exports2.SUMMARY_DOCS_URL = exports2.SUMMARY_ENV_VAR = void 0;
var os_1 = require("os");
var fs_1 = require("fs");
var { access: access2, appendFile, writeFile } = fs_1.promises;
var { access, appendFile, writeFile } = fs_1.promises;
exports2.SUMMARY_ENV_VAR = "GITHUB_STEP_SUMMARY";
exports2.SUMMARY_DOCS_URL = "https://docs.github.com/actions/using-workflows/workflow-commands-for-github-actions#adding-a-job-summary";
var Summary = class {
@@ -18171,7 +18171,7 @@ var require_summary = __commonJS({
throw new Error(`Unable to find environment variable for $${exports2.SUMMARY_ENV_VAR}. Check if your runtime environment supports job summaries.`);
}
try {
yield access2(pathFromEnv, fs_1.constants.R_OK | fs_1.constants.W_OK);
yield access(pathFromEnv, fs_1.constants.R_OK | fs_1.constants.W_OK);
} catch (_a) {
throw new Error(`Unable to access summary file: '${pathFromEnv}'. Check if the file has correct read/write permissions.`);
}
@@ -19846,6 +19846,7 @@ var require_context = __commonJS({
this.action = process.env.GITHUB_ACTION;
this.actor = process.env.GITHUB_ACTOR;
this.job = process.env.GITHUB_JOB;
this.runAttempt = parseInt(process.env.GITHUB_RUN_ATTEMPT, 10);
this.runNumber = parseInt(process.env.GITHUB_RUN_NUMBER, 10);
this.runId = parseInt(process.env.GITHUB_RUN_ID, 10);
this.apiUrl = (_a = process.env.GITHUB_API_URL) !== null && _a !== void 0 ? _a : `https://api.github.com`;
@@ -21748,21 +21749,36 @@ var require_dist_node11 = __commonJS({
return to;
};
var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
var dist_src_exports = {};
__export2(dist_src_exports, {
var index_exports = {};
__export2(index_exports, {
Octokit: () => Octokit
});
module2.exports = __toCommonJS2(dist_src_exports);
module2.exports = __toCommonJS2(index_exports);
var import_universal_user_agent = require_dist_node();
var import_before_after_hook = require_before_after_hook();
var import_request = require_dist_node5();
var import_graphql = require_dist_node9();
var import_auth_token = require_dist_node10();
var VERSION = "5.2.0";
var VERSION = "5.2.2";
var noop = () => {
};
var consoleWarn = console.warn.bind(console);
var consoleError = console.error.bind(console);
function createLogger(logger = {}) {
if (typeof logger.debug !== "function") {
logger.debug = noop;
}
if (typeof logger.info !== "function") {
logger.info = noop;
}
if (typeof logger.warn !== "function") {
logger.warn = consoleWarn;
}
if (typeof logger.error !== "function") {
logger.error = consoleError;
}
return logger;
}
var userAgentTrail = `octokit-core.js/${VERSION} ${(0, import_universal_user_agent.getUserAgent)()}`;
var Octokit = class {
static {
@@ -21836,15 +21852,7 @@ var require_dist_node11 = __commonJS({
}
this.request = import_request.request.defaults(requestDefaults);
this.graphql = (0, import_graphql.withCustomRequest)(this.request).defaults(requestDefaults);
this.log = Object.assign(
{
debug: noop,
info: noop,
warn: consoleWarn,
error: consoleError
},
options.log
);
this.log = createLogger(options.log);
this.hook = hook;
if (!options.authStrategy) {
if (!options.auth) {
@@ -24862,8 +24870,8 @@ var require_semver = __commonJS({
}
// preminor will bump the version up to the next minor release, and immediately
// down to pre-release. premajor and prepatch work the same way.
inc(release3, identifier, identifierBase) {
if (release3.startsWith("pre")) {
inc(release2, identifier, identifierBase) {
if (release2.startsWith("pre")) {
if (!identifier && identifierBase === false) {
throw new Error("invalid increment argument: identifier is empty");
}
@@ -24874,7 +24882,7 @@ var require_semver = __commonJS({
}
}
}
switch (release3) {
switch (release2) {
case "premajor":
this.prerelease.length = 0;
this.patch = 0;
@@ -24965,7 +24973,7 @@ var require_semver = __commonJS({
break;
}
default:
throw new Error(`invalid increment argument: ${release3}`);
throw new Error(`invalid increment argument: ${release2}`);
}
this.raw = this.format();
if (this.build.length) {
@@ -25031,7 +25039,7 @@ var require_inc = __commonJS({
"node_modules/semver/functions/inc.js"(exports2, module2) {
"use strict";
var SemVer = require_semver();
var inc = (version, release3, options, identifier, identifierBase) => {
var inc = (version, release2, options, identifier, identifierBase) => {
if (typeof options === "string") {
identifierBase = identifier;
identifier = options;
@@ -25041,7 +25049,7 @@ var require_inc = __commonJS({
return new SemVer(
version instanceof SemVer ? version.version : version,
options
).inc(release3, identifier, identifierBase).version;
).inc(release2, identifier, identifierBase).version;
} catch (er) {
return null;
}
@@ -26484,7 +26492,7 @@ var require_package = __commonJS({
},
license: "MIT",
dependencies: {
"@actions/artifact": "^2.3.1",
"@actions/artifact": "^4.0.0",
"@actions/artifact-legacy": "npm:@actions/artifact@^1.1.2",
"@actions/cache": "^4.1.0",
"@actions/core": "^1.11.1",
@@ -26498,7 +26506,6 @@ var require_package = __commonJS({
"@octokit/request-error": "^7.0.1",
"@schemastore/package": "0.0.10",
archiver: "^7.0.1",
"check-disk-space": "^3.4.0",
"console-log-level": "^1.4.1",
"fast-deep-equal": "^3.1.3",
"follow-redirects": "^1.15.11",
@@ -26517,8 +26524,8 @@ var require_package = __commonJS({
"@eslint/eslintrc": "^3.3.1",
"@eslint/js": "^9.38.0",
"@microsoft/eslint-formatter-sarif": "^3.1.0",
"@octokit/types": "^15.0.0",
"@types/archiver": "^6.0.3",
"@octokit/types": "^15.0.1",
"@types/archiver": "^6.0.4",
"@types/console-log-level": "^1.4.5",
"@types/follow-redirects": "^1.14.4",
"@types/js-yaml": "^4.0.9",
@@ -26526,7 +26533,7 @@ var require_package = __commonJS({
"@types/node-forge": "^1.3.14",
"@types/semver": "^7.7.1",
"@types/sinon": "^17.0.4",
"@typescript-eslint/eslint-plugin": "^8.46.1",
"@typescript-eslint/eslint-plugin": "^8.46.2",
"@typescript-eslint/parser": "^8.41.0",
ava: "^6.4.1",
esbuild: "^0.25.11",
@@ -31436,8 +31443,8 @@ var require_semver3 = __commonJS({
}
} while (++i2);
};
SemVer.prototype.inc = function(release3, identifier) {
switch (release3) {
SemVer.prototype.inc = function(release2, identifier) {
switch (release2) {
case "premajor":
this.prerelease.length = 0;
this.patch = 0;
@@ -31513,20 +31520,20 @@ var require_semver3 = __commonJS({
}
break;
default:
throw new Error("invalid increment argument: " + release3);
throw new Error("invalid increment argument: " + release2);
}
this.format();
this.raw = this.version;
return this;
};
exports2.inc = inc;
function inc(version, release3, loose, identifier) {
function inc(version, release2, loose, identifier) {
if (typeof loose === "string") {
identifier = loose;
loose = void 0;
}
try {
return new SemVer(version, loose).inc(release3, identifier).version;
return new SemVer(version, loose).inc(release2, identifier).version;
} catch (er) {
return null;
}
@@ -55008,7 +55015,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
}
}
};
var access2 = {
var access = {
parameterPath: ["options", "access"],
mapper: {
serializedName: "x-ms-blob-public-access",
@@ -56816,7 +56823,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
requestId,
accept1,
metadata,
access2,
access,
defaultEncryptionScope,
preventEncryptionScopeOverride
],
@@ -56963,7 +56970,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
accept,
version,
requestId,
access2,
access,
leaseId,
ifModifiedSince,
ifUnmodifiedSince
@@ -65809,7 +65816,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
* @param containerAcl - Array of elements each having a unique Id and details of the access policy.
* @param options - Options to Container Set Access Policy operation.
*/
async setAccessPolicy(access3, containerAcl2, options = {}) {
async setAccessPolicy(access2, containerAcl2, options = {}) {
options.conditions = options.conditions || {};
return tracingClient.withSpan("ContainerClient-setAccessPolicy", options, async (updatedOptions) => {
const acl = [];
@@ -65825,7 +65832,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
}
return assertResponse(await this.containerContext.setAccessPolicy({
abortSignal: options.abortSignal,
access: access3,
access: access2,
containerAcl: acl,
leaseAccessConditions: options.conditions,
modifiedAccessConditions: options.conditions,
@@ -76103,148 +76110,14 @@ var github = __toESM(require_github());
var io2 = __toESM(require_io());
// src/util.ts
var fsPromises = __toESM(require("fs/promises"));
var path = __toESM(require("path"));
var core3 = __toESM(require_core());
var exec = __toESM(require_exec());
var io = __toESM(require_io());
// node_modules/check-disk-space/dist/check-disk-space.mjs
var import_node_child_process = require("node:child_process");
var import_promises = require("node:fs/promises");
var import_node_os = require("node:os");
var import_node_path = require("node:path");
var import_node_process = require("node:process");
var import_node_util = require("node:util");
var InvalidPathError = class _InvalidPathError extends Error {
constructor(message) {
super(message);
this.name = "InvalidPathError";
Object.setPrototypeOf(this, _InvalidPathError.prototype);
}
};
var NoMatchError = class _NoMatchError extends Error {
constructor(message) {
super(message);
this.name = "NoMatchError";
Object.setPrototypeOf(this, _NoMatchError.prototype);
}
};
async function isDirectoryExisting(directoryPath, dependencies) {
try {
await dependencies.fsAccess(directoryPath);
return Promise.resolve(true);
} catch (error2) {
return Promise.resolve(false);
}
}
async function getFirstExistingParentPath(directoryPath, dependencies) {
let parentDirectoryPath = directoryPath;
let parentDirectoryFound = await isDirectoryExisting(parentDirectoryPath, dependencies);
while (!parentDirectoryFound) {
parentDirectoryPath = dependencies.pathNormalize(parentDirectoryPath + "/..");
parentDirectoryFound = await isDirectoryExisting(parentDirectoryPath, dependencies);
}
return parentDirectoryPath;
}
async function hasPowerShell3(dependencies) {
const major = parseInt(dependencies.release.split(".")[0], 10);
if (major <= 6) {
return false;
}
try {
await dependencies.cpExecFile("where", ["powershell"], { windowsHide: true });
return true;
} catch (error2) {
return false;
}
}
function checkDiskSpace(directoryPath, dependencies = {
platform: import_node_process.platform,
release: (0, import_node_os.release)(),
fsAccess: import_promises.access,
pathNormalize: import_node_path.normalize,
pathSep: import_node_path.sep,
cpExecFile: (0, import_node_util.promisify)(import_node_child_process.execFile)
}) {
function mapOutput(stdout, filter, mapping, coefficient) {
const parsed = stdout.split("\n").map((line) => line.trim()).filter((line) => line.length !== 0).slice(1).map((line) => line.split(/\s+(?=[\d/])/));
const filtered = parsed.filter(filter);
if (filtered.length === 0) {
throw new NoMatchError();
}
const diskData = filtered[0];
return {
diskPath: diskData[mapping.diskPath],
free: parseInt(diskData[mapping.free], 10) * coefficient,
size: parseInt(diskData[mapping.size], 10) * coefficient
};
}
async function check(cmd, filter, mapping, coefficient = 1) {
const [file, ...args] = cmd;
if (file === void 0) {
return Promise.reject(new Error("cmd must contain at least one item"));
}
try {
const { stdout } = await dependencies.cpExecFile(file, args, { windowsHide: true });
return mapOutput(stdout, filter, mapping, coefficient);
} catch (error2) {
return Promise.reject(error2);
}
}
async function checkWin32(directoryPath2) {
if (directoryPath2.charAt(1) !== ":") {
return Promise.reject(new InvalidPathError(`The following path is invalid (should be X:\\...): ${directoryPath2}`));
}
const powershellCmd = [
"powershell",
"Get-CimInstance -ClassName Win32_LogicalDisk | Select-Object Caption, FreeSpace, Size"
];
const wmicCmd = [
"wmic",
"logicaldisk",
"get",
"size,freespace,caption"
];
const cmd = await hasPowerShell3(dependencies) ? powershellCmd : wmicCmd;
return check(cmd, (driveData) => {
const driveLetter = driveData[0];
return directoryPath2.toUpperCase().startsWith(driveLetter.toUpperCase());
}, {
diskPath: 0,
free: 1,
size: 2
});
}
async function checkUnix(directoryPath2) {
if (!dependencies.pathNormalize(directoryPath2).startsWith(dependencies.pathSep)) {
return Promise.reject(new InvalidPathError(`The following path is invalid (should start by ${dependencies.pathSep}): ${directoryPath2}`));
}
const pathToCheck = await getFirstExistingParentPath(directoryPath2, dependencies);
return check(
[
"df",
"-Pk",
"--",
pathToCheck
],
() => true,
// We should only get one line, so we did not need to filter
{
diskPath: 5,
free: 3,
size: 1
},
1024
);
}
if (dependencies.platform === "win32") {
return checkWin32(directoryPath);
}
return checkUnix(directoryPath);
}
// node_modules/get-folder-size/index.js
var import_node_path2 = require("node:path");
var import_node_path = require("node:path");
async function getFolderSize(itemPath, options) {
return await core(itemPath, options, { errors: true });
}
@@ -76269,7 +76142,7 @@ async function core(rootItemPath, options = {}, returnType = {}) {
if (typeof directoryItems !== "object") return;
await Promise.all(
directoryItems.map(
(directoryItem) => processItem((0, import_node_path2.join)(itemPath, directoryItem))
(directoryItem) => processItem((0, import_node_path.join)(itemPath, directoryItem))
)
);
}
@@ -79050,16 +78923,14 @@ function getErrorMessage(error2) {
}
async function checkDiskUsage(logger) {
try {
if (process.platform === "darwin" && (process.arch === "arm" || process.arch === "arm64") && !await checkSipEnablement(logger)) {
return void 0;
}
const diskUsage = await checkDiskSpace(
const diskUsage = await fsPromises.statfs(
getRequiredEnvParam("GITHUB_WORKSPACE")
);
const mbInBytes = 1024 * 1024;
const gbInBytes = 1024 * 1024 * 1024;
if (diskUsage.free < 2 * gbInBytes) {
const message = `The Actions runner is running low on disk space (${(diskUsage.free / mbInBytes).toPrecision(4)} MB available).`;
const blockSizeInBytes = diskUsage.bsize;
const numBlocksPerMb = 1024 * 1024 / blockSizeInBytes;
const numBlocksPerGb = 1024 * 1024 * 1024 / blockSizeInBytes;
if (diskUsage.bavail < 2 * numBlocksPerGb) {
const message = `The Actions runner is running low on disk space (${(diskUsage.bavail / numBlocksPerMb).toPrecision(4)} MB available).`;
if (process.env["CODEQL_ACTION_HAS_WARNED_ABOUT_DISK_SPACE" /* HAS_WARNED_ABOUT_DISK_SPACE */] !== "true") {
logger.warning(message);
} else {
@@ -79068,8 +78939,8 @@ async function checkDiskUsage(logger) {
core3.exportVariable("CODEQL_ACTION_HAS_WARNED_ABOUT_DISK_SPACE" /* HAS_WARNED_ABOUT_DISK_SPACE */, "true");
}
return {
numAvailableBytes: diskUsage.free,
numTotalBytes: diskUsage.size
numAvailableBytes: diskUsage.bavail * blockSizeInBytes,
numTotalBytes: diskUsage.blocks * blockSizeInBytes
};
} catch (error2) {
logger.warning(
@@ -79095,34 +78966,6 @@ function checkActionVersion(version, githubVersion) {
function cloneObject(obj) {
return JSON.parse(JSON.stringify(obj));
}
async function checkSipEnablement(logger) {
if (process.env["CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */] !== void 0 && ["true", "false"].includes(process.env["CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */])) {
return process.env["CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */] === "true";
}
try {
const sipStatusOutput = await exec.getExecOutput("csrutil status");
if (sipStatusOutput.exitCode === 0) {
if (sipStatusOutput.stdout.includes(
"System Integrity Protection status: enabled."
)) {
core3.exportVariable("CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */, "true");
return true;
}
if (sipStatusOutput.stdout.includes(
"System Integrity Protection status: disabled."
)) {
core3.exportVariable("CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */, "false");
return false;
}
}
return void 0;
} catch (e) {
logger.warning(
`Failed to determine if System Integrity Protection was enabled: ${e}`
);
return void 0;
}
}
async function asyncSome(array, predicate) {
const results = await Promise.all(array.map(predicate));
return results.some((result) => result);
@@ -79577,7 +79420,7 @@ function getCliConfigCategoryIfExists(cliError) {
}
function isUnsupportedPlatform() {
return !SUPPORTED_PLATFORMS.some(
([platform2, arch]) => platform2 === process.platform && arch === process.arch
([platform, arch]) => platform === process.platform && arch === process.arch
);
}
function getUnsupportedPlatformError(cliError) {

View File

@@ -10754,7 +10754,7 @@ var require_mock_interceptor = __commonJS({
var require_mock_client = __commonJS({
"node_modules/undici/lib/mock/mock-client.js"(exports2, module2) {
"use strict";
var { promisify: promisify2 } = require("util");
var { promisify } = require("util");
var Client = require_client();
var { buildMockDispatch } = require_mock_utils();
var {
@@ -10794,7 +10794,7 @@ var require_mock_client = __commonJS({
return new MockInterceptor(opts, this[kDispatches]);
}
async [kClose]() {
await promisify2(this[kOriginalClose])();
await promisify(this[kOriginalClose])();
this[kConnected] = 0;
this[kMockAgent][Symbols.kClients].delete(this[kOrigin]);
}
@@ -10807,7 +10807,7 @@ var require_mock_client = __commonJS({
var require_mock_pool = __commonJS({
"node_modules/undici/lib/mock/mock-pool.js"(exports2, module2) {
"use strict";
var { promisify: promisify2 } = require("util");
var { promisify } = require("util");
var Pool = require_pool();
var { buildMockDispatch } = require_mock_utils();
var {
@@ -10847,7 +10847,7 @@ var require_mock_pool = __commonJS({
return new MockInterceptor(opts, this[kDispatches]);
}
async [kClose]() {
await promisify2(this[kOriginalClose])();
await promisify(this[kOriginalClose])();
this[kConnected] = 0;
this[kMockAgent][Symbols.kClients].delete(this[kOrigin]);
}
@@ -18148,7 +18148,7 @@ var require_summary = __commonJS({
exports2.summary = exports2.markdownSummary = exports2.SUMMARY_DOCS_URL = exports2.SUMMARY_ENV_VAR = void 0;
var os_1 = require("os");
var fs_1 = require("fs");
var { access: access2, appendFile, writeFile } = fs_1.promises;
var { access, appendFile, writeFile } = fs_1.promises;
exports2.SUMMARY_ENV_VAR = "GITHUB_STEP_SUMMARY";
exports2.SUMMARY_DOCS_URL = "https://docs.github.com/actions/using-workflows/workflow-commands-for-github-actions#adding-a-job-summary";
var Summary = class {
@@ -18171,7 +18171,7 @@ var require_summary = __commonJS({
throw new Error(`Unable to find environment variable for $${exports2.SUMMARY_ENV_VAR}. Check if your runtime environment supports job summaries.`);
}
try {
yield access2(pathFromEnv, fs_1.constants.R_OK | fs_1.constants.W_OK);
yield access(pathFromEnv, fs_1.constants.R_OK | fs_1.constants.W_OK);
} catch (_a) {
throw new Error(`Unable to access summary file: '${pathFromEnv}'. Check if the file has correct read/write permissions.`);
}
@@ -19846,6 +19846,7 @@ var require_context = __commonJS({
this.action = process.env.GITHUB_ACTION;
this.actor = process.env.GITHUB_ACTOR;
this.job = process.env.GITHUB_JOB;
this.runAttempt = parseInt(process.env.GITHUB_RUN_ATTEMPT, 10);
this.runNumber = parseInt(process.env.GITHUB_RUN_NUMBER, 10);
this.runId = parseInt(process.env.GITHUB_RUN_ID, 10);
this.apiUrl = (_a = process.env.GITHUB_API_URL) !== null && _a !== void 0 ? _a : `https://api.github.com`;
@@ -21748,21 +21749,36 @@ var require_dist_node11 = __commonJS({
return to;
};
var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
var dist_src_exports = {};
__export2(dist_src_exports, {
var index_exports = {};
__export2(index_exports, {
Octokit: () => Octokit
});
module2.exports = __toCommonJS2(dist_src_exports);
module2.exports = __toCommonJS2(index_exports);
var import_universal_user_agent = require_dist_node();
var import_before_after_hook = require_before_after_hook();
var import_request = require_dist_node5();
var import_graphql = require_dist_node9();
var import_auth_token = require_dist_node10();
var VERSION = "5.2.0";
var VERSION = "5.2.2";
var noop = () => {
};
var consoleWarn = console.warn.bind(console);
var consoleError = console.error.bind(console);
function createLogger(logger = {}) {
if (typeof logger.debug !== "function") {
logger.debug = noop;
}
if (typeof logger.info !== "function") {
logger.info = noop;
}
if (typeof logger.warn !== "function") {
logger.warn = consoleWarn;
}
if (typeof logger.error !== "function") {
logger.error = consoleError;
}
return logger;
}
var userAgentTrail = `octokit-core.js/${VERSION} ${(0, import_universal_user_agent.getUserAgent)()}`;
var Octokit = class {
static {
@@ -21836,15 +21852,7 @@ var require_dist_node11 = __commonJS({
}
this.request = import_request.request.defaults(requestDefaults);
this.graphql = (0, import_graphql.withCustomRequest)(this.request).defaults(requestDefaults);
this.log = Object.assign(
{
debug: noop,
info: noop,
warn: consoleWarn,
error: consoleError
},
options.log
);
this.log = createLogger(options.log);
this.hook = hook;
if (!options.authStrategy) {
if (!options.auth) {
@@ -24862,8 +24870,8 @@ var require_semver = __commonJS({
}
// preminor will bump the version up to the next minor release, and immediately
// down to pre-release. premajor and prepatch work the same way.
inc(release3, identifier, identifierBase) {
if (release3.startsWith("pre")) {
inc(release2, identifier, identifierBase) {
if (release2.startsWith("pre")) {
if (!identifier && identifierBase === false) {
throw new Error("invalid increment argument: identifier is empty");
}
@@ -24874,7 +24882,7 @@ var require_semver = __commonJS({
}
}
}
switch (release3) {
switch (release2) {
case "premajor":
this.prerelease.length = 0;
this.patch = 0;
@@ -24965,7 +24973,7 @@ var require_semver = __commonJS({
break;
}
default:
throw new Error(`invalid increment argument: ${release3}`);
throw new Error(`invalid increment argument: ${release2}`);
}
this.raw = this.format();
if (this.build.length) {
@@ -25031,7 +25039,7 @@ var require_inc = __commonJS({
"node_modules/semver/functions/inc.js"(exports2, module2) {
"use strict";
var SemVer = require_semver();
var inc = (version, release3, options, identifier, identifierBase) => {
var inc = (version, release2, options, identifier, identifierBase) => {
if (typeof options === "string") {
identifierBase = identifier;
identifier = options;
@@ -25041,7 +25049,7 @@ var require_inc = __commonJS({
return new SemVer(
version instanceof SemVer ? version.version : version,
options
).inc(release3, identifier, identifierBase).version;
).inc(release2, identifier, identifierBase).version;
} catch (er) {
return null;
}
@@ -26484,7 +26492,7 @@ var require_package = __commonJS({
},
license: "MIT",
dependencies: {
"@actions/artifact": "^2.3.1",
"@actions/artifact": "^4.0.0",
"@actions/artifact-legacy": "npm:@actions/artifact@^1.1.2",
"@actions/cache": "^4.1.0",
"@actions/core": "^1.11.1",
@@ -26498,7 +26506,6 @@ var require_package = __commonJS({
"@octokit/request-error": "^7.0.1",
"@schemastore/package": "0.0.10",
archiver: "^7.0.1",
"check-disk-space": "^3.4.0",
"console-log-level": "^1.4.1",
"fast-deep-equal": "^3.1.3",
"follow-redirects": "^1.15.11",
@@ -26517,8 +26524,8 @@ var require_package = __commonJS({
"@eslint/eslintrc": "^3.3.1",
"@eslint/js": "^9.38.0",
"@microsoft/eslint-formatter-sarif": "^3.1.0",
"@octokit/types": "^15.0.0",
"@types/archiver": "^6.0.3",
"@octokit/types": "^15.0.1",
"@types/archiver": "^6.0.4",
"@types/console-log-level": "^1.4.5",
"@types/follow-redirects": "^1.14.4",
"@types/js-yaml": "^4.0.9",
@@ -26526,7 +26533,7 @@ var require_package = __commonJS({
"@types/node-forge": "^1.3.14",
"@types/semver": "^7.7.1",
"@types/sinon": "^17.0.4",
"@typescript-eslint/eslint-plugin": "^8.46.1",
"@typescript-eslint/eslint-plugin": "^8.46.2",
"@typescript-eslint/parser": "^8.41.0",
ava: "^6.4.1",
esbuild: "^0.25.11",
@@ -30139,8 +30146,8 @@ var require_semver3 = __commonJS({
}
} while (++i2);
};
SemVer.prototype.inc = function(release3, identifier) {
switch (release3) {
SemVer.prototype.inc = function(release2, identifier) {
switch (release2) {
case "premajor":
this.prerelease.length = 0;
this.patch = 0;
@@ -30216,20 +30223,20 @@ var require_semver3 = __commonJS({
}
break;
default:
throw new Error("invalid increment argument: " + release3);
throw new Error("invalid increment argument: " + release2);
}
this.format();
this.raw = this.version;
return this;
};
exports2.inc = inc;
function inc(version, release3, loose, identifier) {
function inc(version, release2, loose, identifier) {
if (typeof loose === "string") {
identifier = loose;
loose = void 0;
}
try {
return new SemVer(version, loose).inc(release3, identifier).version;
return new SemVer(version, loose).inc(release2, identifier).version;
} catch (er) {
return null;
}
@@ -53711,7 +53718,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
}
}
};
var access2 = {
var access = {
parameterPath: ["options", "access"],
mapper: {
serializedName: "x-ms-blob-public-access",
@@ -55519,7 +55526,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
requestId,
accept1,
metadata,
access2,
access,
defaultEncryptionScope,
preventEncryptionScopeOverride
],
@@ -55666,7 +55673,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
accept,
version,
requestId,
access2,
access,
leaseId,
ifModifiedSince,
ifUnmodifiedSince
@@ -64512,7 +64519,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
* @param containerAcl - Array of elements each having a unique Id and details of the access policy.
* @param options - Options to Container Set Access Policy operation.
*/
async setAccessPolicy(access3, containerAcl2, options = {}) {
async setAccessPolicy(access2, containerAcl2, options = {}) {
options.conditions = options.conditions || {};
return tracingClient.withSpan("ContainerClient-setAccessPolicy", options, async (updatedOptions) => {
const acl = [];
@@ -64528,7 +64535,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
}
return assertResponse(await this.containerContext.setAccessPolicy({
abortSignal: options.abortSignal,
access: access3,
access: access2,
containerAcl: acl,
leaseAccessConditions: options.conditions,
modifiedAccessConditions: options.conditions,
@@ -76159,148 +76166,14 @@ var io2 = __toESM(require_io());
// src/util.ts
var fs = __toESM(require("fs"));
var fsPromises = __toESM(require("fs/promises"));
var path = __toESM(require("path"));
var core3 = __toESM(require_core());
var exec = __toESM(require_exec());
var io = __toESM(require_io());
// node_modules/check-disk-space/dist/check-disk-space.mjs
var import_node_child_process = require("node:child_process");
var import_promises = require("node:fs/promises");
var import_node_os = require("node:os");
var import_node_path = require("node:path");
var import_node_process = require("node:process");
var import_node_util = require("node:util");
var InvalidPathError = class _InvalidPathError extends Error {
constructor(message) {
super(message);
this.name = "InvalidPathError";
Object.setPrototypeOf(this, _InvalidPathError.prototype);
}
};
var NoMatchError = class _NoMatchError extends Error {
constructor(message) {
super(message);
this.name = "NoMatchError";
Object.setPrototypeOf(this, _NoMatchError.prototype);
}
};
async function isDirectoryExisting(directoryPath, dependencies) {
try {
await dependencies.fsAccess(directoryPath);
return Promise.resolve(true);
} catch (error2) {
return Promise.resolve(false);
}
}
async function getFirstExistingParentPath(directoryPath, dependencies) {
let parentDirectoryPath = directoryPath;
let parentDirectoryFound = await isDirectoryExisting(parentDirectoryPath, dependencies);
while (!parentDirectoryFound) {
parentDirectoryPath = dependencies.pathNormalize(parentDirectoryPath + "/..");
parentDirectoryFound = await isDirectoryExisting(parentDirectoryPath, dependencies);
}
return parentDirectoryPath;
}
async function hasPowerShell3(dependencies) {
const major = parseInt(dependencies.release.split(".")[0], 10);
if (major <= 6) {
return false;
}
try {
await dependencies.cpExecFile("where", ["powershell"], { windowsHide: true });
return true;
} catch (error2) {
return false;
}
}
function checkDiskSpace(directoryPath, dependencies = {
platform: import_node_process.platform,
release: (0, import_node_os.release)(),
fsAccess: import_promises.access,
pathNormalize: import_node_path.normalize,
pathSep: import_node_path.sep,
cpExecFile: (0, import_node_util.promisify)(import_node_child_process.execFile)
}) {
function mapOutput(stdout, filter, mapping, coefficient) {
const parsed = stdout.split("\n").map((line) => line.trim()).filter((line) => line.length !== 0).slice(1).map((line) => line.split(/\s+(?=[\d/])/));
const filtered = parsed.filter(filter);
if (filtered.length === 0) {
throw new NoMatchError();
}
const diskData = filtered[0];
return {
diskPath: diskData[mapping.diskPath],
free: parseInt(diskData[mapping.free], 10) * coefficient,
size: parseInt(diskData[mapping.size], 10) * coefficient
};
}
async function check(cmd, filter, mapping, coefficient = 1) {
const [file, ...args] = cmd;
if (file === void 0) {
return Promise.reject(new Error("cmd must contain at least one item"));
}
try {
const { stdout } = await dependencies.cpExecFile(file, args, { windowsHide: true });
return mapOutput(stdout, filter, mapping, coefficient);
} catch (error2) {
return Promise.reject(error2);
}
}
async function checkWin32(directoryPath2) {
if (directoryPath2.charAt(1) !== ":") {
return Promise.reject(new InvalidPathError(`The following path is invalid (should be X:\\...): ${directoryPath2}`));
}
const powershellCmd = [
"powershell",
"Get-CimInstance -ClassName Win32_LogicalDisk | Select-Object Caption, FreeSpace, Size"
];
const wmicCmd = [
"wmic",
"logicaldisk",
"get",
"size,freespace,caption"
];
const cmd = await hasPowerShell3(dependencies) ? powershellCmd : wmicCmd;
return check(cmd, (driveData) => {
const driveLetter = driveData[0];
return directoryPath2.toUpperCase().startsWith(driveLetter.toUpperCase());
}, {
diskPath: 0,
free: 1,
size: 2
});
}
async function checkUnix(directoryPath2) {
if (!dependencies.pathNormalize(directoryPath2).startsWith(dependencies.pathSep)) {
return Promise.reject(new InvalidPathError(`The following path is invalid (should start by ${dependencies.pathSep}): ${directoryPath2}`));
}
const pathToCheck = await getFirstExistingParentPath(directoryPath2, dependencies);
return check(
[
"df",
"-Pk",
"--",
pathToCheck
],
() => true,
// We should only get one line, so we did not need to filter
{
diskPath: 5,
free: 3,
size: 1
},
1024
);
}
if (dependencies.platform === "win32") {
return checkWin32(directoryPath);
}
return checkUnix(directoryPath);
}
// node_modules/get-folder-size/index.js
var import_node_path2 = require("node:path");
var import_node_path = require("node:path");
async function getFolderSize(itemPath, options) {
return await core(itemPath, options, { errors: true });
}
@@ -76325,7 +76198,7 @@ async function core(rootItemPath, options = {}, returnType = {}) {
if (typeof directoryItems !== "object") return;
await Promise.all(
directoryItems.map(
(directoryItem) => processItem((0, import_node_path2.join)(itemPath, directoryItem))
(directoryItem) => processItem((0, import_node_path.join)(itemPath, directoryItem))
)
);
}
@@ -79126,16 +78999,14 @@ function getErrorMessage(error2) {
}
async function checkDiskUsage(logger) {
try {
if (process.platform === "darwin" && (process.arch === "arm" || process.arch === "arm64") && !await checkSipEnablement(logger)) {
return void 0;
}
const diskUsage = await checkDiskSpace(
const diskUsage = await fsPromises.statfs(
getRequiredEnvParam("GITHUB_WORKSPACE")
);
const mbInBytes = 1024 * 1024;
const gbInBytes = 1024 * 1024 * 1024;
if (diskUsage.free < 2 * gbInBytes) {
const message = `The Actions runner is running low on disk space (${(diskUsage.free / mbInBytes).toPrecision(4)} MB available).`;
const blockSizeInBytes = diskUsage.bsize;
const numBlocksPerMb = 1024 * 1024 / blockSizeInBytes;
const numBlocksPerGb = 1024 * 1024 * 1024 / blockSizeInBytes;
if (diskUsage.bavail < 2 * numBlocksPerGb) {
const message = `The Actions runner is running low on disk space (${(diskUsage.bavail / numBlocksPerMb).toPrecision(4)} MB available).`;
if (process.env["CODEQL_ACTION_HAS_WARNED_ABOUT_DISK_SPACE" /* HAS_WARNED_ABOUT_DISK_SPACE */] !== "true") {
logger.warning(message);
} else {
@@ -79144,8 +79015,8 @@ async function checkDiskUsage(logger) {
core3.exportVariable("CODEQL_ACTION_HAS_WARNED_ABOUT_DISK_SPACE" /* HAS_WARNED_ABOUT_DISK_SPACE */, "true");
}
return {
numAvailableBytes: diskUsage.free,
numTotalBytes: diskUsage.size
numAvailableBytes: diskUsage.bavail * blockSizeInBytes,
numTotalBytes: diskUsage.blocks * blockSizeInBytes
};
} catch (error2) {
logger.warning(
@@ -79171,34 +79042,6 @@ function checkActionVersion(version, githubVersion) {
function cloneObject(obj) {
return JSON.parse(JSON.stringify(obj));
}
async function checkSipEnablement(logger) {
if (process.env["CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */] !== void 0 && ["true", "false"].includes(process.env["CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */])) {
return process.env["CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */] === "true";
}
try {
const sipStatusOutput = await exec.getExecOutput("csrutil status");
if (sipStatusOutput.exitCode === 0) {
if (sipStatusOutput.stdout.includes(
"System Integrity Protection status: enabled."
)) {
core3.exportVariable("CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */, "true");
return true;
}
if (sipStatusOutput.stdout.includes(
"System Integrity Protection status: disabled."
)) {
core3.exportVariable("CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */, "false");
return false;
}
}
return void 0;
} catch (e) {
logger.warning(
`Failed to determine if System Integrity Protection was enabled: ${e}`
);
return void 0;
}
}
async function cleanUpPath(file, name, logger) {
logger.debug(`Cleaning up ${name}.`);
try {
@@ -80446,7 +80289,7 @@ function getCliConfigCategoryIfExists(cliError) {
}
function isUnsupportedPlatform() {
return !SUPPORTED_PLATFORMS.some(
([platform2, arch2]) => platform2 === process.platform && arch2 === process.arch
([platform, arch2]) => platform === process.platform && arch2 === process.arch
);
}
function getUnsupportedPlatformError(cliError) {
@@ -80876,17 +80719,17 @@ function getCodeQLBundleExtension(compressionMethod) {
}
function getCodeQLBundleName(compressionMethod) {
const extension = getCodeQLBundleExtension(compressionMethod);
let platform2;
let platform;
if (process.platform === "win32") {
platform2 = "win64";
platform = "win64";
} else if (process.platform === "linux") {
platform2 = "linux64";
platform = "linux64";
} else if (process.platform === "darwin") {
platform2 = "osx64";
platform = "osx64";
} else {
return `codeql-bundle${extension}`;
}
return `codeql-bundle-${platform2}${extension}`;
return `codeql-bundle-${platform}${extension}`;
}
function getCodeQLActionRepository(logger) {
if (isRunningLocalAction()) {
@@ -80920,12 +80763,12 @@ async function getCodeQLBundleDownloadURL(tagName, apiDetails, compressionMethod
}
const [repositoryOwner, repositoryName] = repository.split("/");
try {
const release3 = await getApiClient().rest.repos.getReleaseByTag({
const release2 = await getApiClient().rest.repos.getReleaseByTag({
owner: repositoryOwner,
repo: repositoryName,
tag: tagName
});
for (const asset of release3.data.assets) {
for (const asset of release2.data.assets) {
if (asset.name === codeQLBundleName) {
logger.info(
`Found CodeQL bundle ${codeQLBundleName} in ${repository} on ${apiURL} with URL ${asset.url}.`
@@ -81365,14 +81208,14 @@ async function getNightlyToolsUrl(logger) {
zstdAvailability.available
) ? "zstd" : "gzip";
try {
const release3 = await getApiClient().rest.repos.listReleases({
const release2 = await getApiClient().rest.repos.listReleases({
owner: CODEQL_NIGHTLIES_REPOSITORY_OWNER,
repo: CODEQL_NIGHTLIES_REPOSITORY_NAME,
per_page: 1,
page: 1,
prerelease: true
});
const latestRelease = release3.data[0];
const latestRelease = release2.data[0];
if (!latestRelease) {
throw new Error("Could not find the latest nightly release.");
}

File diff suppressed because one or more lines are too long

View File

@@ -10754,7 +10754,7 @@ var require_mock_interceptor = __commonJS({
var require_mock_client = __commonJS({
"node_modules/undici/lib/mock/mock-client.js"(exports2, module2) {
"use strict";
var { promisify: promisify2 } = require("util");
var { promisify } = require("util");
var Client = require_client();
var { buildMockDispatch } = require_mock_utils();
var {
@@ -10794,7 +10794,7 @@ var require_mock_client = __commonJS({
return new MockInterceptor(opts, this[kDispatches]);
}
async [kClose]() {
await promisify2(this[kOriginalClose])();
await promisify(this[kOriginalClose])();
this[kConnected] = 0;
this[kMockAgent][Symbols.kClients].delete(this[kOrigin]);
}
@@ -10807,7 +10807,7 @@ var require_mock_client = __commonJS({
var require_mock_pool = __commonJS({
"node_modules/undici/lib/mock/mock-pool.js"(exports2, module2) {
"use strict";
var { promisify: promisify2 } = require("util");
var { promisify } = require("util");
var Pool = require_pool();
var { buildMockDispatch } = require_mock_utils();
var {
@@ -10847,7 +10847,7 @@ var require_mock_pool = __commonJS({
return new MockInterceptor(opts, this[kDispatches]);
}
async [kClose]() {
await promisify2(this[kOriginalClose])();
await promisify(this[kOriginalClose])();
this[kConnected] = 0;
this[kMockAgent][Symbols.kClients].delete(this[kOrigin]);
}
@@ -18148,7 +18148,7 @@ var require_summary = __commonJS({
exports2.summary = exports2.markdownSummary = exports2.SUMMARY_DOCS_URL = exports2.SUMMARY_ENV_VAR = void 0;
var os_1 = require("os");
var fs_1 = require("fs");
var { access: access2, appendFile, writeFile } = fs_1.promises;
var { access, appendFile, writeFile } = fs_1.promises;
exports2.SUMMARY_ENV_VAR = "GITHUB_STEP_SUMMARY";
exports2.SUMMARY_DOCS_URL = "https://docs.github.com/actions/using-workflows/workflow-commands-for-github-actions#adding-a-job-summary";
var Summary = class {
@@ -18171,7 +18171,7 @@ var require_summary = __commonJS({
throw new Error(`Unable to find environment variable for $${exports2.SUMMARY_ENV_VAR}. Check if your runtime environment supports job summaries.`);
}
try {
yield access2(pathFromEnv, fs_1.constants.R_OK | fs_1.constants.W_OK);
yield access(pathFromEnv, fs_1.constants.R_OK | fs_1.constants.W_OK);
} catch (_a) {
throw new Error(`Unable to access summary file: '${pathFromEnv}'. Check if the file has correct read/write permissions.`);
}
@@ -20153,8 +20153,8 @@ var require_semver = __commonJS({
}
// preminor will bump the version up to the next minor release, and immediately
// down to pre-release. premajor and prepatch work the same way.
inc(release3, identifier, identifierBase) {
if (release3.startsWith("pre")) {
inc(release2, identifier, identifierBase) {
if (release2.startsWith("pre")) {
if (!identifier && identifierBase === false) {
throw new Error("invalid increment argument: identifier is empty");
}
@@ -20165,7 +20165,7 @@ var require_semver = __commonJS({
}
}
}
switch (release3) {
switch (release2) {
case "premajor":
this.prerelease.length = 0;
this.patch = 0;
@@ -20256,7 +20256,7 @@ var require_semver = __commonJS({
break;
}
default:
throw new Error(`invalid increment argument: ${release3}`);
throw new Error(`invalid increment argument: ${release2}`);
}
this.raw = this.format();
if (this.build.length) {
@@ -20322,7 +20322,7 @@ var require_inc = __commonJS({
"node_modules/semver/functions/inc.js"(exports2, module2) {
"use strict";
var SemVer = require_semver();
var inc = (version, release3, options, identifier, identifierBase) => {
var inc = (version, release2, options, identifier, identifierBase) => {
if (typeof options === "string") {
identifierBase = identifier;
identifier = options;
@@ -20332,7 +20332,7 @@ var require_inc = __commonJS({
return new SemVer(
version instanceof SemVer ? version.version : version,
options
).inc(release3, identifier, identifierBase).version;
).inc(release2, identifier, identifierBase).version;
} catch (er) {
return null;
}
@@ -40312,6 +40312,7 @@ var require_context = __commonJS({
this.action = process.env.GITHUB_ACTION;
this.actor = process.env.GITHUB_ACTOR;
this.job = process.env.GITHUB_JOB;
this.runAttempt = parseInt(process.env.GITHUB_RUN_ATTEMPT, 10);
this.runNumber = parseInt(process.env.GITHUB_RUN_NUMBER, 10);
this.runId = parseInt(process.env.GITHUB_RUN_ID, 10);
this.apiUrl = (_a = process.env.GITHUB_API_URL) !== null && _a !== void 0 ? _a : `https://api.github.com`;
@@ -42214,21 +42215,36 @@ var require_dist_node11 = __commonJS({
return to;
};
var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
var dist_src_exports = {};
__export2(dist_src_exports, {
var index_exports = {};
__export2(index_exports, {
Octokit: () => Octokit
});
module2.exports = __toCommonJS2(dist_src_exports);
module2.exports = __toCommonJS2(index_exports);
var import_universal_user_agent = require_dist_node();
var import_before_after_hook = require_before_after_hook();
var import_request = require_dist_node5();
var import_graphql = require_dist_node9();
var import_auth_token = require_dist_node10();
var VERSION = "5.2.0";
var VERSION = "5.2.2";
var noop = () => {
};
var consoleWarn = console.warn.bind(console);
var consoleError = console.error.bind(console);
function createLogger(logger = {}) {
if (typeof logger.debug !== "function") {
logger.debug = noop;
}
if (typeof logger.info !== "function") {
logger.info = noop;
}
if (typeof logger.warn !== "function") {
logger.warn = consoleWarn;
}
if (typeof logger.error !== "function") {
logger.error = consoleError;
}
return logger;
}
var userAgentTrail = `octokit-core.js/${VERSION} ${(0, import_universal_user_agent.getUserAgent)()}`;
var Octokit = class {
static {
@@ -42302,15 +42318,7 @@ var require_dist_node11 = __commonJS({
}
this.request = import_request.request.defaults(requestDefaults);
this.graphql = (0, import_graphql.withCustomRequest)(this.request).defaults(requestDefaults);
this.log = Object.assign(
{
debug: noop,
info: noop,
warn: consoleWarn,
error: consoleError
},
options.log
);
this.log = createLogger(options.log);
this.hook = hook;
if (!options.authStrategy) {
if (!options.auth) {
@@ -45020,7 +45028,7 @@ var require_package = __commonJS({
},
license: "MIT",
dependencies: {
"@actions/artifact": "^2.3.1",
"@actions/artifact": "^4.0.0",
"@actions/artifact-legacy": "npm:@actions/artifact@^1.1.2",
"@actions/cache": "^4.1.0",
"@actions/core": "^1.11.1",
@@ -45034,7 +45042,6 @@ var require_package = __commonJS({
"@octokit/request-error": "^7.0.1",
"@schemastore/package": "0.0.10",
archiver: "^7.0.1",
"check-disk-space": "^3.4.0",
"console-log-level": "^1.4.1",
"fast-deep-equal": "^3.1.3",
"follow-redirects": "^1.15.11",
@@ -45053,8 +45060,8 @@ var require_package = __commonJS({
"@eslint/eslintrc": "^3.3.1",
"@eslint/js": "^9.38.0",
"@microsoft/eslint-formatter-sarif": "^3.1.0",
"@octokit/types": "^15.0.0",
"@types/archiver": "^6.0.3",
"@octokit/types": "^15.0.1",
"@types/archiver": "^6.0.4",
"@types/console-log-level": "^1.4.5",
"@types/follow-redirects": "^1.14.4",
"@types/js-yaml": "^4.0.9",
@@ -45062,7 +45069,7 @@ var require_package = __commonJS({
"@types/node-forge": "^1.3.14",
"@types/semver": "^7.7.1",
"@types/sinon": "^17.0.4",
"@typescript-eslint/eslint-plugin": "^8.46.1",
"@typescript-eslint/eslint-plugin": "^8.46.2",
"@typescript-eslint/parser": "^8.41.0",
ava: "^6.4.1",
esbuild: "^0.25.11",
@@ -49972,8 +49979,8 @@ var require_semver3 = __commonJS({
}
} while (++i2);
};
SemVer.prototype.inc = function(release3, identifier) {
switch (release3) {
SemVer.prototype.inc = function(release2, identifier) {
switch (release2) {
case "premajor":
this.prerelease.length = 0;
this.patch = 0;
@@ -50049,20 +50056,20 @@ var require_semver3 = __commonJS({
}
break;
default:
throw new Error("invalid increment argument: " + release3);
throw new Error("invalid increment argument: " + release2);
}
this.format();
this.raw = this.version;
return this;
};
exports2.inc = inc;
function inc(version, release3, loose, identifier) {
function inc(version, release2, loose, identifier) {
if (typeof loose === "string") {
identifier = loose;
loose = void 0;
}
try {
return new SemVer(version, loose).inc(release3, identifier).version;
return new SemVer(version, loose).inc(release2, identifier).version;
} catch (er) {
return null;
}
@@ -73544,7 +73551,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
}
}
};
var access2 = {
var access = {
parameterPath: ["options", "access"],
mapper: {
serializedName: "x-ms-blob-public-access",
@@ -75352,7 +75359,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
requestId,
accept1,
metadata,
access2,
access,
defaultEncryptionScope,
preventEncryptionScopeOverride
],
@@ -75499,7 +75506,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
accept,
version,
requestId,
access2,
access,
leaseId,
ifModifiedSince,
ifUnmodifiedSince
@@ -84345,7 +84352,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
* @param containerAcl - Array of elements each having a unique Id and details of the access policy.
* @param options - Options to Container Set Access Policy operation.
*/
async setAccessPolicy(access3, containerAcl2, options = {}) {
async setAccessPolicy(access2, containerAcl2, options = {}) {
options.conditions = options.conditions || {};
return tracingClient.withSpan("ContainerClient-setAccessPolicy", options, async (updatedOptions) => {
const acl = [];
@@ -84361,7 +84368,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
}
return assertResponse(await this.containerContext.setAccessPolicy({
abortSignal: options.abortSignal,
access: access3,
access: access2,
containerAcl: acl,
leaseAccessConditions: options.conditions,
modifiedAccessConditions: options.conditions,
@@ -93302,147 +93309,13 @@ var github = __toESM(require_github());
var io2 = __toESM(require_io());
// src/util.ts
var fsPromises = __toESM(require("fs/promises"));
var core3 = __toESM(require_core());
var exec = __toESM(require_exec());
var io = __toESM(require_io());
// node_modules/check-disk-space/dist/check-disk-space.mjs
var import_node_child_process = require("node:child_process");
var import_promises = require("node:fs/promises");
var import_node_os = require("node:os");
var import_node_path = require("node:path");
var import_node_process = require("node:process");
var import_node_util = require("node:util");
var InvalidPathError = class _InvalidPathError extends Error {
constructor(message) {
super(message);
this.name = "InvalidPathError";
Object.setPrototypeOf(this, _InvalidPathError.prototype);
}
};
var NoMatchError = class _NoMatchError extends Error {
constructor(message) {
super(message);
this.name = "NoMatchError";
Object.setPrototypeOf(this, _NoMatchError.prototype);
}
};
async function isDirectoryExisting(directoryPath, dependencies) {
try {
await dependencies.fsAccess(directoryPath);
return Promise.resolve(true);
} catch (error2) {
return Promise.resolve(false);
}
}
async function getFirstExistingParentPath(directoryPath, dependencies) {
let parentDirectoryPath = directoryPath;
let parentDirectoryFound = await isDirectoryExisting(parentDirectoryPath, dependencies);
while (!parentDirectoryFound) {
parentDirectoryPath = dependencies.pathNormalize(parentDirectoryPath + "/..");
parentDirectoryFound = await isDirectoryExisting(parentDirectoryPath, dependencies);
}
return parentDirectoryPath;
}
async function hasPowerShell3(dependencies) {
const major = parseInt(dependencies.release.split(".")[0], 10);
if (major <= 6) {
return false;
}
try {
await dependencies.cpExecFile("where", ["powershell"], { windowsHide: true });
return true;
} catch (error2) {
return false;
}
}
function checkDiskSpace(directoryPath, dependencies = {
platform: import_node_process.platform,
release: (0, import_node_os.release)(),
fsAccess: import_promises.access,
pathNormalize: import_node_path.normalize,
pathSep: import_node_path.sep,
cpExecFile: (0, import_node_util.promisify)(import_node_child_process.execFile)
}) {
function mapOutput(stdout, filter, mapping, coefficient) {
const parsed = stdout.split("\n").map((line) => line.trim()).filter((line) => line.length !== 0).slice(1).map((line) => line.split(/\s+(?=[\d/])/));
const filtered = parsed.filter(filter);
if (filtered.length === 0) {
throw new NoMatchError();
}
const diskData = filtered[0];
return {
diskPath: diskData[mapping.diskPath],
free: parseInt(diskData[mapping.free], 10) * coefficient,
size: parseInt(diskData[mapping.size], 10) * coefficient
};
}
async function check(cmd, filter, mapping, coefficient = 1) {
const [file, ...args] = cmd;
if (file === void 0) {
return Promise.reject(new Error("cmd must contain at least one item"));
}
try {
const { stdout } = await dependencies.cpExecFile(file, args, { windowsHide: true });
return mapOutput(stdout, filter, mapping, coefficient);
} catch (error2) {
return Promise.reject(error2);
}
}
async function checkWin32(directoryPath2) {
if (directoryPath2.charAt(1) !== ":") {
return Promise.reject(new InvalidPathError(`The following path is invalid (should be X:\\...): ${directoryPath2}`));
}
const powershellCmd = [
"powershell",
"Get-CimInstance -ClassName Win32_LogicalDisk | Select-Object Caption, FreeSpace, Size"
];
const wmicCmd = [
"wmic",
"logicaldisk",
"get",
"size,freespace,caption"
];
const cmd = await hasPowerShell3(dependencies) ? powershellCmd : wmicCmd;
return check(cmd, (driveData) => {
const driveLetter = driveData[0];
return directoryPath2.toUpperCase().startsWith(driveLetter.toUpperCase());
}, {
diskPath: 0,
free: 1,
size: 2
});
}
async function checkUnix(directoryPath2) {
if (!dependencies.pathNormalize(directoryPath2).startsWith(dependencies.pathSep)) {
return Promise.reject(new InvalidPathError(`The following path is invalid (should start by ${dependencies.pathSep}): ${directoryPath2}`));
}
const pathToCheck = await getFirstExistingParentPath(directoryPath2, dependencies);
return check(
[
"df",
"-Pk",
"--",
pathToCheck
],
() => true,
// We should only get one line, so we did not need to filter
{
diskPath: 5,
free: 3,
size: 1
},
1024
);
}
if (dependencies.platform === "win32") {
return checkWin32(directoryPath);
}
return checkUnix(directoryPath);
}
// node_modules/get-folder-size/index.js
var import_node_path2 = require("node:path");
var import_node_path = require("node:path");
async function getFolderSize(itemPath, options) {
return await core(itemPath, options, { errors: true });
}
@@ -93467,7 +93340,7 @@ async function core(rootItemPath, options = {}, returnType = {}) {
if (typeof directoryItems !== "object") return;
await Promise.all(
directoryItems.map(
(directoryItem) => processItem((0, import_node_path2.join)(itemPath, directoryItem))
(directoryItem) => processItem((0, import_node_path.join)(itemPath, directoryItem))
)
);
}
@@ -96144,16 +96017,14 @@ function getErrorMessage(error2) {
}
async function checkDiskUsage(logger) {
try {
if (process.platform === "darwin" && (process.arch === "arm" || process.arch === "arm64") && !await checkSipEnablement(logger)) {
return void 0;
}
const diskUsage = await checkDiskSpace(
const diskUsage = await fsPromises.statfs(
getRequiredEnvParam("GITHUB_WORKSPACE")
);
const mbInBytes = 1024 * 1024;
const gbInBytes = 1024 * 1024 * 1024;
if (diskUsage.free < 2 * gbInBytes) {
const message = `The Actions runner is running low on disk space (${(diskUsage.free / mbInBytes).toPrecision(4)} MB available).`;
const blockSizeInBytes = diskUsage.bsize;
const numBlocksPerMb = 1024 * 1024 / blockSizeInBytes;
const numBlocksPerGb = 1024 * 1024 * 1024 / blockSizeInBytes;
if (diskUsage.bavail < 2 * numBlocksPerGb) {
const message = `The Actions runner is running low on disk space (${(diskUsage.bavail / numBlocksPerMb).toPrecision(4)} MB available).`;
if (process.env["CODEQL_ACTION_HAS_WARNED_ABOUT_DISK_SPACE" /* HAS_WARNED_ABOUT_DISK_SPACE */] !== "true") {
logger.warning(message);
} else {
@@ -96162,8 +96033,8 @@ async function checkDiskUsage(logger) {
core3.exportVariable("CODEQL_ACTION_HAS_WARNED_ABOUT_DISK_SPACE" /* HAS_WARNED_ABOUT_DISK_SPACE */, "true");
}
return {
numAvailableBytes: diskUsage.free,
numTotalBytes: diskUsage.size
numAvailableBytes: diskUsage.bavail * blockSizeInBytes,
numTotalBytes: diskUsage.blocks * blockSizeInBytes
};
} catch (error2) {
logger.warning(
@@ -96172,34 +96043,6 @@ async function checkDiskUsage(logger) {
return void 0;
}
}
async function checkSipEnablement(logger) {
if (process.env["CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */] !== void 0 && ["true", "false"].includes(process.env["CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */])) {
return process.env["CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */] === "true";
}
try {
const sipStatusOutput = await exec.getExecOutput("csrutil status");
if (sipStatusOutput.exitCode === 0) {
if (sipStatusOutput.stdout.includes(
"System Integrity Protection status: enabled."
)) {
core3.exportVariable("CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */, "true");
return true;
}
if (sipStatusOutput.stdout.includes(
"System Integrity Protection status: disabled."
)) {
core3.exportVariable("CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */, "false");
return false;
}
}
return void 0;
} catch (e) {
logger.warning(
`Failed to determine if System Integrity Protection was enabled: ${e}`
);
return void 0;
}
}
function isDefined(value) {
return value !== void 0 && value !== null;
}
@@ -96485,8 +96328,8 @@ function getCredentials(logger, registrySecrets, registriesCredentials, language
return out;
}
function getProxyPackage() {
const platform2 = process.platform === "win32" ? "win64" : process.platform === "darwin" ? "osx64" : "linux64";
return `${UPDATEJOB_PROXY}-${platform2}.tar.gz`;
const platform = process.platform === "win32" ? "win64" : process.platform === "darwin" ? "osx64" : "linux64";
return `${UPDATEJOB_PROXY}-${platform}.tar.gz`;
}
function getFallbackUrl(proxyPackage) {
return `${UPDATEJOB_PROXY_URL_PREFIX}${proxyPackage}`;

43
lib/upload-lib.js generated
View File

@@ -21143,6 +21143,7 @@ var require_context = __commonJS({
this.action = process.env.GITHUB_ACTION;
this.actor = process.env.GITHUB_ACTOR;
this.job = process.env.GITHUB_JOB;
this.runAttempt = parseInt(process.env.GITHUB_RUN_ATTEMPT, 10);
this.runNumber = parseInt(process.env.GITHUB_RUN_NUMBER, 10);
this.runId = parseInt(process.env.GITHUB_RUN_ID, 10);
this.apiUrl = (_a = process.env.GITHUB_API_URL) !== null && _a !== void 0 ? _a : `https://api.github.com`;
@@ -23045,21 +23046,36 @@ var require_dist_node11 = __commonJS({
return to;
};
var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
var dist_src_exports = {};
__export2(dist_src_exports, {
var index_exports = {};
__export2(index_exports, {
Octokit: () => Octokit
});
module2.exports = __toCommonJS2(dist_src_exports);
module2.exports = __toCommonJS2(index_exports);
var import_universal_user_agent = require_dist_node();
var import_before_after_hook = require_before_after_hook();
var import_request = require_dist_node5();
var import_graphql = require_dist_node9();
var import_auth_token = require_dist_node10();
var VERSION = "5.2.0";
var VERSION = "5.2.2";
var noop = () => {
};
var consoleWarn = console.warn.bind(console);
var consoleError = console.error.bind(console);
function createLogger(logger = {}) {
if (typeof logger.debug !== "function") {
logger.debug = noop;
}
if (typeof logger.info !== "function") {
logger.info = noop;
}
if (typeof logger.warn !== "function") {
logger.warn = consoleWarn;
}
if (typeof logger.error !== "function") {
logger.error = consoleError;
}
return logger;
}
var userAgentTrail = `octokit-core.js/${VERSION} ${(0, import_universal_user_agent.getUserAgent)()}`;
var Octokit = class {
static {
@@ -23133,15 +23149,7 @@ var require_dist_node11 = __commonJS({
}
this.request = import_request.request.defaults(requestDefaults);
this.graphql = (0, import_graphql.withCustomRequest)(this.request).defaults(requestDefaults);
this.log = Object.assign(
{
debug: noop,
info: noop,
warn: consoleWarn,
error: consoleError
},
options.log
);
this.log = createLogger(options.log);
this.hook = hook;
if (!options.authStrategy) {
if (!options.auth) {
@@ -27781,7 +27789,7 @@ var require_package = __commonJS({
},
license: "MIT",
dependencies: {
"@actions/artifact": "^2.3.1",
"@actions/artifact": "^4.0.0",
"@actions/artifact-legacy": "npm:@actions/artifact@^1.1.2",
"@actions/cache": "^4.1.0",
"@actions/core": "^1.11.1",
@@ -27795,7 +27803,6 @@ var require_package = __commonJS({
"@octokit/request-error": "^7.0.1",
"@schemastore/package": "0.0.10",
archiver: "^7.0.1",
"check-disk-space": "^3.4.0",
"console-log-level": "^1.4.1",
"fast-deep-equal": "^3.1.3",
"follow-redirects": "^1.15.11",
@@ -27814,8 +27821,8 @@ var require_package = __commonJS({
"@eslint/eslintrc": "^3.3.1",
"@eslint/js": "^9.38.0",
"@microsoft/eslint-formatter-sarif": "^3.1.0",
"@octokit/types": "^15.0.0",
"@types/archiver": "^6.0.3",
"@octokit/types": "^15.0.1",
"@types/archiver": "^6.0.4",
"@types/console-log-level": "^1.4.5",
"@types/follow-redirects": "^1.14.4",
"@types/js-yaml": "^4.0.9",
@@ -27823,7 +27830,7 @@ var require_package = __commonJS({
"@types/node-forge": "^1.3.14",
"@types/semver": "^7.7.1",
"@types/sinon": "^17.0.4",
"@typescript-eslint/eslint-plugin": "^8.46.1",
"@typescript-eslint/eslint-plugin": "^8.46.2",
"@typescript-eslint/parser": "^8.41.0",
ava: "^6.4.1",
esbuild: "^0.25.11",

File diff suppressed because one or more lines are too long

View File

@@ -10754,7 +10754,7 @@ var require_mock_interceptor = __commonJS({
var require_mock_client = __commonJS({
"node_modules/undici/lib/mock/mock-client.js"(exports2, module2) {
"use strict";
var { promisify: promisify2 } = require("util");
var { promisify } = require("util");
var Client = require_client();
var { buildMockDispatch } = require_mock_utils();
var {
@@ -10794,7 +10794,7 @@ var require_mock_client = __commonJS({
return new MockInterceptor(opts, this[kDispatches]);
}
async [kClose]() {
await promisify2(this[kOriginalClose])();
await promisify(this[kOriginalClose])();
this[kConnected] = 0;
this[kMockAgent][Symbols.kClients].delete(this[kOrigin]);
}
@@ -10807,7 +10807,7 @@ var require_mock_client = __commonJS({
var require_mock_pool = __commonJS({
"node_modules/undici/lib/mock/mock-pool.js"(exports2, module2) {
"use strict";
var { promisify: promisify2 } = require("util");
var { promisify } = require("util");
var Pool = require_pool();
var { buildMockDispatch } = require_mock_utils();
var {
@@ -10847,7 +10847,7 @@ var require_mock_pool = __commonJS({
return new MockInterceptor(opts, this[kDispatches]);
}
async [kClose]() {
await promisify2(this[kOriginalClose])();
await promisify(this[kOriginalClose])();
this[kConnected] = 0;
this[kMockAgent][Symbols.kClients].delete(this[kOrigin]);
}
@@ -18148,7 +18148,7 @@ var require_summary = __commonJS({
exports2.summary = exports2.markdownSummary = exports2.SUMMARY_DOCS_URL = exports2.SUMMARY_ENV_VAR = void 0;
var os_1 = require("os");
var fs_1 = require("fs");
var { access: access2, appendFile, writeFile } = fs_1.promises;
var { access, appendFile, writeFile } = fs_1.promises;
exports2.SUMMARY_ENV_VAR = "GITHUB_STEP_SUMMARY";
exports2.SUMMARY_DOCS_URL = "https://docs.github.com/actions/using-workflows/workflow-commands-for-github-actions#adding-a-job-summary";
var Summary = class {
@@ -18171,7 +18171,7 @@ var require_summary = __commonJS({
throw new Error(`Unable to find environment variable for $${exports2.SUMMARY_ENV_VAR}. Check if your runtime environment supports job summaries.`);
}
try {
yield access2(pathFromEnv, fs_1.constants.R_OK | fs_1.constants.W_OK);
yield access(pathFromEnv, fs_1.constants.R_OK | fs_1.constants.W_OK);
} catch (_a) {
throw new Error(`Unable to access summary file: '${pathFromEnv}'. Check if the file has correct read/write permissions.`);
}
@@ -19846,6 +19846,7 @@ var require_context = __commonJS({
this.action = process.env.GITHUB_ACTION;
this.actor = process.env.GITHUB_ACTOR;
this.job = process.env.GITHUB_JOB;
this.runAttempt = parseInt(process.env.GITHUB_RUN_ATTEMPT, 10);
this.runNumber = parseInt(process.env.GITHUB_RUN_NUMBER, 10);
this.runId = parseInt(process.env.GITHUB_RUN_ID, 10);
this.apiUrl = (_a = process.env.GITHUB_API_URL) !== null && _a !== void 0 ? _a : `https://api.github.com`;
@@ -21748,21 +21749,36 @@ var require_dist_node11 = __commonJS({
return to;
};
var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
var dist_src_exports = {};
__export2(dist_src_exports, {
var index_exports = {};
__export2(index_exports, {
Octokit: () => Octokit
});
module2.exports = __toCommonJS2(dist_src_exports);
module2.exports = __toCommonJS2(index_exports);
var import_universal_user_agent = require_dist_node();
var import_before_after_hook = require_before_after_hook();
var import_request = require_dist_node5();
var import_graphql = require_dist_node9();
var import_auth_token = require_dist_node10();
var VERSION = "5.2.0";
var VERSION = "5.2.2";
var noop = () => {
};
var consoleWarn = console.warn.bind(console);
var consoleError = console.error.bind(console);
function createLogger(logger = {}) {
if (typeof logger.debug !== "function") {
logger.debug = noop;
}
if (typeof logger.info !== "function") {
logger.info = noop;
}
if (typeof logger.warn !== "function") {
logger.warn = consoleWarn;
}
if (typeof logger.error !== "function") {
logger.error = consoleError;
}
return logger;
}
var userAgentTrail = `octokit-core.js/${VERSION} ${(0, import_universal_user_agent.getUserAgent)()}`;
var Octokit = class {
static {
@@ -21836,15 +21852,7 @@ var require_dist_node11 = __commonJS({
}
this.request = import_request.request.defaults(requestDefaults);
this.graphql = (0, import_graphql.withCustomRequest)(this.request).defaults(requestDefaults);
this.log = Object.assign(
{
debug: noop,
info: noop,
warn: consoleWarn,
error: consoleError
},
options.log
);
this.log = createLogger(options.log);
this.hook = hook;
if (!options.authStrategy) {
if (!options.auth) {
@@ -24862,8 +24870,8 @@ var require_semver = __commonJS({
}
// preminor will bump the version up to the next minor release, and immediately
// down to pre-release. premajor and prepatch work the same way.
inc(release3, identifier, identifierBase) {
if (release3.startsWith("pre")) {
inc(release2, identifier, identifierBase) {
if (release2.startsWith("pre")) {
if (!identifier && identifierBase === false) {
throw new Error("invalid increment argument: identifier is empty");
}
@@ -24874,7 +24882,7 @@ var require_semver = __commonJS({
}
}
}
switch (release3) {
switch (release2) {
case "premajor":
this.prerelease.length = 0;
this.patch = 0;
@@ -24965,7 +24973,7 @@ var require_semver = __commonJS({
break;
}
default:
throw new Error(`invalid increment argument: ${release3}`);
throw new Error(`invalid increment argument: ${release2}`);
}
this.raw = this.format();
if (this.build.length) {
@@ -25031,7 +25039,7 @@ var require_inc = __commonJS({
"node_modules/semver/functions/inc.js"(exports2, module2) {
"use strict";
var SemVer = require_semver();
var inc = (version, release3, options, identifier, identifierBase) => {
var inc = (version, release2, options, identifier, identifierBase) => {
if (typeof options === "string") {
identifierBase = identifier;
identifier = options;
@@ -25041,7 +25049,7 @@ var require_inc = __commonJS({
return new SemVer(
version instanceof SemVer ? version.version : version,
options
).inc(release3, identifier, identifierBase).version;
).inc(release2, identifier, identifierBase).version;
} catch (er) {
return null;
}
@@ -26484,7 +26492,7 @@ var require_package = __commonJS({
},
license: "MIT",
dependencies: {
"@actions/artifact": "^2.3.1",
"@actions/artifact": "^4.0.0",
"@actions/artifact-legacy": "npm:@actions/artifact@^1.1.2",
"@actions/cache": "^4.1.0",
"@actions/core": "^1.11.1",
@@ -26498,7 +26506,6 @@ var require_package = __commonJS({
"@octokit/request-error": "^7.0.1",
"@schemastore/package": "0.0.10",
archiver: "^7.0.1",
"check-disk-space": "^3.4.0",
"console-log-level": "^1.4.1",
"fast-deep-equal": "^3.1.3",
"follow-redirects": "^1.15.11",
@@ -26517,8 +26524,8 @@ var require_package = __commonJS({
"@eslint/eslintrc": "^3.3.1",
"@eslint/js": "^9.38.0",
"@microsoft/eslint-formatter-sarif": "^3.1.0",
"@octokit/types": "^15.0.0",
"@types/archiver": "^6.0.3",
"@octokit/types": "^15.0.1",
"@types/archiver": "^6.0.4",
"@types/console-log-level": "^1.4.5",
"@types/follow-redirects": "^1.14.4",
"@types/js-yaml": "^4.0.9",
@@ -26526,7 +26533,7 @@ var require_package = __commonJS({
"@types/node-forge": "^1.3.14",
"@types/semver": "^7.7.1",
"@types/sinon": "^17.0.4",
"@typescript-eslint/eslint-plugin": "^8.46.1",
"@typescript-eslint/eslint-plugin": "^8.46.2",
"@typescript-eslint/parser": "^8.41.0",
ava: "^6.4.1",
esbuild: "^0.25.11",
@@ -30139,8 +30146,8 @@ var require_semver3 = __commonJS({
}
} while (++i2);
};
SemVer.prototype.inc = function(release3, identifier) {
switch (release3) {
SemVer.prototype.inc = function(release2, identifier) {
switch (release2) {
case "premajor":
this.prerelease.length = 0;
this.patch = 0;
@@ -30216,20 +30223,20 @@ var require_semver3 = __commonJS({
}
break;
default:
throw new Error("invalid increment argument: " + release3);
throw new Error("invalid increment argument: " + release2);
}
this.format();
this.raw = this.version;
return this;
};
exports2.inc = inc;
function inc(version, release3, loose, identifier) {
function inc(version, release2, loose, identifier) {
if (typeof loose === "string") {
identifier = loose;
loose = void 0;
}
try {
return new SemVer(version, loose).inc(release3, identifier).version;
return new SemVer(version, loose).inc(release2, identifier).version;
} catch (er) {
return null;
}
@@ -53711,7 +53718,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
}
}
};
var access2 = {
var access = {
parameterPath: ["options", "access"],
mapper: {
serializedName: "x-ms-blob-public-access",
@@ -55519,7 +55526,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
requestId,
accept1,
metadata,
access2,
access,
defaultEncryptionScope,
preventEncryptionScopeOverride
],
@@ -55666,7 +55673,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
accept,
version,
requestId,
access2,
access,
leaseId,
ifModifiedSince,
ifUnmodifiedSince
@@ -64512,7 +64519,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
* @param containerAcl - Array of elements each having a unique Id and details of the access policy.
* @param options - Options to Container Set Access Policy operation.
*/
async setAccessPolicy(access3, containerAcl2, options = {}) {
async setAccessPolicy(access2, containerAcl2, options = {}) {
options.conditions = options.conditions || {};
return tracingClient.withSpan("ContainerClient-setAccessPolicy", options, async (updatedOptions) => {
const acl = [];
@@ -64528,7 +64535,7 @@ ${key}:${decodeURIComponent(lowercaseQueries[key])}`;
}
return assertResponse(await this.containerContext.setAccessPolicy({
abortSignal: options.abortSignal,
access: access3,
access: access2,
containerAcl: acl,
leaseAccessConditions: options.conditions,
modifiedAccessConditions: options.conditions,
@@ -79001,148 +79008,14 @@ var io2 = __toESM(require_io());
// src/util.ts
var fs = __toESM(require("fs"));
var fsPromises = __toESM(require("fs/promises"));
var path = __toESM(require("path"));
var core3 = __toESM(require_core());
var exec = __toESM(require_exec());
var io = __toESM(require_io());
// node_modules/check-disk-space/dist/check-disk-space.mjs
var import_node_child_process = require("node:child_process");
var import_promises = require("node:fs/promises");
var import_node_os = require("node:os");
var import_node_path = require("node:path");
var import_node_process = require("node:process");
var import_node_util = require("node:util");
var InvalidPathError = class _InvalidPathError extends Error {
constructor(message) {
super(message);
this.name = "InvalidPathError";
Object.setPrototypeOf(this, _InvalidPathError.prototype);
}
};
var NoMatchError = class _NoMatchError extends Error {
constructor(message) {
super(message);
this.name = "NoMatchError";
Object.setPrototypeOf(this, _NoMatchError.prototype);
}
};
async function isDirectoryExisting(directoryPath, dependencies) {
try {
await dependencies.fsAccess(directoryPath);
return Promise.resolve(true);
} catch (error2) {
return Promise.resolve(false);
}
}
async function getFirstExistingParentPath(directoryPath, dependencies) {
let parentDirectoryPath = directoryPath;
let parentDirectoryFound = await isDirectoryExisting(parentDirectoryPath, dependencies);
while (!parentDirectoryFound) {
parentDirectoryPath = dependencies.pathNormalize(parentDirectoryPath + "/..");
parentDirectoryFound = await isDirectoryExisting(parentDirectoryPath, dependencies);
}
return parentDirectoryPath;
}
async function hasPowerShell3(dependencies) {
const major = parseInt(dependencies.release.split(".")[0], 10);
if (major <= 6) {
return false;
}
try {
await dependencies.cpExecFile("where", ["powershell"], { windowsHide: true });
return true;
} catch (error2) {
return false;
}
}
function checkDiskSpace(directoryPath, dependencies = {
platform: import_node_process.platform,
release: (0, import_node_os.release)(),
fsAccess: import_promises.access,
pathNormalize: import_node_path.normalize,
pathSep: import_node_path.sep,
cpExecFile: (0, import_node_util.promisify)(import_node_child_process.execFile)
}) {
function mapOutput(stdout, filter, mapping, coefficient) {
const parsed = stdout.split("\n").map((line) => line.trim()).filter((line) => line.length !== 0).slice(1).map((line) => line.split(/\s+(?=[\d/])/));
const filtered = parsed.filter(filter);
if (filtered.length === 0) {
throw new NoMatchError();
}
const diskData = filtered[0];
return {
diskPath: diskData[mapping.diskPath],
free: parseInt(diskData[mapping.free], 10) * coefficient,
size: parseInt(diskData[mapping.size], 10) * coefficient
};
}
async function check(cmd, filter, mapping, coefficient = 1) {
const [file, ...args] = cmd;
if (file === void 0) {
return Promise.reject(new Error("cmd must contain at least one item"));
}
try {
const { stdout } = await dependencies.cpExecFile(file, args, { windowsHide: true });
return mapOutput(stdout, filter, mapping, coefficient);
} catch (error2) {
return Promise.reject(error2);
}
}
async function checkWin32(directoryPath2) {
if (directoryPath2.charAt(1) !== ":") {
return Promise.reject(new InvalidPathError(`The following path is invalid (should be X:\\...): ${directoryPath2}`));
}
const powershellCmd = [
"powershell",
"Get-CimInstance -ClassName Win32_LogicalDisk | Select-Object Caption, FreeSpace, Size"
];
const wmicCmd = [
"wmic",
"logicaldisk",
"get",
"size,freespace,caption"
];
const cmd = await hasPowerShell3(dependencies) ? powershellCmd : wmicCmd;
return check(cmd, (driveData) => {
const driveLetter = driveData[0];
return directoryPath2.toUpperCase().startsWith(driveLetter.toUpperCase());
}, {
diskPath: 0,
free: 1,
size: 2
});
}
async function checkUnix(directoryPath2) {
if (!dependencies.pathNormalize(directoryPath2).startsWith(dependencies.pathSep)) {
return Promise.reject(new InvalidPathError(`The following path is invalid (should start by ${dependencies.pathSep}): ${directoryPath2}`));
}
const pathToCheck = await getFirstExistingParentPath(directoryPath2, dependencies);
return check(
[
"df",
"-Pk",
"--",
pathToCheck
],
() => true,
// We should only get one line, so we did not need to filter
{
diskPath: 5,
free: 3,
size: 1
},
1024
);
}
if (dependencies.platform === "win32") {
return checkWin32(directoryPath);
}
return checkUnix(directoryPath);
}
// node_modules/get-folder-size/index.js
var import_node_path2 = require("node:path");
var import_node_path = require("node:path");
async function getFolderSize(itemPath, options) {
return await core(itemPath, options, { errors: true });
}
@@ -79167,7 +79040,7 @@ async function core(rootItemPath, options = {}, returnType = {}) {
if (typeof directoryItems !== "object") return;
await Promise.all(
directoryItems.map(
(directoryItem) => processItem((0, import_node_path2.join)(itemPath, directoryItem))
(directoryItem) => processItem((0, import_node_path.join)(itemPath, directoryItem))
)
);
}
@@ -81946,16 +81819,14 @@ function getErrorMessage(error2) {
}
async function checkDiskUsage(logger) {
try {
if (process.platform === "darwin" && (process.arch === "arm" || process.arch === "arm64") && !await checkSipEnablement(logger)) {
return void 0;
}
const diskUsage = await checkDiskSpace(
const diskUsage = await fsPromises.statfs(
getRequiredEnvParam("GITHUB_WORKSPACE")
);
const mbInBytes = 1024 * 1024;
const gbInBytes = 1024 * 1024 * 1024;
if (diskUsage.free < 2 * gbInBytes) {
const message = `The Actions runner is running low on disk space (${(diskUsage.free / mbInBytes).toPrecision(4)} MB available).`;
const blockSizeInBytes = diskUsage.bsize;
const numBlocksPerMb = 1024 * 1024 / blockSizeInBytes;
const numBlocksPerGb = 1024 * 1024 * 1024 / blockSizeInBytes;
if (diskUsage.bavail < 2 * numBlocksPerGb) {
const message = `The Actions runner is running low on disk space (${(diskUsage.bavail / numBlocksPerMb).toPrecision(4)} MB available).`;
if (process.env["CODEQL_ACTION_HAS_WARNED_ABOUT_DISK_SPACE" /* HAS_WARNED_ABOUT_DISK_SPACE */] !== "true") {
logger.warning(message);
} else {
@@ -81964,8 +81835,8 @@ async function checkDiskUsage(logger) {
core3.exportVariable("CODEQL_ACTION_HAS_WARNED_ABOUT_DISK_SPACE" /* HAS_WARNED_ABOUT_DISK_SPACE */, "true");
}
return {
numAvailableBytes: diskUsage.free,
numTotalBytes: diskUsage.size
numAvailableBytes: diskUsage.bavail * blockSizeInBytes,
numTotalBytes: diskUsage.blocks * blockSizeInBytes
};
} catch (error2) {
logger.warning(
@@ -81999,34 +81870,6 @@ function satisfiesGHESVersion(ghesVersion, range, defaultIfInvalid) {
function cloneObject(obj) {
return JSON.parse(JSON.stringify(obj));
}
async function checkSipEnablement(logger) {
if (process.env["CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */] !== void 0 && ["true", "false"].includes(process.env["CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */])) {
return process.env["CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */] === "true";
}
try {
const sipStatusOutput = await exec.getExecOutput("csrutil status");
if (sipStatusOutput.exitCode === 0) {
if (sipStatusOutput.stdout.includes(
"System Integrity Protection status: enabled."
)) {
core3.exportVariable("CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */, "true");
return true;
}
if (sipStatusOutput.stdout.includes(
"System Integrity Protection status: disabled."
)) {
core3.exportVariable("CODEQL_ACTION_IS_SIP_ENABLED" /* IS_SIP_ENABLED */, "false");
return false;
}
}
return void 0;
} catch (e) {
logger.warning(
`Failed to determine if System Integrity Protection was enabled: ${e}`
);
return void 0;
}
}
async function cleanUpPath(file, name, logger) {
logger.debug(`Cleaning up ${name}.`);
try {
@@ -83694,7 +83537,7 @@ function getCliConfigCategoryIfExists(cliError) {
}
function isUnsupportedPlatform() {
return !SUPPORTED_PLATFORMS.some(
([platform2, arch2]) => platform2 === process.platform && arch2 === process.arch
([platform, arch2]) => platform === process.platform && arch2 === process.arch
);
}
function getUnsupportedPlatformError(cliError) {
@@ -84110,17 +83953,17 @@ function getCodeQLBundleExtension(compressionMethod) {
}
function getCodeQLBundleName(compressionMethod) {
const extension = getCodeQLBundleExtension(compressionMethod);
let platform2;
let platform;
if (process.platform === "win32") {
platform2 = "win64";
platform = "win64";
} else if (process.platform === "linux") {
platform2 = "linux64";
platform = "linux64";
} else if (process.platform === "darwin") {
platform2 = "osx64";
platform = "osx64";
} else {
return `codeql-bundle${extension}`;
}
return `codeql-bundle-${platform2}${extension}`;
return `codeql-bundle-${platform}${extension}`;
}
function getCodeQLActionRepository(logger) {
if (isRunningLocalAction()) {
@@ -84154,12 +83997,12 @@ async function getCodeQLBundleDownloadURL(tagName, apiDetails, compressionMethod
}
const [repositoryOwner, repositoryName] = repository.split("/");
try {
const release3 = await getApiClient().rest.repos.getReleaseByTag({
const release2 = await getApiClient().rest.repos.getReleaseByTag({
owner: repositoryOwner,
repo: repositoryName,
tag: tagName
});
for (const asset of release3.data.assets) {
for (const asset of release2.data.assets) {
if (asset.name === codeQLBundleName) {
logger.info(
`Found CodeQL bundle ${codeQLBundleName} in ${repository} on ${apiURL} with URL ${asset.url}.`
@@ -84599,14 +84442,14 @@ async function getNightlyToolsUrl(logger) {
zstdAvailability.available
) ? "zstd" : "gzip";
try {
const release3 = await getApiClient().rest.repos.listReleases({
const release2 = await getApiClient().rest.repos.listReleases({
owner: CODEQL_NIGHTLIES_REPOSITORY_OWNER,
repo: CODEQL_NIGHTLIES_REPOSITORY_NAME,
per_page: 1,
page: 1,
prerelease: true
});
const latestRelease = release3.data[0];
const latestRelease = release2.data[0];
if (!latestRelease) {
throw new Error("Could not find the latest nightly release.");
}

625
package-lock.json generated
View File

@@ -9,7 +9,7 @@
"version": "4.31.1",
"license": "MIT",
"dependencies": {
"@actions/artifact": "^2.3.1",
"@actions/artifact": "^4.0.0",
"@actions/artifact-legacy": "npm:@actions/artifact@^1.1.2",
"@actions/cache": "^4.1.0",
"@actions/core": "^1.11.1",
@@ -23,7 +23,6 @@
"@octokit/request-error": "^7.0.1",
"@schemastore/package": "0.0.10",
"archiver": "^7.0.1",
"check-disk-space": "^3.4.0",
"console-log-level": "^1.4.1",
"fast-deep-equal": "^3.1.3",
"follow-redirects": "^1.15.11",
@@ -42,8 +41,8 @@
"@eslint/eslintrc": "^3.3.1",
"@eslint/js": "^9.38.0",
"@microsoft/eslint-formatter-sarif": "^3.1.0",
"@octokit/types": "^15.0.0",
"@types/archiver": "^6.0.3",
"@octokit/types": "^15.0.1",
"@types/archiver": "^6.0.4",
"@types/console-log-level": "^1.4.5",
"@types/follow-redirects": "^1.14.4",
"@types/js-yaml": "^4.0.9",
@@ -51,7 +50,7 @@
"@types/node-forge": "^1.3.14",
"@types/semver": "^7.7.1",
"@types/sinon": "^17.0.4",
"@typescript-eslint/eslint-plugin": "^8.46.1",
"@typescript-eslint/eslint-plugin": "^8.46.2",
"@typescript-eslint/parser": "^8.41.0",
"ava": "^6.4.1",
"esbuild": "^0.25.11",
@@ -76,17 +75,20 @@
}
},
"node_modules/@actions/artifact": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/@actions/artifact/-/artifact-2.3.1.tgz",
"integrity": "sha512-3uW25BNAqbMBcasNK+DX4I0Vl8aQdo65K6DRufJiNYjqfhSMfeRE4YGjWLaKmF+H+7bp1ADlQ5NksC61fpvYbQ==",
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/@actions/artifact/-/artifact-4.0.0.tgz",
"integrity": "sha512-HCc2jMJRAfviGFAh0FsOR/jNfWhirxl7W6z8zDtttt0GltwxBLdEIjLiweOPFl9WbyJRW1VWnPUSAixJqcWUMQ==",
"license": "MIT",
"dependencies": {
"@actions/core": "^1.10.0",
"@actions/github": "^5.1.1",
"@actions/github": "^6.0.1",
"@actions/http-client": "^2.1.0",
"@azure/core-http": "^3.0.5",
"@azure/storage-blob": "^12.15.0",
"@octokit/core": "^3.5.1",
"@octokit/core": "^5.2.1",
"@octokit/plugin-request-log": "^1.0.4",
"@octokit/plugin-retry": "^3.0.9",
"@octokit/request": "^8.4.1",
"@octokit/request-error": "^5.1.1",
"@protobuf-ts/plugin": "^2.2.3-alpha.1",
"archiver": "^7.0.1",
@@ -106,99 +108,17 @@
"tmp-promise": "^3.0.2"
}
},
"node_modules/@actions/artifact/node_modules/@actions/github": {
"version": "5.1.1",
"resolved": "https://registry.npmjs.org/@actions/github/-/github-5.1.1.tgz",
"integrity": "sha512-Nk59rMDoJaV+mHCOJPXuvB1zIbomlKS0dmSIqPGxd0enAXBnOfn4VWF+CGtRCwXZG9Epa54tZA7VIRlJDS8A6g==",
"dependencies": {
"@actions/http-client": "^2.0.1",
"@octokit/core": "^3.6.0",
"@octokit/plugin-paginate-rest": "^2.17.0",
"@octokit/plugin-rest-endpoint-methods": "^5.13.0"
}
},
"node_modules/@actions/artifact/node_modules/@octokit/auth-token": {
"version": "2.5.0",
"resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz",
"integrity": "sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==",
"dependencies": {
"@octokit/types": "^6.0.3"
}
},
"node_modules/@actions/artifact/node_modules/@octokit/auth-token/node_modules/@octokit/types": {
"version": "6.41.0",
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz",
"integrity": "sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==",
"dependencies": {
"@octokit/openapi-types": "^12.11.0"
}
},
"node_modules/@actions/artifact/node_modules/@octokit/core": {
"version": "3.6.0",
"resolved": "https://registry.npmjs.org/@octokit/core/-/core-3.6.0.tgz",
"integrity": "sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q==",
"dependencies": {
"@octokit/auth-token": "^2.4.4",
"@octokit/graphql": "^4.5.8",
"@octokit/request": "^5.6.3",
"@octokit/request-error": "^2.0.5",
"@octokit/types": "^6.0.3",
"before-after-hook": "^2.2.0",
"universal-user-agent": "^6.0.0"
}
},
"node_modules/@actions/artifact/node_modules/@octokit/core/node_modules/@octokit/request-error": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.1.0.tgz",
"integrity": "sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==",
"dependencies": {
"@octokit/types": "^6.0.3",
"deprecation": "^2.0.0",
"once": "^1.4.0"
}
},
"node_modules/@actions/artifact/node_modules/@octokit/core/node_modules/@octokit/types": {
"version": "6.41.0",
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz",
"integrity": "sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==",
"dependencies": {
"@octokit/openapi-types": "^12.11.0"
}
},
"node_modules/@actions/artifact/node_modules/@octokit/endpoint": {
"version": "6.0.12",
"resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.12.tgz",
"integrity": "sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA==",
"version": "9.0.6",
"resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-9.0.6.tgz",
"integrity": "sha512-H1fNTMA57HbkFESSt3Y9+FBICv+0jFceJFPWDePYlR/iMGrwM5ph+Dd4XRQs+8X+PUFURLQgX9ChPfhJ/1uNQw==",
"license": "MIT",
"dependencies": {
"@octokit/types": "^6.0.3",
"is-plain-object": "^5.0.0",
"@octokit/types": "^13.1.0",
"universal-user-agent": "^6.0.0"
}
},
"node_modules/@actions/artifact/node_modules/@octokit/endpoint/node_modules/@octokit/types": {
"version": "6.41.0",
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz",
"integrity": "sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==",
"dependencies": {
"@octokit/openapi-types": "^12.11.0"
}
},
"node_modules/@actions/artifact/node_modules/@octokit/graphql": {
"version": "4.8.0",
"resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.8.0.tgz",
"integrity": "sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg==",
"dependencies": {
"@octokit/request": "^5.6.0",
"@octokit/types": "^6.0.3",
"universal-user-agent": "^6.0.0"
}
},
"node_modules/@actions/artifact/node_modules/@octokit/graphql/node_modules/@octokit/types": {
"version": "6.41.0",
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz",
"integrity": "sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==",
"dependencies": {
"@octokit/openapi-types": "^12.11.0"
},
"engines": {
"node": ">= 18"
}
},
"node_modules/@actions/artifact/node_modules/@octokit/openapi-types": {
@@ -227,16 +147,18 @@
}
},
"node_modules/@actions/artifact/node_modules/@octokit/request": {
"version": "5.6.3",
"resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.6.3.tgz",
"integrity": "sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A==",
"version": "8.4.1",
"resolved": "https://registry.npmjs.org/@octokit/request/-/request-8.4.1.tgz",
"integrity": "sha512-qnB2+SY3hkCmBxZsR/MPCybNmbJe4KAlfWErXq+rBKkQJlbjdJeS85VI9r8UqeLYLvnAenU8Q1okM/0MBsAGXw==",
"license": "MIT",
"dependencies": {
"@octokit/endpoint": "^6.0.1",
"@octokit/request-error": "^2.1.0",
"@octokit/types": "^6.16.1",
"is-plain-object": "^5.0.0",
"node-fetch": "^2.6.7",
"@octokit/endpoint": "^9.0.6",
"@octokit/request-error": "^5.1.1",
"@octokit/types": "^13.1.0",
"universal-user-agent": "^6.0.0"
},
"engines": {
"node": ">= 18"
}
},
"node_modules/@actions/artifact/node_modules/@octokit/request-error": {
@@ -252,24 +174,6 @@
"node": ">= 18"
}
},
"node_modules/@actions/artifact/node_modules/@octokit/request/node_modules/@octokit/request-error": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.1.0.tgz",
"integrity": "sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==",
"dependencies": {
"@octokit/types": "^6.0.3",
"deprecation": "^2.0.0",
"once": "^1.4.0"
}
},
"node_modules/@actions/artifact/node_modules/@octokit/request/node_modules/@octokit/types": {
"version": "6.41.0",
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz",
"integrity": "sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==",
"dependencies": {
"@octokit/openapi-types": "^12.11.0"
}
},
"node_modules/@actions/artifact/node_modules/@octokit/types": {
"version": "13.10.0",
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.10.0.tgz",
@@ -334,14 +238,31 @@
}
},
"node_modules/@actions/github": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/@actions/github/-/github-6.0.0.tgz",
"integrity": "sha512-alScpSVnYmjNEXboZjarjukQEzgCRmjMv6Xj47fsdnqGS73bjJNDpiiXmp8jr0UZLdUB6d9jW63IcmddUP+l0g==",
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/@actions/github/-/github-6.0.1.tgz",
"integrity": "sha512-xbZVcaqD4XnQAe35qSQqskb3SqIAfRyLBrHMd/8TuL7hJSz2QtbDwnNM8zWx4zO5l2fnGtseNE3MbEvD7BxVMw==",
"license": "MIT",
"dependencies": {
"@actions/http-client": "^2.2.0",
"@octokit/core": "^5.0.1",
"@octokit/plugin-paginate-rest": "^9.0.0",
"@octokit/plugin-rest-endpoint-methods": "^10.0.0"
"@octokit/plugin-paginate-rest": "^9.2.2",
"@octokit/plugin-rest-endpoint-methods": "^10.4.0",
"@octokit/request": "^8.4.1",
"@octokit/request-error": "^5.1.1",
"undici": "^5.28.5"
}
},
"node_modules/@actions/github/node_modules/@octokit/endpoint": {
"version": "9.0.6",
"resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-9.0.6.tgz",
"integrity": "sha512-H1fNTMA57HbkFESSt3Y9+FBICv+0jFceJFPWDePYlR/iMGrwM5ph+Dd4XRQs+8X+PUFURLQgX9ChPfhJ/1uNQw==",
"license": "MIT",
"dependencies": {
"@octokit/types": "^13.1.0",
"universal-user-agent": "^6.0.0"
},
"engines": {
"node": ">= 18"
}
},
"node_modules/@actions/github/node_modules/@octokit/openapi-types": {
@@ -393,6 +314,50 @@
"@octokit/openapi-types": "^20.0.0"
}
},
"node_modules/@actions/github/node_modules/@octokit/request": {
"version": "8.4.1",
"resolved": "https://registry.npmjs.org/@octokit/request/-/request-8.4.1.tgz",
"integrity": "sha512-qnB2+SY3hkCmBxZsR/MPCybNmbJe4KAlfWErXq+rBKkQJlbjdJeS85VI9r8UqeLYLvnAenU8Q1okM/0MBsAGXw==",
"license": "MIT",
"dependencies": {
"@octokit/endpoint": "^9.0.6",
"@octokit/request-error": "^5.1.1",
"@octokit/types": "^13.1.0",
"universal-user-agent": "^6.0.0"
},
"engines": {
"node": ">= 18"
}
},
"node_modules/@actions/github/node_modules/@octokit/request-error": {
"version": "5.1.1",
"resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-5.1.1.tgz",
"integrity": "sha512-v9iyEQJH6ZntoENr9/yXxjuezh4My67CBSu9r6Ve/05Iu5gNgnisNWOsoJHTP6k0Rr0+HQIpnH+kyammu90q/g==",
"license": "MIT",
"dependencies": {
"@octokit/types": "^13.1.0",
"deprecation": "^2.0.0",
"once": "^1.4.0"
},
"engines": {
"node": ">= 18"
}
},
"node_modules/@actions/github/node_modules/@octokit/types": {
"version": "13.10.0",
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.10.0.tgz",
"integrity": "sha512-ifLaO34EbbPj0Xgro4G5lP5asESjwHracYJvVaPIyXMuiuXLlhic3S47cBdTb+jfODkTE5YtGCLt3Ay3+J97sA==",
"license": "MIT",
"dependencies": {
"@octokit/openapi-types": "^24.2.0"
}
},
"node_modules/@actions/github/node_modules/@octokit/types/node_modules/@octokit/openapi-types": {
"version": "24.2.0",
"resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-24.2.0.tgz",
"integrity": "sha512-9sIH3nSUttelJSXUrmGzl7QUBFul0/mB8HRYl3fOlgHbIWG+WnYDXU3v/2zMtAvuzZ/ed00Ei6on975FhBfzrg==",
"license": "MIT"
},
"node_modules/@actions/glob": {
"version": "0.5.0",
"resolved": "https://registry.npmjs.org/@actions/glob/-/glob-0.5.0.tgz",
@@ -534,6 +499,32 @@
"integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==",
"license": "0BSD"
},
"node_modules/@azure/core-http": {
"version": "3.0.5",
"resolved": "https://registry.npmjs.org/@azure/core-http/-/core-http-3.0.5.tgz",
"integrity": "sha512-T8r2q/c3DxNu6mEJfPuJtptUVqwchxzjj32gKcnMi06rdiVONS9rar7kT9T2Am+XvER7uOzpsP79WsqNbdgdWg==",
"deprecated": "This package is no longer supported. Please refer to https://github.com/Azure/azure-sdk-for-js/blob/490ce4dfc5b98ba290dee3b33a6d0876c5f138e2/sdk/core/README.md",
"license": "MIT",
"dependencies": {
"@azure/abort-controller": "^1.0.0",
"@azure/core-auth": "^1.3.0",
"@azure/core-tracing": "1.0.0-preview.13",
"@azure/core-util": "^1.1.1",
"@azure/logger": "^1.0.0",
"@types/node-fetch": "^2.5.0",
"@types/tunnel": "^0.0.3",
"form-data": "^4.0.0",
"node-fetch": "^2.6.7",
"process": "^0.11.10",
"tslib": "^2.2.0",
"tunnel": "^0.0.6",
"uuid": "^8.3.0",
"xml2js": "^0.5.0"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@azure/core-http-compat": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/@azure/core-http-compat/-/core-http-compat-2.1.2.tgz",
@@ -566,6 +557,50 @@
"integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==",
"license": "0BSD"
},
"node_modules/@azure/core-http/node_modules/@azure/core-tracing": {
"version": "1.0.0-preview.13",
"resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.13.tgz",
"integrity": "sha512-KxDlhXyMlh2Jhj2ykX6vNEU0Vou4nHr025KoSEiz7cS3BNiHNaZcdECk/DmLkEB0as5T7b/TpRcehJ5yV6NeXQ==",
"license": "MIT",
"dependencies": {
"@opentelemetry/api": "^1.0.1",
"tslib": "^2.2.0"
},
"engines": {
"node": ">=12.0.0"
}
},
"node_modules/@azure/core-http/node_modules/form-data": {
"version": "4.0.4",
"resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.4.tgz",
"integrity": "sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==",
"license": "MIT",
"dependencies": {
"asynckit": "^0.4.0",
"combined-stream": "^1.0.8",
"es-set-tostringtag": "^2.1.0",
"hasown": "^2.0.2",
"mime-types": "^2.1.12"
},
"engines": {
"node": ">= 6"
}
},
"node_modules/@azure/core-http/node_modules/tslib": {
"version": "2.8.1",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
"integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
"license": "0BSD"
},
"node_modules/@azure/core-http/node_modules/uuid": {
"version": "8.3.2",
"resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
"integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
"license": "MIT",
"bin": {
"uuid": "dist/bin/uuid"
}
},
"node_modules/@azure/core-lro": {
"version": "2.5.3",
"license": "MIT",
@@ -1817,14 +1852,15 @@
}
},
"node_modules/@octokit/core": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/@octokit/core/-/core-5.2.0.tgz",
"integrity": "sha512-1LFfa/qnMQvEOAdzlQymH0ulepxbxnCYAKJZfMci/5XJyIHWgEYnDmgnKakbTh7CH2tFQ5O60oYDvns4i9RAIg==",
"version": "5.2.2",
"resolved": "https://registry.npmjs.org/@octokit/core/-/core-5.2.2.tgz",
"integrity": "sha512-/g2d4sW9nUDJOMz3mabVQvOGhVa4e/BN/Um7yca9Bb2XTzPPnfTWHWQg+IsEYO7M3Vx+EXvaM/I2pJWIMun1bg==",
"license": "MIT",
"dependencies": {
"@octokit/auth-token": "^4.0.0",
"@octokit/graphql": "^7.1.0",
"@octokit/request": "^8.3.1",
"@octokit/request-error": "^5.1.0",
"@octokit/request": "^8.4.1",
"@octokit/request-error": "^5.1.1",
"@octokit/types": "^13.0.0",
"before-after-hook": "^2.2.0",
"universal-user-agent": "^6.0.0"
@@ -2077,30 +2113,6 @@
"integrity": "sha512-90MF5LVHjBedwoHyJsgmaFhEN1uzXyBDRLEBe7jlTYx/fEhPAk3P3DAJsfZwC54m8hAIryosJOL+UuZHB3K3yA==",
"license": "MIT"
},
"node_modules/@octokit/plugin-paginate-rest": {
"version": "2.21.3",
"resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.21.3.tgz",
"integrity": "sha512-aCZTEf0y2h3OLbrgKkrfFdjRL6eSOo8komneVQJnYecAxIej7Bafor2xhuDJOIFau4pk0i/P28/XgtbyPF0ZHw==",
"dependencies": {
"@octokit/types": "^6.40.0"
},
"peerDependencies": {
"@octokit/core": ">=2"
}
},
"node_modules/@octokit/plugin-paginate-rest/node_modules/@octokit/openapi-types": {
"version": "12.11.0",
"resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.11.0.tgz",
"integrity": "sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ=="
},
"node_modules/@octokit/plugin-paginate-rest/node_modules/@octokit/types": {
"version": "6.41.0",
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz",
"integrity": "sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==",
"dependencies": {
"@octokit/openapi-types": "^12.11.0"
}
},
"node_modules/@octokit/plugin-request-log": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz",
@@ -2110,31 +2122,6 @@
"@octokit/core": ">=3"
}
},
"node_modules/@octokit/plugin-rest-endpoint-methods": {
"version": "5.16.2",
"resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.16.2.tgz",
"integrity": "sha512-8QFz29Fg5jDuTPXVtey05BLm7OB+M8fnvE64RNegzX7U+5NUXcOcnpTIK0YfSHBg8gYd0oxIq3IZTe9SfPZiRw==",
"dependencies": {
"@octokit/types": "^6.39.0",
"deprecation": "^2.3.1"
},
"peerDependencies": {
"@octokit/core": ">=3"
}
},
"node_modules/@octokit/plugin-rest-endpoint-methods/node_modules/@octokit/openapi-types": {
"version": "12.11.0",
"resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.11.0.tgz",
"integrity": "sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ=="
},
"node_modules/@octokit/plugin-rest-endpoint-methods/node_modules/@octokit/types": {
"version": "6.41.0",
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz",
"integrity": "sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==",
"dependencies": {
"@octokit/openapi-types": "^12.11.0"
}
},
"node_modules/@octokit/plugin-retry": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/@octokit/plugin-retry/-/plugin-retry-6.1.0.tgz",
@@ -2212,9 +2199,9 @@
"license": "ISC"
},
"node_modules/@octokit/types": {
"version": "15.0.0",
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-15.0.0.tgz",
"integrity": "sha512-8o6yDfmoGJUIeR9OfYU0/TUJTnMPG2r68+1yEdUeG2Fdqpj8Qetg0ziKIgcBm0RW/j29H41WP37CYCEhp6GoHQ==",
"version": "15.0.1",
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-15.0.1.tgz",
"integrity": "sha512-sdiirM93IYJ9ODDCBgmRPIboLbSkpLa5i+WLuXH8b8Atg+YMLAyLvDDhNWLV4OYd08tlvYfVm/dw88cqHWtw1Q==",
"license": "MIT",
"dependencies": {
"@octokit/openapi-types": "^26.0.0"
@@ -2268,6 +2255,15 @@
"dev": true,
"license": "MIT"
},
"node_modules/@opentelemetry/api": {
"version": "1.9.0",
"resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.9.0.tgz",
"integrity": "sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==",
"license": "Apache-2.0",
"engines": {
"node": ">=8.0.0"
}
},
"node_modules/@pkgjs/parseargs": {
"version": "0.11.0",
"resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz",
@@ -2470,9 +2466,9 @@
}
},
"node_modules/@types/archiver": {
"version": "6.0.3",
"resolved": "https://registry.npmjs.org/@types/archiver/-/archiver-6.0.3.tgz",
"integrity": "sha512-a6wUll6k3zX6qs5KlxIggs1P1JcYJaTCx2gnlr+f0S1yd2DoaEwoIK10HmBaLnZwWneBz+JBm0dwcZu0zECBcQ==",
"version": "6.0.4",
"resolved": "https://registry.npmjs.org/@types/archiver/-/archiver-6.0.4.tgz",
"integrity": "sha512-ULdQpARQ3sz9WH4nb98mJDYA0ft2A8C4f4fovvUcFwINa1cgGjY36JCAYuP5YypRq4mco1lJp1/7jEMS2oR0Hg==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -2532,12 +2528,37 @@
"version": "20.19.9",
"resolved": "https://registry.npmjs.org/@types/node/-/node-20.19.9.tgz",
"integrity": "sha512-cuVNgarYWZqxRJDQHEB58GEONhOK79QVR/qYx4S7kcUObQvUwvFnYxJuuHUKm2aieN9X3yZB4LZsuYNU1Qphsw==",
"dev": true,
"license": "MIT",
"dependencies": {
"undici-types": "~6.21.0"
}
},
"node_modules/@types/node-fetch": {
"version": "2.6.13",
"resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.13.tgz",
"integrity": "sha512-QGpRVpzSaUs30JBSGPjOg4Uveu384erbHBoT1zeONvyCfwQxIkUshLAOqN/k9EjGviPRmWTTe6aH2qySWKTVSw==",
"license": "MIT",
"dependencies": {
"@types/node": "*",
"form-data": "^4.0.4"
}
},
"node_modules/@types/node-fetch/node_modules/form-data": {
"version": "4.0.4",
"resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.4.tgz",
"integrity": "sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow==",
"license": "MIT",
"dependencies": {
"asynckit": "^0.4.0",
"combined-stream": "^1.0.8",
"es-set-tostringtag": "^2.1.0",
"hasown": "^2.0.2",
"mime-types": "^2.1.12"
},
"engines": {
"node": ">= 6"
}
},
"node_modules/@types/node-forge": {
"version": "1.3.14",
"resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.14.tgz",
@@ -2580,18 +2601,27 @@
"dev": true,
"license": "MIT"
},
"node_modules/@types/tunnel": {
"version": "0.0.3",
"resolved": "https://registry.npmjs.org/@types/tunnel/-/tunnel-0.0.3.tgz",
"integrity": "sha512-sOUTGn6h1SfQ+gbgqC364jLFBw2lnFqkgF3q0WovEHRLMrVD1sd5aufqi/aJObLekJO+Aq5z646U4Oxy6shXMA==",
"license": "MIT",
"dependencies": {
"@types/node": "*"
}
},
"node_modules/@typescript-eslint/eslint-plugin": {
"version": "8.46.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.46.1.tgz",
"integrity": "sha512-rUsLh8PXmBjdiPY+Emjz9NX2yHvhS11v0SR6xNJkm5GM1MO9ea/1GoDKlHHZGrOJclL/cZ2i/vRUYVtjRhrHVQ==",
"version": "8.46.2",
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.46.2.tgz",
"integrity": "sha512-ZGBMToy857/NIPaaCucIUQgqueOiq7HeAKkhlvqVV4lm089zUFW6ikRySx2v+cAhKeUCPuWVHeimyk6Dw1iY3w==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/regexpp": "^4.10.0",
"@typescript-eslint/scope-manager": "8.46.1",
"@typescript-eslint/type-utils": "8.46.1",
"@typescript-eslint/utils": "8.46.1",
"@typescript-eslint/visitor-keys": "8.46.1",
"@typescript-eslint/scope-manager": "8.46.2",
"@typescript-eslint/type-utils": "8.46.2",
"@typescript-eslint/utils": "8.46.2",
"@typescript-eslint/visitor-keys": "8.46.2",
"graphemer": "^1.4.0",
"ignore": "^7.0.0",
"natural-compare": "^1.4.0",
@@ -2605,20 +2635,20 @@
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
"@typescript-eslint/parser": "^8.46.1",
"@typescript-eslint/parser": "^8.46.2",
"eslint": "^8.57.0 || ^9.0.0",
"typescript": ">=4.8.4 <6.0.0"
}
},
"node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager": {
"version": "8.46.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.46.1.tgz",
"integrity": "sha512-weL9Gg3/5F0pVQKiF8eOXFZp8emqWzZsOJuWRUNtHT+UNV2xSJegmpCNQHy37aEQIbToTq7RHKhWvOsmbM680A==",
"version": "8.46.2",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.46.2.tgz",
"integrity": "sha512-LF4b/NmGvdWEHD2H4MsHD8ny6JpiVNDzrSZr3CsckEgCbAGZbYM4Cqxvi9L+WqDMT+51Ozy7lt2M+d0JLEuBqA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@typescript-eslint/types": "8.46.1",
"@typescript-eslint/visitor-keys": "8.46.1"
"@typescript-eslint/types": "8.46.2",
"@typescript-eslint/visitor-keys": "8.46.2"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -2629,9 +2659,9 @@
}
},
"node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": {
"version": "8.46.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.46.1.tgz",
"integrity": "sha512-C+soprGBHwWBdkDpbaRC4paGBrkIXxVlNohadL5o0kfhsXqOC6GYH2S/Obmig+I0HTDl8wMaRySwrfrXVP8/pQ==",
"version": "8.46.2",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.46.2.tgz",
"integrity": "sha512-lNCWCbq7rpg7qDsQrd3D6NyWYu+gkTENkG5IKYhUIcxSb59SQC/hEQ+MrG4sTgBVghTonNWq42bA/d4yYumldQ==",
"dev": true,
"license": "MIT",
"engines": {
@@ -2643,16 +2673,16 @@
}
},
"node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree": {
"version": "8.46.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.46.1.tgz",
"integrity": "sha512-uIifjT4s8cQKFQ8ZBXXyoUODtRoAd7F7+G8MKmtzj17+1UbdzFl52AzRyZRyKqPHhgzvXunnSckVu36flGy8cg==",
"version": "8.46.2",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.46.2.tgz",
"integrity": "sha512-f7rW7LJ2b7Uh2EiQ+7sza6RDZnajbNbemn54Ob6fRwQbgcIn+GWfyuHDHRYgRoZu1P4AayVScrRW+YfbTvPQoQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"@typescript-eslint/project-service": "8.46.1",
"@typescript-eslint/tsconfig-utils": "8.46.1",
"@typescript-eslint/types": "8.46.1",
"@typescript-eslint/visitor-keys": "8.46.1",
"@typescript-eslint/project-service": "8.46.2",
"@typescript-eslint/tsconfig-utils": "8.46.2",
"@typescript-eslint/types": "8.46.2",
"@typescript-eslint/visitor-keys": "8.46.2",
"debug": "^4.3.4",
"fast-glob": "^3.3.2",
"is-glob": "^4.0.3",
@@ -2672,16 +2702,16 @@
}
},
"node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils": {
"version": "8.46.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.46.1.tgz",
"integrity": "sha512-vkYUy6LdZS7q1v/Gxb2Zs7zziuXN0wxqsetJdeZdRe/f5dwJFglmuvZBfTUivCtjH725C1jWCDfpadadD95EDQ==",
"version": "8.46.2",
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.46.2.tgz",
"integrity": "sha512-sExxzucx0Tud5tE0XqR0lT0psBQvEpnpiul9XbGUB1QwpWJJAps1O/Z7hJxLGiZLBKMCutjTzDgmd1muEhBnVg==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/eslint-utils": "^4.7.0",
"@typescript-eslint/scope-manager": "8.46.1",
"@typescript-eslint/types": "8.46.1",
"@typescript-eslint/typescript-estree": "8.46.1"
"@typescript-eslint/scope-manager": "8.46.2",
"@typescript-eslint/types": "8.46.2",
"@typescript-eslint/typescript-estree": "8.46.2"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -2696,13 +2726,13 @@
}
},
"node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": {
"version": "8.46.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.46.1.tgz",
"integrity": "sha512-ptkmIf2iDkNUjdeu2bQqhFPV1m6qTnFFjg7PPDjxKWaMaP0Z6I9l30Jr3g5QqbZGdw8YdYvLp+XnqnWWZOg/NA==",
"version": "8.46.2",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.46.2.tgz",
"integrity": "sha512-tUFMXI4gxzzMXt4xpGJEsBsTox0XbNQ1y94EwlD/CuZwFcQP79xfQqMhau9HsRc/J0cAPA/HZt1dZPtGn9V/7w==",
"dev": true,
"license": "MIT",
"dependencies": {
"@typescript-eslint/types": "8.46.1",
"@typescript-eslint/types": "8.46.2",
"eslint-visitor-keys": "^4.2.1"
},
"engines": {
@@ -2775,16 +2805,16 @@
}
},
"node_modules/@typescript-eslint/parser": {
"version": "8.46.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.46.1.tgz",
"integrity": "sha512-6JSSaBZmsKvEkbRUkf7Zj7dru/8ZCrJxAqArcLaVMee5907JdtEbKGsZ7zNiIm/UAkpGUkaSMZEXShnN2D1HZA==",
"version": "8.46.2",
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.46.2.tgz",
"integrity": "sha512-BnOroVl1SgrPLywqxyqdJ4l3S2MsKVLDVxZvjI1Eoe8ev2r3kGDo+PcMihNmDE+6/KjkTubSJnmqGZZjQSBq/g==",
"dev": true,
"license": "MIT",
"dependencies": {
"@typescript-eslint/scope-manager": "8.46.1",
"@typescript-eslint/types": "8.46.1",
"@typescript-eslint/typescript-estree": "8.46.1",
"@typescript-eslint/visitor-keys": "8.46.1",
"@typescript-eslint/scope-manager": "8.46.2",
"@typescript-eslint/types": "8.46.2",
"@typescript-eslint/typescript-estree": "8.46.2",
"@typescript-eslint/visitor-keys": "8.46.2",
"debug": "^4.3.4"
},
"engines": {
@@ -2800,14 +2830,14 @@
}
},
"node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": {
"version": "8.46.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.46.1.tgz",
"integrity": "sha512-weL9Gg3/5F0pVQKiF8eOXFZp8emqWzZsOJuWRUNtHT+UNV2xSJegmpCNQHy37aEQIbToTq7RHKhWvOsmbM680A==",
"version": "8.46.2",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.46.2.tgz",
"integrity": "sha512-LF4b/NmGvdWEHD2H4MsHD8ny6JpiVNDzrSZr3CsckEgCbAGZbYM4Cqxvi9L+WqDMT+51Ozy7lt2M+d0JLEuBqA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@typescript-eslint/types": "8.46.1",
"@typescript-eslint/visitor-keys": "8.46.1"
"@typescript-eslint/types": "8.46.2",
"@typescript-eslint/visitor-keys": "8.46.2"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -2818,9 +2848,9 @@
}
},
"node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": {
"version": "8.46.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.46.1.tgz",
"integrity": "sha512-C+soprGBHwWBdkDpbaRC4paGBrkIXxVlNohadL5o0kfhsXqOC6GYH2S/Obmig+I0HTDl8wMaRySwrfrXVP8/pQ==",
"version": "8.46.2",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.46.2.tgz",
"integrity": "sha512-lNCWCbq7rpg7qDsQrd3D6NyWYu+gkTENkG5IKYhUIcxSb59SQC/hEQ+MrG4sTgBVghTonNWq42bA/d4yYumldQ==",
"dev": true,
"license": "MIT",
"engines": {
@@ -2832,16 +2862,16 @@
}
},
"node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": {
"version": "8.46.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.46.1.tgz",
"integrity": "sha512-uIifjT4s8cQKFQ8ZBXXyoUODtRoAd7F7+G8MKmtzj17+1UbdzFl52AzRyZRyKqPHhgzvXunnSckVu36flGy8cg==",
"version": "8.46.2",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.46.2.tgz",
"integrity": "sha512-f7rW7LJ2b7Uh2EiQ+7sza6RDZnajbNbemn54Ob6fRwQbgcIn+GWfyuHDHRYgRoZu1P4AayVScrRW+YfbTvPQoQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"@typescript-eslint/project-service": "8.46.1",
"@typescript-eslint/tsconfig-utils": "8.46.1",
"@typescript-eslint/types": "8.46.1",
"@typescript-eslint/visitor-keys": "8.46.1",
"@typescript-eslint/project-service": "8.46.2",
"@typescript-eslint/tsconfig-utils": "8.46.2",
"@typescript-eslint/types": "8.46.2",
"@typescript-eslint/visitor-keys": "8.46.2",
"debug": "^4.3.4",
"fast-glob": "^3.3.2",
"is-glob": "^4.0.3",
@@ -2861,13 +2891,13 @@
}
},
"node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": {
"version": "8.46.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.46.1.tgz",
"integrity": "sha512-ptkmIf2iDkNUjdeu2bQqhFPV1m6qTnFFjg7PPDjxKWaMaP0Z6I9l30Jr3g5QqbZGdw8YdYvLp+XnqnWWZOg/NA==",
"version": "8.46.2",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.46.2.tgz",
"integrity": "sha512-tUFMXI4gxzzMXt4xpGJEsBsTox0XbNQ1y94EwlD/CuZwFcQP79xfQqMhau9HsRc/J0cAPA/HZt1dZPtGn9V/7w==",
"dev": true,
"license": "MIT",
"dependencies": {
"@typescript-eslint/types": "8.46.1",
"@typescript-eslint/types": "8.46.2",
"eslint-visitor-keys": "^4.2.1"
},
"engines": {
@@ -2931,14 +2961,14 @@
}
},
"node_modules/@typescript-eslint/project-service": {
"version": "8.46.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.46.1.tgz",
"integrity": "sha512-FOIaFVMHzRskXr5J4Jp8lFVV0gz5ngv3RHmn+E4HYxSJ3DgDzU7fVI1/M7Ijh1zf6S7HIoaIOtln1H5y8V+9Zg==",
"version": "8.46.2",
"resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.46.2.tgz",
"integrity": "sha512-PULOLZ9iqwI7hXcmL4fVfIsBi6AN9YxRc0frbvmg8f+4hQAjQ5GYNKK0DIArNo+rOKmR/iBYwkpBmnIwin4wBg==",
"dev": true,
"license": "MIT",
"dependencies": {
"@typescript-eslint/tsconfig-utils": "^8.46.1",
"@typescript-eslint/types": "^8.46.1",
"@typescript-eslint/tsconfig-utils": "^8.46.2",
"@typescript-eslint/types": "^8.46.2",
"debug": "^4.3.4"
},
"engines": {
@@ -2953,9 +2983,9 @@
}
},
"node_modules/@typescript-eslint/project-service/node_modules/@typescript-eslint/types": {
"version": "8.46.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.46.1.tgz",
"integrity": "sha512-C+soprGBHwWBdkDpbaRC4paGBrkIXxVlNohadL5o0kfhsXqOC6GYH2S/Obmig+I0HTDl8wMaRySwrfrXVP8/pQ==",
"version": "8.46.2",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.46.2.tgz",
"integrity": "sha512-lNCWCbq7rpg7qDsQrd3D6NyWYu+gkTENkG5IKYhUIcxSb59SQC/hEQ+MrG4sTgBVghTonNWq42bA/d4yYumldQ==",
"dev": true,
"license": "MIT",
"engines": {
@@ -2985,9 +3015,9 @@
}
},
"node_modules/@typescript-eslint/tsconfig-utils": {
"version": "8.46.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.46.1.tgz",
"integrity": "sha512-X88+J/CwFvlJB+mK09VFqx5FE4H5cXD+H/Bdza2aEWkSb8hnWIQorNcscRl4IEo1Cz9VI/+/r/jnGWkbWPx54g==",
"version": "8.46.2",
"resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.46.2.tgz",
"integrity": "sha512-a7QH6fw4S57+F5y2FIxxSDyi5M4UfGF+Jl1bCGd7+L4KsaUY80GsiF/t0UoRFDHAguKlBaACWJRmdrc6Xfkkag==",
"dev": true,
"license": "MIT",
"engines": {
@@ -3002,15 +3032,15 @@
}
},
"node_modules/@typescript-eslint/type-utils": {
"version": "8.46.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.46.1.tgz",
"integrity": "sha512-+BlmiHIiqufBxkVnOtFwjah/vrkF4MtKKvpXrKSPLCkCtAp8H01/VV43sfqA98Od7nJpDcFnkwgyfQbOG0AMvw==",
"version": "8.46.2",
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.46.2.tgz",
"integrity": "sha512-HbPM4LbaAAt/DjxXaG9yiS9brOOz6fabal4uvUmaUYe6l3K1phQDMQKBRUrr06BQkxkvIZVVHttqiybM9nJsLA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@typescript-eslint/types": "8.46.1",
"@typescript-eslint/typescript-estree": "8.46.1",
"@typescript-eslint/utils": "8.46.1",
"@typescript-eslint/types": "8.46.2",
"@typescript-eslint/typescript-estree": "8.46.2",
"@typescript-eslint/utils": "8.46.2",
"debug": "^4.3.4",
"ts-api-utils": "^2.1.0"
},
@@ -3027,14 +3057,14 @@
}
},
"node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/scope-manager": {
"version": "8.46.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.46.1.tgz",
"integrity": "sha512-weL9Gg3/5F0pVQKiF8eOXFZp8emqWzZsOJuWRUNtHT+UNV2xSJegmpCNQHy37aEQIbToTq7RHKhWvOsmbM680A==",
"version": "8.46.2",
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.46.2.tgz",
"integrity": "sha512-LF4b/NmGvdWEHD2H4MsHD8ny6JpiVNDzrSZr3CsckEgCbAGZbYM4Cqxvi9L+WqDMT+51Ozy7lt2M+d0JLEuBqA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@typescript-eslint/types": "8.46.1",
"@typescript-eslint/visitor-keys": "8.46.1"
"@typescript-eslint/types": "8.46.2",
"@typescript-eslint/visitor-keys": "8.46.2"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -3045,9 +3075,9 @@
}
},
"node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/types": {
"version": "8.46.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.46.1.tgz",
"integrity": "sha512-C+soprGBHwWBdkDpbaRC4paGBrkIXxVlNohadL5o0kfhsXqOC6GYH2S/Obmig+I0HTDl8wMaRySwrfrXVP8/pQ==",
"version": "8.46.2",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.46.2.tgz",
"integrity": "sha512-lNCWCbq7rpg7qDsQrd3D6NyWYu+gkTENkG5IKYhUIcxSb59SQC/hEQ+MrG4sTgBVghTonNWq42bA/d4yYumldQ==",
"dev": true,
"license": "MIT",
"engines": {
@@ -3059,16 +3089,16 @@
}
},
"node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree": {
"version": "8.46.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.46.1.tgz",
"integrity": "sha512-uIifjT4s8cQKFQ8ZBXXyoUODtRoAd7F7+G8MKmtzj17+1UbdzFl52AzRyZRyKqPHhgzvXunnSckVu36flGy8cg==",
"version": "8.46.2",
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.46.2.tgz",
"integrity": "sha512-f7rW7LJ2b7Uh2EiQ+7sza6RDZnajbNbemn54Ob6fRwQbgcIn+GWfyuHDHRYgRoZu1P4AayVScrRW+YfbTvPQoQ==",
"dev": true,
"license": "MIT",
"dependencies": {
"@typescript-eslint/project-service": "8.46.1",
"@typescript-eslint/tsconfig-utils": "8.46.1",
"@typescript-eslint/types": "8.46.1",
"@typescript-eslint/visitor-keys": "8.46.1",
"@typescript-eslint/project-service": "8.46.2",
"@typescript-eslint/tsconfig-utils": "8.46.2",
"@typescript-eslint/types": "8.46.2",
"@typescript-eslint/visitor-keys": "8.46.2",
"debug": "^4.3.4",
"fast-glob": "^3.3.2",
"is-glob": "^4.0.3",
@@ -3088,16 +3118,16 @@
}
},
"node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils": {
"version": "8.46.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.46.1.tgz",
"integrity": "sha512-vkYUy6LdZS7q1v/Gxb2Zs7zziuXN0wxqsetJdeZdRe/f5dwJFglmuvZBfTUivCtjH725C1jWCDfpadadD95EDQ==",
"version": "8.46.2",
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.46.2.tgz",
"integrity": "sha512-sExxzucx0Tud5tE0XqR0lT0psBQvEpnpiul9XbGUB1QwpWJJAps1O/Z7hJxLGiZLBKMCutjTzDgmd1muEhBnVg==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/eslint-utils": "^4.7.0",
"@typescript-eslint/scope-manager": "8.46.1",
"@typescript-eslint/types": "8.46.1",
"@typescript-eslint/typescript-estree": "8.46.1"
"@typescript-eslint/scope-manager": "8.46.2",
"@typescript-eslint/types": "8.46.2",
"@typescript-eslint/typescript-estree": "8.46.2"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -3112,13 +3142,13 @@
}
},
"node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/visitor-keys": {
"version": "8.46.1",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.46.1.tgz",
"integrity": "sha512-ptkmIf2iDkNUjdeu2bQqhFPV1m6qTnFFjg7PPDjxKWaMaP0Z6I9l30Jr3g5QqbZGdw8YdYvLp+XnqnWWZOg/NA==",
"version": "8.46.2",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.46.2.tgz",
"integrity": "sha512-tUFMXI4gxzzMXt4xpGJEsBsTox0XbNQ1y94EwlD/CuZwFcQP79xfQqMhau9HsRc/J0cAPA/HZt1dZPtGn9V/7w==",
"dev": true,
"license": "MIT",
"dependencies": {
"@typescript-eslint/types": "8.46.1",
"@typescript-eslint/types": "8.46.2",
"eslint-visitor-keys": "^4.2.1"
},
"engines": {
@@ -4258,13 +4288,6 @@
"url": "https://github.com/chalk/chalk?sponsor=1"
}
},
"node_modules/check-disk-space": {
"version": "3.4.0",
"license": "MIT",
"engines": {
"node": ">=16"
}
},
"node_modules/chownr": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz",
@@ -6631,6 +6654,7 @@
},
"node_modules/is-plain-object": {
"version": "5.0.0",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=0.10.0"
@@ -9042,7 +9066,6 @@
"version": "6.21.0",
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz",
"integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==",
"dev": true,
"license": "MIT"
},
"node_modules/unicorn-magic": {

View File

@@ -24,7 +24,7 @@
},
"license": "MIT",
"dependencies": {
"@actions/artifact": "^2.3.1",
"@actions/artifact": "^4.0.0",
"@actions/artifact-legacy": "npm:@actions/artifact@^1.1.2",
"@actions/cache": "^4.1.0",
"@actions/core": "^1.11.1",
@@ -38,7 +38,6 @@
"@octokit/request-error": "^7.0.1",
"@schemastore/package": "0.0.10",
"archiver": "^7.0.1",
"check-disk-space": "^3.4.0",
"console-log-level": "^1.4.1",
"fast-deep-equal": "^3.1.3",
"follow-redirects": "^1.15.11",
@@ -57,8 +56,8 @@
"@eslint/eslintrc": "^3.3.1",
"@eslint/js": "^9.38.0",
"@microsoft/eslint-formatter-sarif": "^3.1.0",
"@octokit/types": "^15.0.0",
"@types/archiver": "^6.0.3",
"@octokit/types": "^15.0.1",
"@types/archiver": "^6.0.4",
"@types/console-log-level": "^1.4.5",
"@types/follow-redirects": "^1.14.4",
"@types/js-yaml": "^4.0.9",
@@ -66,7 +65,7 @@
"@types/node-forge": "^1.3.14",
"@types/semver": "^7.7.1",
"@types/sinon": "^17.0.4",
"@typescript-eslint/eslint-plugin": "^8.46.1",
"@typescript-eslint/eslint-plugin": "^8.46.2",
"@typescript-eslint/parser": "^8.41.0",
"ava": "^6.4.1",
"esbuild": "^0.25.11",

View File

@@ -27,7 +27,7 @@ steps:
output: ${{ runner.temp }}/results
upload-database: false
- name: Upload SARIF
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v5
with:
name: ${{ matrix.os }}-zstd-bundle.sarif
path: ${{ runner.temp }}/results/javascript.sarif

View File

@@ -12,7 +12,7 @@ steps:
output: "${{ runner.temp }}/results"
upload-database: false
- name: Upload SARIF
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v5
with:
name: config-export-${{ matrix.os }}-${{ matrix.version }}.sarif.json
path: "${{ runner.temp }}/results/javascript.sarif"

View File

@@ -25,7 +25,7 @@ steps:
output: "${{ runner.temp }}/results"
upload-database: false
- name: Upload SARIF
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v5
with:
name: diagnostics-export-${{ matrix.os }}-${{ matrix.version }}.sarif.json
path: "${{ runner.temp }}/results/javascript.sarif"

View File

@@ -17,7 +17,7 @@ steps:
with:
output: "${{ runner.temp }}/results"
- name: Upload SARIF
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v5
with:
name: with-baseline-information-${{ matrix.os }}-${{ matrix.version }}.sarif.json
path: "${{ runner.temp }}/results/javascript.sarif"

View File

@@ -11,7 +11,7 @@ steps:
with:
output: "${{ runner.temp }}/results"
- name: Upload SARIF
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v5
with:
name: ${{ matrix.os }}-${{ matrix.version }}.sarif.json
path: "${{ runner.temp }}/results/javascript.sarif"

View File

@@ -39,7 +39,7 @@ steps:
post-processed-sarif-path: "${{ runner.temp }}/post-processed"
- name: Upload security SARIF
if: contains(matrix.analysis-kinds, 'code-scanning')
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v5
with:
name: |
quality-queries-${{ matrix.os }}-${{ matrix.version }}-${{ matrix.analysis-kinds }}.sarif.json
@@ -47,14 +47,14 @@ steps:
retention-days: 7
- name: Upload quality SARIF
if: contains(matrix.analysis-kinds, 'code-quality')
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v5
with:
name: |
quality-queries-${{ matrix.os }}-${{ matrix.version }}-${{ matrix.analysis-kinds }}.quality.sarif.json
path: "${{ runner.temp }}/results/javascript.quality.sarif"
retention-days: 7
- name: Upload post-processed SARIF
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v5
with:
name: |
post-processed-${{ matrix.os }}-${{ matrix.version }}-${{ matrix.analysis-kinds }}.sarif.json

View File

@@ -4,7 +4,7 @@ description: "Tests using RuboCop to analyze a multi-language repository and the
versions: ["default"]
steps:
- name: Set up Ruby
uses: ruby/setup-ruby@ab177d40ee5483edb974554986f56b33477e21d0 # v1.265.0
uses: ruby/setup-ruby@d5126b9b3579e429dd52e51e68624dda2e05be25 # v1.267.0
with:
ruby-version: 2.6
- name: Install Code Scanning integration

View File

@@ -534,3 +534,12 @@ test("getCgroupCpuCountFromCpus returns undefined if the CPU file exists but is
);
});
});
test("checkDiskUsage succeeds and produces positive numbers", async (t) => {
process.env["GITHUB_WORKSPACE"] = os.tmpdir();
const diskUsage = await util.checkDiskUsage(getRunnerLogger(true));
if (t.truthy(diskUsage)) {
t.true(diskUsage.numAvailableBytes > 0);
t.true(diskUsage.numTotalBytes > 0);
}
});

View File

@@ -1,11 +1,11 @@
import * as fs from "fs";
import * as fsPromises from "fs/promises";
import * as os from "os";
import * as path from "path";
import * as core from "@actions/core";
import * as exec from "@actions/exec/lib/exec";
import * as io from "@actions/io";
import checkDiskSpace from "check-disk-space";
import getFolderSize from "get-folder-size";
import * as yaml from "js-yaml";
import * as semver from "semver";
@@ -1098,24 +1098,17 @@ export async function checkDiskUsage(
logger: Logger,
): Promise<DiskUsage | undefined> {
try {
// We avoid running the `df` binary under the hood for macOS ARM runners with SIP disabled.
if (
process.platform === "darwin" &&
(process.arch === "arm" || process.arch === "arm64") &&
!(await checkSipEnablement(logger))
) {
return undefined;
}
const diskUsage = await checkDiskSpace(
const diskUsage = await fsPromises.statfs(
getRequiredEnvParam("GITHUB_WORKSPACE"),
);
const mbInBytes = 1024 * 1024;
const gbInBytes = 1024 * 1024 * 1024;
if (diskUsage.free < 2 * gbInBytes) {
const blockSizeInBytes = diskUsage.bsize;
const numBlocksPerMb = (1024 * 1024) / blockSizeInBytes;
const numBlocksPerGb = (1024 * 1024 * 1024) / blockSizeInBytes;
if (diskUsage.bavail < 2 * numBlocksPerGb) {
const message =
"The Actions runner is running low on disk space " +
`(${(diskUsage.free / mbInBytes).toPrecision(4)} MB available).`;
`(${(diskUsage.bavail / numBlocksPerMb).toPrecision(4)} MB available).`;
if (process.env[EnvVar.HAS_WARNED_ABOUT_DISK_SPACE] !== "true") {
logger.warning(message);
} else {
@@ -1124,8 +1117,8 @@ export async function checkDiskUsage(
core.exportVariable(EnvVar.HAS_WARNED_ABOUT_DISK_SPACE, "true");
}
return {
numAvailableBytes: diskUsage.free,
numTotalBytes: diskUsage.size,
numAvailableBytes: diskUsage.bavail * blockSizeInBytes,
numTotalBytes: diskUsage.blocks * blockSizeInBytes,
};
} catch (error) {
logger.warning(