Bladeren bron

Merge pull request #8221 from magnetik/ignore-platform-reqs-conflicts

Ignore platform reqs now handle conflict rules
Jordi Boggiano 5 jaren geleden
bovenliggende
commit
5de4a16115
1 gewijzigde bestanden met toevoegingen van 6 en 2 verwijderingen
  1. 6 2
      src/Composer/DependencyResolver/RuleSetGenerator.php

+ 6 - 2
src/Composer/DependencyResolver/RuleSetGenerator.php

@@ -233,7 +233,7 @@ class RuleSetGenerator
         }
     }
 
-    protected function addConflictRules()
+    protected function addConflictRules($ignorePlatformReqs = false)
     {
         /** @var PackageInterface $package */
         foreach ($this->addedPackages as $package) {
@@ -242,6 +242,10 @@ class RuleSetGenerator
                     continue;
                 }
 
+                if ($ignorePlatformReqs && preg_match(PlatformRepository::PLATFORM_PACKAGE_REGEX, $link->getTarget())) {
+                    continue;
+                }
+
                 /** @var PackageInterface $possibleConflict */
                 foreach ($this->addedPackagesByNames[$link->getTarget()] as $possibleConflict) {
                     $conflictMatch = $this->pool->match($possibleConflict, $link->getTarget(), $link->getConstraint(), true);
@@ -362,7 +366,7 @@ class RuleSetGenerator
 
         $this->addRulesForJobs($ignorePlatformReqs);
 
-        $this->addConflictRules();
+        $this->addConflictRules($ignorePlatformReqs);
 
         // Remove references to packages
         $this->addedPackages = $this->addedPackagesByNames = null;