r9062 - in /scripts/qa: qareport.cgi templates/by_category
dmn at users.alioth.debian.org
dmn at users.alioth.debian.org
Thu Nov 8 21:53:30 UTC 2007
Author: dmn
Date: Thu Nov 8 21:53:30 2007
New Revision: 9062
URL: http://svn.debian.org/wsvn/?sc=1&rev=9062
Log:
Big change. show (with a background) where a package needs work, format=list mimics the versioncheck3 output pretty close; add notes under package name; rework the template to receive all data about a package with more OO-like interface (breaks compatibility with other templates)
Modified:
scripts/qa/qareport.cgi
scripts/qa/templates/by_category
Modified: scripts/qa/qareport.cgi
URL: http://svn.debian.org/wsvn/scripts/qa/qareport.cgi?rev=9062&op=diff
==============================================================================
--- scripts/qa/qareport.cgi (original)
+++ scripts/qa/qareport.cgi Thu Nov 8 21:53:30 2007
@@ -40,7 +40,7 @@
my $ims;
my @pkglist = get_pkglist();
-my( @for_upload, @for_upgrade, @weird, @waiting, @wip, @with_bugs );
+my( @for_upload, @for_upgrade, @weird, @waiting, @wip, @with_bugs, @all );
my %bugs_by_severity;
foreach my $pkg (sort @pkglist)
@@ -55,46 +55,72 @@
my $archver = $data->{archive}{$pkg}{most_recent} || 0;
my $archsuit = $data->{archive}{$pkg}{most_recent_src} || 0;
my $uver = $data->{watch}{$pkg}{upstream_version};
- my $u_uver = $data->{watch}{$pkg}{upstream_unmangled};
+ my $u_uver = $data->{watch}{$pkg}{upstream_unmangled} || 0;
my $uurl = $data->{watch}{$pkg}{upstream_url};
my @bugs = sort keys %{$data->{bts}{$pkg}};
- my $note;
+ my @notes;
+ my %todo;
+ my $dest; # like "destiny" :)
+ my %info = (
+ name => $pkg,
+ notes => \@notes,
+ todo => \%todo,
+ watch => $data->{watch}{$pkg},
+ archive => $data->{archive}{$pkg},
+ svn => $data->{svn}{$pkg},
+ bts => $data->{bts}{$pkg},
+ );
if(! $dver) {
- $note = 'Needs to be finished';
- push @wip, $pkg;
- } elsif(! $archver) {
- $note = 'Never uploaded';
- push @for_upload, $pkg;
- } elsif(deb_compare($archver, $dver) > 0) {
- $note = "Ancient version in SVN";
- push @weird, $pkg;
- } elsif(deb_compare($archver, $dver) != 0) {
- push @for_upload, $pkg;
- } elsif($werr and $werr eq "Native") {
- $note = "Native package";
- } elsif($dwerr or not $m_dver or not $u_uver or not $uver) {
- $note = "Watchfile problem";
- push @wip, $pkg;
- } elsif(deb_compare($m_dver, $u_uver) > 0) {
- $note = "Ancient version in upstream?";
- push @weird, $pkg;
- } elsif(deb_compare($m_dver, $u_uver) != 0) {
- $note = "Needs upgrading to newer upstream";
- push @for_upgrade, $pkg;
- } elsif($werr) {
- $note = "Watchfile problem";
- push @wip, $pkg;
+ push @notes, 'Needs to be finished';
+ $dest = \@wip;
+ $todo{repo} = 1;
}
- push @with_bugs, $pkg if(@bugs);
- push @waiting, $pkg if($archsuit =~ /new|incoming/);
+ if(! $archver) {
+ push @notes, 'Never uploaded';
+ $dest ||= \@for_upload;
+ $todo{archive} = 1;
+ }
+ if(deb_compare($archver, $dver) > 0) {
+ push @notes, "Ancient version in SVN";
+ $dest ||= \@weird;
+ $todo{repo} = 1;
+ }
+ if(deb_compare($archver, $dver) != 0) {
+ $dest ||= \@for_upload;
+ $todo{archive} = 1;
+ }
+ if($werr and $werr eq "Native") {
+ push @notes, "Native package";
+ }
+ if($dwerr or (not $m_dver and not $undver) or not $u_uver or not $uver or $werr) {
+ push @notes, "Watchfile problem";
+ $dest ||= \@wip;
+ $todo{upstream} = 1;
+ }
+ if(deb_compare($m_dver, $u_uver) > 0) {
+ push @notes, "Ancient version in upstream?";
+ $dest ||= \@weird;
+ $todo{upstream} = 1;
+ }
+ if(deb_compare($undver||$m_dver, $u_uver) < 0) {
+ push @notes, "Needs upgrading to newer upstream";
+ $dest ||= \@for_upgrade;
+ $todo{repo} = 1;
+ }
+ $dest ||= \@with_bugs if(@bugs);
+
+ do{
+ $dest ||= \@waiting;
+ $todo{archive} = 1;
+ } if($archsuit =~ /new|incoming/);
+
+ if( %todo or @bugs )
+ {
+ push @$dest, \%info;
+ push @all, \%info;
+ }
}
-
-my %all = map(
- ( $_ => 1 ),
- @wip, @for_upload, @weird, @for_upgrade, @with_bugs, @waiting,
-);
-my @all = sort keys %all;
if( $ENV{GATEWAY_INTERFACE} )
{
Modified: scripts/qa/templates/by_category
URL: http://svn.debian.org/wsvn/scripts/qa/templates/by_category?rev=9062&op=diff
==============================================================================
--- scripts/qa/templates/by_category (original)
+++ scripts/qa/templates/by_category Thu Nov 8 21:53:30 2007
@@ -5,18 +5,18 @@
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
[% BLOCK bts_link %]
-[% IF data.bts.$pkg.size %]
-<div class="bts-info popup"><a href="http://bugs.debian.org/$pkg"
->${data.bts.$pkg.size} bug[% IF data.bts.$pkg.size > 1 %]s[% END %]</a>
-<span class="paren">[</span>
+[% IF pkg.bts.size %]
+<div class="bts-info"><div class=" popup"><a href="http://bugs.debian.org/$pkg.name"
+>$pkg.bts.keys.size</a>
+<!-- span class="paren">[</span -->
<table class="bts-info-details balloon">
-[% FOREACH s IN data.bts.$pkg.keys.sort %]
+[% FOREACH bug IN pkg.bts.nsort %]
<tr>
<td>
- <a class="bts-${data.bts.$pkg.$s.severity}"
- href="http://bugs.debian.org/$s">#$s</a>
- [% IF data.bts.$pkg.$s.forwarded %]
- [% SET F = data.bts.$pkg.$s.forwarded %]
+ <a class="bts-${pkg.bts.$bug.severity}"
+ href="http://bugs.debian.org/$bug">#$bug</a>
+ [% IF pkg.bts.$bug.forwarded %]
+ [% SET F = pkg.bts.$bug.forwarded %]
[% qm = BLOCK %]^https?:[% FILTER quotemeta %]//rt.cpan.org/[% END %].+html\?id=(\d+)[% '$' %][% END %]
[% rt = F.match(qm) %]
<div style="font-size: smaller">
@@ -27,43 +27,52 @@
[% END %]
</div>
[% END %]
- [% IF data.bts.$pkg.$s.keywords.length > 0 %]
+ [% IF pkg.bts.$bug.keywords.length > 0 %]
<div style="font-size: smaller">
- [% data.bts.$pkg.$s.keywords.split(" ").join(", ") | html %]
+ [% pkg.bts.$bug.keywords.split(" ").join(", ") | html %]
</div>
[% END %]
</td>
<td>
[% qm = BLOCK %][% pkg | quotemeta %][% END %]
- [% data.bts.$pkg.$s.subject.replace("^$qm:\\s*",'') | html %]</td>
+ [% pkg.bts.$bug.subject.replace("^$qm:\\s*",'') | html %]</td>
</tr>
[% END #FOREACH %]
</table>
-<span class="paren">]</span>
-</div>
+<!-- span class="paren">]</span -->
+</div></div>
[% END #IF bugs %]
[% END #BLOCK bts_link %]
[% BLOCK package %]
- [% SET arch_ver = data.archive.$pkg.most_recent %]
- [% SET svn_ver = data.svn.$pkg.version %]
- [% SET svn_un_ver = data.svn.$pkg.un_version %]
+ [% SET arch_ver = pkg.archive.most_recent %]
+ [% SET svn_ver = pkg.svn.version %]
+ [% SET svn_un_ver = pkg.svn.un_version %]
<tr>
- <td>$pkg</td>
- <td><a
- href="[% "$pkg" | format("$wsvn_url") %]/debian/changelog?op=file&rev=0&sc=0"
- ><span class="popup">$svn_ver<span class="balloon"
- >[% data.svn.$pkg.changer | html %] — [% data.svn.$pkg.date | html %]</span></span>
- [% IF svn_un_ver AND (svn_un_ver != svn_ver) %]<span
- style="font-size: smaller"> (<span class="popup">$svn_un_ver<span
- class="balloon">[% data.svn.$pkg.un_changer | html %] — [% data.svn.$pkg.un_date | html %]</span></span
+ <td>[% IF pkg.notes.size %]<span class="popup">$pkg.name<span
+ class="balloon" style="margin-left:0">[%
+ pkg.notes.join(', ')
+ %]</span></span>[% ELSE %]$pkg.name[% END %]</td>
+
+ <td[% IF pkg.todo.repo %] class="todo"[% END %]><a href="[% pkg.name |
+ format("$wsvn_url")
+ %]/debian/changelog?op=file&rev=0&sc=0"
+ ><span class="popup">$svn_ver<span class="balloon">[% pkg.svn.changer |
+ html %] — [% pkg.svn.date | html %]</span></span>
+ [% IF svn_un_ver AND (svn_un_ver != svn_ver) %]<span style="font-size:
+ smaller"> (<span class="popup">$svn_un_ver<span class="balloon">[%
+ pkg.svn.un_changer | html %] — [% pkg.svn.un_date |
+ html %]</span></span
>)</span>[% END #IF %]</a></td>
- <td>[% IF arch_ver %]<a href="http://packages.qa.debian.org/$pkg">$arch_ver</a>[% END #IF %]</td>
- <td>[% INCLUDE bts_link data=data pkg=pkg %]</td>
- <td><a href="[% IF data.watch.$pkg.upstream_unmangled %][%
- data.watch.$pkg.upstream_url | html %][% ELSE %][% "$pkg"
- | format("$wsvn_url") %][% END %]">[%
- data.watch.$pkg.upstream_unmangled || ${data.watch.$pkg.error}
+
+ <td[% IF pkg.todo.archive %] class="todo"[% END %]>[% IF arch_ver %]<a href="http://packages.qa.debian.org/$pkg.name">$arch_ver</a>[% END #IF %]</td>
+
+ <td>[% INCLUDE bts_link pkg=pkg %]</td>
+
+ <td[% IF pkg.todo.upstream %] class="todo"[% END %]><a href="[% IF
+ pkg.watch.upstream_unmangled %][% pkg.watch.upstream_url | html
+ %][% ELSE %][% pkg.name | format("$wsvn_url") %][% END %]">[%
+ pkg.watch.upstream_unmangled || pkg.watch.error
%]</a></td>
</tr>
[% END #BLOCK package %]
@@ -86,7 +95,7 @@
<th>Upstream</th>
</tr>
[% FOREACH pkg IN list %]
- [% INCLUDE package pkg=pkg data=data %]
+ [% INCLUDE package pkg=pkg %]
[% END #FOREACH list %]
</tbody>
[% END #IF list.size %]
@@ -96,8 +105,8 @@
<title>${group_name} packages overview</title>
<style type="text/css">
body {
- background: Window;
- color: WindowText;
+ background: white;
+ color: black;
margin: 0;
padding: 8px;
}
@@ -111,8 +120,8 @@
padding: 0.2em;
}
th.clickable, th.clickable a, th.clickable a:visited {
- background: Menu;
- color: MenuText;
+ background: #e0e0e0;
+ color: white;
}
a {
text-decoration: none;
@@ -120,10 +129,13 @@
/* before enabling this, think about the link colors -- they all have to
be visible with the new background
tr:hover td, tr:hover th {
- background: Highlight;
- color: HighlightText;
+ background: #F5F5B5;
+ color: black;
}
*/
+ .todo {
+ background: #ADDBE6; /* lightblue */
+ }
.bts-wishlist {
color: green;
}
@@ -141,7 +153,7 @@
}
/* From ikiwiki templates */
.popup {
- border-bottom: 1px dotted #366;
+ border-bottom: 1px dotted #366; /* slightly green */
color: #366;
}
.popup .balloon,
@@ -156,15 +168,18 @@
min-width: 15em;
margin: 0em 0 0 -15em;
padding: 0.5em;
- border: 2px outset InfoBackground;
- background: InfoBackground;
- color: InfoText;
+ border: 2px outset #F5F5B5; /* light yellowish */
+ background: #F5F5B5; /* light yellowish */
+ color: black;
/* Nonstandard, but very nice. */
opacity: 0.95;
-moz-opacity: 0.95;
filter: alpha(opacity=95);
}
table.bts-info-details td:first-child {
+ text-align: center;
+ }
+ div.bts-info div.popup {
text-align: center;
}
.bts-info-details p {
More information about the Pkg-perl-cvs-commits
mailing list