Эх сурвалжийг харах

Fix error detection to support replaces and provides

Jordi Boggiano 13 жил өмнө
parent
commit
eef37c450f

+ 5 - 2
src/Composer/Command/InstallCommand.php

@@ -130,12 +130,15 @@ EOT
         foreach ($request->getJobs() as $job) {
         foreach ($request->getJobs() as $job) {
             if ('install' === $job['cmd']) {
             if ('install' === $job['cmd']) {
                 foreach ($installedRepo->getPackages() as $package) {
                 foreach ($installedRepo->getPackages() as $package) {
-                    if ($job['packageName'] === $package->getName()) {
+                    if (in_array($job['packageName'], $package->getNames())) {
                         continue 2;
                         continue 2;
                     }
                     }
                 }
                 }
                 foreach ($operations as $operation) {
                 foreach ($operations as $operation) {
-                    if ('install' === $operation->getJobType() && $job['packageName'] === $operation->getPackage()->getName()) {
+                    if ('install' === $operation->getJobType() && in_array($job['packageName'], $operation->getPackage()->getNames())) {
+                        continue 2;
+                    }
+                    if ('update' === $operation->getJobType() && in_array($job['packageName'], $operation->getTargetPackage()->getNames())) {
                         continue 2;
                         continue 2;
                     }
                     }
                 }
                 }