[TASK] Use rector-installer to load config of extensions (#6174)

This commit is contained in:
Sebastian Schreiber 2021-04-22 10:30:18 +02:00 committed by GitHub
parent ff57c49662
commit 5cab6367fb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 16 additions and 37 deletions

View File

@ -37,15 +37,16 @@
"nette/robot-loader": "^3.4",
"nette/utils": "^3.2",
"nikic/php-parser": "^4.10.4",
"phpstan/phpstan": "^0.12.83",
"phpstan/phpdoc-parser": "^0.5.4",
"phpstan/phpstan": "^0.12.83",
"phpstan/phpstan-phpunit": "^0.12.18",
"rector/rector-symfony": "^0.10.3",
"rector/rector-nette": "^0.10.5",
"rector/rector-laravel": "^0.10.1",
"rector/rector-cakephp": "^0.10.3",
"rector/rector-phpunit": "^0.10.6",
"rector/rector-cakephp": "^0.10.4",
"rector/rector-doctrine": "^0.10.2",
"rector/rector-installer": "^0.10.0",
"rector/rector-laravel": "^0.10.2",
"rector/rector-nette": "^0.10.6",
"rector/rector-phpunit": "^0.10.6",
"rector/rector-symfony": "^0.10.3",
"sebastian/diff": "^4.0.4",
"symfony/console": "^4.4.8|^5.1",
"symfony/dependency-injection": "^5.1",
@ -73,7 +74,7 @@
"nette/forms": "^3.0",
"phpstan/phpstan-nette": "^0.12.16",
"phpunit/phpunit": "^9.5",
"rector/rector-generator": "^0.1.5",
"rector/rector-generator": "^0.1.6",
"symplify/coding-standard": "^9.2.16",
"symplify/easy-ci": "^9.2.16",
"symplify/easy-coding-standard": "^9.2.16",

View File

@ -2,8 +2,8 @@
declare(strict_types=1);
use Rector\Core\Bootstrap\ExtensionConfigResolver;
use Rector\Core\Configuration\Option;
use Rector\RectorGenerator\Bundle\RectorGeneratorBundle;
use Symfony\Component\DependencyInjection\Loader\Configurator\ContainerConfigurator;
return static function (ContainerConfigurator $containerConfigurator): void {
@ -12,32 +12,10 @@ return static function (ContainerConfigurator $containerConfigurator): void {
$containerConfigurator->import(__DIR__ . '/services-packages.php');
$containerConfigurator->import(__DIR__ . '/parameters.php');
// rector root
$containerConfigurator->import(__DIR__ . '/../vendor/rector/rector-symfony/config/config.php', null, 'not_found');
$containerConfigurator->import(__DIR__ . '/../vendor/rector/rector-nette/config/config.php', null, 'not_found');
$containerConfigurator->import(__DIR__ . '/../vendor/rector/rector-laravel/config/config.php', null, 'not_found');
$containerConfigurator->import(__DIR__ . '/../vendor/rector/rector-phpunit/config/config.php', null, 'not_found');
$containerConfigurator->import(__DIR__ . '/../vendor/rector/rector-cakephp/config/config.php', null, 'not_found');
$containerConfigurator->import(__DIR__ . '/../vendor/rector/rector-doctrine/config/config.php', null, 'not_found');
// rector sub-package
$containerConfigurator->import(__DIR__ . '/../../rector-symfony/config/config.php', null, 'not_found');
$containerConfigurator->import(__DIR__ . '/../../rector-nette/config/config.php', null, 'not_found');
$containerConfigurator->import(__DIR__ . '/../../rector-laravel/config/config.php', null, 'not_found');
$containerConfigurator->import(__DIR__ . '/../../rector-phpunit/config/config.php', null, 'not_found');
$containerConfigurator->import(__DIR__ . '/../../rector-cakephp/config/config.php', null, 'not_found');
$containerConfigurator->import(__DIR__ . '/../../rector-doctrine/config/config.php', null, 'not_found');
// only for dev
// only for dev
if (class_exists(RectorGeneratorBundle::class)) {
$containerConfigurator->import(
__DIR__ . '/../vendor/rector/rector-generator/config/config.php',
null,
'not_found'
);
// 3rd party dependency
$containerConfigurator->import(__DIR__ . '/../../rector-generator/config/config.php', null, 'not_found');
$extensionConfigResolver = new ExtensionConfigResolver();
$extensionConfigFiles = $extensionConfigResolver->provide();
foreach ($extensionConfigFiles as $extensionConfigFile) {
$containerConfigurator->import($extensionConfigFile->getRealPath());
}
// require only in dev

View File

@ -11,11 +11,12 @@ use Symplify\SmartFileSystem\SmartFileInfo;
final class ExtensionConfigResolver
{
/**
* @param SmartFileInfo[] $configFileInfos
* @return SmartFileInfo[]
*/
public function appendExtensionsConfig(array $configFileInfos): array
public function provide(): array
{
$configFileInfos = [];
if (! class_exists('Rector\RectorInstaller\GeneratedConfig')) {
return $configFileInfos;
}

View File

@ -70,7 +70,6 @@ final class RectorConfigsResolver
) : [];
$configFileInfos = $this->appendRectorRecipeConfig($argvInput, $configFileInfos);
$configFileInfos = $this->extensionConfigResolver->appendExtensionsConfig($configFileInfos);
return new BootstrapConfigs($mainConfigFileInfo, $configFileInfos);
}