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


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












  • * Use e.get_name instead of dynamic_cast
    
    Also use std::static_pointer_cast instead of std::dynamic_pointer_cast
    
    Fixes #466
    
    * feat: Allow RTTI to be turned off
    
    * ci: Fix CXX flags
    
    * doc: Adding update to book
    
    Co-authored-by: Henry Schreiner <henryschreineriii@gmail.com>
    Ondřej Čertík 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 get_single_name function for options, and allow short names to be used for configuration output.
    
    * add config input to handle short and positional options
    
    * add some tests about short options and positional options in config files
    
    * allow use of envname_ in config files
    
    * update doc book and readme with fixes
    
    * formatting update
    
    * some formatting updates
    
    * add some notes on the config file generation
    
    * just try modifying a comment
    Philip Top authored
     
    Browse File »



  • * spelling: argument
    
    * spelling: conflicts
    
    * spelling: correctly
    
    * spelling: default
    
    * spelling: description
    
    * spelling: empty
    
    * spelling: enum
    
    * spelling: javascript
    
    * spelling: modifying
    
    * spelling: nonexistent
    
    * spelling: plumbum
    
    * spelling: programmatically
    
    * spelling: received
    
    * spelling: replaced
    
    * spelling: required
    
    * spelling: sanitizers
    
    * spelling: semicolon
    
    * spelling: source
    
    * spelling: subcommands
    
    * spelling: successful
    Josh Soref 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 »

  • * 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
    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 »

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