|
|
@ -20,6 +20,7 @@ use Composer\Factory;
|
|
|
|
use Composer\Installer;
|
|
|
|
use Composer\Installer;
|
|
|
|
use Composer\Json\JsonFile;
|
|
|
|
use Composer\Json\JsonFile;
|
|
|
|
use Composer\Json\JsonManipulator;
|
|
|
|
use Composer\Json\JsonManipulator;
|
|
|
|
|
|
|
|
use Composer\Package\Version\VersionParser;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* @author Jérémy Romey <jeremy@free-agent.fr>
|
|
|
|
* @author Jérémy Romey <jeremy@free-agent.fr>
|
|
|
@ -80,6 +81,12 @@ EOT
|
|
|
|
$baseRequirements = array_key_exists($requireKey, $composer) ? $composer[$requireKey] : array();
|
|
|
|
$baseRequirements = array_key_exists($requireKey, $composer) ? $composer[$requireKey] : array();
|
|
|
|
$requirements = $this->formatRequirements($requirements);
|
|
|
|
$requirements = $this->formatRequirements($requirements);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// validate requirements format
|
|
|
|
|
|
|
|
$versionParser = new VersionParser();
|
|
|
|
|
|
|
|
foreach ($requirements as $constraint) {
|
|
|
|
|
|
|
|
$versionParser->parseConstraints($constraint);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
if (!$this->updateFileCleanly($json, $baseRequirements, $requirements, $requireKey)) {
|
|
|
|
if (!$this->updateFileCleanly($json, $baseRequirements, $requirements, $requireKey)) {
|
|
|
|
foreach ($requirements as $package => $version) {
|
|
|
|
foreach ($requirements as $package => $version) {
|
|
|
|
$baseRequirements[$package] = $version;
|
|
|
|
$baseRequirements[$package] = $version;
|
|
|
|