Here is a quick outline regarding the reasons for using a version agnostic system. These have not been well communicated before which resulted in some resentment of the approach. I urge to read this with an open mind.
Advantages: a) Improving accessibility to the source code for everyone. b) Fostering synchronization across branches. c) Enables easy migration between trees. Disadvantages: d) Win32 developers might lose 10s every 6-18 months. a) Improved accessibility to the source code for everyone. The module name phpX suggests that you instantly get PHP X which is not true, unless PHP X is on the HEAD branch. This has resulted in lots of frustration in the past where people could not figure out why "php4" would not give them PHP 4, but a broken PHP 5 checkout. Thus, "php4" has been already eliminated. For the same reason, "php5" would become defunct, but people would continue to try using it. Embedding a version in the module name simply does not work in the long run, because it implies semantics which cannot be supported by CVS. b) Fostering synchronization across branches. The module name "php5" is misleading. If developers think of the PHP HEAD branch as a separate "php5" module, they will not be aware of other branches. And thus, improvements will not be merged properly, causing a detoriation in code quality. A recent example: When the SNMP maintainer wanted to apply/test a patch properly, he had to come to this mailing list to ask for the proper procedure. Other maintainers might simply not bother and will leave the code as it is: unpatched. c) Enables migration between trees. With php4/php5 you had to have distinct checkouts. With php-src, you only need one checkout where "cvs upd -r XXX" lets you switch between the major PHP versions. Disadvantages: d) Win32 developers might lose 10s every 6-18 months. After a fresh checkout, VC++ needs to be restarted once. Note that building PHP takes already ten times longer than this little one-time step. - Sascha -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php