jarro2783/cxxopts v2.1 Release Notes

  • 🔄 Changed

    • Options with implicit arguments now require the --option=value form if they are to be specified with an option. This is to remove the ambiguity when a positional argument could follow an option with an implicit value. For example, --foo value, where foo has an implicit value, will be parsed as --foo=implicit and a positional argument value.
    • 0️⃣ Boolean values are no longer special, but are just an option with a default and implicit value.

    ➕ Added

    • ➕ Added support for std::optional as a storage type.
    • 👍 Allow the help string to be customised.
    • 👉 Use const for the type in the argv parameter, since the contents of the arguments is never modified.

    🐛 Bug Fixes

    • 🏗 Building against GCC 4.9 was broken due to overly strict shadow warnings.
    • 🛠 Fixed an ambiguous overload in the parse_positional function when an initializer_list was directly passed.
    • 🛠 Fixed precedence in the Boolean value regex.