All- As a novice developer, I have an opinion question. How rapidly should bugfixes be released using the Drupal module release system. To be specific, whenever I do a point release, I get new bugs because people upgrade or I get new users. New bugs appear becuase I'm a novice, and I'd prefer not to debate that here. The question is, how quickly should I roll a point release to address those bugs? I've already rolled two point releases this week, and have a third pending. So which is the "better" option: - Quickly release bugfix #3? - Post a patch for existing (known) bugs and note that a new release is forthcoming after XX days of bug checking? (I realize, of course, that the best option is "catch all the bugs before releasing the module," but it's already too late for that.) A follow-up question: Should the consensus answer be added to http://drupal.org/handbook/cvs/releases/types All non-flames appreciated. Offlist is ok. - Ken Rickard agentrickard
Ken Rickard wrote:
The question is, how quickly should I roll a point release to address those bugs?
What you point out here is the value of a stable branch based module system that you can let people check out and test for regressions, etc. My suggestion to you if to encourage people to test a branch before you tag it as a release. Much like upstream drupal is done but on a much smaller scale, etc. That being said i don't think anyone will complain that you make too many releases while you get your feet wet. I'm only offering advice to help slow down that pace. -- Michael Favia michael@favias.org tel. 512.585.5650 http://michael.favias.org
Ken Rickard wrote:
To be specific, whenever I do a point release, I get new bugs because people upgrade or I get new users. New bugs appear becuase I'm a novice, and I'd prefer not to debate that here.
No reason to be at all worried about that. Just about *all* software has bugs in one sense or another. It's how you (1) learn from experience, and (2) you learn how to fix bugs you or other people find that will take from being a "novice" and turn you into an experienced developer. So welcome to the club! And remember, we all started some place. Rob
Hi, that's indeed a good question. I personally wait several days or maybe one or two weeks after I fixed a bug. In the issue that reported the bug, I state that this bug has been fixed in the development release (you could also provide a link to the release node). When no other bugs occur, I'll roll a stable release.
New bugs appear because I'm a novice, and I'd prefer not to debate that here.
Rest assured that most likely all code has bugs. Even from advanced developers. Take for example Drupal core: there are lots of bug fixes even though core code is usually reviewed by many eyes when it's committed first.
I've already rolled two point releases this week, and have a third pending.
Three releases in a week is probably not a good idea. However, this also depends on the severity of the issues fixed. If they are pretty grave (XSS, Module can't even be installed, etc.) it's of course necessary to immediately release a new module. If the bug was a minor one, you probably can wait several days or even weeks.
Should the consensus answer be added to http://drupal.org/handbook/ cvs/releases/types
Definitely. Konstantin Käfer – http://kkaefer.com/
On 2/13/07, Ken Rickard <agentrickard@gmail.com> wrote:
- Quickly release bugfix #3? - Post a patch for existing (known) bugs and note that a new release is forthcoming after XX days of bug checking?
How about a third option: regular releases. I think we (contrib developers and contrib-module-downloaders) all benefit from having sites using the most recent stable version of a module. If the contrib developers were to all release new stable releases at a regular basis then it's easier for downloader-users to know to check for a new version and then get one and download it. If lots of module developers do this then a downloader-user can check for new versions on that regular schedule rather than having to use other means to look for new versions. If something is critical like a security problem then you break from that schedule, but otherwise just stick to the once monthly. If someone is really bitten by a nasty bug before the scheduled one then they can help test out patches or the end of the branch. This is a common mechanism for updates (e.g. RedHat, MSWindows). So, what do folks think about the idea of a schedule of releases? My strategy as a developer would be something like: X days before the release try to identify the bugs I want to fix and make solutions Y days before the release commit those patches and call for testers Where X > Y (duh). If you like it, what seems like a reasonable period? Once a week? Once a month? Once a quarter? Month seems best to me. Thoughts? One other (somewhat related) topic is the idea of discussion areas specific to modules or specific sets of modules. For path.module and pathauto and urlify we have the "paths" group http://groups.drupal.org/paths It's been relatively useful for communicating these kinds of things. It could also be used to announce new major releases in a way that people can get an email (e.g. send an email using the email all manager function of groups). Regards, Greg
Greg Knaddison - GVS wrote:
On 2/13/07, Ken Rickard <agentrickard@gmail.com> wrote:
- Quickly release bugfix #3? - Post a patch for existing (known) bugs and note that a new release is forthcoming after XX days of bug checking?
How about a third option: regular releases.
possible fourth option: modules that phone home (d.o) for update status? Has this been visited and shot down for good reason? Please forgive the blatant ignorance. -- Michael Favia michael@favias.org tel. 512.585.5650 http://michael.favias.org
On 2/13/07, Michael Favia <michael@favias.org> wrote:
possible fourth option: modules that phone home (d.o) for update status? Has this been visited and shot down for good reason? Please forgive the blatant ignorance.
That's been discussed before a bit (and even partially implemented after work by kkaeffer, killes, and merlinofchaos). But it doesn't really help determine how often to release a new version of a module, it just reduces the need for checking. I talked about checking for new modules, but that wasn't the crux of what I was trying to get at. Even if you remove "checking for new modules" from my workflow there's still the "downloading/installing new contrib" overhead that I (as a module-user) would want to pack into a small window of doing lots of updates rather than spread out over a whole month - regardless of how I'm informed of the new modules available. Regards, Greg
Michael Favia wrote:
possible fourth option: modules that phone home (d.o) for update status? Has this been visited and shot down for good reason? Please forgive the blatant ignorance.
This is in progress. It would've been ready this weekend but I've not had as much free time/energy for Drupal stuff as I've wanted and some basic testing hasn't been done.
participants (6)
-
Earl Miles -
Greg Knaddison - GVS -
Ken Rickard -
Konstantin Käfer -
Michael Favia -
Rob Thorne