All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
17.7.2 (2023-04-27)
17.7.1 (2023-02-21)
17.7.0 (2023-02-13)
- add method to hide option extras (#2156) (2c144c4)
- convert line break to whitespace for the description of the option (#2271) (4cb41dc)
17.6.2 (2022-11-03)
- deps: update dependency yargs-parser to v21.1.1 (#2231) (75b4d52)
- lang: typo in Finnish unknown argument singular form (#2222) (a6dfd0a)
17.6.1 (2022-11-02)
17.6.0 (2022-10-01)
- lang: Czech locale (#2220) (5895cf1)
- usage: add YARGS_DISABLE_WRAP env variable to disable wrap (#2210) (b680ace)
- deno: use 'globalThis' instead of 'window' (#2186) (#2215) (561fc7a)
- deps: cliui with forced strip-ansi update (#2241) (38e8df1)
- dont clobber description for multiple option calls (#2171) (f91d9b3)
- typescript: address warning with objectKeys (394f5f8)
17.5.1 (2022-05-16)
- add missing entries to published files (#2185) (5685382)
- address bug when strict and async middleware used together (#2164) (cbc2eb7)
- completion: correct zsh installation instructions (22e9af2)
- handle multiple node_modules folders determining mainFilename for ESM (#2123) (e0823dd)
- lang: add missing terms to Russian translation (#2181) (1c331f2)
- prevent infinite loop with empty locale (#2179) (b672e70)
- veriadic arguments override array provided in config (the same as multiple dash arguments). (4dac5b8)
17.5.0 (2022-05-11)
- completion: support for default flags (db35423)
- import yargs/yargs in esm projects (#2151) (95aed1c)
17.4.1 (2022-04-09)
- coerce pollutes argv (#2161) (2d1136d)
- completion: don't show positional args choices with option choices (#2148) (b58b5bc)
- hide hidden options from completion (#2143) (e086dfa), closes #2142
- show message when showHelpOnFail is chained globally (#2154) (ad9fcac)
17.4.0 (2022-03-19)
- completion: choices will now work for all possible aliases of an option and not just the default long option (30edd50)
- completion: positional arguments completion (#2090) (00e4ebb)
- completion: changed the check for option arguments to match options that begin with '-', instead of '--', to include short options (30edd50)
- completion: fix for completions that contain non-leading hyphens (30edd50)
- failed command usage string is missing arg descriptions and optional args (#2105) (d6e342d)
- wrap unknown args in quotes (#2092) (6a29778)
17.3.1 (2021-12-23)
17.3.0 (2021-11-30)
- fallback to default bash completion (74c0ba5)
- avoid legacy accessors (#2013) (adb0d11)
- deps: update dependency yargs-parser to v21 (#2063) (76c1951)
- don't fail if "fileURLToPath(import.meta.url)" throws (3a44796)
- re-add options to check callback (#2079) (e75319d)
17.2.1 (2021-09-25)
17.2.0 (2021-09-23)
- autocomplete choices for options (#2018) (01b2c6a)
- locales: Added Uzbek translation (#2024) (ee047b9)
- boolean option should work with strict (#1996) (e9379e2)
- cast error types as TypeScript 4.4 infers them as unknown instead of any (#2016) (01b2c6a)
- conflicts and strip-dashed (#1998) (59a86fb)
- emit warning on version name collision (#1986) (d0e8292)
- help command spacing when scriptName is empty (#1994) (d33e997)
17.1.1 (2021-08-13)
17.1.0 (2021-08-04)
- coerce middleware should be applied once (#1978) (14bd6be)
- implies should not fail when implied key's value is 0, false or empty string (#1985) (8010472)
- positionals should not overwrite options (#1992) (9d84309)
- strict should fail unknown arguments (#1977) (c804f0d)
- wrap(null) no longer causes strange indentation behavior (#1988) (e1871aa)
17.0.1 (2021-05-03)
17.0.0 (2021-05-02)
- node: drop Node 10 (#1919)
- implicitly private methods are now actually private
- deprecated reset() method is now private (call yargs() instead).
- yargs-factory: refactor yargs-factory to use class (#1895)
- .positional() now allowed at root level of yargs.
- coerce: coerce is now applied before validation.
- async: yargs now returns a promise if async or check are asynchronous.
- middleware: global middleware now applied when no command is configured.
- #1823 contains the following breaking API changes:
- now returns a promise if handler is async.
- onFinishCommand removed, in favor of being able to await promise.
- getCompletion now invokes callback with err and `completions, returns promise of completions.
- add commands alias (similar to options function) (#1850) (00b74ad)
- add parseSync/parseAsync method (#1898) (6130ad8)
- add support for
showVersion
, similar toshowHelp
(#1831) (1a1e2d5) - adds support for async builder (#1888) (ade29b8), closes #1042
- allow calling standard completion function from custom one (#1855) (31765cb)
- allow default completion to be referenced and modified, in custom completion (#1878) (01619f6)
- async: add support for async check and coerce (#1872) (8b95f57)
- improve support for async/await (#1823) (169b815)
- locale: add Ukrainian locale (#1893) (c872dfc)
- middleware: async middleware can now be used before validation. (e0f9363)
- middleware: global middleware now applied when no command is configured. (e0f9363)
- node: drop Node 10 (#1919) (5edeb9e)
- always cache help message when running commands (#1865) (d57ca77), closes #1853
- async: don't call parse callback until async ops complete (#1896) (a93f5ff), closes #1888
- builder: apply default builder for showHelp/getHelp (#1913) (395bb67), closes #1912
- builder: nested builder is now awaited (#1925) (b5accd6)
- coerce: options using coerce now displayed in help (#1911) (d2128cc), closes #1909
- completion script name clashing on bash (#1903) (8f62d9a)
- deno: use actual names for keys instead of inferring (#1891) (b96ef01)
- exclude positionals from default completion (#1881) (0175677)
- #1841 (comment) (b96ef01)
- showHelp() and .getHelp() now return same output for commands as --help (#1826) (36abf26)
- zsh completion is now autoloadable (#1856) (d731f9f)
- coerce: coerce is now applied before validation. (8b95f57)
- deprecated reset() method is now private (call yargs() instead). (376f892)
- implicitly private methods are now actually private (376f892)
- yargs-factory: refactor yargs-factory to use class (#1895) (376f892)
16.2.0 (2020-12-05)
- command() now accepts an array of modules (f415388)
16.1.1 (2020-11-15)
- expose helpers for legacy versions of Node.js (#1801) (107deaa)
- deno: get yargs working on deno@1.5.x (#1799) (cb01c98)
16.1.0 (2020-10-15)
- deno: update types for deno ^1.4.0 (#1772) (0801752)
- exports: node 13.0-13.6 require a string fallback (#1776) (b45c43a)
- modules: module path was incorrect (#1759) (95a4a0a)
- positional: positional strings no longer drop decimals (#1761) (e1a300f)
- make positionals in -- count towards validation (#1752) (eb2b29d)
16.0.3 (2020-09-10)
16.0.2 (2020-09-09)
16.0.1 (2020-09-09)
16.0.0 (2020-09-09)
- tweaks to ESM/Deno API surface: now exports yargs function by default; getProcessArgvWithoutBin becomes hideBin; types now exported for Deno.
- find-up replaced with escalade; export map added (limits importable files in Node >= 12); yarser-parser@19.x.x (new decamelize/camelcase implementation).
- usage: single character aliases are now shown first in help output
- rebase helper is no longer provided on yargs instance.
- drop support for EOL Node 8 (#1686)
- adds strictOptions() (#1738) (b215fba)
- helpers: rebase, Parser, applyExtends now blessed helpers (#1733) (c7debe8)
- adds support for ESM and Deno (#1708) (ac6d5d1)
- drop support for EOL Node 8 (#1686) (863937f)
- i18n for ESM and Deno (#1735) (c71783a)
- tweaks to API surface based on user feedback (#1726) (4151fee)
- usage: single char aliases first in help (#1574) (a552990)