-
* 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>
-
* 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
-
* refactor: new version of MakeSingleFiles * fix: use CMake and set version
-
* Add a dedicated version option to CLI11 to facilitate use of version flags, similar to help flags * add some test for the version flag * update errors and formatting * clear up gcc 4.8 warnings * add a few more tests * fix compiler error * fix a few comments, and change default version flag to only use "--version" * remove `version` calls and tests * formatting and add `std::string version()` back in.
-
* Update options.md book chapter and the readme to better reflect current usage and the modifications to the add_options templates. add support in add_option for wrapper types, such as std::optional, boost::optional or other types with a value_type trait. Add support for generalized containers beyond vector, add support for nested tuples and vectors, and complex numbers directly in add_option. This includes several new type traits and object categories. Upgrade the google test version to better support templated tests. add support for vector argument separator `%%` * update formatting to match recent changes * Apply suggestions from code review Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>
-
* Add whitespace/comments check * Adapt spacing in clang-format * Fix cpplint whitespace/comments issues * Grammar * Do not use clang-format for comment spacing * Fix with clang-format pre-commit hook
-
* Add readability/braces check * Fix cpplint readability/braces issues
-
* Add copyright check * Remove old license message * Implement suggestions from code review
-
* Make CI fail with readability-container-size-empty flag * Make CI fail with cppcoreguidelines-owning-memory flag * Add all google checks, exclude specific ones * Apply clang-tidy fixes * Make timer constructors explicit * Add check for unscoped namespaces * Replace unscoped namespace by using-declaration * Replace unscoped namespace by using-declaration
-
Refactor some of the configuration file handling code. Make it easier to get the actual file that was processed, and allow extras in the config file to be ignored (default now), captured or errored. fix std::error reference and formatting add test for required but no default and fix a shadow warning on 'required' from gcc 4.8 Test correctness of config write-read loop fix config generation for flag definitions make the config output conform with toml continue work on the config file interpretation and construction get all the ini tests working again with the cleaned up features. update formatting rename IniTest to ConfigFileTest to better reflect actual tests and add a few more test of the configTOML disambiguate enable/disable by default to an enumeration, and to make room for a configurable option to allow subcommands to be triggered by a config file. add a ConfigBase class to generally reflect a broader class of configuration files formats of similar nature to INI files add configurable to app and allow it to trigger subcommands add test of ini formatting add section support to the config files so sections can be opened and closed and the callbacks triggered as appropriate. add handling of option groups to the config file output add subcommand and option group configuration to config file output subsubcom test on config files fix a few sign comparison warnings and formatting start working on the book edits for configuration and a few more tests more test to check for subcommand close in config files more tests for coverage generalize section opening and closing add more tests and some fixes for different configurations yet more tests of different situations related to configuration files test more paths for configuration file sections remove some unused code and fix some codacy warnings update readme with updates from configuration files more book edits and README formatting remove extra space Apply suggestions from code review Co-Authored-By: Henry Schreiner <HenrySchreinerIII@gmail.com> fix some comments and documentation fix spacing Rename size_t -> std::size_t Fix compiler warnings with -Wsign-conversion Fix new warnings with -Wsign-conversion in PR
-
* add expanded type_size specification * add some more checks for type_size_max * continued work on getting type sizes more flexible * make some more tweaks to option to split up validate and reduce sections * git rid of exceptions on the type_size functions exceptions, allow any number to be entered for the min and max and don't make a distinction between flags and other types. * add expected count * add the allow extra args flag in an option * start working in allow_extra_args * write some stuff in the book, and continue working on the failing test cases * fix a few more of the helpers tests * a few more test cases running * all tests pass, fixing calls in ini files * get vector<pair> working and all tests passing * change callback to use reference to remove allocation and copy operation * add support and test for vector<vector<X>> * change Validators_ to validators_ for consistency * fix linux warnings and errors by reording some templates and adding some typename keywords * add support for std::vector<X> as the cross conversion type so optional<std::vector<X>> is supported using the full template of add_option. * a few more test cases to take care of some coverage gaps * add missing parenthesis * add some more tests for coverage gaps * add test for flag like option * add transform test for `as<X>` function and make it pass through the defaults * add a few more tests and have vector default string interpreted correctly. * add test for defaulted integer, and route default string for defaulted value which would otherwise be empty * some code cleanup and comments and few more test coverage gap tests * add more tests and fix a few bugs on the type size and different code paths * remove path in results by fixing the clear of options so they go back to parsing state. * get coverage back to 100% * clang_tidy, and codacy fixes * reorder the lexical_conversion definitions * update some formatting * update whitespace on book chapter
-
* add some tests with default capture on the two parameter template and some notes about it in the README.md remove the test from visual studio 2015 vs2015 doesn't seem to properly deal with is_assignable in the cases we care about so make a standalone version that is more direct in what we are doing add version to appveyor and add some notes to the readme fix a few test cases to make sure code is covered and test a few other paths remove unneeded enum streaming operator add some diagnostic escapes around trait code to eliminate gcc Wnarrowing warnings work specification of the template operations remove optional add some templates for options conversions add the two parameter template for add_option * Fix some comments from Code review and add more description * fix case when string_view doesn't work to append to a string. * This PR also addressed #300 * modify lexical_cast to take const std::string &, instead of by value to allow string_view in a few cases
-
* Fixing some warnings * Make gtest a system library * Fixing format * Adding better method for adding warnings * Nicer Windows deprecated test * JSON update and drop testing timer * Warnings as errors everywhere
-
* [WIP] Initial implementation * Add mapping validation * More documentation * Add support for floats in checked_multiply and add tests * Place SuffixedNumber declaration correctly * Add tests * Refactor SuffixedNumber * Add as size value * Update README * SFINAE for checked_multiply() * Mark ctors as explicit * Small fixes * Clang format * Clang format * Adding GCC 4.7 support * Rename SuffixedNumber to AsNumberWithUnit
-
…ome cleanup in the README.md Apply suggestions from code review Co-Authored-By: phlptp <top1@llnl.gov> allow callbacks for option_groups, and allow some other characters as flags
-
* add transform and checkedTransform tests add Transformer and CheckedTransformer validators * Eliminate the Validator description string, some code cleanup add tests Make Validators a full Object and remove friend, move to descriptions instead of overriding type name. update validators to actually merge the type strings and use all validators in the type outputs rework join so it works without the start variable, allow some forwarding references in the validator types, some tests for non-copyable maps, and transforms merge the search function and enable use of member search function, make the pair adapters forwarding instead of copying * add a few more tests and documentation fix some gcc 4.7 issues and add a few more test cases and more parts of the README Work on ReadMe and add Bound validator to clamp values * updates to README.md * Add some more in TOC of README and fix style in Option.hpp
-
add some comments in readME about performance move operator[] to return const Option * Apply suggestions from code review Co-Authored-By: phlptp <top1@llnl.gov> update readme and add some IniTests and fix a bug from the tests add_flag_callback add a few tests to capture the different paths fix incorrectly updated CMAKE file, and add some subcommand test for option finding add disable_flag_override and work out some kinks in the find option functions add some more tests and fix a few bugs in as<> function for options Allow general flag types and default values, add shortcut notation for retrieving values
-
* add some notes about enums in the readme add some helpers tests for enumerations Add better enum support in the library * fix Helpers Test for Enums
-
* Adding first draft of mapping * IsMember now supports maps * Adding example, better Val combs, and cleanup * Reversing order of map, adding pair support * Check/Transform suppport for Validators * Adding enum tools from @phlptp, more tests
-
* Adding first draft of Sets Use IsMember now Using IsMember as backend for Set Non-const validator backend Move set tests to set Clearer inits * Drop shortcut Tighten up classes a bit for MSVC Check with GCC 4.8 too * Simpler templates, but more of them Dropping more type safety for older compilers Shortcut string set * Adding shortcut init Making g++ 4.7 docker image happy Fix Clang tidy issue with last commit Adding one more shortcut, adding a couple of tests * Dropping dual pointer versions of code * Smarter shortcut syntax * Adding slighly faster choices * Cleanup to make InMember simpler * Drop choices for now, adding some tests * ValidationError is now always the error from a validator * Support for other types of initializer lists, including enums * Factor out type utilities, single version of IsMember code * Adding a few tests for #224 * Minor cleanup for Validation Error * Adding tests, moved deprecated tests * Docs updates
-
Updates to the readme update the readme with some documentation add a few more tests to complete code coverage update with count strings in flags instead an array of strings for each count add the '!' shortcut notation. add some checks on the help output allow the false flag syntax to support --option{false} add a bool lexical cast to make everything consistent when converting to a bool. Moved a few functions around make the command line behave like the INI file wrt flags, flag options are allowed to process the value so `--flag=false` actually does the expected thing. Add functionality similar to click style argument that allow specifying a false flag that when used generates a false result on the flag.
-
* Add test case for INI output of defaulted options * Add quotes to values with spaces * Fixing formatting * Only fix quote strings, not vectors
-
* Clear up Wshadow warnings from gcc 4.9. Most of these were local variable names with the same name as a member function. Also a few spelling fixes and adding some std::move around some of the arguments when appropriate. * Touchup
-
* Move lambda funtion to real function * Fix some warnings when compiling in LLVM * Adding one test back in * Adding details to changelog
-
* add some fields and functions for windows like options add test cases for windows options and refactor for additional string functions * try to fix code coverage to 100% again. add some additional documentation and a few additional test cases to verify documentation * remove some extra brackets
-
* add Tests and ability to handle program file inclusion in the single string. add the ability to deal with a single string in the parse command and handle quoted string appropriately * Add extra test cases for full coverage, clear up escape quote sequencing and handling of extra spaces
-
* add ignore_underscore test cases and options to app * add ignore_underscore for add_sets and some more tests for the sets and subcommands * add some documentation lines and some failing tests * update readme with ignore_underscore option * remove failing tests from known issue * remove empty line for code coverage
-
in progress: formatters Getting closer Working on apps One test actually runs All builds, added filter functions Reverting a few behavours as needed Repairs All tests pass Fixing error with adding help flag Labels are simpler mappings, normalized setters Adding help_all Adding a few more tests One more line tested Adding one more check Adding to readme Simplify naming Adding default constructors Fixing spacing issues with subcommand all printout Adding a couple of tests