PEAR is archived and read-only

This mirror preserves historical PEAR package releases and metadata so existing references remain available.

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