diff --git a/phpstan.neon b/phpstan.neon index fa60168c1..26118e488 100644 --- a/phpstan.neon +++ b/phpstan.neon @@ -61,7 +61,3 @@ parameters: paths: - src/FileSystem/RectorFinder.php - src/Repository/PostRepository.php - - - - message: '#Parameter \#3 \$rectorClasses of class App\\RuleFilter\\ValueObject\\RectorSet constructor expects array>, array, array>|class-string> given#' - path: src/Sets/RectorSetsTreeProvider.php diff --git a/src/Sets/RectorSetsTreeProvider.php b/src/Sets/RectorSetsTreeProvider.php index 3266601db..35b906b29 100644 --- a/src/Sets/RectorSetsTreeProvider.php +++ b/src/Sets/RectorSetsTreeProvider.php @@ -100,8 +100,14 @@ private function createRectorSetsFromSetProviders(array $sets): array $setRectorsResolver = new SetRectorsResolver(); foreach ($sets as $set) { - $rectorClasses = $setRectorsResolver->resolveFromFilePathIncludingConfiguration($set->getSetFilePath()); - $rectorSets[] = new RectorSet($set->getGroupName(), $set->getName(), $rectorClasses); + // Only consider rector classes without configuration, just as in the result list. + $rectorClasses = array_filter( + $setRectorsResolver->resolveFromFilePathIncludingConfiguration($set->getSetFilePath()), + static fn ($rectorClass) => is_string($rectorClass), + ); + if ($rectorClasses !== []) { + $rectorSets[] = new RectorSet($set->getGroupName(), $set->getName(), $rectorClasses); + } } return $rectorSets;