RE: [PEAR-DEV] The Nature of PEAR's Greatness - pear install
| From: | Hundiak, Arthur | Date: | Mon, 12 Apr 2004 15:13:03 +0000 |
| Subject: | RE: [PEAR-DEV] The Nature of PEAR's Greatness - pear install | ||
| Groups: | php.pear.dev | ||
| Request: | Send a blank email to pear-dev+get-27460@lists.php.net to get a copy of this message | ||
Arthur Hundiak wrote:
> * The installer is great.
>
> COMMENT: It's fine when it works. The problem is that is simply does not
> work on many common setups. In a way that's not so bad if we assume that
> using PEAR classes is only for the serious developer. Casual developers
> need not apply.
Greg Beaver wrote:
>define "many common setups"
>
>I have seen it confirmed working in PHP version 4.2.0-PHP5HEAD on:
>
>If there are problems, they can be fixed. However, I don't see any open
>bugs in the PEAR package saying "installation doesn't work for OS
>blahblah"...
It's not bugs per se but rather the nature of the beast.
Scenario 1
A developer has gotten apache/mysql/php running on his linux box using his
distribution tools. He reads an article about an awesome template system
and types:
pear install HTML_Template_Flexy
Does the install work? Probably not. Good chance the PATH is not set, php
or pear core classes are out of date, no permissions on the default install
directory, package not yet formally released etc. All the issues can be
fixed but it does take some expertise. Impatient, the developer pulls a
class from phpclasses and sees that the instructions say "copy all the php
files to xxx". Not nearly as good as pear install but it gets the developer
going.
An independent example of the same scenario:
http://www.phpbuilder.com/board/showthread.php?s=&threadid=10268480
And of course there are plenty more on the mailing lists.
Scenario 2
Your pear based app has been developed locally and now it's time to deploy
on your low cost shared host system. This particular system allows ssh
access (jailshell) and runs php in "safe" mode. By now you have some
expertise with the installer so you type:
pear config-set php_dir $HOME/include/pear
and get
PEAR_Config::writeConfigFile fopen('/home/ahundiak/.pearrc','w') failed
I never looked any further to see if safe mode restricts access to the home
directory or if something else is going on. I just tar up the pear files
from my developments machine and send them over. Even if I could use pear I
probably wouldn't as I want more precise control over the deployed files.
But again, I think the more casual developer could have problems. And I do
have some concern that someone might release a class that requires it to
have been installed using the pear tool.
The Point
To be honest I am not sure what my point is. It would be extremely
difficult (if not impossible) to fix these sort of problems. I guess that I
am just trying to point out that there is a non-trivial barrier to getting
started with using PEAR classes. And one should keep this in mind when
pondering the future of PEAR.