Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Dec 31, 2024

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
commander 12.1.0 -> 13.0.0 age adoption passing confidence

Release Notes

tj/commander.js (commander)

v13.0.0

Compare Source

Added
  • support multiple calls to .parse() with default settings ([#​2299])
  • add .saveStateBeforeParse() and .restoreStateBeforeParse() for use by subclasses ([#​2299])
  • style routines like styleTitle() to add color to help using .configureHelp() or Help subclass ([#​2251])
  • color related support in .configureOutput() for getOutHasColors(), getErrHasColors(), and stripColor() ([#​2251])
  • Help property for minWidthToWrap ([#​2251])
  • Help methods for displayWidth(), boxWrap(), preformatted() et al ([#​2251])
Changed
  • Breaking: excess command-arguments cause an error by default, see migration tips ([#​2223])
  • Breaking: throw during Option construction for unsupported option flags, like multiple characters after single - ([#​2270])
  • Breaking: throw on multiple calls to .parse() if storeOptionsAsProperties: true ([#​2299])
  • TypeScript: include implicit this in parameters for action handler callback ([#​2197])
Deleted
  • Breaking: Help.wrap() refactored into formatItem() and boxWrap() ([#​2251])
Migration Tips

Excess command-arguments

It is now an error for the user to specify more command-arguments than are expected. (allowExcessArguments is now false by default.)

Old code:

program.option('-p, --port <number>', 'port number');
program.action((options) => {
  console.log(program.args);
});

Now shows an error:

$ node example.js a b c
error: too many arguments. Expected 0 arguments but got 3.

You can declare the expected arguments. The help will then be more accurate too. Note that declaring
new arguments will change what is passed to the action handler.

program.option('-p, --port <number>', 'port number');
program.argument('[args...]', 'remote command and arguments'); // expecting zero or more arguments
program.action((args, options) => {
  console.log(args);
});

Or you could suppress the error, useful for minimising changes in legacy code.

program.option('-p, --port', 'port number');
program.allowExcessArguments();
program.action((options) => {
  console.log(program.args);
});

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.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot added dependencies help wanted Extra attention is needed labels Dec 31, 2024
@coderbyheart coderbyheart enabled auto-merge (rebase) January 1, 2025 23:04
coderbyheart added a commit that referenced this pull request Jan 13, 2025
Closes #465
Closes #464
Closes #463
Closes #454
Closes #441
Closes #440
auto-merge was automatically disabled January 13, 2025 15:07

Pull request was closed

auto-merge was automatically disabled January 13, 2025 15:07

Pull request was closed

@renovate renovate bot deleted the renovate/commander-13.x branch January 13, 2025 15:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies help wanted Extra attention is needed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant