Skip to content

Releases: c-blake/cligen

Default-default-value controls, $usehdr & ClCfg.(wrap(Doc|Table)|subRowSep)

08 Nov 18:06
e274362
Compare
Choose a tag to compare

RELEASE_NOTES.md has details as usual, but controls for how string & bool default values are rendered in help messages have been added to ClCfg for CLauthor default-setting with CLuser override in config files.. basically minStrQuoting, trueDefaultStr, & falseDefaultStr. These were, of course, always alterable via defining custom argHelp, but this tunability shouldn't impact non-users-of it. Also added $usehdr for the main usage template, ClCfg.wrap(Doc|Table) and abstract the old newline-only separator into ClCfg.subRowSep and fix an old bug related to ignoring the CLuser use|usage template.

In short, basically several new fine-grained format controls.

Very minimal change to config file finding

22 Oct 16:16
f50f887
Compare
Choose a tag to compare

See RELEASE_NOTES.md and git log -p. Really should be just an internal simplification, but I wanted to make this its own release just in case.

Very minor new feature for dispatchMulti

27 Sep 18:23
54f1da5
Compare
Choose a tag to compare

Add ability for both multi-cmd -h & multi-cmd h to interpolate in doc from the X in ["multi", doc=X] fragment. This helps to explain global options, available from the recent Vars feature (and also to describe the overall program).

Also make test.sh/GNUmakefile more environment-portable by turning off --styleCheck

Better fix for `cligen/statx` & style fix

11 Sep 19:48
85daafd
Compare
Choose a tag to compare

Those two things are about it.

Fix a few bugs/compatibility issues

06 Sep 12:06
32902f6
Compare
Choose a tag to compare
  • Fix generic instantiations of doArgParse (#233) on newer Nim compilers courtesy of @metagn

  • Make misc lib code compile under --hint[Name]=on --styleCheck=usages --styleCheck=error

  • Vaguely robust (if information dropping) solution to Alhadis/OSC8-Adoption#13 (comment)

Make things easier for system package managers

07 Aug 12:35
0e7b3b3
Compare
Choose a tag to compare

By including a very simple make/gmake install with a re-targetable destdir.

Nim-devel is moving to better `hash(openArray[byte])` ..

23 Jun 17:27
8170dcc
Compare
Choose a tag to compare

.. and a very slow (several to order of magnitude slower even on short strings) hashData (OG string hasher, actually).

So, it seems important enough to warrant punching a release changing that default in cligen/mslice.hash(MSlice) which is the only change of this release.

Very minor bugfix release

09 Apr 11:00
f9c8b96
Compare
Choose a tag to compare

To fix two undesired output format cligen/strUt.ecvt bugs (and make that test suite not super slow by default).

Extend PL<->CLI to include var binding / dispatchMulti global options

22 Feb 13:05
4193f80
Compare
Choose a tag to compare

The main new feature is binding an outer scope variable to a CLI option which creates a slight backward incompatibility (a new argument after other ident string args positional, suppress, implicitDefault, not at the very end of the list). RELEASE_NOTES.md, test/Vars.nim, & test/FullyAutoMulti.nim go into more detail, but this can be used for a several-times requested feature of global options in dispatchMulti commands. The new in-the-middle argument should only impact code that fully wraps dispatch/dispatchGen which may be none outside cligen.nim itself as anyone else is likely to use named parameters/keyword args for a 20-parameter call.

This release also fixes a bug and stray debug print in -d:cgCfgToml mode which alters the config file syntax of the [color] section. That also constitutes a minor mode-specific backward incompatibility. Together the two "maybe kinda breaking" induce a minor version bump.

This version also fixes several bugs:

  • rare rounding bugs in fmtUncertain*
  • cligen/dents bug related to lstats
    and adds a few small features:
  • mslice.initSep grows an ability to not backslash-escape TAB, newline, and NUL
  • Tiny MacroCallX API to make non-allocating tmpl renderers easy
  • Add a low cost Nim Slice/HSlice -> MSlice converter so someMs[a..<b] works

Very small changes..mostly make CI green again..

16 Jan 17:09
c54e2f3
Compare
Choose a tag to compare

..and suppress a warning and also add a little mslice.within API call.