mirror of
https://github.com/DeterminateSystems/flake-checker-action.git
synced 2025-06-04 01:17:28 +02:00
Fix merge conflicts with main
This commit is contained in:
commit
db2913f100
7 changed files with 375 additions and 308 deletions
6
.github/workflows/ci.yaml
vendored
6
.github/workflows/ci.yaml
vendored
|
@ -32,6 +32,8 @@ jobs:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
- name: Check flake.lock
|
- name: Check flake.lock
|
||||||
uses: ./
|
uses: ./
|
||||||
|
with:
|
||||||
|
_internal-strict-mode: true
|
||||||
|
|
||||||
run-x86_64-linux-dirty:
|
run-x86_64-linux-dirty:
|
||||||
name: Run x86_64 Linux (dirty)
|
name: Run x86_64 Linux (dirty)
|
||||||
|
@ -43,6 +45,7 @@ jobs:
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
flake-lock-path: flake.dirty.lock
|
flake-lock-path: flake.dirty.lock
|
||||||
|
_internal-strict-mode: true
|
||||||
|
|
||||||
run-x86_64-darwin-clean:
|
run-x86_64-darwin-clean:
|
||||||
name: Run x86_64 Darwin (clean)
|
name: Run x86_64 Darwin (clean)
|
||||||
|
@ -52,6 +55,8 @@ jobs:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
- name: Check flake.lock
|
- name: Check flake.lock
|
||||||
uses: ./
|
uses: ./
|
||||||
|
with:
|
||||||
|
_internal-strict-mode: true
|
||||||
|
|
||||||
run-x86_64-darwin-dirty:
|
run-x86_64-darwin-dirty:
|
||||||
name: Run x86_64 Darwin (dirty)
|
name: Run x86_64 Darwin (dirty)
|
||||||
|
@ -63,3 +68,4 @@ jobs:
|
||||||
uses: ./
|
uses: ./
|
||||||
with:
|
with:
|
||||||
flake-lock-path: flake.dirty.lock
|
flake-lock-path: flake.dirty.lock
|
||||||
|
_internal-strict-mode: true
|
||||||
|
|
|
@ -47,6 +47,9 @@ inputs:
|
||||||
description: |
|
description: |
|
||||||
Run a version of flake-checker from somewhere already on disk. Intended only for testing the Action.
|
Run a version of flake-checker from somewhere already on disk. Intended only for testing the Action.
|
||||||
required: false
|
required: false
|
||||||
|
_internal-strict-mode:
|
||||||
|
description: Whether to fail when any errors are thrown. Used only to test the Action; do not set this in your own workflows.
|
||||||
|
default: false
|
||||||
runs:
|
runs:
|
||||||
using: "node20"
|
using: "node20"
|
||||||
main: "dist/index.js"
|
main: "dist/index.js"
|
||||||
|
|
321
dist/index.js
generated
vendored
321
dist/index.js
generated
vendored
|
@ -39513,7 +39513,7 @@ module.exports =
|
||||||
{
|
{
|
||||||
parallel : __nccwpck_require__(644),
|
parallel : __nccwpck_require__(644),
|
||||||
serial : __nccwpck_require__(4501),
|
serial : __nccwpck_require__(4501),
|
||||||
serialOrdered : __nccwpck_require__(2362)
|
serialOrdered : __nccwpck_require__(3958)
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -39844,7 +39844,7 @@ function parallel(list, iterator, callback)
|
||||||
/***/ 4501:
|
/***/ 4501:
|
||||||
/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
|
/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
|
||||||
|
|
||||||
var serialOrdered = __nccwpck_require__(2362);
|
var serialOrdered = __nccwpck_require__(3958);
|
||||||
|
|
||||||
// Public API
|
// Public API
|
||||||
module.exports = serial;
|
module.exports = serial;
|
||||||
|
@ -39865,7 +39865,7 @@ function serial(list, iterator, callback)
|
||||||
|
|
||||||
/***/ }),
|
/***/ }),
|
||||||
|
|
||||||
/***/ 2362:
|
/***/ 3958:
|
||||||
/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
|
/***/ ((module, __unused_webpack_exports, __nccwpck_require__) => {
|
||||||
|
|
||||||
var iterate = __nccwpck_require__(5748)
|
var iterate = __nccwpck_require__(5748)
|
||||||
|
@ -93700,6 +93700,8 @@ const got = source_create(defaults);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
;// CONCATENATED MODULE: external "node:child_process"
|
||||||
|
const external_node_child_process_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:child_process");
|
||||||
;// CONCATENATED MODULE: external "node:fs/promises"
|
;// CONCATENATED MODULE: external "node:fs/promises"
|
||||||
const promises_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:fs/promises");
|
const promises_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:fs/promises");
|
||||||
;// CONCATENATED MODULE: external "node:path"
|
;// CONCATENATED MODULE: external "node:path"
|
||||||
|
@ -93708,7 +93710,7 @@ const external_node_path_namespaceObject = __WEBPACK_EXTERNAL_createRequire(impo
|
||||||
const external_node_stream_promises_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:stream/promises");
|
const external_node_stream_promises_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:stream/promises");
|
||||||
;// CONCATENATED MODULE: external "node:zlib"
|
;// CONCATENATED MODULE: external "node:zlib"
|
||||||
const external_node_zlib_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:zlib");
|
const external_node_zlib_namespaceObject = __WEBPACK_EXTERNAL_createRequire(import.meta.url)("node:zlib");
|
||||||
;// CONCATENATED MODULE: ./node_modules/.pnpm/github.com+DeterminateSystems+detsys-ts@97979f48241e807d76bd9b8cbfc69a245f04894b_pj2fuot4efihj4fvjjgwov2aue/node_modules/detsys-ts/dist/index.js
|
;// CONCATENATED MODULE: ./node_modules/.pnpm/github.com+DeterminateSystems+detsys-ts@ed02129aed8e4d6402d920152652877189bece70_3whmnlhrx56zhgtsjnkrhnutfu/node_modules/detsys-ts/dist/index.js
|
||||||
var __defProp = Object.defineProperty;
|
var __defProp = Object.defineProperty;
|
||||||
var __export = (target, all) => {
|
var __export = (target, all) => {
|
||||||
for (var name in all)
|
for (var name in all)
|
||||||
|
@ -94012,45 +94014,6 @@ function hashEnvironmentVariables(prefix, variables) {
|
||||||
return `${prefix}-${hash.digest("hex")}`;
|
return `${prefix}-${hash.digest("hex")}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
// src/platform.ts
|
|
||||||
var platform_exports = {};
|
|
||||||
__export(platform_exports, {
|
|
||||||
getArchOs: () => getArchOs,
|
|
||||||
getNixPlatform: () => getNixPlatform
|
|
||||||
});
|
|
||||||
|
|
||||||
function getArchOs() {
|
|
||||||
const envArch = process.env.RUNNER_ARCH;
|
|
||||||
const envOs = process.env.RUNNER_OS;
|
|
||||||
if (envArch && envOs) {
|
|
||||||
return `${envArch}-${envOs}`;
|
|
||||||
} else {
|
|
||||||
core.error(
|
|
||||||
`Can't identify the platform: RUNNER_ARCH or RUNNER_OS undefined (${envArch}-${envOs})`
|
|
||||||
);
|
|
||||||
throw new Error("RUNNER_ARCH and/or RUNNER_OS is not defined");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
function getNixPlatform(archOs) {
|
|
||||||
const archOsMap = /* @__PURE__ */ new Map([
|
|
||||||
["X64-macOS", "x86_64-darwin"],
|
|
||||||
["ARM64-macOS", "aarch64-darwin"],
|
|
||||||
["X64-Linux", "x86_64-linux"],
|
|
||||||
["ARM64-Linux", "aarch64-linux"]
|
|
||||||
]);
|
|
||||||
const mappedTo = archOsMap.get(archOs);
|
|
||||||
if (mappedTo) {
|
|
||||||
return mappedTo;
|
|
||||||
} else {
|
|
||||||
core.error(
|
|
||||||
`ArchOs (${archOs}) doesn't map to a supported Nix platform.`
|
|
||||||
);
|
|
||||||
throw new Error(
|
|
||||||
`Cannot convert ArchOs (${archOs}) to a supported Nix platform.`
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// src/inputs.ts
|
// src/inputs.ts
|
||||||
var inputs_exports = {};
|
var inputs_exports = {};
|
||||||
__export(inputs_exports, {
|
__export(inputs_exports, {
|
||||||
|
@ -94115,6 +94078,45 @@ var getStringOrUndefined = (name) => {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// src/platform.ts
|
||||||
|
var platform_exports = {};
|
||||||
|
__export(platform_exports, {
|
||||||
|
getArchOs: () => getArchOs,
|
||||||
|
getNixPlatform: () => getNixPlatform
|
||||||
|
});
|
||||||
|
|
||||||
|
function getArchOs() {
|
||||||
|
const envArch = process.env.RUNNER_ARCH;
|
||||||
|
const envOs = process.env.RUNNER_OS;
|
||||||
|
if (envArch && envOs) {
|
||||||
|
return `${envArch}-${envOs}`;
|
||||||
|
} else {
|
||||||
|
core.error(
|
||||||
|
`Can't identify the platform: RUNNER_ARCH or RUNNER_OS undefined (${envArch}-${envOs})`
|
||||||
|
);
|
||||||
|
throw new Error("RUNNER_ARCH and/or RUNNER_OS is not defined");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function getNixPlatform(archOs) {
|
||||||
|
const archOsMap = /* @__PURE__ */ new Map([
|
||||||
|
["X64-macOS", "x86_64-darwin"],
|
||||||
|
["ARM64-macOS", "aarch64-darwin"],
|
||||||
|
["X64-Linux", "x86_64-linux"],
|
||||||
|
["ARM64-Linux", "aarch64-linux"]
|
||||||
|
]);
|
||||||
|
const mappedTo = archOsMap.get(archOs);
|
||||||
|
if (mappedTo) {
|
||||||
|
return mappedTo;
|
||||||
|
} else {
|
||||||
|
core.error(
|
||||||
|
`ArchOs (${archOs}) doesn't map to a supported Nix platform.`
|
||||||
|
);
|
||||||
|
throw new Error(
|
||||||
|
`Cannot convert ArchOs (${archOs}) to a supported Nix platform.`
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// src/sourcedef.ts
|
// src/sourcedef.ts
|
||||||
|
|
||||||
function constructSourceParameters(legacyPrefix) {
|
function constructSourceParameters(legacyPrefix) {
|
||||||
|
@ -94161,27 +94163,44 @@ function noisilyGetInput(suffix, legacyPrefix) {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
var DEFAULT_IDS_HOST = "https://install.determinate.systems";
|
var DEFAULT_IDS_HOST = "https://install.determinate.systems";
|
||||||
var IDS_HOST = process.env["IDS_HOST"] ?? DEFAULT_IDS_HOST;
|
var IDS_HOST = process.env["IDS_HOST"] ?? DEFAULT_IDS_HOST;
|
||||||
var EVENT_EXCEPTION = "exception";
|
var EVENT_EXCEPTION = "exception";
|
||||||
var EVENT_ARTIFACT_CACHE_HIT = "artifact_cache_hit";
|
var EVENT_ARTIFACT_CACHE_HIT = "artifact_cache_hit";
|
||||||
var EVENT_ARTIFACT_CACHE_MISS = "artifact_cache_miss";
|
var EVENT_ARTIFACT_CACHE_MISS = "artifact_cache_miss";
|
||||||
var EVENT_ARTIFACT_CACHE_PERSIST = "artifact_cache_persist";
|
var EVENT_ARTIFACT_CACHE_PERSIST = "artifact_cache_persist";
|
||||||
|
var EVENT_PREFLIGHT_REQUIRE_NIX_DENIED = "preflight-require-nix-denied";
|
||||||
var FACT_ENDED_WITH_EXCEPTION = "ended_with_exception";
|
var FACT_ENDED_WITH_EXCEPTION = "ended_with_exception";
|
||||||
var FACT_FINAL_EXCEPTION = "final_exception";
|
var FACT_FINAL_EXCEPTION = "final_exception";
|
||||||
|
var FACT_OS = "$os";
|
||||||
|
var FACT_OS_VERSION = "$os_version";
|
||||||
var FACT_SOURCE_URL = "source_url";
|
var FACT_SOURCE_URL = "source_url";
|
||||||
var FACT_SOURCE_URL_ETAG = "source_url_etag";
|
var FACT_SOURCE_URL_ETAG = "source_url_etag";
|
||||||
|
var FACT_NIX_LOCATION = "nix_location";
|
||||||
var FACT_NIX_STORE_TRUST = "nix_store_trusted";
|
var FACT_NIX_STORE_TRUST = "nix_store_trusted";
|
||||||
var FACT_NIX_STORE_VERSION = "nix_store_version";
|
var FACT_NIX_STORE_VERSION = "nix_store_version";
|
||||||
var FACT_NIX_STORE_CHECK_METHOD = "nix_store_check_method";
|
var FACT_NIX_STORE_CHECK_METHOD = "nix_store_check_method";
|
||||||
var FACT_NIX_STORE_CHECK_ERROR = "nix_store_check_error";
|
var FACT_NIX_STORE_CHECK_ERROR = "nix_store_check_error";
|
||||||
var IdsToolbox = class {
|
var STATE_KEY_EXECUTION_PHASE = "detsys_action_execution_phase";
|
||||||
|
var STATE_KEY_NIX_NOT_FOUND = "detsys_action_nix_not_found";
|
||||||
|
var STATE_NOT_FOUND = "not-found";
|
||||||
|
var DetSysAction = class {
|
||||||
|
determineExecutionPhase() {
|
||||||
|
const currentPhase = core.getState(STATE_KEY_EXECUTION_PHASE);
|
||||||
|
if (currentPhase === "") {
|
||||||
|
core.saveState(STATE_KEY_EXECUTION_PHASE, "post");
|
||||||
|
return "main";
|
||||||
|
} else {
|
||||||
|
return "post";
|
||||||
|
}
|
||||||
|
}
|
||||||
constructor(actionOptions) {
|
constructor(actionOptions) {
|
||||||
this.actionOptions = makeOptionsConfident(actionOptions);
|
this.actionOptions = makeOptionsConfident(actionOptions);
|
||||||
this.hookMain = void 0;
|
|
||||||
this.hookPost = void 0;
|
|
||||||
this.exceptionAttachments = /* @__PURE__ */ new Map();
|
this.exceptionAttachments = /* @__PURE__ */ new Map();
|
||||||
this.nixStoreTrust = "unknown";
|
this.nixStoreTrust = "unknown";
|
||||||
|
this.strictMode = getBool("_internal-strict-mode");
|
||||||
this.events = [];
|
this.events = [];
|
||||||
this.client = got_dist_source.extend({
|
this.client = got_dist_source.extend({
|
||||||
retry: {
|
retry: {
|
||||||
|
@ -94225,25 +94244,19 @@ var IdsToolbox = class {
|
||||||
{
|
{
|
||||||
getDetails().then((details) => {
|
getDetails().then((details) => {
|
||||||
if (details.name !== "unknown") {
|
if (details.name !== "unknown") {
|
||||||
this.addFact("$os", details.name);
|
this.addFact(FACT_OS, details.name);
|
||||||
}
|
}
|
||||||
if (details.version !== "unknown") {
|
if (details.version !== "unknown") {
|
||||||
this.addFact("$os_version", details.version);
|
this.addFact(FACT_OS_VERSION, details.version);
|
||||||
}
|
}
|
||||||
}).catch((e) => {
|
}).catch((e) => {
|
||||||
core.debug(`Failure getting platform details: ${e}`);
|
core.debug(
|
||||||
|
`Failure getting platform details: ${stringifyError(e)}`
|
||||||
|
);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
{
|
this.executionPhase = this.determineExecutionPhase();
|
||||||
const phase = core.getState("idstoolbox_execution_phase");
|
this.facts.execution_phase = this.executionPhase;
|
||||||
if (phase === "") {
|
|
||||||
core.saveState("idstoolbox_execution_phase", "post");
|
|
||||||
this.executionPhase = "main";
|
|
||||||
} else {
|
|
||||||
this.executionPhase = "post";
|
|
||||||
}
|
|
||||||
this.facts.execution_phase = this.executionPhase;
|
|
||||||
}
|
|
||||||
if (this.actionOptions.fetchStyle === "gh-env-style") {
|
if (this.actionOptions.fetchStyle === "gh-env-style") {
|
||||||
this.architectureFetchSuffix = this.archOs;
|
this.architectureFetchSuffix = this.archOs;
|
||||||
} else if (this.actionOptions.fetchStyle === "nix-style") {
|
} else if (this.actionOptions.fetchStyle === "nix-style") {
|
||||||
|
@ -94271,20 +94284,31 @@ var IdsToolbox = class {
|
||||||
stapleFile(name, location) {
|
stapleFile(name, location) {
|
||||||
this.exceptionAttachments.set(name, location);
|
this.exceptionAttachments.set(name, location);
|
||||||
}
|
}
|
||||||
onMain(callback) {
|
setExecutionPhase() {
|
||||||
this.hookMain = callback;
|
const phase = core.getState(STATE_KEY_EXECUTION_PHASE);
|
||||||
}
|
if (phase === "") {
|
||||||
onPost(callback) {
|
core.saveState(STATE_KEY_EXECUTION_PHASE, "post");
|
||||||
this.hookPost = callback;
|
this.executionPhase = "main";
|
||||||
|
} else {
|
||||||
|
this.executionPhase = "post";
|
||||||
|
}
|
||||||
|
this.facts.execution_phase = this.executionPhase;
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* Execute the Action as defined.
|
||||||
|
*/
|
||||||
execute() {
|
execute() {
|
||||||
this.executeAsync().catch((error2) => {
|
this.executeAsync().catch((error2) => {
|
||||||
console.log(error2);
|
console.log(error2);
|
||||||
process.exitCode = 1;
|
process.exitCode = 1;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
stringifyError(error2) {
|
// Whether the
|
||||||
return error2 instanceof Error || typeof error2 == "string" ? error2.toString() : JSON.stringify(error2);
|
get isMain() {
|
||||||
|
return this.executionPhase === "main";
|
||||||
|
}
|
||||||
|
get isPost() {
|
||||||
|
return this.executionPhase === "post";
|
||||||
}
|
}
|
||||||
async executeAsync() {
|
async executeAsync() {
|
||||||
try {
|
try {
|
||||||
|
@ -94292,41 +94316,41 @@ var IdsToolbox = class {
|
||||||
this.getCorrelationHashes()
|
this.getCorrelationHashes()
|
||||||
);
|
);
|
||||||
if (!await this.preflightRequireNix()) {
|
if (!await this.preflightRequireNix()) {
|
||||||
this.recordEvent("preflight-require-nix-denied");
|
this.recordEvent(EVENT_PREFLIGHT_REQUIRE_NIX_DENIED);
|
||||||
return;
|
return;
|
||||||
} else {
|
} else {
|
||||||
await this.preflightNixStoreInfo();
|
await this.preflightNixStoreInfo();
|
||||||
this.addFact(FACT_NIX_STORE_TRUST, this.nixStoreTrust);
|
this.addFact(FACT_NIX_STORE_TRUST, this.nixStoreTrust);
|
||||||
}
|
}
|
||||||
if (this.executionPhase === "main" && this.hookMain) {
|
if (this.isMain) {
|
||||||
await this.hookMain();
|
await this.main();
|
||||||
} else if (this.executionPhase === "post" && this.hookPost) {
|
} else if (this.isPost) {
|
||||||
await this.hookPost();
|
await this.post();
|
||||||
}
|
}
|
||||||
this.addFact(FACT_ENDED_WITH_EXCEPTION, false);
|
this.addFact(FACT_ENDED_WITH_EXCEPTION, false);
|
||||||
} catch (error2) {
|
} catch (e) {
|
||||||
this.addFact(FACT_ENDED_WITH_EXCEPTION, true);
|
this.addFact(FACT_ENDED_WITH_EXCEPTION, true);
|
||||||
const reportable = this.stringifyError(error2);
|
const reportable = stringifyError(e);
|
||||||
this.addFact(FACT_FINAL_EXCEPTION, reportable);
|
this.addFact(FACT_FINAL_EXCEPTION, reportable);
|
||||||
if (this.executionPhase === "post") {
|
if (this.isPost) {
|
||||||
core.warning(reportable);
|
core.warning(reportable);
|
||||||
} else {
|
} else {
|
||||||
core.setFailed(reportable);
|
core.setFailed(reportable);
|
||||||
}
|
}
|
||||||
const do_gzip = (0,external_node_util_.promisify)(external_node_zlib_namespaceObject.gzip);
|
const doGzip = (0,external_node_util_.promisify)(external_node_zlib_namespaceObject.gzip);
|
||||||
const exceptionContext = /* @__PURE__ */ new Map();
|
const exceptionContext = /* @__PURE__ */ new Map();
|
||||||
for (const [attachmentLabel, filePath] of this.exceptionAttachments) {
|
for (const [attachmentLabel, filePath] of this.exceptionAttachments) {
|
||||||
try {
|
try {
|
||||||
const logText = (0,external_node_fs_namespaceObject.readFileSync)(filePath);
|
const logText = (0,external_node_fs_namespaceObject.readFileSync)(filePath);
|
||||||
const buf = await do_gzip(logText);
|
const buf = await doGzip(logText);
|
||||||
exceptionContext.set(
|
exceptionContext.set(
|
||||||
`staple_value_${attachmentLabel}`,
|
`staple_value_${attachmentLabel}`,
|
||||||
buf.toString("base64")
|
buf.toString("base64")
|
||||||
);
|
);
|
||||||
} catch (e) {
|
} catch (innerError) {
|
||||||
exceptionContext.set(
|
exceptionContext.set(
|
||||||
`staple_failure_${attachmentLabel}`,
|
`staple_failure_${attachmentLabel}`,
|
||||||
this.stringifyError(e)
|
stringifyError(innerError)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -94357,7 +94381,24 @@ var IdsToolbox = class {
|
||||||
uuid: (0,external_node_crypto_namespaceObject.randomUUID)()
|
uuid: (0,external_node_crypto_namespaceObject.randomUUID)()
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
async fetch() {
|
/**
|
||||||
|
* Fetches a file in `.xz` format, imports its contents into the Nix store,
|
||||||
|
* and returns the path of the executable at `/nix/store/STORE_PATH/bin/${bin}`.
|
||||||
|
*/
|
||||||
|
async unpackClosure(bin) {
|
||||||
|
const artifact = this.fetchArtifact();
|
||||||
|
const { stdout } = await (0,external_node_util_.promisify)(external_node_child_process_namespaceObject.exec)(
|
||||||
|
`cat "${artifact}" | xz -d | nix-store --import`
|
||||||
|
);
|
||||||
|
const paths = stdout.split(external_node_os_.EOL);
|
||||||
|
const lastPath = paths.at(-2);
|
||||||
|
return `${lastPath}/bin/${bin}`;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* Fetch an artifact, such as a tarball, from the URL determined by the `source-*`
|
||||||
|
* inputs and other factors.
|
||||||
|
*/
|
||||||
|
async fetchArtifact() {
|
||||||
core.startGroup(
|
core.startGroup(
|
||||||
`Downloading ${this.actionOptions.name} for ${this.architectureFetchSuffix}`
|
`Downloading ${this.actionOptions.name} for ${this.architectureFetchSuffix}`
|
||||||
);
|
);
|
||||||
|
@ -94401,7 +94442,7 @@ var IdsToolbox = class {
|
||||||
try {
|
try {
|
||||||
await this.saveCachedVersion(v, destFile);
|
await this.saveCachedVersion(v, destFile);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
core.debug(`Error caching the artifact: ${e}`);
|
core.debug(`Error caching the artifact: ${stringifyError(e)}`);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return destFile;
|
return destFile;
|
||||||
|
@ -94409,11 +94450,24 @@ var IdsToolbox = class {
|
||||||
core.endGroup();
|
core.endGroup();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* Fetches the executable at the URL determined by the `source-*` inputs and
|
||||||
|
* other facts, `chmod`s it, and returns the path to the executable on disk.
|
||||||
|
*/
|
||||||
async fetchExecutable() {
|
async fetchExecutable() {
|
||||||
const binaryPath = await this.fetch();
|
const binaryPath = await this.fetchArtifact();
|
||||||
await (0,promises_namespaceObject.chmod)(binaryPath, promises_namespaceObject.constants.S_IXUSR | promises_namespaceObject.constants.S_IXGRP);
|
await (0,promises_namespaceObject.chmod)(binaryPath, promises_namespaceObject.constants.S_IXUSR | promises_namespaceObject.constants.S_IXGRP);
|
||||||
return binaryPath;
|
return binaryPath;
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* A helper function for failing on error only if strict mode is enabled.
|
||||||
|
* This is intended only for CI environments testing Actions themselves.
|
||||||
|
*/
|
||||||
|
failOnError(msg) {
|
||||||
|
if (this.strictMode) {
|
||||||
|
core.setFailed(`strict mode failure: ${msg}`);
|
||||||
|
}
|
||||||
|
}
|
||||||
async complete() {
|
async complete() {
|
||||||
this.recordEvent(`complete_${this.executionPhase}`);
|
this.recordEvent(`complete_${this.executionPhase}`);
|
||||||
await this.submitEvents();
|
await this.submitEvents();
|
||||||
|
@ -94507,29 +94561,33 @@ var IdsToolbox = class {
|
||||||
core.debug(`Nix not at ${candidateNix}`);
|
core.debug(`Nix not at ${candidateNix}`);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
this.addFact("nix_location", nixLocation || "");
|
this.addFact(FACT_NIX_LOCATION, nixLocation || "");
|
||||||
if (this.actionOptions.requireNix === "ignore") {
|
if (this.actionOptions.requireNix === "ignore") {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
const currentNotFoundState = core.getState(
|
const currentNotFoundState = core.getState(STATE_KEY_NIX_NOT_FOUND);
|
||||||
"idstoolbox_nix_not_found"
|
if (currentNotFoundState === STATE_NOT_FOUND) {
|
||||||
);
|
|
||||||
if (currentNotFoundState === "not-found") {
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (nixLocation !== void 0) {
|
if (nixLocation !== void 0) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
core.saveState("idstoolbox_nix_not_found", "not-found");
|
core.saveState(STATE_KEY_NIX_NOT_FOUND, STATE_NOT_FOUND);
|
||||||
switch (this.actionOptions.requireNix) {
|
switch (this.actionOptions.requireNix) {
|
||||||
case "fail":
|
case "fail":
|
||||||
core.setFailed(
|
core.setFailed(
|
||||||
"This action can only be used when Nix is installed. Add `- uses: DeterminateSystems/nix-installer-action@main` earlier in your workflow."
|
[
|
||||||
|
"This action can only be used when Nix is installed.",
|
||||||
|
"Add `- uses: DeterminateSystems/nix-installer-action@main` earlier in your workflow."
|
||||||
|
].join(" ")
|
||||||
);
|
);
|
||||||
break;
|
break;
|
||||||
case "warn":
|
case "warn":
|
||||||
core.warning(
|
core.warning(
|
||||||
"This action is in no-op mode because Nix is not installed. Add `- uses: DeterminateSystems/nix-installer-action@main` earlier in your workflow."
|
[
|
||||||
|
"This action is in no-op mode because Nix is not installed.",
|
||||||
|
"Add `- uses: DeterminateSystems/nix-installer-action@main` earlier in your workflow."
|
||||||
|
].join(" ")
|
||||||
);
|
);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -94572,11 +94630,11 @@ var IdsToolbox = class {
|
||||||
}
|
}
|
||||||
this.addFact(FACT_NIX_STORE_VERSION, JSON.stringify(parsed.version));
|
this.addFact(FACT_NIX_STORE_VERSION, JSON.stringify(parsed.version));
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
this.addFact(FACT_NIX_STORE_CHECK_ERROR, this.stringifyError(e));
|
this.addFact(FACT_NIX_STORE_CHECK_ERROR, stringifyError(e));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
async submitEvents() {
|
async submitEvents() {
|
||||||
if (!this.actionOptions.diagnosticsUrl) {
|
if (this.actionOptions.diagnosticsUrl === void 0) {
|
||||||
core.debug(
|
core.debug(
|
||||||
"Diagnostics are disabled. Not sending the following events:"
|
"Diagnostics are disabled. Not sending the following events:"
|
||||||
);
|
);
|
||||||
|
@ -94592,8 +94650,10 @@ var IdsToolbox = class {
|
||||||
await this.client.post(this.actionOptions.diagnosticsUrl, {
|
await this.client.post(this.actionOptions.diagnosticsUrl, {
|
||||||
json: batch
|
json: batch
|
||||||
});
|
});
|
||||||
} catch (error2) {
|
} catch (e) {
|
||||||
core.debug(`Error submitting diagnostics event: ${error2}`);
|
core.debug(
|
||||||
|
`Error submitting diagnostics event: ${stringifyError(e)}`
|
||||||
|
);
|
||||||
}
|
}
|
||||||
this.events = [];
|
this.events = [];
|
||||||
}
|
}
|
||||||
|
@ -94602,6 +94662,9 @@ var IdsToolbox = class {
|
||||||
return external_node_path_namespaceObject.join(_tmpdir, `${this.actionOptions.name}-${(0,external_node_crypto_namespaceObject.randomUUID)()}`);
|
return external_node_path_namespaceObject.join(_tmpdir, `${this.actionOptions.name}-${(0,external_node_crypto_namespaceObject.randomUUID)()}`);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
function stringifyError(error2) {
|
||||||
|
return error2 instanceof Error || typeof error2 == "string" ? error2.toString() : JSON.stringify(error2);
|
||||||
|
}
|
||||||
function makeOptionsConfident(actionOptions) {
|
function makeOptionsConfident(actionOptions) {
|
||||||
const idsProjectName = actionOptions.idsProjectName ?? actionOptions.name;
|
const idsProjectName = actionOptions.idsProjectName ?? actionOptions.name;
|
||||||
const finalOpts = {
|
const finalOpts = {
|
||||||
|
@ -94637,7 +94700,7 @@ function determineDiagnosticsUrl(idsProjectName, urlOption) {
|
||||||
return mungeDiagnosticEndpoint(new URL(providedDiagnosticEndpoint));
|
return mungeDiagnosticEndpoint(new URL(providedDiagnosticEndpoint));
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
core.info(
|
core.info(
|
||||||
`User-provided diagnostic endpoint ignored: not a valid URL: ${e}`
|
`User-provided diagnostic endpoint ignored: not a valid URL: ${stringifyError(e)}`
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -94649,7 +94712,7 @@ function determineDiagnosticsUrl(idsProjectName, urlOption) {
|
||||||
return diagnosticUrl;
|
return diagnosticUrl;
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
core.info(
|
core.info(
|
||||||
`Generated diagnostic endpoint ignored: not a valid URL: ${e}`
|
`Generated diagnostic endpoint ignored: not a valid URL: ${stringifyError(e)}`
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
return void 0;
|
return void 0;
|
||||||
|
@ -94670,7 +94733,9 @@ function mungeDiagnosticEndpoint(inputUrl) {
|
||||||
inputUrl.password = currentIdsHost.password;
|
inputUrl.password = currentIdsHost.password;
|
||||||
return inputUrl;
|
return inputUrl;
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
core.info(`Default or overridden IDS host isn't a valid URL: ${e}`);
|
core.info(
|
||||||
|
`Default or overridden IDS host isn't a valid URL: ${stringifyError(e)}`
|
||||||
|
);
|
||||||
}
|
}
|
||||||
return inputUrl;
|
return inputUrl;
|
||||||
}
|
}
|
||||||
|
@ -94692,9 +94757,9 @@ function mungeDiagnosticEndpoint(inputUrl) {
|
||||||
|
|
||||||
|
|
||||||
var EVENT_EXECUTION_FAILURE = "execution_failure";
|
var EVENT_EXECUTION_FAILURE = "execution_failure";
|
||||||
var FlakeCheckerAction = class {
|
var FlakeCheckerAction = class extends DetSysAction {
|
||||||
constructor() {
|
constructor() {
|
||||||
const options = {
|
super({
|
||||||
name: "flake-checker",
|
name: "flake-checker",
|
||||||
fetchStyle: "gh-env-style",
|
fetchStyle: "gh-env-style",
|
||||||
diagnosticsUrl: new URL(
|
diagnosticsUrl: new URL(
|
||||||
|
@ -94702,8 +94767,7 @@ var FlakeCheckerAction = class {
|
||||||
),
|
),
|
||||||
// We don't need Nix in this Action because we fetch a static binary using curl and run it
|
// We don't need Nix in this Action because we fetch a static binary using curl and run it
|
||||||
requireNix: "ignore"
|
requireNix: "ignore"
|
||||||
};
|
});
|
||||||
this.idslib = new IdsToolbox(options);
|
|
||||||
this.flakeLockPath = inputs_exports.getString("flake-lock-path");
|
this.flakeLockPath = inputs_exports.getString("flake-lock-path");
|
||||||
this.nixpkgsKeys = inputs_exports.getString("nixpkgs-keys");
|
this.nixpkgsKeys = inputs_exports.getString("nixpkgs-keys");
|
||||||
this.checkOutdated = inputs_exports.getBool("check-outdated");
|
this.checkOutdated = inputs_exports.getBool("check-outdated");
|
||||||
|
@ -94713,6 +94777,34 @@ var FlakeCheckerAction = class {
|
||||||
this.failMode = inputs_exports.getBool("fail-mode");
|
this.failMode = inputs_exports.getBool("fail-mode");
|
||||||
this.sendStatistics = inputs_exports.getBool("send-statistics");
|
this.sendStatistics = inputs_exports.getBool("send-statistics");
|
||||||
}
|
}
|
||||||
|
async main() {
|
||||||
|
await this.checkFlake();
|
||||||
|
}
|
||||||
|
// No post step
|
||||||
|
async post() {
|
||||||
|
}
|
||||||
|
async checkFlake() {
|
||||||
|
const binaryPath = await this.fetchExecutable();
|
||||||
|
const executionEnv = await this.executionEnvironment();
|
||||||
|
core.debug(
|
||||||
|
`Execution environment: ${JSON.stringify(executionEnv, null, 4)}`
|
||||||
|
);
|
||||||
|
const exitCode = await exec.exec(binaryPath, [], {
|
||||||
|
env: {
|
||||||
|
...executionEnv,
|
||||||
|
...process.env
|
||||||
|
// To get $PATH, etc
|
||||||
|
},
|
||||||
|
ignoreReturnCode: true
|
||||||
|
});
|
||||||
|
if (exitCode !== 0) {
|
||||||
|
this.recordEvent(EVENT_EXECUTION_FAILURE, {
|
||||||
|
exitCode
|
||||||
|
});
|
||||||
|
core.setFailed(`Non-zero exit code of \`${exitCode}\`.`);
|
||||||
|
}
|
||||||
|
return exitCode;
|
||||||
|
}
|
||||||
async executionEnvironment() {
|
async executionEnvironment() {
|
||||||
const executionEnv = {};
|
const executionEnv = {};
|
||||||
executionEnv.NIX_FLAKE_CHECKER_FLAKE_LOCK_PATH = this.flakeLockPath;
|
executionEnv.NIX_FLAKE_CHECKER_FLAKE_LOCK_PATH = this.flakeLockPath;
|
||||||
|
@ -94737,36 +94829,9 @@ var FlakeCheckerAction = class {
|
||||||
}
|
}
|
||||||
return executionEnv;
|
return executionEnv;
|
||||||
}
|
}
|
||||||
async check() {
|
|
||||||
const sourceBinary = inputs_exports.getStringOrNull("source-binary");
|
|
||||||
const binaryPath = sourceBinary !== null && sourceBinary !== "" ? sourceBinary : await this.idslib.fetchExecutable();
|
|
||||||
const executionEnv = await this.executionEnvironment();
|
|
||||||
core.debug(
|
|
||||||
`Execution environment: ${JSON.stringify(executionEnv, null, 4)}`
|
|
||||||
);
|
|
||||||
const exitCode = await exec.exec(binaryPath, [], {
|
|
||||||
env: {
|
|
||||||
...executionEnv,
|
|
||||||
...process.env
|
|
||||||
// To get $PATH, etc
|
|
||||||
},
|
|
||||||
ignoreReturnCode: true
|
|
||||||
});
|
|
||||||
if (exitCode !== 0) {
|
|
||||||
this.idslib.recordEvent(EVENT_EXECUTION_FAILURE, {
|
|
||||||
exitCode
|
|
||||||
});
|
|
||||||
core.setFailed(`Non-zero exit code of \`${exitCode}\`.`);
|
|
||||||
}
|
|
||||||
return exitCode;
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
function main() {
|
function main() {
|
||||||
const checker = new FlakeCheckerAction();
|
new FlakeCheckerAction().execute();
|
||||||
checker.idslib.onMain(async () => {
|
|
||||||
await checker.check();
|
|
||||||
});
|
|
||||||
checker.idslib.execute();
|
|
||||||
}
|
}
|
||||||
main();
|
main();
|
||||||
//# sourceMappingURL=index.js.map
|
//# sourceMappingURL=index.js.map
|
||||||
|
|
2
dist/index.js.map
generated
vendored
2
dist/index.js.map
generated
vendored
File diff suppressed because one or more lines are too long
|
@ -31,7 +31,7 @@
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@trivago/prettier-plugin-sort-imports": "^4.3.0",
|
"@trivago/prettier-plugin-sort-imports": "^4.3.0",
|
||||||
"@types/node": "^20.12.12",
|
"@types/node": "^20.12.12",
|
||||||
"@typescript-eslint/eslint-plugin": "^7.9.0",
|
"@typescript-eslint/eslint-plugin": "^7.10.0",
|
||||||
"@vercel/ncc": "^0.38.1",
|
"@vercel/ncc": "^0.38.1",
|
||||||
"eslint": "^8.57.0",
|
"eslint": "^8.57.0",
|
||||||
"eslint-import-resolver-typescript": "^3.6.1",
|
"eslint-import-resolver-typescript": "^3.6.1",
|
||||||
|
|
260
pnpm-lock.yaml
generated
260
pnpm-lock.yaml
generated
|
@ -13,7 +13,7 @@ dependencies:
|
||||||
version: 1.1.1
|
version: 1.1.1
|
||||||
detsys-ts:
|
detsys-ts:
|
||||||
specifier: github:DeterminateSystems/detsys-ts
|
specifier: github:DeterminateSystems/detsys-ts
|
||||||
version: github.com/DeterminateSystems/detsys-ts/97979f48241e807d76bd9b8cbfc69a245f04894b
|
version: github.com/DeterminateSystems/detsys-ts/ed02129aed8e4d6402d920152652877189bece70
|
||||||
|
|
||||||
devDependencies:
|
devDependencies:
|
||||||
'@trivago/prettier-plugin-sort-imports':
|
'@trivago/prettier-plugin-sort-imports':
|
||||||
|
@ -23,8 +23,8 @@ devDependencies:
|
||||||
specifier: ^20.12.12
|
specifier: ^20.12.12
|
||||||
version: 20.12.12
|
version: 20.12.12
|
||||||
'@typescript-eslint/eslint-plugin':
|
'@typescript-eslint/eslint-plugin':
|
||||||
specifier: ^7.9.0
|
specifier: ^7.10.0
|
||||||
version: 7.9.0(@typescript-eslint/parser@7.9.0)(eslint@8.57.0)(typescript@5.4.5)
|
version: 7.10.0(@typescript-eslint/parser@7.10.0)(eslint@8.57.0)(typescript@5.4.5)
|
||||||
'@vercel/ncc':
|
'@vercel/ncc':
|
||||||
specifier: ^0.38.1
|
specifier: ^0.38.1
|
||||||
version: 0.38.1
|
version: 0.38.1
|
||||||
|
@ -33,13 +33,13 @@ devDependencies:
|
||||||
version: 8.57.0
|
version: 8.57.0
|
||||||
eslint-import-resolver-typescript:
|
eslint-import-resolver-typescript:
|
||||||
specifier: ^3.6.1
|
specifier: ^3.6.1
|
||||||
version: 3.6.1(@typescript-eslint/parser@7.9.0)(eslint-plugin-import@2.29.1)(eslint@8.57.0)
|
version: 3.6.1(@typescript-eslint/parser@7.10.0)(eslint-plugin-import@2.29.1)(eslint@8.57.0)
|
||||||
eslint-plugin-github:
|
eslint-plugin-github:
|
||||||
specifier: ^4.10.2
|
specifier: ^4.10.2
|
||||||
version: 4.10.2(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)(typescript@5.4.5)
|
version: 4.10.2(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)(typescript@5.4.5)
|
||||||
eslint-plugin-import:
|
eslint-plugin-import:
|
||||||
specifier: ^2.29.1
|
specifier: ^2.29.1
|
||||||
version: 2.29.1(@typescript-eslint/parser@7.9.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
|
version: 2.29.1(@typescript-eslint/parser@7.10.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
|
||||||
eslint-plugin-prettier:
|
eslint-plugin-prettier:
|
||||||
specifier: ^5.1.3
|
specifier: ^5.1.3
|
||||||
version: 5.1.3(eslint-config-prettier@9.1.0)(eslint@8.57.0)(prettier@3.2.5)
|
version: 5.1.3(eslint-config-prettier@9.1.0)(eslint@8.57.0)(prettier@3.2.5)
|
||||||
|
@ -705,128 +705,128 @@ packages:
|
||||||
engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
|
engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/@rollup/rollup-android-arm-eabi@4.17.2:
|
/@rollup/rollup-android-arm-eabi@4.18.0:
|
||||||
resolution: {integrity: sha512-NM0jFxY8bB8QLkoKxIQeObCaDlJKewVlIEkuyYKm5An1tdVZ966w2+MPQ2l8LBZLjR+SgyV+nRkTIunzOYBMLQ==}
|
resolution: {integrity: sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ==}
|
||||||
cpu: [arm]
|
cpu: [arm]
|
||||||
os: [android]
|
os: [android]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
dev: true
|
dev: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@rollup/rollup-android-arm64@4.17.2:
|
/@rollup/rollup-android-arm64@4.18.0:
|
||||||
resolution: {integrity: sha512-yeX/Usk7daNIVwkq2uGoq2BYJKZY1JfyLTaHO/jaiSwi/lsf8fTFoQW/n6IdAsx5tx+iotu2zCJwz8MxI6D/Bw==}
|
resolution: {integrity: sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA==}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [android]
|
os: [android]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
dev: true
|
dev: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@rollup/rollup-darwin-arm64@4.17.2:
|
/@rollup/rollup-darwin-arm64@4.18.0:
|
||||||
resolution: {integrity: sha512-kcMLpE6uCwls023+kknm71ug7MZOrtXo+y5p/tsg6jltpDtgQY1Eq5sGfHcQfb+lfuKwhBmEURDga9N0ol4YPw==}
|
resolution: {integrity: sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [darwin]
|
os: [darwin]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
dev: true
|
dev: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@rollup/rollup-darwin-x64@4.17.2:
|
/@rollup/rollup-darwin-x64@4.18.0:
|
||||||
resolution: {integrity: sha512-AtKwD0VEx0zWkL0ZjixEkp5tbNLzX+FCqGG1SvOu993HnSz4qDI6S4kGzubrEJAljpVkhRSlg5bzpV//E6ysTQ==}
|
resolution: {integrity: sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA==}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [darwin]
|
os: [darwin]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
dev: true
|
dev: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@rollup/rollup-linux-arm-gnueabihf@4.17.2:
|
/@rollup/rollup-linux-arm-gnueabihf@4.18.0:
|
||||||
resolution: {integrity: sha512-3reX2fUHqN7sffBNqmEyMQVj/CKhIHZd4y631duy0hZqI8Qoqf6lTtmAKvJFYa6bhU95B1D0WgzHkmTg33In0A==}
|
resolution: {integrity: sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA==}
|
||||||
cpu: [arm]
|
cpu: [arm]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
dev: true
|
dev: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@rollup/rollup-linux-arm-musleabihf@4.17.2:
|
/@rollup/rollup-linux-arm-musleabihf@4.18.0:
|
||||||
resolution: {integrity: sha512-uSqpsp91mheRgw96xtyAGP9FW5ChctTFEoXP0r5FAzj/3ZRv3Uxjtc7taRQSaQM/q85KEKjKsZuiZM3GyUivRg==}
|
resolution: {integrity: sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A==}
|
||||||
cpu: [arm]
|
cpu: [arm]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
dev: true
|
dev: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@rollup/rollup-linux-arm64-gnu@4.17.2:
|
/@rollup/rollup-linux-arm64-gnu@4.18.0:
|
||||||
resolution: {integrity: sha512-EMMPHkiCRtE8Wdk3Qhtciq6BndLtstqZIroHiiGzB3C5LDJmIZcSzVtLRbwuXuUft1Cnv+9fxuDtDxz3k3EW2A==}
|
resolution: {integrity: sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw==}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
dev: true
|
dev: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@rollup/rollup-linux-arm64-musl@4.17.2:
|
/@rollup/rollup-linux-arm64-musl@4.18.0:
|
||||||
resolution: {integrity: sha512-NMPylUUZ1i0z/xJUIx6VUhISZDRT+uTWpBcjdv0/zkp7b/bQDF+NfnfdzuTiB1G6HTodgoFa93hp0O1xl+/UbA==}
|
resolution: {integrity: sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
dev: true
|
dev: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@rollup/rollup-linux-powerpc64le-gnu@4.17.2:
|
/@rollup/rollup-linux-powerpc64le-gnu@4.18.0:
|
||||||
resolution: {integrity: sha512-T19My13y8uYXPw/L/k0JYaX1fJKFT/PWdXiHr8mTbXWxjVF1t+8Xl31DgBBvEKclw+1b00Chg0hxE2O7bTG7GQ==}
|
resolution: {integrity: sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA==}
|
||||||
cpu: [ppc64]
|
cpu: [ppc64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
dev: true
|
dev: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@rollup/rollup-linux-riscv64-gnu@4.17.2:
|
/@rollup/rollup-linux-riscv64-gnu@4.18.0:
|
||||||
resolution: {integrity: sha512-BOaNfthf3X3fOWAB+IJ9kxTgPmMqPPH5f5k2DcCsRrBIbWnaJCgX2ll77dV1TdSy9SaXTR5iDXRL8n7AnoP5cg==}
|
resolution: {integrity: sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg==}
|
||||||
cpu: [riscv64]
|
cpu: [riscv64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
dev: true
|
dev: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@rollup/rollup-linux-s390x-gnu@4.17.2:
|
/@rollup/rollup-linux-s390x-gnu@4.18.0:
|
||||||
resolution: {integrity: sha512-W0UP/x7bnn3xN2eYMql2T/+wpASLE5SjObXILTMPUBDB/Fg/FxC+gX4nvCfPBCbNhz51C+HcqQp2qQ4u25ok6g==}
|
resolution: {integrity: sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg==}
|
||||||
cpu: [s390x]
|
cpu: [s390x]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
dev: true
|
dev: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@rollup/rollup-linux-x64-gnu@4.17.2:
|
/@rollup/rollup-linux-x64-gnu@4.18.0:
|
||||||
resolution: {integrity: sha512-Hy7pLwByUOuyaFC6mAr7m+oMC+V7qyifzs/nW2OJfC8H4hbCzOX07Ov0VFk/zP3kBsELWNFi7rJtgbKYsav9QQ==}
|
resolution: {integrity: sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w==}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
dev: true
|
dev: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@rollup/rollup-linux-x64-musl@4.17.2:
|
/@rollup/rollup-linux-x64-musl@4.18.0:
|
||||||
resolution: {integrity: sha512-h1+yTWeYbRdAyJ/jMiVw0l6fOOm/0D1vNLui9iPuqgRGnXA0u21gAqOyB5iHjlM9MMfNOm9RHCQ7zLIzT0x11Q==}
|
resolution: {integrity: sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg==}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [linux]
|
os: [linux]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
dev: true
|
dev: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@rollup/rollup-win32-arm64-msvc@4.17.2:
|
/@rollup/rollup-win32-arm64-msvc@4.18.0:
|
||||||
resolution: {integrity: sha512-tmdtXMfKAjy5+IQsVtDiCfqbynAQE/TQRpWdVataHmhMb9DCoJxp9vLcCBjEQWMiUYxO1QprH/HbY9ragCEFLA==}
|
resolution: {integrity: sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA==}
|
||||||
cpu: [arm64]
|
cpu: [arm64]
|
||||||
os: [win32]
|
os: [win32]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
dev: true
|
dev: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@rollup/rollup-win32-ia32-msvc@4.17.2:
|
/@rollup/rollup-win32-ia32-msvc@4.18.0:
|
||||||
resolution: {integrity: sha512-7II/QCSTAHuE5vdZaQEwJq2ZACkBpQDOmQsE6D6XUbnBHW8IAhm4eTufL6msLJorzrHDFv3CF8oCA/hSIRuZeQ==}
|
resolution: {integrity: sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg==}
|
||||||
cpu: [ia32]
|
cpu: [ia32]
|
||||||
os: [win32]
|
os: [win32]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
dev: true
|
dev: true
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
/@rollup/rollup-win32-x64-msvc@4.17.2:
|
/@rollup/rollup-win32-x64-msvc@4.18.0:
|
||||||
resolution: {integrity: sha512-TGGO7v7qOq4CYmSBVEYpI1Y5xDuCEnbVC5Vth8mOsW0gDSzxNrVERPc790IGHsrT2dQSimgMr9Ub3Y1Jci5/8w==}
|
resolution: {integrity: sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g==}
|
||||||
cpu: [x64]
|
cpu: [x64]
|
||||||
os: [win32]
|
os: [win32]
|
||||||
requiresBuild: true
|
requiresBuild: true
|
||||||
|
@ -899,8 +899,8 @@ packages:
|
||||||
'@types/node': 20.12.12
|
'@types/node': 20.12.12
|
||||||
dev: false
|
dev: false
|
||||||
|
|
||||||
/@typescript-eslint/eslint-plugin@7.9.0(@typescript-eslint/parser@7.9.0)(eslint@8.57.0)(typescript@5.4.5):
|
/@typescript-eslint/eslint-plugin@7.10.0(@typescript-eslint/parser@7.10.0)(eslint@8.57.0)(typescript@5.4.5):
|
||||||
resolution: {integrity: sha512-6e+X0X3sFe/G/54aC3jt0txuMTURqLyekmEHViqyA2VnxhLMpvA6nqmcjIy+Cr9tLDHPssA74BP5Mx9HQIxBEA==}
|
resolution: {integrity: sha512-PzCr+a/KAef5ZawX7nbyNwBDtM1HdLIT53aSA2DDlxmxMngZ43O8SIePOeX8H5S+FHXeI6t97mTt/dDdzY4Fyw==}
|
||||||
engines: {node: ^18.18.0 || >=20.0.0}
|
engines: {node: ^18.18.0 || >=20.0.0}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
'@typescript-eslint/parser': ^7.0.0
|
'@typescript-eslint/parser': ^7.0.0
|
||||||
|
@ -911,11 +911,11 @@ packages:
|
||||||
optional: true
|
optional: true
|
||||||
dependencies:
|
dependencies:
|
||||||
'@eslint-community/regexpp': 4.10.0
|
'@eslint-community/regexpp': 4.10.0
|
||||||
'@typescript-eslint/parser': 7.9.0(eslint@8.57.0)(typescript@5.4.5)
|
'@typescript-eslint/parser': 7.10.0(eslint@8.57.0)(typescript@5.4.5)
|
||||||
'@typescript-eslint/scope-manager': 7.9.0
|
'@typescript-eslint/scope-manager': 7.10.0
|
||||||
'@typescript-eslint/type-utils': 7.9.0(eslint@8.57.0)(typescript@5.4.5)
|
'@typescript-eslint/type-utils': 7.10.0(eslint@8.57.0)(typescript@5.4.5)
|
||||||
'@typescript-eslint/utils': 7.9.0(eslint@8.57.0)(typescript@5.4.5)
|
'@typescript-eslint/utils': 7.10.0(eslint@8.57.0)(typescript@5.4.5)
|
||||||
'@typescript-eslint/visitor-keys': 7.9.0
|
'@typescript-eslint/visitor-keys': 7.10.0
|
||||||
eslint: 8.57.0
|
eslint: 8.57.0
|
||||||
graphemer: 1.4.0
|
graphemer: 1.4.0
|
||||||
ignore: 5.3.1
|
ignore: 5.3.1
|
||||||
|
@ -926,8 +926,8 @@ packages:
|
||||||
- supports-color
|
- supports-color
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/@typescript-eslint/parser@7.9.0(eslint@8.57.0)(typescript@5.4.5):
|
/@typescript-eslint/parser@7.10.0(eslint@8.57.0)(typescript@5.4.5):
|
||||||
resolution: {integrity: sha512-qHMJfkL5qvgQB2aLvhUSXxbK7OLnDkwPzFalg458pxQgfxKDfT1ZDbHQM/I6mDIf/svlMkj21kzKuQ2ixJlatQ==}
|
resolution: {integrity: sha512-2EjZMA0LUW5V5tGQiaa2Gys+nKdfrn2xiTIBLR4fxmPmVSvgPcKNW+AE/ln9k0A4zDUti0J/GZXMDupQoI+e1w==}
|
||||||
engines: {node: ^18.18.0 || >=20.0.0}
|
engines: {node: ^18.18.0 || >=20.0.0}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
eslint: ^8.56.0
|
eslint: ^8.56.0
|
||||||
|
@ -936,10 +936,10 @@ packages:
|
||||||
typescript:
|
typescript:
|
||||||
optional: true
|
optional: true
|
||||||
dependencies:
|
dependencies:
|
||||||
'@typescript-eslint/scope-manager': 7.9.0
|
'@typescript-eslint/scope-manager': 7.10.0
|
||||||
'@typescript-eslint/types': 7.9.0
|
'@typescript-eslint/types': 7.10.0
|
||||||
'@typescript-eslint/typescript-estree': 7.9.0(typescript@5.4.5)
|
'@typescript-eslint/typescript-estree': 7.10.0(typescript@5.4.5)
|
||||||
'@typescript-eslint/visitor-keys': 7.9.0
|
'@typescript-eslint/visitor-keys': 7.10.0
|
||||||
debug: 4.3.4
|
debug: 4.3.4
|
||||||
eslint: 8.57.0
|
eslint: 8.57.0
|
||||||
typescript: 5.4.5
|
typescript: 5.4.5
|
||||||
|
@ -947,16 +947,16 @@ packages:
|
||||||
- supports-color
|
- supports-color
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/@typescript-eslint/scope-manager@7.9.0:
|
/@typescript-eslint/scope-manager@7.10.0:
|
||||||
resolution: {integrity: sha512-ZwPK4DeCDxr3GJltRz5iZejPFAAr4Wk3+2WIBaj1L5PYK5RgxExu/Y68FFVclN0y6GGwH8q+KgKRCvaTmFBbgQ==}
|
resolution: {integrity: sha512-7L01/K8W/VGl7noe2mgH0K7BE29Sq6KAbVmxurj8GGaPDZXPr8EEQ2seOeAS+mEV9DnzxBQB6ax6qQQ5C6P4xg==}
|
||||||
engines: {node: ^18.18.0 || >=20.0.0}
|
engines: {node: ^18.18.0 || >=20.0.0}
|
||||||
dependencies:
|
dependencies:
|
||||||
'@typescript-eslint/types': 7.9.0
|
'@typescript-eslint/types': 7.10.0
|
||||||
'@typescript-eslint/visitor-keys': 7.9.0
|
'@typescript-eslint/visitor-keys': 7.10.0
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/@typescript-eslint/type-utils@7.9.0(eslint@8.57.0)(typescript@5.4.5):
|
/@typescript-eslint/type-utils@7.10.0(eslint@8.57.0)(typescript@5.4.5):
|
||||||
resolution: {integrity: sha512-6Qy8dfut0PFrFRAZsGzuLoM4hre4gjzWJB6sUvdunCYZsYemTkzZNwF1rnGea326PHPT3zn5Lmg32M/xfJfByA==}
|
resolution: {integrity: sha512-D7tS4WDkJWrVkuzgm90qYw9RdgBcrWmbbRkrLA4d7Pg3w0ttVGDsvYGV19SH8gPR5L7OtcN5J1hTtyenO9xE9g==}
|
||||||
engines: {node: ^18.18.0 || >=20.0.0}
|
engines: {node: ^18.18.0 || >=20.0.0}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
eslint: ^8.56.0
|
eslint: ^8.56.0
|
||||||
|
@ -965,8 +965,8 @@ packages:
|
||||||
typescript:
|
typescript:
|
||||||
optional: true
|
optional: true
|
||||||
dependencies:
|
dependencies:
|
||||||
'@typescript-eslint/typescript-estree': 7.9.0(typescript@5.4.5)
|
'@typescript-eslint/typescript-estree': 7.10.0(typescript@5.4.5)
|
||||||
'@typescript-eslint/utils': 7.9.0(eslint@8.57.0)(typescript@5.4.5)
|
'@typescript-eslint/utils': 7.10.0(eslint@8.57.0)(typescript@5.4.5)
|
||||||
debug: 4.3.4
|
debug: 4.3.4
|
||||||
eslint: 8.57.0
|
eslint: 8.57.0
|
||||||
ts-api-utils: 1.3.0(typescript@5.4.5)
|
ts-api-utils: 1.3.0(typescript@5.4.5)
|
||||||
|
@ -975,13 +975,13 @@ packages:
|
||||||
- supports-color
|
- supports-color
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/@typescript-eslint/types@7.9.0:
|
/@typescript-eslint/types@7.10.0:
|
||||||
resolution: {integrity: sha512-oZQD9HEWQanl9UfsbGVcZ2cGaR0YT5476xfWE0oE5kQa2sNK2frxOlkeacLOTh9po4AlUT5rtkGyYM5kew0z5w==}
|
resolution: {integrity: sha512-7fNj+Ya35aNyhuqrA1E/VayQX9Elwr8NKZ4WueClR3KwJ7Xx9jcCdOrLW04h51de/+gNbyFMs+IDxh5xIwfbNg==}
|
||||||
engines: {node: ^18.18.0 || >=20.0.0}
|
engines: {node: ^18.18.0 || >=20.0.0}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/@typescript-eslint/typescript-estree@7.9.0(typescript@5.4.5):
|
/@typescript-eslint/typescript-estree@7.10.0(typescript@5.4.5):
|
||||||
resolution: {integrity: sha512-zBCMCkrb2YjpKV3LA0ZJubtKCDxLttxfdGmwZvTqqWevUPN0FZvSI26FalGFFUZU/9YQK/A4xcQF9o/VVaCKAg==}
|
resolution: {integrity: sha512-LXFnQJjL9XIcxeVfqmNj60YhatpRLt6UhdlFwAkjNc6jSUlK8zQOl1oktAP8PlWFzPQC1jny/8Bai3/HPuvN5g==}
|
||||||
engines: {node: ^18.18.0 || >=20.0.0}
|
engines: {node: ^18.18.0 || >=20.0.0}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
typescript: '*'
|
typescript: '*'
|
||||||
|
@ -989,8 +989,8 @@ packages:
|
||||||
typescript:
|
typescript:
|
||||||
optional: true
|
optional: true
|
||||||
dependencies:
|
dependencies:
|
||||||
'@typescript-eslint/types': 7.9.0
|
'@typescript-eslint/types': 7.10.0
|
||||||
'@typescript-eslint/visitor-keys': 7.9.0
|
'@typescript-eslint/visitor-keys': 7.10.0
|
||||||
debug: 4.3.4
|
debug: 4.3.4
|
||||||
globby: 11.1.0
|
globby: 11.1.0
|
||||||
is-glob: 4.0.3
|
is-glob: 4.0.3
|
||||||
|
@ -1002,27 +1002,27 @@ packages:
|
||||||
- supports-color
|
- supports-color
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/@typescript-eslint/utils@7.9.0(eslint@8.57.0)(typescript@5.4.5):
|
/@typescript-eslint/utils@7.10.0(eslint@8.57.0)(typescript@5.4.5):
|
||||||
resolution: {integrity: sha512-5KVRQCzZajmT4Ep+NEgjXCvjuypVvYHUW7RHlXzNPuak2oWpVoD1jf5xCP0dPAuNIchjC7uQyvbdaSTFaLqSdA==}
|
resolution: {integrity: sha512-olzif1Fuo8R8m/qKkzJqT7qwy16CzPRWBvERS0uvyc+DHd8AKbO4Jb7kpAvVzMmZm8TrHnI7hvjN4I05zow+tg==}
|
||||||
engines: {node: ^18.18.0 || >=20.0.0}
|
engines: {node: ^18.18.0 || >=20.0.0}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
eslint: ^8.56.0
|
eslint: ^8.56.0
|
||||||
dependencies:
|
dependencies:
|
||||||
'@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0)
|
'@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0)
|
||||||
'@typescript-eslint/scope-manager': 7.9.0
|
'@typescript-eslint/scope-manager': 7.10.0
|
||||||
'@typescript-eslint/types': 7.9.0
|
'@typescript-eslint/types': 7.10.0
|
||||||
'@typescript-eslint/typescript-estree': 7.9.0(typescript@5.4.5)
|
'@typescript-eslint/typescript-estree': 7.10.0(typescript@5.4.5)
|
||||||
eslint: 8.57.0
|
eslint: 8.57.0
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
- typescript
|
- typescript
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/@typescript-eslint/visitor-keys@7.9.0:
|
/@typescript-eslint/visitor-keys@7.10.0:
|
||||||
resolution: {integrity: sha512-iESPx2TNLDNGQLyjKhUvIKprlP49XNEK+MvIf9nIO7ZZaZdbnfWKHnXAgufpxqfA0YryH8XToi4+CjBgVnFTSQ==}
|
resolution: {integrity: sha512-9ntIVgsi6gg6FIq9xjEO4VQJvwOqA3jaBFQJ/6TK5AvEup2+cECI6Fh7QiBxmfMHXU0V0J4RyPeOU1VDNzl9cg==}
|
||||||
engines: {node: ^18.18.0 || >=20.0.0}
|
engines: {node: ^18.18.0 || >=20.0.0}
|
||||||
dependencies:
|
dependencies:
|
||||||
'@typescript-eslint/types': 7.9.0
|
'@typescript-eslint/types': 7.10.0
|
||||||
eslint-visitor-keys: 3.4.3
|
eslint-visitor-keys: 3.4.3
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
|
@ -1233,11 +1233,11 @@ packages:
|
||||||
balanced-match: 1.0.2
|
balanced-match: 1.0.2
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/braces@3.0.2:
|
/braces@3.0.3:
|
||||||
resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==}
|
resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
|
||||||
engines: {node: '>=8'}
|
engines: {node: '>=8'}
|
||||||
dependencies:
|
dependencies:
|
||||||
fill-range: 7.0.1
|
fill-range: 7.1.1
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/browserslist@4.23.0:
|
/browserslist@4.23.0:
|
||||||
|
@ -1245,8 +1245,8 @@ packages:
|
||||||
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
|
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
dependencies:
|
dependencies:
|
||||||
caniuse-lite: 1.0.30001620
|
caniuse-lite: 1.0.30001621
|
||||||
electron-to-chromium: 1.4.774
|
electron-to-chromium: 1.4.777
|
||||||
node-releases: 2.0.14
|
node-releases: 2.0.14
|
||||||
update-browserslist-db: 1.0.16(browserslist@4.23.0)
|
update-browserslist-db: 1.0.16(browserslist@4.23.0)
|
||||||
dev: true
|
dev: true
|
||||||
|
@ -1300,8 +1300,8 @@ packages:
|
||||||
engines: {node: '>=6'}
|
engines: {node: '>=6'}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/caniuse-lite@1.0.30001620:
|
/caniuse-lite@1.0.30001621:
|
||||||
resolution: {integrity: sha512-WJvYsOjd1/BYUY6SNGUosK9DUidBPDTnOARHp3fSmFO1ekdxaY6nKRttEVrfMmYi80ctS0kz1wiWmm14fVc3ew==}
|
resolution: {integrity: sha512-+NLXZiviFFKX0fk8Piwv3PfLPGtRqJeq2TiNoUff/qB5KJgwecJTvCXDpmlyP/eCI/GUEmp/h/y5j0yckiiZrA==}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/chalk@2.4.2:
|
/chalk@2.4.2:
|
||||||
|
@ -1326,7 +1326,7 @@ packages:
|
||||||
engines: {node: '>= 8.10.0'}
|
engines: {node: '>= 8.10.0'}
|
||||||
dependencies:
|
dependencies:
|
||||||
anymatch: 3.1.3
|
anymatch: 3.1.3
|
||||||
braces: 3.0.2
|
braces: 3.0.3
|
||||||
glob-parent: 5.1.2
|
glob-parent: 5.1.2
|
||||||
is-binary-path: 2.1.0
|
is-binary-path: 2.1.0
|
||||||
is-glob: 4.0.3
|
is-glob: 4.0.3
|
||||||
|
@ -1504,8 +1504,8 @@ packages:
|
||||||
resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
|
resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/electron-to-chromium@1.4.774:
|
/electron-to-chromium@1.4.777:
|
||||||
resolution: {integrity: sha512-132O1XCd7zcTkzS3FgkAzKmnBuNJjK8WjcTtNuoylj7MYbqw5eXehjQ5OK91g0zm7OTKIPeaAG4CPoRfD9M1Mg==}
|
resolution: {integrity: sha512-n02NCwLJ3wexLfK/yQeqfywCblZqLcXphzmid5e8yVPdtEcida7li0A5WQKghHNG0FeOMCzeFOzEbtAh5riXFw==}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/emoji-regex@8.0.0:
|
/emoji-regex@8.0.0:
|
||||||
|
@ -1704,7 +1704,7 @@ packages:
|
||||||
- supports-color
|
- supports-color
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.9.0)(eslint-plugin-import@2.29.1)(eslint@8.57.0):
|
/eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.10.0)(eslint-plugin-import@2.29.1)(eslint@8.57.0):
|
||||||
resolution: {integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==}
|
resolution: {integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==}
|
||||||
engines: {node: ^14.18.0 || >=16.0.0}
|
engines: {node: ^14.18.0 || >=16.0.0}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
|
@ -1714,8 +1714,8 @@ packages:
|
||||||
debug: 4.3.4
|
debug: 4.3.4
|
||||||
enhanced-resolve: 5.16.1
|
enhanced-resolve: 5.16.1
|
||||||
eslint: 8.57.0
|
eslint: 8.57.0
|
||||||
eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.9.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
|
eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.10.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
|
||||||
eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.9.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
|
eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.10.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
|
||||||
fast-glob: 3.3.2
|
fast-glob: 3.3.2
|
||||||
get-tsconfig: 4.7.5
|
get-tsconfig: 4.7.5
|
||||||
is-core-module: 2.13.1
|
is-core-module: 2.13.1
|
||||||
|
@ -1727,7 +1727,7 @@ packages:
|
||||||
- supports-color
|
- supports-color
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/eslint-module-utils@2.8.1(@typescript-eslint/parser@7.9.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0):
|
/eslint-module-utils@2.8.1(@typescript-eslint/parser@7.10.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0):
|
||||||
resolution: {integrity: sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==}
|
resolution: {integrity: sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==}
|
||||||
engines: {node: '>=4'}
|
engines: {node: '>=4'}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
|
@ -1748,11 +1748,11 @@ packages:
|
||||||
eslint-import-resolver-webpack:
|
eslint-import-resolver-webpack:
|
||||||
optional: true
|
optional: true
|
||||||
dependencies:
|
dependencies:
|
||||||
'@typescript-eslint/parser': 7.9.0(eslint@8.57.0)(typescript@5.4.5)
|
'@typescript-eslint/parser': 7.10.0(eslint@8.57.0)(typescript@5.4.5)
|
||||||
debug: 3.2.7
|
debug: 3.2.7
|
||||||
eslint: 8.57.0
|
eslint: 8.57.0
|
||||||
eslint-import-resolver-node: 0.3.9
|
eslint-import-resolver-node: 0.3.9
|
||||||
eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@7.9.0)(eslint-plugin-import@2.29.1)(eslint@8.57.0)
|
eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@7.10.0)(eslint-plugin-import@2.29.1)(eslint@8.57.0)
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- supports-color
|
- supports-color
|
||||||
dev: true
|
dev: true
|
||||||
|
@ -1796,8 +1796,8 @@ packages:
|
||||||
eslint: ^8.0.1
|
eslint: ^8.0.1
|
||||||
dependencies:
|
dependencies:
|
||||||
'@github/browserslist-config': 1.0.0
|
'@github/browserslist-config': 1.0.0
|
||||||
'@typescript-eslint/eslint-plugin': 7.9.0(@typescript-eslint/parser@7.9.0)(eslint@8.57.0)(typescript@5.4.5)
|
'@typescript-eslint/eslint-plugin': 7.10.0(@typescript-eslint/parser@7.10.0)(eslint@8.57.0)(typescript@5.4.5)
|
||||||
'@typescript-eslint/parser': 7.9.0(eslint@8.57.0)(typescript@5.4.5)
|
'@typescript-eslint/parser': 7.10.0(eslint@8.57.0)(typescript@5.4.5)
|
||||||
aria-query: 5.3.0
|
aria-query: 5.3.0
|
||||||
eslint: 8.57.0
|
eslint: 8.57.0
|
||||||
eslint-config-prettier: 9.1.0(eslint@8.57.0)
|
eslint-config-prettier: 9.1.0(eslint@8.57.0)
|
||||||
|
@ -1805,7 +1805,7 @@ packages:
|
||||||
eslint-plugin-eslint-comments: 3.2.0(eslint@8.57.0)
|
eslint-plugin-eslint-comments: 3.2.0(eslint@8.57.0)
|
||||||
eslint-plugin-filenames: 1.3.2(eslint@8.57.0)
|
eslint-plugin-filenames: 1.3.2(eslint@8.57.0)
|
||||||
eslint-plugin-i18n-text: 1.0.1(eslint@8.57.0)
|
eslint-plugin-i18n-text: 1.0.1(eslint@8.57.0)
|
||||||
eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.9.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
|
eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.10.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
|
||||||
eslint-plugin-jsx-a11y: 6.8.0(eslint@8.57.0)
|
eslint-plugin-jsx-a11y: 6.8.0(eslint@8.57.0)
|
||||||
eslint-plugin-no-only-tests: 3.1.0
|
eslint-plugin-no-only-tests: 3.1.0
|
||||||
eslint-plugin-prettier: 5.1.3(eslint-config-prettier@9.1.0)(eslint@8.57.0)(prettier@3.2.5)
|
eslint-plugin-prettier: 5.1.3(eslint-config-prettier@9.1.0)(eslint@8.57.0)(prettier@3.2.5)
|
||||||
|
@ -1829,7 +1829,7 @@ packages:
|
||||||
eslint: 8.57.0
|
eslint: 8.57.0
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.9.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0):
|
/eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.10.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0):
|
||||||
resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==}
|
resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==}
|
||||||
engines: {node: '>=4'}
|
engines: {node: '>=4'}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
|
@ -1839,7 +1839,7 @@ packages:
|
||||||
'@typescript-eslint/parser':
|
'@typescript-eslint/parser':
|
||||||
optional: true
|
optional: true
|
||||||
dependencies:
|
dependencies:
|
||||||
'@typescript-eslint/parser': 7.9.0(eslint@8.57.0)(typescript@5.4.5)
|
'@typescript-eslint/parser': 7.10.0(eslint@8.57.0)(typescript@5.4.5)
|
||||||
array-includes: 3.1.8
|
array-includes: 3.1.8
|
||||||
array.prototype.findlastindex: 1.2.5
|
array.prototype.findlastindex: 1.2.5
|
||||||
array.prototype.flat: 1.3.2
|
array.prototype.flat: 1.3.2
|
||||||
|
@ -1848,7 +1848,7 @@ packages:
|
||||||
doctrine: 2.1.0
|
doctrine: 2.1.0
|
||||||
eslint: 8.57.0
|
eslint: 8.57.0
|
||||||
eslint-import-resolver-node: 0.3.9
|
eslint-import-resolver-node: 0.3.9
|
||||||
eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.9.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
|
eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.10.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0)
|
||||||
hasown: 2.0.2
|
hasown: 2.0.2
|
||||||
is-core-module: 2.13.1
|
is-core-module: 2.13.1
|
||||||
is-glob: 4.0.3
|
is-glob: 4.0.3
|
||||||
|
@ -2054,7 +2054,7 @@ packages:
|
||||||
'@nodelib/fs.walk': 1.2.8
|
'@nodelib/fs.walk': 1.2.8
|
||||||
glob-parent: 5.1.2
|
glob-parent: 5.1.2
|
||||||
merge2: 1.4.1
|
merge2: 1.4.1
|
||||||
micromatch: 4.0.5
|
micromatch: 4.0.7
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/fast-json-stable-stringify@2.1.0:
|
/fast-json-stable-stringify@2.1.0:
|
||||||
|
@ -2078,8 +2078,8 @@ packages:
|
||||||
flat-cache: 3.2.0
|
flat-cache: 3.2.0
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/fill-range@7.0.1:
|
/fill-range@7.1.1:
|
||||||
resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
|
resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
|
||||||
engines: {node: '>=8'}
|
engines: {node: '>=8'}
|
||||||
dependencies:
|
dependencies:
|
||||||
to-regex-range: 5.0.1
|
to-regex-range: 5.0.1
|
||||||
|
@ -2231,13 +2231,13 @@ packages:
|
||||||
is-glob: 4.0.3
|
is-glob: 4.0.3
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/glob@10.3.15:
|
/glob@10.3.16:
|
||||||
resolution: {integrity: sha512-0c6RlJt1TICLyvJYIApxb8GsXoai0KUP7AxKKAtsYXdgJR1mGEUa7DgwShbdk1nly0PYoZj01xd4hzbq3fsjpw==}
|
resolution: {integrity: sha512-JDKXl1DiuuHJ6fVS2FXjownaavciiHNUU4mOvV/B793RLh05vZL1rcPnCSaOgv1hDT6RDlY7AB7ZUvFYAtPgAw==}
|
||||||
engines: {node: '>=16 || 14 >=14.18'}
|
engines: {node: '>=16 || 14 >=14.18'}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
dependencies:
|
dependencies:
|
||||||
foreground-child: 3.1.1
|
foreground-child: 3.1.1
|
||||||
jackspeak: 2.3.6
|
jackspeak: 3.1.2
|
||||||
minimatch: 9.0.4
|
minimatch: 9.0.4
|
||||||
minipass: 7.1.1
|
minipass: 7.1.1
|
||||||
path-scurry: 1.11.1
|
path-scurry: 1.11.1
|
||||||
|
@ -2622,8 +2622,8 @@ packages:
|
||||||
set-function-name: 2.0.2
|
set-function-name: 2.0.2
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/jackspeak@2.3.6:
|
/jackspeak@3.1.2:
|
||||||
resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==}
|
resolution: {integrity: sha512-kWmLKn2tRtfYMF/BakihVVRzBKOxz4gJMiL2Rj91WnAB5TPZumSH99R/Yf1qE1u4uRimvCSJfm6hnxohXeEXjQ==}
|
||||||
engines: {node: '>=14'}
|
engines: {node: '>=14'}
|
||||||
dependencies:
|
dependencies:
|
||||||
'@isaacs/cliui': 8.0.2
|
'@isaacs/cliui': 8.0.2
|
||||||
|
@ -2690,15 +2690,15 @@ packages:
|
||||||
dependencies:
|
dependencies:
|
||||||
json-buffer: 3.0.1
|
json-buffer: 3.0.1
|
||||||
|
|
||||||
/language-subtag-registry@0.3.22:
|
/language-subtag-registry@0.3.23:
|
||||||
resolution: {integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==}
|
resolution: {integrity: sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/language-tags@1.0.9:
|
/language-tags@1.0.9:
|
||||||
resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==}
|
resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==}
|
||||||
engines: {node: '>=0.10'}
|
engines: {node: '>=0.10'}
|
||||||
dependencies:
|
dependencies:
|
||||||
language-subtag-registry: 0.3.22
|
language-subtag-registry: 0.3.23
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/levn@0.4.1:
|
/levn@0.4.1:
|
||||||
|
@ -2777,11 +2777,11 @@ packages:
|
||||||
engines: {node: '>= 8'}
|
engines: {node: '>= 8'}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/micromatch@4.0.5:
|
/micromatch@4.0.7:
|
||||||
resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==}
|
resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==}
|
||||||
engines: {node: '>=8.6'}
|
engines: {node: '>=8.6'}
|
||||||
dependencies:
|
dependencies:
|
||||||
braces: 3.0.2
|
braces: 3.0.3
|
||||||
picomatch: 2.3.1
|
picomatch: 2.3.1
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
|
@ -3182,29 +3182,29 @@ packages:
|
||||||
glob: 7.2.3
|
glob: 7.2.3
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
/rollup@4.17.2:
|
/rollup@4.18.0:
|
||||||
resolution: {integrity: sha512-/9ClTJPByC0U4zNLowV1tMBe8yMEAxewtR3cUNX5BoEpGH3dQEWpJLr6CLp0fPdYRF/fzVOgvDb1zXuakwF5kQ==}
|
resolution: {integrity: sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==}
|
||||||
engines: {node: '>=18.0.0', npm: '>=8.0.0'}
|
engines: {node: '>=18.0.0', npm: '>=8.0.0'}
|
||||||
hasBin: true
|
hasBin: true
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/estree': 1.0.5
|
'@types/estree': 1.0.5
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
'@rollup/rollup-android-arm-eabi': 4.17.2
|
'@rollup/rollup-android-arm-eabi': 4.18.0
|
||||||
'@rollup/rollup-android-arm64': 4.17.2
|
'@rollup/rollup-android-arm64': 4.18.0
|
||||||
'@rollup/rollup-darwin-arm64': 4.17.2
|
'@rollup/rollup-darwin-arm64': 4.18.0
|
||||||
'@rollup/rollup-darwin-x64': 4.17.2
|
'@rollup/rollup-darwin-x64': 4.18.0
|
||||||
'@rollup/rollup-linux-arm-gnueabihf': 4.17.2
|
'@rollup/rollup-linux-arm-gnueabihf': 4.18.0
|
||||||
'@rollup/rollup-linux-arm-musleabihf': 4.17.2
|
'@rollup/rollup-linux-arm-musleabihf': 4.18.0
|
||||||
'@rollup/rollup-linux-arm64-gnu': 4.17.2
|
'@rollup/rollup-linux-arm64-gnu': 4.18.0
|
||||||
'@rollup/rollup-linux-arm64-musl': 4.17.2
|
'@rollup/rollup-linux-arm64-musl': 4.18.0
|
||||||
'@rollup/rollup-linux-powerpc64le-gnu': 4.17.2
|
'@rollup/rollup-linux-powerpc64le-gnu': 4.18.0
|
||||||
'@rollup/rollup-linux-riscv64-gnu': 4.17.2
|
'@rollup/rollup-linux-riscv64-gnu': 4.18.0
|
||||||
'@rollup/rollup-linux-s390x-gnu': 4.17.2
|
'@rollup/rollup-linux-s390x-gnu': 4.18.0
|
||||||
'@rollup/rollup-linux-x64-gnu': 4.17.2
|
'@rollup/rollup-linux-x64-gnu': 4.18.0
|
||||||
'@rollup/rollup-linux-x64-musl': 4.17.2
|
'@rollup/rollup-linux-x64-musl': 4.18.0
|
||||||
'@rollup/rollup-win32-arm64-msvc': 4.17.2
|
'@rollup/rollup-win32-arm64-msvc': 4.18.0
|
||||||
'@rollup/rollup-win32-ia32-msvc': 4.17.2
|
'@rollup/rollup-win32-ia32-msvc': 4.18.0
|
||||||
'@rollup/rollup-win32-x64-msvc': 4.17.2
|
'@rollup/rollup-win32-x64-msvc': 4.18.0
|
||||||
fsevents: 2.3.3
|
fsevents: 2.3.3
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
|
@ -3398,7 +3398,7 @@ packages:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@jridgewell/gen-mapping': 0.3.5
|
'@jridgewell/gen-mapping': 0.3.5
|
||||||
commander: 4.1.1
|
commander: 4.1.1
|
||||||
glob: 10.3.15
|
glob: 10.3.16
|
||||||
lines-and-columns: 1.2.4
|
lines-and-columns: 1.2.4
|
||||||
mz: 2.7.0
|
mz: 2.7.0
|
||||||
pirates: 4.0.6
|
pirates: 4.0.6
|
||||||
|
@ -3543,7 +3543,7 @@ packages:
|
||||||
joycon: 3.1.1
|
joycon: 3.1.1
|
||||||
postcss-load-config: 4.0.2
|
postcss-load-config: 4.0.2
|
||||||
resolve-from: 5.0.0
|
resolve-from: 5.0.0
|
||||||
rollup: 4.17.2
|
rollup: 4.18.0
|
||||||
source-map: 0.8.0-beta.0
|
source-map: 0.8.0-beta.0
|
||||||
sucrase: 3.35.0
|
sucrase: 3.35.0
|
||||||
tree-kill: 1.2.2
|
tree-kill: 1.2.2
|
||||||
|
@ -3798,8 +3798,8 @@ packages:
|
||||||
engines: {node: '>=10'}
|
engines: {node: '>=10'}
|
||||||
dev: true
|
dev: true
|
||||||
|
|
||||||
github.com/DeterminateSystems/detsys-ts/97979f48241e807d76bd9b8cbfc69a245f04894b:
|
github.com/DeterminateSystems/detsys-ts/ed02129aed8e4d6402d920152652877189bece70:
|
||||||
resolution: {tarball: https://codeload.github.com/DeterminateSystems/detsys-ts/tar.gz/97979f48241e807d76bd9b8cbfc69a245f04894b}
|
resolution: {tarball: https://codeload.github.com/DeterminateSystems/detsys-ts/tar.gz/ed02129aed8e4d6402d920152652877189bece70}
|
||||||
name: detsys-ts
|
name: detsys-ts
|
||||||
version: 1.0.0
|
version: 1.0.0
|
||||||
dependencies:
|
dependencies:
|
||||||
|
|
89
src/index.ts
89
src/index.ts
|
@ -1,11 +1,10 @@
|
||||||
import * as actionsCore from "@actions/core";
|
import * as actionsCore from "@actions/core";
|
||||||
import * as actionsExec from "@actions/exec";
|
import * as actionsExec from "@actions/exec";
|
||||||
import { ActionOptions, IdsToolbox, inputs } from "detsys-ts";
|
import { DetSysAction, inputs } from "detsys-ts";
|
||||||
|
|
||||||
const EVENT_EXECUTION_FAILURE = "execution_failure";
|
const EVENT_EXECUTION_FAILURE = "execution_failure";
|
||||||
|
|
||||||
class FlakeCheckerAction {
|
class FlakeCheckerAction extends DetSysAction {
|
||||||
idslib: IdsToolbox;
|
|
||||||
flakeLockPath: string;
|
flakeLockPath: string;
|
||||||
nixpkgsKeys: string;
|
nixpkgsKeys: string;
|
||||||
checkOutdated: boolean;
|
checkOutdated: boolean;
|
||||||
|
@ -16,7 +15,7 @@ class FlakeCheckerAction {
|
||||||
sendStatistics: boolean;
|
sendStatistics: boolean;
|
||||||
|
|
||||||
constructor() {
|
constructor() {
|
||||||
const options: ActionOptions = {
|
super({
|
||||||
name: "flake-checker",
|
name: "flake-checker",
|
||||||
fetchStyle: "gh-env-style",
|
fetchStyle: "gh-env-style",
|
||||||
diagnosticsUrl: new URL(
|
diagnosticsUrl: new URL(
|
||||||
|
@ -24,9 +23,7 @@ class FlakeCheckerAction {
|
||||||
),
|
),
|
||||||
// We don't need Nix in this Action because we fetch a static binary using curl and run it
|
// We don't need Nix in this Action because we fetch a static binary using curl and run it
|
||||||
requireNix: "ignore",
|
requireNix: "ignore",
|
||||||
};
|
});
|
||||||
|
|
||||||
this.idslib = new IdsToolbox(options);
|
|
||||||
|
|
||||||
this.flakeLockPath = inputs.getString("flake-lock-path");
|
this.flakeLockPath = inputs.getString("flake-lock-path");
|
||||||
this.nixpkgsKeys = inputs.getString("nixpkgs-keys");
|
this.nixpkgsKeys = inputs.getString("nixpkgs-keys");
|
||||||
|
@ -38,8 +35,41 @@ class FlakeCheckerAction {
|
||||||
this.sendStatistics = inputs.getBool("send-statistics");
|
this.sendStatistics = inputs.getBool("send-statistics");
|
||||||
}
|
}
|
||||||
|
|
||||||
private async executionEnvironment(): Promise<ExecuteEnvironment> {
|
async main(): Promise<void> {
|
||||||
const executionEnv: ExecuteEnvironment = {};
|
await this.checkFlake();
|
||||||
|
}
|
||||||
|
|
||||||
|
// No post step
|
||||||
|
async post(): Promise<void> {}
|
||||||
|
|
||||||
|
private async checkFlake(): Promise<number> {
|
||||||
|
const binaryPath = await this.fetchExecutable();
|
||||||
|
const executionEnv = await this.executionEnvironment();
|
||||||
|
|
||||||
|
actionsCore.debug(
|
||||||
|
`Execution environment: ${JSON.stringify(executionEnv, null, 4)}`,
|
||||||
|
);
|
||||||
|
|
||||||
|
const exitCode = await actionsExec.exec(binaryPath, [], {
|
||||||
|
env: {
|
||||||
|
...executionEnv,
|
||||||
|
...process.env, // To get $PATH, etc
|
||||||
|
},
|
||||||
|
ignoreReturnCode: true,
|
||||||
|
});
|
||||||
|
|
||||||
|
if (exitCode !== 0) {
|
||||||
|
this.recordEvent(EVENT_EXECUTION_FAILURE, {
|
||||||
|
exitCode,
|
||||||
|
});
|
||||||
|
actionsCore.setFailed(`Non-zero exit code of \`${exitCode}\`.`);
|
||||||
|
}
|
||||||
|
|
||||||
|
return exitCode;
|
||||||
|
}
|
||||||
|
|
||||||
|
private async executionEnvironment(): Promise<ExecutionEnvironment> {
|
||||||
|
const executionEnv: ExecutionEnvironment = {};
|
||||||
|
|
||||||
executionEnv.NIX_FLAKE_CHECKER_FLAKE_LOCK_PATH = this.flakeLockPath;
|
executionEnv.NIX_FLAKE_CHECKER_FLAKE_LOCK_PATH = this.flakeLockPath;
|
||||||
executionEnv.NIX_FLAKE_CHECKER_NIXPKGS_KEYS = this.nixpkgsKeys;
|
executionEnv.NIX_FLAKE_CHECKER_NIXPKGS_KEYS = this.nixpkgsKeys;
|
||||||
|
@ -70,40 +100,9 @@ class FlakeCheckerAction {
|
||||||
|
|
||||||
return executionEnv;
|
return executionEnv;
|
||||||
}
|
}
|
||||||
|
|
||||||
async check(): Promise<number> {
|
|
||||||
const sourceBinary = inputs.getStringOrNull("source-binary");
|
|
||||||
|
|
||||||
const binaryPath =
|
|
||||||
sourceBinary !== null && sourceBinary !== ""
|
|
||||||
? sourceBinary
|
|
||||||
: await this.idslib.fetchExecutable();
|
|
||||||
|
|
||||||
const executionEnv = await this.executionEnvironment();
|
|
||||||
actionsCore.debug(
|
|
||||||
`Execution environment: ${JSON.stringify(executionEnv, null, 4)}`,
|
|
||||||
);
|
|
||||||
|
|
||||||
const exitCode = await actionsExec.exec(binaryPath, [], {
|
|
||||||
env: {
|
|
||||||
...executionEnv,
|
|
||||||
...process.env, // To get $PATH, etc
|
|
||||||
},
|
|
||||||
ignoreReturnCode: true,
|
|
||||||
});
|
|
||||||
|
|
||||||
if (exitCode !== 0) {
|
|
||||||
this.idslib.recordEvent(EVENT_EXECUTION_FAILURE, {
|
|
||||||
exitCode,
|
|
||||||
});
|
|
||||||
actionsCore.setFailed(`Non-zero exit code of \`${exitCode}\`.`);
|
|
||||||
}
|
|
||||||
|
|
||||||
return exitCode;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
type ExecuteEnvironment = {
|
type ExecutionEnvironment = {
|
||||||
// All env vars are strings, no fanciness here.
|
// All env vars are strings, no fanciness here.
|
||||||
RUST_BACKTRACE?: string;
|
RUST_BACKTRACE?: string;
|
||||||
NIX_FLAKE_CHECKER_FLAKE_LOCK_PATH?: string;
|
NIX_FLAKE_CHECKER_FLAKE_LOCK_PATH?: string;
|
||||||
|
@ -117,13 +116,7 @@ type ExecuteEnvironment = {
|
||||||
};
|
};
|
||||||
|
|
||||||
function main(): void {
|
function main(): void {
|
||||||
const checker = new FlakeCheckerAction();
|
new FlakeCheckerAction().execute();
|
||||||
|
|
||||||
checker.idslib.onMain(async () => {
|
|
||||||
await checker.check();
|
|
||||||
});
|
|
||||||
|
|
||||||
checker.idslib.execute();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
main();
|
main();
|
||||||
|
|
Loading…
Add table
Reference in a new issue