Author: joeyh Date: 2005-03-25 17:03:01 +0000 (Fri, 25 Mar 2005) New Revision: 657 Modified: sarge-checks/checklist Log: - e robust when madison segfaults - deal better with arches that are not keeping up in testing (like arm) Modified: sarge-checks/checklist ==================================================================--- sarge-checks/checklist 2005-03-25 15:36:19 UTC (rev 656) +++ sarge-checks/checklist 2005-03-25 17:03:01 UTC (rev 657) @@ -64,15 +64,22 @@ } } - my $maddy=`madison -s testing ''$package''`; + my @maddy; + for (1..5) { + @maddy=`madison -s testing ''$package''`; + if ($? & 127) { + # segfult. good old newraff.. + next; + } + last; + } if ($? & 127) { - # good old newraff.. - record($package, "<em>[madison segfaulted]</em>", $id); + record($package, "<em>[madison segfaulted 5 times in a row.. Medic!]</em>", $id); } elsif ($? >> 8 != 0 && $? >> 8 != 1) { record($package, "<em>[madison exited with ".($? >> 8)."]</em>", $id); } - if (! length $maddy) { + if (! @maddy) { next; } @@ -81,16 +88,20 @@ $unfixed++; } else { - my @fields = split(/\s*\|\s*/, $maddy); - my $havver=$fields[1]; - $version=~s/\s+//; # strip whitespace - my $cmp=system("dpkg --compare-versions ''$havver'' ''>='' ''$version''"); - if ($cmp != 0) { - if ($html) { - $havver=''<a href="http://bjorn.haxx.se/debian/testing.pl?package=''.uri_escape($package).''">''.$havver.''</a>''; + foreach my $maddy (@maddy) { + my @fields = split(/\s*\|\s*/, $maddy); + my $havver=$fields[1]; + my $arches=$fields[3]; + $version=~s/\s+//; # strip whitespace + $arches=~s/\s+$//; + my $cmp=system("dpkg --compare-versions ''$havver'' ''>='' ''$version''"); + if ($cmp != 0) { + if ($html) { + $havver=''<a href="http://bjorn.haxx.se/debian/testing.pl?package=''.uri_escape($package).''">''.$havver.''</a>''; + } + record($package, "$version needed, have $havver".(@maddy > 1 ? " [$arches]" : ""), $id); + $unprop++; } - record($package, "$version needed, have $havver", $id); - $unprop++; } } }