Re: Issue with PEAR_PackageFileManage2 1.0.2 and package.xml validation
| From: | Helgi Þormar Þorbjörnsson | Date: | Thu, 31 Mar 2011 10:36:26 +0000 |
| Subject: | Re: Issue with PEAR_PackageFileManage2 1.0.2 and package.xml validation | ||
| References: | 1 2 3 | Groups: | php.pear.dev |
| Request: | Send a blank email to pear-dev+get-54193@lists.php.net to get a copy of this message | ||
Much appreciated.
This may be related to http://pear.php.net/bugs/bug.php?id=13310 and
http://pear.php.net/bugs/bug.php?id=15534
but they are more likely than not a bug in the CLI code, the part that manipulates scripts and
install-as tags.
One thing that comes to mind is that I added 'scripts' => 'script',
dir->role mapping at the top; It may be having a bigger knock on effect than I anticipated.
- Helgi
On 31 Mar 2011, at 11:29, Laurent Laville wrote:
> Ok, no problem.
>
> I'll open a bug report, and try to see if I can find something. I've some free time
> this afternoon.
>
> Later
> Laurent
>
> Le 31/03/2011 12:22, Helgi Þormar Þorbjörnsson a écrit :
>> Hi,
>>
>> Thanks for taking the time writing this up. Could you please file a bug report as that is
>> easier to track.
>>
>> Off the top of my head, I don't know what it is but I am still at work and don't
>> have time to look at it yet.
>>
>> - Helgi
>>
>> On 31 Mar 2011, at 11:17, Laurent Laville wrote:
>>
>>> 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
>>
>>
>