Fix check-platform-reqs command to take into account provide/replace from the root package

main
Jordi Boggiano 4 years ago
parent 6a6ea6057f
commit d173af2d7a
No known key found for this signature in database
GPG Key ID: 7BBD42C429EC80BC

@ -20,6 +20,7 @@ use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Input\InputOption; use Symfony\Component\Console\Input\InputOption;
use Symfony\Component\Console\Output\OutputInterface; use Symfony\Component\Console\Output\OutputInterface;
use Composer\Repository\PlatformRepository; use Composer\Repository\PlatformRepository;
use Composer\Repository\RootPackageRepository;
use Composer\Repository\InstalledRepository; use Composer\Repository\InstalledRepository;
class CheckPlatformReqsCommand extends BaseCommand class CheckPlatformReqsCommand extends BaseCommand
@ -47,7 +48,7 @@ EOT
{ {
$composer = $this->getComposer(); $composer = $this->getComposer();
$requires = $composer->getPackage()->getRequires(); $requires = array();
if ($input->getOption('no-dev')) { if ($input->getOption('no-dev')) {
$installedRepo = $composer->getLocker()->getLockedRepository(!$input->getOption('no-dev')); $installedRepo = $composer->getLocker()->getLockedRepository(!$input->getOption('no-dev'));
$dependencies = $installedRepo->getPackages(); $dependencies = $installedRepo->getPackages();
@ -63,7 +64,7 @@ EOT
$requires[$require] = array($link); $requires[$require] = array($link);
} }
$installedRepo = new InstalledRepository(array($installedRepo)); $installedRepo = new InstalledRepository(array($installedRepo, new RootPackageRepository($composer->getPackage())));
foreach ($installedRepo->getPackages() as $package) { foreach ($installedRepo->getPackages() as $package) {
foreach ($package->getRequires() as $require => $link) { foreach ($package->getRequires() as $require => $link) {
$requires[$require][] = $link; $requires[$require][] = $link;

Loading…
Cancel
Save