@pnpm/plugin-commands-env 2.1.11 → 2.1.14
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/env.js +7 -3
- package/lib/env.js.map +1 -1
- package/lib/node.d.ts +2 -1
- package/lib/node.js +36 -96
- package/lib/node.js.map +1 -1
- package/lib/parseNodeEditionSpecifier.d.ts +5 -0
- package/lib/parseNodeEditionSpecifier.js +19 -0
- package/lib/parseNodeEditionSpecifier.js.map +1 -0
- package/package.json +9 -15
- package/lib/normalizeArch.d.ts +0 -1
- package/lib/normalizeArch.js +0 -13
- package/lib/normalizeArch.js.map +0 -1
- package/lib/resolveNodeVersion.d.ts +0 -9
- package/lib/resolveNodeVersion.js +0 -61
- package/lib/resolveNodeVersion.js.map +0 -1
package/lib/env.js
CHANGED
|
@@ -9,10 +9,12 @@ const path_1 = __importDefault(require("path"));
|
|
|
9
9
|
const cli_utils_1 = require("@pnpm/cli-utils");
|
|
10
10
|
const error_1 = __importDefault(require("@pnpm/error"));
|
|
11
11
|
const fetch_1 = require("@pnpm/fetch");
|
|
12
|
+
const node_resolver_1 = require("@pnpm/node.resolver");
|
|
12
13
|
const cmd_shim_1 = __importDefault(require("@zkochan/cmd-shim"));
|
|
13
14
|
const render_help_1 = __importDefault(require("render-help"));
|
|
14
15
|
const node_1 = require("./node");
|
|
15
|
-
const
|
|
16
|
+
const getNodeMirror_1 = __importDefault(require("./getNodeMirror"));
|
|
17
|
+
const parseNodeEditionSpecifier_1 = require("./parseNodeEditionSpecifier");
|
|
16
18
|
function rcOptionsTypes() {
|
|
17
19
|
return {};
|
|
18
20
|
}
|
|
@@ -61,14 +63,16 @@ async function handler(opts, params) {
|
|
|
61
63
|
throw new error_1.default('NOT_IMPLEMENTED_YET', '"pnpm env use <version>" can only be used with the "--global" option currently');
|
|
62
64
|
}
|
|
63
65
|
const fetch = (0, fetch_1.createFetchFromRegistry)(opts);
|
|
64
|
-
const {
|
|
66
|
+
const { releaseDir, versionSpecifier } = (0, parseNodeEditionSpecifier_1.parseNodeEditionSpecifier)(params[1]);
|
|
67
|
+
const nodeMirrorBaseUrl = (0, getNodeMirror_1.default)(opts.rawConfig, releaseDir);
|
|
68
|
+
const nodeVersion = await (0, node_resolver_1.resolveNodeVersion)(fetch, versionSpecifier, nodeMirrorBaseUrl);
|
|
65
69
|
if (!nodeVersion) {
|
|
66
70
|
throw new error_1.default('COULD_NOT_RESOLVE_NODEJS', `Couldn't find Node.js version matching ${params[1]}`);
|
|
67
71
|
}
|
|
68
72
|
const nodeDir = await (0, node_1.getNodeDir)(fetch, {
|
|
69
73
|
...opts,
|
|
70
74
|
useNodeVersion: nodeVersion,
|
|
71
|
-
|
|
75
|
+
nodeMirrorBaseUrl,
|
|
72
76
|
});
|
|
73
77
|
const src = path_1.default.join(nodeDir, process.platform === 'win32' ? 'node.exe' : 'bin/node');
|
|
74
78
|
const dest = path_1.default.join(opts.bin, process.platform === 'win32' ? 'node.exe' : 'node');
|
package/lib/env.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":";;;;;;AAAA,2BAAmC;AACnC,gDAAuB;AACvB,+CAAyC;AACzC,wDAAmC;AACnC,uCAAqD;AACrD,iEAAuC;AACvC,8DAAoC;AACpC,iCAA0D;AAC1D,
|
|
1
|
+
{"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"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"}
|
package/lib/node.d.ts
CHANGED
|
@@ -3,5 +3,6 @@ import { FetchFromRegistry } from '@pnpm/fetch';
|
|
|
3
3
|
export declare type NvmNodeCommandOptions = Pick<Config, 'bin' | 'global' | 'fetchRetries' | 'fetchRetryFactor' | 'fetchRetryMaxtimeout' | 'fetchRetryMintimeout' | 'fetchTimeout' | 'userAgent' | 'ca' | 'cert' | 'httpProxy' | 'httpsProxy' | 'key' | 'localAddress' | 'noProxy' | 'rawConfig' | 'strictSsl' | 'storeDir' | 'useNodeVersion' | 'pnpmHomeDir'> & Partial<Pick<Config, 'configDir'>>;
|
|
4
4
|
export declare function getNodeBinDir(opts: NvmNodeCommandOptions): Promise<string>;
|
|
5
5
|
export declare function getNodeDir(fetch: FetchFromRegistry, opts: NvmNodeCommandOptions & {
|
|
6
|
-
|
|
6
|
+
useNodeVersion: string;
|
|
7
|
+
nodeMirrorBaseUrl: string;
|
|
7
8
|
}): Promise<string>;
|
package/lib/node.js
CHANGED
|
@@ -1,27 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
4
|
};
|
|
@@ -30,26 +7,16 @@ exports.getNodeDir = exports.getNodeBinDir = void 0;
|
|
|
30
7
|
const fs_1 = __importDefault(require("fs"));
|
|
31
8
|
const path_1 = __importDefault(require("path"));
|
|
32
9
|
const fetch_1 = require("@pnpm/fetch");
|
|
33
|
-
const
|
|
10
|
+
const node_fetcher_1 = require("@pnpm/node.fetcher");
|
|
34
11
|
const store_path_1 = __importDefault(require("@pnpm/store-path"));
|
|
35
|
-
const tarball_fetcher_1 = __importStar(require("@pnpm/tarball-fetcher"));
|
|
36
|
-
const adm_zip_1 = __importDefault(require("adm-zip"));
|
|
37
|
-
const rename_overwrite_1 = __importDefault(require("rename-overwrite"));
|
|
38
|
-
const tempy_1 = __importDefault(require("tempy"));
|
|
39
12
|
const load_json_file_1 = __importDefault(require("load-json-file"));
|
|
40
13
|
const write_json_file_1 = __importDefault(require("write-json-file"));
|
|
41
|
-
const normalizeArch_1 = __importDefault(require("./normalizeArch"));
|
|
42
14
|
const getNodeMirror_1 = __importDefault(require("./getNodeMirror"));
|
|
15
|
+
const parseNodeEditionSpecifier_1 = require("./parseNodeEditionSpecifier");
|
|
43
16
|
async function getNodeBinDir(opts) {
|
|
44
17
|
const fetch = (0, fetch_1.createFetchFromRegistry)(opts);
|
|
45
|
-
const
|
|
46
|
-
return process.platform === 'win32' ? nodeDir : path_1.default.join(nodeDir, 'bin');
|
|
47
|
-
}
|
|
48
|
-
exports.getNodeBinDir = getNodeBinDir;
|
|
49
|
-
async function getNodeDir(fetch, opts) {
|
|
50
|
-
const nodesDir = path_1.default.join(opts.pnpmHomeDir, 'nodejs');
|
|
18
|
+
const nodesDir = getNodeVersionsBaseDir(opts.pnpmHomeDir);
|
|
51
19
|
let wantedNodeVersion = opts.useNodeVersion ?? (await readNodeVersionsManifest(nodesDir))?.default;
|
|
52
|
-
await fs_1.default.promises.mkdir(nodesDir, { recursive: true });
|
|
53
20
|
if (wantedNodeVersion == null) {
|
|
54
21
|
const response = await fetch('https://registry.npmjs.org/node');
|
|
55
22
|
wantedNodeVersion = (await response.json())['dist-tags'].lts; // eslint-disable-line
|
|
@@ -60,71 +27,44 @@ async function getNodeDir(fetch, opts) {
|
|
|
60
27
|
default: wantedNodeVersion,
|
|
61
28
|
});
|
|
62
29
|
}
|
|
63
|
-
const
|
|
30
|
+
const { versionSpecifier, releaseDir } = (0, parseNodeEditionSpecifier_1.parseNodeEditionSpecifier)(wantedNodeVersion);
|
|
31
|
+
const nodeMirrorBaseUrl = (0, getNodeMirror_1.default)(opts.rawConfig, releaseDir);
|
|
32
|
+
const nodeDir = await getNodeDir(fetch, {
|
|
33
|
+
...opts,
|
|
34
|
+
useNodeVersion: versionSpecifier,
|
|
35
|
+
nodeMirrorBaseUrl,
|
|
36
|
+
});
|
|
37
|
+
return process.platform === 'win32' ? nodeDir : path_1.default.join(nodeDir, 'bin');
|
|
38
|
+
}
|
|
39
|
+
exports.getNodeBinDir = getNodeBinDir;
|
|
40
|
+
function getNodeVersionsBaseDir(pnpmHomeDir) {
|
|
41
|
+
return path_1.default.join(pnpmHomeDir, 'nodejs');
|
|
42
|
+
}
|
|
43
|
+
async function getNodeDir(fetch, opts) {
|
|
44
|
+
const nodesDir = getNodeVersionsBaseDir(opts.pnpmHomeDir);
|
|
45
|
+
await fs_1.default.promises.mkdir(nodesDir, { recursive: true });
|
|
46
|
+
const versionDir = path_1.default.join(nodesDir, opts.useNodeVersion);
|
|
64
47
|
if (!fs_1.default.existsSync(versionDir)) {
|
|
65
|
-
await
|
|
48
|
+
const storeDir = await (0, store_path_1.default)({
|
|
49
|
+
pkgRoot: process.cwd(),
|
|
50
|
+
storePath: opts.storeDir,
|
|
51
|
+
pnpmHomeDir: opts.pnpmHomeDir,
|
|
52
|
+
});
|
|
53
|
+
const cafsDir = path_1.default.join(storeDir, 'files');
|
|
54
|
+
await (0, node_fetcher_1.fetchNode)(fetch, opts.useNodeVersion, versionDir, {
|
|
55
|
+
...opts,
|
|
56
|
+
cafsDir,
|
|
57
|
+
retry: {
|
|
58
|
+
maxTimeout: opts.fetchRetryMaxtimeout,
|
|
59
|
+
minTimeout: opts.fetchRetryMintimeout,
|
|
60
|
+
retries: opts.fetchRetries,
|
|
61
|
+
factor: opts.fetchRetryFactor,
|
|
62
|
+
},
|
|
63
|
+
});
|
|
66
64
|
}
|
|
67
65
|
return versionDir;
|
|
68
66
|
}
|
|
69
67
|
exports.getNodeDir = getNodeDir;
|
|
70
|
-
async function installNode(fetch, wantedNodeVersion, versionDir, opts) {
|
|
71
|
-
const nodeMirror = (0, getNodeMirror_1.default)(opts.rawConfig, opts.releaseDir ?? 'release');
|
|
72
|
-
const { tarball, pkgName } = getNodeJSTarball(wantedNodeVersion, nodeMirror);
|
|
73
|
-
if (tarball.endsWith('.zip')) {
|
|
74
|
-
await downloadAndUnpackZip(fetch, tarball, versionDir, pkgName);
|
|
75
|
-
return;
|
|
76
|
-
}
|
|
77
|
-
const getCredentials = () => ({ authHeaderValue: undefined, alwaysAuth: undefined });
|
|
78
|
-
const { tarball: fetchTarball } = (0, tarball_fetcher_1.default)(fetch, getCredentials, {
|
|
79
|
-
retry: {
|
|
80
|
-
maxTimeout: opts.fetchRetryMaxtimeout,
|
|
81
|
-
minTimeout: opts.fetchRetryMintimeout,
|
|
82
|
-
retries: opts.fetchRetries,
|
|
83
|
-
factor: opts.fetchRetryFactor,
|
|
84
|
-
},
|
|
85
|
-
timeout: opts.fetchTimeout,
|
|
86
|
-
});
|
|
87
|
-
const storeDir = await (0, store_path_1.default)({
|
|
88
|
-
pkgRoot: process.cwd(),
|
|
89
|
-
storePath: opts.storeDir,
|
|
90
|
-
pnpmHomeDir: opts.pnpmHomeDir,
|
|
91
|
-
});
|
|
92
|
-
const cafsDir = path_1.default.join(storeDir, 'files');
|
|
93
|
-
const cafs = (0, create_cafs_store_1.default)(cafsDir);
|
|
94
|
-
const { filesIndex } = await fetchTarball(cafs, { tarball }, {
|
|
95
|
-
lockfileDir: process.cwd(),
|
|
96
|
-
});
|
|
97
|
-
await cafs.importPackage(versionDir, {
|
|
98
|
-
filesResponse: {
|
|
99
|
-
filesIndex: await (0, tarball_fetcher_1.waitForFilesIndex)(filesIndex),
|
|
100
|
-
fromStore: false,
|
|
101
|
-
},
|
|
102
|
-
force: true,
|
|
103
|
-
});
|
|
104
|
-
}
|
|
105
|
-
async function downloadAndUnpackZip(fetchFromRegistry, zipUrl, targetDir, pkgName) {
|
|
106
|
-
const response = await fetchFromRegistry(zipUrl);
|
|
107
|
-
const tmp = path_1.default.join(tempy_1.default.directory(), 'pnpm.zip');
|
|
108
|
-
const dest = fs_1.default.createWriteStream(tmp);
|
|
109
|
-
await new Promise((resolve, reject) => {
|
|
110
|
-
response.body.pipe(dest).on('error', reject).on('close', resolve);
|
|
111
|
-
});
|
|
112
|
-
const zip = new adm_zip_1.default(tmp);
|
|
113
|
-
const nodeDir = path_1.default.dirname(targetDir);
|
|
114
|
-
zip.extractAllTo(nodeDir, true);
|
|
115
|
-
await (0, rename_overwrite_1.default)(path_1.default.join(nodeDir, pkgName), targetDir);
|
|
116
|
-
await fs_1.default.promises.unlink(tmp);
|
|
117
|
-
}
|
|
118
|
-
function getNodeJSTarball(nodeVersion, nodeMirror) {
|
|
119
|
-
const platform = process.platform === 'win32' ? 'win' : process.platform;
|
|
120
|
-
const arch = (0, normalizeArch_1.default)(process.platform, process.arch);
|
|
121
|
-
const extension = platform === 'win' ? 'zip' : 'tar.gz';
|
|
122
|
-
const pkgName = `node-v${nodeVersion}-${platform}-${arch}`;
|
|
123
|
-
return {
|
|
124
|
-
pkgName,
|
|
125
|
-
tarball: `${nodeMirror}v${nodeVersion}/${pkgName}.${extension}`,
|
|
126
|
-
};
|
|
127
|
-
}
|
|
128
68
|
async function readNodeVersionsManifest(nodesDir) {
|
|
129
69
|
try {
|
|
130
70
|
return await (0, load_json_file_1.default)(path_1.default.join(nodesDir, 'versions.json'));
|
package/lib/node.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.js","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"node.js","sourceRoot":"","sources":["../src/node.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseNodeEditionSpecifier = void 0;
|
|
4
|
+
function parseNodeEditionSpecifier(specifier) {
|
|
5
|
+
if (specifier.includes('/')) {
|
|
6
|
+
const [releaseDir, versionSpecifier] = specifier.split('/');
|
|
7
|
+
return { releaseDir, versionSpecifier };
|
|
8
|
+
}
|
|
9
|
+
const prereleaseMatch = specifier.match(/-(nightly|rc|test|v8-canary)/);
|
|
10
|
+
if (prereleaseMatch != null) {
|
|
11
|
+
return { releaseDir: prereleaseMatch[1], versionSpecifier: specifier };
|
|
12
|
+
}
|
|
13
|
+
if (['nightly', 'rc', 'test', 'release', 'v8-canary'].includes(specifier)) {
|
|
14
|
+
return { releaseDir: specifier, versionSpecifier: 'latest' };
|
|
15
|
+
}
|
|
16
|
+
return { releaseDir: 'release', versionSpecifier: specifier };
|
|
17
|
+
}
|
|
18
|
+
exports.parseNodeEditionSpecifier = parseNodeEditionSpecifier;
|
|
19
|
+
//# sourceMappingURL=parseNodeEditionSpecifier.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parseNodeEditionSpecifier.js","sourceRoot":"","sources":["../src/parseNodeEditionSpecifier.ts"],"names":[],"mappings":";;;AAKA,SAAgB,yBAAyB,CAAE,SAAiB;IAC1D,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;QAC3B,MAAM,CAAC,UAAU,EAAE,gBAAgB,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAC3D,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAA;KACxC;IACD,MAAM,eAAe,GAAG,SAAS,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAA;IACvE,IAAI,eAAe,IAAI,IAAI,EAAE;QAC3B,OAAO,EAAE,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAA;KACvE;IACD,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;QACzE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,CAAA;KAC7D;IACD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,gBAAgB,EAAE,SAAS,EAAE,CAAA;AAC/D,CAAC;AAbD,8DAaC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pnpm/plugin-commands-env",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.14",
|
|
4
4
|
"description": "pnpm commands for managing Node.js",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"types": "lib/index.d.ts",
|
|
@@ -23,30 +23,24 @@
|
|
|
23
23
|
},
|
|
24
24
|
"homepage": "https://github.com/pnpm/pnpm/blob/main/packages/plugin-commands-env#readme",
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@pnpm/cli-utils": "0.7.
|
|
27
|
-
"@pnpm/config": "15.
|
|
28
|
-
"@pnpm/create-cafs-store": "1.0.3",
|
|
26
|
+
"@pnpm/cli-utils": "0.7.15",
|
|
27
|
+
"@pnpm/config": "15.4.1",
|
|
29
28
|
"@pnpm/error": "3.0.1",
|
|
30
|
-
"@pnpm/fetch": "5.0.
|
|
31
|
-
"@pnpm/fetcher
|
|
29
|
+
"@pnpm/fetch": "5.0.5",
|
|
30
|
+
"@pnpm/node.fetcher": "1.0.1",
|
|
31
|
+
"@pnpm/node.resolver": "1.0.1",
|
|
32
32
|
"@pnpm/store-path": "6.0.0",
|
|
33
|
-
"@pnpm/tarball-fetcher": "10.0.4",
|
|
34
33
|
"@zkochan/cmd-shim": "^5.2.2",
|
|
35
|
-
"adm-zip": "^0.5.5",
|
|
36
34
|
"load-json-file": "^6.2.0",
|
|
37
|
-
"rename-overwrite": "^4.0.2",
|
|
38
35
|
"render-help": "^1.0.1",
|
|
39
|
-
"semver": "^7.3.4",
|
|
40
|
-
"tempy": "^1.0.0",
|
|
41
|
-
"version-selector-type": "^3.0.0",
|
|
42
36
|
"write-json-file": "^4.3.0"
|
|
43
37
|
},
|
|
44
38
|
"funding": "https://opencollective.com/pnpm",
|
|
45
39
|
"devDependencies": {
|
|
46
|
-
"@pnpm/plugin-commands-env": "2.1.
|
|
47
|
-
"@pnpm/prepare": "0.0.
|
|
40
|
+
"@pnpm/plugin-commands-env": "2.1.14",
|
|
41
|
+
"@pnpm/prepare": "0.0.45",
|
|
48
42
|
"@types/adm-zip": "^0.4.34",
|
|
49
|
-
"
|
|
43
|
+
"adm-zip": "^0.5.5",
|
|
50
44
|
"execa": "npm:safe-execa@^0.1.1",
|
|
51
45
|
"nock": "12.0.3",
|
|
52
46
|
"node-fetch": "3.0.0-beta.9",
|
package/lib/normalizeArch.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export default function getNormalizedArch(platform: string, arch: string): string;
|
package/lib/normalizeArch.js
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
function getNormalizedArch(platform, arch) {
|
|
4
|
-
if (platform === 'win32' && arch === 'ia32') {
|
|
5
|
-
return 'x86';
|
|
6
|
-
}
|
|
7
|
-
if (arch === 'arm') {
|
|
8
|
-
return 'armv7l';
|
|
9
|
-
}
|
|
10
|
-
return arch;
|
|
11
|
-
}
|
|
12
|
-
exports.default = getNormalizedArch;
|
|
13
|
-
//# sourceMappingURL=normalizeArch.js.map
|
package/lib/normalizeArch.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"normalizeArch.js","sourceRoot":"","sources":["../src/normalizeArch.ts"],"names":[],"mappings":";;AAAA,SAAwB,iBAAiB,CAAE,QAAgB,EAAE,IAAY;IACvE,IAAI,QAAQ,KAAK,OAAO,IAAI,IAAI,KAAK,MAAM,EAAE;QAC3C,OAAO,KAAK,CAAA;KACb;IACD,IAAI,IAAI,KAAK,KAAK,EAAE;QAClB,OAAO,QAAQ,CAAA;KAChB;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AARD,oCAQC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { Config } from '@pnpm/config';
|
|
2
|
-
import { FetchFromRegistry } from '@pnpm/fetch';
|
|
3
|
-
export default function resolveNodeVersion(fetch: FetchFromRegistry, rawVersionSelector: string, rawConfig: Config['rawConfig']): Promise<{
|
|
4
|
-
version: string;
|
|
5
|
-
releaseDir: string;
|
|
6
|
-
} | {
|
|
7
|
-
version: null;
|
|
8
|
-
releaseDir: string;
|
|
9
|
-
}>;
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const semver_1 = __importDefault(require("semver"));
|
|
7
|
-
const version_selector_type_1 = __importDefault(require("version-selector-type"));
|
|
8
|
-
const getNodeMirror_1 = __importDefault(require("./getNodeMirror"));
|
|
9
|
-
async function resolveNodeVersion(fetch, rawVersionSelector, rawConfig) {
|
|
10
|
-
const { releaseDir, version } = parseNodeVersionSelector(rawVersionSelector);
|
|
11
|
-
const nodeMirrorBaseUrl = (0, getNodeMirror_1.default)(rawConfig, releaseDir);
|
|
12
|
-
const response = await fetch(`${nodeMirrorBaseUrl}index.json`);
|
|
13
|
-
const allVersions = (await response.json());
|
|
14
|
-
if (version === 'latest') {
|
|
15
|
-
return {
|
|
16
|
-
version: allVersions[0].version.substring(1),
|
|
17
|
-
releaseDir,
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
const { versions, versionSelector } = filterVersions(allVersions, version);
|
|
21
|
-
const pickedVersion = semver_1.default.maxSatisfying(versions.map(({ version }) => version), versionSelector, { includePrerelease: true, loose: true });
|
|
22
|
-
if (!pickedVersion)
|
|
23
|
-
return { version: null, releaseDir };
|
|
24
|
-
return {
|
|
25
|
-
version: pickedVersion.substring(1),
|
|
26
|
-
releaseDir,
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
exports.default = resolveNodeVersion;
|
|
30
|
-
function parseNodeVersionSelector(rawVersionSelector) {
|
|
31
|
-
if (rawVersionSelector.includes('/')) {
|
|
32
|
-
const [releaseDir, version] = rawVersionSelector.split('/');
|
|
33
|
-
return { releaseDir, version };
|
|
34
|
-
}
|
|
35
|
-
const prereleaseMatch = rawVersionSelector.match(/-(nightly|rc|test|v8-canary)/);
|
|
36
|
-
if (prereleaseMatch != null) {
|
|
37
|
-
return { releaseDir: prereleaseMatch[1], version: rawVersionSelector };
|
|
38
|
-
}
|
|
39
|
-
if (['nightly', 'rc', 'test', 'release', 'v8-canary'].includes(rawVersionSelector)) {
|
|
40
|
-
return { releaseDir: rawVersionSelector, version: 'latest' };
|
|
41
|
-
}
|
|
42
|
-
return { releaseDir: 'release', version: rawVersionSelector };
|
|
43
|
-
}
|
|
44
|
-
function filterVersions(versions, versionSelector) {
|
|
45
|
-
if (versionSelector === 'lts') {
|
|
46
|
-
return {
|
|
47
|
-
versions: versions.filter(({ lts }) => lts !== false),
|
|
48
|
-
versionSelector: '*',
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
const vst = (0, version_selector_type_1.default)(versionSelector);
|
|
52
|
-
if (vst?.type === 'tag') {
|
|
53
|
-
const wantedLtsVersion = vst.normalized.toLowerCase();
|
|
54
|
-
return {
|
|
55
|
-
versions: versions.filter(({ lts }) => typeof lts === 'string' && lts.toLowerCase() === wantedLtsVersion),
|
|
56
|
-
versionSelector: '*',
|
|
57
|
-
};
|
|
58
|
-
}
|
|
59
|
-
return { versions, versionSelector };
|
|
60
|
-
}
|
|
61
|
-
//# sourceMappingURL=resolveNodeVersion.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"resolveNodeVersion.js","sourceRoot":"","sources":["../src/resolveNodeVersion.ts"],"names":[],"mappings":"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"}
|