- Last updated: 2024-10-05T12:12:32Z
- Generator: thi.ng/monopub
All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.
Note: Unlisted patch versions only involve non-code or otherwise excluded changes and/or version bumps of transitive dependencies.
2.3.34 (2024-06-21)
- rename various rest args to be more semantically meaningful (8088a56)
- enforce uniform naming convention of internal functions (56992b2)
2.3.31 (2024-04-20)
- update type usage (68dd6a2)
2.3.2 (2023-12-26)
- update word wrap behavior in usage() (60b1580)
2.3.0 (2023-12-18)
- add cliApp() runner (b2248fa)
- update lifecycle hooks, add NO_COLOR support, add docs (4a0ebda)
- add CLIAppConfig pre/post lifecycle hooks
- update UsageOpts.color handling
- add
NO_COLOR
env var support in cliApp() - add doc strings
- update deps
- update cliApp() to support command context extensions (61d9fb8)
- update cliApp() error handling (019e5a1)
- update argv handling in cliApp() (b1ed768)
- add NO_COLOR aware formatters to CommandCtx (0e7ddda)
- update deps
- update cliApp() to use StreamLogger (target: process.stderr) (b249295)
2.2.28 (2023-08-04)
- update
identity
usage in various pkgs (b6db053)
2.2.15 (2022-12-29)
- update "no-browser" pkg handling (0e84f1b)
2.2.0 (2022-08-15)
- add ParseError, update parse() err handling (c854a13)
- update parse() to re-throw any caught error wrapped as ParseError
2.1.6 (2022-04-07)
- replace deprecated .substr() w/ .substring() (0710509)
2.1.0 (2021-11-17)
- Using workspaces for local tools (bf7a404)
Improving the overall build ergonomics
- introduced a tools workspaces
- imported it in all needed packages/examples
- inclusive project root
- testrunner to binary (4ebbbb2) this commit reverts (partly) changes made in: ef346d7a8753590dc9094108a3d861a8dbd5dd2c overall purpose is better testament ergonomics: instead of having to pass NODE_OPTIONS with every invocation having a binary to handle this for us.
2.0.1 (2021-10-13)
- update imports in all pkgs (5fa2b6f)
- add .js suffix for all relative imports
- update imports in all tests/pkgs (effd591)
2.0.0 (2021-10-12)
- major update of ALL pkgs (export maps, ESM only) (0d1d6ea)
- BREAKING CHANGE: discontinue CommonJS & UMD versions
- only ESM modules will be published from now on
- CJS obsolete due to ESM support in recent versions of node:
- i.e. launch NodeJS via:
node --experimental-specifier-resolution=node --experimental-repl-await
- in the node REPL use
await import(...)
instead ofrequire()
- UMD obsolete due to widespread browser support for ESM Also:
- normalize/restructure/reorg all package.json files
- cleanup all build scripts, remove obsolete
- switch from mocha to @thi.ng/testament for all tests
- update all tests in all pkgs (8b582bc)
- update all to use @thi.ng/testament
- update imports (890936b)
1.1.1 (2021-09-03)
- fix up TS4.4 changes (ba616db)
1.1.0 (2021-08-19)
- capitalize usage section headings (eaa0f23)
0.7.1 (2021-07-29)
- omit empty groups from usage() (a66c19a)
0.7.0 (2021-07-01)
- add showGroupNames option (6917111)
0.6.0 (2021-06-08)
- add kvPairsMulti(), update coerceKV() (fd12f80)
- add KVMultiDict type alias
- update tests
0.5.0 (2021-03-28)
- wordwrap usage prefix/suffix, defaults (325b558)
- update/revert default val handling in usage(), don't show null/false
- minor other usage() refactoring
- update doc strings
- add vec() arg type (f05cb2a)
0.4.1 (2021-03-24)
- update wordwrapping in usage() (4af3d41)
0.4.0 (2021-03-22)
- support arbitrary length aliases (1cfdf49)
- update parseKey() to allow any length aliases
- add test
- add arg groups, segment usage output (ebf5197)
- add
ArgSpecBase.group
to classify args - update arg factories to define default groups ("flags" & "main")
- update usage() to output segmented & sorted groups of args
- add
0.3.1 (2021-03-21)
- fix usage() show defaults logic (ae31158)
- show all default values (incl. zero, false), only skip undefined
0.3.0 (2021-03-20)
- update ParseOpts, UsageOpts (6577c80)
- add
ParseOpts.help
to configure special--help
option(s) - add
UsageOpts.prefix/suffix
strings
- add
0.2.0 (2021-01-13)
- add defaultHint opt, update usage() (f8a4146)
- add UsageOpts.showDefaults to display arg default vals
- add ArgSpecBase.defaultHint for default vals for display purposes
- splitup parse() into smaller fns (64be608)
0.1.0 (2021-01-10)
- import as new package (af5d943)
- major general package update (26ec49a)
- use more mapped types to better infer & verify specs for optional args
- add support for comma separated multi-args
- add ParseOpts & UsageOpts
- add/replace coercions
- add arg spec factories
- update parse()
- add comma handling
- auto-usage on error
- kebab -> camelCase names
- update/rewrite usage(), add color support
- add kv args, callbacks, usage opts (c306aba)
- add KVDict type, coerceKV(), kvPairs()
- add optional
fn
arg spec callbacks - add
--help
built-in handling - add ColorTheme, update usage()
- add strict mode kvArgs()/coerceKV(), add docs (b76c4f1)
- update multi arg specs, parse (dbdf913)
- simplify Args conditionals (remove special casing for string(s))
- replace spec.comma => spec.delim
- update ParseResult
- update parse() to stop at first non-arg value
- add/update tests
- add tuple arg type support (a05dde9)