Re: [Coding Standards] Loading all files at once
| From: | Simon Ruderich | Date: | Tue, 10 Jul 2007 13:51:54 +0000 |
| Subject: | Re: [Coding Standards] Loading all files at once | ||
| References: | 1 2 3 4 5 6 | Groups: | php.pear.dev |
| Request: | Send a blank email to pear-dev+get-47393@lists.php.net to get a copy of this message | ||
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
Hi,
if I understand the problem correctly then the only reason for this
change is an increased speed with opcode caches (and maybe the
possibility to change versions of part of the packages to use an older
version for example).
I think the easiest and best approach to this problem would be to
delegate it to the PEAR2 installer.
So the code is kept the same as it is now (of course only those relevant
to the require_once problem) and the user can decide then what he wants.
1. Use with opcode: PEAR2 installer generates allfiles.php for increased
speed and strips all top-level require(_once)s from the code.
2. Use without opcode: PEAR2 installer installs the file as it is; maybe
gives information how to set the include_path (and prints the necessary
one for PEAR).
3. Use of different version for a package or another class (not sure if
I understand that completely): PEAR2 installer handles that too (not
sure how, because I don't understand the problem here exactly; I would
use symbolic links or just replace the file when I want to do that, but
perhaps I'm missing something).
Also I think that problems with include_path are very easy to solve
(even for beginners). Only the path to one directory (where PEAR2 is
installed) has to be added. But I think the documentation could be
improved to state this very clearly including a simple installation guide.
I think it's important that PEAR2 is not only optimized for opcode users
because there are still many other users who don't have these
possibilities. And I think those shouldn't be excluded.
And because the PEAR2 installed can handle most of the work it should be
used. This also removes this work from the developers.
I think this would be a good solution for everyone and shouldn't be too
difficult to implement.
Simon
- --
+ privacy is necessary
+ using http://gnupg.org
+ public key id: 0x6115F804EFB33229
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (Darwin)
iD8DBQFGk475YRX4BO+zMikRCnoHAJ4uj2vIM07ZZmGbXB05zTBYYVVbkwCgkf8I
TJGZNTs/CWuAC7PUlZ3KRAg=
=Brt4
-----END PGP SIGNATURE-----