The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
Changes 07
LICENSE 33
MANIFEST 11
META.json 6262
META.yml 6161
Makefile.PL 82
README 33
lib/App/Cmd/ArgProcessor.pm 33
lib/App/Cmd/Command/commands.pm 83
lib/App/Cmd/Command/help.pm 175
lib/App/Cmd/Command/version.pm 33
lib/App/Cmd/Command.pm 33
lib/App/Cmd/Plugin.pm 33
lib/App/Cmd/Setup.pm 33
lib/App/Cmd/Simple.pm 33
lib/App/Cmd/Subdispatch/DashedStyle.pm 143
lib/App/Cmd/Subdispatch.pm 44
lib/App/Cmd/Tester/CaptureExternal.pm 33
lib/App/Cmd/Tester.pm 55
lib/App/Cmd/Tutorial.pod 44
lib/App/Cmd.pm 33
t/00-report-prereqs.t 310
t/subdispatch.t 06
xt/release/changes_has_content.t 11
24 files changed (This is a version diff) 218204
@@ -1,5 +1,12 @@
 Revision history for App-Cmd
 
+0.327     2015-02-23 20:05:00-05:00 America/New_York
+        - fix behavior of default command under subdispatch (thanks, Stephen
+          Caldwell and Diab Jerius!)
+        - simplify help and commands commands (thanks, Sergey Romanov)
+        - drop some advice that we didn't feel great about (thanks, Karen
+          Etheridge)
+
 0.326     2014-11-30 08:48:29-05:00 America/New_York
           fix the path fix because it was broken by a related fix in EUMM
 
@@ -1,4 +1,4 @@
-This software is copyright (c) 2014 by Ricardo Signes.
+This software is copyright (c) 2015 by Ricardo Signes.
 
 This is free software; you can redistribute it and/or modify it under
 the same terms as the Perl 5 programming language system itself.
@@ -12,7 +12,7 @@ b) the "Artistic License"
 
 --- The GNU General Public License, Version 1, February 1989 ---
 
-This software is Copyright (c) 2014 by Ricardo Signes.
+This software is Copyright (c) 2015 by Ricardo Signes.
 
 This is free software, licensed under:
 
@@ -272,7 +272,7 @@ That's all there is to it!
 
 --- The Artistic License 1.0 ---
 
-This software is Copyright (c) 2014 by Ricardo Signes.
+This software is Copyright (c) 2015 by Ricardo Signes.
 
 This is free software, licensed under:
 
@@ -1,4 +1,4 @@
-# This file was automatically generated by Dist::Zilla::Plugin::Manifest v5.025.
+# This file was automatically generated by Dist::Zilla::Plugin::Manifest v5.032.
 Changes
 LICENSE
 MANIFEST
@@ -4,13 +4,13 @@
       "Ricardo Signes <rjbs@cpan.org>"
    ],
    "dynamic_config" : 0,
-   "generated_by" : "Dist::Zilla version 5.025, CPAN::Meta::Converter version 2.143240",
+   "generated_by" : "Dist::Zilla version 5.032, CPAN::Meta::Converter version 2.143240",
    "license" : [
       "perl_5"
    ],
    "meta-spec" : {
       "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
-      "version" : "2"
+      "version" : 2
    },
    "name" : "App-Cmd",
    "prereqs" : {
@@ -75,10 +75,10 @@
          "web" : "https://github.com/rjbs/App-Cmd"
       }
    },
-   "version" : "0.326",
+   "version" : "0.327",
    "x_Dist_Zilla" : {
       "perl" : {
-         "version" : "5.021005"
+         "version" : "5.021009"
       },
       "plugins" : [
          {
@@ -101,12 +101,12 @@
                }
             },
             "name" : "@RJBS/Git::GatherDir",
-            "version" : "2.028"
+            "version" : "2.029"
          },
          {
             "class" : "Dist::Zilla::Plugin::CheckPrereqsIndexed",
             "name" : "@RJBS/CheckPrereqsIndexed",
-            "version" : "0.013"
+            "version" : "0.015"
          },
          {
             "class" : "Dist::Zilla::Plugin::CheckExtraTests",
@@ -127,7 +127,7 @@
                }
             },
             "name" : "@RJBS/RJBS-Outdated",
-            "version" : "0.032"
+            "version" : "0.038"
          },
          {
             "class" : "Dist::Zilla::Plugin::PromptIfStale",
@@ -141,62 +141,62 @@
                }
             },
             "name" : "@RJBS/CPAN-Outdated",
-            "version" : "0.032"
+            "version" : "0.038"
          },
          {
             "class" : "Dist::Zilla::Plugin::PruneCruft",
             "name" : "@RJBS/@Filter/PruneCruft",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::ManifestSkip",
             "name" : "@RJBS/@Filter/ManifestSkip",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::MetaYAML",
             "name" : "@RJBS/@Filter/MetaYAML",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::License",
             "name" : "@RJBS/@Filter/License",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::Readme",
             "name" : "@RJBS/@Filter/Readme",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::ExecDir",
             "name" : "@RJBS/@Filter/ExecDir",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::ShareDir",
             "name" : "@RJBS/@Filter/ShareDir",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::Manifest",
             "name" : "@RJBS/@Filter/Manifest",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::TestRelease",
             "name" : "@RJBS/@Filter/TestRelease",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::ConfirmRelease",
             "name" : "@RJBS/@Filter/ConfirmRelease",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::UploadToCPAN",
             "name" : "@RJBS/@Filter/UploadToCPAN",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::MakeMaker",
@@ -206,12 +206,12 @@
                }
             },
             "name" : "@RJBS/MakeMaker",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::AutoPrereqs",
             "name" : "@RJBS/AutoPrereqs",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::Git::NextVersion",
@@ -226,27 +226,27 @@
                }
             },
             "name" : "@RJBS/Git::NextVersion",
-            "version" : "2.028"
+            "version" : "2.029"
          },
          {
             "class" : "Dist::Zilla::Plugin::PkgVersion",
             "name" : "@RJBS/PkgVersion",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::MetaConfig",
             "name" : "@RJBS/MetaConfig",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::MetaJSON",
             "name" : "@RJBS/MetaJSON",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::NextRelease",
             "name" : "@RJBS/NextRelease",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::Test::ChangesHasContent",
@@ -256,12 +256,12 @@
          {
             "class" : "Dist::Zilla::Plugin::PodSyntaxTests",
             "name" : "@RJBS/PodSyntaxTests",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::Test::ReportPrereqs",
             "name" : "@RJBS/Test::ReportPrereqs",
-            "version" : "0.019"
+            "version" : "0.020"
          },
          {
             "class" : "Dist::Zilla::Plugin::Prereqs",
@@ -272,7 +272,7 @@
                }
             },
             "name" : "@RJBS/TestMoreWithSubtests",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::PodWeaver",
@@ -289,92 +289,92 @@
                      {
                         "class" : "Pod::Weaver::Plugin::EnsurePod5",
                         "name" : "@CorePrep/EnsurePod5",
-                        "version" : "4.008"
+                        "version" : "4.010"
                      },
                      {
                         "class" : "Pod::Weaver::Plugin::H1Nester",
                         "name" : "@CorePrep/H1Nester",
-                        "version" : "4.008"
+                        "version" : "4.010"
                      },
                      {
                         "class" : "Pod::Weaver::Plugin::SingleEncoding",
                         "name" : "@RJBS/SingleEncoding",
-                        "version" : "4.008"
+                        "version" : "4.010"
                      },
                      {
                         "class" : "Pod::Weaver::Section::Name",
                         "name" : "@RJBS/Name",
-                        "version" : "4.008"
+                        "version" : "4.010"
                      },
                      {
                         "class" : "Pod::Weaver::Section::Version",
                         "name" : "@RJBS/Version",
-                        "version" : "4.008"
+                        "version" : "4.010"
                      },
                      {
                         "class" : "Pod::Weaver::Section::Region",
                         "name" : "@RJBS/Prelude",
-                        "version" : "4.008"
+                        "version" : "4.010"
                      },
                      {
                         "class" : "Pod::Weaver::Section::Generic",
                         "name" : "@RJBS/Synopsis",
-                        "version" : "4.008"
+                        "version" : "4.010"
                      },
                      {
                         "class" : "Pod::Weaver::Section::Generic",
                         "name" : "@RJBS/Description",
-                        "version" : "4.008"
+                        "version" : "4.010"
                      },
                      {
                         "class" : "Pod::Weaver::Section::Generic",
                         "name" : "@RJBS/Overview",
-                        "version" : "4.008"
+                        "version" : "4.010"
                      },
                      {
                         "class" : "Pod::Weaver::Section::Generic",
                         "name" : "@RJBS/Stability",
-                        "version" : "4.008"
+                        "version" : "4.010"
                      },
                      {
                         "class" : "Pod::Weaver::Section::Collect",
                         "name" : "Attributes",
-                        "version" : "4.008"
+                        "version" : "4.010"
                      },
                      {
                         "class" : "Pod::Weaver::Section::Collect",
                         "name" : "Methods",
-                        "version" : "4.008"
+                        "version" : "4.010"
                      },
                      {
                         "class" : "Pod::Weaver::Section::Collect",
                         "name" : "Functions",
-                        "version" : "4.008"
+                        "version" : "4.010"
                      },
                      {
                         "class" : "Pod::Weaver::Section::Leftovers",
                         "name" : "@RJBS/Leftovers",
-                        "version" : "4.008"
+                        "version" : "4.010"
                      },
                      {
                         "class" : "Pod::Weaver::Section::Region",
                         "name" : "@RJBS/postlude",
-                        "version" : "4.008"
+                        "version" : "4.010"
                      },
                      {
                         "class" : "Pod::Weaver::Section::Authors",
                         "name" : "@RJBS/Authors",
-                        "version" : "4.008"
+                        "version" : "4.010"
                      },
                      {
                         "class" : "Pod::Weaver::Section::Legal",
                         "name" : "@RJBS/Legal",
-                        "version" : "4.008"
+                        "version" : "4.010"
                      },
                      {
                         "class" : "Pod::Weaver::Plugin::Transformer",
                         "name" : "@RJBS/List",
-                        "version" : "4.008"
+                        "version" : "4.010"
                      }
                   ]
                }
@@ -406,7 +406,7 @@
                }
             },
             "name" : "@RJBS/@Git/Check",
-            "version" : "2.028"
+            "version" : "2.029"
          },
          {
             "class" : "Dist::Zilla::Plugin::Git::Commit",
@@ -429,7 +429,7 @@
                }
             },
             "name" : "@RJBS/@Git/Commit",
-            "version" : "2.028"
+            "version" : "2.029"
          },
          {
             "class" : "Dist::Zilla::Plugin::Git::Tag",
@@ -437,7 +437,7 @@
                "Dist::Zilla::Plugin::Git::Tag" : {
                   "branch" : null,
                   "signed" : 0,
-                  "tag" : "0.326",
+                  "tag" : "0.327",
                   "tag_format" : "%v",
                   "tag_message" : "v%v",
                   "time_zone" : "local"
@@ -447,7 +447,7 @@
                }
             },
             "name" : "@RJBS/@Git/Tag",
-            "version" : "2.028"
+            "version" : "2.029"
          },
          {
             "class" : "Dist::Zilla::Plugin::Git::Push",
@@ -464,7 +464,7 @@
                }
             },
             "name" : "@RJBS/@Git/Push",
-            "version" : "2.028"
+            "version" : "2.029"
          },
          {
             "class" : "Dist::Zilla::Plugin::Prereqs",
@@ -475,47 +475,47 @@
                }
             },
             "name" : "Prereqs",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::FinderCode",
             "name" : ":InstallModules",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::FinderCode",
             "name" : ":IncModules",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::FinderCode",
             "name" : ":TestFiles",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::FinderCode",
             "name" : ":ExecFiles",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::FinderCode",
             "name" : ":ShareFiles",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::FinderCode",
             "name" : ":MainModule",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::FinderCode",
             "name" : ":AllFiles",
-            "version" : "5.025"
+            "version" : "5.032"
          },
          {
             "class" : "Dist::Zilla::Plugin::FinderCode",
             "name" : ":NoFiles",
-            "version" : "5.025"
+            "version" : "5.032"
          }
       ],
       "zilla" : {
@@ -523,7 +523,7 @@
          "config" : {
             "is_trial" : "0"
          },
-         "version" : "5.025"
+         "version" : "5.032"
       }
    }
 }
@@ -14,7 +14,7 @@ build_requires:
 configure_requires:
   ExtUtils::MakeMaker: '0'
 dynamic_config: 0
-generated_by: 'Dist::Zilla version 5.025, CPAN::Meta::Converter version 2.143240'
+generated_by: 'Dist::Zilla version 5.032, CPAN::Meta::Converter version 2.143240'
 license: perl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -44,10 +44,10 @@ resources:
   bugtracker: https://github.com/rjbs/App-Cmd/issues
   homepage: https://github.com/rjbs/App-Cmd
   repository: https://github.com/rjbs/App-Cmd.git
-version: '0.326'
+version: '0.327'
 x_Dist_Zilla:
   perl:
-    version: '5.021005'
+    version: '5.021009'
   plugins:
     -
       class: Dist::Zilla::Plugin::Git::GatherDir
@@ -65,11 +65,11 @@ x_Dist_Zilla:
         Dist::Zilla::Role::Git::Repo:
           repo_root: .
       name: '@RJBS/Git::GatherDir'
-      version: '2.028'
+      version: '2.029'
     -
       class: Dist::Zilla::Plugin::CheckPrereqsIndexed
       name: '@RJBS/CheckPrereqsIndexed'
-      version: '0.013'
+      version: '0.015'
     -
       class: Dist::Zilla::Plugin::CheckExtraTests
       name: '@RJBS/CheckExtraTests'
@@ -85,7 +85,7 @@ x_Dist_Zilla:
           phase: build
           skip: []
       name: '@RJBS/RJBS-Outdated'
-      version: '0.032'
+      version: '0.038'
     -
       class: Dist::Zilla::Plugin::PromptIfStale
       config:
@@ -96,62 +96,62 @@ x_Dist_Zilla:
           phase: release
           skip: []
       name: '@RJBS/CPAN-Outdated'
-      version: '0.032'
+      version: '0.038'
     -
       class: Dist::Zilla::Plugin::PruneCruft
       name: '@RJBS/@Filter/PruneCruft'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::ManifestSkip
       name: '@RJBS/@Filter/ManifestSkip'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::MetaYAML
       name: '@RJBS/@Filter/MetaYAML'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::License
       name: '@RJBS/@Filter/License'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::Readme
       name: '@RJBS/@Filter/Readme'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::ExecDir
       name: '@RJBS/@Filter/ExecDir'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::ShareDir
       name: '@RJBS/@Filter/ShareDir'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::Manifest
       name: '@RJBS/@Filter/Manifest'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::TestRelease
       name: '@RJBS/@Filter/TestRelease'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::ConfirmRelease
       name: '@RJBS/@Filter/ConfirmRelease'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::UploadToCPAN
       name: '@RJBS/@Filter/UploadToCPAN'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::MakeMaker
       config:
         Dist::Zilla::Role::TestRunner:
           default_jobs: 9
       name: '@RJBS/MakeMaker'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::AutoPrereqs
       name: '@RJBS/AutoPrereqs'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::Git::NextVersion
       config:
@@ -162,23 +162,23 @@ x_Dist_Zilla:
         Dist::Zilla::Role::Git::Repo:
           repo_root: .
       name: '@RJBS/Git::NextVersion'
-      version: '2.028'
+      version: '2.029'
     -
       class: Dist::Zilla::Plugin::PkgVersion
       name: '@RJBS/PkgVersion'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::MetaConfig
       name: '@RJBS/MetaConfig'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::MetaJSON
       name: '@RJBS/MetaJSON'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::NextRelease
       name: '@RJBS/NextRelease'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::Test::ChangesHasContent
       name: '@RJBS/Test::ChangesHasContent'
@@ -186,11 +186,11 @@ x_Dist_Zilla:
     -
       class: Dist::Zilla::Plugin::PodSyntaxTests
       name: '@RJBS/PodSyntaxTests'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::Test::ReportPrereqs
       name: '@RJBS/Test::ReportPrereqs'
-      version: '0.019'
+      version: '0.020'
     -
       class: Dist::Zilla::Plugin::Prereqs
       config:
@@ -198,7 +198,7 @@ x_Dist_Zilla:
           phase: test
           type: requires
       name: '@RJBS/TestMoreWithSubtests'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::PodWeaver
       config:
@@ -212,75 +212,75 @@ x_Dist_Zilla:
             -
               class: Pod::Weaver::Plugin::EnsurePod5
               name: '@CorePrep/EnsurePod5'
-              version: '4.008'
+              version: '4.010'
             -
               class: Pod::Weaver::Plugin::H1Nester
               name: '@CorePrep/H1Nester'
-              version: '4.008'
+              version: '4.010'
             -
               class: Pod::Weaver::Plugin::SingleEncoding
               name: '@RJBS/SingleEncoding'
-              version: '4.008'
+              version: '4.010'
             -
               class: Pod::Weaver::Section::Name
               name: '@RJBS/Name'
-              version: '4.008'
+              version: '4.010'
             -
               class: Pod::Weaver::Section::Version
               name: '@RJBS/Version'
-              version: '4.008'
+              version: '4.010'
             -
               class: Pod::Weaver::Section::Region
               name: '@RJBS/Prelude'
-              version: '4.008'
+              version: '4.010'
             -
               class: Pod::Weaver::Section::Generic
               name: '@RJBS/Synopsis'
-              version: '4.008'
+              version: '4.010'
             -
               class: Pod::Weaver::Section::Generic
               name: '@RJBS/Description'
-              version: '4.008'
+              version: '4.010'
             -
               class: Pod::Weaver::Section::Generic
               name: '@RJBS/Overview'
-              version: '4.008'
+              version: '4.010'
             -
               class: Pod::Weaver::Section::Generic
               name: '@RJBS/Stability'
-              version: '4.008'
+              version: '4.010'
             -
               class: Pod::Weaver::Section::Collect
               name: Attributes
-              version: '4.008'
+              version: '4.010'
             -
               class: Pod::Weaver::Section::Collect
               name: Methods
-              version: '4.008'
+              version: '4.010'
             -
               class: Pod::Weaver::Section::Collect
               name: Functions
-              version: '4.008'
+              version: '4.010'
             -
               class: Pod::Weaver::Section::Leftovers
               name: '@RJBS/Leftovers'
-              version: '4.008'
+              version: '4.010'
             -
               class: Pod::Weaver::Section::Region
               name: '@RJBS/postlude'
-              version: '4.008'
+              version: '4.010'
             -
               class: Pod::Weaver::Section::Authors
               name: '@RJBS/Authors'
-              version: '4.008'
+              version: '4.010'
             -
               class: Pod::Weaver::Section::Legal
               name: '@RJBS/Legal'
-              version: '4.008'
+              version: '4.010'
             -
               class: Pod::Weaver::Plugin::Transformer
               name: '@RJBS/List'
-              version: '4.008'
+              version: '4.010'
       name: '@RJBS/PodWeaver'
       version: '4.006'
     -
@@ -301,7 +301,7 @@ x_Dist_Zilla:
         Dist::Zilla::Role::Git::Repo:
           repo_root: .
       name: '@RJBS/@Git/Check'
-      version: '2.028'
+      version: '2.029'
     -
       class: Dist::Zilla::Plugin::Git::Commit
       config:
@@ -318,21 +318,21 @@ x_Dist_Zilla:
         Dist::Zilla::Role::Git::Repo:
           repo_root: .
       name: '@RJBS/@Git/Commit'
-      version: '2.028'
+      version: '2.029'
     -
       class: Dist::Zilla::Plugin::Git::Tag
       config:
         Dist::Zilla::Plugin::Git::Tag:
           branch: ~
           signed: 0
-          tag: '0.326'
+          tag: '0.327'
           tag_format: '%v'
           tag_message: v%v
           time_zone: local
         Dist::Zilla::Role::Git::Repo:
           repo_root: .
       name: '@RJBS/@Git/Tag'
-      version: '2.028'
+      version: '2.029'
     -
       class: Dist::Zilla::Plugin::Git::Push
       config:
@@ -344,7 +344,7 @@ x_Dist_Zilla:
         Dist::Zilla::Role::Git::Repo:
           repo_root: .
       name: '@RJBS/@Git/Push'
-      version: '2.028'
+      version: '2.029'
     -
       class: Dist::Zilla::Plugin::Prereqs
       config:
@@ -352,41 +352,41 @@ x_Dist_Zilla:
           phase: runtime
           type: requires
       name: Prereqs
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::FinderCode
       name: ':InstallModules'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::FinderCode
       name: ':IncModules'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::FinderCode
       name: ':TestFiles'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::FinderCode
       name: ':ExecFiles'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::FinderCode
       name: ':ShareFiles'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::FinderCode
       name: ':MainModule'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::FinderCode
       name: ':AllFiles'
-      version: '5.025'
+      version: '5.032'
     -
       class: Dist::Zilla::Plugin::FinderCode
       name: ':NoFiles'
-      version: '5.025'
+      version: '5.032'
   zilla:
     class: Dist::Zilla::Dist::Builder
     config:
       is_trial: '0'
-    version: '5.025'
+    version: '5.032'
@@ -1,5 +1,4 @@
-
-# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker v5.025.
+# This file was automatically generated by Dist::Zilla::Plugin::MakeMaker v5.032.
 use strict;
 use warnings;
 
@@ -7,8 +6,6 @@ use 5.006;
 
 use ExtUtils::MakeMaker;
 
-
-
 my %WriteMakefileArgs = (
   "ABSTRACT" => "write command line apps with less suffering",
   "AUTHOR" => "Ricardo Signes <rjbs\@cpan.org>",
@@ -50,7 +47,7 @@ my %WriteMakefileArgs = (
     "base" => 0,
     "lib" => 0
   },
-  "VERSION" => "0.326",
+  "VERSION" => "0.327",
   "test" => {
     "TESTS" => "t/*.t"
   }
@@ -97,6 +94,3 @@ delete $WriteMakefileArgs{CONFIGURE_REQUIRES}
   unless eval { ExtUtils::MakeMaker->VERSION(6.52) };
 
 WriteMakefile(%WriteMakefileArgs);
-
-
-
@@ -1,15 +1,15 @@
 
 
 This archive contains the distribution App-Cmd,
-version 0.326:
+version 0.327:
 
   write command line apps with less suffering
 
-This software is copyright (c) 2014 by Ricardo Signes.
+This software is copyright (c) 2015 by Ricardo Signes.
 
 This is free software; you can redistribute it and/or modify it under
 the same terms as the Perl 5 programming language system itself.
 
 
-This README file was generated by Dist::Zilla::Plugin::Readme v5.025.
+This README file was generated by Dist::Zilla::Plugin::Readme v5.032.
 
@@ -2,7 +2,7 @@ use strict;
 use warnings;
 
 package App::Cmd::ArgProcessor;
-$App::Cmd::ArgProcessor::VERSION = '0.326';
+$App::Cmd::ArgProcessor::VERSION = '0.327';
 # ABSTRACT: App::Cmd-specific wrapper for Getopt::Long::Descriptive
 
 sub _process_args {
@@ -35,7 +35,7 @@ App::Cmd::ArgProcessor - App::Cmd-specific wrapper for Getopt::Long::Descriptive
 
 =head1 VERSION
 
-version 0.326
+version 0.327
 
 =head1 AUTHOR
 
@@ -43,7 +43,7 @@ Ricardo Signes <rjbs@cpan.org>
 
 =head1 COPYRIGHT AND LICENSE
 
-This software is copyright (c) 2014 by Ricardo Signes.
+This software is copyright (c) 2015 by Ricardo Signes.
 
 This is free software; you can redistribute it and/or modify it under
 the same terms as the Perl 5 programming language system itself.
@@ -2,7 +2,7 @@ use strict;
 use warnings;
 
 package App::Cmd::Command::commands;
-$App::Cmd::Command::commands::VERSION = '0.326';
+$App::Cmd::Command::commands::VERSION = '0.327';
 use App::Cmd::Command;
 BEGIN { our @ISA = 'App::Cmd::Command' };
 
@@ -29,11 +29,6 @@ sub execute {
 
   my $target = $opt->stderr ? *STDERR : *STDOUT;
 
-  local $@;
-  eval { print { $target } $self->app->_usage_text . "\n" };
-
-  print { $target } "Available commands:\n\n";
-
   my @primary_commands =
     grep { $_ ne 'version' }
     map { ($_->command_names)[0] }
@@ -102,7 +97,7 @@ App::Cmd::Command::commands - list the application's commands
 
 =head1 VERSION
 
-version 0.326
+version 0.327
 
 =head1 DESCRIPTION
 
@@ -136,7 +131,7 @@ Ricardo Signes <rjbs@cpan.org>
 
 =head1 COPYRIGHT AND LICENSE
 
-This software is copyright (c) 2014 by Ricardo Signes.
+This software is copyright (c) 2015 by Ricardo Signes.
 
 This is free software; you can redistribute it and/or modify it under
 the same terms as the Perl 5 programming language system itself.
@@ -2,7 +2,7 @@ use strict;
 use warnings;
 
 package App::Cmd::Command::help;
-$App::Cmd::Command::help::VERSION = '0.326';
+$App::Cmd::Command::help::VERSION = '0.327';
 use App::Cmd::Command;
 BEGIN { our @ISA = 'App::Cmd::Command'; }
 
@@ -86,21 +86,9 @@ sub execute {
   my ($self, $opts, $args) = @_;
 
   if (!@$args) {
-    my $usage = $self->app->usage->text;
-    my $command = $0;
+    print $self->app->usage->text . "\n";
 
-    # chars normally used to describe options
-    my $opt_descriptor_chars = qr/[\[\]<>\(\)]/;
-
-    if ($usage =~ /^(.+?) \s* (?: $opt_descriptor_chars | $ )/x) {
-      # try to match subdispatchers too
-      $command = $1;
-    }
-
-    # evil hack ;-)
-    bless
-      $self->app->{usage} = sub { return "$command help <command>\n" }
-      => "Getopt::Long::Descriptive::Usage";
+    print "Available commands:\n\n";
 
     $self->app->execute_command( $self->app->_prepare_command("commands") );
   } else {
@@ -133,7 +121,7 @@ App::Cmd::Command::help - display a command's help screen
 
 =head1 VERSION
 
-version 0.326
+version 0.327
 
 =head1 DESCRIPTION
 
@@ -214,7 +202,7 @@ Ricardo Signes <rjbs@cpan.org>
 
 =head1 COPYRIGHT AND LICENSE
 
-This software is copyright (c) 2014 by Ricardo Signes.
+This software is copyright (c) 2015 by Ricardo Signes.
 
 This is free software; you can redistribute it and/or modify it under
 the same terms as the Perl 5 programming language system itself.
@@ -2,7 +2,7 @@ use strict;
 use warnings;
 
 package App::Cmd::Command::version;
-$App::Cmd::Command::version::VERSION = '0.326';
+$App::Cmd::Command::version::VERSION = '0.327';
 use App::Cmd::Command;
 BEGIN { our @ISA = 'App::Cmd::Command'; }
 
@@ -48,7 +48,7 @@ App::Cmd::Command::version - display an app's version
 
 =head1 VERSION
 
-version 0.326
+version 0.327
 
 =head1 DESCRIPTION
 
@@ -62,7 +62,7 @@ Ricardo Signes <rjbs@cpan.org>
 
 =head1 COPYRIGHT AND LICENSE
 
-This software is copyright (c) 2014 by Ricardo Signes.
+This software is copyright (c) 2015 by Ricardo Signes.
 
 This is free software; you can redistribute it and/or modify it under
 the same terms as the Perl 5 programming language system itself.
@@ -2,7 +2,7 @@ use strict;
 use warnings;
 
 package App::Cmd::Command;
-$App::Cmd::Command::VERSION = '0.326';
+$App::Cmd::Command::VERSION = '0.327';
 use App::Cmd::ArgProcessor;
 BEGIN { our @ISA = 'App::Cmd::ArgProcessor' };
 
@@ -260,7 +260,7 @@ App::Cmd::Command - a base class for App::Cmd commands
 
 =head1 VERSION
 
-version 0.326
+version 0.327
 
 =head1 METHODS
 
@@ -366,7 +366,7 @@ Ricardo Signes <rjbs@cpan.org>
 
 =head1 COPYRIGHT AND LICENSE
 
-This software is copyright (c) 2014 by Ricardo Signes.
+This software is copyright (c) 2015 by Ricardo Signes.
 
 This is free software; you can redistribute it and/or modify it under
 the same terms as the Perl 5 programming language system itself.
@@ -1,7 +1,7 @@
 use strict;
 use warnings;
 package App::Cmd::Plugin;
-$App::Cmd::Plugin::VERSION = '0.326';
+$App::Cmd::Plugin::VERSION = '0.327';
 # ABSTRACT: a plugin for App::Cmd commands
 
 sub _faux_curried_method {
@@ -27,7 +27,7 @@ App::Cmd::Plugin - a plugin for App::Cmd commands
 
 =head1 VERSION
 
-version 0.326
+version 0.327
 
 =head1 AUTHOR
 
@@ -35,7 +35,7 @@ Ricardo Signes <rjbs@cpan.org>
 
 =head1 COPYRIGHT AND LICENSE
 
-This software is copyright (c) 2014 by Ricardo Signes.
+This software is copyright (c) 2015 by Ricardo Signes.
 
 This is free software; you can redistribute it and/or modify it under
 the same terms as the Perl 5 programming language system itself.
@@ -1,7 +1,7 @@
 use strict;
 use warnings;
 package App::Cmd::Setup;
-$App::Cmd::Setup::VERSION = '0.326';
+$App::Cmd::Setup::VERSION = '0.327';
 # ABSTRACT: helper for setting up App::Cmd classes
 
 #pod =head1 OVERVIEW
@@ -214,7 +214,7 @@ App::Cmd::Setup - helper for setting up App::Cmd classes
 
 =head1 VERSION
 
-version 0.326
+version 0.327
 
 =head1 OVERVIEW
 
@@ -285,7 +285,7 @@ Ricardo Signes <rjbs@cpan.org>
 
 =head1 COPYRIGHT AND LICENSE
 
-This software is copyright (c) 2014 by Ricardo Signes.
+This software is copyright (c) 2015 by Ricardo Signes.
 
 This is free software; you can redistribute it and/or modify it under
 the same terms as the Perl 5 programming language system itself.
@@ -2,7 +2,7 @@ use strict;
 use warnings;
 
 package App::Cmd::Simple;
-$App::Cmd::Simple::VERSION = '0.326';
+$App::Cmd::Simple::VERSION = '0.327';
 use App::Cmd::Command;
 BEGIN { our @ISA = 'App::Cmd::Command' }
 
@@ -213,7 +213,7 @@ App::Cmd::Simple - a helper for building one-command App::Cmd applications
 
 =head1 VERSION
 
-version 0.326
+version 0.327
 
 =head1 SYNOPSIS
 
@@ -313,7 +313,7 @@ Ricardo Signes <rjbs@cpan.org>
 
 =head1 COPYRIGHT AND LICENSE
 
-This software is copyright (c) 2014 by Ricardo Signes.
+This software is copyright (c) 2015 by Ricardo Signes.
 
 This is free software; you can redistribute it and/or modify it under
 the same terms as the Perl 5 programming language system itself.
@@ -2,7 +2,7 @@ use strict;
 use warnings;
 
 package App::Cmd::Subdispatch::DashedStyle;
-$App::Cmd::Subdispatch::DashedStyle::VERSION = '0.326';
+$App::Cmd::Subdispatch::DashedStyle::VERSION = '0.327';
 use App::Cmd::Subdispatch;
 BEGIN { our @ISA = 'App::Cmd::Subdispatch' };
 
@@ -33,15 +33,6 @@ sub get_command {
   }
 }
 
-#pod =for Pod::Coverage prepare_default_command
-#pod
-#pod =cut
-
-sub prepare_default_command {
-  my ( $self, $opt, @args ) = @_;
-  $self->_prepare_command( "help" );
-}
-
 #pod =method opt_spec
 #pod
 #pod A version of C<opt_spec> that calculates the getopt specification from the
@@ -84,7 +75,7 @@ App::Cmd::Subdispatch::DashedStyle - "app cmd --subcmd" style subdispatching
 
 =head1 VERSION
 
-version 0.326
+version 0.327
 
 =head1 METHODS
 
@@ -102,15 +93,13 @@ style:
 A version of C<opt_spec> that calculates the getopt specification from the
 subcommands.
 
-=for Pod::Coverage prepare_default_command
-
 =head1 AUTHOR
 
 Ricardo Signes <rjbs@cpan.org>
 
 =head1 COPYRIGHT AND LICENSE
 
-This software is copyright (c) 2014 by Ricardo Signes.
+This software is copyright (c) 2015 by Ricardo Signes.
 
 This is free software; you can redistribute it and/or modify it under
 the same terms as the Perl 5 programming language system itself.
@@ -2,7 +2,7 @@ use strict;
 use warnings;
 
 package App::Cmd::Subdispatch;
-$App::Cmd::Subdispatch::VERSION = '0.326';
+$App::Cmd::Subdispatch::VERSION = '0.327';
 use App::Cmd;
 use App::Cmd::Command;
 BEGIN { our @ISA = qw(App::Cmd::Command App::Cmd) } 
@@ -50,7 +50,7 @@ sub prepare {
     if (@args) {
       return $self->_bad_command(undef, $opt, @sub_args);
     } else {
-      return $self->prepare_default_command($opt, @sub_args);
+      return $self->_prepare_default_command($opt, @sub_args);
     }
   }
 }
@@ -110,7 +110,7 @@ App::Cmd::Subdispatch - an App::Cmd::Command that is also an App::Cmd
 
 =head1 VERSION
 
-version 0.326
+version 0.327
 
 =head1 METHODS
 
@@ -148,7 +148,7 @@ Ricardo Signes <rjbs@cpan.org>
 
 =head1 COPYRIGHT AND LICENSE
 
-This software is copyright (c) 2014 by Ricardo Signes.
+This software is copyright (c) 2015 by Ricardo Signes.
 
 This is free software; you can redistribute it and/or modify it under
 the same terms as the Perl 5 programming language system itself.
@@ -1,7 +1,7 @@
 use strict;
 use warnings;
 package App::Cmd::Tester::CaptureExternal;
-$App::Cmd::Tester::CaptureExternal::VERSION = '0.326';
+$App::Cmd::Tester::CaptureExternal::VERSION = '0.327';
 use parent 'App::Cmd::Tester';
 use Capture::Tiny 0.13 qw/capture/;
 
@@ -81,7 +81,7 @@ App::Cmd::Tester::CaptureExternal - Extends App::Cmd::Tester to capture from ext
 
 =head1 VERSION
 
-version 0.326
+version 0.327
 
 =head1 SYNOPSIS
 
@@ -122,7 +122,7 @@ Ricardo Signes <rjbs@cpan.org>
 
 =head1 COPYRIGHT AND LICENSE
 
-This software is copyright (c) 2014 by Ricardo Signes.
+This software is copyright (c) 2015 by Ricardo Signes.
 
 This is free software; you can redistribute it and/or modify it under
 the same terms as the Perl 5 programming language system itself.
@@ -1,7 +1,7 @@
 use strict;
 use warnings;
 package App::Cmd::Tester;
-$App::Cmd::Tester::VERSION = '0.326';
+$App::Cmd::Tester::VERSION = '0.327';
 # ABSTRACT: for capturing the result of running an app
 
 #pod =head1 SYNOPSIS
@@ -133,7 +133,7 @@ sub _run_with_capture {
 
 {
   package App::Cmd::Tester::Result;
-$App::Cmd::Tester::Result::VERSION = '0.326';
+$App::Cmd::Tester::Result::VERSION = '0.327';
 sub new {
     my ($class, $arg) = @_;
     bless $arg => $class;
@@ -149,7 +149,7 @@ sub new {
 
 {
   package App::Cmd::Tester::Exited;
-$App::Cmd::Tester::Exited::VERSION = '0.326';
+$App::Cmd::Tester::Exited::VERSION = '0.327';
 sub throw {
     my ($class, $code) = @_;
     $code = 0 unless defined $code;
@@ -172,7 +172,7 @@ App::Cmd::Tester - for capturing the result of running an app
 
 =head1 VERSION
 
-version 0.326
+version 0.327
 
 =head1 SYNOPSIS
 
@@ -234,7 +234,7 @@ Ricardo Signes <rjbs@cpan.org>
 
 =head1 COPYRIGHT AND LICENSE
 
-This software is copyright (c) 2014 by Ricardo Signes.
+This software is copyright (c) 2015 by Ricardo Signes.
 
 This is free software; you can redistribute it and/or modify it under
 the same terms as the Perl 5 programming language system itself.
@@ -188,7 +188,7 @@
 #pod
 #pod =item *
 #pod
-#pod Delay using large modules using L<autouse>, L<Class::Autouse> or C<require> in
+#pod Delay using large modules using L<Class::Load>, L<Module::Runtime> or C<require> in
 #pod your commands to save memory and make startup faster. Since only one of these
 #pod commands will be run anyway, there's no need to preload the requirements for
 #pod all of them.
@@ -338,7 +338,7 @@ App::Cmd::Tutorial - getting started with App::Cmd
 
 =head1 VERSION
 
-version 0.326
+version 0.327
 
 =head1 DESCRIPTION
 
@@ -529,7 +529,7 @@ way of specifying global options.
 
 =item *
 
-Delay using large modules using L<autouse>, L<Class::Autouse> or C<require> in
+Delay using large modules using L<Class::Load>, L<Module::Runtime> or C<require> in
 your commands to save memory and make startup faster. Since only one of these
 commands will be run anyway, there's no need to preload the requirements for
 all of them.
@@ -667,7 +667,7 @@ Ricardo Signes <rjbs@cpan.org>
 
 =head1 COPYRIGHT AND LICENSE
 
-This software is copyright (c) 2014 by Ricardo Signes.
+This software is copyright (c) 2015 by Ricardo Signes.
 
 This is free software; you can redistribute it and/or modify it under
 the same terms as the Perl 5 programming language system itself.
@@ -3,7 +3,7 @@ use warnings;
 use 5.006;
 
 package App::Cmd;
-$App::Cmd::VERSION = '0.326';
+$App::Cmd::VERSION = '0.327';
 use App::Cmd::ArgProcessor;
 BEGIN { our @ISA = 'App::Cmd::ArgProcessor' };
 # ABSTRACT: write command line apps with less suffering
@@ -691,7 +691,7 @@ App::Cmd - write command line apps with less suffering
 
 =head1 VERSION
 
-version 0.326
+version 0.327
 
 =head1 SYNOPSIS
 
@@ -960,7 +960,7 @@ Ricardo Signes <rjbs@cpan.org>
 
 =head1 COPYRIGHT AND LICENSE
 
-This software is copyright (c) 2014 by Ricardo Signes.
+This software is copyright (c) 2015 by Ricardo Signes.
 
 This is free software; you can redistribute it and/or modify it under
 the same terms as the Perl 5 programming language system itself.
@@ -3,7 +3,7 @@
 use strict;
 use warnings;
 
-# This test was generated by Dist::Zilla::Plugin::Test::ReportPrereqs 0.019
+# This test was generated by Dist::Zilla::Plugin::Test::ReportPrereqs 0.020
 
 use Test::More tests => 1;
 
@@ -150,9 +150,16 @@ for my $phase ( qw(configure build test runtime develop other) ) {
             my $ml = _max( map { length $_->[0] } @reports );
             my $wl = _max( map { length $_->[1] } @reports );
             my $hl = _max( map { length $_->[2] } @reports );
-            splice @reports, 1, 0, ["-" x $ml, "-" x $wl, "-" x $hl];
 
-            push @full_reports, map { sprintf("    %*s %*s %*s\n", -$ml, $_->[0], $wl, $_->[1], $hl, $_->[2]) } @reports;
+            if ($type eq 'modules') {
+                splice @reports, 1, 0, ["-" x $ml, "", "-" x $hl];
+                push @full_reports, map { sprintf("    %*s %*s\n", -$ml, $_->[0], $hl, $_->[2]) } @reports;
+            }
+            else {
+                splice @reports, 1, 0, ["-" x $ml, "-" x $wl, "-" x $hl];
+                push @full_reports, map { sprintf("    %*s %*s %*s\n", -$ml, $_->[0], $wl, $_->[1], $hl, $_->[2]) } @reports;
+            }
+
             push @full_reports, "\n";
         }
     }
@@ -5,6 +5,8 @@ use warnings;
 
 use Test::More 'no_plan';
 
+use Test::Fatal;
+
 use lib 't/lib';
 
 BEGIN { use_ok('Test::MyCmd2') };
@@ -26,3 +28,7 @@ is_deeply( $cmd->app->global_options, { moose => 1 }, "subdispatcher global opti
 is_deeply( \@args, [] );
 
 is_deeply( $opt, { foo => => 1 } );
+
+is( exception { $app->prepare_command( 'foo' ) },
+    undef,
+    'run default subcommand for command' );
@@ -4,7 +4,7 @@ use Test::More tests => 2;
 
 note 'Checking Changes';
 my $changes_file = 'Changes';
-my $newver = '0.326';
+my $newver = '0.327';
 my $trial_token = '-TRIAL';
 
 SKIP: {