GNU bug report logs - #23624
Closing a blocker does not update bugreport.cgi for bug it blocks

Previous Next

Package: debbugs.gnu.org;

Reported by: Glenn Morris <rgm <at> gnu.org>

Date: Thu, 26 May 2016 17:11:02 UTC

Severity: minor

To reply to this bug, email your comments to 23624 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Message #1 received at quiet <at> debbugs.gnu.org (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: quiet <at> debbugs.gnu.org
Subject: Closing a blocker does not update bugreport.cgi for bug it blocks
Date: Thu, 26 May 2016 13:10:30 -0400
Package: debbugs.gnu.org
Severity: minor

If open bug#456 blocks bug#123, and you have the bugreport.cgi page for
#123 open, then close #456 and refresh #123's page, #456 is still listed
as a blocker. You have to shift-reload #123's page to get it to update.

Closing #456 does not *directly* affect the status of #123.
In contrast, removing #456 from the list of blockers does.




Message #2 received at 23624-quiet <at> debbugs.gnu.org (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: 23624-quiet <at> debbugs.gnu.org
Subject: Re: Closing a blocker does not update bugreport.cgi for bug it blocks
Date: Thu, 26 May 2016 13:57:57 -0400
These may be the relevant lines from bugreport.cgi:

# the log should almost always be newer, but just in case
my $log_mtime = +(stat $buglog)[9] || time;
my $status_mtime = +(stat $bug_status)[9] || time;
my $mtime = strftime '%a, %d %b %Y %T GMT', gmtime(max($status_mtime,$log_mtime));

if ($q->request_method() eq 'HEAD' and not defined($att) and not $mbox)
{
     print $q->header(-type => "text/html",
                      -charset => 'utf-8',
                     (length $mtime)?(-last_modified => $mtime):(),
                     );
     exit 0;
}


Further down, we have:

my @blockedby= split(/ /, $status{blockedby});
$status{blockedby_array} = [];
if (@blockedby && $status{"pending"} ne 'fixed' && ! length($status{done})) {
    for my $b (@blockedby) {
        my %s = %{get_bug_status($b)};
        next if $s{"pending"} eq 'fixed' || length $s{done};
        push @{$status{blockedby_array}},{bug_num => $b, subject => $s{subject}, status => \%s};
   }
}

So, one would have to get the status array before the HEAD section, and
when blockedby is non-nil, check the mtimes for those bugs too, and use
the latest of all of them.




This bug report was last modified 7 years and 337 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.