1
0
Fork 0

Merge branch '1.5'

pull/6864/head
Jordi Boggiano 2017-12-01 11:01:35 +01:00
commit 755482ddb1
2 changed files with 12 additions and 2 deletions

View File

@ -1,3 +1,7 @@
### [1.5.4] - 2017-12-01
* Fixed regression in require command when requiring unstable packages
### [1.5.3] - 2017-11-30
* Fixed require/remove commands reverting the composer.json change when a non-solver-related error occurs

View File

@ -395,7 +395,7 @@ EOT
));
} else {
// check that the specified version/constraint exists before we proceed
$this->findBestVersionForPackage($input, $requirement['name'], $phpVersion, $preferredStability, $requirement['version']);
$this->findBestVersionForPackage($input, $requirement['name'], $phpVersion, 'dev', $requirement['version']);
}
$result[] = $requirement['name'] . ' ' . $requirement['version'];
@ -671,6 +671,12 @@ EOT
if (!$package) {
if ($requiredVersion && $versionSelector->findBestCandidate($name, null, $phpVersion, $preferredStability)) {
// Check whether the PHP version was the problem
if ($phpVersion && $versionSelector->findBestCandidate($name, null, null, $preferredStability)) {
throw new \InvalidArgumentException(sprintf(
'Package %s at version %s has a PHP requirement incompatible with your PHP version (%s)', $name, $requiredVersion, $phpVersion
));
}
throw new \InvalidArgumentException(sprintf(
'Could not find package %s in a version matching %s', $name, $requiredVersion
));
@ -678,7 +684,7 @@ EOT
// Check whether the PHP version was the problem
if ($phpVersion && $versionSelector->findBestCandidate($name)) {
throw new \InvalidArgumentException(sprintf(
'Could not find package %s at any version matching your PHP version %s', $name, $phpVersion
'Could not find package %s in any version matching your PHP version (%s)', $name, $phpVersion
));
}