Bugzilla block statusΒΆ
In the search summaries of bugzilla add a (B) to items depending on other unresolved bugs.
--- bugzilla-3.2.3/buglist.cgi 2009-02-05 17:36:18.000000000 +0100
+++ htdocs/buglist.cgi 2009-05-13 11:04:07.000000000 +0200
@@ -676,6 +676,17 @@
DefineColumn("qa_contact_realname" , "map_qa_contact.realname AS qa_contact_realname" , "QA Contact");
}
DefineColumn("bug_status" , "bugs.bug_status" , "Status" );
+DefineColumn("bug_blocker" ,
+ "(CASE WHEN ( " .
+ " select count(blocked) " .
+ " from dependencies deps, bugs blocked_by " .
+ " where deps.blocked = bugs.bug_id " .
+ " and deps.dependson = blocked_by.bug_id " .
+ " and blocked_by.bug_status in " .
+ " (select value from bug_status where is_open=1) " .
+ ") = 0 " .
+ "THEN 'UNBLOCKED' ELSE 'BLOCKED' END) " .
+ "AS bug_blocker", "bug_blocker");
DefineColumn("resolution" , "bugs.resolution" , "Resolution" );
DefineColumn("short_short_desc" , "bugs.short_desc" , "Summary" );
DefineColumn("short_desc" , "bugs.short_desc" , "Summary" );
@@ -792,7 +803,7 @@
# Severity, priority, resolution and status are required for buglist
# CSS classes.
my @selectcolumns = ("bug_id", "bug_severity", "priority", "bug_status",
- "resolution");
+ "resolution", "bug_blocker");
# if using classification, we also need to look in product.classification_id
if (Bugzilla->params->{"useclassification"}) {
--- bugzilla-3.2.3/template/en/default/list/table.html.tmpl 2008-04-19 15:14:25.000000000 +0200
+++ htdocs/template/en/default/list/table.html.tmpl 2009-05-06 15:51:11.000000000 +0200
@@ -173,6 +173,9 @@
[%+ "bz_secure" IF bug.secure_mode -%]
[%+ "bz_secure_mode_$bug.secure_mode" FILTER css_class_quote IF bug.secure_mode -%]
[%+ count % 2 == 1 ? "bz_row_odd" : "bz_row_even" -%]
+ [% IF bug.bug_blocker == 'BLOCKED' %]
+ bz_BLOCKER
+ [% END %]
">
[% IF dotweak %]
@@ -196,6 +199,9 @@
[% PROCESS formattimeunit time_unit=bug.$column %]
[% ELSIF column == 'bug_status' %]
[%- get_status(bug.$column).truncate(abbrev.$column.maxlength, abbrev.$column.ellipsis) FILTER html %]
+ [% IF bug.bug_blocker == 'BLOCKED' %]
+ (B)
+ [% END %]
[% ELSIF column == 'resolution' %]
[%- get_resolution(bug.$column).truncate(abbrev.$column.maxlength, abbrev.$column.ellipsis) FILTER html %]
[% ELSE %]