diff --git a/mozilla/webtools/bugzilla/.bzrrev b/mozilla/webtools/bugzilla/.bzrrev index 819c0faabfd..9da679d0071 100644 --- a/mozilla/webtools/bugzilla/.bzrrev +++ b/mozilla/webtools/bugzilla/.bzrrev @@ -1 +1 @@ -7088 \ No newline at end of file +7089 \ No newline at end of file diff --git a/mozilla/webtools/bugzilla/Bugzilla/Install/CPAN.pm b/mozilla/webtools/bugzilla/Bugzilla/Install/CPAN.pm index ad8470260f1..af50b52e41b 100644 --- a/mozilla/webtools/bugzilla/Bugzilla/Install/CPAN.pm +++ b/mozilla/webtools/bugzilla/Bugzilla/Install/CPAN.pm @@ -125,6 +125,12 @@ sub install_module { my ($name, $test) = @_; my $bzlib = BZ_LIB; + # Make Module::AutoInstall install all dependencies and never prompt. + local $ENV{PERL_AUTOINSTALL} = '--alldeps'; + # This makes Net::SSLeay not prompt the user, if it gets installed. + # It also makes any other MakeMaker prompts accept their defaults. + local $ENV{PERL_MM_USE_DEFAULT} = 1; + # Certain modules require special stuff in order to not prompt us. my $original_makepl = $CPAN::Config->{makepl_arg}; # This one's a regex in case we're doing Template::Plugin::GD and it @@ -135,12 +141,13 @@ sub install_module { elsif ($name eq 'XML::Twig') { $CPAN::Config->{makepl_arg} = "-n $original_makepl"; } - elsif ($name eq 'Net::LDAP') { - $CPAN::Config->{makepl_arg} .= " --skipdeps"; - } elsif ($name eq 'SOAP::Lite') { $CPAN::Config->{makepl_arg} .= " --noprompt"; } + # MIME-tools has a Module::Install that's too old to understand alldeps. + elsif ($name =~ /^MIME::/) { + $ENV{PERL_AUTOINSTALL} = '--defaultdeps'; + } my $module = CPAN::Shell->expand('Module', $name); print install_string('install_module', diff --git a/mozilla/webtools/bugzilla/Bugzilla/Install/Requirements.pm b/mozilla/webtools/bugzilla/Bugzilla/Install/Requirements.pm index 6223c954351..bb078e9b9f1 100644 --- a/mozilla/webtools/bugzilla/Bugzilla/Install/Requirements.pm +++ b/mozilla/webtools/bugzilla/Bugzilla/Install/Requirements.pm @@ -540,8 +540,9 @@ sub have_vers { eval "require $module;"; - # VERSION is provided by UNIVERSAL:: - my $vnum = eval { $module->VERSION } || -1; + # VERSION is provided by UNIVERSAL::, and can be called even if + # the module isn't loaded. + my $vnum = $module->VERSION || -1; # CGI's versioning scheme went 2.75, 2.751, 2.752, 2.753, 2.76 # That breaks the standard version tests, so we need to manually correct