rector.php gets the deadCode set: @param/@return/@var tags that only repeat native types, === true comparisons, three unused constructor dependencies (DateService, ProductDataService, AjaxWatchlistController), the unused reseller lookup in ContextProcessor and an always-false check in AbstractMappedFinisher (trimExplode with removeEmpty never yields an empty remote name). Checked locally: frontend crawl (~1,900 URLs) and the backchannel APIs render the same as before. Co-Authored-By: Claude Opus 5.5 <[email protected]>
50 lines
2.1 KiB
PHP
50 lines
2.1 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
use Rector\Config\RectorConfig;
|
|
use Rector\Php84\Rector\Param\ExplicitNullableParamTypeRector;
|
|
use Rector\ValueObject\PhpVersion;
|
|
use Ssch\TYPO3Rector\CodeQuality\General\ConvertImplicitVariablesToExplicitGlobalsRector;
|
|
use Ssch\TYPO3Rector\CodeQuality\General\ExtEmConfRector;
|
|
use Ssch\TYPO3Rector\CodeQuality\General\RemoveTypo3VersionChecksRector;
|
|
use Ssch\TYPO3Rector\Configuration\Typo3Option;
|
|
use Ssch\TYPO3Rector\Set\Typo3LevelSetList;
|
|
use Ssch\TYPO3Rector\Set\Typo3SetList;
|
|
use Ssch\TYPO3Rector\TYPO313\v4\MigratePluginContentElementAndPluginSubtypesRector;
|
|
use Ssch\TYPO3Rector\TYPO313\v4\MigratePluginContentElementAndPluginSubtypesSwapArgsRector;
|
|
use Ssch\TYPO3Rector\TYPO313\v4\MigratePluginContentElementAndPluginSubtypesTCARector;
|
|
|
|
return RectorConfig::configure()
|
|
->withPaths([
|
|
__DIR__ . '/packages',
|
|
])
|
|
->withSkip([
|
|
__DIR__ . '/packages/*/Resources/Private/Assets/*',
|
|
// Plugins stay list_type plugins until the TYPO3 14 step, which migrates tt_content
|
|
MigratePluginContentElementAndPluginSubtypesRector::class,
|
|
MigratePluginContentElementAndPluginSubtypesSwapArgsRector::class,
|
|
MigratePluginContentElementAndPluginSubtypesTCARector::class,
|
|
])
|
|
->withPhpVersion(PhpVersion::PHP_85)
|
|
->withPhpSets(php85: true)
|
|
->withPreparedSets(deadCode: true)
|
|
->withSets([
|
|
Typo3SetList::GENERAL,
|
|
Typo3LevelSetList::UP_TO_TYPO3_13,
|
|
])
|
|
->withPHPStanConfigs([Typo3Option::PHPSTAN_FOR_RECTOR_PATH])
|
|
->withImportNames(true, true, false, true)
|
|
->withRules([
|
|
ConvertImplicitVariablesToExplicitGlobalsRector::class,
|
|
ExplicitNullableParamTypeRector::class,
|
|
])
|
|
->withConfiguredRule(ExtEmConfRector::class, [
|
|
ExtEmConfRector::PHP_VERSION_CONSTRAINT => '8.5.0-8.5.99',
|
|
ExtEmConfRector::TYPO3_VERSION_CONSTRAINT => '13.4.0-13.4.99',
|
|
ExtEmConfRector::ADDITIONAL_VALUES_TO_BE_REMOVED => [],
|
|
])
|
|
->withConfiguredRule(RemoveTypo3VersionChecksRector::class, [
|
|
RemoveTypo3VersionChecksRector::TARGET_VERSION => 13,
|
|
]);
|