Lyra 1.6
Even though most of the changes for this release are to fix various reported
bug fixes, fixing those bugs has meant dealing with some long standing
internal parser inconsistencies. While I try to not break backwards
compatibility, I likely can't catch all of the corner cases people have
discovered.
WARNING: This release has some internal cleanup of the parser result types. It
also has an externally visible change to the parse
function result type. It
renames the errorMessage()
function to message()
. The errorMessage()
function is marked deprecated and will be removed in a future release.
Changes:
- New: Add
lyra::option_style
type to better customize the syntax of
options allowed. This replaces the "old"lyra::parser_customization
as a
better way. Thelyra::parser_customization
is now deprecated, and will
be removed at some future release.
-- René Ferdinand Rivera Morell - New: Add example to show how to count flags with cardinality greater than
one (1). Shows how to handle increasing verbosity with-vvvv
.
-- René Ferdinand Rivera Morell - New: Add capability to control the cardinality of argument groups.
-- René Ferdinand Rivera Morell - New: Allow setting hint after construction of
lyra::bound_parser
.
-- Max Ferger - Fix virtual overload hiding of
parse
method.
-- René Ferdinand Rivera Morell - Fix previously removed error for when expected option specifications
do not have the required-
prefix.
-- René Ferdinand Rivera Morell - Fix inconsistencies in parsing arguments in a group followed by other
arguments. (issue #49)
-- René Ferdinand Rivera Morell - Fix incorrectly accepting negative values for unsigned integer arguments.
The argument value conversion now checks the input for acceptable digits
in the input before attempting to parse it.
-- René Ferdinand Rivera Morell - Fix sub-command arguments being ignored even when they are marked as
required.
-- René Ferdinand Rivera Morell - Fix assigned values for flag options (
--flag=no
) being ignore. They now
cause an error when specified.
-- René Ferdinand Rivera Morell - Fix choices being allowed for for flag options, but ignored. Specifying
choices on flag options now signal an error.
-- René Ferdinand Rivera Morell - Tested with Visual Studio 2019, VS 2022, MinGW-64 (gcc 8.1.0), Linux ( clang 3.9, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13; gcc 5, 6, 7, 8, 9, 10, 11), Xcode (11.2.1, 11.3.1, 11.4.1, 11.5, 11.6, 11.7, 12.0.1, 12.2, 12.3, 12.4, 13.0), on Azure Pipelines; and with VS 2015, VS 2017, MinGW-64 (gcc 6.3, 7.3) on AppVeyor.