[Opensim-dev] Stable Branch pt III Was: RFC: Changing default script engine to xengine

Mariusz Nowostawski mariusz at nowostawski.org
Thu Dec 11 11:23:53 UTC 2008


Sean Dague wrote:
> Mike Mazur wrote:
>   
>> Hi,
>>
>> On Wed, 10 Dec 2008 14:29:37 +0100
>> Stefan Andersson <stefan at tribalmedia.se> wrote:
>>
>>     
>>> Since trunk is currently considered anything but stable, are people
>>> feeling up for trying out branching a stable version before we do
>>> this, and then actually work on that branch to stabilize it?
>>>       
>> I can see some people being hesitant to commit to supporting this
>> because they don't want to worry about committing to two branches each
>> time they have a fix, or they don't want to maintain two slightly
>> different code bases. Bug reports could also become more of a hassle as
>> some users will report bugs against the trunk, while others against the
>> stable branch.
>>
>> Having said that, I can see a benefit for having a stable branch.
>> Ideally it would follow trunk pretty closely, and when it becomes
>> challenging to apply patches to both trees without too much massaging,
>> it's time to do final stabilization on that final branch and release.
>>
>> I would like to encourage you to give this a try. If it works it's
>> likely to convince the other developers to play along, and if it fails,
>> we've learned our lesson. In the meantime, don't expect too much
>> commitment from all the devs, and be prepared to take responsibility
>> for this stable branch. After some time, we can all look back at how
>> things went and decide what to do in the future.
>>     
>
> The problem with stable branches... is they aren't.  If you add code to
> a branch, you have the potential to break it, especially on a source
> base as complex as OpenSim.
>
> Personally, I'm going to stay focused on trunk, that's where my time and
> interest lies.  A better approach to stability than stable branches is
> to help create unit tests for trunk.  This helps contain behavior, and
> drives towards code correctness for parts of the tree.  Over time,
> that's the only way to have a truly stable tree.  It has prevented
> dozens of bugs from going into the tree already.  I'd encourage people
> spend time on enhancing automated testing instead of doing point in time
> stable branches.
>   


Hi,

I agree with all that Mike said above (and, at the same time, I also 
agree with all that Sean said: it is good to have more tests, and it is 
easier for developers to just have trunk to commit to. However... ;)
Regardless of its alpha status, OpenSim is already being used in a 
variety of deployments. This is the reality - OpenSim is being used, and 
users are part of the equation (officially or not, that's how it is 
today). The lack of any form of proper release system is making it 
difficult for those users to strike the balance between relative 
stability and the feature set of OpenSim snapshot that is being 
deployed. Each, so called, "OpenSim release", has its problems, and 
users tend to "fix" those problems by following the trunk, which makes 
the current "release" model pretty meaningless. New trunk revision often 
fixes some of the old problems, but introduces new ones. For users that 
maintain and manage any form of OpenSim deployment, this represents a 
major hassle, and it also makes OpenSim harder to use (and perhaps even 
somewhat reduces its perceived value). I'm not talking here about 
developers - I'm talking here about people that use OpenSim. E.g. we use 
OpenSim in the national virtual world grid that runs over research 
network in New Zealand. The project is all run by volunteers and 
university staff. We do not contribute much code, however, given enough 
time, interest and traction of the project itself, there is a growing 
users and developers base that study and gain experience with OpenSim 
technology. Following the trunk and maintaning a reasonable level of 
stability in the grid is pretty much a full time job. It wouldn't be, if 
there was a slightly better stable release system.
Of course, one can say that the users are not important at this stage, 
that OpenSim is only for developers to have fun, work on the trunk, and 
do not spend time committing bug fixes into more than a single branch. 
But, I am not sure all of the developers would agree with that. I 
honestly believe that even at this stage, users are, somewhat, relevant 
to the entire process, and helping the users will ultimately benefit the 
project in the long run. Stable branches are of great help here. And 
also, one of the easiest solutions to a relative stability of releases. 
Users would use those stable branches, and potentially contribute back 
comments and perhaps even patches, that are made against those stable 
branches. Lots of open source project use that model successfully and I 
agree with Mike that perhaps you folks should give it a try. 

-- 
cheers
Mariusz



More information about the Opensim-dev mailing list