Merge pull request #4096 from alcohol/fix-hyphen-range-constraint
Fix hyphen range constraintpull/4097/head
commit
d4dbeeacc4
|
@ -416,12 +416,16 @@ class VersionParser
|
||||||
$lowVersion = $this->normalize($matches['from']);
|
$lowVersion = $this->normalize($matches['from']);
|
||||||
$lowerBound = new VersionConstraint('>=', $lowVersion . $lowStabilitySuffix);
|
$lowerBound = new VersionConstraint('>=', $lowVersion . $lowStabilitySuffix);
|
||||||
|
|
||||||
if ((!empty($matches[11]) && !empty($matches[12])) || !empty($matches[14]) || !empty($matches[16])) {
|
$empty = function ($x) {
|
||||||
|
return ($x === 0 || $x === "0") ? false : empty($x);
|
||||||
|
};
|
||||||
|
|
||||||
|
if ((!$empty($matches[11]) && !$empty($matches[12])) || !empty($matches[14]) || !empty($matches[16])) {
|
||||||
$highVersion = $this->normalize($matches['to']);
|
$highVersion = $this->normalize($matches['to']);
|
||||||
$upperBound = new VersionConstraint('<=', $highVersion);
|
$upperBound = new VersionConstraint('<=', $highVersion);
|
||||||
} else {
|
} else {
|
||||||
$highMatch = array('', $matches[10], $matches[11], $matches[12], $matches[13]);
|
$highMatch = array('', $matches[10], $matches[11], $matches[12], $matches[13]);
|
||||||
$highVersion = $this->manipulateVersionString($highMatch, empty($matches[11]) ? 1 : 2, 1) . '-dev';
|
$highVersion = $this->manipulateVersionString($highMatch, $empty($matches[11]) ? 1 : 2, 1) . '-dev';
|
||||||
$upperBound = new VersionConstraint('<', $highVersion);
|
$upperBound = new VersionConstraint('<', $highVersion);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -380,6 +380,10 @@ class VersionParserTest extends \PHPUnit_Framework_TestCase
|
||||||
array('1.2-beta - 2.3-dev', new VersionConstraint('>=', '1.2.0.0-beta'), new VersionConstraint('<=', '2.3.0.0-dev')),
|
array('1.2-beta - 2.3-dev', new VersionConstraint('>=', '1.2.0.0-beta'), new VersionConstraint('<=', '2.3.0.0-dev')),
|
||||||
array('1.2-RC - 2.3.1', new VersionConstraint('>=', '1.2.0.0-RC'), new VersionConstraint('<=', '2.3.1.0')),
|
array('1.2-RC - 2.3.1', new VersionConstraint('>=', '1.2.0.0-RC'), new VersionConstraint('<=', '2.3.1.0')),
|
||||||
array('1.2.3-alpha - 2.3-RC', new VersionConstraint('>=', '1.2.3.0-alpha'), new VersionConstraint('<=', '2.3.0.0-RC')),
|
array('1.2.3-alpha - 2.3-RC', new VersionConstraint('>=', '1.2.3.0-alpha'), new VersionConstraint('<=', '2.3.0.0-RC')),
|
||||||
|
array('1 - 2.0', new VersionConstraint('>=', '1.0.0.0-dev'), new VersionConstraint('<', '2.1.0.0-dev')),
|
||||||
|
array('1 - 2.1', new VersionConstraint('>=', '1.0.0.0-dev'), new VersionConstraint('<', '2.2.0.0-dev')),
|
||||||
|
array('1.2 - 2.1.0', new VersionConstraint('>=', '1.2.0.0-dev'), new VersionConstraint('<=', '2.1.0.0')),
|
||||||
|
array('1.3 - 2.1.3', new VersionConstraint('>=', '1.3.0.0-dev'), new VersionConstraint('<=', '2.1.3.0')),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue