| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.md | 2025-10-27 | 7.8 kB | |
| Released Rector 2.2.6 source code.tar.gz | 2025-10-27 | 2.0 MB | |
| Released Rector 2.2.6 source code.zip | 2025-10-27 | 4.3 MB | |
| Totals: 3 Items | 6.3 MB | 0 | |
New Features :partying_face:
- [PHP 8.5] Add
NestedToPipeOperatorRector(#7577) - [code-quality] Add
DirnameDirConcatStringToDirectStringPathRector(#7552) - [dead-code] Add
RemoveNullArgOnNullDefaultParamRector(#7562) - register AddClosureParamTypeFromIterableMethodCallRector to type declaration set (https://github.com/rectorphp/rector-src/commit/4d78f41bf14585adc0a7897d246b502142159776)
- register AddParamArrayDocblockBasedOnCallableNativeFuncCallRector in type declaration docblocks (https://github.com/rectorphp/rector-src/commit/80f7db8a3b9a4ab34c6646c9d24f03e777cc20c7)
Bugfixes :bug:
- Fix next catch missed variable rename in CatchExceptionNameMatchingTypeRector (#7547)
- [Php81] Fix first class callable should not have trailing comma on FunctionLikeToFirstClassCallableRector (#7551)
- [CodingStyle] Skip Method target not found or defined only via @method on FunctionLikeToFirstClassCallableRector (#7553)
- [Php81][CodingStyle] Allow both exists in both @method and native method on FunctionLikeToFirstClassCallableRector (#7559)
- [Php81][CodingStyle] Skip param used as invokable function multi args on FunctionLikeToFirstClassCallableRector (#7563)
- [Php81][CodingStyle] Skip Closure/ArrowFunction as assign expr on FunctionLikeToFirstClassCallableRector (#7564)
- finalize rules as well (#7575), Thanks @Orest-Divintari!
- [Php85] Clean up dynamic expr check on NestedToPipeOperatorRector (#7578)
- [Php81] Skip Closure bindTo on FunctionLikeToFirstClassCallableRector (#7581)
- Remove trait support rom AddParamBasedOnParentClassMethodRector as depends on context; move to Class_ node hooking for efficiency (#7587)
- [Php85] Handle indent inside class method on NestedToPipeOperatorRector (#7584)
- make DeclareStrictTypesRector skip files without namespace, as very risky in files without PSR-4 autodiscovery (#7585)
- speedup - skip refleciton if all params are typed (https://github.com/rectorphp/rector-src/commit/08f6dc3c299038919818df2970eaf69a88fd1314)
- skip all-typed properties in TypedPropertyFromStrictConstructorRector (https://github.com/rectorphp/rector-src/commit/c5d9fdfcbe5bc43a8114307e24b5ca6cdd57f55b)
- skip no-type params in RenameParamToMatchTypeRector (https://github.com/rectorphp/rector-src/commit/cd7eb93b7bb67f142708ad4a54ab12f9e09f31e2)
- optimize ParamTypeByParentCallTypeRector to handle only classes with parents and method without param type (https://github.com/rectorphp/rector-src/commit/0ca4e9112b61bdbeb6b8fe826e7aae56c298272e)
- [DeadCode] Allow FuncCall on RemoveNullArgOnNullDefaultParamRector (#7567)
- [DeadCode] Handle with middle default not null on RemoveNullArgOnNullDefaultParamRector (#7565)
- [DeadCode] Allow remove named argument if position is match with param on RemoveNullArgOnNullDefaultParamRector (#7566)
- [comments] Remove attribute comments support as comments require standalone line before any doctrine annotation (#7582)
Removed and Deprecated :skull:
- [depre] Deprecate ParentClassToTraitsRector as very narrow use case to be generic, create custom rule instead (#7550)
- [depre] Deprecate ReplaceParentCallByPropertyCallRector as not used since doctrine set service removed, not standalone rule (#7554)
- [depre] Deprecate MethodCallToNewRector as not used and based on assumptions (#7555)
- [depre] Deprecate MethodCallToPropertyFetchRector, as not practical/used and part of removed set (#7556)
- [depre] Deprecate MethodCallToPropertyFetchRector as not used and part of removed set (#7557)
- [depre] Deprecate PropertyFetchToMethodCallRector not used and as too generic, use custom rule instead (#7558)
- [depre] Deprecate PropertyAssignToMethodCallRector as too narrow use-case and never used (#7561)
- [depre] Deprecate ReturnTypeWillChangeRector as discourages from filling correct types, use type declaration set instead (#7570)
- [depre] Deprecate MultiDimensionalArrayToArrayDestructRector as not part of any set, can create less readable and harder to analyse code (#7573)
- [depre] Deprecate InlineVarDocTagToAssertRector as not par of any set, and create prod crashing code (#7574)
- [depre] Deprecate AddAllowDynamicPropertiesAttributeRector, as not in PHP sets and does not help by adding attribute everywhere (#7568)
- [depre] Deprecate AddLiteralSeparatorToNumberRector as cannot be automated and depends on context (#7569)
rectorphp/rector-symfony :musical_note:
- [Configs] Skip first class callable on RemoveConstructorAutowireServiceRector (#858)
- [config] Add FromServicePublicToDefaultsPublicRector (#857)
- cover 2nd arg class in RemoveConstructorAutowireServiceRector (#856)
- [config] Add RemoveConstructorAutowireServiceRector (#855)
- [Symfony73] Skip empty result of named arguments on ConstraintOptionsToNamedArgumentsRector (#853)
- [depre] Deprecate StringExtensionToConfigBuilderRector as deprecated in Symfony 7.4 (#854)
rectorphp/rector-phpunit :green_circle:
- [code-quality] Add DeclareStrictTypesTestsRector to code-quality test (#566)
- [depre] Deprecate AddParentSetupCallOnSetupRector as not generic to be automated, fill manually where needed (#565)
- [CodeQuality] Skip used inside static closure on AssertFuncCallToPHPUnitAssertRector (#564)
- register ReplaceAtMethodWithDesiredMatcherRector to code-quality (#563)
- [depre] Deprecate CreateMockToAnonymousClassRector as requires manual work, often value object setter can be better alternative (#562)