@metaobjectsdev/cli 0.21.4 → 0.21.6
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/src/commands/init.d.ts.map +1 -1
- package/dist/src/commands/init.js +135 -1
- package/dist/src/commands/init.js.map +1 -1
- package/dist/src/lib/load-metaobjects-config.d.ts.map +1 -1
- package/dist/src/lib/load-metaobjects-config.js +23 -1
- package/dist/src/lib/load-metaobjects-config.js.map +1 -1
- package/package.json +12 -12
- package/src/commands/init.ts +137 -1
- package/src/lib/load-metaobjects-config.ts +23 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/commands/init.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/commands/init.ts"],"names":[],"mappings":"AAoHA,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4KAA4K;IAC5K,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAiKD,wBAAsB,IAAI,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAyJjE;AAwJD,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAoBD,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA+C9E"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { mkdir, writeFile, readFile, stat } from "node:fs/promises";
|
|
1
|
+
import { mkdir, writeFile, readFile, readdir, stat } from "node:fs/promises";
|
|
2
2
|
import { join } from "node:path";
|
|
3
3
|
import { basename, dirname } from "node:path";
|
|
4
4
|
import { existsSync as existsSyncWrap, readFileSync as readFileSyncWrap } from "node:fs";
|
|
@@ -89,6 +89,8 @@ Initialized metaobjects/ + .metaobjects/ + metaobjects.config.ts
|
|
|
89
89
|
Codegen generators copied to codegen/generators/ — they're YOURS to edit (ADR-0034 scaffold-and-own).
|
|
90
90
|
|
|
91
91
|
Next steps:
|
|
92
|
+
0. Everything here is ESM — package.json needs "type": "module" (init sets it
|
|
93
|
+
unless the project has CommonJS sources; without it the first tsc fails).
|
|
92
94
|
1. Author entities under metaobjects/ (start from the scaffolded meta.common.json)
|
|
93
95
|
2. meta gen # generate idiomatic TypeScript from your entities
|
|
94
96
|
meta gen --dry-run # ...preview without writing
|
|
@@ -383,8 +385,140 @@ export async function init(opts) {
|
|
|
383
385
|
else {
|
|
384
386
|
result.preserved.push(".gitignore");
|
|
385
387
|
}
|
|
388
|
+
await ensureEsmPackageType(opts.cwd, result);
|
|
386
389
|
return result;
|
|
387
390
|
}
|
|
391
|
+
/**
|
|
392
|
+
* MetaObjects emits ESM only, and so does everything `meta init` scaffolds. If the
|
|
393
|
+
* project's `package.json` does not say so, the FIRST `tsc` a new adopter runs fails
|
|
394
|
+
* — not subtly:
|
|
395
|
+
*
|
|
396
|
+
* codegen/generators/barrel.ts(14,3): error TS1295: ECMAScript imports and
|
|
397
|
+
* exports cannot be written in a CommonJS file under 'verbatimModuleSyntax'.
|
|
398
|
+
*
|
|
399
|
+
* …ninety-odd times, across the scaffolded generators and every generated file, on
|
|
400
|
+
* the exact path the README and these next-steps prescribe. Two ecosystem defaults
|
|
401
|
+
* conspire: `npm init -y` now writes `"type": "commonjs"` explicitly, and a stock
|
|
402
|
+
* `tsc --init` on TypeScript 7 enables `verbatimModuleSyntax`.
|
|
403
|
+
*
|
|
404
|
+
* So set it — but never silently take a real CommonJS project with it. A project
|
|
405
|
+
* that has actual CJS sources gets a loud, specific warning instead of an edit,
|
|
406
|
+
* because changing a module system out from under working code is not ours to do.
|
|
407
|
+
*/
|
|
408
|
+
async function ensureEsmPackageType(cwd, result) {
|
|
409
|
+
const pkgPath = join(cwd, "package.json");
|
|
410
|
+
if (!(await fileExists(pkgPath))) {
|
|
411
|
+
// No package.json at all: say what is needed rather than inventing a manifest
|
|
412
|
+
// (name/version/license are the user's to choose).
|
|
413
|
+
result.warnings.push('no package.json found — create one with `npm init -y`, then set `"type": "module"`: ' +
|
|
414
|
+
"MetaObjects scaffolds and generates ESM, which will not compile in a CommonJS project.");
|
|
415
|
+
return;
|
|
416
|
+
}
|
|
417
|
+
let pkg;
|
|
418
|
+
let raw;
|
|
419
|
+
try {
|
|
420
|
+
raw = await readFile(pkgPath, "utf8");
|
|
421
|
+
pkg = JSON.parse(raw);
|
|
422
|
+
}
|
|
423
|
+
catch {
|
|
424
|
+
result.warnings.push('package.json could not be parsed — ensure it sets `"type": "module"` by hand ' +
|
|
425
|
+
"(MetaObjects scaffolds and generates ESM).");
|
|
426
|
+
return;
|
|
427
|
+
}
|
|
428
|
+
if (pkg.type === "module")
|
|
429
|
+
return; // already correct — nothing to do, nothing to say
|
|
430
|
+
if (await hasCommonJsSources(cwd)) {
|
|
431
|
+
result.warnings.push('this project has CommonJS sources, so `"type": "module"` was NOT set for you — ' +
|
|
432
|
+
"but the scaffolded generators and all generated code are ESM and will not " +
|
|
433
|
+
"compile without it. Either migrate the project to ESM, or keep the generated " +
|
|
434
|
+
"code in a sub-directory with its own package.json declaring `\"type\": \"module\"`.");
|
|
435
|
+
return;
|
|
436
|
+
}
|
|
437
|
+
pkg.type = "module";
|
|
438
|
+
const added = addScaffoldDevDependencies(pkg);
|
|
439
|
+
// Preserve the file's existing indentation rather than reformatting someone's manifest.
|
|
440
|
+
const indent = /\n(\s+)"/.exec(raw)?.[1] ?? " ";
|
|
441
|
+
await writeFile(pkgPath, `${JSON.stringify(pkg, null, indent)}\n`, "utf8");
|
|
442
|
+
result.warnings.push('set `"type": "module"` in package.json — MetaObjects scaffolds and generates ESM, ' +
|
|
443
|
+
"which a CommonJS project cannot compile.");
|
|
444
|
+
if (added.length > 0) {
|
|
445
|
+
result.warnings.push(`added ${added.join(" + ")} to devDependencies — the scaffolded ` +
|
|
446
|
+
"codegen/generators/ are YOUR source now (ADR-0034) and import them. " +
|
|
447
|
+
"Run your package manager's install before `meta gen`.");
|
|
448
|
+
}
|
|
449
|
+
}
|
|
450
|
+
/**
|
|
451
|
+
* ADR-0034 scaffold-and-own hands the project real source files under
|
|
452
|
+
* `codegen/generators/`, and those files import `@metaobjectsdev/codegen-ts` and
|
|
453
|
+
* `@metaobjectsdev/metadata`. Installing `@metaobjectsdev/cli` alone does not put
|
|
454
|
+
* either of them where the project can resolve them, so the scaffold arrived
|
|
455
|
+
* un-typecheckable: ten TS2307s on files `meta init` had just written.
|
|
456
|
+
*
|
|
457
|
+
* Declaring them is the honest fix — they are dependencies of code that now lives in
|
|
458
|
+
* the adopter's repo. Deliberately NOT declared: `ts-poet`. The scaffolded templates
|
|
459
|
+
* import the ts-poet combinators via @metaobjectsdev/codegen-ts (re-exported from its
|
|
460
|
+
* own ts-poet instance) precisely so that the Code objects they compose share ONE
|
|
461
|
+
* ts-poet copy with the engine's render* primitives — a project-local ts-poet is the
|
|
462
|
+
* second physical copy that split the class identity under a globally-installed /
|
|
463
|
+
* linked CLI (duplicate imports in generated files, TS2300 on first tsc; see the
|
|
464
|
+
* gen-split-tree gate). Only ever ADDS a missing key: an existing pin is the user's.
|
|
465
|
+
* Returns what it added so the caller can tell them to install.
|
|
466
|
+
*/
|
|
467
|
+
function addScaffoldDevDependencies(pkg) {
|
|
468
|
+
const version = cliVersion();
|
|
469
|
+
const wanted = {
|
|
470
|
+
"@metaobjectsdev/codegen-ts": `^${version}`,
|
|
471
|
+
"@metaobjectsdev/metadata": `^${version}`,
|
|
472
|
+
};
|
|
473
|
+
const dev = (pkg.devDependencies ?? {});
|
|
474
|
+
const deps = (pkg.dependencies ?? {});
|
|
475
|
+
const added = [];
|
|
476
|
+
for (const [name, range] of Object.entries(wanted)) {
|
|
477
|
+
if (dev[name] !== undefined || deps[name] !== undefined)
|
|
478
|
+
continue;
|
|
479
|
+
dev[name] = range;
|
|
480
|
+
added.push(name);
|
|
481
|
+
}
|
|
482
|
+
if (added.length > 0) {
|
|
483
|
+
pkg.devDependencies = Object.fromEntries(Object.entries(dev).sort(([a], [b]) => a.localeCompare(b)));
|
|
484
|
+
}
|
|
485
|
+
return added;
|
|
486
|
+
}
|
|
487
|
+
/** True when the project has hand-written CommonJS at the root (excluding tooling dirs). */
|
|
488
|
+
async function hasCommonJsSources(cwd) {
|
|
489
|
+
const SKIP = new Set(["node_modules", ".git", "dist", "build", ".metaobjects", "codegen"]);
|
|
490
|
+
const stack = [cwd];
|
|
491
|
+
let scanned = 0;
|
|
492
|
+
while (stack.length > 0 && scanned < 400) {
|
|
493
|
+
const dir = stack.pop();
|
|
494
|
+
let entries;
|
|
495
|
+
try {
|
|
496
|
+
entries = await readdir(dir, { withFileTypes: true });
|
|
497
|
+
}
|
|
498
|
+
catch {
|
|
499
|
+
continue;
|
|
500
|
+
}
|
|
501
|
+
for (const e of entries) {
|
|
502
|
+
if (e.isDirectory()) {
|
|
503
|
+
if (!SKIP.has(e.name) && !e.name.startsWith("."))
|
|
504
|
+
stack.push(join(dir, e.name));
|
|
505
|
+
continue;
|
|
506
|
+
}
|
|
507
|
+
if (e.name.endsWith(".cjs"))
|
|
508
|
+
return true;
|
|
509
|
+
if (!e.name.endsWith(".js"))
|
|
510
|
+
continue;
|
|
511
|
+
scanned++;
|
|
512
|
+
try {
|
|
513
|
+
const body = await readFile(join(dir, e.name), "utf8");
|
|
514
|
+
if (/\brequire\s*\(|\bmodule\.exports\b|\bexports\.\w/.test(body))
|
|
515
|
+
return true;
|
|
516
|
+
}
|
|
517
|
+
catch { /* unreadable — not evidence of CJS */ }
|
|
518
|
+
}
|
|
519
|
+
}
|
|
520
|
+
return false;
|
|
521
|
+
}
|
|
388
522
|
function buildD1MigrateBlock(cwd) {
|
|
389
523
|
const block = { dialect: "d1" };
|
|
390
524
|
const cfgPath = findWranglerConfig(cwd);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load-metaobjects-config.d.ts","sourceRoot":"","sources":["../../../src/lib/load-metaobjects-config.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"load-metaobjects-config.d.ts","sourceRoot":"","sources":["../../../src/lib/load-metaobjects-config.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAgJvE,wBAAsB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAuH9F"}
|
|
@@ -31,8 +31,10 @@ const _require = createRequire(import.meta.url);
|
|
|
31
31
|
// @metaobjectsdev/cli is this package itself, so it resolves directly from
|
|
32
32
|
// _cliDir rather than through node_modules (which would be a non-existent
|
|
33
33
|
// self-referential symlink).
|
|
34
|
+
const CODEGEN_TS_PKG = "@metaobjectsdev/codegen-ts";
|
|
35
|
+
const TS_POET_PKG = "ts-poet";
|
|
34
36
|
const CLI_PKG_PATHS = {
|
|
35
|
-
|
|
37
|
+
[CODEGEN_TS_PKG]: {
|
|
36
38
|
dist: "node_modules/@metaobjectsdev/codegen-ts/dist/index.js",
|
|
37
39
|
src: "node_modules/@metaobjectsdev/codegen-ts/src/index.ts",
|
|
38
40
|
},
|
|
@@ -158,6 +160,26 @@ export async function loadMetaobjectsConfig(projectRoot) {
|
|
|
158
160
|
for (const specifier of Object.keys(CLI_PKG_PATHS)) {
|
|
159
161
|
aliasMap[specifier] = resolveCliPkg(specifier);
|
|
160
162
|
}
|
|
163
|
+
// ts-poet must resolve to the SAME physical copy @metaobjectsdev/codegen-ts uses.
|
|
164
|
+
// The scaffolded (ADR-0034 owned) generators compose ts-poet Code objects with the
|
|
165
|
+
// engine's render* primitives, and ts-poet recognizes nested Code/Import
|
|
166
|
+
// placeholders by `instanceof` — when the CLI tree and the project tree hold two
|
|
167
|
+
// physical ts-poet copies (globally-installed or linked CLI + the project-local
|
|
168
|
+
// devDependency `meta init` adds), a bare project-side `import ... from "ts-poet"`
|
|
169
|
+
// splits the class identity and every cross-boundary section renders standalone
|
|
170
|
+
// with its own import header (duplicate `import { eq } from "drizzle-orm"` —
|
|
171
|
+
// TS2300 on the adopter's first tsc). Newly scaffolded templates import the
|
|
172
|
+
// combinators from @metaobjectsdev/codegen-ts directly; this alias repairs
|
|
173
|
+
// EXISTING scaffolds that still import bare "ts-poet". In a flat single-tree
|
|
174
|
+
// install the alias resolves to the copy the project would load anyway (no-op).
|
|
175
|
+
// Gated by test/gen-split-tree-single-import.test.ts.
|
|
176
|
+
const codegenTsResolved = aliasMap[CODEGEN_TS_PKG];
|
|
177
|
+
if (codegenTsResolved !== undefined) {
|
|
178
|
+
try {
|
|
179
|
+
aliasMap[TS_POET_PKG] = createRequire(codegenTsResolved).resolve(TS_POET_PKG);
|
|
180
|
+
}
|
|
181
|
+
catch { /* no ts-poet adjacent to codegen-ts — leave project resolution in place */ }
|
|
182
|
+
}
|
|
161
183
|
// Pre-process the config file content to rewrite @metaobjectsdev/* import
|
|
162
184
|
// specifiers to resolved absolute paths. This is the primary mechanism that
|
|
163
185
|
// ensures the CLI's own copies are used: jiti's `alias` map is kept below as
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load-metaobjects-config.js","sourceRoot":"","sources":["../../../src/lib/load-metaobjects-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAGlC,MAAM,WAAW,GAAG,uBAAuB,CAAC;AAE5C,+EAA+E;AAC/E,4EAA4E;AAC5E,6EAA6E;AAC7E,wDAAwD;AACxD,MAAM,gBAAgB,GAAG,2BAA2B,CAAC;AAErD,6EAA6E;AAC7E,+EAA+E;AAC/E,mEAAmE;AACnE,EAAE;AACF,mFAAmF;AACnF,mFAAmF;AACnF,+FAA+F;AAC/F,gEAAgE;AAChE,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACjD,MAAM,WAAW,GAAG,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AACjD,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;AAC7E,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAChD,8EAA8E;AAC9E,4EAA4E;AAC5E,gFAAgF;AAChF,iDAAiD;AACjD,EAAE;AACF,2EAA2E;AAC3E,0EAA0E;AAC1E,6BAA6B;AAC7B,MAAM,aAAa,GAAkD;IACnE,
|
|
1
|
+
{"version":3,"file":"load-metaobjects-config.js","sourceRoot":"","sources":["../../../src/lib/load-metaobjects-config.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@metaobjectsdev/cli",
|
|
3
|
-
"version": "0.21.
|
|
3
|
+
"version": "0.21.6",
|
|
4
4
|
"description": "CLI for MetaObjects: scaffold, codegen, migrate, and drift-detection commands.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/src/index.js",
|
|
@@ -49,21 +49,21 @@
|
|
|
49
49
|
],
|
|
50
50
|
"dependencies": {
|
|
51
51
|
"@libsql/kysely-libsql": "^0.4.0",
|
|
52
|
-
"@metaobjectsdev/codegen-ts": "0.21.
|
|
53
|
-
"@metaobjectsdev/codegen-ts-react": "0.21.
|
|
54
|
-
"@metaobjectsdev/codegen-ts-tanstack": "0.21.
|
|
55
|
-
"@metaobjectsdev/docs-site": "0.21.
|
|
56
|
-
"@metaobjectsdev/metadata": "0.21.
|
|
57
|
-
"@metaobjectsdev/migrate-ts": "0.21.
|
|
58
|
-
"@metaobjectsdev/render": "0.21.
|
|
59
|
-
"@metaobjectsdev/runtime-ts": "0.21.
|
|
60
|
-
"@metaobjectsdev/sdk": "0.21.
|
|
52
|
+
"@metaobjectsdev/codegen-ts": "0.21.6",
|
|
53
|
+
"@metaobjectsdev/codegen-ts-react": "0.21.6",
|
|
54
|
+
"@metaobjectsdev/codegen-ts-tanstack": "0.21.6",
|
|
55
|
+
"@metaobjectsdev/docs-site": "0.21.6",
|
|
56
|
+
"@metaobjectsdev/metadata": "0.21.6",
|
|
57
|
+
"@metaobjectsdev/migrate-ts": "0.21.6",
|
|
58
|
+
"@metaobjectsdev/render": "0.21.6",
|
|
59
|
+
"@metaobjectsdev/runtime-ts": "0.21.6",
|
|
60
|
+
"@metaobjectsdev/sdk": "0.21.6",
|
|
61
61
|
"@toon-format/toon": "^2.3.0",
|
|
62
62
|
"jiti": "^2.4.0"
|
|
63
63
|
},
|
|
64
64
|
"peerDependencies": {
|
|
65
|
-
"kysely": ">=0.27.0",
|
|
66
|
-
"pg": ">=8.0.0"
|
|
65
|
+
"kysely": ">=0.27.0 <0.30.0",
|
|
66
|
+
"pg": ">=8.0.0 <9.0.0"
|
|
67
67
|
},
|
|
68
68
|
"peerDependenciesMeta": {
|
|
69
69
|
"pg": {
|
package/src/commands/init.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { mkdir, writeFile, readFile, stat } from "node:fs/promises";
|
|
1
|
+
import { mkdir, writeFile, readFile, readdir, stat } from "node:fs/promises";
|
|
2
2
|
import { join } from "node:path";
|
|
3
3
|
import { basename, dirname } from "node:path";
|
|
4
4
|
import { existsSync as existsSyncWrap, readFileSync as readFileSyncWrap } from "node:fs";
|
|
@@ -102,6 +102,8 @@ Initialized metaobjects/ + .metaobjects/ + metaobjects.config.ts
|
|
|
102
102
|
Codegen generators copied to codegen/generators/ — they're YOURS to edit (ADR-0034 scaffold-and-own).
|
|
103
103
|
|
|
104
104
|
Next steps:
|
|
105
|
+
0. Everything here is ESM — package.json needs "type": "module" (init sets it
|
|
106
|
+
unless the project has CommonJS sources; without it the first tsc fails).
|
|
105
107
|
1. Author entities under metaobjects/ (start from the scaffolded meta.common.json)
|
|
106
108
|
2. meta gen # generate idiomatic TypeScript from your entities
|
|
107
109
|
meta gen --dry-run # ...preview without writing
|
|
@@ -442,9 +444,143 @@ export async function init(opts: InitOptions): Promise<InitResult> {
|
|
|
442
444
|
result.preserved.push(".gitignore");
|
|
443
445
|
}
|
|
444
446
|
|
|
447
|
+
await ensureEsmPackageType(opts.cwd, result);
|
|
448
|
+
|
|
445
449
|
return result;
|
|
446
450
|
}
|
|
447
451
|
|
|
452
|
+
/**
|
|
453
|
+
* MetaObjects emits ESM only, and so does everything `meta init` scaffolds. If the
|
|
454
|
+
* project's `package.json` does not say so, the FIRST `tsc` a new adopter runs fails
|
|
455
|
+
* — not subtly:
|
|
456
|
+
*
|
|
457
|
+
* codegen/generators/barrel.ts(14,3): error TS1295: ECMAScript imports and
|
|
458
|
+
* exports cannot be written in a CommonJS file under 'verbatimModuleSyntax'.
|
|
459
|
+
*
|
|
460
|
+
* …ninety-odd times, across the scaffolded generators and every generated file, on
|
|
461
|
+
* the exact path the README and these next-steps prescribe. Two ecosystem defaults
|
|
462
|
+
* conspire: `npm init -y` now writes `"type": "commonjs"` explicitly, and a stock
|
|
463
|
+
* `tsc --init` on TypeScript 7 enables `verbatimModuleSyntax`.
|
|
464
|
+
*
|
|
465
|
+
* So set it — but never silently take a real CommonJS project with it. A project
|
|
466
|
+
* that has actual CJS sources gets a loud, specific warning instead of an edit,
|
|
467
|
+
* because changing a module system out from under working code is not ours to do.
|
|
468
|
+
*/
|
|
469
|
+
async function ensureEsmPackageType(cwd: string, result: InitResult): Promise<void> {
|
|
470
|
+
const pkgPath = join(cwd, "package.json");
|
|
471
|
+
if (!(await fileExists(pkgPath))) {
|
|
472
|
+
// No package.json at all: say what is needed rather than inventing a manifest
|
|
473
|
+
// (name/version/license are the user's to choose).
|
|
474
|
+
result.warnings.push(
|
|
475
|
+
'no package.json found — create one with `npm init -y`, then set `"type": "module"`: ' +
|
|
476
|
+
"MetaObjects scaffolds and generates ESM, which will not compile in a CommonJS project.",
|
|
477
|
+
);
|
|
478
|
+
return;
|
|
479
|
+
}
|
|
480
|
+
|
|
481
|
+
let pkg: Record<string, unknown>;
|
|
482
|
+
let raw: string;
|
|
483
|
+
try {
|
|
484
|
+
raw = await readFile(pkgPath, "utf8");
|
|
485
|
+
pkg = JSON.parse(raw) as Record<string, unknown>;
|
|
486
|
+
} catch {
|
|
487
|
+
result.warnings.push(
|
|
488
|
+
'package.json could not be parsed — ensure it sets `"type": "module"` by hand ' +
|
|
489
|
+
"(MetaObjects scaffolds and generates ESM).",
|
|
490
|
+
);
|
|
491
|
+
return;
|
|
492
|
+
}
|
|
493
|
+
|
|
494
|
+
if (pkg.type === "module") return; // already correct — nothing to do, nothing to say
|
|
495
|
+
|
|
496
|
+
if (await hasCommonJsSources(cwd)) {
|
|
497
|
+
result.warnings.push(
|
|
498
|
+
'this project has CommonJS sources, so `"type": "module"` was NOT set for you — ' +
|
|
499
|
+
"but the scaffolded generators and all generated code are ESM and will not " +
|
|
500
|
+
"compile without it. Either migrate the project to ESM, or keep the generated " +
|
|
501
|
+
"code in a sub-directory with its own package.json declaring `\"type\": \"module\"`.",
|
|
502
|
+
);
|
|
503
|
+
return;
|
|
504
|
+
}
|
|
505
|
+
|
|
506
|
+
pkg.type = "module";
|
|
507
|
+
const added = addScaffoldDevDependencies(pkg);
|
|
508
|
+
// Preserve the file's existing indentation rather than reformatting someone's manifest.
|
|
509
|
+
const indent = /\n(\s+)"/.exec(raw)?.[1] ?? " ";
|
|
510
|
+
await writeFile(pkgPath, `${JSON.stringify(pkg, null, indent)}\n`, "utf8");
|
|
511
|
+
result.warnings.push(
|
|
512
|
+
'set `"type": "module"` in package.json — MetaObjects scaffolds and generates ESM, ' +
|
|
513
|
+
"which a CommonJS project cannot compile.",
|
|
514
|
+
);
|
|
515
|
+
if (added.length > 0) {
|
|
516
|
+
result.warnings.push(
|
|
517
|
+
`added ${added.join(" + ")} to devDependencies — the scaffolded ` +
|
|
518
|
+
"codegen/generators/ are YOUR source now (ADR-0034) and import them. " +
|
|
519
|
+
"Run your package manager's install before `meta gen`.",
|
|
520
|
+
);
|
|
521
|
+
}
|
|
522
|
+
}
|
|
523
|
+
|
|
524
|
+
/**
|
|
525
|
+
* ADR-0034 scaffold-and-own hands the project real source files under
|
|
526
|
+
* `codegen/generators/`, and those files import `@metaobjectsdev/codegen-ts` and
|
|
527
|
+
* `@metaobjectsdev/metadata`. Installing `@metaobjectsdev/cli` alone does not put
|
|
528
|
+
* either of them where the project can resolve them, so the scaffold arrived
|
|
529
|
+
* un-typecheckable: ten TS2307s on files `meta init` had just written.
|
|
530
|
+
*
|
|
531
|
+
* Declaring them is the honest fix — they are dependencies of code that now lives in
|
|
532
|
+
* the adopter's repo. Deliberately NOT declared: `ts-poet`. The scaffolded templates
|
|
533
|
+
* import the ts-poet combinators via @metaobjectsdev/codegen-ts (re-exported from its
|
|
534
|
+
* own ts-poet instance) precisely so that the Code objects they compose share ONE
|
|
535
|
+
* ts-poet copy with the engine's render* primitives — a project-local ts-poet is the
|
|
536
|
+
* second physical copy that split the class identity under a globally-installed /
|
|
537
|
+
* linked CLI (duplicate imports in generated files, TS2300 on first tsc; see the
|
|
538
|
+
* gen-split-tree gate). Only ever ADDS a missing key: an existing pin is the user's.
|
|
539
|
+
* Returns what it added so the caller can tell them to install.
|
|
540
|
+
*/
|
|
541
|
+
function addScaffoldDevDependencies(pkg: Record<string, unknown>): string[] {
|
|
542
|
+
const version = cliVersion();
|
|
543
|
+
const wanted: Record<string, string> = {
|
|
544
|
+
"@metaobjectsdev/codegen-ts": `^${version}`,
|
|
545
|
+
"@metaobjectsdev/metadata": `^${version}`,
|
|
546
|
+
};
|
|
547
|
+
const dev = (pkg.devDependencies ?? {}) as Record<string, string>;
|
|
548
|
+
const deps = (pkg.dependencies ?? {}) as Record<string, string>;
|
|
549
|
+
const added: string[] = [];
|
|
550
|
+
for (const [name, range] of Object.entries(wanted)) {
|
|
551
|
+
if (dev[name] !== undefined || deps[name] !== undefined) continue;
|
|
552
|
+
dev[name] = range;
|
|
553
|
+
added.push(name);
|
|
554
|
+
}
|
|
555
|
+
if (added.length > 0) {
|
|
556
|
+
pkg.devDependencies = Object.fromEntries(Object.entries(dev).sort(([a], [b]) => a.localeCompare(b)));
|
|
557
|
+
}
|
|
558
|
+
return added;
|
|
559
|
+
}
|
|
560
|
+
|
|
561
|
+
/** True when the project has hand-written CommonJS at the root (excluding tooling dirs). */
|
|
562
|
+
async function hasCommonJsSources(cwd: string): Promise<boolean> {
|
|
563
|
+
const SKIP = new Set(["node_modules", ".git", "dist", "build", ".metaobjects", "codegen"]);
|
|
564
|
+
const stack = [cwd];
|
|
565
|
+
let scanned = 0;
|
|
566
|
+
while (stack.length > 0 && scanned < 400) {
|
|
567
|
+
const dir = stack.pop()!;
|
|
568
|
+
let entries;
|
|
569
|
+
try { entries = await readdir(dir, { withFileTypes: true }); } catch { continue; }
|
|
570
|
+
for (const e of entries) {
|
|
571
|
+
if (e.isDirectory()) { if (!SKIP.has(e.name) && !e.name.startsWith(".")) stack.push(join(dir, e.name)); continue; }
|
|
572
|
+
if (e.name.endsWith(".cjs")) return true;
|
|
573
|
+
if (!e.name.endsWith(".js")) continue;
|
|
574
|
+
scanned++;
|
|
575
|
+
try {
|
|
576
|
+
const body = await readFile(join(dir, e.name), "utf8");
|
|
577
|
+
if (/\brequire\s*\(|\bmodule\.exports\b|\bexports\.\w/.test(body)) return true;
|
|
578
|
+
} catch { /* unreadable — not evidence of CJS */ }
|
|
579
|
+
}
|
|
580
|
+
}
|
|
581
|
+
return false;
|
|
582
|
+
}
|
|
583
|
+
|
|
448
584
|
function buildD1MigrateBlock(cwd: string): Record<string, unknown> {
|
|
449
585
|
const block: Record<string, unknown> = { dialect: "d1" };
|
|
450
586
|
const cfgPath = findWranglerConfig(cwd);
|
|
@@ -35,8 +35,10 @@ const _require = createRequire(import.meta.url);
|
|
|
35
35
|
// @metaobjectsdev/cli is this package itself, so it resolves directly from
|
|
36
36
|
// _cliDir rather than through node_modules (which would be a non-existent
|
|
37
37
|
// self-referential symlink).
|
|
38
|
+
const CODEGEN_TS_PKG = "@metaobjectsdev/codegen-ts";
|
|
39
|
+
const TS_POET_PKG = "ts-poet";
|
|
38
40
|
const CLI_PKG_PATHS: Record<string, { dist: string; src: string }> = {
|
|
39
|
-
|
|
41
|
+
[CODEGEN_TS_PKG]: {
|
|
40
42
|
dist: "node_modules/@metaobjectsdev/codegen-ts/dist/index.js",
|
|
41
43
|
src: "node_modules/@metaobjectsdev/codegen-ts/src/index.ts",
|
|
42
44
|
},
|
|
@@ -172,6 +174,26 @@ export async function loadMetaobjectsConfig(projectRoot: string): Promise<Metaob
|
|
|
172
174
|
aliasMap[specifier] = resolveCliPkg(specifier);
|
|
173
175
|
}
|
|
174
176
|
|
|
177
|
+
// ts-poet must resolve to the SAME physical copy @metaobjectsdev/codegen-ts uses.
|
|
178
|
+
// The scaffolded (ADR-0034 owned) generators compose ts-poet Code objects with the
|
|
179
|
+
// engine's render* primitives, and ts-poet recognizes nested Code/Import
|
|
180
|
+
// placeholders by `instanceof` — when the CLI tree and the project tree hold two
|
|
181
|
+
// physical ts-poet copies (globally-installed or linked CLI + the project-local
|
|
182
|
+
// devDependency `meta init` adds), a bare project-side `import ... from "ts-poet"`
|
|
183
|
+
// splits the class identity and every cross-boundary section renders standalone
|
|
184
|
+
// with its own import header (duplicate `import { eq } from "drizzle-orm"` —
|
|
185
|
+
// TS2300 on the adopter's first tsc). Newly scaffolded templates import the
|
|
186
|
+
// combinators from @metaobjectsdev/codegen-ts directly; this alias repairs
|
|
187
|
+
// EXISTING scaffolds that still import bare "ts-poet". In a flat single-tree
|
|
188
|
+
// install the alias resolves to the copy the project would load anyway (no-op).
|
|
189
|
+
// Gated by test/gen-split-tree-single-import.test.ts.
|
|
190
|
+
const codegenTsResolved = aliasMap[CODEGEN_TS_PKG];
|
|
191
|
+
if (codegenTsResolved !== undefined) {
|
|
192
|
+
try {
|
|
193
|
+
aliasMap[TS_POET_PKG] = createRequire(codegenTsResolved).resolve(TS_POET_PKG);
|
|
194
|
+
} catch { /* no ts-poet adjacent to codegen-ts — leave project resolution in place */ }
|
|
195
|
+
}
|
|
196
|
+
|
|
175
197
|
// Pre-process the config file content to rewrite @metaobjectsdev/* import
|
|
176
198
|
// specifiers to resolved absolute paths. This is the primary mechanism that
|
|
177
199
|
// ensures the CLI's own copies are used: jiti's `alias` map is kept below as
|