@pnpm/plugin-commands-setup 1000.1.15 → 1000.1.16
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/lib/setup.js +15 -4
- package/lib/setup.js.map +1 -1
- package/package.json +3 -2
package/lib/setup.js
CHANGED
|
@@ -14,6 +14,7 @@ const logger_1 = require("@pnpm/logger");
|
|
|
14
14
|
const os_env_path_extender_1 = require("@pnpm/os.env.path-extender");
|
|
15
15
|
const render_help_1 = __importDefault(require("render-help"));
|
|
16
16
|
const rimraf_1 = __importDefault(require("@zkochan/rimraf"));
|
|
17
|
+
const cmd_shim_1 = __importDefault(require("@zkochan/cmd-shim"));
|
|
17
18
|
const rcOptionsTypes = () => ({});
|
|
18
19
|
exports.rcOptionsTypes = rcOptionsTypes;
|
|
19
20
|
const cliOptionsTypes = () => ({
|
|
@@ -50,17 +51,27 @@ function getExecPath() {
|
|
|
50
51
|
}
|
|
51
52
|
return (require.main != null) ? require.main.filename : process.cwd();
|
|
52
53
|
}
|
|
53
|
-
|
|
54
|
-
|
|
54
|
+
/**
|
|
55
|
+
* Copy the CLI into a directory on the PATH and create a command shim to run it.
|
|
56
|
+
* Without the shim, `pnpm self-update` on Windows cannot replace the running executable
|
|
57
|
+
* and fails with: `EPERM: operation not permitted, unlink 'C:\Users\<user>\AppData\Local\pnpm\pnpm.exe'`.
|
|
58
|
+
* Related issue: https://github.com/pnpm/pnpm/issues/5700
|
|
59
|
+
*/
|
|
60
|
+
async function copyCli(currentLocation, targetDir) {
|
|
61
|
+
const toolsDir = path_1.default.join(targetDir, '.tools/pnpm-exe', cli_meta_1.packageManager.version);
|
|
62
|
+
const newExecPath = path_1.default.join(toolsDir, path_1.default.basename(currentLocation));
|
|
55
63
|
if (path_1.default.relative(newExecPath, currentLocation) === '')
|
|
56
64
|
return;
|
|
57
65
|
logger_1.logger.info({
|
|
58
66
|
message: `Copying pnpm CLI from ${currentLocation} to ${newExecPath}`,
|
|
59
67
|
prefix: process.cwd(),
|
|
60
68
|
});
|
|
61
|
-
fs_1.default.mkdirSync(
|
|
69
|
+
fs_1.default.mkdirSync(toolsDir, { recursive: true });
|
|
62
70
|
rimraf_1.default.sync(newExecPath);
|
|
63
71
|
fs_1.default.copyFileSync(currentLocation, newExecPath);
|
|
72
|
+
await (0, cmd_shim_1.default)(newExecPath, path_1.default.join(targetDir, 'pnpm'), {
|
|
73
|
+
createPwshFile: false,
|
|
74
|
+
});
|
|
64
75
|
}
|
|
65
76
|
function createPnpxScripts(targetDir) {
|
|
66
77
|
// Why script files instead of aliases?
|
|
@@ -89,7 +100,7 @@ function createPnpxScripts(targetDir) {
|
|
|
89
100
|
async function handler(opts) {
|
|
90
101
|
const execPath = getExecPath();
|
|
91
102
|
if (execPath.match(/\.[cm]?js$/) == null) {
|
|
92
|
-
copyCli(execPath, opts.pnpmHomeDir);
|
|
103
|
+
await copyCli(execPath, opts.pnpmHomeDir);
|
|
93
104
|
createPnpxScripts(opts.pnpmHomeDir);
|
|
94
105
|
}
|
|
95
106
|
try {
|
package/lib/setup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pnpm/plugin-commands-setup",
|
|
3
|
-
"version": "1000.1.
|
|
3
|
+
"version": "1000.1.16",
|
|
4
4
|
"description": "pnpm commands for setting up pnpm",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"pnpm",
|
|
@@ -26,6 +26,7 @@
|
|
|
26
26
|
],
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"@pnpm/os.env.path-extender": "^2.0.3",
|
|
29
|
+
"@zkochan/cmd-shim": "^7.0.0",
|
|
29
30
|
"@zkochan/rimraf": "^3.0.2",
|
|
30
31
|
"render-help": "^1.0.3",
|
|
31
32
|
"@pnpm/cli-meta": "1000.0.10",
|
|
@@ -37,8 +38,8 @@
|
|
|
37
38
|
"devDependencies": {
|
|
38
39
|
"@jest/globals": "29.7.0",
|
|
39
40
|
"@pnpm/error": "1000.0.5",
|
|
41
|
+
"@pnpm/plugin-commands-setup": "1000.1.16",
|
|
40
42
|
"@pnpm/logger": "1001.0.0",
|
|
41
|
-
"@pnpm/plugin-commands-setup": "1000.1.15",
|
|
42
43
|
"@pnpm/prepare": "1000.0.3"
|
|
43
44
|
},
|
|
44
45
|
"engines": {
|