cvs: pearweb /include/package releasehelper.php
[email protected] ("Helgi ?ormar ?orbj?rnsson") Tue, 06 May 2008 19:51:53 -0000
| Newsgroups | php.pear.cvs,php.pear.core |
|---|---|
| Message-ID | <cvsdufuz1210103513@cvsserver> |
dufuz Tue May 6 19:51:53 2008 UTC
Modified files:
/pearweb/include/package releasehelper.php
Log:
cosmetics
dufuz-20080506195153.txt
(text/plain, 7.9 KB)
http://cvs.php.net/viewvc.cgi/pearweb/include/package/releasehelper.php?r1=1.7&r2=1.8&diff_format=u
Index: pearweb/include/package/releasehelper.php
diff -u pearweb/include/package/releasehelper.php:1.7 pearweb/include/package/releasehelper.php:1.8
--- pearweb/include/package/releasehelper.php:1.7 Sun Apr 22 01:51:35 2007
+++ pearweb/include/package/releasehelper.php Tue May 6 19:51:53 2008
@@ -8,19 +8,20 @@
var $_laststate;
var $_lastid;
var $_pkgid;
- function package_releasehelper($package)
+
+ function __construct($package)
{
$this->_dbh = &$GLOBALS['dbh'];
include_once 'pear-database-package.php';
- $this->_info = package::info($package, 'releases');
+ $this->_info = package::info($package, 'releases');
$this->_pkgid = package::info($package, 'id');
if (is_array($this->_info) && $this->_info) {
foreach ($this->_info as $ver => $release) {
if (!isset($this->_lastversion)) {
$this->_lastversion = $ver;
- $this->_laststate = $release['state'];
- $this->_lastid = $release['id'];
+ $this->_laststate = $release['state'];
+ $this->_lastid = $release['id'];
}
$this->_states[$release['state']] = 1;
}
@@ -32,8 +33,9 @@
if (!isset($this->_lastid)) {
return false;
}
- $info = $this->_dbh->getOne('SELECT packagexml FROM files WHERE `release`="' .
- $this->_lastid . '" AND `package`="' . $this->_pkgid . '"', array());
+
+ $sql = 'SELECT packagexml FROM files WHERE `release` = ? AND `package` = ?';
+ $info = $this->_dbh->getOne($sql, array($this->_lastid, $this->_pkgid));
return !preg_match('/<package[^>]+version\s*=\s*"2.0"/', $info);
}
@@ -44,14 +46,12 @@
function nextCanBeStable()
{
- if ($this->_laststate == 'stable') {
+ if ($this->_laststate == 'stable'
+ || ($this->_laststate == 'beta' && strpos($this->_lastversion, 'RC'))
+ ) {
return true;
}
- if ($this->_laststate == 'beta') {
- if (strpos($this->_lastversion, 'RC')) {
- return true;
- }
- }
+
return false;
}
@@ -60,6 +60,7 @@
if ($this->_laststate == 'beta') {
return false;
}
+
return true;
}
@@ -71,28 +72,32 @@
function getNextBugfixVersion()
{
$version = explode('.', $this->_lastversion);
- $last = array_pop($version);
+ $last = array_pop($version);
if (!$version[0]) {
if (isset($version[1]) && !$version[1]) {
return array('0.1.0', $this->_laststate);
}
}
+
if (count($version) == 1) {
return array($version[0] . '.' . $last . '.1', $this->_laststate);
}
+
if (strpos($last, 'RC') !== false) {
// release candidate
if (!$version[0]) {
return array('1.0.0RC1', 'beta');
}
+
if (preg_match('/RC([1-9][0-9]?)/', $last, $numbah)) {
$last = str_replace($numbah[0], 'RC' . ($numbah[1] + 1), $last);
return array(implode('.', $version) . '.' . $last, 'beta');
- } else {
- // crap version number "X.Y.ZRC", convert to good one "X.Y.ZRC1"
- return array(implode('.', $version) . '.' . $last[0] . 'RC1', 'beta');
}
+
+ // crap version number "X.Y.ZRC", convert to good one "X.Y.ZRC1"
+ return array(implode('.', $version) . '.' . $last[0] . 'RC1', 'beta');
}
+
if (strpos($last, 'a') !== false) {
// alpha version
if (preg_match('/a(?:lpha)?([1-9][0-9]?)?/', $last, $numbah)) {
@@ -101,14 +106,16 @@
return array(implode('.', $version) . '.' .
(str_replace($numbah[0], '', $last) + 1), $this->_laststate);
}
+
if (strlen($numbah[1])) {
$last = str_replace($numbah[0], 'a' . ($numbah[1] + 1), $last);
return array(implode('.', $version) . '.' . $last, 'alpha');
- } else {
- return array(implode('.', $version) . '.a2', 'alpha');
}
+
+ return array(implode('.', $version) . '.a2', 'alpha');
}
}
+
if (strpos($last, 'b') !== false) {
// beta version
if (preg_match('/b(?:eta)?([1-9][0-9]?)/', $last, $numbah)) {
@@ -120,25 +127,28 @@
if (strlen($numbah[1])) {
$last = str_replace($numbah[0], 'b' . ($numbah[1] + 1), $last);
return array(implode('.', $version) . '.' . $last, 'beta');
- } else {
- return array(implode('.', $version) . '.b' . $last, 'beta');
}
+
+ return array(implode('.', $version) . '.b' . $last, 'beta');
}
}
+
return array(implode('.', $version) . '.' . ($last + 1), $this->_laststate);
}
function getNextBetaRelease()
{
$version = explode('.', $this->_lastversion);
- $last = array_pop($version);
+ $last = array_pop($version);
if ($this->_laststate != 'alpha' && $this->_laststate != 'beta') {
return false;
}
+
if (!$version[0]) {
$newfeature = $this->getNewFeatureVersion();
return array($newfeature[0] . ' or 1.0.0RC1', 'beta');
}
+
return array($version[0] . '.' . $version[1] . '.0RC1', 'beta');
}
@@ -147,44 +157,50 @@
if (strpos($this->_lastversion, 'RC')) {
return array(preg_replace('/RC.*\z/', '', $this->_lastversion), 'stable');
}
+
$version = explode('.', $this->_lastversion);
- $last = array_pop($version);
+ $last = array_pop($version);
if (strpos($last, 'a') !== false) {
if (!$version[0]) {
// no need for 0.3.4a1 or any of that junk
return array(implode('.', $version) . '.' .
(str_replace($numbah[0], '', $last) + 1), 'alpha');
}
+
// alpha version
if (preg_match('/a(?:lpha)?([1-9][0-9]?)?/', $last, $numbah)) {
if (strlen($numbah[1])) {
$last = str_replace($numbah[0], 'a' . ($numbah[1] + 1), $last);
return array(implode('.', $version) . '.' . $last, 'alpha');
- } else {
- return array(implode('.', $version) . '.a2', 'alpha');
}
+
+ return array(implode('.', $version) . '.a2', 'alpha');
}
}
+
if (strpos($last, 'b') !== false) {
if (!$version[0]) {
// no need for 0.3.4b1 or any of that junk
return array(implode('.', $version) . '.' .
(str_replace($numbah[0], '', $last) + 1), 'alpha');
}
+
// beta version
if (preg_match('/b(?:eta)?([1-9][0-9]?)/', $last, $numbah)) {
if (strlen($numbah[1])) {
$last = str_replace($numbah[0], 'b' . ($numbah[1] + 1), $last);
return array(implode('.', $version) . '.' . $last, 'beta');
- } else {
- return array(implode('.', $version) . '.b' . $last, 'beta');
}
+
+ return array(implode('.', $version) . '.b' . $last, 'beta');
}
}
+
$version = explode('.', $this->_lastversion);
if ($this->_laststate == 'stable') {
return array($version[0] . '.' . ($version[1] + 1) . '.0a1', 'alpha');
}
+
if (!$version[0]) {
return array($version[0] . '.' . ($version[1] + 1) . '.0', 'alpha');
}