@metaobjectsdev/cli 1.0.2 → 1.0.4-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 +13 -5
- package/dist/src/commands/deps.d.ts +3 -0
- package/dist/src/commands/deps.d.ts.map +1 -0
- package/dist/src/commands/deps.js +200 -0
- package/dist/src/commands/deps.js.map +1 -0
- package/dist/src/commands/docs.d.ts.map +1 -1
- package/dist/src/commands/docs.js +19 -3
- package/dist/src/commands/docs.js.map +1 -1
- package/dist/src/commands/eject.d.ts +2 -1
- package/dist/src/commands/eject.d.ts.map +1 -1
- package/dist/src/commands/eject.js +235 -75
- package/dist/src/commands/eject.js.map +1 -1
- package/dist/src/commands/gen.d.ts.map +1 -1
- package/dist/src/commands/gen.js +173 -30
- package/dist/src/commands/gen.js.map +1 -1
- package/dist/src/commands/init.d.ts +5 -9
- package/dist/src/commands/init.d.ts.map +1 -1
- package/dist/src/commands/init.js +92 -402
- package/dist/src/commands/init.js.map +1 -1
- package/dist/src/commands/migrate.d.ts.map +1 -1
- package/dist/src/commands/migrate.js +24 -19
- package/dist/src/commands/migrate.js.map +1 -1
- package/dist/src/commands/prompt-snapshot.d.ts.map +1 -1
- package/dist/src/commands/prompt-snapshot.js +2 -1
- package/dist/src/commands/prompt-snapshot.js.map +1 -1
- package/dist/src/commands/verify.d.ts.map +1 -1
- package/dist/src/commands/verify.js +186 -29
- package/dist/src/commands/verify.js.map +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +97 -15
- package/dist/src/index.js.map +1 -1
- package/dist/src/lib/advisory.d.ts +6 -0
- package/dist/src/lib/advisory.d.ts.map +1 -1
- package/dist/src/lib/advisory.js +10 -0
- package/dist/src/lib/advisory.js.map +1 -1
- package/dist/src/lib/agent-context-staleness.d.ts.map +1 -1
- package/dist/src/lib/agent-context-staleness.js +7 -1
- package/dist/src/lib/agent-context-staleness.js.map +1 -1
- package/dist/src/lib/args.d.ts +75 -3
- package/dist/src/lib/args.d.ts.map +1 -1
- package/dist/src/lib/args.js +54 -5
- package/dist/src/lib/args.js.map +1 -1
- package/dist/src/lib/catalog-listing.d.ts +92 -0
- package/dist/src/lib/catalog-listing.d.ts.map +1 -0
- package/dist/src/lib/catalog-listing.js +268 -0
- package/dist/src/lib/catalog-listing.js.map +1 -0
- package/dist/src/lib/catalog.d.ts +41 -0
- package/dist/src/lib/catalog.d.ts.map +1 -0
- package/dist/src/lib/catalog.js +89 -0
- package/dist/src/lib/catalog.js.map +1 -0
- package/dist/src/lib/collection-load-options.d.ts +13 -0
- package/dist/src/lib/collection-load-options.d.ts.map +1 -0
- package/dist/src/lib/collection-load-options.js +25 -0
- package/dist/src/lib/collection-load-options.js.map +1 -0
- package/dist/src/lib/dependency-sync.d.ts +170 -0
- package/dist/src/lib/dependency-sync.d.ts.map +1 -0
- package/dist/src/lib/dependency-sync.js +457 -0
- package/dist/src/lib/dependency-sync.js.map +1 -0
- package/dist/src/lib/install-set.d.ts +31 -0
- package/dist/src/lib/install-set.d.ts.map +1 -0
- package/dist/src/lib/install-set.js +103 -0
- package/dist/src/lib/install-set.js.map +1 -0
- package/dist/src/lib/library-eject.d.ts +79 -0
- package/dist/src/lib/library-eject.d.ts.map +1 -0
- package/dist/src/lib/library-eject.js +241 -0
- package/dist/src/lib/library-eject.js.map +1 -0
- package/dist/src/lib/library-listing.d.ts +63 -0
- package/dist/src/lib/library-listing.d.ts.map +1 -0
- package/dist/src/lib/library-listing.js +178 -0
- package/dist/src/lib/library-listing.js.map +1 -0
- package/dist/src/lib/library-prefix-advisory.d.ts +17 -0
- package/dist/src/lib/library-prefix-advisory.d.ts.map +1 -0
- package/dist/src/lib/library-prefix-advisory.js +67 -0
- package/dist/src/lib/library-prefix-advisory.js.map +1 -0
- package/dist/src/lib/load-metaobjects-config.d.ts +1 -2
- package/dist/src/lib/load-metaobjects-config.d.ts.map +1 -1
- package/dist/src/lib/load-metaobjects-config.js +11 -17
- package/dist/src/lib/load-metaobjects-config.js.map +1 -1
- package/dist/src/lib/migrate-scope.d.ts +32 -1
- package/dist/src/lib/migrate-scope.d.ts.map +1 -1
- package/dist/src/lib/migrate-scope.js +51 -3
- package/dist/src/lib/migrate-scope.js.map +1 -1
- package/dist/src/lib/overlay-lint.d.ts +37 -0
- package/dist/src/lib/overlay-lint.d.ts.map +1 -0
- package/dist/src/lib/overlay-lint.js +102 -0
- package/dist/src/lib/overlay-lint.js.map +1 -0
- package/dist/src/lib/requirement-check.d.ts +26 -3
- package/dist/src/lib/requirement-check.d.ts.map +1 -1
- package/dist/src/lib/requirement-check.js +71 -13
- package/dist/src/lib/requirement-check.js.map +1 -1
- package/package.json +10 -10
- package/src/commands/deps.ts +231 -0
- package/src/commands/docs.ts +19 -3
- package/src/commands/eject.ts +304 -90
- package/src/commands/gen.ts +189 -29
- package/src/commands/init.ts +95 -407
- package/src/commands/migrate.ts +26 -16
- package/src/commands/prompt-snapshot.ts +2 -1
- package/src/commands/verify.ts +213 -30
- package/src/index.ts +97 -15
- package/src/lib/advisory.ts +13 -0
- package/src/lib/agent-context-staleness.ts +7 -1
- package/src/lib/args.ts +118 -8
- package/src/lib/catalog-listing.ts +369 -0
- package/src/lib/catalog.ts +107 -0
- package/src/lib/collection-load-options.ts +42 -0
- package/src/lib/dependency-sync.ts +656 -0
- package/src/lib/install-set.ts +116 -0
- package/src/lib/library-eject.ts +298 -0
- package/src/lib/library-listing.ts +258 -0
- package/src/lib/library-prefix-advisory.ts +78 -0
- package/src/lib/load-metaobjects-config.ts +15 -21
- package/src/lib/migrate-scope.ts +59 -4
- package/src/lib/overlay-lint.ts +129 -0
- package/src/lib/requirement-check.ts +100 -14
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
// `meta gen --list` — the LIBRARY rows (FR-043 §4).
|
|
2
|
+
//
|
|
3
|
+
// It is the codegen catalog, with `kind: "library"` rows in the same table rather than
|
|
4
|
+
// a parallel one: one door, one namespace, one `--probe`, one skill procedure. An agent
|
|
5
|
+
// about to model "users and permissions" should meet `iam` in the list it was already
|
|
6
|
+
// reading, not in a second command it has to know exists.
|
|
7
|
+
//
|
|
8
|
+
// THE ROW DESCRIBES THE BOX; THE PROJECT BLOCK DESCRIBES YOUR SHELF. `provides` counts
|
|
9
|
+
// what the library ships across ALL its layers — what you would get if you took every
|
|
10
|
+
// layer — while `project.tablesAdded` counts what YOUR selection actually put into the
|
|
11
|
+
// model. Those are different numbers whenever an adopter takes the core layer alone,
|
|
12
|
+
// which Amendment 1 makes the common case: `libraries: ["iam"]` provides nine entities
|
|
13
|
+
// and adds zero tables.
|
|
14
|
+
//
|
|
15
|
+
// Every fact here is COMPUTED — from the manifest, or by loading the library and
|
|
16
|
+
// counting. Nothing is a second copy of a sentence written somewhere else, which is the
|
|
17
|
+
// rule §4 states as "every manifest fact is resolved, not trusted".
|
|
18
|
+
import { MetaDataLoader, TYPE_OBJECT, TYPE_REQUIREMENT, OBJECT_SUBTYPE_ENTITY, isWritableSource, } from "@metaobjectsdev/metadata";
|
|
19
|
+
import { libraryManifests, librarySources, knownLibraryTokens, splitLayerToken, } from "@metaobjectsdev/metadata/library";
|
|
20
|
+
import { SERVER_LANGS } from "@metaobjectsdev/sdk";
|
|
21
|
+
/** Every selection token belonging to one library, core first. */
|
|
22
|
+
function tokensOf(name) {
|
|
23
|
+
return knownLibraryTokens().filter((t) => splitLayerToken(t)[0] === name);
|
|
24
|
+
}
|
|
25
|
+
/** Walk every node, since a requirement nests to any depth and an object does not. */
|
|
26
|
+
function walk(node, visit) {
|
|
27
|
+
for (const child of node.children()) {
|
|
28
|
+
visit(child);
|
|
29
|
+
walk(child, visit);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
function effectivePackage(node) {
|
|
33
|
+
return node.package ?? node.fileDefaultPackage ?? "";
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Load one library with ALL of its layers and count what it ships.
|
|
37
|
+
*
|
|
38
|
+
* The FULL selection, not the core: `provides` answers "what is in this library",
|
|
39
|
+
* and an adopter reading it is deciding whether to opt in at all. What their current
|
|
40
|
+
* selection actually added is the project block's job.
|
|
41
|
+
*/
|
|
42
|
+
async function providesOf(name, manifest) {
|
|
43
|
+
const result = await new MetaDataLoader({ strict: true }).load(librarySources(tokensOf(name)));
|
|
44
|
+
let entities = 0;
|
|
45
|
+
let abstracts = 0;
|
|
46
|
+
let requirements = 0;
|
|
47
|
+
walk(result.root, (n) => {
|
|
48
|
+
if (n.type === TYPE_REQUIREMENT)
|
|
49
|
+
requirements++;
|
|
50
|
+
else if (n.type === TYPE_OBJECT && n.subType === OBJECT_SUBTYPE_ENTITY) {
|
|
51
|
+
if (n.isAbstract)
|
|
52
|
+
abstracts++;
|
|
53
|
+
else
|
|
54
|
+
entities++;
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
return {
|
|
58
|
+
entities,
|
|
59
|
+
abstracts,
|
|
60
|
+
requirements,
|
|
61
|
+
generators: (manifest.generators ?? []).map((g) => g.name),
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* The project facts for one library.
|
|
66
|
+
*
|
|
67
|
+
* `extendedBy` and the two counts read the LOADED model rather than the library,
|
|
68
|
+
* because that is the question being answered: not "what does iam contain" but "what
|
|
69
|
+
* is iam doing in this repo". Without `--probe` there is no model and they are null —
|
|
70
|
+
* never zero, which would read as "nothing", the opposite of "not measured".
|
|
71
|
+
*/
|
|
72
|
+
function projectFactsFor(manifest, ctx) {
|
|
73
|
+
const name = manifest.name;
|
|
74
|
+
const selectedLayers = ctx.libraries.filter((t) => splitLayerToken(t)[0] === name);
|
|
75
|
+
const impliedGeneratorsNotWired = (manifest.generators ?? [])
|
|
76
|
+
.map((g) => g.name)
|
|
77
|
+
.filter((g) => !ctx.wiredNames.has(g));
|
|
78
|
+
const facts = {
|
|
79
|
+
optedIn: selectedLayers.length > 0,
|
|
80
|
+
selectedLayers,
|
|
81
|
+
extendedBy: null,
|
|
82
|
+
tablesAdded: null,
|
|
83
|
+
requirementsAdded: null,
|
|
84
|
+
impliedGeneratorsNotWired,
|
|
85
|
+
};
|
|
86
|
+
if (ctx.metadata === undefined)
|
|
87
|
+
return facts;
|
|
88
|
+
const owned = new Set(manifest.packages ?? []);
|
|
89
|
+
const extendedBy = [];
|
|
90
|
+
let tablesAdded = 0;
|
|
91
|
+
let requirementsAdded = 0;
|
|
92
|
+
walk(ctx.metadata, (n) => {
|
|
93
|
+
const mine = owned.has(effectivePackage(n));
|
|
94
|
+
if (n.type === TYPE_REQUIREMENT && mine)
|
|
95
|
+
requirementsAdded++;
|
|
96
|
+
if (n.type !== TYPE_OBJECT)
|
|
97
|
+
return;
|
|
98
|
+
if (mine) {
|
|
99
|
+
// A writable source is what migrate keys a CREATE TABLE off (#248 —
|
|
100
|
+
// persistability derives from source presence, never from the subtype), so
|
|
101
|
+
// counting them here and counting tables there cannot drift apart.
|
|
102
|
+
if (n.children().some(isWritableSource))
|
|
103
|
+
tablesAdded++;
|
|
104
|
+
return;
|
|
105
|
+
}
|
|
106
|
+
// A project entity reaching this library through `extends`, at any depth: the
|
|
107
|
+
// adoption an adopter would break by removing the library from `libraries`.
|
|
108
|
+
for (let sup = n.superData; sup !== undefined; sup = sup.superData) {
|
|
109
|
+
if (owned.has(effectivePackage(sup))) {
|
|
110
|
+
extendedBy.push(`${effectivePackage(n)}::${n.name}`);
|
|
111
|
+
return;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
});
|
|
115
|
+
facts.extendedBy = extendedBy.sort();
|
|
116
|
+
facts.tablesAdded = tablesAdded;
|
|
117
|
+
facts.requirementsAdded = requirementsAdded;
|
|
118
|
+
return facts;
|
|
119
|
+
}
|
|
120
|
+
/** Every shipped library, as `--list` rows, in name order. */
|
|
121
|
+
export async function buildLibraryRows(ctx) {
|
|
122
|
+
const rows = [];
|
|
123
|
+
for (const [name, manifest] of Object.entries(libraryManifests()).sort(([a], [b]) => a.localeCompare(b))) {
|
|
124
|
+
const layers = tokensOf(name).map((token) => {
|
|
125
|
+
const layer = (manifest.layers ?? {})[splitLayerToken(token)[1]];
|
|
126
|
+
return layer?.description === undefined
|
|
127
|
+
? { token }
|
|
128
|
+
: { token, description: layer.description };
|
|
129
|
+
});
|
|
130
|
+
rows.push({
|
|
131
|
+
name,
|
|
132
|
+
kind: "library",
|
|
133
|
+
libraryKind: manifest.kind ?? "feature",
|
|
134
|
+
stability: manifest.stability ?? "preview",
|
|
135
|
+
ports: SERVER_LANGS,
|
|
136
|
+
description: manifest.description ?? "",
|
|
137
|
+
...(manifest.useWhen !== undefined ? { useWhen: manifest.useWhen } : {}),
|
|
138
|
+
packages: manifest.packages ?? [],
|
|
139
|
+
layers,
|
|
140
|
+
provides: await providesOf(name, manifest),
|
|
141
|
+
...(ctx === undefined ? {} : { project: projectFactsFor(manifest, ctx) }),
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
return rows;
|
|
145
|
+
}
|
|
146
|
+
function plural(n, one, many) {
|
|
147
|
+
return `${n} ${n === 1 ? one : many}`;
|
|
148
|
+
}
|
|
149
|
+
/** The human rendering — one section, after the generator layers. */
|
|
150
|
+
export function renderLibraryText(rows) {
|
|
151
|
+
if (rows.length === 0)
|
|
152
|
+
return [];
|
|
153
|
+
const lines = [];
|
|
154
|
+
lines.push("");
|
|
155
|
+
lines.push("libraries — declared design you opt into, a LAYER at a time; the core layer adds no tables");
|
|
156
|
+
for (const r of rows) {
|
|
157
|
+
const marks = [r.stability];
|
|
158
|
+
if (r.project?.optedIn)
|
|
159
|
+
marks.push(`opted in: ${r.project.selectedLayers.join(", ")}`);
|
|
160
|
+
if (r.project?.tablesAdded)
|
|
161
|
+
marks.push(`${plural(r.project.tablesAdded, "table", "tables")} added`);
|
|
162
|
+
lines.push(` ${r.name} — ${r.description} [${marks.join(", ")}]`);
|
|
163
|
+
if (r.useWhen !== undefined)
|
|
164
|
+
lines.push(` use when: ${r.useWhen}`);
|
|
165
|
+
lines.push(` provides: ${plural(r.provides.entities, "entity", "entities")}, ` +
|
|
166
|
+
`${r.provides.abstracts} abstract, ` +
|
|
167
|
+
`${plural(r.provides.requirements, "requirement", "requirements")}`);
|
|
168
|
+
lines.push(` layers: ${r.layers.map((l) => l.token).join(", ")}`);
|
|
169
|
+
if (r.project !== null && r.project?.impliedGeneratorsNotWired.length) {
|
|
170
|
+
lines.push(` implies: ${r.project.impliedGeneratorsNotWired.join(", ")} (not wired)`);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
lines.push("");
|
|
174
|
+
lines.push('Opt in with `"libraries": ["iam", "iam/db"]` in .metaobjects/config.json —');
|
|
175
|
+
lines.push("the bare name is the core layer, and a layer token implies it.");
|
|
176
|
+
return lines;
|
|
177
|
+
}
|
|
178
|
+
//# sourceMappingURL=library-listing.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"library-listing.js","sourceRoot":"","sources":["../../../src/lib/library-listing.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { MetaData } from "@metaobjectsdev/metadata";
|
|
2
|
+
/** The prefix every shipped library declares into. */
|
|
3
|
+
export declare const LIBRARY_PACKAGE_PREFIX = "metaobjects::";
|
|
4
|
+
export interface LibraryPrefixFinding {
|
|
5
|
+
file: string;
|
|
6
|
+
fqn: string;
|
|
7
|
+
message: string;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Root nodes under `metaobjects::` whose file carries no ejection provenance.
|
|
11
|
+
*
|
|
12
|
+
* Reads the loaded tree for the nodes and the FILES only for the marker — the marker is
|
|
13
|
+
* `meta eject`'s own bookkeeping, not metadata, so there is nothing in the model to read
|
|
14
|
+
* it from.
|
|
15
|
+
*/
|
|
16
|
+
export declare function scanForUnprovenancedLibraryPrefix(root: MetaData, ownFiles: readonly string[], projectRoot: string): Promise<LibraryPrefixFinding[]>;
|
|
17
|
+
//# sourceMappingURL=library-prefix-advisory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"library-prefix-advisory.d.ts","sourceRoot":"","sources":["../../../src/lib/library-prefix-advisory.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEzD,sDAAsD;AACtD,eAAO,MAAM,sBAAsB,kBAAkB,CAAC;AAEtD,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;GAMG;AACH,wBAAsB,iCAAiC,CACrD,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,SAAS,MAAM,EAAE,EAC3B,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAoCjC"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
// FR-043 §3.5 — `metaobjects::` in an adopter's own metadata, with no ejection provenance.
|
|
2
|
+
//
|
|
3
|
+
// The loader already REFUSES a node in a library's package while that library is opted
|
|
4
|
+
// in (ERR_LIBRARY_PACKAGE_COLLISION / ERR_LIBRARY_PACKAGE_NOT_OWNED). This is the other
|
|
5
|
+
// half, and it is advisory on purpose: with the library NOT opted in there is nothing
|
|
6
|
+
// broken to refuse — the nodes are simply the adopter's, sitting under a prefix this
|
|
7
|
+
// project ships libraries into.
|
|
8
|
+
//
|
|
9
|
+
// Two ways to arrive there, and the advice is the same for both:
|
|
10
|
+
//
|
|
11
|
+
// a hand-copy, rather than `meta eject <library>` — no provenance header, so nothing
|
|
12
|
+
// can tell later where it came from or how far it has drifted;
|
|
13
|
+
// a package名 chosen freely that happens to start `metaobjects::` — which will
|
|
14
|
+
// collide the day a library ships into it.
|
|
15
|
+
//
|
|
16
|
+
// A file carrying the eject marker is exempt: that IS the provenance, and `meta eject
|
|
17
|
+
// --list` reports its staleness.
|
|
18
|
+
import { readFile } from "node:fs/promises";
|
|
19
|
+
import { EJECT_MARKER } from "./library-eject.js";
|
|
20
|
+
/** The prefix every shipped library declares into. */
|
|
21
|
+
export const LIBRARY_PACKAGE_PREFIX = "metaobjects::";
|
|
22
|
+
/**
|
|
23
|
+
* Root nodes under `metaobjects::` whose file carries no ejection provenance.
|
|
24
|
+
*
|
|
25
|
+
* Reads the loaded tree for the nodes and the FILES only for the marker — the marker is
|
|
26
|
+
* `meta eject`'s own bookkeeping, not metadata, so there is nothing in the model to read
|
|
27
|
+
* it from.
|
|
28
|
+
*/
|
|
29
|
+
export async function scanForUnprovenancedLibraryPrefix(root, ownFiles, projectRoot) {
|
|
30
|
+
const suspect = root
|
|
31
|
+
.children()
|
|
32
|
+
.filter((n) => n.resolutionKey().startsWith(LIBRARY_PACKAGE_PREFIX));
|
|
33
|
+
if (suspect.length === 0)
|
|
34
|
+
return [];
|
|
35
|
+
// Which of this project's own files carry the marker — read once, not per node.
|
|
36
|
+
const provenanced = new Set();
|
|
37
|
+
for (const file of ownFiles) {
|
|
38
|
+
try {
|
|
39
|
+
if ((await readFile(file, "utf8")).slice(0, 400).includes(EJECT_MARKER)) {
|
|
40
|
+
provenanced.add(file.slice(projectRoot.length + 1));
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
catch {
|
|
44
|
+
// unreadable — it contributes no exemption, which is the safe direction
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
const out = [];
|
|
48
|
+
for (const node of suspect) {
|
|
49
|
+
const files = "files" in node.source ? node.source.files : [];
|
|
50
|
+
// A node the SHIPPED library contributed is not the adopter's — `library:` ids say so.
|
|
51
|
+
if (files.some((f) => f.startsWith("library:")))
|
|
52
|
+
continue;
|
|
53
|
+
if (files.some((f) => provenanced.has(f) || [...provenanced].some((p) => p.endsWith(f))))
|
|
54
|
+
continue;
|
|
55
|
+
out.push({
|
|
56
|
+
file: files[0] ?? "(unknown)",
|
|
57
|
+
fqn: node.resolutionKey(),
|
|
58
|
+
message: `${node.resolutionKey()} is declared under "${LIBRARY_PACKAGE_PREFIX}", which is where ` +
|
|
59
|
+
`MetaObjects ships its libraries, and no file declaring it carries an ejection header. ` +
|
|
60
|
+
`If it was copied from a library, re-copy it with 'meta eject <library>' so its origin ` +
|
|
61
|
+
`and its drift stay legible; if it is your own, move it to a package you own — a later ` +
|
|
62
|
+
`release shipping a node of that name would merge into yours.`,
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
return out;
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=library-prefix-advisory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"library-prefix-advisory.js","sourceRoot":"","sources":["../../../src/lib/library-prefix-advisory.ts"],"names":[],"mappings":"AAAA,2FAA2F;AAC3F,EAAE;AACF,uFAAuF;AACvF,wFAAwF;AACxF,sFAAsF;AACtF,qFAAqF;AACrF,gCAAgC;AAChC,EAAE;AACF,iEAAiE;AACjE,EAAE;AACF,uFAAuF;AACvF,mEAAmE;AACnE,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,sFAAsF;AACtF,iCAAiC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,sDAAsD;AACtD,MAAM,CAAC,MAAM,sBAAsB,GAAG,eAAe,CAAC;AAQtD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,iCAAiC,CACrD,IAAc,EACd,QAA2B,EAC3B,WAAmB;IAEnB,MAAM,OAAO,GAAG,IAAI;SACjB,QAAQ,EAAE;SACV,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC,CAAC;IACvE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAEpC,gFAAgF;IAChF,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,IAAI,CAAC;YACH,IAAI,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBACxE,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,wEAAwE;QAC1E,CAAC;IACH,CAAC;IAED,MAAM,GAAG,GAA2B,EAAE,CAAC;IACvC,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9D,uFAAuF;QACvF,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAAE,SAAS;QAC1D,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YAAE,SAAS;QACnG,GAAG,CAAC,IAAI,CAAC;YACP,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,WAAW;YAC7B,GAAG,EAAE,IAAI,CAAC,aAAa,EAAE;YACzB,OAAO,EACL,GAAG,IAAI,CAAC,aAAa,EAAE,uBAAuB,sBAAsB,oBAAoB;gBACxF,wFAAwF;gBACxF,wFAAwF;gBACxF,wFAAwF;gBACxF,8DAA8D;SACjE,CAAC,CAAC;IACL,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -26,9 +26,8 @@ export declare function removedGeneratorRuntimeError(err: unknown): string | und
|
|
|
26
26
|
* Conditional spreads honour `exactOptionalPropertyTypes` — a key is omitted rather
|
|
27
27
|
* than set to `undefined`, which is what lets `loadMemory` apply its own defaults.
|
|
28
28
|
*/
|
|
29
|
-
export declare function loadMemoryOptionsFrom(cfg: Pick<MetaobjectsGenConfig, "providers"
|
|
29
|
+
export declare function loadMemoryOptionsFrom(cfg: Pick<MetaobjectsGenConfig, "providers"> | undefined): {
|
|
30
30
|
providers?: readonly MetaDataTypeProvider[];
|
|
31
|
-
libraries?: readonly string[];
|
|
32
31
|
};
|
|
33
32
|
/**
|
|
34
33
|
* The directory whose `metaobjects.config.ts` governs a run started in `startDir` —
|
|
@@ -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,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAC7F,OAAO,EAAqB,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAmJzE,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CA6B9E;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAmB7E;AAqBD;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,IAAI,CAAC,oBAAoB,EAAE,WAAW,
|
|
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,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAC7F,OAAO,EAAqB,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAmJzE,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CA6B9E;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAmB7E;AAqBD;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,IAAI,CAAC,oBAAoB,EAAE,WAAW,CAAC,GAAG,SAAS,GACvD;IAAE,SAAS,CAAC,EAAE,SAAS,oBAAoB,EAAE,CAAA;CAAE,CAIjD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAU9E;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,UAAU,CAAC,CAUrB;AAED,wBAAsB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CA2M9F"}
|
|
@@ -233,7 +233,6 @@ function rewriteImportSpecifiers(source, aliasMap) {
|
|
|
233
233
|
export function loadMemoryOptionsFrom(cfg) {
|
|
234
234
|
return {
|
|
235
235
|
...(cfg?.providers !== undefined ? { providers: cfg.providers } : {}),
|
|
236
|
-
...(cfg?.libraries !== undefined ? { libraries: cfg.libraries } : {}),
|
|
237
236
|
};
|
|
238
237
|
}
|
|
239
238
|
/**
|
|
@@ -503,22 +502,17 @@ export async function loadMetaobjectsConfig(projectRoot) {
|
|
|
503
502
|
if (!cfg || typeof cfg !== "object" || !Array.isArray(cfg.generators)) {
|
|
504
503
|
throw new Error(`metaobjects.config.ts at ${fullPath} did not export a valid MetaobjectsGenConfig (missing 'generators' array).`);
|
|
505
504
|
}
|
|
506
|
-
//
|
|
507
|
-
//
|
|
508
|
-
//
|
|
509
|
-
//
|
|
510
|
-
// into
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
const unknown = cfg.libraries.filter((n) => !available.includes(n));
|
|
518
|
-
if (unknown.length > 0) {
|
|
519
|
-
throw new Error(`metaobjects.config.ts at ${fullPath}: 'libraries' names unknown package(s) ` +
|
|
520
|
-
`${JSON.stringify(unknown)}; available: ${JSON.stringify(available)}.`);
|
|
521
|
-
}
|
|
505
|
+
// `libraries` used to be validated here. It moved to `.metaobjects/config.json`
|
|
506
|
+
// (FR-043 Amendment 1), and so did its validation — see `assertKnownLibraries`,
|
|
507
|
+
// called from `resolveCollection`'s readers. A config still carrying the old key
|
|
508
|
+
// gets a pointed error rather than silence, because silence is what turns a moved
|
|
509
|
+
// key into "my library stopped loading and nothing said why".
|
|
510
|
+
if ("libraries" in cfg) {
|
|
511
|
+
throw new Error(`metaobjects.config.ts at ${fullPath}: 'libraries' moved to ` +
|
|
512
|
+
`.metaobjects/config.json (FR-043). Which designs a project adopts is a fact ` +
|
|
513
|
+
`about the PROJECT, not about how one port generates code from it, and that ` +
|
|
514
|
+
`file is the port-neutral one every port already reads. Move the array across ` +
|
|
515
|
+
`verbatim — the tokens are unchanged.`);
|
|
522
516
|
}
|
|
523
517
|
return cfg;
|
|
524
518
|
}
|
|
@@ -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,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAElC,OAAO,EAAE,iBAAiB,EAAmB,MAAM,qBAAqB,CAAC;AAEzE,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,cAAc,GAAG,4BAA4B,CAAC;AACpD,MAAM,WAAW,GAAG,SAAS,CAAC;AAC9B,MAAM,aAAa,GAAkD;IACnE,CAAC,cAAc,CAAC,EAAE;QAChB,IAAI,EAAE,uDAAuD;QAC7D,GAAG,EAAE,sDAAsD;KAC5D;IACD,0EAA0E;IAC1E,2EAA2E;IAC3E,4EAA4E;IAC5E,0BAA0B,EAAE;QAC1B,IAAI,EAAE,qDAAqD;QAC3D,GAAG,EAAE,oDAAoD;KAC1D;IACD,uCAAuC,EAAE;QACvC,IAAI,EAAE,kEAAkE;QACxE,GAAG,EAAE,iEAAiE;KACvE;IACD,kCAAkC,EAAE;QAClC,IAAI,EAAE,6DAA6D;QACnE,GAAG,EAAE,4DAA4D;KAClE;IACD,qCAAqC,EAAE;QACrC,IAAI,EAAE,gEAAgE;QACtE,GAAG,EAAE,+DAA+D;KACrE;IACD,qBAAqB,EAAE;QACrB,IAAI,EAAE,mBAAmB;QACzB,GAAG,EAAE,cAAc;KACpB;CACF,CAAC;AAEF,+DAA+D;AAC/D,uEAAuE;AACvE,sDAAsD;AACtD,EAAE;AACF,8EAA8E;AAC9E,2EAA2E;AAC3E,0EAA0E;AAC1E,8EAA8E;AAC9E,0CAA0C;AAC1C,EAAE;AACF,4EAA4E;AAC5E,2EAA2E;AAC3E,8EAA8E;AAC9E,8EAA8E;AAC9E,mEAAmE;AACnE,SAAS,aAAa,CAAC,SAAiB;IACtC,MAAM,KAAK,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IACvC,4EAA4E;IAC5E,2DAA2D;IAC3D,IAAI,SAAS,KAAK,qBAAqB,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QAC/D,OAAO,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAChE,CAAC;IACD,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC7C,wEAAwE;QACxE,yEAAyE;QACzE,0EAA0E;QAC1E,iDAAiD;QACjD,IAAI,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACpD,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YACnD,IAAI,UAAU,CAAC,aAAa,CAAC;gBAAE,OAAO,aAAa,CAAC;QACtD,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAAC,MAAM,CAAC;QACP,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACzE,IAAI,UAAU,CAAC,SAAS,CAAC;gBAAE,OAAO,SAAS,CAAC;QAC9C,CAAC;QACD,MAAM,IAAI,KAAK,CACb,kCAAkC,SAAS,uDAAuD,CACnG,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,yBAAyB,GAAG,CAAC,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,QAAQ,CAAU,CAAC;AACjG,MAAM,kBAAkB,GAAG,uCAAuC,CAAC;AAEnE,MAAM,UAAU,2BAA2B,CAAC,MAAc;IACxD,MAAM,EAAE,GAAG,IAAI,MAAM,CACnB,uDAAuD,kBAAkB,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EACzG,GAAG,CACJ,CAAC;IACF,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;QACpC,KAAK,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;YAC7E,IAAI,IAAI,IAAK,yBAA+C,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC9F,CAAC;IACH,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACtC,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/B,MAAM,UAAU,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACzD,uEAAuE;IACvE,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChF,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC/B,OAAO,CACL,iCAAiC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,kBAAkB,KAAK;QAClF,eAAe,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,eAAe,gCAAgC;QACnG,wFAAwF;QACxF,gBAAgB,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,qBAAqB,QAAQ,IAAI;QAC3F,iCAAiC;QACjC,YAAY,OAAO,iCAAiC,UAAU,CAAC,OAAO,CAAC,MAAM;QAC7E,yFAAyF;QACzF,0BAA0B,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,MAAM,EAAE,WAAW;QAC9F,qDAAqD,CACtD,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,4BAA4B,CAAC,GAAY;IACvD,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;IACvE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,SAAS,CAAC;IACzD,MAAM,GAAG,GAAG,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1F,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACxC,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC1C,OAAO,CACL,GAAG,GAAG,+CAA+C,kBAAkB,IAAI;QAC3E,oFAAoF;QACpF,oFAAoF;QACpF,qFAAqF;QACrF,mEAAmE;QACnE,mDAAmD,QAAQ,IAAI;QAC/D,yCAAyC;QACzC,YAAY,GAAG,iCAAiC,QAAQ,MAAM;QAC9D,oFAAoF;QACpF,0BAA0B;QAC1B,qDAAqD,CACtD,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAAC,MAAc,EAAE,QAAgC;IAC/E,IAAI,MAAM,GAAG,MAAM,CAAC;IACpB,KAAK,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjE,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;QAC7D,gDAAgD;QAChD,2DAA2D;QAC3D,MAAM,GAAG,MAAM,CAAC,OAAO,CACrB,IAAI,MAAM,CAAC,sBAAsB,GAAG,KAAK,EAAE,GAAG,CAAC,EAC/C,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,MAAM,GAAG,KAAK,GAAG,YAAY,GAAG,KAAK,EAAE,CAClE,CAAC;QACF,0EAA0E;QAC1E,MAAM,GAAG,MAAM,CAAC,OAAO,CACrB,IAAI,MAAM,CAAC,wBAAwB,GAAG,KAAK,EAAE,GAAG,CAAC,EACjD,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,MAAM,GAAG,KAAK,GAAG,YAAY,GAAG,KAAK,EAAE,CAClE,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,qBAAqB,CACnC,GAAsE;IAEtE,OAAO;QACL,GAAG,CAAC,GAAG,EAAE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrE,GAAG,CAAC,GAAG,EAAE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACtE,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAgB,EAAE,QAAgB;IACpE,IAAI,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC5B,SAAS,CAAC;QACR,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;YAAE,OAAO,GAAG,CAAC;QACnD,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAAE,MAAM;QACzC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,MAAM,KAAK,GAAG;YAAE,MAAM;QAC1B,GAAG,GAAG,MAAM,CAAC;IACf,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,UAAsB,EACtB,YAAoB;IAEpB,IAAI,OAAO,CAAC,YAAY,CAAC,KAAK,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,UAAU,CAAC;IAC/E,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC,CAAC;QACpF,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC;IACvD,CAAC;IAAC,MAAM,CAAC;QACP,iFAAiF;QACjF,qCAAqC;QACrC,OAAO,UAAU,CAAC;IACpB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,WAAmB;IAC7D,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACnD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CACb,sCAAsC,QAAQ,oCAAoC,CACnF,CAAC;IACJ,CAAC;IAED,uEAAuE;IACvE,4EAA4E;IAC5E,6EAA6E;IAC7E,+DAA+D;IAC/D,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IACpC,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3C,IAAI,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAChE,IAAI,CAAC;gBAAC,UAAU,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IAED,qEAAqE;IACrE,MAAM,QAAQ,GAA2B,EAAE,CAAC;IAC5C,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;QACnD,QAAQ,CAAC,SAAS,CAAC,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IACjD,CAAC;IAED,kFAAkF;IAClF,mFAAmF;IACnF,yEAAyE;IACzE,iFAAiF;IACjF,gFAAgF;IAChF,mFAAmF;IACnF,gFAAgF;IAChF,6EAA6E;IAC7E,4EAA4E;IAC5E,2EAA2E;IAC3E,6EAA6E;IAC7E,gFAAgF;IAChF,sDAAsD;IACtD,MAAM,iBAAiB,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC;IACnD,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;QACpC,IAAI,CAAC;YACH,QAAQ,CAAC,WAAW,CAAC,GAAG,aAAa,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAChF,CAAC;QAAC,MAAM,CAAC,CAAC,2EAA2E,CAAC,CAAC;IACzF,CAAC;IAED,uFAAuF;IACvF,wFAAwF;IACxF,0EAA0E;IAC1E,yFAAyF;IACzF,0EAA0E;IAC1E,EAAE;IACF,+FAA+F;IAC/F,EAAE;IACF,iFAAiF;IACjF,oFAAoF;IACpF,wFAAwF;IACxF,yFAAyF;IACzF,uFAAuF;IACvF,4FAA4F;IAC5F,oFAAoF;IACpF,yFAAyF;IACzF,yFAAyF;IACzF,EAAE;IACF,wFAAwF;IACxF,0FAA0F;IAC1F,uFAAuF;IACvF,wFAAwF;IACxF,wFAAwF;IACxF,KAAK,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;QACtE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,kBAAkB,CAAC;YAAE,SAAS;QACxD,kFAAkF;QAClF,uDAAuD;QACvD,IAAI,SAAS,CAAC,KAAK,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,SAAS;QACvE,sFAAsF;QACtF,wFAAwF;QACxF,sFAAsF;QACtF,qFAAqF;QACrF,mFAAmF;QACnF,sEAAsE;QACtE,IAAI,QAA2D,CAAC;QAChE,KAAK,IAAI,GAAG,GAAG,OAAO,CAAC,YAAY,CAAC,GAAI,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3D,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAG3E,CAAC;gBACF,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;oBAAC,QAAQ,GAAG,MAAM,CAAC;oBAAC,MAAM;gBAAC,CAAC;YAC9D,CAAC;YAAC,MAAM,CAAC,CAAC,uCAAuC,CAAC,CAAC;YACnD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;YAC5B,IAAI,MAAM,KAAK,GAAG;gBAAE,MAAM,CAAG,kBAAkB;QACjD,CAAC;QACD,IAAI,QAAQ,KAAK,SAAS;YAAE,SAAS,CAAG,iDAAiD;QACzF,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,IAAI,EAAE,CAAC,EAAE,CAAC;YACvD,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAAE,SAAS;YACzD,MAAM,GAAG,GAAG,GAAG,SAAS,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,SAAS;gBAAE,SAAS,CAAG,uCAAuC;YACpF,IAAI,CAAC;gBACH,QAAQ,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC3D,CAAC;YAAC,MAAM,CAAC,CAAC,4EAA4E,CAAC,CAAC;QAC1F,CAAC;IACH,CAAC;IAED,0EAA0E;IAC1E,4EAA4E;IAC5E,6EAA6E;IAC7E,0EAA0E;IAC1E,uEAAuE;IACvE,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,2BAA2B,CAAC,QAAQ,CAAC,CAAC;IACtD,IAAI,OAAO,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAE9D,0EAA0E;IAC1E,6EAA6E;IAC7E,uEAAuE;IACvE,6DAA6D;IAC7D,IAAI,QAAQ,GAAG,QAAQ,CAAC;IACxB,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,GAAG,gBAAgB,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC;QAC3E,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC;QACtD,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;YAC7C,QAAQ,GAAG,QAAQ,CAAC;YACpB,WAAW,GAAG,IAAI,CAAC;QACrB,CAAC;QAAC,MAAM,CAAC;YACP,wEAAwE;YACxE,4EAA4E;YAC5E,QAAQ,GAAG,QAAQ,CAAC;QACtB,CAAC;IACH,CAAC;IAED,wEAAwE;IACxE,2EAA2E;IAC3E,6EAA6E;IAC7E,iBAAiB;IACjB,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;QACvC,cAAc,EAAE,IAAI;QACpB,KAAK,EAAE,QAAQ;KAChB,CAAC,CAAC;IAEH,oFAAoF;IACpF,qFAAqF;IACrF,oFAAoF;IACpF,qFAAqF;IACrF,qFAAqF;IACrF,oFAAoF;IACpF,mFAAmF;IACnF,0EAA0E;IAC1E,oFAAoF;IACpF,iFAAiF;IACjF,+DAA+D;IAC/D,MAAM,uBAAuB,GAAG,KAAK,CAAC,iBAAiB,CAAC;IACxD,MAAM,qBAAqB,GAAG,KAAK,CAAC,eAAe,CAAC;IACpD,IAAI,CAAC;QACH,IAAI,GAA6D,CAAC;QAClE,IAAI,CAAC;YACH,GAAG,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAA6D,CAAC;QAClG,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,uFAAuF;YACvF,sFAAsF;YACtF,uFAAuF;YACvF,sFAAsF;YACtF,MAAM,OAAO,GAAG,4BAA4B,CAAC,GAAG,CAAC,CAAC;YAClD,IAAI,OAAO,KAAK,SAAS;gBAAE,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;YACpD,MAAM,GAAG,CAAC;QACZ,CAAC;QACD,+EAA+E;QAC/E,2DAA2D;QAC3D,MAAM,GAAG,GAAG,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,SAAS,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO;YAC5E,CAAC,CAAE,GAAyC,CAAC,OAAO;YACpD,CAAC,CAAC,GAAG,CAAyB,CAAC;QACjC,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACtE,MAAM,IAAI,KAAK,CAAC,4BAA4B,QAAQ,4EAA4E,CAAC,CAAC;QACpI,CAAC;QACD,kFAAkF;QAClF,kFAAkF;QAClF,mFAAmF;QACnF,mFAAmF;QACnF,qFAAqF;QACrF,kFAAkF;QAClF,kFAAkF;QAClF,gEAAgE;QAChE,IAAI,GAAG,CAAC,SAAS,KAAK,SAAS,IAAI,GAAG,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5D,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,kCAAkC,CAAC,CAAC;YAClF,MAAM,SAAS,GAAG,oBAAoB,EAAE,CAAC;YACzC,MAAM,OAAO,GAAG,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YACpE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,MAAM,IAAI,KAAK,CACb,4BAA4B,QAAQ,yCAAyC;oBAC3E,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,gBAAgB,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CACzE,CAAC;YACJ,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;YAAS,CAAC;QACT,6EAA6E;QAC7E,oFAAoF;QACpF,IAAI,KAAK,CAAC,iBAAiB,KAAK,uBAAuB,EAAE,CAAC;YACxD,KAAK,CAAC,iBAAiB,GAAG,uBAAuB,CAAC;QACpD,CAAC;QACD,IAAI,KAAK,CAAC,eAAe,KAAK,qBAAqB,EAAE,CAAC;YACpD,KAAK,CAAC,eAAe,GAAG,qBAAqB,CAAC;QAChD,CAAC;QACD,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC;gBAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,yBAAyB,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"load-metaobjects-config.js","sourceRoot":"","sources":["../../../src/lib/load-metaobjects-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Collection } from "@metaobjectsdev/sdk";
|
|
2
|
-
import type { SchemaProvenance } from "@metaobjectsdev/migrate-ts";
|
|
2
|
+
import type { ObjectScopePredicate, SchemaProvenance } from "@metaobjectsdev/migrate-ts";
|
|
3
3
|
/**
|
|
4
4
|
* Say what a declared `migrate.scope` left out, for `migrate` and `verify --db`
|
|
5
5
|
* alike.
|
|
@@ -14,6 +14,37 @@ import type { SchemaProvenance } from "@metaobjectsdev/migrate-ts";
|
|
|
14
14
|
* is drift the user sees.
|
|
15
15
|
*/
|
|
16
16
|
export declare function outOfScopeNote(command: string, names: readonly string[]): string;
|
|
17
|
+
/**
|
|
18
|
+
* Say what a DEPENDENCY owns, for `migrate` and `verify --db` alike (FR-023).
|
|
19
|
+
*
|
|
20
|
+
* A dependency's nodes are loaded so this project's own model can resolve against
|
|
21
|
+
* them, and are governed by nobody here. That is not the same sentence as
|
|
22
|
+
* `outOfScopeNote`'s: an excluded import is usually not the result of anything the
|
|
23
|
+
* author wrote — a project with no `migrate.scope` at all still excludes its imports —
|
|
24
|
+
* so reporting it as "outside migrate.scope" would name a key that does not exist.
|
|
25
|
+
* It also carries the opt-in, which is the whole remedy: name the package.
|
|
26
|
+
*/
|
|
27
|
+
export declare function dependencyNote(command: string, names: readonly string[]): string;
|
|
28
|
+
/**
|
|
29
|
+
* Every exclusion a run owes the reader, each object named exactly ONCE.
|
|
30
|
+
*
|
|
31
|
+
* `outOfScope` is the full suppression set and `fromDependencies` a subset of it, so
|
|
32
|
+
* reporting both as-is would print an imported table twice under two different
|
|
33
|
+
* explanations. The partition happens here, once, rather than in each command.
|
|
34
|
+
*/
|
|
35
|
+
export declare function exclusionNotes(command: string, outOfScope: readonly string[], fromDependencies: readonly string[]): string[];
|
|
36
|
+
/**
|
|
37
|
+
* The import predicate a schema run threads into migrate-ts, or NOTHING.
|
|
38
|
+
*
|
|
39
|
+
* Nothing is the load-bearing half. A project with no dependencies must reach
|
|
40
|
+
* `scopeExpectedSchema` exactly as it always did — passing a predicate that happens to
|
|
41
|
+
* answer `false` for everything is not the same thing, because supplying one at all
|
|
42
|
+
* leaves the untouched same-object path and changes `declaredSchemas` from absent to
|
|
43
|
+
* derived. One helper so all five call sites make that decision identically.
|
|
44
|
+
*/
|
|
45
|
+
export declare function importedOption(collection: Collection): {
|
|
46
|
+
imported?: ObjectScopePredicate;
|
|
47
|
+
};
|
|
17
48
|
/**
|
|
18
49
|
* The refusal for a `migrate.scope` that matches NOTHING it could govern.
|
|
19
50
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate-scope.d.ts","sourceRoot":"","sources":["../../../src/lib/migrate-scope.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"migrate-scope.d.ts","sourceRoot":"","sources":["../../../src/lib/migrate-scope.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAEzF;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAKhF;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAKhF;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,gBAAgB,EAAE,SAAS,MAAM,EAAE,GAClC,MAAM,EAAE,CAOV;AAED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,UAAU,GAAG;IAAE,QAAQ,CAAC,EAAE,oBAAoB,CAAA;CAAE,CAE1F;AAMD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,UAAU;AACtB;;;;;;GAMG;AACH,UAAU,EAAE,MAAM,gBAAgB,GACjC,MAAM,GAAG,SAAS,CAmCpB"}
|
|
@@ -25,6 +25,49 @@ export function outOfScopeNote(command, names) {
|
|
|
25
25
|
return (`meta ${command} — ${names.length} object(s) out-of-scope ` +
|
|
26
26
|
`(outside migrate.scope, governed elsewhere): ${names.join(", ")}`);
|
|
27
27
|
}
|
|
28
|
+
/**
|
|
29
|
+
* Say what a DEPENDENCY owns, for `migrate` and `verify --db` alike (FR-023).
|
|
30
|
+
*
|
|
31
|
+
* A dependency's nodes are loaded so this project's own model can resolve against
|
|
32
|
+
* them, and are governed by nobody here. That is not the same sentence as
|
|
33
|
+
* `outOfScopeNote`'s: an excluded import is usually not the result of anything the
|
|
34
|
+
* author wrote — a project with no `migrate.scope` at all still excludes its imports —
|
|
35
|
+
* so reporting it as "outside migrate.scope" would name a key that does not exist.
|
|
36
|
+
* It also carries the opt-in, which is the whole remedy: name the package.
|
|
37
|
+
*/
|
|
38
|
+
export function dependencyNote(command, names) {
|
|
39
|
+
return (`meta ${command} — ${names.length} object(s) from dependencies not governed here ` +
|
|
40
|
+
`(name the package in migrate.scope to own them): ${names.join(", ")}`);
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Every exclusion a run owes the reader, each object named exactly ONCE.
|
|
44
|
+
*
|
|
45
|
+
* `outOfScope` is the full suppression set and `fromDependencies` a subset of it, so
|
|
46
|
+
* reporting both as-is would print an imported table twice under two different
|
|
47
|
+
* explanations. The partition happens here, once, rather than in each command.
|
|
48
|
+
*/
|
|
49
|
+
export function exclusionNotes(command, outOfScope, fromDependencies) {
|
|
50
|
+
const notes = [];
|
|
51
|
+
const imported = new Set(fromDependencies);
|
|
52
|
+
const declared = outOfScope.filter((name) => !imported.has(name));
|
|
53
|
+
if (declared.length > 0)
|
|
54
|
+
notes.push(outOfScopeNote(command, declared));
|
|
55
|
+
if (fromDependencies.length > 0)
|
|
56
|
+
notes.push(dependencyNote(command, fromDependencies));
|
|
57
|
+
return notes;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* The import predicate a schema run threads into migrate-ts, or NOTHING.
|
|
61
|
+
*
|
|
62
|
+
* Nothing is the load-bearing half. A project with no dependencies must reach
|
|
63
|
+
* `scopeExpectedSchema` exactly as it always did — passing a predicate that happens to
|
|
64
|
+
* answer `false` for everything is not the same thing, because supplying one at all
|
|
65
|
+
* leaves the untouched same-object path and changes `declaredSchemas` from absent to
|
|
66
|
+
* derived. One helper so all five call sites make that decision identically.
|
|
67
|
+
*/
|
|
68
|
+
export function importedOption(collection) {
|
|
69
|
+
return collection.dependencies.length > 0 ? { imported: collection.imported } : {};
|
|
70
|
+
}
|
|
28
71
|
/** How many loaded FQNs to name in the refusal below — enough to show the shape
|
|
29
72
|
* an author's patterns have to match, short enough to stay readable. */
|
|
30
73
|
const EXAMPLE_FQN_CAP = 3;
|
|
@@ -60,8 +103,13 @@ export function migrateScopeMismatch(collection,
|
|
|
60
103
|
* are byte-for-byte what they always were.
|
|
61
104
|
*/
|
|
62
105
|
provenance) {
|
|
63
|
-
|
|
64
|
-
|
|
106
|
+
// The DECLARED `migrate.scope` alone, never the composed `inMigrateScope` (FR-023).
|
|
107
|
+
// The composed predicate also excludes imports, so a consumer whose only
|
|
108
|
+
// table-declaring objects come from a dependency — and who declared no scope at all
|
|
109
|
+
// — would be refused here, citing patterns that do not exist. There is nothing wrong
|
|
110
|
+
// with that project: its imports are excluded by design and it governs no tables yet.
|
|
111
|
+
const { declaredMigrateScope, migrateScopePatterns } = collection;
|
|
112
|
+
if (declaredMigrateScope === undefined)
|
|
65
113
|
return undefined;
|
|
66
114
|
// The declaring FQNs of every table and view the UNSCOPED model contributes —
|
|
67
115
|
// the same provenance `scopeExpectedSchema` decides scope on, so the refusal
|
|
@@ -78,7 +126,7 @@ provenance) {
|
|
|
78
126
|
// own (much louder) failure modes downstream.
|
|
79
127
|
if (fqns.length === 0)
|
|
80
128
|
return undefined;
|
|
81
|
-
if (fqns.some(
|
|
129
|
+
if (fqns.some(declaredMigrateScope))
|
|
82
130
|
return undefined;
|
|
83
131
|
const patterns = JSON.stringify(migrateScopePatterns ?? []);
|
|
84
132
|
const examples = fqns.slice(0, EXAMPLE_FQN_CAP).join(", ");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate-scope.js","sourceRoot":"","sources":["../../../src/lib/migrate-scope.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,EAAE;AACF,oEAAoE;AACpE,mFAAmF;AACnF,qFAAqF;AACrF,uEAAuE;AACvE,EAAE;AACF,mFAAmF;AACnF,kFAAkF;AAClF,wEAAwE;AAKxE;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,cAAc,CAAC,OAAe,EAAE,KAAwB;IACtE,OAAO,CACL,QAAQ,OAAO,MAAM,KAAK,CAAC,MAAM,0BAA0B;QAC3D,gDAAgD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACnE,CAAC;AACJ,CAAC;AAED;yEACyE;AACzE,MAAM,eAAe,GAAG,CAAC,CAAC;AAE1B;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAU,oBAAoB,CAClC,UAAsB;AACtB;;;;;;GAMG;AACH,UAAkC;IAElC,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"migrate-scope.js","sourceRoot":"","sources":["../../../src/lib/migrate-scope.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,EAAE;AACF,oEAAoE;AACpE,mFAAmF;AACnF,qFAAqF;AACrF,uEAAuE;AACvE,EAAE;AACF,mFAAmF;AACnF,kFAAkF;AAClF,wEAAwE;AAKxE;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,cAAc,CAAC,OAAe,EAAE,KAAwB;IACtE,OAAO,CACL,QAAQ,OAAO,MAAM,KAAK,CAAC,MAAM,0BAA0B;QAC3D,gDAAgD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACnE,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,cAAc,CAAC,OAAe,EAAE,KAAwB;IACtE,OAAO,CACL,QAAQ,OAAO,MAAM,KAAK,CAAC,MAAM,iDAAiD;QAClF,oDAAoD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACvE,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAC5B,OAAe,EACf,UAA6B,EAC7B,gBAAmC;IAEnC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IAClE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;IACvE,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAC;IACvF,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAAC,UAAsB;IACnD,OAAO,UAAU,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACrF,CAAC;AAED;yEACyE;AACzE,MAAM,eAAe,GAAG,CAAC,CAAC;AAE1B;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAU,oBAAoB,CAClC,UAAsB;AACtB;;;;;;GAMG;AACH,UAAkC;IAElC,oFAAoF;IACpF,yEAAyE;IACzE,oFAAoF;IACpF,qFAAqF;IACrF,sFAAsF;IACtF,MAAM,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,GAAG,UAAU,CAAC;IAClE,IAAI,oBAAoB,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAEzD,8EAA8E;IAC9E,6EAA6E;IAC7E,6EAA6E;IAC7E,8EAA8E;IAC9E,2EAA2E;IAC3E,yEAAyE;IACzE,6EAA6E;IAC7E,2EAA2E;IAC3E,4DAA4D;IAC5D,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACjD,+EAA+E;IAC/E,8EAA8E;IAC9E,8CAA8C;IAC9C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACxC,IAAI,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC;QAAE,OAAO,SAAS,CAAC;IAEtD,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC;IAC5D,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,MAAM,GAAG,eAAe,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IACjG,OAAO,CACL,qCAAqC,IAAI,CAAC,MAAM,wCAAwC;QACxF,oFAAoF;QACpF,aAAa,QAAQ,gCAAgC,QAAQ,GAAG,IAAI,IAAI;QACxE,qFAAqF;QACrF,uCAAuC,CACxC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { type MetaDataSource } from "@metaobjectsdev/metadata";
|
|
2
|
+
import type { Collection } from "@metaobjectsdev/sdk";
|
|
3
|
+
import type { Diagnostic } from "./requirement-check.js";
|
|
4
|
+
export declare const WARN_OVERLAY_IMPLICIT = "WARN_OVERLAY_IMPLICIT";
|
|
5
|
+
/**
|
|
6
|
+
* Resolve one collection file path to the `MetaDataSource` `lintOverlays`
|
|
7
|
+
* reads it through. Injected so the lint never touches the filesystem
|
|
8
|
+
* directly: the production wiring in `verify.ts` backs this with
|
|
9
|
+
* `FileSource` (from `@metaobjectsdev/metadata/core`); a test can supply an
|
|
10
|
+
* in-memory source instead.
|
|
11
|
+
*/
|
|
12
|
+
export type ReadSource = (path: string) => MetaDataSource;
|
|
13
|
+
/**
|
|
14
|
+
* Lint the collection's files for unflagged cross-file redeclarations.
|
|
15
|
+
*
|
|
16
|
+
* Reads every file in `collection.files` — dependency artifacts first, since
|
|
17
|
+
* `Collection.files` already orders them that way and they are the BASES a
|
|
18
|
+
* consumer's own declarations amend — and structurally scans each with
|
|
19
|
+
* {@link declaredTopLevelKeys} (never the loaded/merged model: the merged
|
|
20
|
+
* tree has already lost which FILE contributed which declaration).
|
|
21
|
+
*
|
|
22
|
+
* Groups by (type, resolutionKey) — mirroring the parser's own merge lookup,
|
|
23
|
+
* which matches on type AND resolutionKey (parser-core.ts) — and reports
|
|
24
|
+
* every unflagged declaration after the first one for a key with 2+
|
|
25
|
+
* declarations. The first unflagged declaration is the base.
|
|
26
|
+
*
|
|
27
|
+
* `file` in each finding's message is the collection-relative path
|
|
28
|
+
* (`relPosix`), or the dependency's `dep:<name>/<artifact>` id when the
|
|
29
|
+
* declaration came from an imported artifact.
|
|
30
|
+
*
|
|
31
|
+
* Unreadable or unparsable files are skipped — the loader itself reports
|
|
32
|
+
* those (as a load error / `meta verify`'s own failure path); duplicating
|
|
33
|
+
* that diagnosis here would just be a second, worse-informed version of the
|
|
34
|
+
* same message.
|
|
35
|
+
*/
|
|
36
|
+
export declare function lintOverlays(collection: Collection, readSource: ReadSource): Promise<Diagnostic[]>;
|
|
37
|
+
//# sourceMappingURL=overlay-lint.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"overlay-lint.d.ts","sourceRoot":"","sources":["../../../src/lib/overlay-lint.ts"],"names":[],"mappings":"AA0BA,OAAO,EAAkD,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/G,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEzD,eAAO,MAAM,qBAAqB,0BAA0B,CAAC;AAE7D;;;;;;GAMG;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,cAAc,CAAC;AAY1D;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,YAAY,CAChC,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,UAAU,GACrB,OAAO,CAAC,UAAU,EAAE,CAAC,CAkDvB"}
|