Alien-liburing
view release on metacpan or search on metacpan
inc/Devel/CheckOS.pm view on Meta::CPAN
die($@) if($@);
if (!$re_Devel) {
my $case_flag = File::Spec->case_tolerant ? '(?i)' : '';
$re_Devel = qr/$case_flag ^Devel$/x;
$re_AssertOS = qr/$case_flag ^AssertOS$/x;
}
# sort by mtime, so oldest last
my @modules = sort {
(stat($a->{file}))[9] <=> (stat($b->{file}))[9]
} map {
my (undef, $dir_part, $file_part) = File::Spec->splitpath($_);
$file_part =~ s/\.pm$//;
my (@dirs) = grep {+length} File::Spec->splitdir($dir_part);
foreach my $i (reverse 1..$#dirs) {
next unless $dirs[$i] =~ $re_AssertOS
&& $dirs[$i - 1] =~ $re_Devel;
splice @dirs, 0, $i + 1;
last;
}
( run in 0.925 second using v1.01-cache-2.11-cpan-49f99fa48dc )