Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update npm: Commander to v13 (major) #197

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Dec 30, 2024

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
@commander-js/extra-typings ^12.0.0 -> ^13.0.0 age adoption passing confidence
@commander-js/extra-typings ^12.0.0 -> ^13.0.0 age adoption passing confidence
commander ^12.0.0 -> ^13.0.0 age adoption passing confidence
commander ^12.0.0 -> ^13.0.0 age adoption passing confidence

Release Notes

commander-js/extra-typings (@​commander-js/extra-typings)

v13.0.0

Compare Source

Added
  • strongly type .optsWithGlobals() to include inferred globals ([#​78])
  • weakly type .getOptionValueSourceWithGlobals() to include inferred globals ([#​78])
  • infer narrow types for choices, so no longer need to specify as const ([#​79])
Changed
  • Breaking: Typescript 5.0 or higher is required ([#​79])
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 these updates 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 the dependencies Pull requests that update a dependency file label Dec 30, 2024
Copy link

codecov bot commented Dec 30, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 100.00%. Comparing base (e00aafe) to head (664afd2).

Additional details and impacted files
@@            Coverage Diff            @@
##              main      #197   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files            5         5           
  Lines          143       143           
  Branches        28        28           
=========================================
  Hits           143       143           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@renovate renovate bot force-pushed the renovate/major-npm-commander branch from 70863f3 to 664afd2 Compare December 31, 2024 04:50
@renovate renovate bot changed the title Update dependency commander to v13 Update npm: Commander to v13 (major) Dec 31, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants