Re: Problem with PEAR installer and PECL extensions

From: Date: Mon, 11 Oct 2004 10:11:39 +0000
Subject: Re: Problem with PEAR installer and PECL extensions
References: 1 2  Groups: php.pear.dev php.pecl.dev 
Request: Send a blank email to pear-dev+get-33763@lists.php.net to get a copy of this message
Davey wrote:
Mika Tuupola wrote: [snip]
    As I said "pear list shows pdo is installed. The problem is
    PEAR installer consideres it as a package not an extension.
    The problem is fixed if
        <dep type="ext" rel="ge" version="0.1">pdo</dep>
    is changed to
        <dep type="pkg" rel="ge" version="0.1">pdo</dep>
    in the package.xml This however can be considered to be wrong
    since PECL should be though as extensions. Or can it be
    considered wrong? If not, the easy solution would just be to fix
    all the package.xml files.
IMO, a PECL Extension, is a PECL Package, therefore the <dep type="pkg" is valid. <dep type="ext" should only relate to bundled PHP extensions
This is exactly right - in package.xml 2.0 the difference will be made entirely clear. The main reasoning here is that pecl extension have their own versioning scheme, whereas bundled extensions simply inherit the PHP version they are bundled with. So, an ext (extension in package.xml 2.0) dependency must be loaded in the installer, whereas a pecl package will only check the registry. This fixes problems that Alan has encountered with extensions being loaded by dl() - PECL extensions need not be actually loaded in memory to be considered installed for dependency validation purposes. As more extensions go PECL, this will make dependency validation a piece of cake. Greg

« previous php.pear.dev (#33763) next »