diff --git a/src/Composer/DependencyResolver/Problem.php b/src/Composer/DependencyResolver/Problem.php index d42ca4774..15815be59 100644 --- a/src/Composer/DependencyResolver/Problem.php +++ b/src/Composer/DependencyResolver/Problem.php @@ -97,7 +97,9 @@ class Problem if (defined('HHVM_VERSION')) { return $msg . 'your HHVM version does not satisfy that requirement.'; - } elseif ($job['packageName'] === 'hhvm') { + } + + if ($job['packageName'] === 'hhvm') { return $msg . 'you are running this with PHP and not HHVM.'; } diff --git a/src/Composer/DependencyResolver/Rule.php b/src/Composer/DependencyResolver/Rule.php index f338eb2bd..8d5f38f9f 100644 --- a/src/Composer/DependencyResolver/Rule.php +++ b/src/Composer/DependencyResolver/Rule.php @@ -208,44 +208,50 @@ class Rule // handle php/hhvm if (defined('HHVM_VERSION')) { return $text . ' -> your HHVM version does not satisfy that requirement.'; - } elseif ($targetName === 'hhvm') { - return $text . ' -> you are running this with PHP and not HHVM.'; - } else { - $packages = $pool->whatProvides($targetName); - $package = count($packages) ? current($packages) : phpversion(); - - if (!($package instanceof CompletePackage)) { - return $text . ' -> your PHP version ('.phpversion().') does not satisfy that requirement.'; - } - - $extra = $package->getExtra(); - - if (!empty($extra['config.platform'])) { - $text .= ' -> your PHP version ('.phpversion().') overridden by "config.platform.php" version ('.$package->getPrettyVersion().') does not satisfy that requirement.'; - } else { - $text .= ' -> your PHP version ('.$package->getPrettyVersion().') does not satisfy that requirement.'; - } - - return $text; } - } elseif (0 === strpos($targetName, 'ext-')) { + + if ($targetName === 'hhvm') { + return $text . ' -> you are running this with PHP and not HHVM.'; + } + + $packages = $pool->whatProvides($targetName); + $package = count($packages) ? current($packages) : phpversion(); + + if (!($package instanceof CompletePackage)) { + return $text . ' -> your PHP version ('.phpversion().') does not satisfy that requirement.'; + } + + $extra = $package->getExtra(); + + if (!empty($extra['config.platform'])) { + $text .= ' -> your PHP version ('.phpversion().') overridden by "config.platform.php" version ('.$package->getPrettyVersion().') does not satisfy that requirement.'; + } else { + $text .= ' -> your PHP version ('.$package->getPrettyVersion().') does not satisfy that requirement.'; + } + + return $text; + } + + if (0 === strpos($targetName, 'ext-')) { // handle php extensions $ext = substr($targetName, 4); $error = extension_loaded($ext) ? 'has the wrong version ('.(phpversion($ext) ?: '0').') installed' : 'is missing from your system'; return $text . ' -> the requested PHP extension '.$ext.' '.$error.'.'; - } elseif (0 === strpos($targetName, 'lib-')) { + } + + if (0 === strpos($targetName, 'lib-')) { // handle linked libs $lib = substr($targetName, 4); return $text . ' -> the requested linked library '.$lib.' has the wrong version installed or is missing from your system, make sure to have the extension providing it.'; - } else { - if ($providers = $pool->whatProvides($targetName, $this->reasonData->getConstraint(), true, true)) { - return $text . ' -> satisfiable by ' . $this->formatPackagesUnique($pool, $providers) .' but these conflict with your requirements or minimum-stability.'; - } - - return $text . ' -> no matching package found.'; } + + if ($providers = $pool->whatProvides($targetName, $this->reasonData->getConstraint(), true, true)) { + return $text . ' -> satisfiable by ' . $this->formatPackagesUnique($pool, $providers) .' but these conflict with your requirements or minimum-stability.'; + } + + return $text . ' -> no matching package found.'; } return $text; diff --git a/src/Composer/Util/Platform.php b/src/Composer/Util/Platform.php index 0fdfc1a10..f60737e13 100644 --- a/src/Composer/Util/Platform.php +++ b/src/Composer/Util/Platform.php @@ -47,12 +47,17 @@ class Platform { if (false !== ($home = getenv('HOME'))) { return $home; - } elseif (self::isWindows() && false !== ($home = getenv('USERPROFILE'))) { + } + + if (self::isWindows() && false !== ($home = getenv('USERPROFILE'))) { return $home; - } elseif (function_exists('posix_getuid') && function_exists('posix_getpwuid')) { + } + + if (function_exists('posix_getuid') && function_exists('posix_getpwuid')) { $info = posix_getpwuid(posix_getuid()); return $info['dir']; } + throw new \RuntimeException('Could not determine user directory'); } diff --git a/tests/Composer/Test/EventDispatcher/EventDispatcherTest.php b/tests/Composer/Test/EventDispatcher/EventDispatcherTest.php index 7d31a0860..fc1c9ce86 100644 --- a/tests/Composer/Test/EventDispatcher/EventDispatcherTest.php +++ b/tests/Composer/Test/EventDispatcher/EventDispatcherTest.php @@ -161,9 +161,13 @@ class EventDispatcherTest extends TestCase ->will($this->returnCallback(function (Event $event) { if ($event->getName() === 'root') { return array('@group'); - } elseif ($event->getName() === 'group') { + } + + if ($event->getName() === 'group') { return array('echo -n foo', '@subgroup', 'echo -n bar'); - } elseif ($event->getName() === 'subgroup') { + } + + if ($event->getName() === 'subgroup') { return array('echo -n baz'); } @@ -201,7 +205,9 @@ class EventDispatcherTest extends TestCase ->will($this->returnCallback(function (Event $event) { if ($event->getName() === 'root') { return array('@recurse'); - } elseif ($event->getName() === 'recurse') { + } + + if ($event->getName() === 'recurse') { return array('@root'); }