@@ -1,5 +1,11 @@
Revision history for App-Cmd
+0.303 2009-11-27
+ revert behavior of App::Cmd 0.302 -- GLD no longer gives undef opts
+
+0.302 2009-11-27
+ expect undef values for acceptable-but-ungiven options in $opt
+
0.301 2009-09-02
fix App::Cmd::Simple docs to show ->execute (noticed by MIYAGAWA)
@@ -21,7 +21,7 @@ no_index:
- t
- xt
requires:
- Getopt::Long::Descriptive: 0.075
+ Getopt::Long::Descriptive: 0.081
Module::Pluggable::Object: 0
Sub::Exporter: 0.975
Sub::Install: 0
@@ -29,4 +29,4 @@ requires:
resources:
license: http://dev.perl.org/licenses/
repository: http://github.com/rjbs/app-cmd
-version: 0.301
+version: 0.303
@@ -2,7 +2,7 @@ use inc::Module::Install;
all_from('lib/App/Cmd.pm');
-requires('Getopt::Long::Descriptive' => 0.075); # leader_text, option_text
+requires('Getopt::Long::Descriptive' => 0.081); # leader_text, option_text
requires('Module::Pluggable::Object' => 0.00);
requires('Sub::Exporter' => 0.975); # curry_method
requires('Sub::Install' => 0.00); # minimum unknown
@@ -9,11 +9,11 @@ App::Cmd::ArgProcessor - App::Cmd-specific wrapper for Getopt::Long::Descriptive
=head1 VERSION
-version 0.301
+version 0.303
=cut
-our $VERSION = '0.301';
+our $VERSION = '0.303';
sub _process_args {
my ($class, $args, @params) = @_;
@@ -11,11 +11,11 @@ App::Cmd::Command::commands - list the application's commands
=head1 VERSION
-version 0.301
+version 0.303
=cut
-our $VERSION = 0.301;
+our $VERSION = 0.303;
=head1 DESCRIPTION
@@ -11,11 +11,11 @@ App::Cmd::Command::help - display a command's help screen
=head1 VERSION
-version 0.301
+version 0.303
=cut
-our $VERSION = '0.301';
+our $VERSION = '0.303';
=head1 DESCRIPTION
@@ -11,11 +11,11 @@ App::Cmd::Command - a base class for App::Cmd commands
=head1 VERSION
-version 0.301
+version 0.303
=cut
-our $VERSION = '0.301';
+our $VERSION = '0.303';
use Carp ();
@@ -94,7 +94,7 @@ sub execute {
return $class->$run(@_);
}
- Carp::croak "$class does not implement mandatory method 'execute'\n";
+ Carp::croak ref($class) . " does not implement mandatory method 'execute'\n";
}
=head2 app
@@ -5,7 +5,7 @@ package App::Cmd::Simple;
use App::Cmd::Command;
BEGIN { our @ISA = 'App::Cmd::Command' }
-our $VERSION = '0.301';
+our $VERSION = '0.303';
use App::Cmd;
use Sub::Install;
@@ -11,11 +11,11 @@ App::Cmd::Subdispatch::DashedStyle - "app cmd --subcmd" style subdispatching
=head1 VERSION
-version 0.301
+version 0.303
=cut
-our $VERSION = '0.301';
+our $VERSION = '0.303';
=head1 METHODS
@@ -13,11 +13,11 @@ App::Cmd::Subdispatch - an App::Cmd::Command that is also an App::Cmd
=head1 VERSION
-version 0.301
+version 0.303
=cut
-our $VERSION = '0.301';
+our $VERSION = '0.303';
=head1 METHODS
@@ -50,7 +50,7 @@ We can set up a simple command class like this:
Now, a user can run this command, but he'll get an error:
$ yourcmd initialize
- YourApp::Command::initialize does not implement mandatory method 'run'
+ YourApp::Command::initialize does not implement mandatory method 'execute'
Oops! This dies because we haven't told the command class what it should do
when executed. This is easy, we just add some code:
@@ -51,11 +51,11 @@ App::Cmd - write command line apps with less suffering
=head1 VERSION
-version 0.301
+version 0.303
=cut
-our $VERSION = '0.301';
+our $VERSION = '0.303';
=head1 SYNOPSIS
@@ -17,6 +17,6 @@ my $struct = eval $stdout;
is_deeply(
$struct,
- [ {}, [ qw(bite the wax tadpole) ] ],
+ [ { }, [ qw(bite the wax tadpole) ] ],
"our simple app runs properly",
);
@@ -17,6 +17,6 @@ my $struct = eval $stdout;
is_deeply(
$struct,
- [ {}, [ qw(bite the wax tadpole) ] ],
+ [ { }, [ qw(bite the wax tadpole) ] ],
"our simple app runs properly",
);