I think one of the significant frustrations I've had with getting Geronimo released is a lack of
common understanding about several items.
I am listing the ones off the top of my head (in no particular order).
*What constitutes a release?*
Speaking from my IBM WebSphere days (just as a point of reference for discussion and not
specifically a recommendation) we generally differentiated products based on Versions and Releases.
Versions were significant new content and function which might be defined as a new J2EE
specification implementation, significant new function (clustering improvements might fall in this
category), etc.
Releases were less dramatic and more incremental in nature. They could include performance
improvements, new features that were not disruptive to previous releases (such as improved CMP
persistence options, etc.) or perhaps even a JDK Version upgrade from 1.4 to 1.5 for instance.
Releases could also include what we referred to as tech previews. These were items that we wanted
people to have a chance to start using but it wasn't fully baked yet. However, we did not want to
wait a whole version release to put it in the hands of the users.
So for notational usefulness. We saw a version number break down like v.r.m where V is the major
version number, R was the release number and M was a modification level.
Modification levels could include new features of a limited nature as described above. One was
simply aware of how it would impact the users in terms of determining appropriateness.
So, our 1.1 that we are currently release doesn't fit the above model as very little new content was
added. The Plugins is probably the most significant feature but based on where it is at today I'd
say its more of a tech preview in terms of readiness and number of plugins available for
consumption. It really should have been 1.0.1. IIRC the reason we made it 1.1 is that so much of
the internal plumbing changed (I guess as well as the schema design) that it didn't make sense as a
1.0.1.
With that said, for 1.1.1 I am interested in fixing things like error messages that are not too
helpful, applying outstanding patches that address usability improvements (like asking are yu sure
you want to delete that) as well as improve our performance in the CMP realm where we are way
behind. The performance improvements are not destructive and are (architecturally) fairly simple to
enable. However, based on Alan's comments in another e-mail perhaps not appropriate.
With that I think we need to decide if the next turn of the crank for Geronimo is really 1.2
(incremental improvement) or 2.0 significant change, new significant features, etc.
Thoughts?