Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. ComposerRepository.php

function ComposerRepository::createPackages

Parameters

mixed[] $packages:

Return value

list<CompletePackage|CompleteAliasPackage>

4 calls to ComposerRepository::createPackages()
ComposerRepository::getPackages in vendor/composer/composer/src/Composer/Repository/ComposerRepository.php
@inheritDoc
ComposerRepository::initialize in vendor/composer/composer/src/Composer/Repository/ComposerRepository.php
@inheritDoc
ComposerRepository::loadAsyncPackages in vendor/composer/composer/src/Composer/Repository/ComposerRepository.php
@phpstan-param array<key-of<BasePackage::STABILITIES>, BasePackage::STABILITY_*>|null $acceptableStabilities
ComposerRepository::whatProvides in vendor/composer/composer/src/Composer/Repository/ComposerRepository.php
@phpstan-param array<key-of<BasePackage::STABILITIES>, BasePackage::STABILITY_*>|null $acceptableStabilities

File

vendor/composer/composer/src/Composer/Repository/ComposerRepository.php, line 1425

Class

ComposerRepository
@author Jordi Boggiano <j.boggiano@seld.be>

Namespace

Composer\Repository

Code

private function createPackages(array $packages, ?string $source = null) : array {
    if (!$packages) {
        return [];
    }
    try {
        foreach ($packages as &$data) {
            if (!isset($data['notification-url'])) {
                $data['notification-url'] = $this->notifyUrl;
            }
        }
        $packageInstances = $this->loader
            ->loadPackages($packages);
        foreach ($packageInstances as $package) {
            if (isset($this->sourceMirrors[$package->getSourceType()])) {
                $package->setSourceMirrors($this->sourceMirrors[$package->getSourceType()]);
            }
            $package->setDistMirrors($this->distMirrors);
            $this->configurePackageTransportOptions($package);
        }
        return $packageInstances;
    } catch (\Exception $e) {
        throw new \RuntimeException('Could not load packages ' . ($packages[0]['name'] ?? json_encode($packages)) . ' in ' . $this->getRepoName() . ($source ? ' from ' . $source : '') . ': [' . get_class($e) . '] ' . $e->getMessage(), 0, $e);
    }
}
RSS feed
Powered by Drupal