Skip to content

Lyra 1.5

Compare
Choose a tag to compare
@grafikrobot grafikrobot released this 27 Aug 13:37

This release has some big changes in easy of use and functionality. There are
now alternate interfaces for specifying and fetching arguments. Also the help
output is now more compact and clearer. There is also new support for
sub-commands.

WARNING: The cli_parser type was renamed to cli. Both the cli_parser type
and the lyra/cli_parser.hpp header are deprecated and will be removed in a
future release.

WARNING: Changed the install CMake target from BFG::Lyra to bfg::lyra.

Changes:

  • New: Main encapsulation of common use case of help option handling. With shorthand specification of arguments. -- René Ferdinand Rivera Morell
  • New: Ability to specify argument values, with default, without specifying a local external to the parser variable. Making it easier to specify command lines. The values can be retrieved from the cli as a map from argument names to the value. -- René Ferdinand Rivera Morell
  • New: Support construction of lyra::args from iterators for cases where the arguments come from some existing container. -- René Ferdinand Rivera Morell
  • New: Add Cmake install support. -- Jayesh Vinay Badwaik
  • New: Command argument to make it easy to specify sub-commands. -- René Ferdinand Rivera Morell
  • New: Alternative sequential argument parsing mode. -- René Ferdinand Rivera Morell
  • New: Grouped arguments to specify and handle sub-command parsers. -- René Ferdinand Rivera Morell
  • New: literal parser to directly match an argument. -- René Ferdinand Rivera Morell
  • Fix missing hint text for optional, lyra::arg, arguments. -- René Ferdinand Rivera Morell
  • Bring back some cleaner and compact formatting of the help text. -- René Ferdinand Rivera Morell
  • Tested with Visual Studio 2017, VS 2019, MinGW-64 (gcc 8.1.0), Linux (clang 3.9, 4, 5, 6, 7, 8, 9, 10; gcc 4.9, 5, 6, 7, 8, 9, 10), Xcode ( 11.1, 11.2.1, 11.3.1, 11.4.1, 11.5, 11.6), on Azure Pipelines; and with VS 2015, MinGW-64 (gcc 6.3, 7.3) on AppVeyor.