@stll/oxlint-config 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/toolchain-guard.mjs
CHANGED
|
@@ -9,7 +9,7 @@ import picomatch from "picomatch";
|
|
|
9
9
|
import { parse as parse$2 } from "smol-toml";
|
|
10
10
|
//#endregion
|
|
11
11
|
//#region src/toolchain-consumer-checks.ts
|
|
12
|
-
const consumerRunnerVersion = "1.0.
|
|
12
|
+
const consumerRunnerVersion = "1.0.1";
|
|
13
13
|
const consumerCheckWorkflow = "stella/.github/.github/workflows/package-consumer-compat.yml";
|
|
14
14
|
const record$7 = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
|
|
15
15
|
const repositoryDirectory = (value) => typeof value === "string" && value !== "" && !value.includes("\\") && !value.includes("${{") && !value.split("").some((character) => {
|
|
@@ -268,6 +268,12 @@ const sameStrings = (value, expected) => {
|
|
|
268
268
|
const sortedExpected = [...expected].sort();
|
|
269
269
|
return [...value].sort().every((entry, index) => entry === sortedExpected[index]);
|
|
270
270
|
};
|
|
271
|
+
const pinnedVersionUpdateTypes = [
|
|
272
|
+
"version-update:semver-major",
|
|
273
|
+
"version-update:semver-minor",
|
|
274
|
+
"version-update:semver-patch"
|
|
275
|
+
];
|
|
276
|
+
const versionOnlyIgnore = (entry) => record$6(entry) && Object.keys(entry).length === 2 && typeof entry["dependency-name"] === "string" && sameStrings(entry["update-types"], pinnedVersionUpdateTypes);
|
|
271
277
|
const directoryOf = (file) => {
|
|
272
278
|
const directory = path.posix.dirname(file);
|
|
273
279
|
return directory === "." ? "/" : `/${directory}`;
|
|
@@ -576,7 +582,8 @@ const checkDependabot = ({ files, policy }) => {
|
|
|
576
582
|
const ignore = update["ignore"];
|
|
577
583
|
if (ignore !== void 0 && (!Array.isArray(ignore) || ignore.length === 0)) report("ignore", `${ecosystem}: omit ignore or provide a nonempty array`);
|
|
578
584
|
if (Array.isArray(ignore) && ignore.some((entry) => !record$6(entry) || typeof entry["dependency-name"] !== "string" || !ignored.includes(entry["dependency-name"]))) report("ignore", `${ecosystem}: ignore only packages owned by the shared policy`);
|
|
579
|
-
|
|
585
|
+
if (Array.isArray(ignore) && ignore.some((entry) => !versionOnlyIgnore(entry))) report("ignore", `${ecosystem}: each shared-pin ignore must contain only dependency-name and update-types for semver-major, semver-minor, and semver-patch version updates; security updates must remain enabled`);
|
|
586
|
+
for (const name of ignored) if (!Array.isArray(ignore) || !ignore.some((entry) => record$6(entry) && entry["dependency-name"] === name && versionOnlyIgnore(entry))) report("ignore", `${ecosystem}: ignore all version updates for shared pin ${name}`);
|
|
580
587
|
}
|
|
581
588
|
for (const [ecosystem, directories] of roots) for (const directory of directories) if (!covered.get(ecosystem)?.has(directory)) add(`add a ${ecosystem} update entry covering ${directory}`);
|
|
582
589
|
return diagnostics;
|