PEAR is discontinued

This is a static archive preserving historical releases and metadata. No new packages or updates will be published. For updates to existing packages, or to publish new packages, please use Composer and Packagist.

Home » PEAR » PEAR » Bug #4740

Bug after updating to 1.4.0

Details

Submitted2005-07-04 19:26 UTC
Fromphp at adaniels dot nl
StatusBogus
PackagePEAR
PHP Version5.0.4
OSWindows
Roadmaps(Not assigned)

Comments

[2005-07-04 19:26 UTC] php at adaniels dot nl

Description:
------------
Upon updating to PEAR 1.4.0, I got an error. Now I am not able to update or install any package (which sucks)

Reproduce code:
---------------
pear upgrade pear-alpha

Actual result:
--------------
H:\Program Files\Zend\ZendStudioClient-4.0.1\bin\php5\PEAR>pear upgrade pear-alpha
downloading PEAR-1.4.0a12.tgz ...
Starting to download PEAR-1.4.0a12.tgz (264,326 bytes)
......................................................done: 264,326 bytes
Optional dependencies:
package `Net_FTP' version >= 1.3.0RC1 is recommended to utilize some features.
package `PEAR_Frontend_Web' version >= 0.5.0 is recommended to utilize some features.
package `PEAR_Frontend_Gtk' version >= 0.4.0 is recommended to utilize some features.
upgrade ok: PEAR 1.4.0a12p wordt niet herkend als een interne of externe opdracht, programma of batchbestand.

Fatal error: Class 'PEAR_Command_Auth-init' not found in H:\Program Files\Zend\ZendStudioClient-4.0.1\bin\php5\PEAR\pear\PEAR\Command.php on line 271

[2005-07-11 17:59 UTC] joe at joestump dot net

I'm getting the same error on Debian GNU/Linux:

Fatal error: Cannot instantiate non-existent class:
pear_command_auth-init in /usr/share/php/PEAR/Command.php on
line 271

[2005-07-11 18:06 UTC] joe at joestump dot net

I've found and fixed the problem. In the PEAR/Command
directory there are files like "Auth-init.php" that should
not be automatically included by Command::registerCommands
(). The fix for me was to alter line 263 to look like this:

if ($entry{0} == '.' || substr($entry, -4) !=
'.php' || $entry == 'Common.php' || (strpos($entry,'-') !==
false)) {

Notice the strpos() call. If the file has a dash in it then
don't try loading it. I can only assume Auth and the other
classes include their init files on their own.

[2005-07-26 16:15 UTC] pmjones at mac dot com

I just ran into this problem today after upgrading to Mac OS X 10.4.2. I had installed Marc Liyanage's PHP 5.0.4 (entropy.ch) package and aliased the Mac PHP binaries to the Entropy PHP binaries; the install apparently hosed the aliases, including the "pear" alias. Not sure how to proceed, will probably require an uninstall-and-reinstall of the entropy package to get clean versions, then have to re-map the aliases. :-(

[2005-08-09 11:05 UTC] eamon dot costello at gmail dot com

Hi cellog, I had this problem too. I checked the version of the Command.php file in the PEAR 1.4.0a12 tar I downloaded and it seems to be v 1.32:

@version CVS: $Id: Command.php,v 1.32 2005/03/24 05:04:47 cellog Exp $

- Eamon

[2005-10-25 11:12 UTC] j at firebright dot com

The || absolutely fixed this problem for me on CentOS 4. Eeexcellent smithers. Thank you for your efforts.

[2005-11-02 09:52 UTC] d dot schoone at d-media dot nl

the fix with de Command.php works for me also after apt-get upgrade of php4-pear on Debian

[2005-11-17 18:10 UTC] whiteside at acm dot org

I similarly needed to blast everything to resolve this issue. In the end I followed these steps on Redhat Fedora Core 4

rpm -e --nodeps php-pear (to remove the files)
rm -R /usr/share/pear/* (deleted all stragglers, of which there were many)
yum install php-pear (reinstall)

and a subsequent 'pear update-all' worked fine