[IPython-dev] Bug handling: launchpad, github, other?
Thu Apr 15 16:45:27 CDT 2010
We've been fairly diligent about using the LP tracker and I actually
don't mind it too much (it's slow, but I got used to opening many tabs
in parallel so each tab does its thing while I work on the others).
The point is that we do have very valuable information there, which
we're not going to ignore.
But as we change from bzr to git for hosting, what to do with bugs
merits an informed decision. In my mind the options moving forward
1. Stay with launchpad for bug handling, just start pointing to github
urls instead of internal LP ones.
+ less work to do.
- no integration with the source control system
- the interface is slow and a bit clunky (Brian has mentioned here
how it drives him mad)
2. Move to github for bugs.
+ good integration with the source control, e.g. bugs can be closed
from commit messages.
- We'd have to link LP bugs for a while, so the existing ones can be
tracked until completion.
- **The big negative one in my mind** I'm not convinced the 'tags
only' approach is a good idea:
Github only offers labels for bugs, so all other information
(ownership, category, status, etc) has to be created via labels.
Effectively every project ends up making up a syntax for how to track
bugs. While I think that approach is OK for something like email, I
think bug management is a well-defined enough problem that *some*
generic key/value pairs should exist. That is, bug management is a
problem for which we know a basic model, and by not offering *any*
model, a labels-only system forces everyone to re-invent a known
wheel. By having a common model, the user interface can offer
efficient access to certain information, like all tickets targeted to
a milestone, or open and owned by someone, etc. These have to be
manually re-created as label-based queries for every project, and
every single time you want them even for one project.
Now, bug tracking at github isn't very old, so it's possible that it
will grow a few key/value fields for the most common uses, but we
can't rely on that happening. So I'd like to have some thought put
into this, especially if anyone has *actual experience* with
labels-only bug management. Is it as clunky as I am making it to be,
or am I overly worried?
3. Other? Gitorious has no bug hosting that I can see, it seems all
projects hosted on gitorious have separate bug trackers. Indefero has
bug tracking, but I think the platform is a bit young for hosting (I
do use it for self-hosting, but for private projects my requirements
are minimal). I don't know other tools.
I'm a little torn here: I tend to prefer the tight integration between
bugs and source control, so I'm inclined to want to move out of lp.
But I'm not sold on the github approach quite yet.
Again, feedback much appreciated.
More information about the IPython-dev