Skip to content

9.0.0-0

Pre-release
Pre-release
Compare
Choose a tag to compare
@shadowspawn shadowspawn released this 22 Dec 05:47
· 230 commits to master since this release
253f4ff

Added

  • simpler ECMAScript import (#1589)
  • Option.preset() allows specifying value/arg for option when used without option-argument (especially optional, but also boolean option) (#1652)
  • .executableDir() for custom search for subcommands (#1571)
  • throw with helpful message if pass Option to .option() or .requiredOption() (#1655)

Changed

  • Breaking: Commander 9 requires Node.js v12.20.0 or higher
  • update package-lock.json to lockfile@2 format (#1659)
  • showSuggestionAfterError is now on by default (#1657)
  • Breaking: default value specified for boolean option now always used as default value (see .preset() to match some previous behaviours) (#1652)
  • default value for boolean option only shown in help if true/false (#1652)
  • use command name as prefix for subcommand stand-alone executable name (with fallback to script name for backwards compatibility) (#1571)
  • allow absolute path with executableFile (#1571)
  • removed restriction that nested subcommands must specify executableFile (#1571)

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)

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)