@stll/oxlint-config 2.0.0 → 2.1.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.
Files changed (38) hide show
  1. package/README.md +18 -1
  2. package/dist/consumer-node-support.cjs +2 -2
  3. package/dist/consumer-node-support.mjs +1 -1
  4. package/dist/dependabot.d.cts +8 -0
  5. package/dist/dependabot.d.mts +8 -0
  6. package/dist/git-tracked-output.cjs +1 -1
  7. package/dist/git-tracked-output.mjs +1 -1
  8. package/dist/publish-contract-cli.cjs +2 -2
  9. package/dist/publish-contract-cli.cjs.map +1 -1
  10. package/dist/publish-contract-cli.mjs +2 -2
  11. package/dist/publish-contract-cli.mjs.map +1 -1
  12. package/dist/quarantine-cli.cjs +1 -1
  13. package/dist/quarantine-cli.mjs +1 -1
  14. package/dist/quarantine-policy2.cjs +2 -2
  15. package/dist/quarantine-policy2.mjs +2 -2
  16. package/dist/rust-policy-cli.cjs +481 -0
  17. package/dist/rust-policy-cli.cjs.map +1 -0
  18. package/dist/rust-policy-cli.d.cts +1 -0
  19. package/dist/rust-policy-cli.d.mts +1 -0
  20. package/dist/rust-policy-cli.mjs +479 -0
  21. package/dist/rust-policy-cli.mjs.map +1 -0
  22. package/dist/toolchain-changed-cli.cjs +1 -1
  23. package/dist/toolchain-changed-cli.mjs +1 -1
  24. package/dist/toolchain-dependabot.cjs +1 -1
  25. package/dist/toolchain-dependabot.mjs +2 -2
  26. package/dist/toolchain-dependabot.mjs.map +1 -1
  27. package/dist/toolchain-guard.cjs +5 -5
  28. package/dist/toolchain-guard.mjs +4 -4
  29. package/dist/toolchain-inputs.cjs +96 -17
  30. package/dist/toolchain-inputs.cjs.map +1 -1
  31. package/dist/toolchain-inputs.mjs +90 -17
  32. package/dist/toolchain-inputs.mjs.map +1 -1
  33. package/dist/toolchain-schema.cjs +6 -2
  34. package/dist/toolchain-schema.cjs.map +1 -1
  35. package/dist/toolchain-schema.mjs +6 -2
  36. package/dist/toolchain-schema.mjs.map +1 -1
  37. package/package.json +4 -3
  38. package/toolchain.json +12 -0
package/README.md CHANGED
@@ -492,6 +492,13 @@ it gets no network allowance. Generation fails when the script is not in the
492
492
  root `package.json`.
493
493
 
494
494
  Generation uses the installed policy's Bun, Node, PostgreSQL, and Valkey pins.
495
+ Node and Bun archives are verified against SHA256 values recorded at generation
496
+ time, in addition to the upstream checksum manifests. The shared policy records
497
+ them for its own Node patch and Bun release. A repository that tracks another
498
+ accepted Node patch or a newer Bun records that one release's amd64 and arm64
499
+ values from the official `SHASUMS256.txt` in `cloud.runtimeArchiveSha256`, for
500
+ example `{ "node": { "26.11.0": { "amd64": "…", "arm64": "…" } } }`; a release
501
+ the shared policy pins must not be repeated there.
495
502
  PostgreSQL uses the PGDG major-version packages; minor updates within the pinned
496
503
  major are accepted for the disposable database. Before adding PGDG, provisioning
497
504
  reuses an existing source only after verifying its signing-key fingerprint;
@@ -703,7 +710,7 @@ including `engines`, are rejected. Real npm and pnpm pack tests compare the
703
710
  modeled contract with each tarball manifest.
704
711
 
705
712
  Build adapters use the installed configuration loaders and bind their behavior to
706
- tsdown 0.23.1, Vite 8.3.4, or @nuxt/module-builder 1.0.3 (unbuild 3.6.1 and
713
+ tsdown 0.23.1, Vite 8.3.5, or @nuxt/module-builder 1.0.3 (unbuild 3.6.1 and
707
714
  mkdist 2.4.1). They record final transform targets, including separate Nuxt module
708
715
  and runtime entries. No syntax lowering records `esnext`.
709
716
  Only exact single build invocations (`tsdown`, `vite build`, or
@@ -1129,3 +1136,13 @@ closed and writes nothing unless both inputs normalize successfully.
1129
1136
  Use `stll-normalize-wasi-loaders --check <loader-1> <loader-2>` in CI. Check mode
1130
1137
  does not write files and exits non-zero if either loader differs from the normalized
1131
1138
  output.
1139
+
1140
+ ## Rust policy generation
1141
+
1142
+ Run `bunx --no-install stll-rust-policy` at the repository root with
1143
+ `stll-rust-policy.json` containing `{ "kind": "single-crate" }`. Use
1144
+ `--check` in CI to report drift without writes and `--config <path>` to select
1145
+ another input. The published CLI embeds the canonical `rust/` templates and
1146
+ merges policy into Cargo, Cargo aliases, rustfmt, and Clippy configuration.
1147
+ Unrelated TOML values survive; comments and layout are canonicalized.
1148
+ See [Rust adoption](../../rust/README.md) for workspace members and exceptions.
@@ -2,11 +2,11 @@ const require_rolldown_runtime = require("./rolldown-runtime.cjs");
2
2
  const require_toolchain_inputs = require("./toolchain-inputs.cjs");
3
3
  let node_path = require("node:path");
4
4
  node_path = require_rolldown_runtime.__toESM(node_path, 1);
5
+ let picomatch = require("picomatch");
6
+ picomatch = require_rolldown_runtime.__toESM(picomatch, 1);
5
7
  let semver = require("semver");
6
8
  let node_util = require("node:util");
7
9
  let yaml = require("yaml");
8
- let picomatch = require("picomatch");
9
- picomatch = require_rolldown_runtime.__toESM(picomatch, 1);
10
10
  //#region src/consumer-catalogs.ts
11
11
  const record = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
12
12
  const catalogMapping = (value, field) => {
@@ -1,9 +1,9 @@
1
1
  import { g as workspaceContains } from "./toolchain-inputs.mjs";
2
2
  import path from "node:path";
3
+ import picomatch from "picomatch";
3
4
  import { satisfies, valid, validRange } from "semver";
4
5
  import { isDeepStrictEqual } from "node:util";
5
6
  import { parseDocument } from "yaml";
6
- import picomatch from "picomatch";
7
7
  //#region src/consumer-catalogs.ts
8
8
  const record = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
9
9
  const catalogMapping = (value, field) => {
@@ -65,9 +65,17 @@ type FormatterPolicy = {
65
65
  /** Reject unsupported or incomplete installed policies before inspecting a consumer. */
66
66
  export declare const parseToolchainPolicy: (input: unknown) => {
67
67
  bun: string;
68
+ bunArchiveSha256: Readonly<Record<string, {
69
+ readonly amd64: string;
70
+ readonly arm64: string;
71
+ }>>;
68
72
  formatter: FormatterPolicy;
69
73
  typescript: string;
70
74
  node: string;
75
+ nodeArchiveSha256: Readonly<Record<string, {
76
+ readonly amd64: string;
77
+ readonly arm64: string;
78
+ }>>;
71
79
  postgres: string;
72
80
  valkey: string;
73
81
  valkeyArtifacts: {
@@ -65,9 +65,17 @@ type FormatterPolicy = {
65
65
  /** Reject unsupported or incomplete installed policies before inspecting a consumer. */
66
66
  export declare const parseToolchainPolicy: (input: unknown) => {
67
67
  bun: string;
68
+ bunArchiveSha256: Readonly<Record<string, {
69
+ readonly amd64: string;
70
+ readonly arm64: string;
71
+ }>>;
68
72
  formatter: FormatterPolicy;
69
73
  typescript: string;
70
74
  node: string;
75
+ nodeArchiveSha256: Readonly<Record<string, {
76
+ readonly amd64: string;
77
+ readonly arm64: string;
78
+ }>>;
71
79
  postgres: string;
72
80
  valkey: string;
73
81
  valkeyArtifacts: {
@@ -1,8 +1,8 @@
1
1
  const require_rolldown_runtime = require("./rolldown-runtime.cjs");
2
2
  let node_path = require("node:path");
3
3
  node_path = require_rolldown_runtime.__toESM(node_path, 1);
4
- let node_child_process = require("node:child_process");
5
4
  let node_fs = require("node:fs");
5
+ let node_child_process = require("node:child_process");
6
6
  let node_os = require("node:os");
7
7
  //#region src/git-tracked-output.ts
8
8
  /** Stream Git's file list to disk so consumer size cannot exhaust maxBuffer. */
@@ -1,6 +1,6 @@
1
1
  import path from "node:path";
2
- import { execFileSync } from "node:child_process";
3
2
  import { closeSync, mkdtempSync, openSync, readFileSync, rmSync } from "node:fs";
3
+ import { execFileSync } from "node:child_process";
4
4
  import { tmpdir } from "node:os";
5
5
  //#region src/git-tracked-output.ts
6
6
  /** Stream Git's file list to disk so consumer size cannot exhaust maxBuffer. */
@@ -9,8 +9,8 @@ const require_publish_artifact_syntax = require("./publish-artifact-syntax.cjs")
9
9
  const require_publish_build_target_vite_dts_helper = require("./publish-build-target-vite-dts-helper2.cjs");
10
10
  let node_path = require("node:path");
11
11
  node_path = require_rolldown_runtime.__toESM(node_path, 1);
12
- let node_child_process = require("node:child_process");
13
12
  let node_fs = require("node:fs");
13
+ let node_child_process = require("node:child_process");
14
14
  let node_os = require("node:os");
15
15
  let node_module = require("node:module");
16
16
  let node_url = require("node:url");
@@ -244,7 +244,7 @@ export const resolve=(specifier,context,next)=>{
244
244
  };
245
245
  //#endregion
246
246
  //#region src/publish-build-target-vite.ts
247
- const supportedViteVersion = "8.3.4";
247
+ const supportedViteVersion = "8.3.5";
248
248
  const declarationHelperImport = "@stll/oxlint-config/declaration-only-dts";
249
249
  const record$1 = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
250
250
  const walkAst = ({ value, visit, parent }) => {