@metaobjectsdev/cli 1.0.13 → 1.1.1-rc.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/README.md +32 -22
- package/dist/bin/meta.js +14 -2
- package/dist/bin/meta.js.map +1 -1
- package/dist/src/commands/docs.d.ts +1 -14
- package/dist/src/commands/docs.d.ts.map +1 -1
- package/dist/src/commands/docs.js +11 -835
- package/dist/src/commands/docs.js.map +1 -1
- package/dist/src/commands/eject.d.ts +24 -1
- package/dist/src/commands/eject.d.ts.map +1 -1
- package/dist/src/commands/eject.js +240 -69
- package/dist/src/commands/eject.js.map +1 -1
- package/dist/src/commands/gen.d.ts +7 -0
- package/dist/src/commands/gen.d.ts.map +1 -1
- package/dist/src/commands/gen.js +91 -21
- package/dist/src/commands/gen.js.map +1 -1
- package/dist/src/commands/generator.js +2 -2
- package/dist/src/commands/generator.js.map +1 -1
- package/dist/src/commands/init.d.ts +7 -0
- package/dist/src/commands/init.d.ts.map +1 -1
- package/dist/src/commands/init.js +71 -36
- package/dist/src/commands/init.js.map +1 -1
- package/dist/src/commands/migrate.d.ts +1 -1
- package/dist/src/commands/migrate.d.ts.map +1 -1
- package/dist/src/commands/migrate.js +224 -125
- package/dist/src/commands/migrate.js.map +1 -1
- package/dist/src/commands/types.d.ts.map +1 -1
- package/dist/src/commands/types.js +16 -2
- package/dist/src/commands/types.js.map +1 -1
- package/dist/src/commands/upgrade.d.ts.map +1 -1
- package/dist/src/commands/upgrade.js +4 -1
- package/dist/src/commands/upgrade.js.map +1 -1
- package/dist/src/commands/verify.d.ts.map +1 -1
- package/dist/src/commands/verify.js +189 -125
- package/dist/src/commands/verify.js.map +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +59 -72
- package/dist/src/index.js.map +1 -1
- package/dist/src/lib/agent-context-staleness.d.ts +8 -1
- package/dist/src/lib/agent-context-staleness.d.ts.map +1 -1
- package/dist/src/lib/agent-context-staleness.js +20 -5
- package/dist/src/lib/agent-context-staleness.js.map +1 -1
- package/dist/src/lib/agent-schema.d.ts +9 -0
- package/dist/src/lib/agent-schema.d.ts.map +1 -0
- package/dist/src/lib/agent-schema.js +61 -0
- package/dist/src/lib/agent-schema.js.map +1 -0
- package/dist/src/lib/allow.d.ts +6 -0
- package/dist/src/lib/allow.d.ts.map +1 -1
- package/dist/src/lib/allow.js +49 -5
- package/dist/src/lib/allow.js.map +1 -1
- package/dist/src/lib/anti-patterns.d.ts.map +1 -1
- package/dist/src/lib/anti-patterns.js +4 -2
- package/dist/src/lib/anti-patterns.js.map +1 -1
- package/dist/src/lib/args.d.ts +51 -10
- package/dist/src/lib/args.d.ts.map +1 -1
- package/dist/src/lib/args.js +44 -18
- package/dist/src/lib/args.js.map +1 -1
- package/dist/src/lib/catalog-listing.d.ts +21 -1
- package/dist/src/lib/catalog-listing.d.ts.map +1 -1
- package/dist/src/lib/catalog-listing.js +85 -16
- package/dist/src/lib/catalog-listing.js.map +1 -1
- package/dist/src/lib/catalog.d.ts +30 -0
- package/dist/src/lib/catalog.d.ts.map +1 -1
- package/dist/src/lib/catalog.js +40 -5
- package/dist/src/lib/catalog.js.map +1 -1
- package/dist/src/lib/codegen-drift.d.ts +31 -2
- package/dist/src/lib/codegen-drift.d.ts.map +1 -1
- package/dist/src/lib/codegen-drift.js +109 -4
- package/dist/src/lib/codegen-drift.js.map +1 -1
- package/dist/src/lib/collection-load-options.d.ts +1 -1
- package/dist/src/lib/collection-load-options.d.ts.map +1 -1
- package/dist/src/lib/collection-load-options.js +1 -0
- package/dist/src/lib/collection-load-options.js.map +1 -1
- package/dist/src/lib/config.d.ts +4 -2
- package/dist/src/lib/config.d.ts.map +1 -1
- package/dist/src/lib/config.js +4 -2
- package/dist/src/lib/config.js.map +1 -1
- package/dist/src/lib/decimal-precision-advisory.d.ts +10 -0
- package/dist/src/lib/decimal-precision-advisory.d.ts.map +1 -0
- package/dist/src/lib/decimal-precision-advisory.js +34 -0
- package/dist/src/lib/decimal-precision-advisory.js.map +1 -0
- package/dist/src/lib/deprecation-lint.d.ts.map +1 -1
- package/dist/src/lib/deprecation-lint.js +17 -26
- package/dist/src/lib/deprecation-lint.js.map +1 -1
- package/dist/src/lib/docs-removed.d.ts +13 -0
- package/dist/src/lib/docs-removed.d.ts.map +1 -0
- package/dist/src/lib/docs-removed.js +31 -0
- package/dist/src/lib/docs-removed.js.map +1 -0
- package/dist/src/lib/docs-site-eject.d.ts +13 -0
- package/dist/src/lib/docs-site-eject.d.ts.map +1 -0
- package/dist/src/lib/docs-site-eject.js +40 -0
- package/dist/src/lib/docs-site-eject.js.map +1 -0
- package/dist/src/lib/field-lint.d.ts +25 -0
- package/dist/src/lib/field-lint.d.ts.map +1 -0
- package/dist/src/lib/field-lint.js +102 -0
- package/dist/src/lib/field-lint.js.map +1 -0
- package/dist/src/lib/fk-index-advisory.d.ts +1 -2
- package/dist/src/lib/fk-index-advisory.d.ts.map +1 -1
- package/dist/src/lib/fk-index-advisory.js +4 -3
- package/dist/src/lib/fk-index-advisory.js.map +1 -1
- package/dist/src/lib/format.d.ts +7 -0
- package/dist/src/lib/format.d.ts.map +1 -1
- package/dist/src/lib/format.js +13 -0
- package/dist/src/lib/format.js.map +1 -1
- package/dist/src/lib/gen-migrate-advice.d.ts +3 -1
- package/dist/src/lib/gen-migrate-advice.d.ts.map +1 -1
- package/dist/src/lib/gen-migrate-advice.js +3 -4
- package/dist/src/lib/gen-migrate-advice.js.map +1 -1
- package/dist/src/lib/install-set.d.ts +10 -1
- package/dist/src/lib/install-set.d.ts.map +1 -1
- package/dist/src/lib/install-set.js +20 -2
- package/dist/src/lib/install-set.js.map +1 -1
- package/dist/src/lib/load-metaobjects-config.d.ts +13 -11
- package/dist/src/lib/load-metaobjects-config.d.ts.map +1 -1
- package/dist/src/lib/load-metaobjects-config.js +53 -75
- package/dist/src/lib/load-metaobjects-config.js.map +1 -1
- package/dist/src/lib/manifest-ignored-check.d.ts +4 -1
- package/dist/src/lib/manifest-ignored-check.d.ts.map +1 -1
- package/dist/src/lib/manifest-ignored-check.js +9 -4
- package/dist/src/lib/manifest-ignored-check.js.map +1 -1
- package/dist/src/lib/output.d.ts +15 -0
- package/dist/src/lib/output.d.ts.map +1 -1
- package/dist/src/lib/output.js +9 -1
- package/dist/src/lib/output.js.map +1 -1
- package/dist/src/lib/payload-field-tree.d.ts +4 -5
- package/dist/src/lib/payload-field-tree.d.ts.map +1 -1
- package/dist/src/lib/payload-field-tree.js +16 -31
- package/dist/src/lib/payload-field-tree.js.map +1 -1
- package/dist/src/lib/requirement-check.d.ts +7 -0
- package/dist/src/lib/requirement-check.d.ts.map +1 -1
- package/dist/src/lib/requirement-check.js +14 -7
- package/dist/src/lib/requirement-check.js.map +1 -1
- package/dist/src/lib/strict-args.d.ts +28 -0
- package/dist/src/lib/strict-args.d.ts.map +1 -0
- package/dist/src/lib/strict-args.js +49 -0
- package/dist/src/lib/strict-args.js.map +1 -0
- package/dist/src/lib/template-eject.d.ts +108 -0
- package/dist/src/lib/template-eject.d.ts.map +1 -0
- package/dist/src/lib/template-eject.js +438 -0
- package/dist/src/lib/template-eject.js.map +1 -0
- package/dist/src/lib/version.d.ts +9 -0
- package/dist/src/lib/version.d.ts.map +1 -1
- package/dist/src/lib/version.js +15 -0
- package/dist/src/lib/version.js.map +1 -1
- package/package.json +10 -10
- package/src/commands/docs.ts +11 -952
- package/src/commands/eject.ts +318 -73
- package/src/commands/gen.ts +94 -22
- package/src/commands/generator.ts +2 -2
- package/src/commands/init.ts +80 -38
- package/src/commands/migrate.ts +248 -117
- package/src/commands/types.ts +18 -2
- package/src/commands/upgrade.ts +5 -1
- package/src/commands/verify.ts +229 -136
- package/src/index.ts +59 -72
- package/src/lib/agent-context-staleness.ts +20 -5
- package/src/lib/agent-schema.ts +74 -0
- package/src/lib/allow.ts +57 -6
- package/src/lib/anti-patterns.ts +4 -2
- package/src/lib/args.ts +83 -28
- package/src/lib/catalog-listing.ts +105 -25
- package/src/lib/catalog.ts +51 -6
- package/src/lib/codegen-drift.ts +138 -3
- package/src/lib/collection-load-options.ts +2 -1
- package/src/lib/config.ts +5 -3
- package/src/lib/decimal-precision-advisory.ts +50 -0
- package/src/lib/deprecation-lint.ts +16 -24
- package/src/lib/docs-removed.ts +41 -0
- package/src/lib/docs-site-eject.ts +48 -0
- package/src/lib/field-lint.ts +122 -0
- package/src/lib/fk-index-advisory.ts +4 -4
- package/src/lib/format.ts +12 -0
- package/src/lib/gen-migrate-advice.ts +6 -4
- package/src/lib/install-set.ts +20 -1
- package/src/lib/load-metaobjects-config.ts +57 -78
- package/src/lib/manifest-ignored-check.ts +14 -10
- package/src/lib/output.ts +18 -1
- package/src/lib/payload-field-tree.ts +18 -35
- package/src/lib/requirement-check.ts +21 -6
- package/src/lib/strict-args.ts +52 -0
- package/src/lib/template-eject.ts +526 -0
- package/src/lib/version.ts +18 -0
- package/dist/src/lib/docs-drift.d.ts +0 -42
- package/dist/src/lib/docs-drift.d.ts.map +0 -1
- package/dist/src/lib/docs-drift.js +0 -264
- package/dist/src/lib/docs-drift.js.map +0 -1
- package/src/lib/docs-drift.ts +0 -312
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
// FR-040 §4.2(a) — `meta eject <generator>...` takes ownership of any reference-template
|
|
2
2
|
// generator, in any package, at any time after `meta init`.
|
|
3
3
|
//
|
|
4
|
-
//
|
|
5
|
-
// empty selection,
|
|
4
|
+
// This is the copy door, for a generator an adopter wants to CHANGE: `meta init`
|
|
5
|
+
// scaffolds the layout and an empty selection, and a generator run as shipped is
|
|
6
|
+
// imported from its package without coming through here (ADR-0034 Amendment 5). It takes
|
|
6
7
|
// MANY names, because a real selection is several — choosing a client tier is
|
|
7
8
|
// `form hooks grid` — and three separate invocations produce three separate install
|
|
8
9
|
// lines for the same package. The consolidated install set is the point.
|
|
@@ -14,6 +15,7 @@
|
|
|
14
15
|
// config-array edit has regressed across at least four filed issues). The primary
|
|
15
16
|
// consumer performs two file edits and one install trivially when told exactly what
|
|
16
17
|
// they are. `meta gen` plus `tsc` is the audit.
|
|
18
|
+
import { existsSync } from "node:fs";
|
|
17
19
|
import { mkdir, writeFile, stat, readFile } from "node:fs/promises";
|
|
18
20
|
import { join } from "node:path";
|
|
19
21
|
import { cliVersion } from "../lib/version.js";
|
|
@@ -24,13 +26,15 @@ import { parseEjectArgs } from "../lib/args.js";
|
|
|
24
26
|
import { log } from "../lib/log.js";
|
|
25
27
|
import { declaredDependencyNames, readPackageManifest } from "../lib/package-manifest.js";
|
|
26
28
|
import { compareOwnedCopy } from "../lib/owned-copy.js";
|
|
27
|
-
import { composeCatalog, packageOf } from "../lib/catalog.js";
|
|
28
|
-
import { installSetFor } from "../lib/install-set.js";
|
|
29
|
+
import { composeCatalog, CORE_CODEGEN_PACKAGE, factoryModuleOf, packageOf } from "../lib/catalog.js";
|
|
30
|
+
import { dependencyRangesOf, installSetFor } from "../lib/install-set.js";
|
|
29
31
|
import { ejectRuntime, ejectsRuntime, runtimeCopyStatus, runtimeDiffCommand, runtimeInstall, } from "../lib/runtime-eject.js";
|
|
32
|
+
import { closureOf, ejectTemplates, OWNED_TEMPLATES_DIR, packagedTemplates, predatesTemplateHandOver, templateCopyStatus, templateDiffCommand, } from "../lib/template-eject.js";
|
|
30
33
|
import { HTTP_RUNTIME_PACKAGE, OWNED_RUNTIME_DIR } from "@metaobjectsdev/codegen-ts";
|
|
31
34
|
import { emitStructured } from "../lib/format.js";
|
|
32
35
|
import { ejectLibrary, ejectableLibraryNames, isLibraryName, libraryStaleness, } from "../lib/library-eject.js";
|
|
33
36
|
import { describeError } from "../lib/error-text.js";
|
|
37
|
+
import { DOCS_SITE_NAME, ejectDocsSite } from "../lib/docs-site-eject.js";
|
|
34
38
|
// Mirrors `OWNED_GENERATORS_DIR` in init.ts's `writeOwnedGenerators` — same directory,
|
|
35
39
|
// same never-clobber-without-consent contract. Kept as its own local constant rather
|
|
36
40
|
// than shared: eject is a standalone operation on ANY name, not a byproduct of init,
|
|
@@ -46,7 +50,6 @@ const OWNED_GENERATORS_DIR = "codegen/generators";
|
|
|
46
50
|
// runtime by selecting this entry via `names.includes(name)`. Reading from the root
|
|
47
51
|
// deletes that machinery without weakening anything: membership is still checked, once,
|
|
48
52
|
// where the untrusted value enters.
|
|
49
|
-
const CORE_CODEGEN_PACKAGE = "@metaobjectsdev/codegen-ts";
|
|
50
53
|
const SOURCES = [
|
|
51
54
|
{
|
|
52
55
|
packageName: CORE_CODEGEN_PACKAGE,
|
|
@@ -91,6 +94,17 @@ function extractExportName(importLine, name) {
|
|
|
91
94
|
}
|
|
92
95
|
return match[1];
|
|
93
96
|
}
|
|
97
|
+
// The CALL a template's header documents, when it is not the bare `<export>()`. A factory
|
|
98
|
+
// that cannot be called without options says so where it says how to import it
|
|
99
|
+
// (`// generators: [sharedModelFile({ name, include })]`). Read from the header for the
|
|
100
|
+
// reason the import line is: the template is the one thing that knows, and the catalog
|
|
101
|
+
// deliberately does not derive a call from an options summary.
|
|
102
|
+
const HEADER_ENTRY_RE = /^\/\/\s+generators: \[(\w+\(.*\))\],?\s*$/m;
|
|
103
|
+
/** The call to wire: the header's, when it documents one for this template's own export. */
|
|
104
|
+
function extractEntry(templateSource, exportName) {
|
|
105
|
+
const call = HEADER_ENTRY_RE.exec(templateSource)?.[1];
|
|
106
|
+
return call !== undefined && call.startsWith(`${exportName}(`) ? call : `${exportName}()`;
|
|
107
|
+
}
|
|
94
108
|
function extractImportLine(templateSource, name) {
|
|
95
109
|
const match = HEADER_IMPORT_RE.exec(templateSource);
|
|
96
110
|
if (!match?.[1]) {
|
|
@@ -139,8 +153,10 @@ function requiredPackages(templateSource) {
|
|
|
139
153
|
* missing package and the version to match is the useful half; silently rewriting
|
|
140
154
|
* someone's manifest is not.
|
|
141
155
|
*/
|
|
142
|
-
export async function dependencyNotesForTemplate(cwd, templateSource
|
|
143
|
-
|
|
156
|
+
export async function dependencyNotesForTemplate(cwd, templateSource,
|
|
157
|
+
/** Packages the template modules copied beside the generator import, as well. */
|
|
158
|
+
alsoImported = []) {
|
|
159
|
+
const required = [...new Set([...requiredPackages(templateSource), ...alsoImported.filter((p) => p.startsWith("@metaobjectsdev/"))])].sort();
|
|
144
160
|
if (required.length === 0)
|
|
145
161
|
return [];
|
|
146
162
|
const pkg = readPackageManifest(cwd);
|
|
@@ -164,19 +180,23 @@ export async function ejectGenerator(opts) {
|
|
|
164
180
|
throw new Error(`unknown generator "${opts.name}". Ejectable generators: ${ejectableNames().join(", ")}. ` +
|
|
165
181
|
"Run `meta eject --list` to see them grouped by package.");
|
|
166
182
|
}
|
|
167
|
-
|
|
183
|
+
// What is written is the reference with its module specifiers pointed at the project:
|
|
184
|
+
// its template modules are copied beside it (ADR-0034 Amendment 8).
|
|
185
|
+
const closure = closureOf(opts.name);
|
|
186
|
+
const templateSource = closure.generator.content;
|
|
168
187
|
const importLine = extractImportLine(templateSource, opts.name);
|
|
169
188
|
const exportName = extractExportName(importLine, opts.name);
|
|
170
189
|
const rel = `${OWNED_GENERATORS_DIR}/${opts.name}.ts`;
|
|
171
190
|
const abs = join(opts.cwd, rel);
|
|
172
|
-
const notes = await dependencyNotesForTemplate(opts.cwd, templateSource);
|
|
191
|
+
const notes = await dependencyNotesForTemplate(opts.cwd, templateSource, closure.packages);
|
|
173
192
|
const common = {
|
|
174
193
|
path: rel,
|
|
175
194
|
importLine,
|
|
176
195
|
exportName,
|
|
196
|
+
entry: extractEntry(templateSource, exportName),
|
|
177
197
|
packageName: source.packageName,
|
|
178
198
|
dependencyNotes: notes,
|
|
179
|
-
templatePackages:
|
|
199
|
+
templatePackages: closure.packages.filter((p) => p.startsWith("@metaobjectsdev/")),
|
|
180
200
|
};
|
|
181
201
|
const existing = (await fileExists(abs)) ? await readFile(abs, "utf8") : undefined;
|
|
182
202
|
const comparison = existing === undefined ? undefined : await compareOwnedCopy(existing, templateSource);
|
|
@@ -190,8 +210,15 @@ export async function ejectGenerator(opts) {
|
|
|
190
210
|
const runtime = ejectsRuntime(opts.name) && !keptCopyImportsPackage
|
|
191
211
|
? await ejectRuntime(opts.cwd, [opts.name], opts.force === true)
|
|
192
212
|
: undefined;
|
|
213
|
+
// The template modules follow the same rule, for the same reason: a kept copy that predates
|
|
214
|
+
// the hand-over still imports the emit code from the package, so copying the modules beside
|
|
215
|
+
// it would be dead code in the project.
|
|
216
|
+
const keptCopyPredatesTemplates = existing !== undefined && !opts.force && predatesTemplateHandOver(existing, closure);
|
|
217
|
+
const templates = closure.templates.length > 0 && !keptCopyPredatesTemplates
|
|
218
|
+
? await ejectTemplates(opts.cwd, [closure], opts.force === true)
|
|
219
|
+
: undefined;
|
|
193
220
|
if (!opts.force && existing !== undefined) {
|
|
194
|
-
return { ...common, status: "preserved", comparison, runtime };
|
|
221
|
+
return { ...common, status: "preserved", comparison, runtime, templates };
|
|
195
222
|
}
|
|
196
223
|
await mkdir(join(opts.cwd, OWNED_GENERATORS_DIR), { recursive: true });
|
|
197
224
|
await writeFile(abs, templateSource, "utf8");
|
|
@@ -200,6 +227,7 @@ export async function ejectGenerator(opts) {
|
|
|
200
227
|
status: existing === undefined ? "created" : "replaced",
|
|
201
228
|
comparison,
|
|
202
229
|
runtime,
|
|
230
|
+
templates,
|
|
203
231
|
};
|
|
204
232
|
}
|
|
205
233
|
/**
|
|
@@ -240,47 +268,137 @@ export async function runtimeCopyLines(cwd) {
|
|
|
240
268
|
return lines;
|
|
241
269
|
}
|
|
242
270
|
/**
|
|
243
|
-
*
|
|
271
|
+
* The owned template modules under `codegen/templates/`, file by file, against what the
|
|
272
|
+
* installed packages would write there today. Shared by `meta eject --list` and
|
|
273
|
+
* `meta gen --list`. Empty when the project owns no template copy.
|
|
244
274
|
*
|
|
245
|
-
*
|
|
246
|
-
*
|
|
247
|
-
*
|
|
248
|
-
*
|
|
249
|
-
* answer instead of a diff nobody thinks to run.
|
|
275
|
+
* Only the import lines of a copy differ from the package by design, so the comparison is
|
|
276
|
+
* the one the generator copies get: `identical` says an upgrade can be taken by re-copying
|
|
277
|
+
* (`meta eject <name> --force`); `DIFFERS` says the copy is yours in a way the package is
|
|
278
|
+
* not, and names the diff that tells whose change it is.
|
|
250
279
|
*/
|
|
251
|
-
async function
|
|
252
|
-
|
|
253
|
-
|
|
280
|
+
export async function templateCopyLines(cwd) {
|
|
281
|
+
if (!existsSync(join(cwd, OWNED_TEMPLATES_DIR)))
|
|
282
|
+
return [];
|
|
283
|
+
const rows = await templateCopyStatus(cwd, packagedTemplates());
|
|
284
|
+
if (rows.length === 0)
|
|
285
|
+
return [];
|
|
286
|
+
const lines = [
|
|
287
|
+
`Template source this project owns (${OWNED_TEMPLATES_DIR}/), against the installed codegen packages:`,
|
|
288
|
+
];
|
|
289
|
+
const differing = [];
|
|
290
|
+
for (const r of rows) {
|
|
291
|
+
if (r.verdict === "identical")
|
|
292
|
+
lines.push(` ${r.path} [identical to the package]`);
|
|
293
|
+
else if (r.verdict === "reformatted")
|
|
294
|
+
lines.push(` ${r.path} [same content as the package, your formatting]`);
|
|
295
|
+
else if (r.verdict === "not-in-package")
|
|
296
|
+
lines.push(` ${r.path} [not in the package — yours, or removed upstream]`);
|
|
297
|
+
else {
|
|
298
|
+
const diff = templateDiffCommand(r);
|
|
299
|
+
if (diff !== undefined)
|
|
300
|
+
differing.push(diff);
|
|
301
|
+
lines.push(` ${r.path} [DIFFERS: ${r.referenceOnly} line(s) only in the package, ${r.localOnly} line(s) only in yours]`);
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
if (differing.length > 0) {
|
|
305
|
+
lines.push(" See the difference (upstream fix, or your own?) before taking an upgrade. " +
|
|
306
|
+
"Only the import lines of a copy differ from the package by design:");
|
|
307
|
+
for (const d of differing)
|
|
308
|
+
lines.push(` ${d}`);
|
|
309
|
+
}
|
|
254
310
|
lines.push("");
|
|
255
|
-
|
|
311
|
+
return lines;
|
|
312
|
+
}
|
|
313
|
+
async function generatorListGroups(cwd) {
|
|
314
|
+
const groups = [];
|
|
315
|
+
// Every renderer the project holds, against the package: attributed to a generator by what
|
|
316
|
+
// that generator imports, so a renderer another generator owns never flags this one.
|
|
317
|
+
const templateStatus = await templateCopyStatus(cwd, packagedTemplates());
|
|
256
318
|
for (const source of SOURCES) {
|
|
257
|
-
|
|
319
|
+
const rows = [];
|
|
320
|
+
groups.push({ packageName: source.packageName, rows });
|
|
258
321
|
for (const name of source.names) {
|
|
322
|
+
const row = { name, package: source.packageName, status: "available", behind: 0, own: 0 };
|
|
323
|
+
rows.push(row);
|
|
259
324
|
const abs = join(cwd, OWNED_GENERATORS_DIR, `${name}.ts`);
|
|
260
|
-
if (!(await fileExists(abs)))
|
|
261
|
-
lines.push(` ${name}`);
|
|
325
|
+
if (!(await fileExists(abs)))
|
|
262
326
|
continue;
|
|
263
|
-
}
|
|
264
327
|
let ref;
|
|
265
328
|
try {
|
|
266
|
-
ref =
|
|
329
|
+
ref = closureOf(name).generator.content;
|
|
267
330
|
}
|
|
268
331
|
catch {
|
|
269
|
-
|
|
332
|
+
row.status = "owned";
|
|
270
333
|
continue;
|
|
271
334
|
}
|
|
272
|
-
const
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
lines.push(` ${name} [owned — identical to the reference]`);
|
|
335
|
+
const cmp = await compareOwnedCopy(await readFile(abs, "utf8"), ref);
|
|
336
|
+
if (cmp.verdict === "identical" || cmp.verdict === "reformatted") {
|
|
337
|
+
row.status = cmp.verdict;
|
|
276
338
|
}
|
|
277
|
-
else
|
|
278
|
-
|
|
339
|
+
else {
|
|
340
|
+
row.status = "differs";
|
|
341
|
+
row.behind = cmp.referenceOnly;
|
|
342
|
+
row.own = cmp.localOnly;
|
|
343
|
+
}
|
|
344
|
+
const reached = new Set(closureOf(name).templates.map((f) => f.path));
|
|
345
|
+
const renderers = [];
|
|
346
|
+
for (const t of templateStatus) {
|
|
347
|
+
if (!reached.has(t.path) || t.verdict === "not-in-package")
|
|
348
|
+
continue;
|
|
349
|
+
renderers.push({
|
|
350
|
+
path: t.path,
|
|
351
|
+
status: t.verdict === "identical" || t.verdict === "reformatted" ? t.verdict : "differs",
|
|
352
|
+
behind: t.referenceOnly,
|
|
353
|
+
own: t.localOnly,
|
|
354
|
+
});
|
|
279
355
|
}
|
|
356
|
+
if (renderers.length > 0)
|
|
357
|
+
row.templates = renderers;
|
|
358
|
+
if (renderers.some((r) => r.status === "differs"))
|
|
359
|
+
row.status = "differs";
|
|
360
|
+
}
|
|
361
|
+
}
|
|
362
|
+
return groups;
|
|
363
|
+
}
|
|
364
|
+
/** `--list` as one structured document: the generators and the shipped libraries. */
|
|
365
|
+
async function listData(cwd) {
|
|
366
|
+
const generators = (await generatorListGroups(cwd)).flatMap((g) => g.rows);
|
|
367
|
+
return {
|
|
368
|
+
generators,
|
|
369
|
+
libraries: ejectableLibraryNames(),
|
|
370
|
+
help: [
|
|
371
|
+
"run `meta eject <name>...` to copy a generator into codegen/generators/ and own it",
|
|
372
|
+
"`meta eject --list --format text` also reports owned runtime copies and ejected-library drift",
|
|
373
|
+
],
|
|
374
|
+
};
|
|
375
|
+
}
|
|
376
|
+
async function listOutput(cwd) {
|
|
377
|
+
const lines = [];
|
|
378
|
+
lines.push("Ejectable generators (copy any of these into codegen/generators/ and own it):");
|
|
379
|
+
lines.push("");
|
|
380
|
+
const groups = await generatorListGroups(cwd);
|
|
381
|
+
const anyStale = groups.some((g) => g.rows.some((r) => r.status === "differs"));
|
|
382
|
+
const generatorFileDiffers = (r) => r.behind > 0 || r.own > 0;
|
|
383
|
+
for (const group of groups) {
|
|
384
|
+
lines.push(`${group.packageName}:`);
|
|
385
|
+
for (const r of group.rows) {
|
|
386
|
+
if (r.status === "available")
|
|
387
|
+
lines.push(` ${r.name}`);
|
|
388
|
+
else if (r.status === "owned")
|
|
389
|
+
lines.push(` ${r.name} [owned]`);
|
|
390
|
+
else if (r.status === "identical")
|
|
391
|
+
lines.push(` ${r.name} [owned — identical to the reference]`);
|
|
392
|
+
else if (r.status === "reformatted")
|
|
393
|
+
lines.push(` ${r.name} [owned — same content as the reference, your formatting]`);
|
|
280
394
|
else {
|
|
281
|
-
|
|
282
|
-
lines.push(
|
|
283
|
-
|
|
395
|
+
const differing = (r.templates ?? []).filter((t) => t.status === "differs");
|
|
396
|
+
lines.push(generatorFileDiffers(r)
|
|
397
|
+
? ` ${r.name} [owned — DIFFERS: ${r.behind} line(s) behind, ${r.own} line(s) of your own]`
|
|
398
|
+
: ` ${r.name} [owned — DIFFERS: generator identical, ${differing.length} renderer(s) differ]`);
|
|
399
|
+
for (const t of differing) {
|
|
400
|
+
lines.push(` renderer ${t.path} [DIFFERS: ${t.behind} line(s) behind, ${t.own} line(s) of your own]`);
|
|
401
|
+
}
|
|
284
402
|
}
|
|
285
403
|
}
|
|
286
404
|
lines.push("");
|
|
@@ -294,6 +412,12 @@ async function listOutput(cwd) {
|
|
|
294
412
|
lines.push("");
|
|
295
413
|
}
|
|
296
414
|
lines.push(...(await runtimeCopyLines(cwd)));
|
|
415
|
+
lines.push(...(await templateCopyLines(cwd)));
|
|
416
|
+
// The docs site's theme: not a generator copy (its builder stays packaged), but a name
|
|
417
|
+
// `meta eject` takes all the same.
|
|
418
|
+
lines.push("The docs site's theme (its templates and assets, into codegen/docs-site/):");
|
|
419
|
+
lines.push(` ${DOCS_SITE_NAME}`);
|
|
420
|
+
lines.push("");
|
|
297
421
|
// FR-043 — the shipped libraries, and how far this project's copies have drifted.
|
|
298
422
|
lines.push("Shipped libraries (copy one into your own sources and own it):");
|
|
299
423
|
for (const name of ejectableLibraryNames())
|
|
@@ -329,6 +453,15 @@ async function listOutput(cwd) {
|
|
|
329
453
|
lines.push("Run: meta eject <name>");
|
|
330
454
|
return lines.join("\n");
|
|
331
455
|
}
|
|
456
|
+
/** The text report for `meta eject docs-site`. */
|
|
457
|
+
function reportDocsSite(files) {
|
|
458
|
+
const written = files.filter((f) => f.status !== "preserved").length;
|
|
459
|
+
log.info(`Ejected the docs-site theme -> codegen/docs-site/: ${written} file(s) written, ` +
|
|
460
|
+
`${files.length - written} already there and kept (--force replaces them).`);
|
|
461
|
+
log.info(" docsSiteFile() reads these in place of the bundled templates and assets; edit them to own " +
|
|
462
|
+
"the site's look. The site builder stays in the package. Wire the generator, if you have " +
|
|
463
|
+
"not: `docsSiteFile()` in `generators`, with a `docs` target.");
|
|
464
|
+
}
|
|
332
465
|
/** The text report for one ejected library. */
|
|
333
466
|
function reportLibrary(result) {
|
|
334
467
|
const created = result.files.filter((f) => f.status !== "preserved");
|
|
@@ -366,18 +499,12 @@ function reportLibrary(result) {
|
|
|
366
499
|
* already-copied half as "preserved" and the adopter cannot tell what happened.
|
|
367
500
|
* Returns the unknown names, or an empty array.
|
|
368
501
|
*/
|
|
369
|
-
/** Where a package-only generator's factory is imported from. The core package serves
|
|
370
|
-
* its generator factories from the `/generators` subpath; the UI packages from the root. */
|
|
371
|
-
function packageFactoryPath(name) {
|
|
372
|
-
const pkg = packageOf(name) ?? "";
|
|
373
|
-
return pkg === CORE_CODEGEN_PACKAGE ? `${pkg}/generators` : pkg;
|
|
374
|
-
}
|
|
375
502
|
function unknownNames(names) {
|
|
376
|
-
return names.filter((n) => resolveSource(n) === undefined && !isLibraryName(n));
|
|
503
|
+
return names.filter((n) => resolveSource(n) === undefined && !isLibraryName(n) && n !== DOCS_SITE_NAME);
|
|
377
504
|
}
|
|
378
505
|
/** Print the per-name text report — every branch below predates this command taking
|
|
379
506
|
* more than one name, and each was written against a real incident. */
|
|
380
|
-
function reportOne(result, name) {
|
|
507
|
+
function reportOne(result, name, wiring) {
|
|
381
508
|
if (result.status === "preserved") {
|
|
382
509
|
// "already exists — left untouched" was the whole message, and it answered the
|
|
383
510
|
// question nobody has. What an owner needs to know is whether their copy still
|
|
@@ -404,6 +531,7 @@ function reportOne(result, name) {
|
|
|
404
531
|
log.info(" That difference is either YOUR customization or upstream having moved on. " +
|
|
405
532
|
"See which, before deciding:");
|
|
406
533
|
log.info(` diff -u node_modules/${result.packageName}/src/reference/${name}.ts ${result.path}`);
|
|
534
|
+
log.info(" (A copy differs from the reference in its import lines by design: they point at your project.)");
|
|
407
535
|
log.info(" To take upstream changes AND keep your customization, three-way merge them — " +
|
|
408
536
|
"`git merge-file --diff3 <your copy> <the reference you ejected from> <the reference above>`. " +
|
|
409
537
|
"`--force` does NOT merge: it replaces the file and your customization with it.");
|
|
@@ -423,28 +551,51 @@ function reportOne(result, name) {
|
|
|
423
551
|
else {
|
|
424
552
|
log.info(`Ejected "${name}" -> ${result.path}. You own it now (ADR-0034 scaffold-and-own).`);
|
|
425
553
|
}
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
"
|
|
442
|
-
|
|
443
|
-
|
|
554
|
+
{
|
|
555
|
+
// REPLACE, never "paste". A generator reaches `generators: [...]` under ONE binding,
|
|
556
|
+
// so a reader told to "paste" gets a duplicate identifier at best — and at worst
|
|
557
|
+
// deletes nothing, keeps `formFile()` in the array bound to the PACKAGE import, and
|
|
558
|
+
// silently runs the packaged generator while editing the ejected file. That failure
|
|
559
|
+
// is invisible and is the exact one ejecting exists to prevent.
|
|
560
|
+
//
|
|
561
|
+
// But eject reads no config, so it cannot know WHICH of the three states this project
|
|
562
|
+
// is in, and stating one of them as fact is wrong in the other two. Name the goal,
|
|
563
|
+
// then the three branches; the reader knows which one they are looking at.
|
|
564
|
+
log.info(`In metaobjects.config.ts, "${result.exportName}" must resolve to this file:`);
|
|
565
|
+
log.info(` ${result.importLine}`);
|
|
566
|
+
log.info(` - If it is imported from "${factoryModuleOf(name) ?? result.packageName}", REPLACE that import with the ` +
|
|
567
|
+
"line above. Adding a second one leaves `generators` bound to the PACKAGED " +
|
|
568
|
+
"generator, and your edits to this file do nothing.");
|
|
569
|
+
log.info(" - If it is already imported from ./codegen/generators/, it points here already " +
|
|
570
|
+
"— nothing to change.");
|
|
571
|
+
log.info(` - If ${wiring.entry} is not in \`generators\` yet, add the import above ` +
|
|
572
|
+
"AND the entry.");
|
|
573
|
+
}
|
|
444
574
|
for (const line of result.dependencyNotes)
|
|
445
575
|
log.info(line);
|
|
446
576
|
if (result.runtime !== undefined && result.runtime.files.length > 0)
|
|
447
577
|
reportRuntime(result.runtime.files);
|
|
578
|
+
if (result.templates !== undefined && result.templates.files.length > 0)
|
|
579
|
+
reportTemplates(result.templates.files);
|
|
580
|
+
}
|
|
581
|
+
/** What the template copy handed over, and how the owned generator reaches it. */
|
|
582
|
+
function reportTemplates(files) {
|
|
583
|
+
const written = files.filter((f) => f.status !== "preserved");
|
|
584
|
+
// A kept file that already matches the package is not news (ejecting `entity queries` copies
|
|
585
|
+
// the shared validators once, then finds them) — only a kept file that differs is.
|
|
586
|
+
const kept = files.filter((f) => f.status === "preserved" && f.comparison?.verdict !== "identical");
|
|
587
|
+
log.info(`The code this generator calls to write its output is yours too: its template modules are in ` +
|
|
588
|
+
`${OWNED_TEMPLATES_DIR}/, not in the codegen package. What stays in the package is the engine ` +
|
|
589
|
+
"(the generator base, the model walks, the naming and type-mapping tables).");
|
|
590
|
+
if (written.length > 0) {
|
|
591
|
+
log.info(` Copied ${written.length} file(s) into ${OWNED_TEMPLATES_DIR}/ (from the installed package; only their import lines differ).`);
|
|
592
|
+
}
|
|
593
|
+
const keptDiffering = kept.filter((f) => f.comparison?.verdict === "differs");
|
|
594
|
+
if (kept.length > 0) {
|
|
595
|
+
log.info(` ${kept.length} file(s) were already there and were left untouched` +
|
|
596
|
+
(keptDiffering.length > 0 ? `, ${keptDiffering.length} of them differing from the package` : "") +
|
|
597
|
+
" (--force replaces them). `meta eject --list` compares each one.");
|
|
598
|
+
}
|
|
448
599
|
}
|
|
449
600
|
/** What the adapter copy handed over, and how the emitted code reaches it. */
|
|
450
601
|
function reportRuntime(files) {
|
|
@@ -475,7 +626,10 @@ export async function ejectCommand(args, cwd, fmt = "text") {
|
|
|
475
626
|
return 2;
|
|
476
627
|
}
|
|
477
628
|
if (flags.list) {
|
|
478
|
-
|
|
629
|
+
if (fmt === "text")
|
|
630
|
+
log.info(await listOutput(cwd));
|
|
631
|
+
else
|
|
632
|
+
emitStructured(await listData(cwd), fmt);
|
|
479
633
|
return 0;
|
|
480
634
|
}
|
|
481
635
|
if (flags.names.length === 0) {
|
|
@@ -491,7 +645,7 @@ export async function ejectCommand(args, cwd, fmt = "text") {
|
|
|
491
645
|
const packageOnly = unmatched.filter((n) => packageOf(n) !== undefined);
|
|
492
646
|
const unknown = unmatched.filter((n) => packageOf(n) === undefined);
|
|
493
647
|
if (packageOnly.length > 0) {
|
|
494
|
-
log.error(`package-only generator(s): ${packageOnly.map((n) => `${n} (${
|
|
648
|
+
log.error(`package-only generator(s): ${packageOnly.map((n) => `${n} (${factoryModuleOf(n) ?? ""})`).join(", ")}. ` +
|
|
495
649
|
"No reference template ships for them, so they cannot be ejected: import the factory " +
|
|
496
650
|
"from the package named beside each one and wire it in `generators: [...]`. " +
|
|
497
651
|
"Nothing was ejected.");
|
|
@@ -508,11 +662,21 @@ export async function ejectCommand(args, cwd, fmt = "text") {
|
|
|
508
662
|
const rows = [];
|
|
509
663
|
const libraries = [];
|
|
510
664
|
const templatePackages = new Set();
|
|
665
|
+
// Packages OUTSIDE @metaobjectsdev that the copied template modules import (a Markdown/TOON
|
|
666
|
+
// writer, say): read from the codegen package that ships them, never restated here.
|
|
667
|
+
const templateThirdParty = new Map();
|
|
511
668
|
// ADR-0034 Amendment 3: the generators whose adapter source was copied, and what it imports.
|
|
512
669
|
const runtimeGenerators = new Set();
|
|
513
670
|
const runtimePackages = new Set();
|
|
671
|
+
let docsSite;
|
|
514
672
|
try {
|
|
515
673
|
for (const name of flags.names) {
|
|
674
|
+
if (name === DOCS_SITE_NAME) {
|
|
675
|
+
docsSite = await ejectDocsSite(cwd, flags.force);
|
|
676
|
+
if (fmt === "text")
|
|
677
|
+
reportDocsSite(docsSite);
|
|
678
|
+
continue;
|
|
679
|
+
}
|
|
516
680
|
if (isLibraryName(name)) {
|
|
517
681
|
const lib = await ejectLibrary({ cwd, name, force: flags.force });
|
|
518
682
|
libraries.push(lib);
|
|
@@ -523,21 +687,27 @@ export async function ejectCommand(args, cwd, fmt = "text") {
|
|
|
523
687
|
const result = await ejectGenerator({ cwd, name, force: flags.force });
|
|
524
688
|
for (const p of result.templatePackages)
|
|
525
689
|
templatePackages.add(p);
|
|
690
|
+
for (const p of closureOf(name).packages.filter((q) => !q.startsWith("@metaobjectsdev/"))) {
|
|
691
|
+
templateThirdParty.set(p, dependencyRangesOf(CORE_CODEGEN_PACKAGE)[p]);
|
|
692
|
+
}
|
|
526
693
|
if (result.runtime !== undefined) {
|
|
527
694
|
runtimeGenerators.add(name);
|
|
528
695
|
for (const p of result.runtime.packages)
|
|
529
696
|
runtimePackages.add(p);
|
|
530
697
|
}
|
|
698
|
+
const catalogEntry = catalog[name];
|
|
699
|
+
const wiring = { entry: result.entry };
|
|
531
700
|
rows.push({
|
|
532
701
|
name,
|
|
533
702
|
path: result.path,
|
|
534
703
|
status: result.status,
|
|
535
|
-
wire: { import: result.importLine, entry:
|
|
536
|
-
requires:
|
|
704
|
+
wire: { import: result.importLine, entry: wiring.entry },
|
|
705
|
+
requires: catalogEntry?.requires ?? [],
|
|
537
706
|
...(result.runtime !== undefined ? { runtime: result.runtime.files } : {}),
|
|
707
|
+
...(result.templates !== undefined ? { templates: result.templates.files } : {}),
|
|
538
708
|
});
|
|
539
709
|
if (fmt === "text")
|
|
540
|
-
reportOne(result, name);
|
|
710
|
+
reportOne(result, name, wiring);
|
|
541
711
|
}
|
|
542
712
|
}
|
|
543
713
|
catch (err) {
|
|
@@ -552,7 +722,7 @@ export async function ejectCommand(args, cwd, fmt = "text") {
|
|
|
552
722
|
// names, so a summary built from the catalog alone printed a line that omitted a
|
|
553
723
|
// package each per-file note had just asked for.
|
|
554
724
|
const entries = flags.names
|
|
555
|
-
.filter((n) => !isLibraryName(n))
|
|
725
|
+
.filter((n) => !isLibraryName(n) && n !== DOCS_SITE_NAME)
|
|
556
726
|
.map((n) => catalog[n])
|
|
557
727
|
.filter((e) => e !== undefined);
|
|
558
728
|
// The copied adapter source imports its own dependencies (qs, the framework, the core
|
|
@@ -563,7 +733,7 @@ export async function ejectCommand(args, cwd, fmt = "text") {
|
|
|
563
733
|
const { runtime, dev } = runtimeInstall([...runtimePackages]);
|
|
564
734
|
ownedRuntime = { generators: runtimeGenerators, runtime, dev };
|
|
565
735
|
}
|
|
566
|
-
const install = installSetFor(entries, [...templatePackages], ownedRuntime);
|
|
736
|
+
const install = installSetFor(entries, [...templatePackages], ownedRuntime, templateThirdParty);
|
|
567
737
|
const configKeys = [...new Set(entries.flatMap((e) => e.configKeys ?? []))].sort();
|
|
568
738
|
if (fmt === "text") {
|
|
569
739
|
if (install.command !== "") {
|
|
@@ -592,6 +762,7 @@ export async function ejectCommand(args, cwd, fmt = "text") {
|
|
|
592
762
|
install,
|
|
593
763
|
config: { keys: configKeys },
|
|
594
764
|
...(libraries.length > 0 ? { libraries } : {}),
|
|
765
|
+
...(docsSite !== undefined ? { docsSite } : {}),
|
|
595
766
|
};
|
|
596
767
|
emitStructured(payload, fmt);
|
|
597
768
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eject.js","sourceRoot":"","sources":["../../../src/commands/eject.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"eject.js","sourceRoot":"","sources":["../../../src/commands/eject.ts"],"names":[],"mappings":"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"}
|