npmdata 0.13.3 → 0.14.0
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-extract.d.ts.map +1 -1
- package/dist/package/action-extract.js +3 -1
- package/dist/package/action-extract.js.map +1 -1
- package/dist/utils.d.ts +7 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +92 -23
- package/dist/utils.js.map +1 -1
- package/package.json +1 -1
package/dist/npmdata-0.0.1.tgz
CHANGED
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-extract.d.ts","sourceRoot":"","sources":["../../src/package/action-extract.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,aAAa,EAGd,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"action-extract.d.ts","sourceRoot":"","sources":["../../src/package/action-extract.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,aAAa,EAGd,MAAM,UAAU,CAAC;AAalB,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAC/B,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC5C,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC/B,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,CA4OnF"}
|
|
@@ -47,7 +47,7 @@ async function actionExtract(options) {
|
|
|
47
47
|
// Phase 1: Install package
|
|
48
48
|
const upgrade = selector.upgrade ?? false;
|
|
49
49
|
const alreadyCached = !upgrade && (0, utils_1.getInstalledIfSatisfies)(pkg.name, pkg.version, cwd) !== null;
|
|
50
|
-
const pkgPath = await (0, utils_1.installOrUpgradePackage)(pkg.name, pkg.version, upgrade, cwd);
|
|
50
|
+
const pkgPath = await (0, utils_1.installOrUpgradePackage)(pkg.name, pkg.version, upgrade, cwd, verbose);
|
|
51
51
|
if (verbose) {
|
|
52
52
|
let action = 'installed';
|
|
53
53
|
if (alreadyCached)
|
|
@@ -174,6 +174,8 @@ async function actionExtract(options) {
|
|
|
174
174
|
// Deferred deletions: delete after all filesets have been processed
|
|
175
175
|
await (0, execute_1.deleteFiles)(deferredDeletes);
|
|
176
176
|
result.deleted += deferredDeletes.length;
|
|
177
|
+
// cleanup temp package.json and node_module if was created just for this extraction
|
|
178
|
+
(0, utils_1.cleanupTempPackageJson)(cwd, verbose);
|
|
177
179
|
}
|
|
178
180
|
catch (error) {
|
|
179
181
|
// Partial rollback: delete only newly created files
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-extract.js","sourceRoot":"","sources":["../../src/package/action-extract.ts"],"names":[],"mappings":";AAAA,+BAA+B;;;;;
|
|
1
|
+
{"version":3,"file":"action-extract.js","sourceRoot":"","sources":["../../src/package/action-extract.ts"],"names":[],"mappings":"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"}
|
package/dist/utils.d.ts
CHANGED
|
@@ -31,7 +31,7 @@ export declare function getInstalledIfSatisfies(name: string, version: string |
|
|
|
31
31
|
* Returns the installed package path under node_modules.
|
|
32
32
|
* If no package.json exists in the working directory, one is initialised automatically.
|
|
33
33
|
*/
|
|
34
|
-
export declare function installOrUpgradePackage(name: string, version: string | undefined, upgrade: boolean, cwd?: string): Promise<string>;
|
|
34
|
+
export declare function installOrUpgradePackage(name: string, version: string | undefined, upgrade: boolean, cwd?: string, verbose?: boolean): Promise<string>;
|
|
35
35
|
/**
|
|
36
36
|
* Return the installed package path under cwd/node_modules, or null if not installed.
|
|
37
37
|
*/
|
|
@@ -45,4 +45,10 @@ export declare function ensureDir(dir: string): void;
|
|
|
45
45
|
* When no presets are requested, all entries pass through.
|
|
46
46
|
*/
|
|
47
47
|
export declare function filterEntriesByPresets(entries: NpmdataExtractEntry[], presets: string[]): NpmdataExtractEntry[];
|
|
48
|
+
/**
|
|
49
|
+
* Initialise a minimal package.json and ensure node_modules is listed in .gitignore
|
|
50
|
+
* for the given working directory.
|
|
51
|
+
*/
|
|
52
|
+
export declare function initTempPackageJson(workDir: string, verbose?: boolean): void;
|
|
53
|
+
export declare function cleanupTempPackageJson(cwd: string, verbose?: boolean): void;
|
|
48
54
|
//# sourceMappingURL=utils.d.ts.map
|
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7D;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,CAO5D;AAED;;GAEG;AACH,wBAAsB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAQhE;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAE3D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAGrD;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAUtD;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,OAAO,EAAE,MAAM,GACd,MAAM,GAAG,IAAI,CAef;AA6BD;;;;GAIG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,OAAO,EAAE,OAAO,EAChB,GAAG,CAAC,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAAC,MAAM,CAAC,CA4CjB;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQjF;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAI3C;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,mBAAmB,EAAE,EAC9B,OAAO,EAAE,MAAM,EAAE,GAChB,mBAAmB,EAAE,CAOvB;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CA0B5E;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAkC3E"}
|
package/dist/utils.js
CHANGED
|
@@ -13,6 +13,9 @@ exports.installOrUpgradePackage = installOrUpgradePackage;
|
|
|
13
13
|
exports.getInstalledPackagePath = getInstalledPackagePath;
|
|
14
14
|
exports.ensureDir = ensureDir;
|
|
15
15
|
exports.filterEntriesByPresets = filterEntriesByPresets;
|
|
16
|
+
exports.initTempPackageJson = initTempPackageJson;
|
|
17
|
+
exports.cleanupTempPackageJson = cleanupTempPackageJson;
|
|
18
|
+
/* eslint-disable no-undefined */
|
|
16
19
|
const node_fs_1 = __importDefault(require("node:fs"));
|
|
17
20
|
const node_path_1 = __importDefault(require("node:path"));
|
|
18
21
|
const node_crypto_1 = __importDefault(require("node:crypto"));
|
|
@@ -27,10 +30,8 @@ const commands_1 = require("package-manager-detector/commands");
|
|
|
27
30
|
function parsePackageSpec(spec) {
|
|
28
31
|
const atIdx = spec.lastIndexOf('@');
|
|
29
32
|
if (atIdx > 0) {
|
|
30
|
-
// eslint-disable-next-line no-undefined
|
|
31
33
|
return { name: spec.slice(0, atIdx), version: spec.slice(atIdx + 1) || undefined };
|
|
32
34
|
}
|
|
33
|
-
// eslint-disable-next-line no-undefined
|
|
34
35
|
return { name: spec, version: undefined };
|
|
35
36
|
}
|
|
36
37
|
/**
|
|
@@ -92,12 +93,33 @@ function getInstalledIfSatisfies(name, version, workDir) {
|
|
|
92
93
|
// eslint-disable-next-line unicorn/no-null
|
|
93
94
|
return null;
|
|
94
95
|
}
|
|
96
|
+
/**
|
|
97
|
+
* Run the package-manager install/upgrade command for a given spec.
|
|
98
|
+
* Detects the package manager in use and executes the appropriate CLI command.
|
|
99
|
+
*/
|
|
100
|
+
async function runPackageManagerCommand(spec, commandType, workDir) {
|
|
101
|
+
const detected = await (0, detect_1.detect)({ cwd: workDir });
|
|
102
|
+
const agent = detected?.agent ?? 'npm';
|
|
103
|
+
const resolved = (0, commands_1.resolveCommand)(agent, commandType, [spec]);
|
|
104
|
+
if (!resolved) {
|
|
105
|
+
throw new Error(`Could not resolve "${commandType}" command for package manager "${agent}"`);
|
|
106
|
+
}
|
|
107
|
+
const cmd = `${resolved.command} ${resolved.args.join(' ')}`;
|
|
108
|
+
try {
|
|
109
|
+
(0, node_child_process_1.execSync)(cmd, { cwd: workDir, stdio: 'pipe', encoding: 'utf8' });
|
|
110
|
+
}
|
|
111
|
+
catch (error) {
|
|
112
|
+
const e = error;
|
|
113
|
+
const detail = (e.stderr ?? e.stdout ?? e.message ?? String(error)).trim();
|
|
114
|
+
throw new Error(`Failed to install ${spec}: ${detail}`);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
95
117
|
/**
|
|
96
118
|
* Install and/or upgrade a package using the detected package manager.
|
|
97
119
|
* Returns the installed package path under node_modules.
|
|
98
120
|
* If no package.json exists in the working directory, one is initialised automatically.
|
|
99
121
|
*/
|
|
100
|
-
async function installOrUpgradePackage(name, version, upgrade, cwd) {
|
|
122
|
+
async function installOrUpgradePackage(name, version, upgrade, cwd, verbose) {
|
|
101
123
|
const workDir = cwd ?? process.cwd();
|
|
102
124
|
const spec = version ? `${name}@${version}` : `${name}@latest`;
|
|
103
125
|
// Check if already installed with a satisfying version (skip install if not upgrading)
|
|
@@ -108,29 +130,22 @@ async function installOrUpgradePackage(name, version, upgrade, cwd) {
|
|
|
108
130
|
}
|
|
109
131
|
}
|
|
110
132
|
// Ensure a package.json exists so the package manager can operate
|
|
133
|
+
// this happens when npmdata is used as npx without a package.json in the current directory, for example
|
|
111
134
|
const pkgJsonPath = node_path_1.default.join(workDir, 'package.json');
|
|
112
135
|
if (!node_fs_1.default.existsSync(pkgJsonPath)) {
|
|
113
|
-
|
|
114
|
-
//
|
|
115
|
-
|
|
136
|
+
initTempPackageJson(workDir, verbose);
|
|
137
|
+
// reinstall itself to ensure it's present in node_modules for later use (e.g. to access its own package.json)
|
|
138
|
+
// this might happen if using npx, for example, which runs the package without installing it in the local node_modules
|
|
139
|
+
const selfPkgJsonPath = node_path_1.default.join(__dirname, '..', 'package.json');
|
|
140
|
+
const selfPkg = JSON.parse(node_fs_1.default.readFileSync(selfPkgJsonPath).toString());
|
|
141
|
+
const selfSpec = `${selfPkg.name}@${selfPkg.version}`;
|
|
142
|
+
await runPackageManagerCommand(selfSpec, 'add', workDir);
|
|
116
143
|
}
|
|
117
|
-
//
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
const resolved = (0, commands_1.resolveCommand)(agent, commandType, [spec]);
|
|
123
|
-
if (!resolved) {
|
|
124
|
-
throw new Error(`Could not resolve "${commandType}" command for package manager "${agent}"`);
|
|
125
|
-
}
|
|
126
|
-
const cmd = `${resolved.command} ${resolved.args.join(' ')}`;
|
|
127
|
-
try {
|
|
128
|
-
(0, node_child_process_1.execSync)(cmd, { cwd: workDir, stdio: 'pipe', encoding: 'utf8' });
|
|
129
|
-
}
|
|
130
|
-
catch (error) {
|
|
131
|
-
const e = error;
|
|
132
|
-
const detail = (e.stderr ?? e.stdout ?? e.message ?? String(error)).trim();
|
|
133
|
-
throw new Error(`Failed to install ${spec}: ${detail}`);
|
|
144
|
+
// install or upgrade the requested package
|
|
145
|
+
// make sure it's in package.json dependencies (needed before "upgrade")
|
|
146
|
+
await runPackageManagerCommand(spec, 'add', workDir);
|
|
147
|
+
if (upgrade) {
|
|
148
|
+
await runPackageManagerCommand(spec, 'upgrade', workDir);
|
|
134
149
|
}
|
|
135
150
|
const pkgPath = node_path_1.default.join(workDir, 'node_modules', name);
|
|
136
151
|
if (!node_fs_1.default.existsSync(pkgPath)) {
|
|
@@ -172,4 +187,58 @@ function filterEntriesByPresets(entries, presets) {
|
|
|
172
187
|
return presets.some((p) => entryPresets.has(p));
|
|
173
188
|
});
|
|
174
189
|
}
|
|
190
|
+
/**
|
|
191
|
+
* Initialise a minimal package.json and ensure node_modules is listed in .gitignore
|
|
192
|
+
* for the given working directory.
|
|
193
|
+
*/
|
|
194
|
+
function initTempPackageJson(workDir, verbose) {
|
|
195
|
+
const pkgJsonPath = node_path_1.default.join(workDir, 'package.json');
|
|
196
|
+
if (verbose) {
|
|
197
|
+
// eslint-disable-next-line no-console
|
|
198
|
+
console.log(`[verbose] extract: creating temporary package.json at ${pkgJsonPath} for this extraction`);
|
|
199
|
+
}
|
|
200
|
+
node_fs_1.default.writeFileSync(pkgJsonPath, JSON.stringify({ name: 'npmdata-tmp', version: '99.99.99', private: true }, undefined, 2));
|
|
201
|
+
// Ensure node_modules is ignored in .gitignore
|
|
202
|
+
const gitignorePath = node_path_1.default.join(workDir, '.gitignore');
|
|
203
|
+
const gitignoreEntry = 'node_modules';
|
|
204
|
+
if (node_fs_1.default.existsSync(gitignorePath)) {
|
|
205
|
+
const existing = node_fs_1.default.readFileSync(gitignorePath, 'utf8');
|
|
206
|
+
const lines = existing.split('\n').map((l) => l.trim());
|
|
207
|
+
if (!lines.includes(gitignoreEntry)) {
|
|
208
|
+
node_fs_1.default.appendFileSync(gitignorePath, `\n${gitignoreEntry}\n`);
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
else {
|
|
212
|
+
node_fs_1.default.writeFileSync(gitignorePath, `${gitignoreEntry}\n`);
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
function cleanupTempPackageJson(cwd, verbose) {
|
|
216
|
+
const tempPkgJsonPath = node_path_1.default.join(cwd, 'package.json');
|
|
217
|
+
if (!node_fs_1.default.existsSync(tempPkgJsonPath))
|
|
218
|
+
return;
|
|
219
|
+
// verify if this package.json was created by us (npmdata) by checking its name and version
|
|
220
|
+
const tempPkgJsonContent = JSON.parse(node_fs_1.default.readFileSync(tempPkgJsonPath).toString());
|
|
221
|
+
if (tempPkgJsonContent.name !== 'npmdata-tmp' || tempPkgJsonContent.version !== '99.99.99')
|
|
222
|
+
return;
|
|
223
|
+
if (verbose) {
|
|
224
|
+
// eslint-disable-next-line no-console
|
|
225
|
+
console.log(`[verbose] extract: removing temporary package.json and node_modules at ${tempPkgJsonPath} created for this extraction`);
|
|
226
|
+
}
|
|
227
|
+
// remove package.json
|
|
228
|
+
node_fs_1.default.unlinkSync(tempPkgJsonPath);
|
|
229
|
+
// remove node_modules
|
|
230
|
+
const tempNodeModulesPath = node_path_1.default.join(cwd, 'node_modules');
|
|
231
|
+
if (node_fs_1.default.existsSync(tempNodeModulesPath)) {
|
|
232
|
+
node_fs_1.default.rmSync(tempNodeModulesPath, { recursive: true, force: true });
|
|
233
|
+
}
|
|
234
|
+
// cleanup .gitignore if it only contains node_modules (optional, can be left as is)
|
|
235
|
+
const gitignorePath = node_path_1.default.join(cwd, '.gitignore');
|
|
236
|
+
if (node_fs_1.default.existsSync(gitignorePath)) {
|
|
237
|
+
const existing = node_fs_1.default.readFileSync(gitignorePath, 'utf8');
|
|
238
|
+
const lines = existing.split('\n').map((l) => l.trim());
|
|
239
|
+
if (lines.length === 1 && lines[0] === 'node_modules') {
|
|
240
|
+
node_fs_1.default.unlinkSync(gitignorePath);
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
}
|
|
175
244
|
//# sourceMappingURL=utils.js.map
|
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|