Hi igniters!
Following our discussions about emergency releases I see that here might
be applied new way for doing releases. Like it was for Linux or like it
is for Ubuntu. I mean do interleaving releases: first is experimental
with newest features and second - with bug fixes ONLY.
For example, odd version number is unstable and even is stable: 2.5
introduces a lot of new features, when 2.6 brings more stability to product.
Pros:
1. User always has a choice what to choose: cutting edge technology or
release that has less problems.
2. It will be much easier to add more effort to make TC green again, as
fixes are not mixed with features.
3. We may spend more time on prepare stable release and do more rigorous
testing.
4. Stable release may keep 100% compatibility to previous release (not
always, of course) to make it easier to migrate and take important bug
fixes without introducing a new ones.
5. Not all users will fall in critical issues, in other words, only some
group of users will try to use unstable release with experimental features.
Cons:
1. Necessity of keeping two branches simultaneous: master and stable
release. Migrate fixes between branches.
2. Less users could report about found issues, as consequence of item #5
from pros.
3. A bit more complex release procedure???
I think it's common and right way to create a less buggy product.
What do you think?
Thanks!