npmdata 0.13.3 → 0.13.4
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/utils.d.ts.map +1 -1
- package/dist/utils.js +43 -18
- package/dist/utils.js.map +1 -1
- package/package.json +1 -1
package/dist/npmdata-0.0.1.tgz
CHANGED
|
Binary file
|
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7D;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,CAQ5D;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;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7D;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,CAQ5D;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,GACX,OAAO,CAAC,MAAM,CAAC,CAyDjB;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"}
|
package/dist/utils.js
CHANGED
|
@@ -92,6 +92,27 @@ function getInstalledIfSatisfies(name, version, workDir) {
|
|
|
92
92
|
// eslint-disable-next-line unicorn/no-null
|
|
93
93
|
return null;
|
|
94
94
|
}
|
|
95
|
+
/**
|
|
96
|
+
* Run the package-manager install/upgrade command for a given spec.
|
|
97
|
+
* Detects the package manager in use and executes the appropriate CLI command.
|
|
98
|
+
*/
|
|
99
|
+
async function runPackageManagerCommand(spec, commandType, workDir) {
|
|
100
|
+
const detected = await (0, detect_1.detect)({ cwd: workDir });
|
|
101
|
+
const agent = detected?.agent ?? 'npm';
|
|
102
|
+
const resolved = (0, commands_1.resolveCommand)(agent, commandType, [spec]);
|
|
103
|
+
if (!resolved) {
|
|
104
|
+
throw new Error(`Could not resolve "${commandType}" command for package manager "${agent}"`);
|
|
105
|
+
}
|
|
106
|
+
const cmd = `${resolved.command} ${resolved.args.join(' ')}`;
|
|
107
|
+
try {
|
|
108
|
+
(0, node_child_process_1.execSync)(cmd, { cwd: workDir, stdio: 'pipe', encoding: 'utf8' });
|
|
109
|
+
}
|
|
110
|
+
catch (error) {
|
|
111
|
+
const e = error;
|
|
112
|
+
const detail = (e.stderr ?? e.stdout ?? e.message ?? String(error)).trim();
|
|
113
|
+
throw new Error(`Failed to install ${spec}: ${detail}`);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
95
116
|
/**
|
|
96
117
|
* Install and/or upgrade a package using the detected package manager.
|
|
97
118
|
* Returns the installed package path under node_modules.
|
|
@@ -110,28 +131,32 @@ async function installOrUpgradePackage(name, version, upgrade, cwd) {
|
|
|
110
131
|
// Ensure a package.json exists so the package manager can operate
|
|
111
132
|
const pkgJsonPath = node_path_1.default.join(workDir, 'package.json');
|
|
112
133
|
if (!node_fs_1.default.existsSync(pkgJsonPath)) {
|
|
134
|
+
// create minimal package.json
|
|
113
135
|
node_fs_1.default.writeFileSync(pkgJsonPath,
|
|
114
136
|
// eslint-disable-next-line no-undefined
|
|
115
137
|
JSON.stringify({ name: 'npmdata-tmp', version: '1.0.0', private: true }, undefined, 2));
|
|
138
|
+
// Ensure node_modules is ignored in .gitignore
|
|
139
|
+
const gitignorePath = node_path_1.default.join(workDir, '.gitignore');
|
|
140
|
+
const gitignoreEntry = 'node_modules';
|
|
141
|
+
if (node_fs_1.default.existsSync(gitignorePath)) {
|
|
142
|
+
const existing = node_fs_1.default.readFileSync(gitignorePath, 'utf8');
|
|
143
|
+
const lines = existing.split('\n').map((l) => l.trim());
|
|
144
|
+
if (!lines.includes(gitignoreEntry)) {
|
|
145
|
+
node_fs_1.default.appendFileSync(gitignorePath, `\n${gitignoreEntry}\n`);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
else {
|
|
149
|
+
node_fs_1.default.writeFileSync(gitignorePath, `${gitignoreEntry}\n`);
|
|
150
|
+
}
|
|
151
|
+
// reinstall itself to ensure it's present in node_modules for later use (e.g. to access its own package.json)
|
|
152
|
+
// this might happen if using npx, for example, which runs the package without installing it in the local node_modules
|
|
153
|
+
const selfPkgJsonPath = node_path_1.default.join(__dirname, '..', 'package.json');
|
|
154
|
+
const selfPkg = JSON.parse(node_fs_1.default.readFileSync(selfPkgJsonPath).toString());
|
|
155
|
+
const selfSpec = `${selfPkg.name}@${selfPkg.version}`;
|
|
156
|
+
await runPackageManagerCommand(selfSpec, 'add', workDir);
|
|
116
157
|
}
|
|
117
|
-
//
|
|
118
|
-
|
|
119
|
-
const agent = detected?.agent ?? 'npm';
|
|
120
|
-
// Resolve the correct CLI command for 'upgrade' or 'add'
|
|
121
|
-
const commandType = upgrade ? 'upgrade' : 'add';
|
|
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}`);
|
|
134
|
-
}
|
|
158
|
+
// install or upgrade the requested package
|
|
159
|
+
await runPackageManagerCommand(spec, upgrade ? 'upgrade' : 'add', workDir);
|
|
135
160
|
const pkgPath = node_path_1.default.join(workDir, 'node_modules', name);
|
|
136
161
|
if (!node_fs_1.default.existsSync(pkgPath)) {
|
|
137
162
|
throw new Error(`Package "${name}" was not found at "${pkgPath}" after installation. ` +
|
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;;;AAeA,4CAQC;AAKD,4BAQC;AAMD,gCAEC;AAKD,oCAGC;AAMD,oCAUC;AAKD,0DAmBC;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|