Re: file structure

From: Date: Fri, 02 Apr 1999 00:42:26 +0000
Subject: Re: file structure
References: 1  Groups: php.dev 
Request: Send a blank email to php-dev+get-4879@lists.php.net to get a copy of this message
On Wed, 31 Mar 1999, Stig Bakken wrote: > On Wed, 31 Mar 1999, Zeev Suraski wrote: > > > That's a big mistake IMHO. Zend is today, already, a separate library that > > separated the vast majority of 'core' files into a completely different > > directory, even a different package. A lot of the files in the main dir > > were removed, almost all of them were pulled out into the ZendCore > > directory, etc. > > > > The current tree will hopefully hit core@ this Saturday or next Sunday. > > Investing work in the php3 tree is a waste of time IMHO, since most of it > > would have to be completely remade for PHP4; plus, it's not as if there's > > too much idle time left for it... > > It boils down to this: I want to avoid all the grinding of teeth we had > with keeping 3.1 up-to-date. PHP needs to be re-structured to meet Zend, > and I would prefer if we did these two things (restructuring and Zend) > separately, having a working version between each change. > > The alternative is to start with a fresh php4 tree, but then we must make > sure extensions are kept up-to-date (better than we did in 3.1). I think > we will need "official" maintainers for each extension for this. Someone with the holidays and the various machines I've missed your letter. I suddenly noticed it on pine now :) Meeting Zend and restructuring cannot be separated into two different issues, no matter how you put it. Zend requires restructuring as it is. It's not the module restructuring, but it's restructuring all the same. Also, the API changes in PHP4 would require patches to the modules (not because of Zend mostly, but because of SAPI). While most stuff would work fine on both versions (as was the case with PHP 3.1 and PHP 3.0), some stuff would break and moving around .c files between the versions will probably require some work of some #compiler directives work. There's nothing you can do to avoid it, and there's nothing you can do to avoid the fact that both the php3 and php4 trees would be open to commits at the same time. There would be a time where PHP 4.0 is under intensive development, while it's still not ready for prime time and most maintenance patches would go to PHP 3.0. Either way, I don't see any option other than opening a brand new CVS for PHP 4.0, which would be based on the modified source tree that we've created. Applying patches would drive you mad after an hour; Even applying the fairly trivial patches of 3.0.6->3.0.7 onto the Zend tree proved to be mind blowing (and I've given up on it, people would have to migrate patches one by one); Trying to patch up a PHP tree with Zend patches is simply not realistic. What may be possible is changing the php3 source tree to look like the php4 source tree, so that it's easier to move around between the versions. The main thing I have against it is that we'd be significantly messsing with the mainstream production version, possibly breaking it on various cases/platforms. If we do it as a part of php4, we're messing with something that needs serious testing on all platforms anyway, it's much less dangerous. Finally, I think that we shouldn't fear what happened with the 3.1 too much, because things are pretty different now. The problem with 3.1 was that it lingered, since not many people invested time in it (Shane with SAPI, and you with the module restructuring). The features PHP 3.1 offered to developers and end users over PHP 3.0 weren't significant, and if they were (Win32 support) - they weren't really ready to use or even beta test. It was all 'raw' code that still required tons of work and hammering. The case is very different with PHP 4.0. What it offers right here and now, to both end users (beta testers) and developers is huge performance increase and tons of new features. It would definitely encourage most developers to switch or at least support that new platform. I can't imagine any major PHP developer not playing with PHP4 as soon as it hits beta, and assuming he likes what he sees (which I hope is very reasonable), that version will remain sync'd or even in front of the PHP3 tree. Zeev -- ----------------------------------------------------- Zeev Suraski <zeev@zend.com> For a PGP public key, finger bourbon@netvision.net.il -- PHP Development Mailing List http://www.php.net/ To unsubscribe send an empty message to php-dev-unsubscribe@lists.php.net For help: php-dev-help@lists.php.net

« previous php.dev (#4879) next »