State of the issue queue

Events happening in the community are now at Drupal community events on www.drupal.org.
catch's picture

The past two-three weeks I've spent a lot of time in the Drupal 6 issue queue. This involved a mixture of reviewing patches I really wanted to see get into Drupal 6, writing or re-rolling some small patches for small bugs and typos, and trying to clear the issue queue as much as I could down to a manageable size. I commented on something like 160 issues in seven days, and read through many more.

Looking at so many issues in a small space of time gave me a pretty good overview of the situation in the patch queue as a whole, and an IRC conversation with webchick, senpai and chx prompted me to write this up.

Although I didn't keep notes as I went along, these are my rough impressions of how things are in general. It's hopefully a bit better than this now of course.

The vast majority of patches in the review queue needed work, of these, most needed a re-roll because they weren't reviewed for months after being posted. Probably 5-10% of patches are duplicates of other patches needing review or work, and another 5% have already been fixed somewhere along the line.

There are several factors contributing to this, many feeding of each other.

  1. More people are writing patches than reviewing them.
  2. The issue queue is so big that it's hard to know if you're creating a duplicate issue without extensive searching (especially bug and performance fixes).
  3. This results in duplication of issues and patches, often by people who may be one of a small number who could adequately review each other's patches.

Berating people to do more reviews won't work most of the time, so here's a few suggestions as to how this could be dealt with:

  1. Developers (and regular reviewers) should be encouraged to write up 'how to review this patch" instructions especially for simple bug fixes and functionality reviews. There are instructions on how to report bugs in the issue form, but not how to present patches. Chx's e-mail to the development list meant that the temporary tables in search module patch got a review where it otherwise wouldn't have. Wim Leer's encouragement on the drupal_lookup_path whitelist issue got me properly interested in working on the issue queue seriously.

  2. "Duplicate" and "won't fix" issues shouldn't be hidden from "My issues" when marked as duplicate - reviewers often link to the active issue when marking as duplicate, but between my issues and the other contributor links, you'll not find them again easily. Ideally they should be treated the same as fixed - left in 'my issues', then eventually marked closed via a cron job to keep things tidy later on. Some of these issues have dozens of posts on, and decent code, so it's worth having them stick around for a few extra days.

  3. When looking at the issue queues itself, there's no way to know what's required in a review usually - is it code/code style, functionality, removing notices, ui, benchmarking, concept, architecture? Rather than more fixed categories, webchick suggested a free-tagging vocabulary. This would be useful for say marking patches for particular types of review, and when going to needs work, things like "re-roll" or "code style" or "doxygen". This would require the issue followup form to allow for setting the taxonomy terms though, but I reckon it could make quite a big difference and break to main queue into more manageable chunks.

Will open feature requests against drupal.org for those last two now.

I also think the fact that core modules (forum/taxonomy) etc. don't have their own dedicated issue queues (or branches for testing) as available to modules in contrib is negatively impacting the attention they get, but have already said the same here so won't repeat those arguments.

Comments

more queues

gábor hojtsy's picture

Indeed, I think "more queues" (better tagging) would be great. For example, we are reusing "code needs work" for follow up documentation change requirements, after a patch is already committed. Sometimes also there is a list of stuff to work on in the patch: doxygen, API, introduce new usage in more places and so on. So a multitype classification solution would be great there.

Feature request now in for

catch's picture

Feature request now in for free tagging vocabulary on issue followups.

One step closer

aclight's picture

I've now committed functional but still in-development code for the comment alter taxonomy module, which will allow users with certain permissions to alter taxonomy terms of a node from comments.

I've made a more in-depth write up of this at http://groups.drupal.org/node/6809

Drupal 6.0 release the issue

catch's picture

Drupal 6.0 release the issue queue counts were approximately:
75 pending bugs
0 critical issues
340 patch queue
135 patches to review.

D7 on 14/02/08:

42 pending bugs
41 critical issues
488 patch queue
144 patches to review

(obviously this will increase a lot as issues get bumped, but a good reference point nonetheless).

Whoah...

michelle's picture

From 0 to 41 criticals in a day!?

Michelle


See my Drupal articles and tutorials or come check out the Coulee Region

From D6 to D7

alex ua's picture

Maybe I'm wrong, but aren't you looking at the D7 queue today, while yesterday it was still D6? Were they all from one day, or did the release of D6 change things?

A new version, a new set of issues... It's actually up to 43 now...

Alex Urevick-Ackelsberg
ZivTech: Illuminating Technology

Yes...

michelle's picture

But at this point D6 and D7 shouldn't be radically different unless there's been a lot of committing going on since it was opened up. So I'm thinking either there's been some pretty buggy stuff committed to D7 or these bugs exist in D6 as well. I know D6 was shipped with known bugs as any software is but they weren't considered critical a day ago. :)

Michelle


See my Drupal articles and tutorials or come check out the Coulee Region

Nah there's a bunch of stuff

catch's picture

Nah there's a bunch of stuff marked 'critical' moved to D7, even months ago, because it would break APIs. After RC, Drupal 6 criticals becomes only 'release critical bugs', now criticals are 'D7 will suck if we don't get this in' - plus there's about 10-15 critical issues out of 40, most submitted by the same person, that should not be marked as such.

What will also need to happen is all the D6 pending bugs and patches all bumped to D7 (they'll need to be applied and backported anyway) - would require a query ideally, that's not a fun job.

Reviewers

Group organizers

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: