r13926 - in /scripts/qa/DebianQA: Archive.pm Common.pm Svn.pm
tincho-guest at users.alioth.debian.org
tincho-guest at users.alioth.debian.org
Fri Feb 1 03:06:00 UTC 2008
Author: tincho-guest
Date: Fri Feb 1 03:06:00 2008
New Revision: 13926
URL: http://svn.debian.org/wsvn/?sc=1&rev=13926
Log:
Archive.pm: Add control fields from unstable; changes data format.
Svn.pm: Split fields so they're easier to work on; changes data format.
Common.pm: Bump format version.
Modified:
scripts/qa/DebianQA/Archive.pm
scripts/qa/DebianQA/Common.pm
scripts/qa/DebianQA/Svn.pm
Modified: scripts/qa/DebianQA/Archive.pm
URL: http://svn.debian.org/wsvn/scripts/qa/DebianQA/Archive.pm?rev=13926&op=diff
==============================================================================
--- scripts/qa/DebianQA/Archive.pm (original)
+++ scripts/qa/DebianQA/Archive.pm Fri Feb 1 03:06:00 2008
@@ -79,8 +79,10 @@
}
}
}
+ $modified ||= (find_stamp(read_cache("consolidated", "", 0), "pkglist") >
+ find_stamp(read_cache("consolidated", "", 0), "archive"));
return unless($modified);
- info("Re-generating consolidated hash");
+ info("Re-generating archive consolidated hash");
my $pkgs = get_pkglist_hashref();
# retain lock, we need consistency
$data = read_cache("archive", "", 1);
@@ -90,7 +92,7 @@
foreach my $pkg (keys(%{$data->{$suite}})) {
next if($pkg =~ m#^/#);
next if(%$pkgs and not $pkgs->{$pkg});
- $g->{$pkg}{$suite} = $data->{$suite}{$pkg};
+ $g->{$pkg}{$suite} = $data->{$suite}{$pkg}{ver};
}
}
# Hash for comparing equivalent versions in different suites
@@ -105,8 +107,8 @@
incoming => 5,
new => 6,
unstable => 7,
- sid => 8,
- other => 9
+ sid => 7,
+ other => 8
);
foreach my $pkg (keys(%$g)) {
my @recent = sort( {
@@ -117,7 +119,14 @@
$g->{$pkg}{most_recent} = $g->{$pkg}{$recent[-1]};
$g->{$pkg}{most_recent_src} = $recent[-1];
}
- $data = update_cache("consolidated", $g, "archive", 1, 0);
+ # Get control data from unstable only
+ if($data->{unstable}) {
+ foreach my $pkg (keys(%$g)) {
+ $g->{$pkg}{control} = $data->{unstable}{$pkg} or next;
+ delete $g->{$pkg}{control}{ver};
+ }
+ }
+ $g = update_cache("consolidated", $g, "archive", 1, 0);
unlock_cache("archive");
return;
}
@@ -165,10 +174,26 @@
local $/ = "";
while(<$data>) {
s/\n\s+//gm;
- /^package:\s*(\S+)\s*$/mi or next;
- my $pkg = $1;
- /^version:\s*(\S+)\s*$/mi or next;
- $vers{$pkg} = $1;
+ my($pkg) = /^package:\s*(\S+)\s*$/mi or next;
+ my($ver) = /^version:\s*(\S+)\s*$/mi or next;
+ my($b_d) = /^build-depends:\s*(.+)\s*$/mi;
+ my($b_d_i) = /^build-depends-indep:\s*(.+)\s*$/mi;
+ my($maint) = /^maintainer:\s*(.+)\s*$/mi;
+ my($upldr) = /^uploaders:\s*(.+)\s*$/mi;
+ my $dm = /^dm-upload-allowed:\s*yes\s*$/mi;
+ my(@b_d, @b_d_i, @maint, @upldr);
+ @b_d = split(/\s*,\s*/, $b_d) if($b_d);
+ @b_d_i = split(/\s*,\s*/, $b_d_i) if($b_d_i);
+ @maint = split(/\s*,\s*/, $maint) if($maint);
+ @upldr = split(/\s*,\s*/, $upldr) if($upldr);
+ $vers{$pkg} = {
+ ver => $ver,
+ b_d => \@b_d,
+ b_d_i => \@b_d_i,
+ maintainer => \@maint,
+ uploaders => \@upldr,
+ dm_allowed => $dm
+ };
}
close $data;
}
@@ -185,10 +210,11 @@
my $data = $res->decoded_content();
my %vers;
while($data =~ /<a href="([^_]+)_(.+)\.dsc">/g) {
- debug("existing $1: $vers{$1} / $2") if(defined($vers{$1}));
- if(!defined $vers{$1} or deb_compare($2, $vers{$1}) > 0) {
- debug("replaced $1: $vers{$1} -> $2") if(defined($vers{$1}));
- $vers{$1} = $2;
+ debug("existing $1: $vers{$1}{ver} / $2") if(defined($vers{$1}{ver}));
+ if(!defined $vers{$1}{ver} or deb_compare($2, $vers{$1}{ver}) > 0) {
+ debug("replaced $1: $vers{$1}{ver} -> $2") if(
+ defined($vers{$1}{ver}));
+ $vers{$1}{ver} = $2;
}
}
return \%vers;
@@ -213,12 +239,13 @@
my $pkg = $row->[0];
foreach(split(/\s+/, $row->[1])) {
next unless($_);
- debug("existing $pkg: $vers{$pkg} / $_") if(
- defined($vers{$pkg}));
- if(!defined $vers{$pkg} or deb_compare($_, $vers{$pkg}) > 0) {
- debug("replaced $pkg: $vers{$pkg} -> $_") if(
- defined($vers{$pkg}));
- $vers{$pkg} = $_;
+ debug("existing $pkg: $vers{$pkg}{ver} / $_") if(
+ defined($vers{$pkg}{ver}));
+ if(!defined $vers{$pkg}{ver} or
+ deb_compare($_, $vers{$pkg}{ver}) > 0) {
+ debug("replaced $pkg: $vers{$pkg}{ver} -> $_") if(
+ defined($vers{$pkg}{ver}));
+ $vers{$pkg}{ver} = $_;
}
}
}
Modified: scripts/qa/DebianQA/Common.pm
URL: http://svn.debian.org/wsvn/scripts/qa/DebianQA/Common.pm?rev=13926&op=diff
==============================================================================
--- scripts/qa/DebianQA/Common.pm (original)
+++ scripts/qa/DebianQA/Common.pm Fri Feb 1 03:06:00 2008
@@ -19,7 +19,7 @@
#our $VERSION = qv("1.000");
# Bump this version in case of data file change
-our $VERSION = 1.002;
+our $VERSION = 1.003;
use DebianQA::Config '%CFG';
use POSIX;
Modified: scripts/qa/DebianQA/Svn.pm
URL: http://svn.debian.org/wsvn/scripts/qa/DebianQA/Svn.pm?rev=13926&op=diff
==============================================================================
--- scripts/qa/DebianQA/Svn.pm (original)
+++ scripts/qa/DebianQA/Svn.pm Fri Feb 1 03:06:00 2008
@@ -150,11 +150,13 @@
unshift @section, "main" unless(@section > 1);
$svn{$dir}{section} = $section[0];
$svn{$dir}{subsection} = $section[1];
- $svn{$dir}{uploaders} = $ctrl_data->[0]{uploaders};
- $svn{$dir}{maintainer} = $ctrl_data->[0]{maintainer};
+ $svn{$dir}{maintainer} = [ split(/\s*,\s*/,
+ $ctrl_data->[0]{maintainer} || "") ];
+ $svn{$dir}{uploaders} = [ split(/\s*,\s*/,
+ $ctrl_data->[0]{uploaders} || "") ];
+ $svn{$dir}{b_d} = [ split(/\s*,\s*/, $ctrl_data->[0]{b_d} || "") ];
+ $svn{$dir}{b_d_i} = [ split(/\s*,\s*/, $ctrl_data->[0]{b_d_i} || "") ];
$svn{$dir}{std_version} = $ctrl_data->[0]{'standards-version'};
- $svn{$dir}{b_d} = $ctrl_data->[0]{'build-depends'};
- $svn{$dir}{b_d_i} = $ctrl_data->[0]{'build-depends-indep'};
$svn{$dir}{short_descr} = $short;
$svn{$dir}{long_descr} = $long;
my %bins;
More information about the Pkg-perl-cvs-commits
mailing list