@pnpm/plugin-commands-env 1000.0.16 → 1000.0.18
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/node.js +10 -1
- package/lib/node.js.map +1 -1
- package/lib/parseNodeSpecifier.d.ts +1 -0
- package/lib/parseNodeSpecifier.js +14 -2
- package/lib/parseNodeSpecifier.js.map +1 -1
- package/package.json +9 -9
package/lib/node.js
CHANGED
|
@@ -39,7 +39,16 @@ async function prepareExecutionEnv(config, { extraBinPaths, executionEnv }) {
|
|
|
39
39
|
async function getNodeBinDir(opts) {
|
|
40
40
|
const fetch = (0, fetch_1.createFetchFromRegistry)(opts);
|
|
41
41
|
const nodesDir = getNodeVersionsBaseDir(opts.pnpmHomeDir);
|
|
42
|
-
|
|
42
|
+
const manifestNodeVersion = (await readNodeVersionsManifest(nodesDir))?.default;
|
|
43
|
+
let wantedNodeVersion = opts.useNodeVersion ?? manifestNodeVersion;
|
|
44
|
+
if (opts.useNodeVersion != null) {
|
|
45
|
+
// If the user has specified an invalid version via use-node-version, we should not throw an error. Or else, it will break all the commands.
|
|
46
|
+
// Instead, we should fallback to the manifest node version
|
|
47
|
+
if (!(0, parseNodeSpecifier_1.isValidVersion)(opts.useNodeVersion)) {
|
|
48
|
+
(0, logger_1.globalWarn)(`"${opts.useNodeVersion}" is not a valid Node.js version.`);
|
|
49
|
+
wantedNodeVersion = manifestNodeVersion;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
43
52
|
if (wantedNodeVersion == null) {
|
|
44
53
|
const response = await fetch('https://registry.npmjs.org/node');
|
|
45
54
|
wantedNodeVersion = (await response.json())['dist-tags'].lts; // eslint-disable-line
|
package/lib/node.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.js","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":";;;;;AA0CA,kDAiBC;AAED,
|
|
1
|
+
{"version":3,"file":"node.js","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,21 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isValidVersion = isValidVersion;
|
|
3
4
|
exports.parseNodeSpecifier = parseNodeSpecifier;
|
|
4
5
|
const error_1 = require("@pnpm/error");
|
|
5
6
|
const isStableVersion = (version) => /^\d+\.\d+\.\d+$/.test(version);
|
|
7
|
+
const matchPrereleaseVersion = (version) => version.match(/^\d+\.\d+\.\d+-((rc)(\..+)|(test|v8-canary|nightly)(.+))$/);
|
|
6
8
|
const STABLE_RELEASE_ERROR_HINT = 'The correct syntax for stable release is strictly X.Y.Z or release/X.Y.Z';
|
|
9
|
+
function isValidVersion(specifier) {
|
|
10
|
+
if (specifier.includes('/')) {
|
|
11
|
+
const [releaseChannel, useNodeVersion] = specifier.split('/');
|
|
12
|
+
if (releaseChannel === 'release') {
|
|
13
|
+
return isStableVersion(useNodeVersion);
|
|
14
|
+
}
|
|
15
|
+
return useNodeVersion.includes(releaseChannel);
|
|
16
|
+
}
|
|
17
|
+
return isStableVersion(specifier) || matchPrereleaseVersion(specifier) != null;
|
|
18
|
+
}
|
|
7
19
|
function parseNodeSpecifier(specifier) {
|
|
8
20
|
if (specifier.includes('/')) {
|
|
9
21
|
const [releaseChannel, useNodeVersion] = specifier.split('/');
|
|
@@ -19,9 +31,9 @@ function parseNodeSpecifier(specifier) {
|
|
|
19
31
|
}
|
|
20
32
|
return { releaseChannel, useNodeVersion };
|
|
21
33
|
}
|
|
22
|
-
const prereleaseMatch = specifier
|
|
34
|
+
const prereleaseMatch = matchPrereleaseVersion(specifier);
|
|
23
35
|
if (prereleaseMatch != null) {
|
|
24
|
-
return { releaseChannel: prereleaseMatch[
|
|
36
|
+
return { releaseChannel: prereleaseMatch[2], useNodeVersion: specifier };
|
|
25
37
|
}
|
|
26
38
|
if (isStableVersion(specifier)) {
|
|
27
39
|
return { releaseChannel: 'release', useNodeVersion: specifier };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseNodeSpecifier.js","sourceRoot":"","sources":["../src/parseNodeSpecifier.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"parseNodeSpecifier.js","sourceRoot":"","sources":["../src/parseNodeSpecifier.ts"],"names":[],"mappings":";;AAYA,wCAYC;AAED,gDAiCC;AA3DD,uCAAuC;AAOvC,MAAM,eAAe,GAAG,CAAC,OAAe,EAAW,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;AACrF,MAAM,sBAAsB,GAAG,CAAC,OAAe,EAA2B,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,2DAA2D,CAAC,CAAA;AAEvJ,MAAM,yBAAyB,GAAG,0EAA0E,CAAA;AAE5G,SAAgB,cAAc,CAAE,SAAiB;IAC/C,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,CAAC,cAAc,EAAE,cAAc,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAE7D,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YACjC,OAAO,eAAe,CAAC,cAAc,CAAC,CAAA;QACxC,CAAC;QAED,OAAO,cAAc,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA;IAChD,CAAC;IAED,OAAO,eAAe,CAAC,SAAS,CAAC,IAAI,sBAAsB,CAAC,SAAS,CAAC,IAAI,IAAI,CAAA;AAChF,CAAC;AAED,SAAgB,kBAAkB,CAAE,SAAiB;IACnD,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,CAAC,cAAc,EAAE,cAAc,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAE7D,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,EAAE,CAAC;gBACrC,MAAM,IAAI,iBAAS,CAAC,sBAAsB,EAAE,IAAI,SAAS,kCAAkC,EAAE;oBAC3F,IAAI,EAAE,yBAAyB;iBAChC,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;YACpD,MAAM,IAAI,iBAAS,CAAC,4BAA4B,EAAE,oBAAoB,cAAc,uCAAuC,cAAc,GAAG,CAAC,CAAA;QAC/I,CAAC;QAED,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,CAAA;IAC3C,CAAC;IAED,MAAM,eAAe,GAAG,sBAAsB,CAAC,SAAS,CAAC,CAAA;IACzD,IAAI,eAAe,IAAI,IAAI,EAAE,CAAC;QAC5B,OAAO,EAAE,cAAc,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,SAAS,EAAE,CAAA;IAC1E,CAAC;IAED,IAAI,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/B,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,CAAA;IACjE,CAAC;IAED,IAAI,IAAwB,CAAA;IAC5B,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/D,IAAI,GAAG,0BAA0B,SAAS,8BAA8B,SAAS,IAAI,CAAA;IACvF,CAAC;SAAM,IAAI,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1H,IAAI,GAAG,yBAAyB,CAAA;IAClC,CAAC;IACD,MAAM,IAAI,iBAAS,CAAC,sBAAsB,EAAE,IAAI,SAAS,kCAAkC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;AACxG,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pnpm/plugin-commands-env",
|
|
3
|
-
"version": "1000.0.
|
|
3
|
+
"version": "1000.0.18",
|
|
4
4
|
"description": "pnpm commands for managing Node.js",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"pnpm",
|
|
@@ -33,15 +33,15 @@
|
|
|
33
33
|
"semver": "^7.7.1",
|
|
34
34
|
"symlink-dir": "^6.0.5",
|
|
35
35
|
"write-json-file": "^4.3.0",
|
|
36
|
-
"@pnpm/cli-utils": "1000.0.
|
|
36
|
+
"@pnpm/cli-utils": "1000.0.17",
|
|
37
|
+
"@pnpm/config": "1002.5.4",
|
|
37
38
|
"@pnpm/env.system-node-version": "1000.0.4",
|
|
38
|
-
"@pnpm/config": "1002.5.3",
|
|
39
39
|
"@pnpm/error": "1000.0.2",
|
|
40
|
+
"@pnpm/node.resolver": "1000.0.11",
|
|
41
|
+
"@pnpm/node.fetcher": "1000.0.11",
|
|
40
42
|
"@pnpm/fetch": "1000.1.5",
|
|
41
|
-
"@pnpm/node.fetcher": "1000.0.9",
|
|
42
|
-
"@pnpm/node.resolver": "1000.0.9",
|
|
43
|
-
"@pnpm/remove-bins": "1000.0.6",
|
|
44
43
|
"@pnpm/store-path": "1000.0.2",
|
|
44
|
+
"@pnpm/remove-bins": "1000.0.6",
|
|
45
45
|
"@pnpm/types": "1000.2.1"
|
|
46
46
|
},
|
|
47
47
|
"peerDependencies": {
|
|
@@ -59,9 +59,9 @@
|
|
|
59
59
|
"node-fetch": "npm:@pnpm/node-fetch@1.0.0",
|
|
60
60
|
"path-name": "^1.0.0",
|
|
61
61
|
"tar-stream": "^2.2.0",
|
|
62
|
-
"@pnpm/
|
|
63
|
-
"@pnpm/prepare": "0.0.
|
|
64
|
-
"@pnpm/
|
|
62
|
+
"@pnpm/logger": "1000.0.0",
|
|
63
|
+
"@pnpm/prepare": "0.0.114",
|
|
64
|
+
"@pnpm/plugin-commands-env": "1000.0.18"
|
|
65
65
|
},
|
|
66
66
|
"engines": {
|
|
67
67
|
"node": ">=18.12"
|