The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
Changes 05
META.yml 22
inc/Module/Install/Base.pm 11
inc/Module/Install/Can.pm 11
inc/Module/Install/Compiler.pm 11
inc/Module/Install/Fetch.pm 11
inc/Module/Install/Makefile.pm 11
inc/Module/Install/Metadata.pm 11
inc/Module/Install/Share.pm 11
inc/Module/Install/Win32.pm 11
inc/Module/Install/WriteAll.pm 11
inc/Module/Install.pm 11
lib/Module/AutoInstall.pm 629
lib/Module/Install/Admin/Bundle.pm 11
lib/Module/Install/Admin/Compiler.pm 11
lib/Module/Install/Admin/Find.pm 11
lib/Module/Install/Admin/Include.pm 11
lib/Module/Install/Admin/Makefile.pm 11
lib/Module/Install/Admin/Manifest.pm 11
lib/Module/Install/Admin/Metadata.pm 11
lib/Module/Install/Admin/ScanDeps.pm 11
lib/Module/Install/Admin/WriteAll.pm 11
lib/Module/Install/Admin.pm 11
lib/Module/Install/AutoInstall.pm 11
lib/Module/Install/Base.pm 11
lib/Module/Install/Bundle.pm 11
lib/Module/Install/Can.pm 11
lib/Module/Install/Compiler.pm 11
lib/Module/Install/DSL.pm 11
lib/Module/Install/Deprecated.pm 11
lib/Module/Install/External.pm 11
lib/Module/Install/Fetch.pm 11
lib/Module/Install/Include.pm 11
lib/Module/Install/Inline.pm 11
lib/Module/Install/MakeMaker.pm 11
lib/Module/Install/Makefile.pm 11
lib/Module/Install/Metadata.pm 11
lib/Module/Install/PAR.pm 11
lib/Module/Install/Run.pm 11
lib/Module/Install/Scripts.pm 11
lib/Module/Install/Share.pm 11
lib/Module/Install/Win32.pm 11
lib/Module/Install/With.pm 11
lib/Module/Install/WriteAll.pm 11
lib/Module/Install.pm 11
lib/inc/Module/Install/DSL.pm 11
lib/inc/Module/Install.pm 11
t/03_autoinstall.t 11
t/lib/Test.pm 11
49 files changed (This is a version diff) 5482
@@ -1,6 +1,11 @@
 Changes for Perl extension Module-Install
 
+0.87 Thu  7 May 2009
+	- The other half of MSTROUT's changes
+        - A note mentioning to bug MSTROUT if you run into problems
+
 0.86 Sat  2 May 2009
+	- Add --alldeps option to say yes to optional dependencies (MSTROUT)
 	- Alter _check_lock to test the CPAN version and use
 	  PERL5_CPAN_IS_RUNNING if new enough so we don't accidentally
 	  configure CPAN unless it's so old we have no choice (MSTROUT)
@@ -10,7 +10,7 @@ configure_requires:
   ExtUtils::MakeMaker: 6.42
   YAML::Tiny: 1.33
 distribution_type: module
-generated_by: 'Module::Install version 0.86'
+generated_by: 'Module::Install version 0.87'
 license: perl
 meta-spec:
   url: http://module-build.sourceforge.net/META-spec-v1.4.html
@@ -39,4 +39,4 @@ resources:
   ChangeLog: http://fisheye2.atlassian.com/changelog/cpan/trunk/Module-Install
   license: http://dev.perl.org/licenses/
   repository: http://svn.ali.as/cpan/trunk/Module-Install
-version: 0.86
+version: 0.87
@@ -4,7 +4,7 @@ package Module::Install::Base;
 use strict 'vars';
 use vars qw{$VERSION};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 }
 
 # Suspend handler for "redefined" warnings
@@ -9,7 +9,7 @@ use ExtUtils::MakeMaker ();
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -7,7 +7,7 @@ use File::Basename ();
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -6,7 +6,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -7,7 +7,7 @@ use ExtUtils::MakeMaker ();
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -6,7 +6,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	@ISA     = qw{Module::Install::Base};
 	$ISCORE  = 1;
 }
@@ -6,7 +6,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -6,7 +6,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	@ISA     = qw{Module::Install::Base};
 	$ISCORE  = 1;
 }
@@ -6,7 +6,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	@ISA     = qw{Module::Install::Base};
 	$ISCORE  = 1;
 }
@@ -28,7 +28,7 @@ BEGIN {
 	# This is not enforced yet, but will be some time in the next few
 	# releases once we can make sure it won't clash with custom
 	# Module::Install extensions.
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 
 	# Storage for the pseudo-singleton
 	$MAIN    = undef;
@@ -17,7 +17,9 @@ my %FeatureMap = (
 
 # various lexical flags
 my ( @Missing, @Existing,  %DisabledTests, $UnderCPAN,     $HasCPANPLUS );
-my ( $Config,  $CheckOnly, $SkipInstall,   $AcceptDefault, $TestOnly );
+my (
+    $Config, $CheckOnly, $SkipInstall, $AcceptDefault, $TestOnly, $AllDeps
+);
 my ( $PostambleActions, $PostambleUsed );
 
 # See if it's a testing or non-interactive session
@@ -72,6 +74,9 @@ sub _init {
         elsif ( $arg =~ /^--test(?:only)?$/ ) {
             $TestOnly = 1;
         }
+        elsif ( $arg =~ /^--all(?:deps)?$/ ) {
+            $AllDeps = 1;
+        }
     }
 }
 
@@ -191,6 +196,7 @@ sub import {
             and (
                 $CheckOnly
                 or ($mandatory and $UnderCPAN)
+                or $AllDeps
                 or _prompt(
                     qq{==> Auto-install the }
                       . ( @required / 2 )
@@ -253,14 +259,15 @@ END_MESSAGE
 sub _check_lock {
     return unless @Missing or @_;
 
+    my $cpan_env = $ENV{PERL5_CPAN_IS_RUNNING};
+
     if ($ENV{PERL5_CPANPLUS_IS_RUNNING}) {
-        my $thing = $ENV{PERL5_CPAN_IS_RUNNING} ? 'CPAN' : 'CPANPLUS';
-        return _running_under($thing);
+        return _running_under($cpan_env ? 'CPAN' : 'CPANPLUS');
     }
 
     require CPAN;
 
-    if ($CPAN::VERSION > '1.89' && $ENV{PERL5_CPAN_IS_RUNNING}) {
+    if ($CPAN::VERSION > '1.89' && $cpan_env) {
         return _running_under('CPAN');
     }
 
@@ -989,8 +996,16 @@ This may cause inconsistent behaviours in pathetic situations.
 
 B<Module::AutoInstall> uses a single environment variable,
 C<PERL_AUTOINSTALL>.  It is taken as the command line argument
-passed to F<Makefile.PL>; you could set it to either C<--defaultdeps> or
-C<--skipdeps> to avoid interactive behaviour.
+passed to F<Makefile.PL>; you could set it to C<--alldeps>, C<--defaultdeps>
+or C<--skipdeps> to avoid all interactive behaviour.
+
+C<--alldeps> will install all features, while
+C<--defaultdeps> will only install features for which the default answer is
+'y'.
+
+C<--skipdeps> will refrain from loading L<CPAN> and not install anything, unless
+you're running under L<CPAN> or L<CPANPLUS>, in which case required dependencies
+will be installed.
 
 It also read from the C<PERL_EXTUTILS_AUTOINSTALL> environment variable if
 C<PERL_AUTOINSTALL> is not defined.
@@ -1008,6 +1023,14 @@ Audrey Tang E<lt>autrijus@autrijus.orgE<gt>
 
 Adam Kennedy E<lt>adamk@cpan.orgE<gt>
 
+Matt S Trout E<lt>mst@shadowcat.co.uE<gt>
+
+=head1 IF THIS BREAKS
+
+Report a ticket to bugs-Module-Install <at> rt.cpan.org and cc Matt
+- I appear to have volunteered as primary maintainer for this stuff so
+if you run into any problems please tell me
+
 =head1 COPYRIGHT
 
 Copyright 2001, 2002, 2003, 2004, 2005, 2006 by Audrey Tang
@@ -5,7 +5,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	@ISA     = qw{Module::Install::Base};
 }
 
@@ -7,7 +7,7 @@ use Devel::PPPort ();
 
 use vars qw{$VERSION @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	@ISA     = qw{Module::Install::Base};
 }
 
@@ -5,7 +5,7 @@ use File::Find ();
 use Module::Install::Base ();
 use vars qw{$VERSION @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	@ISA = qw(Module::Install::Base);
 }
 
@@ -5,7 +5,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	@ISA     = qw{Module::Install::Base};
 }
 
@@ -6,7 +6,7 @@ use ExtUtils::MakeMaker ();
 
 use vars qw{$VERSION @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	@ISA     = qw{Module::Install::Base};
 }
 
@@ -5,7 +5,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	@ISA     = qw{Module::Install::Base};
 }
 
@@ -6,7 +6,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	@ISA     = 'Module::Install::Base';
 }
 
@@ -4,7 +4,7 @@ use strict;
 use Module::Install::Base ();
 use vars qw{$VERSION @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	@ISA = qw(Module::Install::Base);
 }
 
@@ -5,7 +5,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	@ISA     = qw{Module::Install::Base};
 }
 
@@ -6,7 +6,7 @@ use inc::Module::Install ();
 
 use vars qw{$VERSION @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	@ISA     = qw{Module::Install};
 }
 
@@ -5,7 +5,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -3,7 +3,7 @@ package Module::Install::Base;
 use strict 'vars';
 use vars qw{$VERSION};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 }
 
 # Suspend handler for "redefined" warnings
@@ -9,7 +9,7 @@ use File::Basename ();
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -8,7 +8,7 @@ use ExtUtils::MakeMaker ();
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -6,7 +6,7 @@ use File::Basename ();
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -3,7 +3,7 @@ package Module::Install::DSL;
 use strict;
 use vars qw{$VERSION $ISCORE};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	$ISCORE  = 1;
 	*inc::Module::Install::DSL::VERSION = *VERSION;
 	@inc::Module::Install::DSL::ISA     = __PACKAGE__;
@@ -5,7 +5,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -7,7 +7,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -5,7 +5,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -5,7 +5,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -5,7 +5,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -6,7 +6,7 @@ use ExtUtils::MakeMaker ();
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -6,7 +6,7 @@ use ExtUtils::MakeMaker ();
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -5,7 +5,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	@ISA     = qw{Module::Install::Base};
 	$ISCORE  = 1;
 }
@@ -5,7 +5,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -5,7 +5,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -5,7 +5,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -5,7 +5,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -5,7 +5,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	@ISA     = qw{Module::Install::Base};
 	$ISCORE  = 1;
 }
@@ -7,7 +7,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION $ISCORE @ISA};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	$ISCORE  = 1;
 	@ISA     = qw{Module::Install::Base};
 }
@@ -5,7 +5,7 @@ use Module::Install::Base;
 
 use vars qw{$VERSION @ISA $ISCORE};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	@ISA     = qw{Module::Install::Base};
 	$ISCORE  = 1;
 }
@@ -27,7 +27,7 @@ BEGIN {
 	# This is not enforced yet, but will be some time in the next few
 	# releases once we can make sure it won't clash with custom
 	# Module::Install extensions.
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 
 	# Storage for the pseudo-singleton
 	$MAIN    = undef;
@@ -18,7 +18,7 @@ BEGIN {
 	# version an author currently has installed.
 	# This allows it to implement any back-compatibility features
 	# it may want or need to.
-	$VERSION = '0.86';	
+	$VERSION = '0.87';	
 }
 
 if ( -d './inc' ) {
@@ -18,7 +18,7 @@ BEGIN {
 	# version an author currently has installed.
 	# This allows it to implement any back-compatibility features
 	# it may want or need to.
-	$VERSION = '0.86';	
+	$VERSION = '0.87';	
 }
 
 if ( -d './inc' ) {
@@ -9,7 +9,7 @@ BEGIN {
 use Test::More;
 BEGIN {
 	if ( $ENV{RELEASE_TESTING} ) {
-		plan( tests => 4 );
+		plan( tests => 6 );
 	} else {
 		plan( skip_all => 'Skipping dangerous test' );
 		exit(0);
@@ -8,7 +8,7 @@ use Config;
 
 use vars qw{$VERSION @ISA @EXPORT};
 BEGIN {
-	$VERSION = '0.86';
+	$VERSION = '0.87';
 	@ISA     = 'Exporter';
 	@EXPORT  = qw{
 		create_dist