Fix command line index parsing options (--home
and --config
) twice
This commit is contained in:
parent
6547d18e7f
commit
d89112173d
@ -22,12 +22,13 @@ program.version(Helper.getVersion(), "-v, --version")
|
||||
"override entries of the configuration file, must be specified for each entry that needs to be overriden",
|
||||
Utils.parseConfigOptions
|
||||
)
|
||||
.on("--help", Utils.extraHelp)
|
||||
.parseOptions(process.argv);
|
||||
.on("--help", Utils.extraHelp);
|
||||
|
||||
// Parse options from `argv` returning `argv` void of these options.
|
||||
const argvWithoutOptions = program.parseOptions(process.argv);
|
||||
|
||||
if (program.home) {
|
||||
log.warn(`${colors.green("--home")} is ${colors.bold.red("deprecated")} and will be removed in The Lounge v3.`);
|
||||
log.warn(`Use the ${colors.green("THELOUNGE_HOME")} environment variable instead.`);
|
||||
log.warn(`${colors.bold("--home")} is ${colors.bold.red("deprecated")} and will be removed in The Lounge v3. Use the ${colors.bold("THELOUNGE_HOME")} environment variable instead.`);
|
||||
}
|
||||
|
||||
// Check if the app was built before calling setHome as it wants to load manifest.json from the public folder
|
||||
@ -72,7 +73,13 @@ if (process.argv[1].endsWith(`${require("path").sep}lounge`)) {
|
||||
process.argv[1] = "thelounge";
|
||||
}
|
||||
|
||||
program.parse(process.argv);
|
||||
// `parse` expects to be passed `process.argv`, but we need to remove to give it
|
||||
// a version of `argv` that does not contain options already parsed by
|
||||
// `parseOptions` above.
|
||||
// This is done by giving it the updated `argv` that `parseOptions` returned,
|
||||
// except it returns an object with `args`/`unknown`, so we need to concat them.
|
||||
// See https://github.com/tj/commander.js/blob/fefda77f463292/index.js#L686-L763
|
||||
program.parse(argvWithoutOptions.args.concat(argvWithoutOptions.unknown));
|
||||
|
||||
if (!program.args.length) {
|
||||
program.help();
|
||||
|
Loading…
Reference in New Issue
Block a user