2.0.0 (2022-10-05)
Code Maintenance
- Add a test case for RT#144053
2.0.0_6 (2022-10-04)
API / Behaviour Changes:
- Partially restore legacy arg(), opt() and "optargs => sub {}"
interfaces to ease migration. The arg "fallback" parameter
was not restored, and neither was any documentation.
- StatusLine reworked to be much simpler in interface and
implementation.
Bug Fixes:
- Option types & defaults are no longer UPPERCASE
Packaging:
- Add missing ExtUtils::MakeMaker::CPANfile dependency
2.0.0_5 (2022-09-29)
Bug Fixes:
- Replace a naked Carp::croak with OptArgs2->throw_error;
Code Maintenanc:e
- Remove 'ishelp' warning and conversion
Packaging:
- Remove unnecessary direct dependency on IO::Capture::Stdout
2.0.0_4 (2022-09-28)
API / Behaviour Changes:
- Replace 'ishelp' attribute with isa => OptArgs2::STYLE_HELP
- Move to "optargs => \@ARRAY" construction style
- optargs2() renamed to replace optargs() completely
- arg() and opt() deprected
- Arg fallback replaced by fallthru option
New Features:
- Utility functions cols() and rows() made public
Dependencies:
- (development only) Use Class::Inline instead of Mo.
Packaging:
- No longer generating duplicate Getopt::Args package.
2.0.0_3 (2022-04-30)
API / Behaviour Changes:
- None
New Features:
- ANSI terminal codes are used to color output, which can be
disabled with the new 'show_color' option.
- New optargs2() function
Enhancements:
- OptArgs2::STYLE_HELPTREE output has been improved and now
includes sub-command comments
- OptArgs2::Pager now includes '-S' in the $LESS environment
variable and documents this.
Bug Fixes:
- Fix a StatusLine import with no arguments.
2.0.0_2 (2022-02-26)
New Features:
- New OptArgs2::StatusLine package for terminal status lines
Enhancements:
- Allow OptArgs2::Pager to work independently (by splitting out
OptArgs2::Mo into its own file)
- Code re-organisation
- Show SubCmd arguments in usage message
Bug Fixes:
- Fix for Getopt::Args2 conversion with a test
Dependencies:
- Minimum of perl 5.16 for package BLOCK syntax
- Test::Output for StatusLine tests
Packaging:
- Clean up non-indexed packages list
2.0.0_1 (2022-02-03)
API / Behaviour Changes:
- Changed OptArgs2::Pager on()/off() methods to start_pager(),
stop_pager() and page() functions.
Enhancements:
- Pager will only be started for usage messages with more lines
than the terminal height.
Dependencies:
- Exporter::Tidy for OptArgs2::Pager.
- Term::Size::Perl and/or Win32::Console
0.0.12_2 (2022-01-27)
API / Behaviour Changes:
- New 'show_default' feature
- Opt 'ishelp' no longer conflicts with 'trigger'
- The 'default' and 'required' parameters are no longer allowed
together.
New Features:
- New 'OptArgRef' arg type to support command aliases. I.e.
capturing options and arguments that are passed back into
class_optargs() again.
- Pipe usage messages through a STDOUT pager
Enhancements:
- Various minor code refactoring improvements.
- Opt 'ishelp' now does what the documentation implies.
- Support default values relying on other default values
- Rework internal error reporting and usage generation
- New usage layout showing default values
Bug Fixes:
- Fix a ==/= comparison/assignment error in the usage()
function introduced by 2347144c.
- Bool option with true default turned off when --no-bool used.
Dependencies:
- File::Which for new OptArgs2::Pager module.
Packaging:
- Stop including ".readme_from" file in distribution
0.0.12_1 (2018-08-31)
Enhancements:
- Refactor error handling to make it clearer and simpler.
- Report all caller (user) errors where they occur
Bug Fixes:
- The command abbreviation feature has never worked due to an
arrayref dereferencing mistake. Discovered and fixed by Mario
Domgoergen (mdom at Github).
0.0.11 (2018-08-18)
Enhancements:
- Set @CARP_NOT correctly to indicate where OptArgs2 callers
are making errors.
Bug Fixes:
- Arguments that didn't match known sub-commands would fail to
raise errors. Reported by Mario Domgoergen (mdom at Github).
Dependencies:
- Tests depend on Test2::V0 instead of old Bundle
Packaging:
- Ensure Getopt::Args::* utility packages are not indexed on
CPAN.
- Migrate back to ExtUtils::MakeMaker
- Keep README up to date using githook-perltidy's .readme_from
and track it in Git again so that Github shows something
reasonable again.
0.0.10 (2018-06-26)
Enhancements:
- Output Sub-Commands *after* Options in usage message
- Allow "Flag" options to have defaults as I don't remember
what the reason may have been for the restriction. I also
can't think of a valid one now, and it is sometimes useful to
set a Flag value based on %ENV.
- Convert command_names to command-names in messages
Bug Fixes:
- Remove Getopts/Args2.pm from MANIFEST.SKIP
0.0.9 (2016-12-03)
Enhancements:
- Sub commands are always called and no longer depend on a
particular SubCmd arg type. The arg isa='SubCmd' type is now
simply a usage pressentation instruction.
0.0.8 (2016-10-17)
New Features:
- New "usage()" function
Dependencies:
- Require at least Perl 5.10 for "//=" support.
0.0.6 (2016-07-03)
Bug Fixes:
- Fix command name handling broken by /r fixes in 0.0.2.
- Correctly pass the option value to triggers
- Use "--counter" in usage message for Counter options instead
of "--counter="
0.0.4 (2016-05-21)
Bug Fixes:
- One more /r fixup
- Build lib/Getopt/Args2.pm from Build.PL
0.0.2 (2016-05-18)
Bug Fixes:
- Remove the other uses of /r in regexes that I missed in
the previous version.
0.0.1_2 (2016-05-10)
Bug Fixes:
- Don't use the /r modifier (non-destructive substitution) on
regex replacements as it is not supported by Perl's earlier
than 5.14.
0.0.1_1 (2016-05-09)
Initial release.