Changelog

All notable changes to this project will be documented in this file. See standard-version for commit guidelines.

15.4.0 (2020-06-30)

Features

Bug Fixes

  • docs: describe usage of .check() in more detail (932cd11)
  • i18n: Japanese translation phrasing (#1619) (0894175)
  • strict mode: report default command unknown arguments (#1626) (69f29a9)
  • usage: translate ‘options’ group only when displaying help (#1600) (e60b39b)

Reverts

  • Revert “chore(deps): update dependency eslint to v7 (#1656)” (#1673) (34949f8), closes #1656 #1673

15.3.1 (2020-03-16)

Bug Fixes

  • __proto__ will now be replaced with ___proto___ in parse (#258), patching a potential prototype pollution vulnerability. This was reported by the Snyk Security Research Team. (63810ca)

15.3.0 (2020-03-08)

Features

  • yargs-parser: introduce single-digit boolean aliases (#1576) (3af7f04)
  • add usage for single-digit boolean aliases (#1580) (6014e39)

Bug Fixes

  • address ambiguity between nargs of 1 and requiresArg (#1572) (a5edc32)

15.2.0 (2020-03-01)

⚠ BREAKING CHANGES

  • deps: yargs-parser@17.0.0 no longer implicitly creates arrays out of boolean arguments when duplicates are provided

Features

Bug Fixes

  • help always displayed for the first command parsed having an async handler (#1535) (d585b30)
  • deps: fix enumeration for normalized path arguments (#1567) (0b5b1b0)
  • locales: only translate default option group name (acc16de)
  • locales: remove extra space in French for ‘default’ (#1564) (ecfc2c4)
  • translations: add French translation for unknown command (#1563) (18b0b75)
  • translations: fix pluralization in error messages. (#1557) (94fa38c)
  • yargs: correct support of bundled electron apps (#1554) (a0b61ac)

15.1.0 (2020-01-02)

Features

  • lang: add Finnish localization (language code fi) (222c8fe)
  • complete short options with a single dash (#1507) (99011ab)
  • onFinishCommand handler (#1473) (fe380cd)

Bug Fixes

  • getCompletion() was not working for options (#1495) (463feb2)
  • misspelling of package.json engines field (0891d0e)
  • populate positionals when unknown-options-as-args is set (#1508) (bb0f2eb), closes #1444
  • show 2 dashes on help for single digit option key or alias (#1493) (63b3dd3)
  • docs: use recommended cjs import syntax for ts examples (#1513) (f9a18bf)

15.0.2 (2019-11-19)

Bug Fixes

  • temporary fix for libraries that call Object.freeze() (#1483) (99c2dc8)

15.0.1 (2019-11-16)

Bug Fixes

  • deps: cliui, find-up, and string-width, all drop Node 6 support (#1479) (6a9ebe2)

15.0.0 (2019-11-10)

⚠ BREAKING CHANGES

  • deps: yargs-parser now throws on invalid combinations of config (#1470)
  • yargs-parser@16.0.0 drops support for Node 6
  • drop Node 6 support (#1461)
  • remove package.json-based parserConfiguration (#1460)

Features

  • deps: yargs-parser now throws on invalid combinations of config (#1470) (c10c38c)
  • expose Parser from require('yargs/yargs') (#1477) (1840ba2)

Bug Fixes

  • docs: TypeScript import to prevent a future major release warning (#1441) (b1b156a)
  • stop-parse was not being respected by commands (#1459) (12c82e6)
  • update to yargs-parser with fix for array default values (#1463) (ebee59d)
  • docs: update boolean description and examples in docs (#1474) (afd5b48)

Miscellaneous Chores

Code Refactoring

  • remove package.json-based parserConfiguration (#1460) (0d3642b)

14.2.0 (2019-10-07)

Bug Fixes

Features

  • deps: introduce yargs-parser with support for unknown-options-as-args (#1440) (4d21520)

14.1.0 (2019-09-06)

Bug Fixes

  • docs: fix incorrect parserConfiguration documentation (2a99124)
  • detect zsh when zsh isnt run as a login prompt (#1395) (8792d13)
  • populate correct value on yargs.parsed and stop warning on access (#1412) (bb0eb52)
  • showCompletionScript was logging script twice (#1388) (07c8537)
  • strict() should not ignore hyphenated arguments (#1414) (b774b5e)
  • docs: formalize existing callback argument to showHelp (#1386) (d217764)

Features

  • make it possible to merge configurations when extending other config. (#1411) (5d7ad98)

14.0.0 (2019-07-30)

⚠ BREAKING CHANGES

  • we now only officially support yargs.$0 parameter and discourage direct access to yargs.parsed
  • previously to this fix methods like yargs.getOptions() contained the state of the last command to execute.
  • do not allow additional positionals in strict mode

Bug Fixes

  • calling parse multiple times now appropriately maintains state (#1137) (#1369) (026b151)
  • prefer user supplied script name in usage (#1383) (28c74b9)
  • deps: use decamelize from npm instead of vendored copy (#1377) (015eeb9)
  • examples: fix usage-options.js to reflect current API (#1375) (6e5b76b)
  • do not allow additional positionals in strict mode (35d777c)
  • properties accessed on singleton now reflect current state of instance (#1366) (409d35b)
  • tolerate null prototype for config objects with extends (#1376) (3d26d11), closes #1372
  • yargs.parsed now populated before returning, when yargs.parse() called with no args (#1382) (e3981fd), closes #1382

Features

  • adds support for multiple epilog messages (#1384) (07a5554)
  • allow completionCommand to be set via showCompletionScript (#1385) (5562853)

13.3.0 (2019-06-10)

Bug Fixes

  • deps: yargs-parser update addressing several parsing bugs (#1357) (e230d5b)

Features

  • i18n: swap out os-locale dependency for simple inline implementation (#1356) (4dfa19b)
  • support defaultDescription for positional arguments (812048c)

13.2.4 (2019-05-13)

Bug Fixes

  • i18n: rename unclear ‘implication failed’ to ‘missing dependent arguments’ (#1317) (bf46813)

13.2.3 (2019-05-05)

Bug Fixes

  • deps: upgrade cliui for compatibility with latest chalk. (#1330) (b20db65)
  • address issues with dutch translation (#1316) (0295132)

Tests

13.2.2 (2019-03-06)

13.2.1 (2019-02-18)

Bug Fixes

  • add zsh script to files array (3180224)
  • support options/sub-commands in zsh completion (0a96394)

13.2.0 (2019-02-15)

Features

13.1.0 (2019-02-12)

Features

  • add applyBeforeValidation, for applying sync middleware before validation (5be206a)

13.0.0 (2019-02-02)

Bug Fixes

  • deps: Update os-locale to avoid security vulnerability (#1270) (27bf739)
  • validation: Use the error as a message when none exists otherwise (#1268) (0510fe6)
  • better bash path completion (#1272) (da75ea2)
  • middleware added multiple times due to reference bug (#1282) (64af518)

Chores

  • drop Node 6 from testing matrix (#1287) (ef16792)
    • opting to not drop Node 6 support until April, see.
  • update dependencies (#1284) (f25de4f)

Features

  • Add .parserConfiguration() method, deprecating package.json config (#1262) (3c6869a)
  • adds config option for sorting command output (#1256) (6916ce9)
  • options/positionals with leading ‘+’ and ‘0’ no longer parse as numbers (#1286) (e9dc3aa)
  • support promises in middleware (f3a4e4f)

BREAKING CHANGES

  • options with leading ‘+’ or ‘0’ now parse as strings
  • dropping Node 6 which hits end of life in April 2019
  • see yargs-parser@12.0.0 CHANGELOG
  • we now warn if the yargs stanza package.json is used.

12.0.5 (2018-11-19)

Bug Fixes

  • allows camel-case, variadic arguments, and strict mode to be combined (#1247) (eacc035)

12.0.4 (2018-11-10)

Bug Fixes

  • don't load config when processing positionals (5d0dc92)

12.0.3 (2018-10-06)

Bug Fixes

  • $0 contains first arg in bundled electron apps (#1206) (567820b)
  • accept single function for middleware (66fd6f7), closes #1214 #1214
  • hide hidden options from help output even if they are in a group (#1221) (da54028)
  • improve Norwegian Bokmål translations (#1208) (a458fa4)
  • improve Norwegian Nynorsk translations (#1207) (d422eb5)

12.0.2 (2018-09-04)

Bug Fixes

  • middleware should work regardless of when method is called (664b265), closes #1178
  • translation not working when using __ with a single parameter (#1183) (f449aea)
  • upgrade os-locale to version that addresses license issue (#1195) (efc0970)

12.0.1 (2018-06-29)

12.0.0 (2018-06-26)

Bug Fixes

  • .argv and .parse() now invoke identical code path (#1126) (f13ebf4)
  • remove the trailing white spaces from the help output (#1090) (3f0746c)
  • completion: Avoid default command and recommendations during completion (#1123) (036e7c5)

Chores

  • test Node.js 6, 8 and 10 (#1160) (84f9d2b)
  • upgrade to version of yargs-parser that does not populate value for unset boolean (#1104) (d4705f4)

Features

BREAKING CHANGES

  • Options absent from argv (not set via CLI argument) are now absent from the parsed result object rather than being set with undefined
  • drop Node 4 from testing matrix, such that we'll gradually start drifting away from supporting Node 4.
  • yargs-parser does not populate ‘false’ when boolean flag is not passed
  • tests that assert against help output will need to be updated

11.1.0 (2018-03-04)

Bug Fixes

  • choose correct config directory when require.main does not exist (#1056) (a04678c)

Features

  • allow hidden options to be displayed with --show-hidden (#1061) (ea862ae)
  • extend *.rc files in addition to json (#1080) (11691a6)

11.0.0 (2018-01-22)

Bug Fixes

  • Set implicit nargs=1 when type=number requiresArg=true (#1050) (2b56812)

Features

  • requiresArg is now simply an alias for nargs(1) (#1054) (a3ddacc)

BREAKING CHANGES

  • requiresArg now has significantly different error output, matching nargs.

Historical Versions