Re: bzr stable branch maintenance and backporting

From: Henrik Nordstrom <henrik@dont-contact.us>
Date: Fri, 28 Mar 2008 11:30:55 +0100

On Thu, 2008-03-27 at 22:26 -0400, Tres Seaver wrote:

> OK. I had the impression that bzr's model was "branch happy" (compared
> to CVS / SVN), which would seem to me to make "forward porting" more
> attractive.

bzr is "branch happy", and we use that quite extensively to cater new
developments and bugfixes. It has native support for the branch model we
have been emulating ontop of CVS for ages. But for many reasons it's
better if code first goes into the trunk, and when identified as a
bugfix, validated, qa checked, and trusted to really fix the issue it
propagates back to the stable branch, and from there trickles down to
older stable branches.

> For instance, in supportig Zope2, we often need to do a fix across
> multiple supported releases: e.g., if somebody reported a security
> issue today, we might end up releasing fixes for Zope 2.8 and 2.9, as
> well as 2.10 (the currently released branch) and 2.11 (the
> almost-ready-for-prime-time branch). I've even done one fix in this
> configuration for 2.7 (because there are a large number of production
> systems on 2.7, including a couple of my clients).

And with the "daggy fixes" model you need to make all those always in
the latest possible version the fix need to be applied to and then let
it propagate forward. I.e. all developers must do bugfixes in Zope 2.7
in order to get 2.11 fixed.

> My experience with such fixes indicates that it is much easier to fix
> the oldest stuff, and than forward port, compared to fixing the trunk,
> and then backporting. That made the "daggy fixes" model seem quite
> natural to me.

Backporting bugfixes hasn't been a trouble in the history of Squid. But
quite often the "bugfix" is backing out stuff which didn't quite work or
applying a "stable-only" workaround waiting for the proper solution to
be done in trunk.

Sure, it may be a little more trouble to the release manager (who is
also ultimately responsible for making sure the needed stuff gets
backported), but it makes it a lot easier to keep a good view of what
gets into the stable branch.

Regards
Henrik
Received on Fri Mar 28 2008 - 04:32:07 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Apr 01 2008 - 13:00:10 MDT