tj/commander.js
### [`v6.0.0`](https://togithub.com/tj/commander.js/blob/master/CHANGELOG.md#600-2020-07-21)
[Compare Source](https://togithub.com/tj/commander.js/compare/v5.1.0...v6.0.0)
##### Added
- add support for variadic options ([#1250])
- allow options to be added with just a short flag ([#1256])
- _Breaking_ the option property has same case as flag. e.g. flag `-n` accessed as `opts().n` (previously uppercase)
- _Breaking_ throw an error if there might be a clash between option name and a Command property, with advice on how to resolve ([#1275])
##### Fixed
- Options which contain -no- in the middle of the option flag should not be treated as negatable. ([#1301])
### [`v5.1.0`](https://togithub.com/tj/commander.js/blob/master/CHANGELOG.md#510-2020-04-25)
[Compare Source](https://togithub.com/tj/commander.js/compare/v5.0.0...v5.1.0)
##### Added
- support for multiple command aliases, the first of which is shown in the auto-generated help ([#531], [#1236])
- configuration support in `addCommand()` for `hidden` and `isDefault` ([#1232])
##### Fixed
- omit masked help flags from the displayed help ([#645], [#1247])
- remove old short help flag when change help flags using `helpOption` ([#1248])
##### Changed
- remove use of `arguments` to improve auto-generated help in editors ([#1235])
- rename `.command()` configuration `noHelp` to `hidden` (but not remove old support) ([#1232])
- improvements to documentation
- update dependencies
- update tested versions of node
- eliminate lint errors in TypeScript ([#1208])
### [`v5.0.0`](https://togithub.com/tj/commander.js/blob/master/CHANGELOG.md#500-2020-03-14)
[Compare Source](https://togithub.com/tj/commander.js/compare/v4.1.1...v5.0.0)
##### Added
- support for nested commands with action-handlers ([#1][#764] [#1149])
- `.addCommand()` for adding a separately configured command ([#764][#1149])
- allow a non-executable to be set as the default command ([#742][#1149])
- implicit help command when there are subcommands (previously only if executables) ([#1149])
- customise implicit help command with `.addHelpCommand()` ([#1149])
- display error message for unknown subcommand, by default ([#432][#1088] [#1149])
- display help for missing subcommand, by default ([#1088][#1149])
- combined short options as single argument may include boolean flags and value flag and value (e.g. `-a -b -p 80` can be written as `-abp80`) ([#1145])
- `.parseOption()` includes short flag and long flag expansions ([#1145])
- `.helpInformation()` returns help text as a string, previously a private routine ([#1169])
- `.parse()` implicitly uses `process.argv` if arguments not specified ([#1172])
- optionally specify where `.parse()` arguments "from", if not following node conventions ([#512][#1172])
- suggest help option along with unknown command error ([#1179])
- TypeScript definition for `commands` property of `Command` ([#1184])
- export `program` property ([#1195])
- `createCommand` factory method to simplify subclassing ([#1191])
##### Fixed
- preserve argument order in subcommands ([#508][#962] [#1138])
- do not emit `command:*` for executable subcommands ([#809][#1149])
- action handler called whether or not there are non-option arguments ([#1062][#1149])
- combining option short flag and value in single argument now works for subcommands ([#1145])
- only add implicit help command when it will not conflict with other uses of argument ([#1153][#1149])
- implicit help command works with command aliases ([#948][#1149])
- options are validated whether or not there is an action handler ([#1149])
##### Changed
- _Breaking_ `.args` contains command arguments with just recognised options removed ([#1032][#1138])
- _Breaking_ display error if required argument for command is missing ([#995][#1149])
- tighten TypeScript definition of custom option processing function passed to `.option()` ([#1119])
- _Breaking_ `.allowUnknownOption()` ([#802][#1138])
- unknown options included in arguments passed to command action handler
- unknown options included in `.args`
- only recognised option short flags and long flags are expanded (e.g. `-ab` or `--foo=bar`) ([#1145])
- _Breaking_ `.parseOptions()` ([#1138])
- `args` in returned result renamed `operands` and does not include anything after first unknown option
- `unknown` in returned result has arguments after first unknown option including operands, not just options and values
- _Breaking_ `.on('command:*', callback)` and other command events passed (changed) results from `.parseOptions`, i.e. operands and unknown ([#1138])
- refactor Option from prototype to class ([#1133])
- refactor Command from prototype to class ([#1159])
- changes to error handling ([#1165])
- throw for author error, not just display message
- preflight for variadic error
- add tips to missing subcommand executable
- TypeScript fluent return types changed to be more subclass friendly, return `this` rather than `Command` ([#1180])
- `.parseAsync` returns `Promise` to be consistent with `.parse()` ([#1180])
- update dependencies
##### Removed
- removed EventEmitter from TypeScript definition for Command, eliminating implicit peer dependency on `@types/node` ([#1146])
- removed private function `normalize` (the functionality has been integrated into `parseOptions`) ([#1145])
- `parseExpectedArgs` is now private ([#1149])
##### Migration Tips
If you use `.on('command:*')` or more complicated tests to detect an unrecognised subcommand, you may be able to delete the code and rely on the default behaviour.
If you use `program.args` or more complicated tests to detect a missing subcommand, you may be able to delete the code and rely on the default behaviour.
If you use `.command('*')` to add a default command, you may be be able to switch to `isDefault:true` with a named command.
### [`v4.1.1`](https://togithub.com/tj/commander.js/blob/master/CHANGELOG.md#411-2020-02-02)
[Compare Source](https://togithub.com/tj/commander.js/compare/v4.1.0...v4.1.1)
##### Fixed
- TypeScript definition for `.action()` should include Promise for async ([#1157])
### [`v4.1.0`](https://togithub.com/tj/commander.js/blob/master/CHANGELOG.md#410-2020-01-06)
[Compare Source](https://togithub.com/tj/commander.js/compare/v4.0.1...v4.1.0)
##### Added
- two routines to change how option values are handled, and eliminate name clashes with command properties ([#933][#1102])
- see storeOptionsAsProperties and passCommandToAction in README
- `.parseAsync` to use instead of `.parse` if supply async action handlers ([#806][#1118])
##### Fixed
- Remove trailing blanks from wrapped help text ([#1096])
##### Changed
- update dependencies
- extend security coverage for Commander 2.x to 2020-02-03
- improvements to README
- improvements to TypeScript definition documentation
- move old versions out of main CHANGELOG
- removed explicit use of `ts-node` in tests
### [`v4.0.1`](https://togithub.com/tj/commander.js/blob/master/CHANGELOG.md#401-2019-11-12)
[Compare Source](https://togithub.com/tj/commander.js/compare/v4.0.0...v4.0.1)
##### Fixed
- display help when requested, even if there are missing required options ([#1091])
### [`v4.0.0`](https://togithub.com/tj/commander.js/blob/master/CHANGELOG.md#400-2019-11-02)
[Compare Source](https://togithub.com/tj/commander.js/compare/v3.0.2...v4.0.0)
##### Added
- automatically wrap and indent help descriptions for options and commands ([#1051])
- `.exitOverride()` allows override of calls to `process.exit` for additional error handling and to keep program running ([#1040])
- support for declaring required options with `.requiredOptions()` ([#1071])
- GitHub Actions support ([#1027])
- translation links in README
##### Changed
- dev: switch tests from Sinon+Should to Jest with major rewrite of tests ([#1035])
- call default subcommand even when there are unknown options ([#1047])
- _Breaking_ Commander is only officially supported on Node 8 and above, and requires Node 6 ([#1053])
##### Fixed
- _Breaking_ keep command object out of program.args when action handler called ([#1048])
- also, action handler now passed array of unknown arguments
- complain about unknown options when program argument supplied and action handler ([#1049])
- this changes parameters to `command:*` event to include unknown arguments
- removed deprecated `customFds` option from call to `child_process.spawn` ([#1052])
- rework TypeScript declarations to bring all types into imported namespace ([#1081])
##### Migration Tips
##### Testing for no arguments
If you were previously using code like:
```js
if (!program.args.length) ...
```
a partial replacement is:
```js
if (program.rawArgs.length < 3) ...
```
### [`v3.0.2`](https://togithub.com/tj/commander.js/releases/v3.0.2)
[Compare Source](https://togithub.com/tj/commander.js/compare/v3.0.1...v3.0.2)
##### Fixed
- Improve tracking of executable subcommands.
##### Changed
- update development dependencies
Credits:
- issue identified by Checkmarx Application Security Research Team
### [`v3.0.1`](https://togithub.com/tj/commander.js/releases/v3.0.1)
[Compare Source](https://togithub.com/tj/commander.js/compare/v3.0.0...v3.0.1)
##### Added
- .name and .usage to README ([#1010](https://togithub.com/tj/commander.js/issues/1010))
- Table of Contents to README ([#1010](https://togithub.com/tj/commander.js/issues/1010))
- TypeScript definition for `executableFile` in CommandOptions ([#1028](https://togithub.com/tj/commander.js/issues/1028))
##### Changed
- consistently use `const` rather than `var` in README ([#1026](https://togithub.com/tj/commander.js/issues/1026))
##### Fixed
- help for sub commands with custom executableFile ([#1018](https://togithub.com/tj/commander.js/issues/1018))
### [`v3.0.0`](https://togithub.com/tj/commander.js/releases/v3.0.0)
[Compare Source](https://togithub.com/tj/commander.js/compare/v2.20.3...v3.0.0)
- Add option to specify executable file name ([#999](https://togithub.com/tj/commander.js/issues/999))
- e.g. `.command('clone', 'clone description', { executableFile: 'myClone' })`
- Change docs for `.command` to contrast action handler vs git-style executable. ([#938](https://togithub.com/tj/commander.js/issues/938) [#990](https://togithub.com/tj/commander.js/issues/990))
- **Breaking** Change TypeScript to use overloaded function for `.command`. ([#938](https://togithub.com/tj/commander.js/issues/938) [#990](https://togithub.com/tj/commander.js/issues/990))
- Change to use straight quotes around strings in error messages (like 'this' instead of \`this') ([#915](https://togithub.com/tj/commander.js/issues/915))
- Add TypeScript "reference types" for node ([#974](https://togithub.com/tj/commander.js/issues/974))
- Add support for hyphen as an option argument in subcommands ([#697](https://togithub.com/tj/commander.js/issues/697))
- Add support for a short option flag and its value to be concatenated for action handler subcommands ([#599](https://togithub.com/tj/commander.js/issues/599))
- e.g. `-p 80` can also be supplied as `-p80`
- Add executable arguments to spawn in win32, for git-style executables ([#611](https://togithub.com/tj/commander.js/issues/611))
- e.g. `node --harmony myCommand.js clone`
- Add parent command as prefix of subcommand in help ([#980](https://togithub.com/tj/commander.js/issues/980))
- Add optional custom description to `.version` ([#963](https://togithub.com/tj/commander.js/issues/963))
- e.g. `program.version('0.0.1', '-v, --vers', 'output the current version')`
- Add `.helpOption(flags, description)` routine to customise help flags and description ([#963](https://togithub.com/tj/commander.js/issues/963))
- e.g. `.helpOption('-e, --HELP', 'read more information')`
- Fix behavior of --no-\* options ([#795](https://togithub.com/tj/commander.js/issues/795))
- can now define both `--foo` and `--no-foo`
- **Breaking** custom event listeners: `--no-foo` on cli now emits `option:no-foo` (previously `option:foo`)
- **Breaking** default value: defining `--no-foo` after defining `--foo` leaves the default value unchanged (previously set it to false)
- allow boolean default value, such as from environment ([#987](https://togithub.com/tj/commander.js/issues/987))
- Increment inspector port for spawned subcommands ([#991](https://togithub.com/tj/commander.js/issues/991))
- e.g. `node --inspect myCommand.js clone`
## Migration Tips
The custom event for a negated option like `--no-foo` is `option:no-foo` (previously `option:foo`).
```js
program
.option('--no-foo')
.on('option:no-foo', () => {
console.log('removing foo');
});
```
When using TypeScript, adding a command does not allow an explicit `undefined` for an unwanted executable description (e.g. for a command with an action handler).
```js
program
.command('action1', undefined, { noHelp: true }) // No longer valid
.command('action2', { noHelp: true }) // Correct
```
### [`v2.20.3`](https://togithub.com/tj/commander.js/releases/v2.20.3)
[Compare Source](https://togithub.com/tj/commander.js/compare/v2.20.1...v2.20.3)
Ran "npm unpublish commander@2.20.2". There is no 2.20.2.
##### Fixed
- Support Node.js 0.10 (Revert [#1059](https://togithub.com/tj/commander.js/issues/1059))
### [`v2.20.1`](https://togithub.com/tj/commander.js/releases/v2.20.1)
[Compare Source](https://togithub.com/tj/commander.js/compare/v2.20.0...v2.20.1)
##### Fixed
- Improve tracking of executable subcommands.
##### Changed
- update development dependencies
Credits:
- issue identified by Checkmarx Application Security Research Team
### [`v2.20.0`](https://togithub.com/tj/commander.js/releases/v2.20.0)
[Compare Source](https://togithub.com/tj/commander.js/compare/v2.19.0...v2.20.0)
- fix: resolve symbolic links completely when hunting for subcommands ([#935](https://togithub.com/tj/commander.js/issues/935))
- Update index.d.ts ([#930](https://togithub.com/tj/commander.js/issues/930))
- Update Readme.md ([#924](https://togithub.com/tj/commander.js/issues/924))
- Remove --save option as it isn't required anymore ([#918](https://togithub.com/tj/commander.js/issues/918))
- Add link to the license file ([#900](https://togithub.com/tj/commander.js/issues/900))
- Added example of receiving args from options ([#858](https://togithub.com/tj/commander.js/issues/858))
- Added missing semicolon ([#882](https://togithub.com/tj/commander.js/issues/882))
- Add extension to .eslintrc ([#876](https://togithub.com/tj/commander.js/issues/876))
### [`v2.19.0`](https://togithub.com/tj/commander.js/releases/v2.19.0)
[Compare Source](https://togithub.com/tj/commander.js/compare/v2.18.0...v2.19.0)
- Removed newline after Options and Commands headers ([#864](https://togithub.com/tj/commander.js/issues/864))
- Bugfix - Error output ([#862](https://togithub.com/tj/commander.js/issues/862))
- Fix to change default value to string ([#856](https://togithub.com/tj/commander.js/issues/856))
### [`v2.18.0`](https://togithub.com/tj/commander.js/releases/v2.18.0)
[Compare Source](https://togithub.com/tj/commander.js/compare/v2.17.1...v2.18.0)
- Standardize help output ([#853](https://togithub.com/tj/commander.js/issues/853))
- chmod 644 travis.yml ([#851](https://togithub.com/tj/commander.js/issues/851))
- add support for execute typescript subcommand via ts-node ([#849](https://togithub.com/tj/commander.js/issues/849))
### [`v2.17.1`](https://togithub.com/tj/commander.js/releases/v2.17.1)
[Compare Source](https://togithub.com/tj/commander.js/compare/v2.17.0...v2.17.1)
- Fix bug in command emit ([#844](https://togithub.com/tj/commander.js/issues/844))
### [`v2.17.0`](https://togithub.com/tj/commander.js/releases/v2.17.0)
[Compare Source](https://togithub.com/tj/commander.js/compare/v2.16.0...v2.17.0)
- fixed newline output after help information ([#833](https://togithub.com/tj/commander.js/issues/833))
- Fix to emit the action even without command ([#778](https://togithub.com/tj/commander.js/issues/778))
- npm update ([#823](https://togithub.com/tj/commander.js/issues/823))
### [`v2.16.0`](https://togithub.com/tj/commander.js/releases/v2.16.0)
[Compare Source](https://togithub.com/tj/commander.js/compare/v2.15.1...v2.16.0)
- Remove Makefile and test/run ([#821](https://togithub.com/tj/commander.js/issues/821))
- Make 'npm test' run on Windows ([#820](https://togithub.com/tj/commander.js/issues/820))
- Add badge to display install size ([#807](https://togithub.com/tj/commander.js/issues/807))
- chore: cache node_modules ([#814](https://togithub.com/tj/commander.js/issues/814))
- chore: remove Node.js 4 (EOL), add Node.js 10 ([#813](https://togithub.com/tj/commander.js/issues/813))
- fixed typo in readme ([#812](https://togithub.com/tj/commander.js/issues/812))
- Fix types ([#804](https://togithub.com/tj/commander.js/issues/804))
- Update eslint to resolve vulnerabilities in lodash ([#799](https://togithub.com/tj/commander.js/issues/799))
- updated readme with custom event listeners. ([#791](https://togithub.com/tj/commander.js/issues/791))
- fix tests ([#794](https://togithub.com/tj/commander.js/issues/794))
### [`v2.15.1`](https://togithub.com/tj/commander.js/releases/v2.15.1)
[Compare Source](https://togithub.com/tj/commander.js/compare/v2.15.0...v2.15.1)
fix [#777](https://togithub.com/tj/commander.js/issues/777)
Released with npm@5.6.0
### [`v2.15.0`](https://togithub.com/tj/commander.js/releases/v2.15.0)
[Compare Source](https://togithub.com/tj/commander.js/compare/v2.14.1...v2.15.0)
- Update downloads badge to point to graph of downloads over time instead of duplicating link to npm
- Arguments description
### [`v2.14.1`](https://togithub.com/tj/commander.js/releases/v2.14.1)
[Compare Source](https://togithub.com/tj/commander.js/compare/v2.14.0...v2.14.1)
- Fix typing of help function
### [`v2.14.0`](https://togithub.com/tj/commander.js/releases/v2.14.0)
[Compare Source](https://togithub.com/tj/commander.js/compare/v2.13.0...v2.14.0)
- only register the option:version event once
- Fixes issue [#727](https://togithub.com/tj/commander.js/issues/727): Passing empty string for option on command is set to undefined
- enable eqeqeq rule
- resolves [#754](https://togithub.com/tj/commander.js/issues/754) add linter configuration to project
- resolves [#560](https://togithub.com/tj/commander.js/issues/560) respect custom name for version option
- document how to override the version flag
- document using options per command
### [`v2.13.0`](https://togithub.com/tj/commander.js/releases/v2.13.0)
[Compare Source](https://togithub.com/tj/commander.js/compare/v2.12.2...v2.13.0)
- Do not print default for --no-
- remove trailing spaces in command help
- Update CI's Node.js to LTS and latest version
- typedefs: Command and Option types added to commander namespace
### [`v2.12.2`](https://togithub.com/tj/commander.js/releases/v2.12.2)
[Compare Source](https://togithub.com/tj/commander.js/compare/v2.12.1...v2.12.2)
- fix: typings are not shipped
### [`v2.12.1`](https://togithub.com/tj/commander.js/releases/v2.12.1)
[Compare Source](https://togithub.com/tj/commander.js/compare/v2.12.0...v2.12.1)
- Move [@types/node](https://togithub.com/types/node) to dev dependency
### [`v2.12.0`](https://togithub.com/tj/commander.js/releases/v2.12.0)
[Compare Source](https://togithub.com/tj/commander.js/compare/v2.11.0...v2.12.0)
- add attributeName() method to Option objects
- Documentation updated for options with --no prefix
- typings: `outputHelp` takes a string as the first parameter
- typings: use overloads
- feat(typings): update to match js api
- Print default value in option help
- Fix translation error
- Fail when using same command and alias ([#491](https://togithub.com/tj/commander.js/issues/491))
- feat(typings): add help callback
- fix bug when description is add after command with options ([#662](https://togithub.com/tj/commander.js/issues/662))
- Format js code
- Rename History.md to CHANGELOG.md ([#668](https://togithub.com/tj/commander.js/issues/668))
- feat(typings): add typings to support TypeScript ([#646](https://togithub.com/tj/commander.js/issues/646))
- use current node
### [`v2.11.0`](https://togithub.com/tj/commander.js/releases/v2.11.0)
[Compare Source](https://togithub.com/tj/commander.js/compare/v2.10.0...v2.11.0)
- Fix help section order and padding ([#652](https://togithub.com/tj/commander.js/issues/652))
- feature: support for signals to subcommands ([#632](https://togithub.com/tj/commander.js/issues/632))
- Fixed [#37](https://togithub.com/tj/commander.js/issues/37), --help should not display first ([#447](https://togithub.com/tj/commander.js/issues/447))
- Fix translation errors. ([#570](https://togithub.com/tj/commander.js/issues/570))
- Add package-lock.json
- Remove engines
- Upgrade package version
- Prefix events to prevent conflicts between commands and options ([#494](https://togithub.com/tj/commander.js/issues/494))
- Removing dependency on graceful-readlink
- Support setting name in #name function and make it chainable
- Add .vscode directory to .gitignore (Visual Studio Code metadata)
- Updated link to ruby commander in readme files
### [`v2.10.0`](https://togithub.com/tj/commander.js/releases/v2.10.0)
[Compare Source](https://togithub.com/tj/commander.js/compare/v2.9.0...v2.10.0)
- Update .travis.yml. drop support for older node.js versions.
- Fix require arguments in README.md
- On SemVer you do not start from 0.0.1
- Add missing semi colon in readme
- Add save param to npm install
- node v6 travis test
- Update Readme_zh-CN.md
- Allow literal '--' to be passed-through as an argument
- Test subcommand alias help
- link build badge to master branch
- Support the alias of Git style sub-command
- added keyword commander for better search result on npm
- Fix Sub-Subcommands
- test node.js stable
- Fixes TypeError when a command has an option called `--description`
- Update README.md to make it beginner friendly and elaborate on the difference between angled and square brackets.
- Add chinese Readme file
Renovate configuration
:date: Schedule: "on the 1st through 7th day of the month" in timezone America/Los_Angeles.
:vertical_traffic_light: Automerge: Disabled by config. Please merge this manually once you are satisfied.
:recycle: Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
:no_bell: Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR contains the following updates:
Release Notes
tj/commander.js
### [`v6.0.0`](https://togithub.com/tj/commander.js/blob/master/CHANGELOG.md#600-2020-07-21) [Compare Source](https://togithub.com/tj/commander.js/compare/v5.1.0...v6.0.0) ##### Added - add support for variadic options ([#1250]) - allow options to be added with just a short flag ([#1256]) - _Breaking_ the option property has same case as flag. e.g. flag `-n` accessed as `opts().n` (previously uppercase) - _Breaking_ throw an error if there might be a clash between option name and a Command property, with advice on how to resolve ([#1275]) ##### Fixed - Options which contain -no- in the middle of the option flag should not be treated as negatable. ([#1301]) ### [`v5.1.0`](https://togithub.com/tj/commander.js/blob/master/CHANGELOG.md#510-2020-04-25) [Compare Source](https://togithub.com/tj/commander.js/compare/v5.0.0...v5.1.0) ##### Added - support for multiple command aliases, the first of which is shown in the auto-generated help ([#531], [#1236]) - configuration support in `addCommand()` for `hidden` and `isDefault` ([#1232]) ##### Fixed - omit masked help flags from the displayed help ([#645], [#1247]) - remove old short help flag when change help flags using `helpOption` ([#1248]) ##### Changed - remove use of `arguments` to improve auto-generated help in editors ([#1235]) - rename `.command()` configuration `noHelp` to `hidden` (but not remove old support) ([#1232]) - improvements to documentation - update dependencies - update tested versions of node - eliminate lint errors in TypeScript ([#1208]) ### [`v5.0.0`](https://togithub.com/tj/commander.js/blob/master/CHANGELOG.md#500-2020-03-14) [Compare Source](https://togithub.com/tj/commander.js/compare/v4.1.1...v5.0.0) ##### Added - support for nested commands with action-handlers ([#1][#764] [#1149]) - `.addCommand()` for adding a separately configured command ([#764][#1149]) - allow a non-executable to be set as the default command ([#742][#1149]) - implicit help command when there are subcommands (previously only if executables) ([#1149]) - customise implicit help command with `.addHelpCommand()` ([#1149]) - display error message for unknown subcommand, by default ([#432][#1088] [#1149]) - display help for missing subcommand, by default ([#1088][#1149]) - combined short options as single argument may include boolean flags and value flag and value (e.g. `-a -b -p 80` can be written as `-abp80`) ([#1145]) - `.parseOption()` includes short flag and long flag expansions ([#1145]) - `.helpInformation()` returns help text as a string, previously a private routine ([#1169]) - `.parse()` implicitly uses `process.argv` if arguments not specified ([#1172]) - optionally specify where `.parse()` arguments "from", if not following node conventions ([#512][#1172]) - suggest help option along with unknown command error ([#1179]) - TypeScript definition for `commands` property of `Command` ([#1184]) - export `program` property ([#1195]) - `createCommand` factory method to simplify subclassing ([#1191]) ##### Fixed - preserve argument order in subcommands ([#508][#962] [#1138]) - do not emit `command:*` for executable subcommands ([#809][#1149]) - action handler called whether or not there are non-option arguments ([#1062][#1149]) - combining option short flag and value in single argument now works for subcommands ([#1145]) - only add implicit help command when it will not conflict with other uses of argument ([#1153][#1149]) - implicit help command works with command aliases ([#948][#1149]) - options are validated whether or not there is an action handler ([#1149]) ##### Changed - _Breaking_ `.args` contains command arguments with just recognised options removed ([#1032][#1138]) - _Breaking_ display error if required argument for command is missing ([#995][#1149]) - tighten TypeScript definition of custom option processing function passed to `.option()` ([#1119]) - _Breaking_ `.allowUnknownOption()` ([#802][#1138]) - unknown options included in arguments passed to command action handler - unknown options included in `.args` - only recognised option short flags and long flags are expanded (e.g. `-ab` or `--foo=bar`) ([#1145]) - _Breaking_ `.parseOptions()` ([#1138]) - `args` in returned result renamed `operands` and does not include anything after first unknown option - `unknown` in returned result has arguments after first unknown option including operands, not just options and values - _Breaking_ `.on('command:*', callback)` and other command events passed (changed) results from `.parseOptions`, i.e. operands and unknown ([#1138]) - refactor Option from prototype to class ([#1133]) - refactor Command from prototype to class ([#1159]) - changes to error handling ([#1165]) - throw for author error, not just display message - preflight for variadic error - add tips to missing subcommand executable - TypeScript fluent return types changed to be more subclass friendly, return `this` rather than `Command` ([#1180]) - `.parseAsync` returns `PromiseRenovate configuration
:date: Schedule: "on the 1st through 7th day of the month" in timezone America/Los_Angeles.
:vertical_traffic_light: Automerge: Disabled by config. Please merge this manually once you are satisfied.
:recycle: Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
:no_bell: Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by WhiteSource Renovate. View repository job log here.