All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
<a href="https://www.github.com/yargs/yargs-parser/compare/v18.1.2...v18.1.3">18.1.3</a> (2020-04-16)
Bug Fixes
- setArg: options using camel-case and dot-notation populated twice (#268) (f7e15b9)
<a href="https://www.github.com/yargs/yargs-parser/compare/v18.1.1...v18.1.2">18.1.2</a> (2020-03-26)
Bug Fixes
- array, nargs: support -o=–value and –option=–value format (#262) (41d3f81)
<a href="https://www.github.com/yargs/yargs-parser/compare/v18.1.0...v18.1.1">18.1.1</a> (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)
<a href="https://www.github.com/yargs/yargs-parser/compare/v18.0.0...v18.1.0">18.1.0</a> (2020-03-07)
Features
- introduce single-digit boolean aliases (#255) (9c60265)
<a href="https://www.github.com/yargs/yargs-parser/compare/v17.1.0...v18.0.0">18.0.0</a> (2020-03-02)
⚠ BREAKING CHANGES
- the narg count is now enforced when parsing arrays.
Features
- NaN can now be provided as a value for nargs, indicating "at least" one value is expected for array (#251) (9db4be8)
<a href="https://www.github.com/yargs/yargs-parser/compare/v17.0.1...v17.1.0">17.1.0</a> (2020-03-01)
Features
- introduce greedy-arrays config, for specifying whether arrays consume multiple positionals (#249) (60e880a)
<a href="https://www.github.com/yargs/yargs-parser/compare/v17.0.0...v17.0.1">17.0.1</a> (2020-02-29)
Bug Fixes
<a href="https://www.github.com/yargs/yargs-parser/compare/v16.1.0...v17.0.0">17.0.0</a> (2020-02-10)
⚠ BREAKING CHANGES
- this reverts parsing behavior of booleans to that of yargs@14
- objects used during parsing are now created with a null prototype. There may be some scenarios where this change in behavior leaks externally.
Features
- boolean arguments will not be collected into an implicit array (#236) (34c4e19)
- introduce nargs-eats-options config option (#246) (d50822a)
Bug Fixes
- address bugs with "uknown-options-as-args" (bc023e3)
- array should take precedence over nargs, but enforce nargs (#243) (4cbc188)
- support keys that collide with object prototypes (#234) (1587b6d)
- unknown options terminated with digits now handled by unknown-options-as-args (#238) (d36cdfa)
<a href="https://www.github.com/yargs/yargs-parser/compare/v16.0.0...v16.1.0">16.1.0</a> (2019-11-01)
⚠ BREAKING CHANGES
- populate error if incompatible narg/count or array/count options are used (#191)
Features
- options that have had their default value used are now tracked (#211) (a525234)
- populate error if incompatible narg/count or array/count options are used (#191) (84a401f)
Reverts
- revert 16.0.0 CHANGELOG entry (920320a)
<a href="https://github.com/yargs/yargs-parser/compare/v14.0.0...v15.0.0">15.0.0</a> (2019-10-07)
Features
- rework
collect-unknown-options
into unknown-options-as-args
, providing more comprehensive functionality (ef771ca)
BREAKING CHANGES
- rework
collect-unknown-options
into unknown-options-as-args
, providing more comprehensive functionality
<a href="https://github.com/yargs/yargs-parser/compare/v13.1.1...v14.0.0">14.0.0</a> (2019-09-06)
Bug Fixes
- boolean arrays with default values (#185) (7d42572)
- boolean now behaves the same as other array types (#184) (17ca3bd)
- eatNargs() for 'opt.narg === 0' and boolean typed options (#188) (c5a1db0)
- maybeCoerceNumber now takes precedence over coerce return value (#182) (2f26436)
- take into account aliases when appending arrays from config object (#199) (f8a2d3f)
Features
- add configuration option to "collect-unknown-options" (#181) (7909cc4)
- maybeCoerceNumber() now takes into account arrays (#187) (31c204b)
BREAKING CHANGES
- unless "parse-numbers" is set to "false", arrays of numeric strings are now parsed as numbers, rather than strings.
- we have dropped the broken "defaulted" functionality; we would like to revisit adding this in the future.
- maybeCoerceNumber now takes precedence over coerce return value (#182)
<a href="https://www.github.com/yargs/yargs-parser/compare/v13.1.0...v13.1.1">13.1.1</a> (2019-06-10)
Bug Fixes
- convert values to strings when tokenizing (#167) (57b7883)
- nargs should allow duplicates when duplicate-arguments-array=false (#164) (47ccb0b)
- should populate "_" when given config with "short-option-groups" false (#179) (6055974)
<a href="https://github.com/yargs/yargs-parser/compare/v13.0.0...v13.1.0">13.1.0</a> (2019-05-05)
Features
- add
strip-aliased
and strip-dashed
configuration options. (#172) (a3936aa)
- support boolean which do not consume next argument. (#171) (0ae7fcb)
<a href="https://github.com/yargs/yargs-parser/compare/v12.0.0...v13.0.0">13.0.0</a> (2019-02-02)
Features
- don't coerce number from string with leading '0' or '+' (#158) (18d0fd5)
BREAKING CHANGES
- options with leading '+' or '0' now parse as strings
<a href="https://github.com/yargs/yargs-parser/compare/v11.1.1...v12.0.0">12.0.0</a> (2019-01-29)
Bug Fixes
Features
- default value is now used if no right-hand value provided for numbers/strings (#156) (5a7c46a)
BREAKING CHANGES
- a flag with no right-hand value no longer populates defaulted options with
undefined
.
- quotes at beginning and endings of strings are not removed during parsing.
<a href="https://github.com/yargs/yargs-parser/compare/v11.1.0...v11.1.1">11.1.1</a> (2018-11-19)
Bug Fixes
- ensure empty string is added into argv._ (#140) (79cda98)
Reverts
- make requiresArg work in conjunction with arrays (#136) (f4a3063)
<a href="https://github.com/yargs/yargs-parser/compare/v11.0.0...v11.1.0">11.1.0</a> (2018-11-10)
Bug Fixes
Features
- add halt-at-non-option configuration option (#130) (a849fce)
<a href="https://github.com/yargs/yargs-parser/compare/v10.1.0...v11.0.0">11.0.0</a> (2018-10-06)
Bug Fixes
- flatten-duplicate-arrays:false for more than 2 arrays (#128) (2bc395f)
- hyphenated flags combined with dot notation broke parsing (#131) (dc788da)
- make requiresArg work in conjunction with arrays (#136) (77ae1d4)
Chores
Features
- also add camelCase array options (#125) (08c0117)
- array.type can now be provided, supporting coercion (#132) (4b8cfce)
BREAKING CHANGES
- drops Node 4 support
- the argv object is now populated differently (correctly) when hyphens and dot notation are used in conjunction.
<a href="https://github.com/yargs/yargs-parser/compare/v10.0.0...v10.1.0">10.1.0</a> (2018-06-29)
Features
<a href="https://github.com/yargs/yargs-parser/compare/v9.0.2...v10.0.0">10.0.0</a> (2018-04-04)
Bug Fixes
- do not set boolean flags if not defined in
argv
(#119) (f6e6599)
BREAKING CHANGES
boolean
flags defined without a default
value will now behave like other option type and won't be set in the parsed results when the user doesn't set the corresponding CLI arg.
Previous behavior:
var parse = require('yargs-parser');
parse('--flag', {boolean: ['flag']});
// => { _: [], flag: true }
parse('--no-flag', {boolean: ['flag']});
// => { _: [], flag: false }
parse('', {boolean: ['flag']});
// => { _: [], flag: false }
New behavior:
var parse = require('yargs-parser');
parse('--flag', {boolean: ['flag']});
// => { _: [], flag: true }
parse('--no-flag', {boolean: ['flag']});
// => { _: [], flag: false }
parse('', {boolean: ['flag']});
// => { _: [] } => flag not set similarly to other option type
<a href="https://github.com/yargs/yargs-parser/compare/v9.0.1...v9.0.2">9.0.2</a> (2018-01-20)
Bug Fixes
- nargs was still aggressively consuming too many arguments (9b28aad)
<a href="https://github.com/yargs/yargs-parser/compare/v9.0.0...v9.0.1">9.0.1</a> (2018-01-20)
Bug Fixes
- nargs was consuming too many arguments (4fef206)
<a href="https://github.com/yargs/yargs-parser/compare/v8.1.0...v9.0.0">9.0.0</a> (2018-01-20)
Features
- narg arguments no longer consume flag arguments (#114) (60bb9b3)
BREAKING CHANGES
- arguments of form –foo, -abc, will no longer be consumed by nargs
<a href="https://github.com/yargs/yargs-parser/compare/v8.0.0...v8.1.0">8.1.0</a> (2017-12-20)
Bug Fixes
- allow null config values (#108) (d8b14f9)
- ensure consistent parsing of dot-notation arguments (#102) (c9bd79c)
- implement @antoniom's fix for camel-case expansion (3087e1d)
- only run coercion functions once, despite aliases. (#76) (#103) (507aaef)
- scientific notation circumvented bounds check (#110) (3571f57)
- tokenizer should ignore spaces at the beginning of the argString (#106) (f34ead9)
Features
- make combining arrays a configurable option (#111) (c8bf536)
- merge array from arguments with array from config (#83) (806ddd6)
<a href="https://github.com/yargs/yargs-parser/compare/v7.0.0...v8.0.0">8.0.0</a> (2017-10-05)
Bug Fixes
- Ignore multiple spaces between arguments. (#100) (d137227)
Features
- allow configuration of prefix for boolean negation (#94) (00bde7d)
- reworking how numbers are parsed (#104) (fba00eb)
BREAKING CHANGES
- strings that fail
Number.isSafeInteger()
are no longer coerced into numbers.
<a href="https://github.com/yargs/yargs-parser/compare/v6.0.1...v7.0.0">7.0.0</a> (2017-05-02)
Chores
BREAKING CHANGES
- populate– now defaults to false.
<a href="https://github.com/yargs/yargs-parser/compare/v6.0.0...v6.0.1">6.0.1</a> (2017-05-01)
Bug Fixes
- default '–' to undefined when not provided; this is closer to the array API (#90) (4e739cc)
<a href="https://github.com/yargs/yargs-parser/compare/v4.2.1...v6.0.0">6.0.0</a> (2017-05-01)
Bug Fixes
- environment variables should take precedence over config file (#81) (76cee1f)
- parsing hints should apply for dot notation keys (#86) (3e47d62)
Chores
- upgrade to newest version of camelcase (#87) (f1903aa)
Features
- add – option which allows arguments after the – flag to be returned separated from positional arguments (#84) (2572ca8)
- when parsing stops, we now populate "--" by default (#88) (cd666db)
BREAKING CHANGES
- rather than placing arguments in "_", when parsing is stopped via "--"; we now populate an array called "--" by default.
- camelcase now requires Node 4+.
- environment variables will now override config files (args, env, config-file, config-object)
<a href="https://github.com/yargs/yargs-parser/compare/v4.2.1...v5.0.0">5.0.0</a> (2017-02-18)
Bug Fixes
- environment variables should take precedence over config file (#81) (76cee1f)
BREAKING CHANGES
- environment variables will now override config files (args, env, config-file, config-object)
<a href="https://github.com/yargs/yargs-parser/compare/v4.2.0...v4.2.1">4.2.1</a> (2017-01-02)
Bug Fixes
<a href="https://github.com/yargs/yargs-parser/compare/v4.1.0...v4.2.0">4.2.0</a> (2016-12-01)
Bug Fixes
- inner objects in configs had their keys appended to top-level key when dot-notation was disabled (#72) (0b1b5f9)
Features
- allow multiple arrays to be provided, rather than always combining (#71) (0f0fb2d)
<a href="https://github.com/yargs/yargs-parser/compare/v4.0.2...v4.1.0">4.1.0</a> (2016-11-07)
Features
- apply coercions to default options (#65) (c79052b)
- handle dot notation boolean options (#63) (02c3545)
<a href="https://github.com/yargs/yargs-parser/compare/v4.0.1...v4.0.2">4.0.2</a> (2016-09-30)
Bug Fixes
- whoops, let's make the assign not change the Object key order (29d069a)
<a href="https://github.com/yargs/yargs-parser/compare/v4.0.0...v4.0.1">4.0.1</a> (2016-09-30)
Bug Fixes
<a href="https://github.com/yargs/yargs-parser/compare/v3.2.0...v4.0.0">4.0.0</a> (2016-09-26)
Bug Fixes
- coerce should be applied to the final objects and arrays created (#57) (4ca69da)
BREAKING CHANGES
- coerce is no longer applied to individual arguments in an implicit array.
<a href="https://github.com/yargs/yargs-parser/compare/v3.1.0...v3.2.0">3.2.0</a> (2016-08-13)
Features
- coerce full array instead of each element (#51) (cc4dc56)
<a href="https://github.com/yargs/yargs-parser/compare/v3.0.0...v3.1.0">3.1.0</a> (2016-08-09)
Bug Fixes
- address pkgConf parsing bug outlined in #37 (#45) (be76ee6)
- better parsing of negative values (#44) (2e43692)
- check aliases when guessing defaults for arguments fixes #41 (#43) (f3e4616)
Features
- added coerce option, for providing specialized argument parsing (#42) (7b49cd2)
<a href="https://github.com/yargs/yargs-parser/compare/v2.4.1...v3.0.0">3.0.0</a> (2016-08-07)
Bug Fixes
- parsing issue with numeric character in group of options (#19) (f743236)
- upgraded lodash.assign (5d7fdf4)
BREAKING CHANGES
- subtle change to how values are parsed in a group of single-character arguments.
- first released in 3.1.0, better handling of negative values should be considered a breaking change.
<a href="https://github.com/yargs/yargs-parser/compare/v2.4.0...v2.4.1">2.4.1</a> (2016-07-16)
Bug Fixes
- count: do not increment a default value (#39) (b04a189)
<a href="https://github.com/yargs/yargs-parser/compare/v2.3.0...v2.4.0">2.4.0</a> (2016-04-11)
Features
- environment: Support nested options in environment variables (#26) thanks @elas7 \o/ (020778b)
<a href="https://github.com/yargs/yargs-parser/compare/v2.2.0...v2.3.0">2.3.0</a> (2016-04-09)
Bug Fixes
- boolean: fix for boolean options with non boolean defaults (#20) (2dbe86b), closes [(#20](https://github.com/(/issues/20)
- package: remove tests from tarball (0353c0d)
- parsing: handle calling short option with an empty string as the next value. (a867165)
- boolean flag when next value contains the strings 'true' or 'false'. (69941a6)
- update dependencies; add standard-version bin for next release (#24) (822d9d5)
Features
- configuration: Allow to pass configuration objects to yargs-parser (0780900)
- normalize: allow normalize to work with arrays (e0eaa1a)