Forum OpenACS Q&A: use cvs tag oacs-4-6-1-b2

5: use cvs tag oacs-4-6-1-b2 (response to 1)
Posted by Andrew Piskorski on
Tilmann, I think your problem is that you used the 4.6 branch the wrong way, or at at least thought about the wrong way. The "oacs-4-6" tag is the branch tag, so if you cvs update to that, you're saying, "Give me the very latest development on the 4.6 branch, the stuff which will eventually become a 4.6 point release." This is presumably more stable than cvs HEAD, but there is absolutely no guarantee of that. And you could always be really unlucky and get the first half of a developer's two cvs commits which need to go together.

If you want stability, you need to use a specific release, like 4.6, 4.6.1, 4.6.1 beta1, 4.6.2, etc. The "oacs-4-6" cvs tag is not a specific release. The cvs tags "oacs-4-6-final", "oacs-4-6-1-b1", and "oacs-4-6-1-b2" are.

Of course, it's quite true that there might be a very bad bug in, say, "oacs-4-6-1-b2", which someone has fixed on the "oacs-4-6" branch but not yet tagged for release. And in that case, the tip of the branch will in one sense, coincidentally, be more "stable" than the last tagged release - it will work better. But that's an accident, and far from guaranteed. By design and common sense, any released version should be more "stable" than source code that's a moving target. And the tip of any branch, be it the head or the 4.6 branch, is always a moving target. The only difference between head and oacs-4-6, is that oacs-4-6 is probably a much slower moving target than the head.

Posted by Tilmann Singer on
Thanks for all the clarifications! I will only cvs update to release tags from now on when stability is most important.