From b823242ae3e003477a4913ff4ccf4b2f3e0a47e8 Mon Sep 17 00:00:00 2001 From: Fabien Potencier Date: Fri, 28 Oct 2016 12:21:32 -0700 Subject: [PATCH] Code simplification --- src/Composer/Command/RequireCommand.php | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/src/Composer/Command/RequireCommand.php b/src/Composer/Command/RequireCommand.php index ae9385ce7..a54896c0e 100644 --- a/src/Composer/Command/RequireCommand.php +++ b/src/Composer/Command/RequireCommand.php @@ -94,7 +94,6 @@ EOT } $json = new JsonFile($file); - $composerDefinition = $json->read(); $composerBackup = file_get_contents($json->getPath()); $composer = $this->getComposer(true, $input->getOption('no-plugins')); @@ -112,7 +111,6 @@ EOT $requireKey = $input->getOption('dev') ? 'require-dev' : 'require'; $removeKey = $input->getOption('dev') ? 'require' : 'require-dev'; - $baseRequirements = array_key_exists($requireKey, $composerDefinition) ? $composerDefinition[$requireKey] : array(); $requirements = $this->formatRequirements($requirements); // validate requirements format @@ -123,16 +121,12 @@ EOT $sortPackages = $input->getOption('sort-packages') || $composer->getConfig()->get('sort-packages'); - if (!$this->updateFileCleanly($json, $baseRequirements, $requirements, $requireKey, $removeKey, $sortPackages)) { + if (!$this->updateFileCleanly($json, $requirements, $requireKey, $removeKey, $sortPackages)) { + $composerDefinition = $json->read(); foreach ($requirements as $package => $version) { - $baseRequirements[$package] = $version; - - if (isset($composerDefinition[$removeKey][$package])) { - unset($composerDefinition[$removeKey][$package]); - } + $composerDefinition[$requireKey][$package] = $version; + unset($composerDefinition[$removeKey][$package]); } - - $composerDefinition[$requireKey] = $baseRequirements; $json->write($composerDefinition); } @@ -194,7 +188,7 @@ EOT return $status; } - private function updateFileCleanly($json, array $base, array $new, $requireKey, $removeKey, $sortPackages) + private function updateFileCleanly($json, array $new, $requireKey, $removeKey, $sortPackages) { $contents = file_get_contents($json->getPath());