Next release 2.4.1? Branching stable and trunk sooner or later?

Christian Stimming stimming at tuhh.de
Thu Jan 20 15:47:24 EST 2011


Developers,

we should decide when to make our next release 2.4.1, and what should be 
included. In particular, we need to decide whether a 2.4.1 release should be 
made from trunk (development) or whether be better want to fork off a 2.4-
stable branch where this 2.4.1 release is made from.

Since the 2.4.0 release on 2010-12-20, we have 111 new revisions on trunk. The 
majority of them are bugfixing and stabilizing which is fine for both trunk 
and stable branch. But a minor part are completely new features, some of which 
are a rather isolated part (e.g. a new report), but some of which are more 
into the core of gnucash, risking new side-effects or bugs that have not yet 
been found. Some of the commits introduce a few new strings, some even more 
strings.

We have been a bit undecided on this issue. Due to our undecidedness some 
people (and most actively, myself - I pledge guilty on this one :-) started to 
commit new features already, basically because the features have already been 
waiting for contribution in my local queue or in bugzilla patches.

Forking into stable and development (trunk) branches has pros and cons, as 
always. 
- Pro: The stable branch has a higher probability not to introduce unexpected 
bugs. 
- Con: The merging of stability commits from stable to trunk or vice versa is 
a PITA with SVN and I want to avoid it because it sucks. (Yes indeed, IMHO 
this is much easier if one were using git, but we don't, currently.) Hence, 
with our current SVN repo, creating the two branches now risks diverging so 
much that we need to abandon the stable branch relatively soon anyway.
- Con: Because the developer by definition run the trunk version, they won't 
recognize bugs in stable as quick as they do for bugs in trunk.
- Con: Only the stable branch will be actively translated, the trunk branch 
won't have a complete translation until it turns into the next stable.

So what do we do for 2.4.1 and further "stable" releases? Do we plan a 2.4.1 
from trunk rather soon, including all new features, and fork after the 2.4.1 
release for a few subsequent 2.4 stable releases? Are there any more 
significant changes upcoming which would clearly justify the separation of 
development and stable? (Not from me - I'm just implementing some minor 
features here and there, although they do have some minor risk for introducing 
unwanted side-effects and bugs, as usual.)

I'd suggest to have a 2.4.1 from trunk rather soon, like, this weekend or the 
next weekend. There are already a bunch of interesting bugfixes in there. 
There are still missing bugfixes, but those are missing in 2.4.0 as well, so 
there's no regression risk here.

Best Regards,

Christian


More information about the gnucash-devel mailing list