Fixed issues are automatically set to 'closed' after 2 weeks of inactivity. This makes it hard to know if the issue was actually solved before set to 'closed' or not.

Instead of having a clear view by looking at the color coded issue queue, one has to take a look at each 'closed' issue and find out if they were actually solved at some point in time and then automatically set to 'closed' or if they were closed due to actual inactivity (for example failure of the reporter to reply to a question after issue was set to 'postponed - maintainer needs more info').

Also in different posts you find comments like so:

...we need to wait until [#issue_nr] is fixed before fixing this one...

The [#issue_nr] is translated to the issues' title + link to it and is also color coded. Now, if an issue was fixed and then closed before someone views these comments, they see the issue as red/closed and don't have an idea if it was fixed or auto-closed. They again need to visit the issue's page and go through its whole history to find out.

So, I propose that issues that are fixed should stay 'fixed' and for that to happen we need to exclude 'fixed' issues from the routine that sets issues to 'closed' after inactivity of 2 weeks.

Also there seem to be two types of postponed issues, the simple 'postponed' ones and the 'postponed - maintainer needs more info' ones. As I understand their use, simple 'postponed' ones are set to this state because of a number of reasons. For example:

- there might be luck of interest to implement a new feature
- because maintainers don't have the time to work on them (but want to eventually come back to them or else they would have set them to 'won't fix')
- because they are waiting for another issue to be fixed (though some like to keep these issues to 'open')

For the 'postponed - maintainer needs more info' ones the use cases are self-explained by the title and I am sure that it makes sense for such issues to be auto-set to 'closed' after some period of time. For the simple ones though, if they are auto-set to 'closed', people might never come back to them. For example new maintainers of an abandoned issue might not even take a look at issues that were postponed due to lack of time of their former maintainers and then auto-closed.

As for that use case were issues need to wait for other ones to be fixed before they move on, I think there should be another new state defined for issues. This would be a 'depends on' state and people would be able to add issue numbers in a extra field after selecting this status from the drop-down menu. This is a whole new issue though...

#735588: There should be a 'depends on...' status for issues

Thoughts?

Comments

dave reid’s picture

Status: Active » Postponed (maintainer needs more info)

Check the 'hover' on the link. You see the status.

There's nothing to say you can't click the issue link to read what happened there. In fact that's what people should be doing.

gábor hojtsy’s picture

I've not seen d.o setting any issues closed automatically after two weeks unless they were set as fixed. So not sure why you'd need to go in and see if it was actually fixed. Just turn it back on to active or some other appropriate state if people mark it fixed without good reasons.

klonos’s picture

@ Gábor: That is exactly the issue... 'fixed' issues should NOT be auto-set to 'closed'. We should use 'closed' only in cases where -for example- the maintainer asks for more info and the reporter of the issue never responds back.

@ Dave: I know you see the status on hover. You actually don't need to, since the links are color-coded. Perhaps I didn't make myself clear (or my post is too long and boring to be read carefully). Please, consider this scenario (it happened to me a lot of times):

- I have some issue I need to report. So I search for any similar issues first, before (re-)reporting and causing possible duplicates.
- While reading a history of an issue, I might see a post that links to another issue and states that this one needs to be addressed first.
- The link states (color + hover tooltip) that this issue is closed. So, the current issue I am viewing, that depends on the second, cannot move on.
- I visit the link of the second issue (that my current issue depends on) and see that it actually was fixed at some point in time, but after inactivity it was changed from 'fixed' to 'closed'.
- Back to the first issue I was checking out, I realize that the maintainers were never informed that the required issue was fixed so they can do something about the current one. (here's where my suggestion to have a 'depends on...' state comes from)
- Time passed and now when people see the history of the current issue, they think that it reached a dead-end, because the last update they have is that it depends on another issue that is marked as 'closed' and not 'fixed' as it should. (here is where my suggestion to keep 'fixed' issues from auto-changing to 'closed' comes from).

As for people clicking through a series of depended issues in order to see where the main issue that they were initially looking at stands, I believe it should be the last thing that people should have to do, when we can have each issue auto-updated upon solution of depended issues and maintainers informed through email about it. The way it is now, a maintainer needs to go to the required issue and add a comment (usually 'subscribing...') in order to stay informed. Even then (if a long time passes before it gets solved), he might not even remember why he subscribed to the issue in the first place.

Does all this make any sense to you?

klonos’s picture

Status: Postponed (maintainer needs more info) » Active

forgot to set it back to active...

Anonymous’s picture

To keep all the issue marked as fixed open is not a good idea; the view of the issue would become longer, and longer. The status closed should be just used to automatically close an issue previously marked as fixed; there should not be the need to check if it was automatically closed or not. If somebody is manually closing the issues, then he is not following what reported about the statuses to use.

klonos’s picture

I know what you mean and I must admit that I was expecting that someone would step up and make that exact point. Which is why I had an answer ready for it...

As it is now, the issue queue of each project excludes 'closed' issues by default. Actually is displays all 'Open' issues... as in 'all-that-are-NOT-closed'. We could have it exclude both 'closed' and 'fixed' and that my friend would prevent long lists. After all, a 'fixed' issue is not an 'Open' issue and shouldn't be included in the queue like it does now.

I hope I've made myself clear... I mean that there are two 'abstract' main categories of issues... opened and closed ones. In order to avoid misunderstanding the abstract category of closed issues with the ones that are actually marked as 'closed', I'll call them 'done-with' and 'not-ready-yet' respectively. So... now we have

- not-ready-yet issues:
- active
- needs work
- needs review
- fixed
- ... so on ...
- done-with:
- closed
- duplicate
- won't fix
- by design

What I propose is to move 'fixed' issues to the done-with list (that won't be displayed in the issue queue same as 'closed'). Also I propose to not have them auto-set to 'closed' status after inactivity.

So I kindly still insist in my request... a fixed issue is not a closed issue and shouldn't be treated like so.

klonos’s picture

... Now, for the postponed ones... there are two shorts of them. The simple 'postponed' ones and the 'postponed - maintainer needs more info' ones...

I understand that if someone does not reply with requested information, after some time 'postponed - maintainer needs more info' status should be changed to 'closed' (and thus moved to the done-with abstract category I mention above). That includes the most common use case where people think they have an issue and report it. People ask for more info on the issue in order to help them and set the issue to this state. If the issue reporters actually come back with a reply, the issue is either set back to 'active' if issue still remains, or set to 'fixed' or whatever depending on the progress. In the case where the reporters solve the issue by themselves and never come back to say they did (I know it's really rude, but it does happen) the system sets the issue to 'closed' due to inactivity. And all is good!

I am not so sure for the way simple 'postponed' issues should work though. My guess is that people set issues to this status when they mean to come back to them after some time. So they shouldn't be set to 'closed' (for these I am not sure if this actually does happen?). To support this thought of mine, consider the use case where module maintainers work on something big and say that they don't have the time for a minor feature request. If this is a legit request and they set it to won't fix, it will never be addressed. If they set it to 'postponed' someone else might come later on and work on it (or they might do so once time permits). If this is auto-set to 'closed', no one will know or remember it ever was there and it is as if the system decided that this feature request is not valid and set it to a 'won't fix' state.

PS: I tried to keep this short, but I've done it again... sorry :(

dave reid’s picture

The point of having issues stay fixed for two weeks is usually its a bug they encounter. The hope is that the module maintainer is responsible, fixes the bug, and marks the issue as fixed. Since fixed issues will still be visible by default, any other users that come to report the exact same issue (and it happens, very, very often) can easily find that issue and see 'oh hey, its been fixed already'.

Basically this is how the issues have worked for since I can remember. This is the first I've heard any complaints about this process, and as a community we tend to air our grievances often (hello CVS).

klonos’s picture

Dave, this is not a complaint. It is a legit request for improvement. I do understand the current way is how things run for years now, but if my proposal is indeed an improvement and makes sense, then please consider it. Excuse me, but 'It works as it is now' is just an excuse and not a reason to turn my proposal down.

I agree that there should be a way so 'fixed' issues should not be excluded till people coming to report issues take a good look at them being 'fixed' (to avoid duplicates). I also agree that the use case you present happens a lot too. How about letting 'fixed' issues visible as it is now and they will eventually reach the end of the queue? ...assuming that:

a) the default shorting method for the queue remains by time of last post
and b) that no one posts 'thank you!'s after a year or so ;)

Another solution to that would be to keep 'fixed' issues listed only for a certain period of time. I understand that this implementation would be complex compared to the first way (in which nothing needs to be changed), but still it is the right way to do it. I believe that the way it is now, instead of actually having it done the right way we use workarounds like the marking of 'fixed' issues as 'closed' simply to move them out of the queue list.

Now, you on your part, you most likely agree on the idea of the two 'abstract' main categories of issue states I mention above(?). You must also agree that common sense (of people that are new-comers to drupal.org) indicates the following:

1) an issue marked as 'fixed' is not considered an 'open' or 'active' one. But still, it is listed among the ones returned by the query when 'Open' is selected through the queue search filter drop-down. That is confusing! (having 'fixed' issues listed with the rest of the issues that are 'not-done-with' I mean).

2) an issue marked as 'closed' does not imply it has ever been fixed in the past (could be so, but not definitely). People will know for sure only once they dig through the history of this issue and this renders (to me) the whole color-coding feature useless (in this case).

Now, what I propose is based on (annoying) things that happen to me a lot while browsing issue queues and looking through some issues' histories. My english is in a level that I don't confuse meanings of words plus I do have experience with issue tracking systems (like the mozilla.org's bugzilla) and the way they work. So, when these annoying things happen, it's not just me (or so I like to think).

I will stop here in an effort to keep this as short as possible. Please let me know your thoughts on the points I've made above, and do keep in mind that I sincerely want only the best for the drupal community. Making things work better benefits us all.

dww’s picture

Status: Active » Closed (won't fix)

"postponed" issues are not automatically moved to closed.

neither are "postponed (maintainer needs more info)" (see #156704: Dealing with "postponed (maintainer needs more info)" issues for more on this).

the only issues that are automatically closed are the ones that have been "fixed" for 2 weeks with no activity. "fixed" issues are still included in the default view of issues. the reasons it works this way are:

A) As Dave Reid points out, recently fixed issues are often still hitting users in the wild, and it significantly helps reduce duplicate issues being posted if those are still visible by default.

B) Recently fixed issues often break something and need to be further modified. I could run some queries to give you hard numbers, but my experience shows that a significant portion of the time, issues move from "fixed" to "needs work" before they move to "closed". ;) Only if it really didn't break anything at all and no one changed it for 2 weeks do they move to "closed". They can still be found and reopened if needed, but generally, 2 weeks seems to be a pretty good window for scrutinizing recent "fixes".

C) Seeing recently fixed issues gives you a sense of the activity of the issue queue and the responsiveness of the maintainer at a glance.

...

In terms of reorganizing the status values and what they mean, if you want to waste a few hours of your life, read all of #171350: Reorganise project issue statuses. If you want my summary, see #171350-113: Reorganise project issue statuses.

klonos’s picture

thank you Derek, I will waste my next spare hours on that ;)

Also I wasn't sure about postponed issues (I did mention that in my posts) thanx for clearing that up for me too.

sun’s picture

I also want to amend that most maintainers only mark issues fixed if there actually was something fixed.

If nothing was fixed or there was no reply, then an issue is either "by design" or "won't fix".

However, it is possible that we do not sufficiently communicate/teach the long-term importance of issue statuses in http://drupal.org/node/156119 yet. It's true that users should technically be able to exclude won't fix + by design + postponed* issues when searching in all issues for a particular change. To allow this, there should not be closed issues that were wrongly marked as closed.