• * chore(deps): pre-commit.ci autoupdate
    
    updates:
    - [github.com/pre-commit/pre-commit-hooks: v4.3.0 → v4.4.0](https://github.com/pre-commit/pre-commit-hooks/compare/v4.3.0...v4.4.0)
    - [github.com/pre-commit/mirrors-clang-format: v14.0.6 → v15.0.4](https://github.com/pre-commit/mirrors-clang-format/compare/v14.0.6...v15.0.4)
    - [github.com/pre-commit/mirrors-prettier: v3.0.0-alpha.3 → v3.0.0-alpha.4](https://github.com/pre-commit/mirrors-prettier/compare/v3.0.0-alpha.3...v3.0.0-alpha.4)
    
    * style: pre-commit.ci fixes
    
    Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
    pre-commit-ci[bot] authored
     
    Browse File »

  • * Update TypeTools.hpp
    
    fix #802 by using checking `std::ceil(val) == std::floor(val)` instead of `val == static_cast<std::int64_t>(val)` to avoid warnings-
    
    * style: pre-commit.ci fixes
    
    Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
    DarkWingMcQuack authored
     
    Browse File »

  • * ci: include windows 2022
    
    * fix visual studio 2022 issue with std::array and type detection
    
    * style: pre-commit.ci fixes
    
    * warning fixes
    
    Co-authored-by: Philip Top <top1@llnl.gov>
    Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
    Co-authored-by: Philip Top <phlptp@gmail.com>
    Henry Schreiner authored
     
    Browse File »

  • * 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>
    Henry Schreiner authored
     
    Browse File »


  • * chore(deps): pre-commit.ci autoupdate
    
    updates:
    - [github.com/pre-commit/mirrors-clang-format: v13.0.1 → v14.0.1](https://github.com/pre-commit/mirrors-clang-format/compare/v13.0.1...v14.0.1)
    
    * style: pre-commit.ci fixes
    
    Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
    pre-commit-ci[bot] authored
     
    Browse File »


  • * 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>
    Philip Top authored
     
    Browse File »

  • * 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>
    Philip Top authored
     
    Browse File »






  • add a test for char options
    
    add support for char types to the lexical cast, to allow single character types that make sense, add a integral_conversion operations to simplify the conversions from string to integers and allow discrimination in a few cases with enumerations.
    Philip Top authored
     
    Browse File »

  • * 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.
    Philip Top authored
     
    Browse File »

  • * 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>
    Philip Top authored
     
    Browse File »



  • * add a variant of the string conversions for the default string operations.  Discriminate between the is_convertible and is_constructible type traits for object.
    
    * update the test to test the different situations with the funny string like type
    Philip Top authored
     
    Browse File »



  • * Add cpplint config file
    
    * Add cpplint to CI
    
    * Add checks
    
    * Add docker container tag
    
    * Unindent container
    
    As suggested in code review
    
    Co-Authored-By: Henry Schreiner <HenrySchreinerIII@gmail.com>
    
    * Fix cpplint issues
    
    * Fix clang-format
    
    * Include and fix modern cpplint runtime/int
    
    * Include and fix cpplint build/include_order
    
    * Revert "Include and fix cpplint build/include_order"
    
    This reverts commit bddb6a2d6744c5397f387ccd03416a1ec5e29862.
    
    * Update explanation, sort alphabetically
    
    * Implement suggestion from code review
    
    Co-Authored-By: Henry Schreiner <HenrySchreinerIII@gmail.com>
    
    * Include cstdint header, prefix its symbols with std::
    
    * Forgot std::
    
    Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>
    Christoph Bachhuber authored
     
    Browse File »

  • * Fix invalid callback calls for default_val Option function.  the update adds a flag variable to control it, makes default_val exception safe and a template to convert from actual value types.
    
    * update readme and fix some compilation issues on older compilers
    
    * revert README.md with mistake erasures
    
    * Update README.md
    
    Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>
    Philip Top authored
     
    Browse File »



  • * allow transform to work with arrays.  The element_type trait required pointer_traits<T> to be defined for the type which it was for vector but not for array due to decay rules in C++, even though it was not used.  So Element type had to be split into two templates instead of a conditional.
    
    * fix formatting
    
    * clean up array initialization
    
    * add constexpr array test
    
    * add extra braces to make clang happy
    Philip Top authored
     
    Browse File »

  • * fix some warnings generated from klocwork static analyzer
    
    * Some more visual studio static analyzer and clang-tidy fixes
    
    * some formatting updates
    Philip Top authored
     
    Browse File »
  • * add an example where the name of the enum is printed through a stream output function, which subverted the checkTransformer conversion and prevented conversion of the enumeration.
    
    * add missing 'typename'
    
    * try a simpler version of the value_string using const reference for all overloads
    
    * use auto return type to match to_string return type in value_string
    
    * remove extra spaces
    Philip Top authored
     
    Browse File »

  • * 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
    Philip Top authored
     
    Browse File »

  • remove restrictions on tuple size, and add some additional tests and modified documentation
    
    fix some issues with the negative number check
    
    add some test for indexed validation on tuple
    
    allow specific validators for specific elements in a type with multiple values, or to just apply to the last given argument
    Philip Top authored
     
    Browse File »

  • * 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
    
    * start work on trying to clean up the type traits for which lexical cast overload to use
    
    * fix readme issue and make the condition tests a little clearer
    
    * add a check for out of range errors on boolean conversions
    
    * Fix capitalization and some comments on option functions
    
    * Allow immediate_callback on the main app to run the main app callback prior to named subcommand callbacks, and reflect this change in the a new test and docs.
    
    * add a is_tuple_like trait, and type_count structure for getting the number of elements to require
    
    * add lexical conversion functions for tuples and other types
    
    * remove the separate vector option and option function
    
    * test out the type names for tuples
    
    * add some more lexical conversion functions and test
    
    * more work on tuples and tests
    
    * fix some merge warnings
    
    * fix some typename usage and c++14 only constructs
    
    * tweak some of the template to remove undefined references
    
    * add extra static assert about is_tuple_like
    
    * fix some undefined references in clang
    
    * move around some of the type_count templates to be used in the type_name functions
    
    * move the type_count around and add some additional checks on the classification
    
    * add some info to the readme
    Philip Top authored
     
    Browse File »

  • This cleans up the type checking a bit and makes it more readable, along with some other cleanup.
    
    * start work on trying to clean up the type traits for which lexical cast overload to use
    
    * fix readme issue and make the condition tests a little clearer
    
    * add a check for out of range errors on boolean conversions
    
    * Fix capitalization and some comments on option functions
    
    * fix a few code analysis warnings for VS2019
    Philip Top authored
     
    Browse File »

  • * 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
    Philip Top authored
     
    Browse File »


  • * First streaming version
    
    * Using to_string instead
    
    * Switching to new backend
    
    * Moving to capture function for defaults
    
    * Rename capture_default + _str
    
    * defaultval -> default_str, added always_capture_default
    
    * Fix style
    
    * Adding tests and docs to readme
    
    * Dropping macOS on Travis (supported through Azure)
    Henry Schreiner authored
     
    Browse File »

  • * 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
    Philip Top authored
     
    Browse File »

  • 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
    Philip Top authored
     
    Browse File »