-
Fixes #143. There is no reason to make the tests optional.
-
Fixes #121. Removes the unused `ParseResult::get_option`.
-
Fixes #115. Read the version number out of `cxxopts.hpp` instead of having to duplicate it in CMakeLists.txt.
-
Fixes #109. Although we always used numbers in the ASCII range, it was in a `size_t`, leading to a warning about possible loss of data on some compilers.
-
Fixes #101. Allows leading zeroes in the integer parser.
-
Allows unrecognised options to be left alone by the parser without throwing an exception.
-
This reverts commit 0f819a5cabb611ada4c41a5208c6bf1178f804be.
-
* Added const to argv type for better interoperability.
-
Fixes #102. Don't show the default value when it is a boolean and the value is false. Note that this is a bit of a hack and the implementation should probably be reevaluated in the future.
-
Fixes #93. This adds C++17 only support for `std::optional` values for command line parameters.
-
Fixes #96. Default values of options not specified on the command line had a `count` of 1. It would be better if they had a count of 0 because they were not actually specified, so that count is only for options given by the user.
-
* Add default "default" value of "false" to boolean options, therefore allowing to call result["boolOpt"].as<bool>() without throwing an exception.
-
* `|` should be inside of `(…)` It's possible to use `(t|true|T|True)` as `truthy_pattern` but still failing `true` as a truthy under my environment :-( ``` Apple LLVM version 8.0.0 (clang-800.0.42.1) Target: x86_64-apple-darwin15.6.0 Thread model: posix InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin ```
-
Fixes #86. Rename some variables so that the overly strict shadows warning on GCC 4.9 is not triggered.
-
Fixes #82. This allows the help string after the program name to be completely replaced by the user.
-
Fixes #83. Adds an overload for positional arguments taking a `std::initializer_list`. When using an `initializer_list` with one argument, the function call is ambiguous matching both `std::string` and `std::vector<std::string>`.
-
Fixes #84. Implicit values are not handled very well. For example: --foo false true --foo --bar In the first, `false` is an argument to `--foo`, and then `true` is a positional argument. In the second, because of the hyphen in `--bar`, `--foo` is parsed with its implicit value. This seems inconsistent and unintuitive. Better is that implicit values *never* consume the next parameter to be completely consistent. This means that values with an implicit parameter *must* be specified using the `--option=value` form.
-
The parsing for boolean options was broken by 6c9bae4a07 which added implicit and default values, and the ability to parse boolean strings. Having an option after the boolean tried to parse that into the boolean instead of as a positional parameter. See #84 for the bug report.
-
It appears that the `libc++` available on Ubuntu 14.04 is broken and doesn't handle the boolean regex correctly. Newer versions appear to be correct but I have to work out how to get 14.04 to use it.
-
add booleans into the changelog and the readme
-
Fixes #54. Allow default and implicit values for booleans with multiple boolean strings matched as values.