[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: When not to close a bug in a changelog...



On Tue, 2002-10-15 at 08:43, Erich Schubert wrote:

> Well, i guess the debian-project team should deal with this, and publish
> a guideline wheter or not NMU-fixed bugs should be closed in a changelog
> entry or via bugnumber-close@bugs.debian.org

Could so someone explain to me exactly why NMUs don't close the bugs in
the first place?  I don't recall a discussion about it.  The developer's
reference doesn't say, and a quick search of the list archives doesn't
give anything promising, besides the following:
http://lists.debian.org/debian-devel/2002/debian-devel-200203/msg00357.html

And instead of tagging them "fixed" but not closing them, we can tag
them "nmu" and close them, and still have a reminder for the maintainer
that they need to roll in the fixes (if they haven't already).

I think it makes a lot more sense to have a NMU close the bug.  That way
the submitter: 
1) knows someone did something about it 
2) can go check the fix to see if it works
And most importantly, it assigns responsibility for the bug fix to the
right person: the person who fixed it.  If later the bug fix turns out
to be badly broken, the maintainer will get blamed for it.
Plus, it is just weird to get bug closing notifications months later
when the real maintainer makes an upload.  And that upload won't even be
the one that actually fixed the bug.

If the NMU was bad, and the bug shouldn't have been closed, then we can
just reopen it.  

Attached are patches against the dak CVS and the debbugs code in
/org/bugs.debian.org/cgi-bin on master which should unimplement the
"fixed" tag, and implement the "nmu" tag.

--- katie.py.~1.26.~	2002-10-15 09:26:49.000000000 -0400
+++ katie.py	2002-10-15 09:31:57.000000000 -0400
@@ -293,37 +293,36 @@
             return summary;
 
         bugs.sort();
-        if not self.nmu.is_an_nmu(self.pkg):
-            summary = summary + "Closing bugs: ";
-            for bug in bugs:
-                summary = summary + "%s " % (bug);
-                if action:
-                    Subst["__BUG_NUMBER__"] = bug;
-                    if changes["distribution"].has_key("stable"):
-                        Subst["__STABLE_WARNING__"] = """
+        summary = summary + "Closing bugs: ";
+        for bug in bugs:
+            summary = summary + "%s " % (bug);
+            if action:
+                Subst["__BUG_NUMBER__"] = bug;
+                if changes["distribution"].has_key("stable"):
+                    Subst["__STABLE_WARNING__"] = """
 Note that this package is not part of the released stable Debian
 distribution.  It may have dependencies on other unreleased software,
 or other instabilities.  Please take care if you wish to install it.
 The update will eventually make its way into the next released Debian
 distribution.""";
-                    else:
-                        Subst["__STABLE_WARNING__"] = "";
-                    mail_message = utils.TemplateSubst(Subst,Cnf["Dir::Templates"]+"/jennifer.bug-close");
-                    utils.send_mail (mail_message, "");
-            if action:
-                self.Logger.log(["closing bugs"]+bugs);
-        else:                     # NMU
-            summary = summary + "Setting bugs to severity fixed: ";
+                else:
+                    Subst["__STABLE_WARNING__"] = "";
+                mail_message = utils.TemplateSubst(Subst,Cnf["Dir::Templates"]+"/jennifer.bug-close");
+                utils.send_mail (mail_message, "");
+        if action:
+            self.Logger.log(["closing bugs"]+bugs);
+        if self.nmu.is_an_nmu(self.pkg):
+            summary = summary + "Tagging bugs as NMU'd: ";
             control_message = "";
             for bug in bugs:
                 summary = summary + "%s " % (bug);
-                control_message = control_message + "tag %s + fixed\n" % (bug);
+                control_message = control_message + "tag %s + nmu\n" % (bug);
             if action and control_message != "":
                 Subst["__CONTROL_MESSAGE__"] = control_message;
                 mail_message = utils.TemplateSubst(Subst,Cnf["Dir::Templates"]+"/jennifer.bug-nmu-fixed");
                 utils.send_mail (mail_message, "");
             if action:
-                self.Logger.log(["setting bugs to fixed"]+bugs);
+                self.Logger.log(["setting bugs to nmud"]+bugs);
         summary = summary + "\n";
         return summary;
 
--- /org/bugs.debian.org/etc/config	Wed Sep 18 01:19:21 2002
+++ config	Tue Oct 15 08:38:57 2002
@@ -51,7 +51,7 @@
                       "fixed", "NMU Fixed bugs",
                       "wishlist", "Wishlist items"
                     );
-@gTags = ( "patch", "wontfix", "moreinfo", "unreproducible", "fixed",
+@gTags = ( "patch", "wontfix", "moreinfo", "unreproducible", "nmu",
            "potato", "woody", "sid", "help", "security", "upstream",
            "pending", "sarge", "experimental"
          );
--- /org/bugs.debian.org/cgi-bin/common.pl	Wed Sep 25 15:26:30 2002
+++ common.pl	Tue Oct 15 08:36:17 2002
@@ -304,7 +304,6 @@
 
     my %displayshowpending = ("pending", "outstanding",
 			      "pending-fixed", "pending upload",
-			      "fixed", "fixed in NMU",
                               "done", "resolved",
                               "forwarded", "forwarded to upstream software authors");
 
@@ -363,7 +362,7 @@
     if ($common_raw_sort) {
 	$result .= "<UL>\n" . join("", @rawsort ) . "</UL>\n";
     } else {
-	my @pendingList = qw(pending forwarded pending-fixed fixed done);
+	my @pendingList = qw(pending forwarded pending-fixed done);
 	if ( $use_bug_idx ) {
 	    $pendingList[ 0 ] = "open";
 	}
@@ -569,7 +568,6 @@
 
     $status{"pending"} = 'pending';
     $status{"pending"} = 'forwarded'	    if (length($status{"forwarded"}));
-    $status{"pending"} = 'fixed'	    if ($status{"tags"} =~ /\bfixed\b/);
     $status{"pending"} = 'pending-fixed'    if ($status{"tags"} =~ /\bpending\b/);
     $status{"pending"} = 'done'		    if (length($status{"done"}));
 

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: