Package home | Report new bug | New search | Development Roadmap Status: Open | Feedback | All | Closed Since Version 1.10.15

Bug #8553 PEAR_Installer_Role_Common::processInstallation() does not honor layer
Submitted: 2006-08-24 19:26 UTC
From: farell Assigned: cellog
Status: Closed Package: PEAR (version 0.3.0)
PHP Version: 5.1.4 OS: windows xp
Roadmaps: (Not assigned)    
Subscription  


 [2006-08-24 19:26 UTC] farell (Laurent Laville)
Description: ------------ First, i would like to said that even if there are still some problems, this package make a remote PEAR installation so easy. Thanks for this works ! Now here is the resume of problems i've noticed : 1. i've begun to install a new copy of PEAR with go-pear.phar of PHP 5.1.4 distrib into local dir c:\pearix\pearix No i've not drunk, 1st pearix is a pure local dir, then 2nd is match the remote root /pearix dir. i've a pear config file called "remote.ini" in c:\pearix\pearix that match the local dirs. 2.i've install RemoteInstaller 0.3.0 and fixed bug 7881 C:\pearix\pearix>pear -c remote.ini install \pear\pear\PEAR_RemoteInstaller-0.3.0.tgz At this step i've on local C:\pearix\pearix>pear -c remote.ini list INSTALLED PACKAGES, CHANNEL PEAR.PHP.NET: ========================================= PACKAGE VERSION STATE Archive_Tar 1.3.1 stable Console_Getopt 1.2 stable PEAR 1.4.9 stable PEAR_RemoteInstaller 0.3.0 alpha (with bug 7881 fixed) 3. i've created the remote config file called ".pearrc" C:\pearix\pearix>pear -c remote.ini config-create /pearix .pearrc and upload it to my ftp server in /pearix directory. 4. i've set the remote_config var C:\pearix\pearix>pear -c remote.ini config-set remote_config ftp://user:pass@host/pearix/.pearrc 5. And first problem when i've try to upgrade my PEAR local and remote copy with : C:\pearix\pearix>pear -c remote.ini remote-upgrade \pear\pear\PEAR-1.4.11.tgz I got lot of messages : Notice: Undefined index: attribs in PEAR\RemoteInstaller.php on line 148 Notice: Undefined variable: tmp_path in PEAR\RemoteInstaller.php on line 148 then finally upgrade ok: channel://pear.php.net/PEAR-1.4.11 remote install ok: channel://pear.php.net/PEAR-1.4.11 6. second problem , my local pear installation copy into c:\pearix\pearix won't work anymore. I've noticed that all replacements during upgrade from version 1.4.9 to 1.4.11 was done not by expected c:\pearix\pearix but by remote /pearix. A very strange behaviour. 7. I've re-install a clean copy of PEAR 1.4.9 and upgrade to 1.4.11 with only command C:\pearix\pearix>pear -c remote.ini upgrade \pear\pear\PEAR-1.4.11.tgz then i've continue my tests and try to install a new package in local and remote C:\pearix\pearix>pear -c remote.ini remote-install \pear\html\HTML_CSS-1.0.0.tgz There i got downloading HTML_Common-1.2.2.tgz ... Starting to download HTML_Common-1.2.2.tgz (4,240 bytes) .....done: 4,240 bytes install ok: channel://pear.php.net/HTML_Common-1.2.2 remote install ok: channel://pear.php.net/HTML_Common-1.2.2 install ok: channel://pear.php.net/HTML_CSS-1.0.0 Could not open remote file ftp://user:pass@host/pearix/C:/pe arix/pearix/pear/docs/HTML_CSS/examples/css_errorstack_logger.php for saving as local file C:\pearix\pearix\pear\docs\HTML_CSS\examples\css_errorstack_logger.php remote install failed: channel://pear.php.net/HTML_CSS-1.0.0 HTML_CSS and dependency HTML_Common was installed in local correctly but not on my remote host. A huge tests cases , i've my explains are enough clear. Don't hesitate to ask more informations if necessary. Laurent

Comments

 [2006-10-19 23:47 UTC] cellog (Greg Beaver)
from the code: } elseif ($roleInfo['unusualbaseinstall']) { $dest_dir = $save_destdir = $this->config->get($roleInfo['locationconfig'], null, $pkg->getChannel()) . DIRECTORY_SEPARATOR . $pkg->getPackage(); if (!empty($atts['baseinstalldir'])) { $dest_dir .= DIRECTORY_SEPARATOR . $atts['baseinstalldir']; } should be } elseif ($roleInfo['unusualbaseinstall']) { $dest_dir = $save_destdir = $this->config->get($roleInfo['locationconfig'], $layer, $pkg->getChannel()) . DIRECTORY_SEPARATOR . $pkg->getPackage(); if (!empty($atts['baseinstalldir'])) { $dest_dir .= DIRECTORY_SEPARATOR . $atts['baseinstalldir']; }
 [2006-10-19 23:50 UTC] cellog (Greg Beaver)
This bug has been fixed in CVS. If this was a documentation problem, the fix will appear on pear.php.net by the end of next Sunday (CET). If this was a problem with the pear.php.net website, the change should be live shortly. Otherwise, the fix will appear in the package's next release. Thank you for the report and for helping us make PEAR better.