
I presume I can't be the first to ask this question, but I tried
searching the ghc-devs archives and didn't find anything.
After accidentally clicking on the sort order button in the GitLab issue
list, I found myself browsing 18-year-old open issues that are clearly
obsolete (e.g., #515 related to bad source location info in LHS files
long since fixed, #517 which looks like a transient issue with error
messages affecting HEAD in March 2001, #519 which refers to "ghc -M"
reading "import" statements from comments which I tried and failed to
duplicate. etc.).
I would be interested in going through some of these and triaging and
closing them where appropriate. But I also don't want to be "that guy"
-- you know, the person who systematically works his or her way through
the wiki boldfacing all occurrences of the word "GHC" or submits 1200
merge requests to remove doubled-space-after-period occurrences in comments.
So, the first question is, would working on cleaning up these issues be
useful, or would it generate too much noise to be worthwhile?
Second, if it *is* useful, what sort of policy/procedure would be most
helpful? There are a bunch of these issues that:
* have gone many years without any non-administrative activity
* have clear test cases that can't be duplicated with modern GHC
* don't involve any apparent unresolved technical issues
I'd be pretty comfortable adding a comment documenting my failure to
duplicate them and then closing them. So, that might be a good first
pass. Is there any reason *not* to simply comment and close them
immediately? For example, I already closed #497 and #515 on this basis.
Would it be better to comment on them, maybe tag them with a new label
like "issue cleanup", and have a grace period before closing them?
--
Kevin Buhr

That sounds like a great idea. The more people we have doing that, the better! In my opinion, doing this
adding a comment documenting my failure to duplicate them and then closing them.
would work, although perhaps creating a new issue label for very old issues and first tagging them with it to notify all involved of their possibly imminent closure would be a nice first step.
As you said, these issues may no longer be relevant for different reasons each, so it’d be good to document which it is.
________________________________
From: ghc-devs

A bug sweep like this is very valuable so thank you for starting to do
it. Labelling older issues is also very useful.
If you are going to doing this a lot then you might be interested in
the TUI I wrote to browse gitlab issues which makes
traversing the issue list more ergonomic.
https://github.com/mpickering/gitlab-triage
Cheers,
Matt
On Sat, May 4, 2019 at 6:35 PM Kevin Buhr
I presume I can't be the first to ask this question, but I tried searching the ghc-devs archives and didn't find anything.
After accidentally clicking on the sort order button in the GitLab issue list, I found myself browsing 18-year-old open issues that are clearly obsolete (e.g., #515 related to bad source location info in LHS files long since fixed, #517 which looks like a transient issue with error messages affecting HEAD in March 2001, #519 which refers to "ghc -M" reading "import" statements from comments which I tried and failed to duplicate. etc.).
I would be interested in going through some of these and triaging and closing them where appropriate. But I also don't want to be "that guy" -- you know, the person who systematically works his or her way through the wiki boldfacing all occurrences of the word "GHC" or submits 1200 merge requests to remove doubled-space-after-period occurrences in comments.
So, the first question is, would working on cleaning up these issues be useful, or would it generate too much noise to be worthwhile?
Second, if it *is* useful, what sort of policy/procedure would be most helpful? There are a bunch of these issues that:
have gone many years without any non-administrative activity have clear test cases that can't be duplicated with modern GHC don't involve any apparent unresolved technical issues
I'd be pretty comfortable adding a comment documenting my failure to duplicate them and then closing them. So, that might be a good first pass. Is there any reason *not* to simply comment and close them immediately? For example, I already closed #497 and #515 on this basis. Would it be better to comment on them, maybe tag them with a new label like "issue cleanup", and have a grace period before closing them?
-- Kevin Buhr
_______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

Okay, I've added a new "obsolete" label: "Old issues that no longer
apply and are in a short waiting period before closing." I'll start
going through the low-hanging fruit adding comments and sticking this
label on them, with the idea of going back and closing them after, say,
4 weeks with no complaints. After I've gone through a few of these and
gained some experience with it, I'll try to draft some guidelines for
handling old tickets.
Anyway, please let me know if this process starts to get irritating.
--
Kevin Buhr

I'm not sure the benefit of marking these tickets obsolete is. You may
as well just close them. Someone can reopen them if they disagree.
There could be some arguent for adding tests from these old tickets
but tbh they are so old that if the bug still exists there is probably
a newer ticket.
On Sat, May 4, 2019 at 10:31 PM Kevin Buhr
Okay, I've added a new "obsolete" label: "Old issues that no longer apply and are in a short waiting period before closing." I'll start going through the low-hanging fruit adding comments and sticking this label on them, with the idea of going back and closing them after, say, 4 weeks with no complaints. After I've gone through a few of these and gained some experience with it, I'll try to draft some guidelines for handling old tickets.
Anyway, please let me know if this process starts to get irritating.
-- Kevin Buhr
_______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

Okay, sounds fine. Maybe I'll use "obsolete" when I'm <95% sure it should just be closed. When you suggested there was benefit in labelling older issues, what sort of labelling were you thinking of? Adding existing triage-style labelling, like "bug" and/or the appropriate subsystem for the bugs that are still relevant? On 5/4/19 4:56 PM, Matthew Pickering wrote:
I'm not sure the benefit of marking these tickets obsolete is. You may as well just close them. Someone can reopen them if they disagree.
There could be some arguent for adding tests from these old tickets but tbh they are so old that if the bug still exists there is probably a newer ticket.
--
Kevin Buhr

They can be closed outright, but marking them with obsolescence is still useful for future reference, and is negligible.
________________________________
From: ghc-devs
Okay, I've added a new "obsolete" label: "Old issues that no longer apply and are in a short waiting period before closing." I'll start going through the low-hanging fruit adding comments and sticking this label on them, with the idea of going back and closing them after, say, 4 weeks with no complaints. After I've gone through a few of these and gained some experience with it, I'll try to draft some guidelines for handling old tickets.
Anyway, please let me know if this process starts to get irritating.
-- Kevin Buhr
_______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
_______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

In my time working on an old system, I found the statement "they are so old that if the bug still exists there is probably a newer ticket" to be false multiple times. Large systems hide many obscure bugs, some of which are rarely encountered. And sometimes the oldest symptom is the clearest one. I have always found that more tests is best; so even when I closed old bugs as 'magically fixed' in Maple, I still created a regression test for it. Jacques On 2019-05-04 5:56 p.m., Matthew Pickering wrote:
I'm not sure the benefit of marking these tickets obsolete is. You may as well just close them. Someone can reopen them if they disagree.
There could be some arguent for adding tests from these old tickets but tbh they are so old that if the bug still exists there is probably a newer ticket.
On Sat, May 4, 2019 at 10:31 PM Kevin Buhr
wrote: Okay, I've added a new "obsolete" label: "Old issues that no longer apply and are in a short waiting period before closing." I'll start going through the low-hanging fruit adding comments and sticking this label on them, with the idea of going back and closing them after, say, 4 weeks with no complaints. After I've gone through a few of these and gained some experience with it, I'll try to draft some guidelines for handling old tickets.
Anyway, please let me know if this process starts to get irritating.
-- Kevin Buhr
_______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

Well, after going through a few of these, I realize that there's some
relevant Trac metadata (specifically, "Resolution" fields of
"ResolvedWorksForMe", "ResolvedFixed", etc.) for all of the ones I've
found. It looks like certain old bugs that were somehow "resolved" but
not "closed" in the old system came over as open tickets in GitLab. This
is maybe related to gitlab-migration issue #43. So, I'll stop now.
--
Kevin Buhr

I just want to second comments others have said about the value of this kind of activity. It is most certainly *not* annoying! If you're right and there is a migration issue, then it is indeed reasonable to stop and get feedback, but I'm (for one) comfortable having you close tickets that you cannot reproduce in a modern GHC -- as long as you're careful about checking this. (For example, perhaps an old ticket has some code that doesn't make sense with Applicative being a superclass of Monad. Before labeling the issue as unreproducible, it would be wise to update the example first.) The worst case scenario is that someone reopens. Many thanks for this work! Richard
On May 4, 2019, at 6:49 PM, Kevin Buhr
wrote: Well, after going through a few of these, I realize that there's some relevant Trac metadata (specifically, "Resolution" fields of "ResolvedWorksForMe", "ResolvedFixed", etc.) for all of the ones I've found. It looks like certain old bugs that were somehow "resolved" but not "closed" in the old system came over as open tickets in GitLab. This is maybe related to gitlab-migration issue #43. So, I'll stop now.
-- Kevin Buhr
_______________________________________________ ghc-devs mailing list ghc-devs@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

| I just want to second comments others have said about the value of this
| kind of activity. It is most certainly *not* annoying!
Indeed. Thank you for doing this.
Wherever possible, please consider adding a regression test. That makes sure the bug *stays* fixed.
Simon
| -----Original Message-----
| From: ghc-devs
participants (6)
-
Alexandre Rodrigues
-
Jacques Carette
-
Kevin Buhr
-
Matthew Pickering
-
Richard Eisenberg
-
Simon Peyton Jones