@pnpm/plugin-commands-env 1000.0.15 → 1000.0.17
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.17",
|
|
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.
|
|
37
|
-
"@pnpm/config": "1002.5.2",
|
|
38
|
-
"@pnpm/error": "1000.0.2",
|
|
36
|
+
"@pnpm/cli-utils": "1000.0.16",
|
|
39
37
|
"@pnpm/env.system-node-version": "1000.0.4",
|
|
38
|
+
"@pnpm/config": "1002.5.3",
|
|
39
|
+
"@pnpm/error": "1000.0.2",
|
|
40
|
+
"@pnpm/node.fetcher": "1000.0.10",
|
|
40
41
|
"@pnpm/fetch": "1000.1.5",
|
|
41
|
-
"@pnpm/node.
|
|
42
|
+
"@pnpm/node.resolver": "1000.0.10",
|
|
42
43
|
"@pnpm/remove-bins": "1000.0.6",
|
|
43
44
|
"@pnpm/store-path": "1000.0.2",
|
|
44
|
-
"@pnpm/node.resolver": "1000.0.9",
|
|
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/
|
|
64
|
-
"@pnpm/
|
|
62
|
+
"@pnpm/logger": "1000.0.0",
|
|
63
|
+
"@pnpm/plugin-commands-env": "1000.0.17",
|
|
64
|
+
"@pnpm/prepare": "0.0.113"
|
|
65
65
|
},
|
|
66
66
|
"engines": {
|
|
67
67
|
"node": ">=18.12"
|