-
* Allow using dot notation for subcommand arguments such as --sub1.field * add tests for dot notation for subcommands * style: pre-commit.ci fixes * add test for short form arguments in dot notation * style: pre-commit.ci fixes * add _pre_parse_callback_ support using dot notation * style: pre-commit.ci fixes * update cmake tests to include 3.24 * change line endings Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
* fix: show newline before footer only if footer is set and not empty * feat: added usage message replacement feature * fix: tests corrected for new help message formatting
-
* Using ADL everywhere for lexical_cast * Fixes in docs * Add a test for old extension mechanism * style: pre-commit.ci fixes * Make gcc happy Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Philip Top <phlptp@gmail.com>
-
* add some warning for GCC output * fix some warnings * style: pre-commit.ci fixes * update ubuntu image used for cmake tests so it doesn't auto transition to 22.04 * try a few more warning flags * install the correct files * style: pre-commit.ci fixes * fix install files * add a few more things to pre-commit * try a fix for codacy * another try at codecov * more coverage tweaks Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
- Add C11_COMPILE cmake option that creates a static lib instead of header-only - Add C11_INLINE macro that depends on C11_COMPILE - Split App.hpp into App.hpp and impl/App_inl.hpp - Add App.cpp that compiles App_inl.hpp into an object file - CMake modifications to handle impl headers differently for sinlge-header, headers-only, and compiled versions
-
* chore: update clang-tidy Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com> * refactor: address clang-tidy * fix: C++11 support Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com> * chore: two more clang-tidy fixes Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com> * fix: get_inject_separator should be bool * refactor: addressing review feedback Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com> Co-authored-by: Philip Top <phlptp@gmail.com> * Apply suggestions from code review * Update include/CLI/Config.hpp * Update include/CLI/Config.hpp * Update include/CLI/Config.hpp * Update include/CLI/Config.hpp Co-authored-by: Philip Top <phlptp@gmail.com>
-
https://linux.die.net/man/3/optarg
-
* fix the issue where subcommand callbacks would be triggered multiple times if specified as configurable. * style: pre-commit.ci fixes Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
* add a counting flag to address and issue with optional<bool> and make the flags more consistent * move the add_flag to a single operation and add a Sum multi option policy * style: pre-commit.ci fixes * remove sum_flag_vector overloads * style: pre-commit.ci fixes * add limits include * style: pre-commit.ci fixes * fix some other warnings * update docs describing the multi_option_policy * Apply suggestions from code review Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>
-
* allow the trigger on parse modifier to work with positional arguments as well * style: pre-commit.ci fixes Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
* add tests which suppose to pass * Update ConfigFileTest.cpp * Update ConfigFileTest.cpp * style: pre-commit.ci fixes * add the possibility for an empty vector result if allowed. * style: pre-commit.ci fixes * add empty vector command line tests * update book and readme * add no default test Co-authored-by: puchneiner <90352207+puchneiner@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
* add an option to validate optional arguments like in a vector. This can resolve some issues with separating positionals from vector arguments * style: pre-commit.ci fixes * add some updates to the book * style: pre-commit.ci fixes * fix some precommit issues Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
* fix: avoid a warning about useless move * style: pre-commit.ci fixes * Update include/CLI/App.hpp Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
* add a few tests related to github issues * change how the default is displayed in the help message prev was =XXXX, this was confusing in some cases particularly with flags or with multiple option names. Now is [default=XXXX] which makes it clearer what the value represents. * Try to fix RTTI issue * style: pre-commit.ci fixes * Fix subcommand callbacks being called multiple times if in an option group * style: pre-commit.ci fixes * remove extra group call * change [default=XXXXD] to just [XXXXX] for the default specification * update changelog Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
* Fix a potential stack overflow error if nameless subcommands have fallthough * style: pre-commit.ci fixes Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
* chore: use PyPI clang-format package, pinned * style: pre-commit.ci fixes * ci: drop unneeded job Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
* Add some missing modifiers on the options to the docs and clarify some of them. * style: pre-commit.ci fixes * add a more clear force callback and callback on parse modifier for options. * update the book with new modifiers * update documentation and add tests * style: pre-commit.ci fixes * more updates to the readme * update formatting * rework the trigger_on_parse to better support more complex option types * fix formatting errors * Update include/CLI/Option.hpp Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com> Co-authored-by: Henry Schreiner <henry.fredrick.schreiner@cern.ch>
-
* add some capabilities to the config parser and a stream parser * style: pre-commit.ci fixes * add additional tests for the config parser * additional tests of config sections and indexing * style: pre-commit.ci fixes * add initialization for member variables * warning and error fixes * add test for `parse_from_stream` Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
* add a test for std::map * add some test of the relaxed naming and other checks * add validator for aliases, group names and option groups * add extra tests and update readme * style: pre-commit.ci fixes * update the book chapters * fix codacy issue * Apply suggestions from code review Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>
-
* docs: fix some Codacity recommendations * chore: update copyright year * style: more codacity fixes * style: fix issues reported by Codacity
-
* Fix excessive call to subcommand's final_callback When parse_complete_callback_ is set there is an extra call to run_callback() inside the App::_parse(std::vector<std::string>&) method. This extra call also excessively calls a final_callback_ (when it is also set) for the command and (since it is recursive) for it's subcommands. This commit adds extra boolean parameter for the run_callback() method allowing to explicitly suppress calling to final_callback_. The value of this parameter is also propagated to recursive calls to run_callback(). Fixes #572 * fix: main app should run final_callback, add tests Co-authored-by: Henry Schreiner <henryschreineriii@gmail.com>
-
add an optional help message string to the version_add flag if desired to override
-
* refactor!: drop sets * ci: fix clang 10 build
-
…LE' to remove conflicts with cmake default definitions (#563)
-
* refactor: new version of MakeSingleFiles * fix: use CMake and set version
-
Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>
-
Use a const reference to avoid unnecessary copies. Also constify the argument to _parse_config.