node-version-use 1.4.8 → 1.4.10
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/cjs/cli.cjs +5 -9
- package/dist/cjs/cli.cjs.map +1 -1
- package/dist/cjs/worker.cjs +22 -32
- package/dist/cjs/worker.cjs.map +1 -1
- package/package.json +4 -3
package/dist/cjs/cli.cjs
CHANGED
|
@@ -44,17 +44,13 @@ var _default = function(argv, name) {
|
|
|
44
44
|
console.log("Missing command. Example usage: ".concat(name, " [version expression] [command]"));
|
|
45
45
|
return (0, _exit.default)(-1);
|
|
46
46
|
}
|
|
47
|
-
if (!options.silent) options.header = function(version, command, args) {
|
|
48
|
-
console.log('\n----------------------');
|
|
49
|
-
console.log("".concat([
|
|
50
|
-
command
|
|
51
|
-
].concat(args).join(' '), " (").concat(version, ")"));
|
|
52
|
-
console.log('----------------------');
|
|
53
|
-
};
|
|
54
47
|
options.stdio = 'inherit'; // pass through stdio
|
|
55
48
|
(0, _index.default)(args[0], args[1], args.slice(2), options, function(err, results) {
|
|
56
49
|
if (err && err.message.indexOf('ExperimentalWarning') >= 0) err = null;
|
|
57
|
-
if (err)
|
|
50
|
+
if (err) {
|
|
51
|
+
results = err.results;
|
|
52
|
+
console.log(err.message);
|
|
53
|
+
}
|
|
58
54
|
var errors = results.filter(function(result) {
|
|
59
55
|
return !!result.error;
|
|
60
56
|
});
|
|
@@ -65,7 +61,7 @@ var _default = function(argv, name) {
|
|
|
65
61
|
return console.log("".concat(res.error ? figures.cross : figures.tick, " ").concat(res.version).concat(res.error ? " Error: ".concat(res.error.message) : ''));
|
|
66
62
|
});
|
|
67
63
|
}
|
|
68
|
-
(0, _exit.default)(errors.length ? -1 : 0);
|
|
64
|
+
(0, _exit.default)(err || errors.length ? -1 : 0);
|
|
69
65
|
});
|
|
70
66
|
};
|
|
71
67
|
/* CJS INTEROP */ if (exports.__esModule && exports.default) { try { Object.defineProperty(exports.default, '__esModule', { value: true }); for (var key in exports) { exports.default[key] = exports[key]; } } catch (_) {}; module.exports = exports.default; }
|
package/dist/cjs/cli.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-version-use/src/cli.js"],"sourcesContent":["import exit from 'exit';\nimport getopts from 'getopts-compat';\nimport nvu from './index.mjs';\n\nconst figures = {\n tick: '✔',\n cross: '✘',\n};\n\nexport default (argv, name) => {\n const options = getopts(argv.slice(1), {\n alias: { range: 'r', desc: 'd', silent: 's' },\n default: { range: 'major,even' },\n boolean: ['silent', 'desc'],\n stopEarly: true,\n });\n\n // define.option('-r, --range [range]', 'range type of major, minor, or patch with filters of lts, even, odd for version string expressions', 'major,even');\n // define.option('-s, --silent', 'suppress logging', false);\n options.sort = options.desc ? -1 : 1;\n\n const args = argv.slice(0, 1).concat(options._);\n if (args.length < 1) {\n console.log(`Missing command. Example usage: ${name} [version expression] [command]`);\n return exit(-1);\n }\n\n
|
|
1
|
+
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-version-use/src/cli.js"],"sourcesContent":["import exit from 'exit';\nimport getopts from 'getopts-compat';\nimport nvu from './index.mjs';\n\nconst figures = {\n tick: '✔',\n cross: '✘',\n};\n\nexport default (argv, name) => {\n const options = getopts(argv.slice(1), {\n alias: { range: 'r', desc: 'd', silent: 's' },\n default: { range: 'major,even' },\n boolean: ['silent', 'desc'],\n stopEarly: true,\n });\n\n // define.option('-r, --range [range]', 'range type of major, minor, or patch with filters of lts, even, odd for version string expressions', 'major,even');\n // define.option('-s, --silent', 'suppress logging', false);\n options.sort = options.desc ? -1 : 1;\n\n const args = argv.slice(0, 1).concat(options._);\n if (args.length < 1) {\n console.log(`Missing command. Example usage: ${name} [version expression] [command]`);\n return exit(-1);\n }\n\n options.stdio = 'inherit'; // pass through stdio\n nvu(args[0], args[1], args.slice(2), options, (err, results) => {\n if (err && err.message.indexOf('ExperimentalWarning') >= 0) err = null;\n if (err) {\n results = err.results;\n console.log(err.message);\n }\n const errors = results.filter((result) => !!result.error);\n\n if (!options.silent) {\n console.log('\\n======================');\n console.log(`nvu ${args.join(' ')} ${errors.length ? 'failed' : 'succeeded'}`);\n results.forEach((res) => console.log(`${res.error ? figures.cross : figures.tick} ${res.version}${res.error ? ` Error: ${res.error.message}` : ''}`));\n }\n\n exit(err || errors.length ? -1 : 0);\n });\n};\n"],"names":["figures","tick","cross","argv","name","options","getopts","slice","alias","range","desc","silent","default","boolean","stopEarly","sort","args","concat","_","length","console","log","exit","stdio","nvu","err","results","message","indexOf","errors","filter","result","error","join","forEach","res","version"],"mappings":";;;;+BASA;;;eAAA;;;2DATiB;oEACG;4DACJ;;;;;;AAEhB,IAAMA,UAAU;IACdC,MAAM;IACNC,OAAO;AACT;IAEA,WAAe,SAACC,MAAMC;IACpB,IAAMC,UAAUC,IAAAA,sBAAO,EAACH,KAAKI,KAAK,CAAC,IAAI;QACrCC,OAAO;YAAEC,OAAO;YAAKC,MAAM;YAAKC,QAAQ;QAAI;QAC5CC,SAAS;YAAEH,OAAO;QAAa;QAC/BI,SAAS;YAAC;YAAU;SAAO;QAC3BC,WAAW;IACb;IAEA,4JAA4J;IAC5J,4DAA4D;IAC5DT,QAAQU,IAAI,GAAGV,QAAQK,IAAI,GAAG,CAAC,IAAI;IAEnC,IAAMM,OAAOb,KAAKI,KAAK,CAAC,GAAG,GAAGU,MAAM,CAACZ,QAAQa,CAAC;IAC9C,IAAIF,KAAKG,MAAM,GAAG,GAAG;QACnBC,QAAQC,GAAG,CAAC,AAAC,mCAAuC,OAALjB,MAAK;QACpD,OAAOkB,IAAAA,aAAI,EAAC,CAAC;IACf;IAEAjB,QAAQkB,KAAK,GAAG,WAAW,qBAAqB;IAChDC,IAAAA,cAAG,EAACR,IAAI,CAAC,EAAE,EAAEA,IAAI,CAAC,EAAE,EAAEA,KAAKT,KAAK,CAAC,IAAIF,SAAS,SAACoB,KAAKC;QAClD,IAAID,OAAOA,IAAIE,OAAO,CAACC,OAAO,CAAC,0BAA0B,GAAGH,MAAM;QAClE,IAAIA,KAAK;YACPC,UAAUD,IAAIC,OAAO;YACrBN,QAAQC,GAAG,CAACI,IAAIE,OAAO;QACzB;QACA,IAAME,SAASH,QAAQI,MAAM,CAAC,SAACC;mBAAW,CAAC,CAACA,OAAOC,KAAK;;QAExD,IAAI,CAAC3B,QAAQM,MAAM,EAAE;YACnBS,QAAQC,GAAG,CAAC;YACZD,QAAQC,GAAG,CAAC,AAAC,OAAwBQ,OAAlBb,KAAKiB,IAAI,CAAC,MAAK,KAA0C,OAAvCJ,OAAOV,MAAM,GAAG,WAAW;YAChEO,QAAQQ,OAAO,CAAC,SAACC;uBAAQf,QAAQC,GAAG,CAAC,AAAC,GAA8Cc,OAA5CA,IAAIH,KAAK,GAAGhC,QAAQE,KAAK,GAAGF,QAAQC,IAAI,EAAC,KAAiBkC,OAAdA,IAAIC,OAAO,EAAmD,OAAhDD,IAAIH,KAAK,GAAG,AAAC,WAA4B,OAAlBG,IAAIH,KAAK,CAACL,OAAO,IAAK;;QACjJ;QAEAL,IAAAA,aAAI,EAACG,OAAOI,OAAOV,MAAM,GAAG,CAAC,IAAI;IACnC;AACF"}
|
package/dist/cjs/worker.cjs
CHANGED
|
@@ -13,6 +13,7 @@ var _noderesolveversions = /*#__PURE__*/ _interop_require_default(require("node-
|
|
|
13
13
|
var _nodeversioninstall = /*#__PURE__*/ _interop_require_default(require("node-version-install"));
|
|
14
14
|
var _nodeversionutils = require("node-version-utils");
|
|
15
15
|
var _queuecb = /*#__PURE__*/ _interop_require_default(require("queue-cb"));
|
|
16
|
+
var _spawnstreaming = /*#__PURE__*/ _interop_require_default(require("spawn-streaming"));
|
|
16
17
|
var _constants = require("./constants.cjs");
|
|
17
18
|
function _define_property(obj, key, value) {
|
|
18
19
|
if (key in obj) {
|
|
@@ -47,30 +48,6 @@ function _object_spread(target) {
|
|
|
47
48
|
}
|
|
48
49
|
return target;
|
|
49
50
|
}
|
|
50
|
-
function ownKeys(object, enumerableOnly) {
|
|
51
|
-
var keys = Object.keys(object);
|
|
52
|
-
if (Object.getOwnPropertySymbols) {
|
|
53
|
-
var symbols = Object.getOwnPropertySymbols(object);
|
|
54
|
-
if (enumerableOnly) {
|
|
55
|
-
symbols = symbols.filter(function(sym) {
|
|
56
|
-
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
keys.push.apply(keys, symbols);
|
|
60
|
-
}
|
|
61
|
-
return keys;
|
|
62
|
-
}
|
|
63
|
-
function _object_spread_props(target, source) {
|
|
64
|
-
source = source != null ? source : {};
|
|
65
|
-
if (Object.getOwnPropertyDescriptors) {
|
|
66
|
-
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
|
|
67
|
-
} else {
|
|
68
|
-
ownKeys(Object(source)).forEach(function(key) {
|
|
69
|
-
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
70
|
-
});
|
|
71
|
-
}
|
|
72
|
-
return target;
|
|
73
|
-
}
|
|
74
51
|
function worker(versionExpression, command, args, options, callback) {
|
|
75
52
|
(0, _noderesolveversions.default)(versionExpression, options, function(err, versions) {
|
|
76
53
|
if (err) return callback(err);
|
|
@@ -82,23 +59,36 @@ function worker(versionExpression, command, args, options, callback) {
|
|
|
82
59
|
var queue = new _queuecb.default(1);
|
|
83
60
|
versions.forEach(function(version) {
|
|
84
61
|
return queue.defer(function(cb) {
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
if (
|
|
88
|
-
|
|
89
|
-
|
|
62
|
+
(0, _nodeversioninstall.default)(version, installOptions, function(_err, installs) {
|
|
63
|
+
var install = installs && installs.length === 1 ? installs[0] : null;
|
|
64
|
+
if (!install) {
|
|
65
|
+
results.push({
|
|
66
|
+
install: install,
|
|
67
|
+
command: command,
|
|
68
|
+
version: version,
|
|
69
|
+
error: new Error("Unexpected version results for version ".concat(version, ". Install ").concat(JSON.stringify(installs))),
|
|
70
|
+
result: null
|
|
71
|
+
});
|
|
72
|
+
return callback();
|
|
73
|
+
}
|
|
74
|
+
var next = function(err, res) {
|
|
90
75
|
if (err && err.message.indexOf('ExperimentalWarning') >= 0) {
|
|
91
76
|
res = err;
|
|
92
77
|
err = null;
|
|
93
78
|
}
|
|
94
|
-
results.push(
|
|
79
|
+
results.push({
|
|
80
|
+
install: install,
|
|
95
81
|
command: command,
|
|
96
82
|
version: version,
|
|
97
83
|
error: err,
|
|
98
84
|
result: res
|
|
99
|
-
})
|
|
85
|
+
});
|
|
100
86
|
cb();
|
|
101
|
-
}
|
|
87
|
+
};
|
|
88
|
+
if (versions.length < 2) return (0, _crossspawncb.default)(command, args, (0, _nodeversionutils.spawnOptions)(install.installPath, options), next);
|
|
89
|
+
(0, _spawnstreaming.default)(command, args, (0, _nodeversionutils.spawnOptions)(install.installPath, options), {
|
|
90
|
+
prefix: install.version
|
|
91
|
+
}, next);
|
|
102
92
|
});
|
|
103
93
|
});
|
|
104
94
|
});
|
package/dist/cjs/worker.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-version-use/src/worker.mjs"],"sourcesContent":["import spawn from 'cross-spawn-cb';\nimport resolveVersions from 'node-resolve-versions';\nimport
|
|
1
|
+
{"version":3,"sources":["/Users/kevin/Dev/OpenSource/node-version/node-version-use/src/worker.mjs"],"sourcesContent":["import spawn from 'cross-spawn-cb';\nimport resolveVersions from 'node-resolve-versions';\nimport installVersion from 'node-version-install';\nimport { spawnOptions } from 'node-version-utils';\nimport Queue from 'queue-cb';\nimport spawnStreaming from 'spawn-streaming';\nimport { storagePath } from './constants';\n\nexport default function worker(versionExpression, command, args, options, callback) {\n resolveVersions(versionExpression, options, (err, versions) => {\n if (err) return callback(err);\n if (!versions.length) return callback(new Error(`No versions found from expression: ${versionExpression}`));\n\n const installOptions = { storagePath, ...options };\n const results = [];\n const queue = new Queue(1);\n versions.forEach((version) =>\n queue.defer((cb) => {\n installVersion(version, installOptions, (_err, installs) => {\n const install = installs && installs.length === 1 ? installs[0] : null;\n if (!install) {\n results.push({ install, command, version, error: new Error(`Unexpected version results for version ${version}. Install ${JSON.stringify(installs)}`), result: null });\n return callback();\n }\n\n const next = (err, res) => {\n if (err && err.message.indexOf('ExperimentalWarning') >= 0) {\n res = err;\n err = null;\n }\n results.push({ install, command, version, error: err, result: res });\n cb();\n };\n\n if (versions.length < 2) return spawn(command, args, spawnOptions(install.installPath, options), next);\n spawnStreaming(command, args, spawnOptions(install.installPath, options), { prefix: install.version }, next);\n });\n })\n );\n queue.await((err) => {\n err ? callback(err) : callback(null, results);\n });\n });\n}\n"],"names":["worker","versionExpression","command","args","options","callback","resolveVersions","err","versions","length","Error","installOptions","storagePath","results","queue","Queue","forEach","version","defer","cb","installVersion","_err","installs","install","push","error","JSON","stringify","result","next","res","message","indexOf","spawn","spawnOptions","installPath","spawnStreaming","prefix","await"],"mappings":";;;;+BAQA;;;eAAwBA;;;mEARN;0EACU;yEACD;gCACE;8DACX;qEACS;yBACC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEb,SAASA,OAAOC,iBAAiB,EAAEC,OAAO,EAAEC,IAAI,EAAEC,OAAO,EAAEC,QAAQ;IAChFC,IAAAA,4BAAe,EAACL,mBAAmBG,SAAS,SAACG,KAAKC;QAChD,IAAID,KAAK,OAAOF,SAASE;QACzB,IAAI,CAACC,SAASC,MAAM,EAAE,OAAOJ,SAAS,IAAIK,MAAM,AAAC,sCAAuD,OAAlBT;QAEtF,IAAMU,iBAAiB;YAAEC,aAAAA,sBAAW;WAAKR;QACzC,IAAMS,UAAU,EAAE;QAClB,IAAMC,QAAQ,IAAIC,gBAAK,CAAC;QACxBP,SAASQ,OAAO,CAAC,SAACC;mBAChBH,MAAMI,KAAK,CAAC,SAACC;gBACXC,IAAAA,2BAAc,EAACH,SAASN,gBAAgB,SAACU,MAAMC;oBAC7C,IAAMC,UAAUD,YAAYA,SAASb,MAAM,KAAK,IAAIa,QAAQ,CAAC,EAAE,GAAG;oBAClE,IAAI,CAACC,SAAS;wBACZV,QAAQW,IAAI,CAAC;4BAAED,SAAAA;4BAASrB,SAAAA;4BAASe,SAAAA;4BAASQ,OAAO,IAAIf,MAAM,AAAC,0CAA6DgB,OAApBT,SAAQ,cAAqC,OAAzBS,KAAKC,SAAS,CAACL;4BAAcM,QAAQ;wBAAK;wBACnK,OAAOvB;oBACT;oBAEA,IAAMwB,OAAO,SAACtB,KAAKuB;wBACjB,IAAIvB,OAAOA,IAAIwB,OAAO,CAACC,OAAO,CAAC,0BAA0B,GAAG;4BAC1DF,MAAMvB;4BACNA,MAAM;wBACR;wBACAM,QAAQW,IAAI,CAAC;4BAAED,SAAAA;4BAASrB,SAAAA;4BAASe,SAAAA;4BAASQ,OAAOlB;4BAAKqB,QAAQE;wBAAI;wBAClEX;oBACF;oBAEA,IAAIX,SAASC,MAAM,GAAG,GAAG,OAAOwB,IAAAA,qBAAK,EAAC/B,SAASC,MAAM+B,IAAAA,8BAAY,EAACX,QAAQY,WAAW,EAAE/B,UAAUyB;oBACjGO,IAAAA,uBAAc,EAAClC,SAASC,MAAM+B,IAAAA,8BAAY,EAACX,QAAQY,WAAW,EAAE/B,UAAU;wBAAEiC,QAAQd,QAAQN,OAAO;oBAAC,GAAGY;gBACzG;YACF;;QAEFf,MAAMwB,KAAK,CAAC,SAAC/B;YACXA,MAAMF,SAASE,OAAOF,SAAS,MAAMQ;QACvC;IACF;AACF"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "node-version-use",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.10",
|
|
4
4
|
"description": "Cross-platform solution for using multiple versions of node. Useful for compatibility testing",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"node",
|
|
@@ -35,12 +35,13 @@
|
|
|
35
35
|
"dependencies": {
|
|
36
36
|
"cross-spawn-cb": "^2.1.2",
|
|
37
37
|
"exit": "^0.1.2",
|
|
38
|
-
"getopts-compat": "^2.2.
|
|
38
|
+
"getopts-compat": "^2.2.6",
|
|
39
39
|
"homedir-polyfill": "^1.0.3",
|
|
40
40
|
"node-resolve-versions": "^1.0.10",
|
|
41
41
|
"node-version-install": "^1.1.1",
|
|
42
42
|
"node-version-utils": "^1.2.4",
|
|
43
|
-
"queue-cb": "^1.4.10"
|
|
43
|
+
"queue-cb": "^1.4.10",
|
|
44
|
+
"spawn-streaming": "^1.0.1"
|
|
44
45
|
},
|
|
45
46
|
"devDependencies": {
|
|
46
47
|
"@biomejs/biome": "^1.9.4",
|