updating package.xml (was: Help needed with new release of Validate_Finance)
| From: | Martin Schütte | Date: | Tue, 08 Sep 2009 00:00:33 +0000 |
| Subject: | updating package.xml (was: Help needed with new release of Validate_Finance) | ||
| References: | 1 2 3 | Groups: | php.pear.dev |
| Request: | Send a blank email to pear-dev+get-52785@lists.php.net to get a copy of this message | ||
Daniel Holbach wrote:
> Sweet. Please let me know if I did it all correctly. I'm sure there's a
> better way to do it than by updating package.xml by hand. :-)
It would be useful to have a recommendation how to update package.xml in
the Developer Guide. I had the same problem with my first release.
Now I use the following wrapper around PEAR_PackageFileManager2 to
update my package; maybe someone else finds this useful.
(All based on the example script documented at
http://pear.php.net/reference/-1.6.0a1/PEAR_PackageFileManager/PEAR_PackageFileManager2.html)
<?php
require_once('PEAR/PackageFileManager2.php');
PEAR::setErrorHandling(PEAR_ERROR_DIE);
$packagexml = new PEAR_PackageFileManager2;
$options = array(
'packagedirectory' => dirname(__FILE__),
'baseinstalldir' => 'Payment',
'filelistgenerator' => 'cvs'
);
$packagexml = $packagexml->importOptions('./package.xml',$options);
echo("imported\n");
$packagexml->setAPIStability('stable');
$packagexml->setReleaseStability('stable');
$packagexml->setAPIVersion('1.3.2');
$packagexml->setReleaseVersion('1.3.2');
$packagexml->setNotes('[-] fixed this and that ...');
echo("options set\n");
$packagexml->generateContents();
echo("generated\n");
// note use of debugPackageFile()
if (isset($_GET['make']) || @$_SERVER['argv'][1] == 'make') {
$e = $packagexml->writePackageFile();
} else {
$e = $packagexml->debugPackageFile();
}
if (PEAR::isError($e)) {
echo $e->getMessage();
die();
}
?>
--
Martin