Codebase list libdist-zilla-plugin-test-reportprereqs-perl / 053ba5e
remove List::Util as a dependency David Golden 9 years ago
3 changed file(s) with 15 addition(s) and 11 deletion(s). Raw diff Collapse all Expand all
33
44 [Changed]
55
6 - Removes Scalar::Util as a prerequisite; fixes an unintialized value
7 warning when CPAN::Meta isn't installed
6 - Removes List::Util and Scalar::Util as a prerequisite for better
7 backward compatibility; also fixes an unintialized value warning when
8 CPAN::Meta isn't installed
89
910 0.017 2014-07-30 16:48:36-04:00 America/New_York
1011
1717 requires "ExtUtils::MakeMaker" => "0";
1818 requires "File::Spec" => "0";
1919 requires "File::pushd" => "0";
20 requires "List::Util" => "0";
2120 requires "Path::Class" => "0";
2221 requires "Test::Harness" => "0";
2322 requires "Test::More" => "0.96";
4747 'Test::More' => 0,
4848 'ExtUtils::MakeMaker' => 0,
4949 'File::Spec' => 0,
50 'List::Util' => 0,
5150 );
5251
5352 $self->zilla->register_prereqs(
197196
198197 use ExtUtils::MakeMaker;
199198 use File::Spec;
200 use List::Util qw/max first/;
201199
202200 # from $version::LAX
203201 my $lax_version_re =
220218 # Verify requirements?
221219 my $DO_VERIFY_PREREQS = INSERT_VERIFY_PREREQS_CONFIG;
222220
221 sub _max {
222 my $max = shift;
223 $max = ( $_ > $max ) ? $_ : $max for @_;
224 return $max;
225 }
226
223227 sub _merge_prereqs {
224228 my ($collector, $prereqs) = @_;
225229
266270 );
267271
268272 # Add dynamic prereqs to the included modules list (if we can)
269 my $source = first { -f } 'MYMETA.json', 'MYMETA.yml';
273 my ($source) = grep { -f } 'MYMETA.json', 'MYMETA.yml';
270274 if ( $source && $HAS_CPAN_META ) {
271275 if ( my $meta = eval { CPAN::Meta->load_file($source) } ) {
272276 $full_prereqs = _merge_prereqs($full_prereqs, $meta->prereqs);
292296
293297 for my $mod ( sort keys %{ $req_hash->{$phase}{$type} } ) {
294298 next if $mod eq 'perl';
295 next if first { $_ eq $mod } @exclude;
299 next if grep { $_ eq $mod } @exclude;
296300
297301 my $file = $mod;
298302 $file =~ s{::}{/}g;
299303 $file .= ".pm";
300 my $prefix = first { -e File::Spec->catfile($_, $file) } @INC;
304 my ($prefix) = grep { -e File::Spec->catfile($_, $file) } @INC;
301305
302306 my $want = $req_hash->{$phase}{$type}{$mod};
303307 $want = "undef" unless defined $want;
331335 if ( @reports ) {
332336 push @full_reports, "=== $title ===\n\n";
333337
334 my $ml = max map { length $_->[0] } @reports;
335 my $wl = max map { length $_->[1] } @reports;
336 my $hl = max map { length $_->[2] } @reports;
338 my $ml = _max( map { length $_->[0] } @reports );
339 my $wl = _max( map { length $_->[1] } @reports );
340 my $hl = _max( map { length $_->[2] } @reports );
337341 splice @reports, 1, 0, ["-" x $ml, "-" x $wl, "-" x $hl];
338342
339343 push @full_reports, map { sprintf(" %*s %*s %*s\n", -$ml, $_->[0], $wl, $_->[1], $hl, $_->[2]) } @reports;