@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.
@@ -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.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
- for (const name of ignored) if (!Array.isArray(ignore) || !ignore.some((entry) => record$6(entry) && entry["dependency-name"] === name && Object.keys(entry).length === 1)) report("ignore", `${ecosystem}: ignore all updates for shared pin ${name}`);
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;