nextools / metarepo

🍱 Metarepo of many packages and various monorepos
MIT License
80 stars 10 forks source link

♻️ update commander to v9 #343

Closed renovate[bot] closed 2 years ago

renovate[bot] commented 2 years ago

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
commander ^7.2.0 -> ^9.0.0 age adoption passing confidence

Release Notes

tj/commander.js ### [`v9.3.0`](https://togithub.com/tj/commander.js/blob/HEAD/CHANGELOG.md#​930-2022-05-28) [Compare Source](https://togithub.com/tj/commander.js/compare/v9.2.0...v9.3.0) ##### Added - `.summary()` for a short summary to use instead of description when listing subcommands in help (\[[#​1726](https://togithub.com/tj/commander.js/issues/1726)]) - `Option.implies()` to set other option values when the option is specified (\[[#​1724](https://togithub.com/tj/commander.js/issues/1724)]) - updated Chinese README with 9.x changes (\[[#​1727](https://togithub.com/tj/commander.js/issues/1727)]) ##### Fixed - TypeScript: add `string[]` to `.options()` default value parameter type for use with variadic options (\[[#​1721](https://togithub.com/tj/commander.js/issues/1721)]) ##### Deprecated - multi-character short option flag (e.g. `-ws`) (\[[#​1718](https://togithub.com/tj/commander.js/issues/1718)]) ### [`v9.2.0`](https://togithub.com/tj/commander.js/blob/HEAD/CHANGELOG.md#​920-2022-04-15) [Compare Source](https://togithub.com/tj/commander.js/compare/v9.1.0...v9.2.0) ##### Added - conditional export of 'types' for upcoming TypeScript module resolution (\[[#​1703](https://togithub.com/tj/commander.js/issues/1703)]) - example file showing two ways to add global options to subcommands (\[[#​1708](https://togithub.com/tj/commander.js/issues/1708)]) ##### Fixed - detect option conflicts in parent commands of called subcommand (\[[#​1710](https://togithub.com/tj/commander.js/issues/1710)]) ##### Changed - replace deprecated `String.prototype.substr` (\[[#​1706](https://togithub.com/tj/commander.js/issues/1706)]) ### [`v9.1.0`](https://togithub.com/tj/commander.js/blob/HEAD/CHANGELOG.md#​910-2022-03-19) [Compare Source](https://togithub.com/tj/commander.js/compare/v9.0.0...v9.1.0) ##### Added - Option `.conflicts()` to set conflicting options which can not be specified together (\[[#​1678](https://togithub.com/tj/commander.js/issues/1678)]) - (developer) CodeQL configuration for GitHub Actions (\[[#​1698](https://togithub.com/tj/commander.js/issues/1698)]) ### [`v9.0.0`](https://togithub.com/tj/commander.js/blob/HEAD/CHANGELOG.md#​900-2022-01-28) [Compare Source](https://togithub.com/tj/commander.js/compare/v8.3.0...v9.0.0) ##### Added - simpler ECMAScript import (\[[#​1589](https://togithub.com/tj/commander.js/issues/1589)]) - Option.preset() allows specifying value/arg for option when used without option-argument (especially optional, but also boolean option) (\[[#​1652](https://togithub.com/tj/commander.js/issues/1652)]) - `.executableDir()` for custom search for subcommands (\[[#​1571](https://togithub.com/tj/commander.js/issues/1571)]) - throw with helpful message if pass `Option` to `.option()` or `.requiredOption()` (\[[#​1655](https://togithub.com/tj/commander.js/issues/1655)]) - .`error()` for generating errors from client code just like Commander generated errors, with support for `.configureOutput()`, `.exitOverride()`, and `.showHelpAfterError()` (\[[#​1675](https://togithub.com/tj/commander.js/issues/1675)]) - `.optsWithGlobals()` to return merged local and global options (\[[#​1671](https://togithub.com/tj/commander.js/issues/1671)]) ##### Changed - *Breaking:* Commander 9 requires Node.js v12.20.0 or higher - update package-lock.json to lockfile@2 format (\[[#​1659](https://togithub.com/tj/commander.js/issues/1659)]) - `showSuggestionAfterError` is now on by default (\[[#​1657](https://togithub.com/tj/commander.js/issues/1657)]) - *Breaking:* default value specified for boolean option now always used as default value (see .preset() to match some previous behaviours) (\[[#​1652](https://togithub.com/tj/commander.js/issues/1652)]) - default value for boolean option only shown in help if true/false (\[[#​1652](https://togithub.com/tj/commander.js/issues/1652)]) - use command name as prefix for subcommand stand-alone executable name (with fallback to script name for backwards compatibility) (\[[#​1571](https://togithub.com/tj/commander.js/issues/1571)]) - allow absolute path with `executableFile` (\[[#​1571](https://togithub.com/tj/commander.js/issues/1571)]) - removed restriction that nested subcommands must specify `executableFile` (\[[#​1571](https://togithub.com/tj/commander.js/issues/1571)]) - TypeScript: allow passing readonly string array to `.choices()` \[([#​1667](https://togithub.com/tj/commander.js/issues/1667))] - TypeScript: allow passing readonly string array to `.parse()`, `.parseAsync()`, `.aliases()` \[([#​1669](https://togithub.com/tj/commander.js/issues/1669))] ##### Fixed - option with optional argument not supplied on command line now works when option already has a value, whether from default value or from previous arguments (\[[#​1652](https://togithub.com/tj/commander.js/issues/1652)]) ##### Removed - *Breaking:* removed internal fallback to `require.main.filename` when script not known from arguments passed to `.parse()` (can supply details using `.name()`, and `.executableDir()` or `executableFile`) (\[[#​1571](https://togithub.com/tj/commander.js/issues/1571)]) ### [`v8.3.0`](https://togithub.com/tj/commander.js/blob/HEAD/CHANGELOG.md#​830-2021-10-22) [Compare Source](https://togithub.com/tj/commander.js/compare/v8.2.0...v8.3.0) ##### Added - `.getOptionValueSource()` and `.setOptionValueWithSource()`, where expected values for source are one of 'default', 'env', 'config', 'cli' (\[[#​1613](https://togithub.com/tj/commander.js/issues/1613)]) ##### Deprecated - `.command('*')`, use default command instead (\[[#​1612](https://togithub.com/tj/commander.js/issues/1612)]) - `on('command:*')`, use `.showSuggestionAfterError()` instead (\[[#​1612](https://togithub.com/tj/commander.js/issues/1612)]) ### [`v8.2.0`](https://togithub.com/tj/commander.js/blob/HEAD/CHANGELOG.md#​820-2021-09-10) [Compare Source](https://togithub.com/tj/commander.js/compare/v8.1.0...v8.2.0) ##### Added - `.showSuggestionAfterError()` to show suggestions after unknown command or unknown option (\[[#​1590](https://togithub.com/tj/commander.js/issues/1590)]) - add `Option` support for values from environment variables using `.env()` (\[[#​1587](https://togithub.com/tj/commander.js/issues/1587)]) ##### Changed - show error for unknown global option before subcommand (rather than just help) (\[[#​1590](https://togithub.com/tj/commander.js/issues/1590)]) ##### Removed - TypeScript declaration of unimplemented `Option` method `argumentRejected` ### [`v8.1.0`](https://togithub.com/tj/commander.js/blob/HEAD/CHANGELOG.md#​810-2021-07-27) [Compare Source](https://togithub.com/tj/commander.js/compare/v8.0.0...v8.1.0) ##### Added - `.copyInheritedSettings()` (\[[#​1557](https://togithub.com/tj/commander.js/issues/1557)]) - update Chinese translations of documentation for Commander v8 (\[[#​1570](https://togithub.com/tj/commander.js/issues/1570)]) - `Argument` methods for `.argRequired()` and `.argOptional()` (\[[#​1567](https://togithub.com/tj/commander.js/issues/1567)]) ### [`v8.0.0`](https://togithub.com/tj/commander.js/blob/HEAD/CHANGELOG.md#​800-2021-06-25) [Compare Source](https://togithub.com/tj/commander.js/compare/v7.2.0...v8.0.0) ##### Added - `.argument(name, description)` for adding command-arguments (\[[#​1490](https://togithub.com/tj/commander.js/issues/1490)]) - supports default value for optional command-arguments (\[[#​1508](https://togithub.com/tj/commander.js/issues/1508)]) - supports custom processing function (\[[#​1508](https://togithub.com/tj/commander.js/issues/1508)]) - `.createArgument()` factory method (\[[#​1497](https://togithub.com/tj/commander.js/issues/1497)]) - `.addArgument()` (\[[#​1490](https://togithub.com/tj/commander.js/issues/1490)]) - `Argument` supports `.choices()` (\[[#​1525](https://togithub.com/tj/commander.js/issues/1525)]) - `.showHelpAfterError()` to display full help or a custom message after an error (\[[#​1534](https://togithub.com/tj/commander.js/issues/1534)]) - `.hook()` with support for `'preAction'` and `'postAction'` callbacks (\[[#​1514](https://togithub.com/tj/commander.js/issues/1514)]) - client typing of `.opts()` return type using TypeScript generics (\[[#​1539](https://togithub.com/tj/commander.js/issues/1539)]) - the number of command-arguments is checked for programs without an action handler (\[[#​1502](https://togithub.com/tj/commander.js/issues/1502)]) - `.getOptionValue()` and `.setOptionValue()` (\[[#​1521](https://togithub.com/tj/commander.js/issues/1521)]) ##### Changed - refactor and simplify TypeScript declarations (with no default export) (\[[#​1520](https://togithub.com/tj/commander.js/issues/1520)]) - `.parseAsync()` is now declared as `async` (\[[#​1513](https://togithub.com/tj/commander.js/issues/1513)]) - *Breaking:* `Help` method `.visibleArguments()` returns array of `Argument` (\[[#​1490](https://togithub.com/tj/commander.js/issues/1490)]) - *Breaking:* Commander 8 requires Node.js 12 or higher (\[[#​1500](https://togithub.com/tj/commander.js/issues/1500)]) - *Breaking:* `CommanderError` code `commander.invalidOptionArgument` renamed `commander.invalidArgument` (\[[#​1508](https://togithub.com/tj/commander.js/issues/1508)]) - *Breaking:* TypeScript declaration for `.addTextHelp()` callback no longer allows result of `undefined`, now just `string` (\[[#​1516](https://togithub.com/tj/commander.js/issues/1516)]) - refactor `index.tab` into a file per class (\[[#​1522](https://togithub.com/tj/commander.js/issues/1522)]) - remove help suggestion from "unknown command" error message (see `.showHelpAfteError()`) (\[[#​1534](https://togithub.com/tj/commander.js/issues/1534)]) - `Command` property `.arg` initialised to empty array (was previously undefined) (\[[#​1529](https://togithub.com/tj/commander.js/issues/1529)]) - update dependencies ##### Deprecated - second parameter of `cmd.description(desc, argDescriptions)` for adding argument descriptions (\[[#​1490](https://togithub.com/tj/commander.js/issues/1490)]) - (use new `.argument(name, description)` instead) - `InvalidOptionArgumentError` (replaced by `InvalidArgumentError`) (\[[#​1508](https://togithub.com/tj/commander.js/issues/1508)]) ##### Removed - *Breaking:* TypeScript declaration for default export of global `Command` object (\[[#​1520](https://togithub.com/tj/commander.js/issues/1520)]) - (still available as named `program` export) ##### Migration Tips If you have a simple program without an action handler, you will now get an error if there are missing command-arguments. ```js program .option('-d, --debug') .arguments(''); program.parse(); ``` ```sh $ node trivial.js error: missing required argument 'file' ``` If you want to show the help in this situation, you could check the arguments before parsing: ```js if (process.argv.length === 2) program.help(); program.parse(); ``` Or, you might choose to show the help after any user error: ```js program.showHelpAfterError(); ```

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.



This PR has been generated by Mend Renovate. View repository job log here.