@goodbones/core 0.1.0-beta.10 → 0.1.0-beta.12
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/build/dts/core/structure.d.ts.map +1 -1
- package/build/dts/domain/architecture-config.d.ts +3 -310
- package/build/dts/domain/architecture-config.d.ts.map +1 -1
- package/build/dts/domain/snapshot.d.ts +150 -18
- package/build/dts/domain/snapshot.d.ts.map +1 -1
- package/build/dts/index.d.ts +11 -14
- package/build/dts/index.d.ts.map +1 -1
- package/build/dts/infrastructure/file-system-fake.d.ts.map +1 -1
- package/build/dts/infrastructure/file-system-live.d.ts.map +1 -1
- package/build/dts/infrastructure/walk.d.ts +6 -1
- package/build/dts/infrastructure/walk.d.ts.map +1 -1
- package/build/dts/load/extension.d.ts +33 -0
- package/build/dts/load/extension.d.ts.map +1 -0
- package/build/dts/load/policy.d.ts +4 -10
- package/build/dts/load/policy.d.ts.map +1 -1
- package/build/dts/manifest/compile.d.ts +7 -2
- package/build/dts/manifest/compile.d.ts.map +1 -1
- package/build/dts/manifest/extension.d.ts +8 -0
- package/build/dts/manifest/extension.d.ts.map +1 -0
- package/build/dts/manifest/glob.d.ts +1 -0
- package/build/dts/manifest/glob.d.ts.map +1 -1
- package/build/dts/manifest/json-schema.d.ts +6 -2
- package/build/dts/manifest/json-schema.d.ts.map +1 -1
- package/build/dts/manifest/manifest.d.ts +7 -362
- package/build/dts/manifest/manifest.d.ts.map +1 -1
- package/build/dts/ports/file-system.d.ts +1 -0
- package/build/dts/ports/file-system.d.ts.map +1 -1
- package/build/dts/testing.d.ts +0 -1
- package/build/dts/testing.d.ts.map +1 -1
- package/build/esm/core/structure.js +1 -1
- package/build/esm/core/structure.js.map +1 -1
- package/build/esm/domain/architecture-config.js +3 -136
- package/build/esm/domain/architecture-config.js.map +1 -1
- package/build/esm/domain/snapshot.js +55 -15
- package/build/esm/domain/snapshot.js.map +1 -1
- package/build/esm/index.js +16 -10
- package/build/esm/index.js.map +1 -1
- package/build/esm/infrastructure/file-system-fake.js +10 -0
- package/build/esm/infrastructure/file-system-fake.js.map +1 -1
- package/build/esm/infrastructure/file-system-live.js +9 -1
- package/build/esm/infrastructure/file-system-live.js.map +1 -1
- package/build/esm/infrastructure/walk.js +50 -4
- package/build/esm/infrastructure/walk.js.map +1 -1
- package/build/esm/load/extension.js +2 -0
- package/build/esm/load/extension.js.map +1 -0
- package/build/esm/load/policy.js +43 -116
- package/build/esm/load/policy.js.map +1 -1
- package/build/esm/manifest/compile.js +3 -182
- package/build/esm/manifest/compile.js.map +1 -1
- package/build/esm/manifest/extension.js +2 -0
- package/build/esm/manifest/extension.js.map +1 -0
- package/build/esm/manifest/glob.js +3 -0
- package/build/esm/manifest/glob.js.map +1 -1
- package/build/esm/manifest/json-schema.js +45 -11
- package/build/esm/manifest/json-schema.js.map +1 -1
- package/build/esm/manifest/manifest.js +56 -172
- package/build/esm/manifest/manifest.js.map +1 -1
- package/build/esm/testing.js +0 -1
- package/build/esm/testing.js.map +1 -1
- package/package.json +1 -1
- package/schema/architecture-node.schema.json +0 -887
- package/schema/architecture.schema.json +3264 -1591
- package/schema/conformance.schema.json +291 -47
- package/src/core/structure.ts +5 -3
- package/src/domain/architecture-config.ts +3 -180
- package/src/domain/snapshot.ts +125 -25
- package/src/index.ts +51 -78
- package/src/infrastructure/file-system-fake.ts +12 -0
- package/src/infrastructure/file-system-live.ts +8 -1
- package/src/infrastructure/walk.ts +58 -3
- package/src/load/extension.ts +66 -0
- package/src/load/policy.ts +60 -175
- package/src/manifest/compile.ts +2 -213
- package/src/manifest/extension.ts +41 -0
- package/src/manifest/glob.ts +5 -0
- package/src/manifest/json-schema.ts +53 -11
- package/src/manifest/manifest.ts +82 -214
- package/src/ports/file-system.ts +3 -0
- package/src/testing.ts +0 -1
- package/build/dts/core/campaigns.d.ts +0 -141
- package/build/dts/core/campaigns.d.ts.map +0 -1
- package/build/dts/core/ledger.d.ts +0 -61
- package/build/dts/core/ledger.d.ts.map +0 -1
- package/build/dts/domain/report.d.ts +0 -16
- package/build/dts/domain/report.d.ts.map +0 -1
- package/build/dts/infrastructure/campaign-functions.d.ts +0 -7
- package/build/dts/infrastructure/campaign-functions.d.ts.map +0 -1
- package/build/dts/infrastructure/report-source-fake.d.ts +0 -4
- package/build/dts/infrastructure/report-source-fake.d.ts.map +0 -1
- package/build/dts/infrastructure/report-source-live.d.ts +0 -3
- package/build/dts/infrastructure/report-source-live.d.ts.map +0 -1
- package/build/dts/ports/campaign-predicate.d.ts +0 -24
- package/build/dts/ports/campaign-predicate.d.ts.map +0 -1
- package/build/dts/ports/report-source.d.ts +0 -14
- package/build/dts/ports/report-source.d.ts.map +0 -1
- package/build/esm/core/campaigns.js +0 -778
- package/build/esm/core/campaigns.js.map +0 -1
- package/build/esm/core/ledger.js +0 -171
- package/build/esm/core/ledger.js.map +0 -1
- package/build/esm/domain/report.js +0 -168
- package/build/esm/domain/report.js.map +0 -1
- package/build/esm/infrastructure/campaign-functions.js +0 -67
- package/build/esm/infrastructure/campaign-functions.js.map +0 -1
- package/build/esm/infrastructure/report-source-fake.js +0 -6
- package/build/esm/infrastructure/report-source-fake.js.map +0 -1
- package/build/esm/infrastructure/report-source-live.js +0 -165
- package/build/esm/infrastructure/report-source-live.js.map +0 -1
- package/build/esm/ports/campaign-predicate.js +0 -2
- package/build/esm/ports/campaign-predicate.js.map +0 -1
- package/build/esm/ports/report-source.js +0 -7
- package/build/esm/ports/report-source.js.map +0 -1
- package/src/core/campaigns.ts +0 -1056
- package/src/core/ledger.ts +0 -242
- package/src/domain/report.ts +0 -203
- package/src/infrastructure/campaign-functions.ts +0 -98
- package/src/infrastructure/report-source-fake.ts +0 -10
- package/src/infrastructure/report-source-live.ts +0 -192
- package/src/ports/campaign-predicate.ts +0 -30
- package/src/ports/report-source.ts +0 -35
|
@@ -1,165 +0,0 @@
|
|
|
1
|
-
import { spawn, spawnSync } from "node:child_process";
|
|
2
|
-
import { readFileSync } from "node:fs";
|
|
3
|
-
import { availableParallelism } from "node:os";
|
|
4
|
-
import * as path from "node:path";
|
|
5
|
-
import { ReportUnavailable } from "../domain/architecture-error.js";
|
|
6
|
-
import { indexByFile, parseReport, uniqueDiagnostics } from "../domain/report.js";
|
|
7
|
-
import { reportSourcesOf } from "../ports/report-source.js";
|
|
8
|
-
// The report source on this host: runs a `report` term's commands from the
|
|
9
|
-
// repository root, or reads the files it names, and parses the output once
|
|
10
|
-
// — a report is about the whole repository, a campaign asks per file, and
|
|
11
|
-
// the plugin asks for one file at a time across a whole lint run. Cached
|
|
12
|
-
// per spec for the life of the process: the CLI is one process per `check`,
|
|
13
|
-
// and oxlint's language server is one process per editor session, which
|
|
14
|
-
// sees the report as of when it loaded the plugin. A report the build
|
|
15
|
-
// writes to a file is the predictable form for the editor, and for CI.
|
|
16
|
-
//
|
|
17
|
-
// A term may name several commands — a tool that checks one project at a
|
|
18
|
-
// time, run once per project — and their outputs are one report: parsed
|
|
19
|
-
// each, joined, and a diagnostic two of them print kept once. `read` runs
|
|
20
|
-
// them concurrently, as many at a time as the machine has cores, which is
|
|
21
|
-
// why both hosts call it before any file asks; `diagnosticsOf` with no
|
|
22
|
-
// answer kept runs them one after another, synchronously, and keeps that.
|
|
23
|
-
//
|
|
24
|
-
// A non-zero exit is not a failure — `tsc` exits 2 when there are errors,
|
|
25
|
-
// which is the case the term exists for. A command that cannot be spawned,
|
|
26
|
-
// or a file that is not there, is — and that failure is cached as the report
|
|
27
|
-
// would have been, so the second file to ask gets the same answer without a
|
|
28
|
-
// second spawn. The command is forked from the asking process; under the
|
|
29
|
-
// oxlint plugin that is the linter, which Linux refuses to fork once its AST
|
|
30
|
-
// buffers have merged into one mapping larger than RAM and swap — so the
|
|
31
|
-
// plugin asks at load, and retrying per file would only repeat the refusal.
|
|
32
|
-
const MAX_BUFFER = 256 * 1024 * 1024;
|
|
33
|
-
const fileTextOf = (repoRoot, file) => {
|
|
34
|
-
const at = path.resolve(repoRoot, file);
|
|
35
|
-
try {
|
|
36
|
-
return readFileSync(at, "utf8");
|
|
37
|
-
}
|
|
38
|
-
catch (cause) {
|
|
39
|
-
throw new ReportUnavailable({ kind: "file", source: file, detail: String(cause) });
|
|
40
|
-
}
|
|
41
|
-
};
|
|
42
|
-
const commandTextSync = (repoRoot, command) => {
|
|
43
|
-
const run = spawnSync(command, {
|
|
44
|
-
cwd: repoRoot,
|
|
45
|
-
shell: true,
|
|
46
|
-
encoding: "utf8",
|
|
47
|
-
maxBuffer: MAX_BUFFER,
|
|
48
|
-
stdio: ["ignore", "pipe", "pipe"],
|
|
49
|
-
});
|
|
50
|
-
if (run.error !== undefined) {
|
|
51
|
-
throw new ReportUnavailable({ kind: "command", source: command, detail: run.error.message });
|
|
52
|
-
}
|
|
53
|
-
return run.stdout;
|
|
54
|
-
};
|
|
55
|
-
const commandText = (repoRoot, command) => new Promise((resolve, reject) => {
|
|
56
|
-
const child = spawn(command, {
|
|
57
|
-
cwd: repoRoot,
|
|
58
|
-
shell: true,
|
|
59
|
-
stdio: ["ignore", "pipe", "pipe"],
|
|
60
|
-
});
|
|
61
|
-
const chunks = [];
|
|
62
|
-
let size = 0;
|
|
63
|
-
child.stdout.on("data", (chunk) => {
|
|
64
|
-
size += chunk.length;
|
|
65
|
-
if (size > MAX_BUFFER) {
|
|
66
|
-
child.kill();
|
|
67
|
-
reject(new ReportUnavailable({
|
|
68
|
-
kind: "command",
|
|
69
|
-
source: command,
|
|
70
|
-
detail: `stdout exceeded ${String(MAX_BUFFER)} bytes`,
|
|
71
|
-
}));
|
|
72
|
-
return;
|
|
73
|
-
}
|
|
74
|
-
chunks.push(chunk);
|
|
75
|
-
});
|
|
76
|
-
child.stderr.resume();
|
|
77
|
-
child.on("error", (cause) => {
|
|
78
|
-
reject(new ReportUnavailable({ kind: "command", source: command, detail: cause.message }));
|
|
79
|
-
});
|
|
80
|
-
child.on("close", () => {
|
|
81
|
-
resolve(Buffer.concat(chunks).toString("utf8"));
|
|
82
|
-
});
|
|
83
|
-
});
|
|
84
|
-
// `work` over `items`, at most `lanes` at a time, answers in order.
|
|
85
|
-
const inLanes = async (items, lanes, work) => {
|
|
86
|
-
const answers = new Array(items.length);
|
|
87
|
-
let next = 0;
|
|
88
|
-
const lane = async () => {
|
|
89
|
-
while (next < items.length) {
|
|
90
|
-
const index = next;
|
|
91
|
-
next += 1;
|
|
92
|
-
answers[index] = await work(items[index]);
|
|
93
|
-
}
|
|
94
|
-
};
|
|
95
|
-
await Promise.all(Array.from({ length: Math.min(lanes, items.length) }, lane));
|
|
96
|
-
return answers;
|
|
97
|
-
};
|
|
98
|
-
// One command named as a string and the same one as a list of one are the
|
|
99
|
-
// same report.
|
|
100
|
-
const keyOf = (spec) => JSON.stringify([
|
|
101
|
-
spec.file === undefined ? "command" : "file",
|
|
102
|
-
reportSourcesOf(spec),
|
|
103
|
-
spec.format,
|
|
104
|
-
spec.pattern ?? null,
|
|
105
|
-
]);
|
|
106
|
-
export const makeReportSourceLive = (repoRoot) => {
|
|
107
|
-
const cache = new Map();
|
|
108
|
-
const reading = new Map();
|
|
109
|
-
// The outputs, in the order named, as one report.
|
|
110
|
-
const indexOf = (spec, texts) => indexByFile(uniqueDiagnostics(texts.flatMap((text) => parseReport(spec.format, text, { repoRoot, pattern: spec.pattern }))));
|
|
111
|
-
const answerSync = (spec) => {
|
|
112
|
-
try {
|
|
113
|
-
const texts = reportSourcesOf(spec).map((source) => spec.file === undefined ? commandTextSync(repoRoot, source) : fileTextOf(repoRoot, source));
|
|
114
|
-
return indexOf(spec, texts);
|
|
115
|
-
}
|
|
116
|
-
catch (cause) {
|
|
117
|
-
if (cause instanceof ReportUnavailable)
|
|
118
|
-
return cause;
|
|
119
|
-
throw cause;
|
|
120
|
-
}
|
|
121
|
-
};
|
|
122
|
-
const answer = async (spec) => {
|
|
123
|
-
try {
|
|
124
|
-
const sources = reportSourcesOf(spec);
|
|
125
|
-
const texts = spec.file === undefined
|
|
126
|
-
? await inLanes(sources, availableParallelism(), (command) => commandText(repoRoot, command))
|
|
127
|
-
: sources.map((file) => fileTextOf(repoRoot, file));
|
|
128
|
-
return indexOf(spec, texts);
|
|
129
|
-
}
|
|
130
|
-
catch (cause) {
|
|
131
|
-
if (cause instanceof ReportUnavailable)
|
|
132
|
-
return cause;
|
|
133
|
-
throw cause;
|
|
134
|
-
}
|
|
135
|
-
};
|
|
136
|
-
const read = (spec) => {
|
|
137
|
-
const key = keyOf(spec);
|
|
138
|
-
if (cache.has(key))
|
|
139
|
-
return Promise.resolve();
|
|
140
|
-
const pending = reading.get(key);
|
|
141
|
-
if (pending !== undefined)
|
|
142
|
-
return pending;
|
|
143
|
-
const started = answer(spec).then((found) => {
|
|
144
|
-
cache.set(key, found);
|
|
145
|
-
reading.delete(key);
|
|
146
|
-
});
|
|
147
|
-
reading.set(key, started);
|
|
148
|
-
return started;
|
|
149
|
-
};
|
|
150
|
-
return {
|
|
151
|
-
read,
|
|
152
|
-
diagnosticsOf: (spec, file) => {
|
|
153
|
-
const key = keyOf(spec);
|
|
154
|
-
let found = cache.get(key);
|
|
155
|
-
if (found === undefined) {
|
|
156
|
-
found = answerSync(spec);
|
|
157
|
-
cache.set(key, found);
|
|
158
|
-
}
|
|
159
|
-
if (found instanceof ReportUnavailable)
|
|
160
|
-
throw found;
|
|
161
|
-
return found.get(file) ?? [];
|
|
162
|
-
},
|
|
163
|
-
};
|
|
164
|
-
};
|
|
165
|
-
//# sourceMappingURL=report-source-live.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"report-source-live.js","sourceRoot":"","sources":["../../../src/infrastructure/report-source-live.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"campaign-predicate.js","sourceRoot":"","sources":["../../../src/ports/campaign-predicate.ts"],"names":[],"mappings":""}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
// The commands or files a spec names, as a list.
|
|
2
|
-
export const reportSourcesOf = (spec) => {
|
|
3
|
-
const named = spec.command ?? spec.file ?? [];
|
|
4
|
-
return typeof named === "string" ? [named] : named;
|
|
5
|
-
};
|
|
6
|
-
export const NO_REPORTS = { diagnosticsOf: () => [] };
|
|
7
|
-
//# sourceMappingURL=report-source.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"report-source.js","sourceRoot":"","sources":["../../../src/ports/report-source.ts"],"names":[],"mappings":"AAaA,iDAAiD;AACjD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAgB,EAAyB,EAAE;IACzE,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;IAC9C,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AACrD,CAAC,CAAC;AAiBF,MAAM,CAAC,MAAM,UAAU,GAAiB,EAAE,aAAa,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC"}
|