X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FCatalyst%2FUtils.pm;h=245c7892d6459216f4dfa5ce80aea9f1f4a18275;hb=a526c982f02435e4592256848c679c473ea57b4b;hp=b053c6f92c26b2c094a157875c0df67069677a37;hpb=0f519d62e1948c0d56109abc0c419c51a3ba2de5;p=catagits%2FCatalyst-Runtime.git diff --git a/lib/Catalyst/Utils.pm b/lib/Catalyst/Utils.pm index b053c6f..245c789 100644 --- a/lib/Catalyst/Utils.pm +++ b/lib/Catalyst/Utils.pm @@ -9,7 +9,6 @@ use Carp qw/croak/; use Cwd; use Class::MOP; use String::RewritePrefix; -use List::MoreUtils qw/ any /; use namespace::clean; @@ -155,22 +154,35 @@ sub class2tempdir { return $tmpdir->stringify; } +=head2 home($class) + +Returns home directory for given class. + =head2 dist_indicator_file_list -Returns a list of files which can be tested to check if you're inside a checkout +Returns a list of files which can be tested to check if you're inside +a CPAN distribution which is not yet installed. -=cut +These are: -sub dist_indicator_file_list { - qw/ Makefile.PL Build.PL dist.init /; -} +=over -=head2 home($class) +=item Makefile.PL -Returns home directory for given class. +=item Build.PL + +=item dist.ini + +=item L + +=back =cut +sub dist_indicator_file_list { + qw{Makefile.PL Build.PL dist.ini cpanfile}; +} + sub home { my $class = shift; @@ -190,8 +202,7 @@ sub home { $home = $home->parent while $home =~ /b?lib$/; # only return the dir if it has a Makefile.PL or Build.PL or dist.ini - if (any { $_ } map { -f $home->file($_) } dist_indicator_file_list()) { - + if (grep { -f $home->file($_) } dist_indicator_file_list()) { # clean up relative path: # MyApp/script/.. -> MyApp