Shared library annoyance with gcc-3_0-branch

dewar@gnat.com dewar@gnat.com
Sun Feb 18 08:39:00 GMT 2001


<<My main point here is that as long as binary and source compatibility is
maintained, there will not be a problem in releasing more often. But if
people can't resist fixing things that breaks compatibility I would tend
to agree with you.
>>

Well you can't expect people to upgrade their systems to new releases
too often for several reasons including:

1. Installing and qualifying a new release is a huge effort in a large
project.

2. Going to a new release is only worthwhile if it addresses major
significant problems.

3. Even with the most strenuous regression testing (which is typically
not done for most major gcc components, this is not a criticism, just
an observation on what can be achieved with current resources), you
will still have regressions between releases, and these regressions
can be deadly to critical schedules.

So a more frequent release schedule has the inevitable effect of 
increasing the number of versions in active use. That's not necessarily
a bad thing, but it makes the support effort that much more difficult.

Developers often like to take the viewpoint "just upgrade to the latest
version, your bug is fixed there", but that's an impractical attitude
for a project that has base lined on an older version.

Supporting old versions is of course unavoidable (in a situation where
you are in the business of providing support to serious users with large
projects), but certainly you have to balance the advantages of frequent
releases against the disadvantages.

One point we have found is that no matter how much we do to smooth the
process, getting a new release out of the door is a huge amount of work.
So more frequent releases means more time spent on the mechanics of 
generating the releases. That's not fun work, and definitely not work
that attracts enthusiastic responses from volunteers all the time.

I certainly know that at ACT, we all have things we like to do, and things
we would just as soon not work on, but someone has to do it. Making releases
is definitely in the second category :-)



More information about the Gcc mailing list