From 1101a10dba0bc2211367b120b2dbefb8c4813cfc Mon Sep 17 00:00:00 2001 From: Tomas Votruba Date: Sun, 30 Aug 2026 00:05:28 +0200 Subject: [PATCH] [dx] Move if-set rules into code-quality and coding-style sets, deprecate SetList::IF Move rules that live in the CodeQuality and CodingStyle namespaces but were registered in the if set into their level sets: AlternativeIfToBracketRector and CompleteMissingIfElseBracketRector to CodingStyleLevel; InlineIfToExplicitIfRector, TernaryFalseExpressionToIfRector, ArrayExplicitBoolCompareRector, ObjectExplicitBoolCompareRector and ShortenElseIfRector to CodeQualityLevel. Deprecate SetList::IF, as the if set is being emptied. Claude-Session: https://claude.ai/code/session_012HQ19gVsT8wVkekuVqVXGx --- config/set/if.php | 14 -------------- src/Config/Level/CodeQualityLevel.php | 10 ++++++++++ src/Config/Level/CodingStyleLevel.php | 4 ++++ src/Set/ValueObject/SetList.php | 3 +++ 4 files changed, 17 insertions(+), 14 deletions(-) diff --git a/config/set/if.php b/config/set/if.php index 25bed6fd98d..2ee951f8120 100644 --- a/config/set/if.php +++ b/config/set/if.php @@ -2,29 +2,15 @@ declare(strict_types=1); -use Rector\CodeQuality\Rector\Expression\InlineIfToExplicitIfRector; -use Rector\CodeQuality\Rector\Expression\TernaryFalseExpressionToIfRector; -use Rector\CodeQuality\Rector\If_\ArrayExplicitBoolCompareRector; use Rector\CodeQuality\Rector\If_\CombineIfRector; -use Rector\CodeQuality\Rector\If_\CompleteMissingIfElseBracketRector; use Rector\CodeQuality\Rector\If_\ExplicitBoolCompareRector; -use Rector\CodeQuality\Rector\If_\ObjectExplicitBoolCompareRector; -use Rector\CodeQuality\Rector\If_\ShortenElseIfRector; use Rector\CodeQuality\Rector\If_\SimplifyIfElseToTernaryRector; -use Rector\CodingStyle\Rector\If_\AlternativeIfToBracketRector; use Rector\Config\RectorConfig; return static function (RectorConfig $rectorConfig): void { $rectorConfig->rules([ - AlternativeIfToBracketRector::class, - CompleteMissingIfElseBracketRector::class, - InlineIfToExplicitIfRector::class, - TernaryFalseExpressionToIfRector::class, - ArrayExplicitBoolCompareRector::class, - ObjectExplicitBoolCompareRector::class, ExplicitBoolCompareRector::class, CombineIfRector::class, - ShortenElseIfRector::class, SimplifyIfElseToTernaryRector::class, ]); }; diff --git a/src/Config/Level/CodeQualityLevel.php b/src/Config/Level/CodeQualityLevel.php index 2d4f4465524..b24712e76c7 100644 --- a/src/Config/Level/CodeQualityLevel.php +++ b/src/Config/Level/CodeQualityLevel.php @@ -27,6 +27,8 @@ use Rector\CodeQuality\Rector\ClassMethod\OptionalParametersAfterRequiredRector; use Rector\CodeQuality\Rector\Empty_\SimplifyEmptyCheckOnEmptyArrayRector; use Rector\CodeQuality\Rector\Equal\UseIdenticalOverEqualWithSameTypeRector; +use Rector\CodeQuality\Rector\Expression\InlineIfToExplicitIfRector; +use Rector\CodeQuality\Rector\Expression\TernaryFalseExpressionToIfRector; use Rector\CodeQuality\Rector\For_\ForRepeatedCountToOwnVariableRector; use Rector\CodeQuality\Rector\Foreach_\ForeachItemsAssignToEmptyArrayToAssignRector; use Rector\CodeQuality\Rector\Foreach_\ForeachToInArrayRector; @@ -49,7 +51,10 @@ use Rector\CodeQuality\Rector\Identical\SimplifyArraySearchRector; use Rector\CodeQuality\Rector\Identical\SimplifyConditionsRector; use Rector\CodeQuality\Rector\Identical\StrlenZeroToIdenticalEmptyStringRector; +use Rector\CodeQuality\Rector\If_\ArrayExplicitBoolCompareRector; use Rector\CodeQuality\Rector\If_\ConsecutiveNullCompareReturnsToNullCoalesceQueueRector; +use Rector\CodeQuality\Rector\If_\ObjectExplicitBoolCompareRector; +use Rector\CodeQuality\Rector\If_\ShortenElseIfRector; use Rector\CodeQuality\Rector\If_\SimplifyIfNotNullReturnRector; use Rector\CodeQuality\Rector\If_\SimplifyIfNullableReturnRector; use Rector\CodeQuality\Rector\If_\SimplifyIfReturnBoolRector; @@ -137,6 +142,9 @@ final class CodeQualityLevel CompleteDynamicPropertiesRector::class, IsAWithStringWithThirdArgumentRector::class, StrlenZeroToIdenticalEmptyStringRector::class, + ArrayExplicitBoolCompareRector::class, + ObjectExplicitBoolCompareRector::class, + ShortenElseIfRector::class, ThrowWithPreviousExceptionRector::class, RemoveSoleValueSprintfRector::class, ExplicitReturnNullRector::class, @@ -154,6 +162,8 @@ final class CodeQualityLevel NewStaticToNewSelfRector::class, VariableConstFetchToClassConstFetchRector::class, SingularSwitchToIfRector::class, + InlineIfToExplicitIfRector::class, + TernaryFalseExpressionToIfRector::class, SwitchTrueToMatchRector::class, SimplifyIfNullableReturnRector::class, CallUserFuncWithArrowFunctionToInlineRector::class, diff --git a/src/Config/Level/CodingStyleLevel.php b/src/Config/Level/CodingStyleLevel.php index 4a2fe71ec84..c94c8a013f6 100644 --- a/src/Config/Level/CodingStyleLevel.php +++ b/src/Config/Level/CodingStyleLevel.php @@ -4,6 +4,7 @@ namespace Rector\Config\Level; +use Rector\CodeQuality\Rector\If_\CompleteMissingIfElseBracketRector; use Rector\CodingStyle\Rector\Assign\SplitDoubleAssignRector; use Rector\CodingStyle\Rector\Catch_\CatchExceptionNameMatchingTypeRector; use Rector\CodingStyle\Rector\ClassConst\SplitGroupedClassConstantsRector; @@ -16,6 +17,7 @@ use Rector\CodingStyle\Rector\FuncCall\StrictArraySearchRector; use Rector\CodingStyle\Rector\FuncCall\StrictInArrayRector; use Rector\CodingStyle\Rector\FuncCall\VersionCompareFuncCallToConstantRector; +use Rector\CodingStyle\Rector\If_\AlternativeIfToBracketRector; use Rector\CodingStyle\Rector\Property\SplitGroupedPropertiesRector; use Rector\CodingStyle\Rector\Stmt\NewlineAfterStatementRector; use Rector\CodingStyle\Rector\Stmt\RemoveUselessAliasInUseStatementRector; @@ -49,6 +51,8 @@ final class CodingStyleLevel SeparateMultiUseImportsRector::class, NewlineBetweenClassLikeStmtsRector::class, NewlineAfterStatementRector::class, + AlternativeIfToBracketRector::class, + CompleteMissingIfElseBracketRector::class, SimplifyQuoteEscapeRector::class, StringClassNameToClassConstantRector::class, CatchExceptionNameMatchingTypeRector::class, diff --git a/src/Set/ValueObject/SetList.php b/src/Set/ValueObject/SetList.php index 69edadc1645..b6c39b32415 100644 --- a/src/Set/ValueObject/SetList.php +++ b/src/Set/ValueObject/SetList.php @@ -136,6 +136,9 @@ final class SetList */ public const string INSTANCEOF = __DIR__ . '/../../../config/set/instanceof.php'; + /** + * @deprecated Use code-quality and coding-style sets instead, as the if rules were moved there or deprecated + */ public const string IF = __DIR__ . '/../../../config/set/if.php'; public const string CARBON = __DIR__ . '/../../../config/set/datetime-to-carbon.php';