Just in case it’s news to anyone, yesterday saw the first major new release of the world’s most popular web server in just over six years. Apache HTTPD 2.4 is now released!
The last major release was version 2.2 in December 2005, while version 2.0 was first released as stable in April 2002. Why such a slow release cycle?
I guess one answer is that we have no marketing department breathing down our necks looking for press releases and big headline releases every six months. So no great pressure to keep putting out half-baked releases. This is indeed common amongst the best open-source projects: just look at how long the Linux kernel remained at 2.x, despite the constant very real need to update as hardware evolved under it! Apache’s most credible rivals in the web server space show no inclination to inflate versions, either (though application servers do: perhaps that’s why HTTPD remains a minority platform in that space).
The other reason for so few releases is that they’re rarely necessary. Apache’s modular framework means that substantial new features can be introduced without requiring any new release. The only absolute rule of minor delta releases (like an upgrade from 2.4.1 to 2.4.2, or from 2.2.0 to 2.2.20) is that they preserve full back-compatibility, so your existing modules still work even if you don’t have the source code. The ten years of Versions 2.0 and 2.2 saw many advances without fanfare.
I just dug up this text, from the preface to my book. I was right when I wrote:
The current Apache release — version 2.2 — is the primary focus of this book. Version 2.2.0 was released in December 2005, and given Apache’s development cycle, is likely to remain current for some time (the previous stable version 2.0 was released in April 2002). This book is also very relevant to developers still working with 2.0 (the architecture and API is substantially the same across all 2.x versions) and is expected to remain valid for the foreseeable future.