In my experience most of the very old bugs fall into one of these scenarios:
- happen only under very rare circumstances. Developer cannot reproduce
it easily
- are not reproducible because reporter didn't provide enough details
(and often doesn't respond to questions about details)
- fix would break some other functionality and/or would mean serious
re-engineering of some parts of Hudson
- are related to a plugin which is not (really) maintained any more
And then there are of course the 'normal' bugs, but I think they are the
minority.
This is just my very subjective feeling why there are so many old bugs.
What we can do easily IMHO:
- search actively for duplicates and close them
- ask reporters about more details
- if bug is old and reporter doesn't respond in a timely manner, then
close it as 'not reproducible'
- And what I really like to see, is a prominent message for reporters of
new bugs to provide as much details as possible ALREADY WHEN they enter
the bug initially.
So much time is wasted by asking for details and waiting for the answer.
Your list in 2d is very good. I'd like to add console output and logfile
to it.
Hi Matt,
I fully agree with you that obsolete bugs should be closed, in order
for most users to know what are really the current issues and in order
for most developers to know what has to be fixed.
But I think that the 494 stale bugs can't be closed like that.
For example, a large number of issues were written by Kohsuke for
things to check or for things to fix (for example issue 5036).
A bug having a low priority for one year probably doesn't mean that it
doesn't need to be fixed.
I currently suggest that some, if not all, developers read each one of
the stale bugs in
and that we close them when necessary.
I will try to do that myself (instead of sleeping) and as Christoph
said:
- search actively for duplicates and close them [we may also read the
changelogs of releases]
I think in a first step we should categorize issues before we are
updating or closing them.
It makes sense to handle issues from core (and core components)
differently then for plug-ins. E.g., I have several issues in my
plug-ins that are quite old, but I did not yet find the time to fix
them. I would like to have these issues still open, since these issues
reflect real bugs (or feature requests).
We also should handle issues differently that have no assignee yet.
There are 1958 unresolved issues without assignee (from 3251). I think
for issues with assignee the assignee should look at his issues in order
to suggest if the issue could be closed or not.
> At any rate, does anyone have any (further) suggestions for how to
> handle these older bugs reports without having to go through them one
> by one? Just to provide some perspective, 494 (http://issues.jenkins-
> ci.org/secure/IssueNavigator.jspa?mode=hide&requestId=10243) of the
> 1862 currently unresolved bug reports (http://issues.jenkins-ci.org/
> secure/IssueNavigator.jspa?mode=hide&requestId=10244) are considered
> stale.
>
I think we need to look at an issue before we can close it...
> Also, would someone who has administrative privileges in the Jenkins
> Jira instance be able to add a Boolean field to the Bug issue type for
> marking whether or not a bug report has been Triaged, or does anyone
> have another way to keep track of whether a bug report has been
> vetted?
>
What do you mean with issues that are triaged? Accepted as a real bug or
feature? Or already planned for a release?
Ulli
On 02/06/11 17:27, evernat wrote:
> - ask reporters about more details [if needed]
> - if bug is old and reporter doesn't respond in a timely manner,
> then close it as 'not reproducible'
I have done a fair amount of this over the past couple years (not
recently though).. asking if issues still exist on recent versions, and
closing if no response in a few weeks.
- Alan
I think to date we've interpreted "Resolved" as closed.. a few people
come back and mark things verified, but not many. I never query
Resolved issues and wonder if they need to be verified anyway..
> but how should we handle it if a
> bug is not reproducible at all in the current version? Should we
> Close as "Cannot Reproduce" right away, or make a note that it is not
> reproducible on some version and then have someone else do the same
> check just to be safe? I'm sure it will also have a lot to do with
> who reported that it was not reproducible. I'm sure the community
> would be much less likely to trust me than Kohsuke.
As with stale bugs I would add a comment here and give the reporter a
chance to give more detail.. there are a lot of environment specific
issues out there.
> @Alan, would you suggest that we take some of the more stale issues
> and post a comment asking the reporter(s) if they're still having the
> problem in the latest version? It seems like the general idea I'm
> getting from everyone is that we should make an effort to confirm a
> bug's existence in these cases as well.
It's the method I've used in the past, to avoid complaints as you said..
but it does require looking at all the issues, no large scale pruning..
- Alan
On Mon, Feb 7, 2011 at 7:57 PM, Alan Harder <mind...@dev.java.net> wrote:
>
> As with stale bugs I would add a comment here and give the reporter a chance
> to give more detail.. there are a lot of environment specific issues out
> there.
>
I'm the one that put that !CLOSED && STALE query out there, so I am
personally interested in how this unfolds.. Anyhow, it would be very
nice if we could somehow tag at least the ones which are in Resolved
as 'last-chance' or something similar. If that were possible, I am
sure we can bulk update add a comment and tag to the effect that the
issue is a cold case and to update the record with a fresh
confirmation of the problem. If no update is received in 5 weeks, we
then bulk close any !CLOSED && hasTag(last-chance) or some such.
There are so many issues like this that it doesn't make sense to do it
manually. There are something like 4300 issues in Resolved state,
there are 4100 !CLOSED && STALE, of which 1050 are !CLOSED &&
!RESOLVED && STALE. For this final batch, if they are in plugins then
we should probably just leave them; if they are in core, then they
should also receive last-chance warnings on the presumption that there
have been at least 52 releases since the bug could conceivably have
been open and we want a fresh confirmation of the problem to proceed.
-Jesse
--
There are 10 types of people in this world, those
that can read binary and those that can not.
Yes, that would be an option.
What we can also do is a more formal issue submission and QA process
(that I used successfully in several projects): use an additional status
(e.g., Submitted) that will be assigned to all created issues. All those
submitted issues need to be verified by the assignee and could be then
moved to the state Open. And for those issues that don't get an
assignee: here we need some volunteers who are evaluating these issues
e.g. on a daily or weekly basis (trying to reproduce or write a comment
to request additional information from the reporter). All of our old
open and unassigned issues could be moved back to the Submitted state.
Ulli
They weren't difficult to give mine when I asked it.
I don't think it will be a problem to not have a real foundation to receive it.
I really like the idea of the comment "Reproduced in version X" or
"unable to reproduce on Y platform" because it gives much more details
than just the version tag or the issue status.
Is there any way for a user to quickly describe his environment?
I was thinking of a simple link "get installation details" reporting
info like:
- OS version for the master and each node
- JDK used
- Version of Jenkins and all plugins
- job type (and eventually plugins used)
This could to reproduce the issues related to plugins or specific
platform.
Cheers,
Francois
Le 8 févr. 2011 à 17:45, Ullrich Hafner <ullrich...@gmail.com> a
écrit :
I think this is not possible out of the box.
However, one can write a simple plug-in (or core feature) that does add
a create issue link to a Jenkins installation, that will open a
pre-filled Jira create issue screen when clicked. Maybe we could use
such a feature to replace the current log message 'Please report this
bug at the mailing list...'.
Ulli
I would love to see something like that. Unfortunately Jira doesnt
seem to have any such feature in the webui today, but there are
several ways to do it in code, [1], [2] and of course there is a CLI
that is written in java that can create issues [3].
Such a plugin should
* Require that the user to login, so they can later be notified with
changes and perhaps close it when the issue is fixed.
* The user should be able to verify that it doesnt send any
confidential data to the jira.
* Maybe a hash of an exception could be added to the created issues,
so user wont create issue for the same error. Instead they can be
allowed to vote and/or watch an issue.
* Perhaps it could even be possible to group an exception on a
component/plugin dependent on the classes involved. But that may be
stretching it :)
Is there any such extension today that will allow any plugin to listen
on exception crashes or other problems?
[1] - Jira SOAP library -
https://studio.plugins.atlassian.com/wiki/display/JSOAPLIB/Jira+SOAP+library+(maven2)
[2] - Jira java API (early version) -
https://studio.atlassian.com/wiki/display/JRJC/Home
[3] - https://studio.plugins.atlassian.com/wiki/display/JCLI/JIRA+Command+Line+Interface
//Erik
> Ulli
>
JIRA docs: http://confluence.atlassian.com/display/JIRA/Creating+Issues+via+direct+HTML+links
--
Sean Houghton
--
Kohsuke Kawaguchi | CloudBees, Inc. | http://cloudbees.com/
What happens to those crash reports?
//Erik
Clearly the http://server//systemInfo is exactly what I was looking for.
We could require the page to be saved and attached to bug report.
The Issue Tracking page [1] is a must read before any issue report. Kudos Mirko.
Can we link it on the Jenkins homepage? Maybe replacing link of Bugtracker on left menu from direct issues.junking.org to that page which will then have the link to JIRA. Anyway it won't change anything for "hard core" developer, who all knows the JIRA url, but it will be useful for new comers.
My 2 cents.
[1] http://wiki.jenkins-ci.org/display/JENKINS/Issue+Tracking
Best regards,
Francois
PS: I noticed that the plugins section is quite unreadable, since the column 'name' is very very large (seen on Mac Safari)
Regards
Mirko
--
http://illegalstateexception.blogspot.com/
https://github.com/mfriedenhagen/
https://bitbucket.org/mfriedenhagen/