function DownloadManager::resolvePackageInstallPreference
Determines the install preference of a package
Parameters
PackageInterface $package package instance:
1 call to DownloadManager::resolvePackageInstallPreference()
- DownloadManager::getAvailableSources in vendor/
composer/ composer/ src/ Composer/ Downloader/ DownloadManager.php - @phpstan-return array<'dist'|'source'>&non-empty-array
File
-
vendor/
composer/ composer/ src/ Composer/ Downloader/ DownloadManager.php, line 373
Class
- DownloadManager
- Downloaders manager.
Namespace
Composer\DownloaderCode
protected function resolvePackageInstallPreference(PackageInterface $package) : string {
foreach ($this->packagePreferences as $pattern => $preference) {
$pattern = '{^' . str_replace('\\*', '.*', preg_quote($pattern)) . '$}i';
if (Preg::isMatch($pattern, $package->getName())) {
if ('dist' === $preference || !$package->isDev() && 'auto' === $preference) {
return 'dist';
}
return 'source';
}
}
return $package->isDev() ? 'source' : 'dist';
}