Issue with PEAR_PackageFileManage2 1.0.2 and package.xml validation
| From: | Laurent Laville | Date: | Thu, 31 Mar 2011 10:17:32 +0000 |
| Subject: | Issue with PEAR_PackageFileManage2 1.0.2 and package.xml validation | ||
| Groups: | php.pear.dev | ||
| Request: | Send a blank email to pear-dev+get-54190@lists.php.net to get a copy of this message | ||
Hello Helgi,
I've just installed the new version 1.0.2 (with its plugins package) of PEAR_PackageFileManager2 on my local windows platform.
PEAR 1.9.2, PHP 5.2.17, Windows XP
And I got a Package Validation error, while it was not the cas in previous version 1.0.1
PEAR_PackageFileManager2 Error: Package validation failed:
Error: <ignore name="scripts/phpci.bat"> is invalid, file is not in <contents>
Error: <install name="scripts/phpci"> is invalid, file is not in <contents>
Error: <install name="scripts/phpci"> is invalid, file is not in <contents>
Error: <install name="scripts/phpci.bat"> is invalid, file is not in <contents>
See my package.xml online at [1]
I used a PHP script that generate the package.xml.
Something standard. Here is a chunk of code ...
<code>
require_once 'PEAR/PackageFileManager2.php';
PEAR::setErrorHandling(PEAR_ERROR_DIE);
$p2 = new PEAR_PackageFileManager2();
$p2->setOptions(
array(
'packagedirectory' => dirname(__FILE__),
'baseinstalldir' => 'Bartlett',
'filelistgenerator' => 'file',
'simpleoutput' => true,
'clearcontents' => false,
'changelogoldtonew' => false,
'ignore' => array(
basename(__FILE__),
'*.tgz', '*.log',
'Thumbs.db', 'packageRC*.xml', 'makephpci.php',
'_extension.php',
'phpcompatinfo.xml',
),
'exceptions' => array(
'phpcompatinfo.xml.dist' => 'cfg',
'scripts/phpci' => 'script',
'scripts/phpci.bat' => 'script',
'README.markdown' => 'doc',
'LICENSE' => 'doc',
'HOWTO.txt' => 'doc',
),
'installexceptions' => array(
'phpcompatinfo.xml.dist' => '',
'scripts/phpci' => '',
'scripts/phpci.bat' => '',
),
)
);
// ... more
$p2->generateContents();
$p2->addRelease();
$p2->setOSInstallCondition('windows');
$p2->addInstallAs('scripts/phpci.bat', 'phpci.bat');
$p2->addInstallAs('scripts/phpci', 'phpci');
$p2->addRelease();
$p2->addIgnoreToRelease('scripts/phpci.bat');
$p2->addInstallAs('scripts/phpci', 'phpci');
$p2->writePackageFile();
</code>
If you don't know what it could be, I'll try to investigate later.
Laurent
[1] https://github.com/llaville/php-compat-info/blob/master/package.xml