- It is possible to collect parameters that will be forwarded to a subprocess. The syntax is similar to the one used in GCC.
- Multiple names can be defined for meta-varaiables in
metavar()by specifying a list of strings instead of a simple string. - Added the method
addas an alias foradd_parameter. - The method
absentis now an alias fordefault_value. - Added shell tests for various library usage scenarios.
- Some targets are available only when the Argumentum project is top-level.
- The header-only version can be installed.
- The library can be used from a Git submodule using modern CMake.
- It is now possible to add an instantiated instance of CommandOptions with
add_command. This makes it easier to access global options from within command options. See the test shouldAccessParentOptionsFromCommand incommand_t.cppand the new example in the README file. - The help formatter can be changed in parser configuration. See the test shouldChangeHelpFormatter
in
parserconfig_t.cpp.
- The interface for defining program parameters has changed. The parameters are defined through the
params()method of theargument_parserclass. The oldargument_parsermethods for defining parameters are deprecated and will be removed. - Fix: Treat negative numbers as numbers when they can not be mistaken for options.
- The optional targets are now filled correctly.
- For options with vector targets the default count changed from
minagrs(0)tominargs(1). For options withoptional<vector>targets the default is stillminargs(0). - When an option with a vector target has
minargs(0)a flagValue is added to the vector only if the vector is empty.