SpringSource and the Open Source Community
As with any software development project, the open source community, such as the Apache Software Foundation (ASF), issues new releases of its project in response to correcting problems in earlier versions and/or to add new features. Unlike commercial ventures, however, there is a difference in the predictability of when new releases are made available and the rigor in which they are tested.
The very nature of open source—an amorphous, diverse, distributed group of developers with no mandated structure—can adversely affect product release cycles of open source products. Any central organizing group only carries the authority granted to it by each individual contributor to the code so schedules frequently slip. Individual deadlines may be missed because contributors tend to work on open source projects as an avocation, and therefore, may have higher priorities in their lives that take precedence over the delivery of code when originally promised. The situation is further compounded by the fact that there is no true QA team charged with ensuring that each release does not contain problems of its own--developing new code is considerably more interesting and satisfying than troubleshooting old code.
With this knowledge of the workings of open source software development, SpringSource is very cautious in selecting the versions of any open source project that it will support. For many projects from the ASF – Apache ActiveMQ, Tomcat, HTTPd and related modules that we support – SpringSource begins supporting them, not as soon as a release is made by the ASF, but when they have proven stable in production environments and have passed the scrutiny of our internal QA team. It is during this process that SpringSource works with other vendors that integrate with the open source projects so that we can ensure a full QA and regression testing has been completed for those related technologies before a release is deemed supportable. Additionally, SpringSource may begin supporting the project on a particular platform (i.e. Linux) without supporting it on another platform, as their stability is sometimes unrelated.
SpringSource is in a unique position to assess the quality of Apache project releases, as it employs many of the core developers for those technologies. In fact, many SpringSource developers spend a majority of their time coding enhancements and fixes to these technologies. Because of this, SpringSource has intimate knowledge of new releases before the formal release by the Apache project team. In short, customers can trust that SpringSource will support only those releases that will be the most stable and production ready.
The ASF generally releases fix and updates through a full project release process, meaning all components present in the software project are updated. These releases can take place as often as weekly. Because weekly software updates in an enterprise environment is undesirable and likely impossible, SpringSource instead provides critical updates in the form of patches, which update only the affected component and eliminate the need to reinstall the full software project on a regular basis.

