npmdata 0.18.10 → 0.18.11
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/npmdata-0.0.1.tgz +0 -0
- package/dist/package/action-check.d.ts +1 -5
- package/dist/package/action-check.d.ts.map +1 -1
- package/dist/package/action-check.js +22 -19
- package/dist/package/action-check.js.map +1 -1
- package/dist/package/action-extract.d.ts +1 -5
- package/dist/package/action-extract.d.ts.map +1 -1
- package/dist/package/action-extract.js +28 -41
- package/dist/package/action-extract.js.map +1 -1
- package/dist/package/action-purge.d.ts +1 -1
- package/dist/package/action-purge.d.ts.map +1 -1
- package/dist/package/action-purge.js +24 -21
- package/dist/package/action-purge.js.map +1 -1
- package/package.json +1 -1
package/dist/npmdata-0.0.1.tgz
CHANGED
|
Binary file
|
|
@@ -1,16 +1,12 @@
|
|
|
1
1
|
import { BasicPackageOptions, ProgressEvent } from '../types';
|
|
2
2
|
export type CheckOptions = BasicPackageOptions & {
|
|
3
3
|
onProgress?: (event: ProgressEvent) => void;
|
|
4
|
-
|
|
4
|
+
visitedEntries?: Set<string>;
|
|
5
5
|
};
|
|
6
6
|
export type CheckSummary = {
|
|
7
7
|
missing: string[];
|
|
8
8
|
modified: string[];
|
|
9
9
|
extra: string[];
|
|
10
10
|
};
|
|
11
|
-
/**
|
|
12
|
-
* Orchestrate check across all filesets, filtering out entries with managed=false.
|
|
13
|
-
* Returns a summary of all drift found across all entries.
|
|
14
|
-
*/
|
|
15
11
|
export declare function actionCheck(options: CheckOptions): Promise<CheckSummary>;
|
|
16
12
|
//# sourceMappingURL=action-check.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-check.d.ts","sourceRoot":"","sources":["../../src/package/action-check.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,mBAAmB,EAAuB,aAAa,EAAE,MAAM,UAAU,CAAC;AAUnF,MAAM,MAAM,YAAY,GAAG,mBAAmB,GAAG;IAC/C,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC5C,
|
|
1
|
+
{"version":3,"file":"action-check.d.ts","sourceRoot":"","sources":["../../src/package/action-check.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,mBAAmB,EAAuB,aAAa,EAAE,MAAM,UAAU,CAAC;AAUnF,MAAM,MAAM,YAAY,GAAG,mBAAmB,GAAG;IAC/C,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC5C,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB,CAAC;AAWF,wBAAsB,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CA4I9E"}
|
|
@@ -14,14 +14,21 @@ const check_1 = require("../fileset/check");
|
|
|
14
14
|
* Orchestrate check across all filesets, filtering out entries with managed=false.
|
|
15
15
|
* Returns a summary of all drift found across all entries.
|
|
16
16
|
*/
|
|
17
|
+
/** Unique key for a set entry: same package with different selectors is a distinct entry. */
|
|
18
|
+
const entryKey = (entry) => `${(0, utils_1.parsePackageSpec)(entry.package).name}|${JSON.stringify(entry.selector ?? {})}`;
|
|
17
19
|
// eslint-disable-next-line complexity
|
|
18
20
|
async function actionCheck(options) {
|
|
19
|
-
const { entries, cwd, verbose = false, onProgress,
|
|
21
|
+
const { entries, cwd, verbose = false, onProgress, visitedEntries = new Set() } = options;
|
|
20
22
|
const summary = { missing: [], modified: [], extra: [] };
|
|
23
|
+
// Skip already-visited entries to break recursion cycles; mark the rest as visited.
|
|
24
|
+
const entriesToProcess = entries.filter((entry) => !visitedEntries.has(entryKey(entry)));
|
|
25
|
+
for (const entry of entriesToProcess) {
|
|
26
|
+
visitedEntries.add(entryKey(entry));
|
|
27
|
+
}
|
|
21
28
|
if (verbose) {
|
|
22
|
-
console.log(`[verbose] check: verifying ${
|
|
29
|
+
console.log(`[verbose] check: verifying ${entriesToProcess.length} entr${entriesToProcess.length === 1 ? 'y' : 'ies'} (cwd: ${cwd})`);
|
|
23
30
|
}
|
|
24
|
-
for (const entry of
|
|
31
|
+
for (const entry of entriesToProcess) {
|
|
25
32
|
// Skip entries with managed=false — they write no marker so there is nothing to check.
|
|
26
33
|
// The --managed=false flag also suppresses checking for explicitly marked entries.
|
|
27
34
|
if (entry.output?.managed === false)
|
|
@@ -72,22 +79,18 @@ async function actionCheck(options) {
|
|
|
72
79
|
}
|
|
73
80
|
}
|
|
74
81
|
if (pkgNpmdataSets && pkgNpmdataSets.length > 0) {
|
|
75
|
-
const siblingNames = new Set(entries.map((e) => (0, utils_1.parsePackageSpec)(e.package).name));
|
|
76
82
|
const presetFilteredSets = (0, utils_1.filterEntriesByPresets)(pkgNpmdataSets, entry.selector?.presets);
|
|
77
|
-
//
|
|
78
|
-
//
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
const
|
|
86
|
-
|
|
87
|
-
const filteredSets = [...selfRefSets, ...externalSets];
|
|
83
|
+
// Preemptively mark preset-excluded entries as visited so they cannot sneak
|
|
84
|
+
// back in through a self-referencing set's secondary recursion.
|
|
85
|
+
for (const e of pkgNpmdataSets) {
|
|
86
|
+
if (!presetFilteredSets.includes(e)) {
|
|
87
|
+
visitedEntries.add(entryKey(e));
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
// Self-referencing sets only recurse when presets are active; external sets always recurse.
|
|
91
|
+
const filteredSets = presetFilteredSets.filter((e) => (0, utils_1.parsePackageSpec)(e.package).name !== pkg.name ||
|
|
92
|
+
(entry.selector?.presets?.length ?? 0) > 0);
|
|
88
93
|
if (filteredSets.length > 0) {
|
|
89
|
-
const visitedSet = new Set(visitedPackages);
|
|
90
|
-
visitedSet.add(pkg.name);
|
|
91
94
|
const outputConfig = entry.output ?? {};
|
|
92
95
|
const inheritedEntries = filteredSets.map((depEntry) => {
|
|
93
96
|
const { path: depPath, ...restOutput } = depEntry.output ?? {};
|
|
@@ -100,14 +103,14 @@ async function actionCheck(options) {
|
|
|
100
103
|
};
|
|
101
104
|
});
|
|
102
105
|
if (verbose) {
|
|
103
|
-
console.log(`[verbose] check: recursing into ${filteredSets.length} set(s) from ${pkg.name}
|
|
106
|
+
console.log(`[verbose] check: recursing into ${filteredSets.length} set(s) from ${pkg.name}`);
|
|
104
107
|
}
|
|
105
108
|
const subResult = await actionCheck({
|
|
106
109
|
entries: inheritedEntries,
|
|
107
110
|
cwd,
|
|
108
111
|
verbose,
|
|
109
112
|
onProgress,
|
|
110
|
-
|
|
113
|
+
visitedEntries,
|
|
111
114
|
});
|
|
112
115
|
summary.missing.push(...subResult.missing);
|
|
113
116
|
summary.modified.push(...subResult.modified);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-check.js","sourceRoot":"","sources":["../../src/package/action-check.ts"],"names":[],"mappings":";AAAA,+BAA+B;;;;;
|
|
1
|
+
{"version":3,"file":"action-check.js","sourceRoot":"","sources":["../../src/package/action-check.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
import { ProgressEvent, BasicPackageOptions } from '../types';
|
|
2
2
|
export type ExtractOptions = BasicPackageOptions & {
|
|
3
3
|
onProgress?: (event: ProgressEvent) => void;
|
|
4
|
-
|
|
5
|
-
/** Pre-installed package paths (name → absolute path). Used to route self-referencing
|
|
6
|
-
* nested sets through the normal recursion without reinstalling or tripping the
|
|
7
|
-
* circular-dependency guard. */
|
|
8
|
-
installedPkgPaths?: Map<string, string>;
|
|
4
|
+
visitedEntries?: Set<string>;
|
|
9
5
|
};
|
|
10
6
|
export type ExtractResult = {
|
|
11
7
|
added: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-extract.d.ts","sourceRoot":"","sources":["../../src/package/action-extract.ts"],"names":[],"mappings":"AAKA,OAAO,EAAuB,aAAa,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAenF,MAAM,MAAM,cAAc,GAAG,mBAAmB,GAAG;IACjD,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC5C,
|
|
1
|
+
{"version":3,"file":"action-extract.d.ts","sourceRoot":"","sources":["../../src/package/action-extract.ts"],"names":[],"mappings":"AAKA,OAAO,EAAuB,aAAa,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAenF,MAAM,MAAM,cAAc,GAAG,mBAAmB,GAAG;IACjD,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC5C,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;;GAGG;AAEH,wBAAsB,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC,CAiVnF"}
|
|
@@ -19,15 +19,22 @@ const symlinks_1 = require("./symlinks");
|
|
|
19
19
|
*/
|
|
20
20
|
// eslint-disable-next-line complexity
|
|
21
21
|
async function actionExtract(options) {
|
|
22
|
-
const { entries, cwd, verbose, onProgress,
|
|
22
|
+
const { entries, cwd, verbose, onProgress, visitedEntries = new Set() } = options;
|
|
23
|
+
// A unique key per entry: same package name with different selectors is a distinct entry.
|
|
24
|
+
const entryKey = (entry) => `${(0, utils_1.parsePackageSpec)(entry.package).name}|${JSON.stringify(entry.selector ?? {})}`;
|
|
25
|
+
// Skip already-visited entries to break recursion cycles; mark the rest as visited.
|
|
26
|
+
const entriesToProcess = entries.filter((entry) => !visitedEntries.has(entryKey(entry)));
|
|
27
|
+
for (const entry of entriesToProcess) {
|
|
28
|
+
visitedEntries.add(entryKey(entry));
|
|
29
|
+
}
|
|
23
30
|
if (verbose) {
|
|
24
|
-
console.log(`[verbose] >>> EXTRACT - ${
|
|
31
|
+
console.log(`[verbose] >>> EXTRACT - ${entriesToProcess.reduce((acc, entry) => acc + entry.package + ', ', '').slice(0, -2)}`);
|
|
25
32
|
}
|
|
26
33
|
const result = { added: 0, modified: 0, deleted: 0, skipped: 0 };
|
|
27
34
|
const allNewlyCreated = [];
|
|
28
35
|
const deferredDeletes = [];
|
|
29
36
|
try {
|
|
30
|
-
for (const entry of
|
|
37
|
+
for (const entry of entriesToProcess) {
|
|
31
38
|
if (verbose) {
|
|
32
39
|
// eslint-disable-next-line no-undefined
|
|
33
40
|
console.log(`[verbose] entry: ${JSON.stringify(entry, undefined, 2)}`);
|
|
@@ -36,11 +43,6 @@ async function actionExtract(options) {
|
|
|
36
43
|
throw new Error('Each set entry must have a "package" field.');
|
|
37
44
|
}
|
|
38
45
|
const pkg = (0, utils_1.parsePackageSpec)(entry.package);
|
|
39
|
-
// Circular dependency detection. Pre-installed packages (self-referencing sets passed
|
|
40
|
-
// via installedPkgPaths) are exempt — they are already resolved, not truly circular.
|
|
41
|
-
if (visitedPackages.has(pkg.name) && !installedPkgPaths?.has(pkg.name)) {
|
|
42
|
-
throw new Error(`Circular dependency detected: package "${pkg.name}" is already being extracted`);
|
|
43
|
-
}
|
|
44
46
|
const outputDir = node_path_1.default.resolve(cwd, entry.output?.path ?? '.');
|
|
45
47
|
const selector = entry.selector ?? {};
|
|
46
48
|
const outputConfig = entry.output ?? {};
|
|
@@ -50,13 +52,10 @@ async function actionExtract(options) {
|
|
|
50
52
|
packageName: pkg.name,
|
|
51
53
|
packageVersion: pkg.version ?? 'latest',
|
|
52
54
|
});
|
|
53
|
-
// Phase 1: Install package
|
|
55
|
+
// Phase 1: Install package
|
|
54
56
|
const upgrade = selector.upgrade ?? false;
|
|
55
|
-
const alreadyCached = !upgrade &&
|
|
56
|
-
|
|
57
|
-
(0, utils_1.getInstalledIfSatisfies)(pkg.name, pkg.version, cwd) !== null);
|
|
58
|
-
const pkgPath = installedPkgPaths?.get(pkg.name) ??
|
|
59
|
-
(await (0, utils_1.installOrUpgradePackage)(pkg.name, pkg.version, upgrade, cwd, verbose));
|
|
57
|
+
const alreadyCached = !upgrade && (0, utils_1.getInstalledIfSatisfies)(pkg.name, pkg.version, cwd) !== null;
|
|
58
|
+
const pkgPath = await (0, utils_1.installOrUpgradePackage)(pkg.name, pkg.version, upgrade, cwd, verbose);
|
|
60
59
|
if (verbose) {
|
|
61
60
|
let status = 'installed';
|
|
62
61
|
if (alreadyCached)
|
|
@@ -158,43 +157,32 @@ async function actionExtract(options) {
|
|
|
158
157
|
}
|
|
159
158
|
}
|
|
160
159
|
if (pkgNpmdataSets && pkgNpmdataSets.length > 0) {
|
|
161
|
-
// Names of packages already being processed at this level (siblings).
|
|
162
|
-
// Skip recursive resolution for any set entry that is already a sibling — those
|
|
163
|
-
// will be (or have been) handled by the outer loop. This prevents self-referencing
|
|
164
|
-
// npmdata.sets from triggering the circular-dependency guard.
|
|
165
|
-
const siblingNames = new Set(entries.map((e) => (0, utils_1.parsePackageSpec)(e.package).name));
|
|
166
160
|
// Apply selector.presets: filter the target package's own sets by the preset tags
|
|
167
161
|
// requested by the consumer. When selector.presets is empty, all sets pass through.
|
|
168
162
|
const presetFilteredSets = (0, utils_1.filterEntriesByPresets)(pkgNpmdataSets, selector.presets);
|
|
169
163
|
if (verbose) {
|
|
170
164
|
console.log(`[verbose] extract: ${pkg.name} has ${pkgNpmdataSets.length} npmdata set(s), ${presetFilteredSets.length} after preset filter`);
|
|
171
165
|
}
|
|
172
|
-
// Self-referencing sets (same package, explicit selector.files) define which of the
|
|
173
|
-
// current package's own files belong to each preset. They are safe to recurse into:
|
|
174
|
-
// we pass installedPkgPaths with the current pkgPath so the recursive call reuses it
|
|
175
|
-
// without reinstalling and without tripping the circular-dependency guard.
|
|
176
|
-
const selfRefSets = selector.presets && selector.presets.length > 0 && !visitedPackages.has(pkg.name)
|
|
177
|
-
? presetFilteredSets.filter((e) => (0, utils_1.parsePackageSpec)(e.package).name === pkg.name &&
|
|
178
|
-
e.selector?.files &&
|
|
179
|
-
e.selector.files.length > 0)
|
|
180
|
-
: [];
|
|
181
|
-
const externalSets = presetFilteredSets.filter((e) => !siblingNames.has((0, utils_1.parsePackageSpec)(e.package).name) &&
|
|
182
|
-
!visitedPackages.has((0, utils_1.parsePackageSpec)(e.package).name));
|
|
183
|
-
const filteredSets = [...selfRefSets, ...externalSets];
|
|
184
166
|
if (selector.presets &&
|
|
185
167
|
selector.presets.length > 0 &&
|
|
186
168
|
pkgNpmdataSets.length > 0 &&
|
|
187
169
|
presetFilteredSets.length === 0) {
|
|
188
170
|
throw new Error(`Presets (${selector.presets.join(', ')}) not found in any set of package "${pkg.name}"`);
|
|
189
171
|
}
|
|
172
|
+
// Preemptively mark preset-excluded entries as visited so they cannot sneak back
|
|
173
|
+
// in through a self-referencing set's secondary recursion (which would re-read
|
|
174
|
+
// the same package.json without the original preset filter).
|
|
175
|
+
for (const e of pkgNpmdataSets) {
|
|
176
|
+
if (!presetFilteredSets.includes(e)) {
|
|
177
|
+
visitedEntries.add(entryKey(e));
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
// Self-referencing sets (same package name) define file groups for each preset.
|
|
181
|
+
// Only follow them when the caller explicitly requested presets; otherwise they
|
|
182
|
+
// are leaves and further recursion would re-expand all sets unintentionally.
|
|
183
|
+
// External packages are always followed; the visited check prevents cycles.
|
|
184
|
+
const filteredSets = presetFilteredSets.filter((e) => (0, utils_1.parsePackageSpec)(e.package).name !== pkg.name || (selector.presets?.length ?? 0) > 0);
|
|
190
185
|
if (filteredSets.length > 0) {
|
|
191
|
-
const visitedSet = new Set(visitedPackages);
|
|
192
|
-
visitedSet.add(pkg.name);
|
|
193
|
-
// Pass the current pkgPath for self-referencing sets so the recursive call skips
|
|
194
|
-
// reinstallation and bypasses the circular-dependency guard.
|
|
195
|
-
const preInstalled = new Map(installedPkgPaths ?? []);
|
|
196
|
-
if (selfRefSets.length > 0)
|
|
197
|
-
preInstalled.set(pkg.name, pkgPath);
|
|
198
186
|
// Inherit caller overrides (force, dryRun, keepExisting, gitignore, managed) from current entry.
|
|
199
187
|
// Caller-defined (non-undefined) values always take precedence; undefined propagates as-is
|
|
200
188
|
// so defaults are only resolved at the leaf execute() level, not during recursion.
|
|
@@ -221,15 +209,14 @@ async function actionExtract(options) {
|
|
|
221
209
|
};
|
|
222
210
|
});
|
|
223
211
|
if (verbose) {
|
|
224
|
-
console.log(`[verbose] extract: recursing into ${filteredSets.length} set(s) from ${pkg.name}
|
|
212
|
+
console.log(`[verbose] extract: recursing into ${filteredSets.length} set(s) from ${pkg.name}`);
|
|
225
213
|
}
|
|
226
214
|
const subResult = await actionExtract({
|
|
227
215
|
entries: inheritedEntries,
|
|
228
216
|
cwd,
|
|
229
217
|
verbose,
|
|
230
218
|
onProgress,
|
|
231
|
-
|
|
232
|
-
installedPkgPaths: preInstalled,
|
|
219
|
+
visitedEntries,
|
|
233
220
|
});
|
|
234
221
|
result.added += subResult.added;
|
|
235
222
|
result.modified += subResult.modified;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-extract.js","sourceRoot":"","sources":["../../src/package/action-extract.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"action-extract.js","sourceRoot":"","sources":["../../src/package/action-extract.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { NpmdataConfig, ProgressEvent, BasicPackageOptions } from '../types';
|
|
2
2
|
export type PurgeOptions = BasicPackageOptions & {
|
|
3
3
|
onProgress?: (event: ProgressEvent) => void;
|
|
4
|
-
|
|
4
|
+
visitedEntries?: Set<string>;
|
|
5
5
|
config?: NpmdataConfig;
|
|
6
6
|
presets?: string[];
|
|
7
7
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-purge.d.ts","sourceRoot":"","sources":["../../src/package/action-purge.ts"],"names":[],"mappings":"AAIA,OAAO,EAGL,aAAa,EACb,aAAa,EACb,mBAAmB,EACpB,MAAM,UAAU,CAAC;AAKlB,MAAM,MAAM,YAAY,GAAG,mBAAmB,GAAG;IAC/C,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC5C,
|
|
1
|
+
{"version":3,"file":"action-purge.d.ts","sourceRoot":"","sources":["../../src/package/action-purge.ts"],"names":[],"mappings":"AAIA,OAAO,EAGL,aAAa,EACb,aAAa,EACb,mBAAmB,EACpB,MAAM,UAAU,CAAC;AAKlB,MAAM,MAAM,YAAY,GAAG,mBAAmB,GAAG;IAC/C,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC5C,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7B,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AA0HF;;;;;;;;;GASG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAqD9E"}
|
|
@@ -43,16 +43,23 @@ const node_path_1 = __importDefault(require("node:path"));
|
|
|
43
43
|
const utils_1 = require("../utils");
|
|
44
44
|
const markers_1 = require("../fileset/markers");
|
|
45
45
|
const purge_1 = require("../fileset/purge");
|
|
46
|
+
/** Unique key for a set entry: same package with different selectors is a distinct entry. */
|
|
47
|
+
const entryKey = (entry) => `${(0, utils_1.parsePackageSpec)(entry.package).name}|${JSON.stringify(entry.selector ?? {})}`;
|
|
46
48
|
/**
|
|
47
49
|
* Phase 1: recursively collect all managed file entries that need to be purged,
|
|
48
50
|
* grouped by output directory. No disk writes are performed.
|
|
49
51
|
*/
|
|
50
52
|
// eslint-disable-next-line complexity
|
|
51
|
-
async function collectPurgePlan(entries, cwd, verbose,
|
|
53
|
+
async function collectPurgePlan(entries, cwd, verbose, visitedEntries, plan, onProgress) {
|
|
54
|
+
// Skip already-visited entries to break recursion cycles; mark the rest as visited.
|
|
55
|
+
const entriesToProcess = entries.filter((entry) => !visitedEntries.has(entryKey(entry)));
|
|
56
|
+
for (const entry of entriesToProcess) {
|
|
57
|
+
visitedEntries.add(entryKey(entry));
|
|
58
|
+
}
|
|
52
59
|
if (verbose) {
|
|
53
|
-
console.log(`[verbose] purge: collecting ${
|
|
60
|
+
console.log(`[verbose] purge: collecting ${entriesToProcess.length} entr${entriesToProcess.length === 1 ? 'y' : 'ies'} (cwd: ${cwd})`);
|
|
54
61
|
}
|
|
55
|
-
for (const entry of
|
|
62
|
+
for (const entry of entriesToProcess) {
|
|
56
63
|
const pkg = (0, utils_1.parsePackageSpec)(entry.package);
|
|
57
64
|
const outputDir = node_path_1.default.resolve(cwd, entry.output?.path ?? '.');
|
|
58
65
|
if (verbose) {
|
|
@@ -84,22 +91,18 @@ async function collectPurgePlan(entries, cwd, verbose, visitedPackages, plan, on
|
|
|
84
91
|
const depPkgJson = JSON.parse(node_fs_1.default.readFileSync(pkgJsonFile).toString());
|
|
85
92
|
const pkgNpmdataSets = depPkgJson.npmdata?.sets;
|
|
86
93
|
if (pkgNpmdataSets && pkgNpmdataSets.length > 0) {
|
|
87
|
-
const siblingNames = new Set(entries.map((e) => (0, utils_1.parsePackageSpec)(e.package).name));
|
|
88
94
|
const presetFilteredSets = (0, utils_1.filterEntriesByPresets)(pkgNpmdataSets, entry.selector?.presets ?? []);
|
|
89
|
-
//
|
|
90
|
-
//
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
const
|
|
98
|
-
|
|
99
|
-
const filteredSets = [...selfRefSets, ...externalSets];
|
|
95
|
+
// Preemptively mark preset-excluded entries as visited so they cannot sneak
|
|
96
|
+
// back in through a self-referencing set's secondary recursion.
|
|
97
|
+
for (const e of pkgNpmdataSets) {
|
|
98
|
+
if (!presetFilteredSets.includes(e)) {
|
|
99
|
+
visitedEntries.add(entryKey(e));
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
// Self-referencing sets only recurse when presets are active; external sets always recurse.
|
|
103
|
+
const filteredSets = presetFilteredSets.filter((e) => (0, utils_1.parsePackageSpec)(e.package).name !== pkg.name ||
|
|
104
|
+
(entry.selector?.presets?.length ?? 0) > 0);
|
|
100
105
|
if (filteredSets.length > 0) {
|
|
101
|
-
const visitedSet = new Set(visitedPackages);
|
|
102
|
-
visitedSet.add(pkg.name);
|
|
103
106
|
const outputConfig = entry.output ?? {};
|
|
104
107
|
const inheritedEntries = filteredSets.map((depEntry) => {
|
|
105
108
|
const { path: depPath, ...restOutput } = depEntry.output ?? {};
|
|
@@ -112,9 +115,9 @@ async function collectPurgePlan(entries, cwd, verbose, visitedPackages, plan, on
|
|
|
112
115
|
};
|
|
113
116
|
});
|
|
114
117
|
if (verbose) {
|
|
115
|
-
console.log(`[verbose] purge: recursing into ${filteredSets.length} set(s) from ${pkg.name}
|
|
118
|
+
console.log(`[verbose] purge: recursing into ${filteredSets.length} set(s) from ${pkg.name}`);
|
|
116
119
|
}
|
|
117
|
-
await collectPurgePlan(inheritedEntries, cwd, verbose,
|
|
120
|
+
await collectPurgePlan(inheritedEntries, cwd, verbose, visitedEntries, plan, onProgress);
|
|
118
121
|
}
|
|
119
122
|
}
|
|
120
123
|
}
|
|
@@ -130,13 +133,13 @@ async function collectPurgePlan(entries, cwd, verbose, visitedPackages, plan, on
|
|
|
130
133
|
* the marker (removing only purged paths) and gitignore accordingly.
|
|
131
134
|
*/
|
|
132
135
|
async function actionPurge(options) {
|
|
133
|
-
const { entries, cwd, dryRun = false, verbose = false, onProgress,
|
|
136
|
+
const { entries, cwd, dryRun = false, verbose = false, onProgress, visitedEntries = new Set(), } = options;
|
|
134
137
|
// Phase 1: collect all entries to purge across all recursive sets
|
|
135
138
|
if (verbose) {
|
|
136
139
|
console.log(`[verbose] purge: phase 1 - collecting entries to purge (cwd: ${cwd})`);
|
|
137
140
|
}
|
|
138
141
|
const plan = new Map();
|
|
139
|
-
await collectPurgePlan(entries, cwd, verbose,
|
|
142
|
+
await collectPurgePlan(entries, cwd, verbose, visitedEntries, plan, onProgress);
|
|
140
143
|
const summary = { deleted: 0, symlinksRemoved: 0, dirsRemoved: 0 };
|
|
141
144
|
// Phase 2: execute deletions per output directory
|
|
142
145
|
if (verbose) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-purge.js","sourceRoot":"","sources":["../../src/package/action-purge.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8JA,kCAqDC;AAnND,+BAA+B;AAC/B,mDAAyC;AACzC,0DAA6B;AAS7B,oCAA6F;AAC7F,gDAAyD;AACzD,4CAAgD;AAkBhD;;;GAGG;AACH,sCAAsC;AACtC,KAAK,UAAU,gBAAgB,CAC7B,OAA8B,EAC9B,GAAW,EACX,OAAgB,EAChB,
|
|
1
|
+
{"version":3,"file":"action-purge.js","sourceRoot":"","sources":["../../src/package/action-purge.ts"],"names":[],"mappings":"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"}
|