Skip to content

Commit 459aa15

Browse files
authored
Merge pull request #704 from remicollet/issue-remi-hashtag
Fix build provider detection for Remi
2 parents 1cef5c8 + 7461436 commit 459aa15

1 file changed

Lines changed: 16 additions & 9 deletions

File tree

src/DependencyResolver/ResolveDependencyWithComposer.php

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,11 @@ private function assertBuildProviderProvidersBundledExtensions(TargetPlatform $t
114114
throw BundledPhpExtensionRefusal::forPhpExtraVersion($targetPlatform->phpBinaryPath);
115115
}
116116

117-
$buildProvider = $targetPlatform->phpBinaryPath->buildProvider();
117+
$buildProvider = $targetPlatform->phpBinaryPath->buildProvider();
118+
if (! $buildProvider) {
119+
return;
120+
}
121+
118122
$identifiedBuildProvider = false;
119123
$note = '<options=bold,underscore;fg=red>Note:</> ';
120124

@@ -143,16 +147,19 @@ private function assertBuildProviderProvidersBundledExtensions(TargetPlatform $t
143147
'CentOS',
144148
'Fedora Project',
145149
'Red Hat, Inc.',
146-
'Remi\'s RPM repository <https://rpms.remirepo.net/> #StandWithUkraine',
150+
'|^Remi\'s RPM repository <https://rpms.remirepo.net/>|',
147151
'Rocky Enterprise Software Foundation',
148152
];
149-
if (in_array($buildProvider, $rpmProviders)) {
150-
$identifiedBuildProvider = true;
151-
$this->io->write(sprintf(
152-
'<comment>%sYou should probably use "dnf install php-%s" instead</comment>',
153-
$note,
154-
$piePackage->extensionName()->name(),
155-
));
153+
foreach ($rpmProviders as $rpmProvider) {
154+
if ($buildProvider === $rpmProvider || ($rpmProvider[0] === '|' && preg_match($rpmProvider, $buildProvider))) {
155+
$identifiedBuildProvider = true;
156+
$this->io->write(sprintf(
157+
'<comment>%sYou should probably use "dnf install php-%s" instead</comment>',
158+
$note,
159+
$piePackage->extensionName()->name(),
160+
));
161+
break;
162+
}
156163
}
157164

158165
if ($buildProvider === 'Homebrew') {

0 commit comments

Comments
 (0)