All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
PRs and issues are linked, so you can find more about it. Thanks to ChangelogLinker.
- #3954 [Doctrine] Add constructor getRepository to service
- #3972 [DoctrineCodeQuality] Add few entity rules
- #3950 [Fluent] Add factory case
- #3941 [TypeDeclaration] Add nested key support
- #3958 Add AssertEqualsToSameRector, Thanks to @dereuromark
- #3953 add easy-ci
- #3952 add new ManagerRegistry namespace
- #3924 [CodingStyle] Make ConsistentPregDelimiterRector configurable
- #3911 [DX] Rename namespaces of Rector rules to respect node, instead of domain, Thanks to @dobryy
- #3947 [Defluent] Allow DateTime to be fluent
- #3969 [Order] Move ClassLike and Class_ rules into correct namespaces, Thanks to @dobryy
- #3923 [Order] Order class methods by visibility, Thanks to @dobryy
- #3929 [Order] Order properties by visibility, Thanks to @dobryy
- #3934 [Order] Order constants by visibility, Thanks to @dobryy
- #3933 [Order] Visibility rules refactoring, Thanks to @dobryy
- #3968 [Order] Order first level class statements, Thanks to @dobryy
- #3962 [RectorGenerator] prevent incorrect package configuration
- #3916 [SOLID] skip reference-write functions
- #3966 Recipe array to object
- #3945 service entity repository combo
- #3922 make ConsistentPregDelimiterRector configurable
- #3964 make sure recipe is loaded
- #3925 make use of NodeConnectingVisitor + improve generate Rector docs
- #3946 misc
- #3951 move Polyfill to rules
- #3936 PHPStan: require iterable types
- #3937 fixture for the issue #3931, Thanks to @dobryy
- #3926 update create-rector.php.dist
- #3949 [static] use Symplify rule
- #3938 drop EnsureDataProviderInDocBlockRector, job for coding standards
v0.7.63 - 2020-08-06
- #3921 [CodeQuality] Add argument support to ArrayThisCallToThisMethodCallRector
- #3918 Fix set path was not found, Thanks to @zingimmick
- #3920 drop SimpleArrayCallableToStringRector, as it makes code magical and harder to proces
- #3917 drop slevomat cs to prevent breaking build for last months
v0.7.62 - 2020-08-05
- #3885 [TypeDeclaration] Skip typed property for @var adding
- #3910 add parent-property test
- #3886 Add set-path constant support
- #3896 FunctionTo* correction renames, add PHPStan rule to check correct category of rule
- #3894 [Generic] FuncCallToMethodCall only in case of parent class
- #3901 [Generic] skip static method in FuncCallToMethodCallRector
- #3883 [Naming] Allow uuid to have name id
- #3906 [Naming] Decouple RenameParamToMatchTypeRector
- #3898 [SOLID] Skip property that is being changed by func call
- #3895 rename FunctionToStaticCallRector to FuncCallToStaticCallRector
- #3912 cleanup
- #3899 Provide existing expression to get type
- #3904 Check that Recipe node types are imported, Thanks to @dobryy
- #3907 skip configure unless in tests
- #3909 Rename StaticCallToAnotherServiceConstructorInjectionRector to StaticCallToMethodCall
- #3913 re-use param in constructor
v0.7.61 - 2020-08-03
- #3879 [Nette 3.0] use dev nette deps to resolve form/application types
- #3878 [Nette 3.0] Various rules updates
v0.7.60 - 2020-08-02
- #3872 [NetteCodeQuality] Skip isset on form input + multiplier check
- #3870 [NetteCodeQuality] Get component
- #3875 make use of constant
v0.7.59 - 2020-08-02
- #3869 skip form
v0.7.58 - 2020-08-02
- #3850 [Generic] Add method call remover rector, Thanks to @mssimi
- #3854 [MagicDisclosure] Add last method with differnt type support
- #3859 [MagicDisclosure] Add support for child parent class types
- #3860 [MagicDisclosure] Add SetterOnSetterMethodCallToStandaloneAssignRector
- #3867 [NetteCodeQuality] Add ArrayAccessSetControlToAddComponentMethodCallRector
- #3853 [Defluent] New set + various improvements
- #3866 [Docs] Show constants over values
- #3856 [MagicDisclosure] Skip getters
- #3862 [MagicDisclosure] Improve naming
- #3861 [MagicDisclosure] Fluent refactoring
- #3868 extend direct access
- #3852 Resolve " TypeError in ValueResolver::resolveClassConstFetch()", Thanks to @fsok
- #3855 [ci] Improve workflow for squash commits
- #3865 [ci] enable defluent set
- #3863 [MagicDisclosure] fixes
- #3857 [RectorGenerator] Fix trailing comma in function calls error in php 7.2, Thanks to @zingimmick
- #3858 [MagicDisclosure] Drop type scoping from ReturnThisRemoveRector, as always localy scope
v0.7.57 - 2020-07-31
- #3835 [Nette] Add ArrayDimFetchControlToGetComponentMethodCallRector
- #3841 Add failing fixture for AddDefaultValueForUndefinedVariableRector, Thanks to @u01jmg3
- #3847 [MagicRemoval] Improve rules
- #3826 [Order] Order properties and constants with respect of complexity and position, Thanks to @dobryy
- #3837 skip on method call
- #3838 test kodiak for rebase
- #3839 compile
- #3842 [PHP 5.6] Fix foreach unset variable default
v0.7.56 - 2020-07-30
- #3829 add suffix to prevent phpunit autoload
- #3825 Add failing test case for issue 3824, Thanks to @fsok
- #3821 add ConfigurableRectorInterface
- #3833 [Nette] Rename follow up variables too
- #3832 [Nette] Skip nested control access to /ChangeControlArrayAccessToAnnotatedControlVariableRector
- #3823 [RectorGenerator] Refactoring to testable code
- #3831 decouple testing tools
- #3830 [PHP 7.0] Fix variable name on static call
v0.7.55 - 2020-07-29
- #3803 [Celebrity] Merge to code-quality
- #3822 [DX] Update README and other docs files to use PHP syntax for configs, Thanks to @dobryy
- #3800 [Nette] Load data from __construct of same class
- #3795 [Order] Order any param (Nullable or with default value) that has type of Object, Thanks to @dobryy
- #3818 Move src/Rector to rules/generic/src/Rector, Core namespace for rules to Generic
- #3791 Enable Order Set with failing rules disabled, Thanks to @dobryy
- #3809 Update doctrine/inflector requirement from ^1.3 to ^1.4|^2.0, Thanks to @zingimmick
- #3819 [Nette 3.0] Translate contract
- #3820 docs
- #3802 misc
- #3815 [Nette 3.0] Various new rules
v0.7.54 - 2020-07-27
- #3781 [Nette] add support for connection with method call
- #3787 [Nette] Add dim fetch support
- #3790 [Nette] Add ChangeControlArrayAccessToAnnotatedControlVariableRector
- #3797 [Nette] skip non control adding add methods
- #3773 [Nette] Add ChangeFormArrayAccessToAnnotatedControlVariableRector
- #3775 [Nette] add support for new instance type
- #3774 [Nette] Add external form factory support
- #3796 [Nette] Add control assign unique per variable
- #3782 [Nette] Add MakeGetComponentAssignAnnotatedRector
- #3777 [Nette] add add*() method resolution for factories
- #3785 [Nette] add support for getComponent() resolution in form array access
- #3776 [PHP 7.4] Add use imported FQN name
- #3784 [Nette] Improve AddDatePickerToDateControlRector
- #3780 [Nette] skip being assigned
- #3799 [Nette] prevent duplicates on array dims of Form
- #3793 [Nette] move quality rules to nette-code-quality directory
- #3786 [Order] Order __constructor dependencies by type alphabetically, Thanks to @dobryy
- #3770 [PHP7.4] Invalid type with class keyword in Doctrine ORM property, Thanks to @dobryy
- #3788 Bump to phpstan 0.12.33, nikic/php-parser to 4.6
- #3792 [PHP 7.4] Make property nullable if not set in constructor
- #3794 fix removing of doc
- #3778 remove MethodCallNodeVisitor, use better parent traversal approach
v0.7.53 - 2020-07-23
- #3762 [SymfonyPhpConfig] Add AddEmptyLineBetweenCallsInPhpConfigRector
- #3761 [Config] Warn about YAML deprecation + load YAML sets
- #3766 [PHP 5.5] Skip exception to string by default, probably on purpose
- #3763 [Nette 3.0] Skip already fetched in form contorl
- #3760 [Nette] Add form dim access to standalone Form Control
v0.7.52 - 2020-07-22
v0.7.51 - 2020-07-21
v0.7.49 - 2020-07-21
- #3712 [Legacy] Add AddTopIncludeRector squash, Thanks to @phpfui
- #3705 [Symfony] Add RemoveDefaultGetBlockPrefixRector
- #3700 [Symfony] add support for options to entry_options rename in collection
- #3731 add TemplateAnnotationToThisRenderRector for nested closure
- #3697 [Symfony 3.0] Add ChangeCollectionTypeOptionNameFromTypeToEntryTypeRector
- #3709 Add Comparison to ComparisonExpression rename, Thanks to @othercorey
- #3720 Add more refactorings for CakePHP 4.0, Thanks to @markstory
- #3695 [Symfony 3.0] Add ChangeCollectionTypeOptionTypeFromStringToClassReferenceRector
- #3735 add rector.php support
- #3701 add support for options to entry_options rename in collection
- #3699 [Utils] Add RequireStringArgumentInMethodCallRule
- #3745 [ci] add colors
- #3717 [CodingStyle] Create new TernaryConditionVariableAssignmentRector, Thanks to @u01jmg3
- #3732 [CodingStyle] Create new WrapVariableVariableNameInCurlyBracesRector, Thanks to @u01jmg3
- #3744 [DeadCode] Skip @api in unused public constants
- #3713 [Legacy] Correct test for AddTopIncludeRector
- #3737 [Naming] Decoupling of RenameVariableToMatchGetMethodNameRector
- #3706 [Naming] Name variable after get method, Thanks to @dobryy
- #3738 [Naming] Skip non-object type returns, classes with children and typical naming patterns
- #3740 [Naming] apply "new" naming rule
- #3707 [Renaming] Prevent RenameMethodRector from renaming to duplicated class method and in class itself
- #3741 [Set] move to new package
- #3704 [Symfony] Update instance to class reference to collection types
- #3703 [Symfony 3.0] cleanup get name
- #3698 make use of AbstractFormAddRector
- #3724 Switch ecs.yaml to ecs.php
- #3719 config YAML to PHP
- #3722 Improve grammar, Thanks to @u01jmg3
- #3723 Convert config.php to config.yaml
- #3725 change ecs-after-rector.yaml to ecs-after-rector.php
- #3727 Switch rector-ci configuration from YAML to PHP
- #3730 use of constants
- #3733 correct namespace in configs
- #3746 Move existing Rector from the
coding-style
set to thephp70
set, Thanks to @u01jmg3 - #3747 make use of new set from symplify
- #3694 tyding
- #3734 [sets] YAML to PHP
- #3739 [Naming] Apply RenameVariableToMatchGetMethodNameRector on code + fix docblock rename
- #3736 Fixing Compiler
- #3708 [Renaming] Remove RenameMethodCallRector, ported to RenameMethodRector
- #3644 [Sensio] Fix nested function scope of return
- #3678 [Symfony] add Kernel support to ChangeFileLoaderInExtensionAndKernelRector
- #3690 [Symfony 3] Add custom xml to StringFormTypeToClassRector"
- #3680 [CodingStyle] Import classes only for Fully Qualified class names byt skipping all Qualified names, Thanks to @dobryy
- #3686 [Downgrade] PHP 7.4 to 7.1 (Property Type), Thanks to @dobryy
- #3687 [Legacy] RemoveIncludeRector, Thanks to @phpfui
- #3682 [MysqlToMysqli] Mysql mysqli stackoverflow feedback, Thanks to @ludekbenedik
- #3676 [Symfony] Extend ChangeFileLoaderInExtensionRectorTest to make it configurable
- #3665 Check minimum required php version from composer.json, Thanks to @dobryy
- #3691 inform about wrong path to config param
- #3677 Prevent negative values for IndentLevel, Thanks to @phpfui
- #3692 use strings over ::class in type detection, as they get prefixed by phar builder
- #3683 [Php74] Fix AddLiteralSeparatorToNumberRector if float number has zero after …, Thanks to @ludekbenedik
- #3689 [SOLID] fix foreach variable override in const decoupling
- #3693 fix import of already existing param/var/return type or class annotation
- #3674 fix data provider to iterator
- #3669 [MockeryToProphecy] Remove close call to mockery from test classes, Thanks to @jaapio
- #3672 [cs] remove throws
v0.7.47 - 2020-07-07
- #3664 [Symfony] Add ChangeXmlToYamlFileLoaderInExtensionRector
- #3670 [CodeQuality] improve UnusedForeachValueToArrayKeysRector to work with array foreach values
- #3671 [DeadCode] Skip property used as arg
- #3661 Rewrite mockery mock creation, Thanks to @jaapio
v0.7.46 - 2020-07-06
- #3663 [Naming] Make rename property/variable skip date time at convention
v0.7.44 - 2020-07-06
- #3652 [CI] simlify jobs to matrix
- #3653 [CodingStyle] Split UnderscoreToPascalCaseVariableAndPropertyNameRector, Thanks to @dobryy
- #3657 [CodingStyle] Make UnderscoreToPascalCaseVariableNameRector skip native variables, like _SERVER
- #3662 [PHP 7.4] Make RestoreDefaultNullToNullableTypePropertyRector skip nullable defined in ctor
- #3658 remove func call from method calls
v0.7.43 - 2020-07-05
- #3654 [Sension] improve template annotation
- #3649 decouple createConcat() method
- #3648 update rule to support multiple occurrences of the class in the string, Thanks to @dobryy
- #3651 fix get name or static call
- #3650 Fix typo in rector_rules_overview.md, Thanks to @Gymnasiast
v0.7.42 - 2020-07-03
- #3613 [CodingStyle] Add new rector to replace hardcoded class name reference in string with
class
keyword reference, Thanks to @dobryy - #3601 [Decouple] Add DecoupleClassMethodToOwnClassRector
- #3612 [Naming] Add RenameVariableToMatchNewTypeRector
- #3632 [SOLID] Prevent adding constant, that is reserved keyword in RepeatedLiteralToClassConstantRector
- #3609 [Symfony] add support for union of response and array
- #3622 [Symfony] add constant return array support to TemplateAnnotationToThisRenderRector
- #3637 [DynamicTypeAnalysis] Speedup dynamic type storage in tests
- #3606 [Symfony] decouple ReturnTypeDeclarationUpdater
- #3608 [Symfony] rename TemplateAnnotationRector to TemplateAnnotationToThisRender
- #3623 [Symfony] pass return data as args
- #3604 [Symfony] merge TemplateAnnotationRector version to 5
- #3602 rename FluentReplaceRector to DefluentMethodCallRector
- #3603 move ReturnThisRemoveRector to MagicDisclosure
- #3614 use explicit xBuilder classes to prevent typos and PHPStan and PHPStorm confussion
- #3605 rename file to fileInfo to reflect the type
- #3607 decouple PhpDocInfoManipulator
- #3630 Make use of PHPStan static reflection
- #3638 speed limits
- #3627 fail on found errors
- #3629 merge PropertyNaming to one class
- #3631 [phar] include phpstan dev deps
- #3615 [tests] rename file to fileInfo
- #3633 [CodeQuality] fix callable this if part of the method
- #3616 [Symfony] Fix template array in TemplateAnnotationToThisRenderRector
- #3626 fix class name
- #3628 Fix PHPStan Reflection break from 0.12.26
- #3634 fix rector.phar build
- #3624 [MagicDisclosure] remove MethodBody to Return_
- #3610 [Symfony] prevent remove of mixed return
- #3611 [Symfony] remove template annotation if returns response
- #3636 remove issue-tests, already covered in specific rule tests
v0.7.41 - 2020-06-26
- #3597 skip parent ctor in AnnotatedPropertyInjectToConstructorInjectionRector
v0.7.40 - 2020-06-25
- #3592 make sure interface type is checked
- #3595 Make use of Symplify/EasyTesting
- #3594 Symfony FormTypeInstanceToClassConstRector: Include AbstractController in allowed object types, Thanks to @andyexeter
- #3596 Various fixes
v0.7.39^2
- #3579 Boolean Operands cause ChangeNestedForeachIfsToEarlyContinueRector to…, Thanks to @derrickschoen
v0.7.38 - 2020-06-24
- #3591 [NetteCodeQuality] Add MoveInjectToExistingConstructorRector
- #3588 add inject in case of parent __construct
- #3586 add typed property if on PHP 7.4
- #3590 prefer local __construct
- #3589 re-use parent property
- #3587 respect @Inject on ContextGetByTypeToConstructorInjectionRector
- #3582 Update create_own_rule.md, Thanks to @Philosoft
- #3583 remove @return tag if not needed in ReturnTypeDeclarationRector
- #3581 remove @return tag if not needed in ReturnTypeDeclarationRector
- #3571 [Autodiscovery] add types/suffix support to MoveValueObjectsToValueObjectDirectoryRector
- #3572 Add rename class support in twig/latte as well
- #3566 added support post class move rename in XML files, Thanks to @vladyslavstartsev
- #3565 Add post class move rename in neon/yaml files
- #3577 add NonEmptyArrayTypeMapper
- #3578 return type - skip void
- #3574 skip common patterns in value object
- #3573 allow skip null scope
- #3576 fix return type in abstract class
v0.7.37 - 2020-06-21
- #3559 "$this->"" needs to become "static::" instead of "self::", Thanks to @derrickschoen
- #3562 Correct spelling mistake, Thanks to @PurpleBooth
- #3561 decopule AbstractFileMovingFileSystemRector
v0.7.36 - 2020-06-19
- #3558 Add parsed tokens and stmts object
- #3557 fix importing of soon-to-be-existing classes
v0.7.35 - 2020-06-19
- #3550 [Autodiscovery] add class-rename to MoveServicesBySuffixToDirectoryRector
- #3535 [Experimental] Add safe_types option
- #3539 Re-add --only option
- #3553 add TokensByFilePathStorage + decouple file system rules to own step
- #3538 [PHP 7.2] Add ReplaceEachAssignmentWithKeyCurrentRector
- #3548 Add @fixme, if ini_set/init_get removal breaks the code
- #3536 [Autodiscovery] rename interface used in other places too
- #3549 [Autodiscovery] Skip control factory in interface split
- #3552 [PHP] Handle arrow functions in AddDefaultValueForUndefinedVariableRector, Thanks to @fsok
- #3551 skip Form factories too
- #3546 allow new phpstan
- #3547 Expand CakePHP 4.1 standard, Thanks to @markstory
- #3555 implements rename
- #3556 Fix imported interface renaming
- #3554 remove MoveAndRenameNamespaceRector, not tested and not working, prefer class rename
v0.7.34 - 2020-06-16
- #3507 [CodeQuality] Add ArrayThisCallToThisMethodCallRector
- #3528 [Order] Add OrderClassConstantsByIntegerValueRector
- #3519 [Rector] Add UpdateFileNameByClassNameFileSystemRector
- #3527 Add PHPUnit 9.0 regex method name changes
- #3523 add NullableTypeMapper
- #3511 Add rector rules for deprecated features in CakePHP 4.1, Thanks to @markstory
- #3534 [docs] make code sample required for Rector rules, add code highlight
- #3506 [Autodiscovery] Do not nest already correct name
- #3487 [CakePHP] Convert array options to fluent method calls, Thanks to @garas
- #3503 I found a bug with the ChangeNestedForeachIfsToEarlyContinueRector, Thanks to @derrickschoen
- #3512 Don't type hint to traits, Thanks to @UFTimmy
- #3524 skip encapsed string from constant extraction
- #3520 skip multi assign ChangeReadOnlyVariableWithDefaultValueToConstantRector
- #3525 [PHP 7.4] Make array spread work only for integer keys
- #3533 decouple more responsibility to TagValueNodeConfiguration
- #3526 Fix for array of callable print in phpdoc
- #3532 Fix quote in array values of phpdoc tags, decouple TagValueNodeConfiguration
- #3508 Fix regex to account for windows., Thanks to @UFTimmy
- #3522 fix @template tag preposition
- #3521 fix nested comment in nested foreach to if
- #3518 Simplify ExplicitPhpErrorApiRector and remove replaceNode() use
v0.7.32 - 2020-06-10
- #3505 add parent::__construct() in case of existing empty ctor
v0.7.31 - 2020-06-09
v0.7.30 - 2020-06-09
- #3479 [NetteUtilsCodeQuality] Add ReplaceTimeNumberWithDateTimeConstantRector
- #3491 [Restoration] Add RemoveUselessJustForSakeInterfaceRector
- #3483 [Restoration] Add MakeTypedPropertyNullableIfCheckedRector
- #3475 [Sensio] Add @route migration to Symfony
- #3476 [Sensio] Add RemoveServiceFromSensioRouteRector
- #3477 [PHP 7.4] Add conflicting short import typed property fix
- #3492 Add support for rename of @property
- #3498 Add return type replacement in TemplateAnnotationRector
- #3486 test children inject typed
- #3484 [PHP 7.4] Allow run typed properties on class-like types only"
- #3482 [PHP 7.4] Prevent already used property name
- #3481 [PHP 7.4] Prevent child typed property override by abstract
- #3497 TemplateAnnotationRector improvements
- #3499 Update documentation link in PhpRectorInterface, Thanks to @RusiPapazov
- #3488 PHPStan compatibility fixes, Thanks to @ondrejmirtes
- #3494 Fix typo in rector_rules_overview.md, Thanks to @berezuev
- #3485 fix skip non-class for nullable types
- #3495 fix method call name
- #3496 constant table fix
- #3478 fix prefixed GetToConstructorInjectionRector classes
- #3474 Various @template/@method annotation fixes
- #3460 Update docker commands to remove container on exit, Thanks to @codereviewvideos
- #3456 [CodingStyle] Add RemoveDoubleUnderscoreInMethodNameRector
- #3470 add fix for preslah of entity class
- #3455 Add RemoveFuncCallArgRector, ClearReturnNewByReferenceRector, RemoveIniGetSetFuncCallRector, ReplaceHttpServerVarsByServerRector
- #3459 [PHP 8.0] Add RemoveUnusedVariableInCatchRector
- #3458 [PHP 8.0] Add TokenGetAllToObjectRector
- #3450 update to phpstan/phpstan-phpunit 0.12.9
- #3457 [PHP 7.2] Various improvements in ListEach and WhileEach Rectors
- #3453 Future-proof ScopeFactory, Thanks to @ondrejmirtes
- #3468 use string for classes in doc node factory
- #3472 [phar] Un-pre-slash strings that should be clean
- #3467 [phar] unprefix class strings
- #3466 [Symfony 2.8] Fix ArgumentDefaultValueReplacerRector to work with bool values
- #3469 fix orm prefix
- #3451 Fixed link to nodes overview in own rector code sample, Thanks to @norberttech
- #3471 phar extra slashes fix
- #3452 [testing] Rework AbstractRunnableRectorTestCase to be part of main test + fix ListEachRector behavior
v0.7.27 - 2020-05-30
- #3399 [Nette] Add ContextGetByTypeToConstructorInjectionRector
- #3434 [NetteKdyby] Add ReplaceMagicEventPropertySubscriberWithEventClassSubscriberRector
- #3416 [NetteKdyby] Add ReplaceMagicPropertyEventWithEventClassRector
- #3429 [Privatization] Add PrivatizeFinalClassMethodRector
- #3411 [Privatization] Add property privatization rule
- #3446 [Restoration] Add CompleteMissingDependencyInNewRector
- #3396 [SOLID] add InjectMethodFactory for multi parent abstract rector
- #3392 [SOLID] Add MultiParentingToAbstractDependencyRector
- #3410 Add Drupal logo + link to Drupal Rector rules to README.md, Thanks to @shaal
- #3398 add ParsedClassConstFetchNodeCollector
- #3418 add addComment() to Rector, fix comment preserving
- #3350 Add @mixin support from PHPStan
- #3422 Add Report and Extension package
- #3419 Configuration - add getOutputFormat()
- #3421 adding fixture for validation with message, Thanks to @bitgandtter
- #3417 compensate comments added on too nested node
- #3423 Add AfterProcessEvent and AfterReportEvent
- #3441 [Nette Kdyby] Add direct event class support for string-only based events
- #3437 [Nette Kdyby] Add support for unique dim fetch event param name
- #3439 [Nette Kdyby] Add under_score dim fetch support, prevent double event fill override
- #3440 [Nette Kdyby] Add ReplaceEventManagerWithEventSubscriberRector
- #3442 [Nette Kdyby] do not add getter for unused param in listener method
- #3387 [compiler] Add ScoperTest
- #3415 [CodingStyle] UnderscoreToCamelCaseVariableAndPropertyNameRector
- #3449 [Nette Kdyby] refactor to EventAndListenerTree
- #3447 [Nette Kdyby] Sync getters in listener method and event class
- #3377 composer: bump to Symplify 8-dev
- #3445 [Nette Kdyby] Skip control events"
- #3393 Guard against ShouldNotHappenException, Thanks to @UFTimmy
- #3395 Keep empty php code as is, Thanks to @shaal
- #3390 Use Newline from Standard Printer, Thanks to @tavy315
- #3412 skip public properties
- #3406 [Kdyby to Contributte] Migrate events
- #3435 improve CustomEventFactory
- #3428 Keep new line untouched
- #3379 fix missing doc for property type infering
- #3443 [Nette Kdyby] Fix event undescore_variable name
- #3403 Fix typo in StrStartsWithRector code sample, Thanks to @guilliamxavier
- #3407 Fix SimplifyArraySearchRector w.r.t. "strictness", Thanks to @guilliamxavier
- #3427 fix-readding comment
- #3386 Fix RenameAnnotationRector for null phpdoc, Thanks to @eclipxe13
- #3378 fix doc FQN importing
- #3345 Fix invalid path, Thanks to @ddziaduch
- #3400 remove interface suffix/prexit for PropertyNaming
v0.7.26 - 2020-05-16
- #3351 [CodingStyle] Add SplitGroupedUseImportsRector
- #3358 [Legacy] Add FunctionToStaticMethodRector
- #3369 [PSR-4] Add NormalizeNamespaceByPSR4ComposerAutoloadFileSystemRector
- #3362 [PHP 5.5] Fix StringClassNameToClassConstantRector for importing freshly added class names
- #3355 [docs] add counter next to Rector group
- #3372 [MockistaToMockery] init
- #3348 Decoule ClassRenamer, improve NormalizeNamespaceByPSR4ComposerAutoloadRector
- #3361 Rule Rector\ClassMethod\AddArrayReturnDocTypeRector could not process files, Thanks to @MetalArend
- #3359 Rule "Rector\ClassConst\VarConstantCommentRector" keeps throwing "could not process" errors., Thanks to @MetalArend
- #3367 [ElasticsearchDSL] Deprecate single custom rule, better handled by community
- #3366 [Oxid] Deprecate single custom rule, better handled by community
- #3365 [Shopware] Deprecate single custom rule, better handled by community
- #3363 [Silverstripe] deprecate, handled by community
- #3364 [Sylius] Deprecate single custom rule, better handled by community
- #3376 remove deprecated AutoReturnFactoryCompilerPass
- #3356 [CodeQuality] Fix SimplifyIfReturnBoolRector for else if
v0.7.23 - 2020-05-11
- #3325 [SOLID] Add RepeatedLiteralToClassConstantRector
- #3346 Add symplify/parameter-name-guard
- #3328 [utils] add FindFirstInstanceOfReturnTypeExtension to PHPStan extension
- #3320 Resolving todos #5
- #3321 Resolving todos #6
- #3322 node printing functions consolidation
- #3326 Make use of createMethodCall()
- #3332 Define
__RECTOR_RUNNING__
constant at analysis time, Thanks to @staabm - #3340 move MultipleClassFileToPsr4ClassesRector to PSR4
- #3343 Alter command name, Thanks to @ddziaduch
- #3324 Deprecate Zend 1 to Symfony 4 set
- #3344 Fix link and it's name, Thanks to @ddziaduch
- #3338 Various fixes
- #3341 fix namespace
- #3327 various PHPStan fixes
v0.7.22 - 2020-05-05
- #3293 [Naming] Add RenamePropertyToMatchTypeRector
- #3295 [Naming] Fix duplicate name on already existing + add "naming" set to CI
- #3305 [Order] Add OrderPropertyByComplexityRector
- #3301 [Order] Add OrderPrivateMethodsByUseRector
- #3304 [Order] Add OrderPublicInterfaceMethodRector
- #3289 [Performance] Add PreslashSimpleFunctionRector
- #3290 [SOLID] Add AddFalseDefaultToBoolPropertyRector
- #3277 [PHP 8.0] Add ClassOnObjectRector
- #3285 Add resolving for private properties of annotation object
- #3283 simplify Param node factory + add generic phpdoc class-node factory
- #3279 [PHP 8.0] Add get_debug_type()
- #3278 [PHP 8.0] Add static type
- #3308 add = for @Route options separator
- #3254 [PHP 8.0] Add attributes v2
- #3294 [Naming] Decouple ConflictingNameResolver and ExpectedNameResolver
- #3273 use propety over property property
- #3270 TagValueNode refactoring
- #3269 #3268 - rector should scan linked directories, Thanks to @atompulse
- #3280 refactoring to generic items
- #3281 moving to generic tag node
- #3284 merge more factories to MultiPhpDocNodeFactory
- #3288 Improve $node name get on static or method call
- #3241 Symfony Route annotation needs equal sign, not colon, Thanks to @stephanvierkant
- #3310 workflow: generate changelog
- #3319 Resolving todos #4
- #3309 workflow: generate documentation
- #3306 do not export compiler as part of package
- #3313 Resolving todos
- #3314 Resolving todos #2
- #3300 various coding standard improvements
- #3299 Tests for @noRector, Thanks to @tomasnorre
- #3298 Update Symplify deprecations
- #3318 symplify NodeDumper to PHP code test
- #3297 [Utils] PHPStan rule improvements
- #3317 Fix when PropertyProperty is a subnode of Property, Thanks to @tomasnorre
- #3275 Fix constant referencing in annotations
- #3311 Fix comment removing
- #3302 [CakePHPtoSymfony] Remove unfinished set
- #3287 [DX] drop confusing --only option to promote config
- #3296 remove scan-fatal-errors, move to migrify
- #3266 publish dump-rectors command with 3rd party install
v0.7.20 - 2020-04-26
- #3253 make Doctrine property inferer skip non doc
- #3262 [cs] sort private methods by call order and property by complexity
- #3265 [docs] make dump-rectors command open to public
- #3252 [CodeQuality] Fix CompactToVariablesRector for unknown names
- #3260 [Nette] Fix preg_match_all() to Nette\Utils migrations
- #3261 Fix autoloading for phpstan configs
- #3248 Fix @Route name can be empty, Thanks to @stephanvierkant
- #3264 remove RectorStandaloneRunner, too hacky
v0.7.19 - 2020-04-24
- #3251 [CodeQuality] Add UnusedForeachValueToArrayKeysRector
- #3235 [DX] Add validate fixture suffix
- #3237 [PHP 8.0] Add str_ends_with()
- #3245 [PHP 8.0] Add Stringable
- #3228 [PHP 8.0] Add str_starts_with - rule #500 🎉🎉🎉
- #3242 Update rector counter, Thanks to @vladyslavstartsev
- #3238 StrStartWith refactoring
- #3239 simplify throws class resolving
- #3240 Symfony route with prefix, Thanks to @stephanvierkant
- #3244 docs refactoring
v0.7.18 - 2020-04-23
- #3224 rectorphp#3223, Thanks to @atompulse
v0.7.17 - 2020-04-23
- #3219 [Restoration] Add RemoveFinalFromEntityRector
- #3218 Add more tag value node tests
- #3196 [CodeQuality] Add SplitListScalarAssignToSeparateLineRector
- #3195 [PHPUnit] Add strict param to ReplaceAssertArraySubsetRector
- #3118 Add cache for un-changed files
- #3193 add condition test for @Route
- #3175 [CodeQuality] Make ChangeArrayPushToArrayAssignRector skip spread
- #3211 [PhpDoc] Use generic approach to TagValueNode annotations quotes and explicitness
- #3182 [Privatization] Make PrivatizeLocalOnlyMethodRector skip entities
- #3156 Upgrade to php-parser 4.4
- #3174 include PHPExcel_Worksheet_PageSetup
- #3186 Updating the link to Drupal-Rector repo, Thanks to @shaal
- #3187 Test with Drupal-Rector project to discover BC breaks early on, Thanks to @shaal
- #3217 reorganize phpdoc reprint test
- #3194 Spacing + quoting improvements in @Route
- #3197 various improvements
- #3198 use FileInfo in Parser
- #3200 Run rector list in CI to detect potential issues, Thanks to @JanMikes
- #3215 improve TagValueNodes
- #3199 [PHPUnit] Fix ExceptionAnnotationRector for null phpdoc
- #3191 [PHP 7.3] Fix regex slash escaping
- #3177 fix back annotation
- #3176 Type and Choice fixes
- #3204 various fixes
- #3216 drop hide autoload errors
v0.7.16 - 2020-04-16
- #3172 [PHPOffice] Add IncreaseColumnIndexRector
v0.7.15 - 2020-04-16
v0.7.14 - 2020-04-14
- #3164 [DeadCode] Add RemoveUnusedAssignVariableRector
- #3161 fix comment removal
v0.7.12 - 2020-04-13
- #3155 Add extra allowed interface to EntityAliasToClassConstantReferenceRector, Thanks to @acrobat
- #3154 provide config + add post Rectors for FileSystemRector
- #3153 [DeadCode] Fix RemoveUnusedDoctrineEntityMethodAndPropertyRector for id
v0.7.11 - 2020-04-08
- #3152 fix ThisCallOnStaticMethodToStaticCallRector in prefixed rector
v0.7.10 - 2020-04-08
- #3151 check for array at UselessIfCondBeforeForeachDetector
v0.7.9 - 2020-04-08
v0.7.8 - 2020-04-07
-
#3108 [DeadCode] Add RemoveDeadRecursiveClassMethodRector
-
#3117 [PHPUnit] Add AddProphecyTraitRector
-
#3093 [Privatization] Add PrivatizeLocalGetterToPropertyRector
-
#3100 [Privatization] Add PrivatizeLocalPropertyToPrivatePropertyRector
-
#3116 move node adding to PostRector
-
#3140 add ClassSyncerNodeTraverser
-
#3089 Add RunnableTestCase to run fixed code in a test, Thanks to @paslandau
-
#3094 Add parallel execution to ci/run_all_sets, Thanks to @paslandau
-
#3134 Add DoctrineAnnotationParserSyncer to prevent doctrine/annotation constant by-value override
-
#3114 move property adding to PostRector
-
#3141 [PHPUnit 9.1] Add assertFileNotExists() method rename
-
#3080 [CodeQuality] Add ArrayKeysAndInArrayToIssetRector
-
#3070 [DeadCode] Add empty() + count($values) > 0 checks to RemoveUnusedNonEmptyArrayBeforeForeachRector
-
#3068 [DeadCode] Add RemoveAssignOfVoidReturnFunctionRector
-
#3062 [DeadCode] Add RemoveUnusedFunctionRector
-
#3066 [DeadCode] Add RemoveUnusedNonEmptyArrayBeforeForeachRector
-
#3047 [PHPUnit] Add CreateMockToCreateStubRector
-
#3081 [TypeDeclaration] Add class method param type resolving by property
-
#3058 [PHP 7.4] Add default null type on properties
-
#3059 [PHP 7.4] Add restoration null default only
-
#3057 [PHP 7.4] Add id tag support + remove array on collection property
-
#3078 Add Safe 0.7 set
-
#3072 [PHP 8.0] Add StrContainsRector
-
#3111 [API] NodeRemovingCommander to PostRector
-
#3084 [Privatization] Privatize methods that are used only locally
-
#3120 Improve performance
-
#3097 move ci validation scripts to objectivy ProjectValidator package
-
#3139 Correct sentence in README.md, Thanks to @callmebob2016
-
#3092 Cleanup
-
#3136 Copy .git directory into docker image, Thanks to @JanMikes
-
#3103 move constant privatization to privatization set
-
#3113 move name-importing to PostRector
-
#3128 Allow PHPStan generics
-
#3115 move node-replacing to PostRector
-
#3146 Make sure doctrine alias rector works in symfony controllers, Thanks to @acrobat
-
#3082 [CodeQuality] use array_key_exists instead of isset
-
#3056 [PHP 7.4] Improve TypedPropertyRector for Doctrine collection
-
#3051 improve GeneratedValueTagValueNode
-
#3063 [PHP 5.5] Prevent error on non-string value in PregReplaceEModifierRector
-
#3083 use just one type of printing
- #3050 Fix assert choice tag value node with class constant reference
- #3049 fix union type on ReturnTypeDeclarationRector
- #3052 fix content resolving
- #3054 skip if not used with the
array []
operator fixes #3053, Thanks to @derflocki - #3065 Fix multiple annotation reading of same type at class method
- #3069 Fix Route separating key
- #3077 Fix auto import
- #3079 Fix annotation in requirements of @Route
- #3064 [PHP 7.4] Fix ChangeReflectionTypeToStringToGetNameRector
- #3132 Fix Gedmo annotation printing
- #3130 Fix missing array key in ArrayMergeOfNonArraysToSimpleArrayRector
- #3096 Fix @Route localized paths
- #3129 fix missing host at @Route annotation
- #3122 remove json rector dump formatter, not needed
- #3071 remove ctor dependency on property/assign removal
- #3076 [PHP 8.0] drop preg_match support from StrContains, too vague
v0.7.7 - 2020-03-20
- #3024 add DoctrineBehaviors 2.0
- #3019 add fix for getIterator() on Finder for Array spread
- #3034 Add checkstyle output format
- #3021 add phpunit 9 rector to convert non-strict assertContains, Thanks to @nightlinus
- #3023 add DoctrineBehaviors 2.0
- #3032 [DeadCode] Skip shifted variable
- #3015 Rector CI is now exclusive for non-fork pushes + PRs, Thanks to @JanMikes
- #3013 Commit rector processed changes from CI, Thanks to @JanMikes
- #3036 Run cs after rector ci, Thanks to @JanMikes
- #3027 ForToForeachRector fixture, Thanks to @crishoj
- #3029 Fix other loop
- #3022 PHP 7.4 deprecation fix, Thanks to @alexeyshockov
- #3030 fix no-space change reprint in case of dual comment
- #3035 Fix typo in README.md, Thanks to @pgrimaud
- #3031 fix asterisk indent
v0.7.4 - 2020-03-11
- #3003 Add failing tests for method annotation, Thanks to @stedekay
- #2990 AssertTrueFalseToSpecificMethodRector: add broken test ('Pick more specific node than PhpParser\Node\Expr\StaticCall'), Thanks to @gnutix
- #2988 add space between name and value
- #3009 [ReadyToBeMerged][AnnotateThrowables] Support
$this
calling a method of the same class, Thanks to @Aerendir - #3012 check for used variable without comments
- #2981 Skip passed argument
- #2984 improve array shape double collon spacing
- #2987 improve param array type for change type
- #2980 skip empty method on open-source
- #3010 Abstract files system
- #2998 AnnotateThrowables: support analysis of called functions and methods, Thanks to @Aerendir
- #3008 [ReadyToBeMerged][AnnotateThrowables] Fix a small mispelling., Thanks to @Aerendir
- #2992 fix spacing of data provider
- #2997 Fix various static calls errors in PHPUnit Rectors., Thanks to @gnutix
- #3004 fix method annotation
- #2985 fix union param
- #2982 Fix PhpDocInfoPrinter slash removal
- #2996 fix multiline with one space
- #3005 remove comments only in case of change to original node
v0.7.3 - 2020-03-01
- #2948 [DeadCode] Add RemoveDuplicatedIfReturnRector
- #2950 [GetClassOnNullRector] Add failing test in trait., Thanks to @gnutix
- #2953 AssertRegExpRectorTest: add broken test on static method call, Thanks to @gnutix
- #2956 AssertTrueFalseInternalTypeToSpecificMethodRector: add broken test method call, Thanks to @gnutix
- #2952 ReturnTypeDeclarationRector: add broken test on array indexes (?), Thanks to @gnutix
- #2951 AddSeeTestAnnotationRectorTest: add broken test for simple comment., Thanks to @gnutix
- #2943 add failing test case for #2939, Thanks to @fsok
- #2954 RemoveDefaultArgumentValueRector: add broken test on static method call., Thanks to @gnutix
- #2968 Class Cognitive complexity improvements + add docContent as first step to format preserving of doc nodes
- #2974 [DX] Improve ForToForeachRector
- #2966 make open-source parameter typo-proof
- #2969 decopule class dependency manipulator methods
- #2949 Improve PropertyFetchManipulator
- #2972 Simplify PropertyFetchManipulator
- #2962 cleanup extra space in doc print
- #2975 Decrease class complexity <=50
- #2947 Let amount of usages decide whether whitespaces or tabs are used, Thanks to @alexanderschnitzler
- #2978 [DeadCode] Fix shifted value
- #2979 fix spacing for array shape item
- #2959 fix return dim array fetch
- #2960 fix naming of non-func call
- #2963 fix get class on trait
- #2964 fix complexity
- #2965 fix extra space in phpdoc
- #2977 fix array shape type
- #2961 various fixes
- #2946 remove dead code
v0.7.2 - 2020-02-27
- #2924 [CodeIgniter] Add 4.0 set
- #2941 Make compiler own kernel app + add more debug info
- #2940 add Windows print test
- #2933 add project_type
- #2931 add has lifecycle callbacks
- #2925 add docs space test
- #2926 [DeadCode] Skip abstract methods in RemoveUnusedParameterRector as 3rd contract
- #2935 Fix double boolean
- #2934 fix @method union return type annotation
- #2932 Fix prophecy mocking arg
- #2937 skip open source class in remove unused param in open-source
v0.7.1 - 2020-02-23
- #2906 [CodeQuality] Add InlineIfToExplicitIfRector
- #2898 [CodingStyle] Add CamelCaseFunctionNamingToUnderscoreRector
- #2919 [DeadCode] Add RemoveUnusedVariableAssignRector
- #2918 [DeadCode] Add RemoveUnusedClassConstantRector
- #2914 [JMS] Add RemoveJmsInjectParamsAnnotationRector and RemoveJmsServiceAnnotationRector
- #2920 [MysqlToMysqli] Add MysqlQueryMysqlErrorWithLinkRector
- #2917 [Phalcon] Add DecoupleSaveMethodCallWithArgumentToAssignRector
- #2907 [SOLID] Add ChangeNestedForeachIfsToEarlyContinueRector
- #2873 [SOLID] Add ChangeReadOnlyVariableWithDefaultValueToConstantRector
- #2901 add links to each rule to docs
- #2902 add mergeable
- #2862 Adding failing test for RemoveAlwaysElseRector, Thanks to @escopecz
- #2867 Add failing test for issue #2863, Thanks to @fsok
- #2853 [DeadCode] Add RemoveDeadTryCatchRector
- #2856 [SOLID] Add ChangeReadOnlyPropertyWithDefaultValueToConstantRector
- #2848 add first OXID rector, Thanks to @alfredbez
- #2883 [OXID] replace backwards-compatability classes in oxNew, Thanks to @alfredbez
- #2886 skip test fixtures
- #2872 Skip unpackaged args in ArraySpreadInsteadOfArrayMergeRector
- #2871 Make ParamTypeDeclaration test pass with parent interface
- #2874 Update set for transforming Kdyby\Translation to Contributte\Translation, Thanks to @Ivorius
- #2869 Keep comments
- #2868 update CHANGELOG
- #2875 disable coverage on pr, secret does not work
- #2876
AnnotateThrowablesRector
: Improve organization of tests., Thanks to @Aerendir - #2881 Callable type falling tests, Thanks to @snapshotpl
- #2884 Callable type
- #2922 skip used property
- #2890 Support throw of static methods, Thanks to @Aerendir
- #2904 Support throw from the method of an instantiated class., Thanks to @Aerendir
- #2916 improve complexity
- #2915 improve EregToPcreTransformer complexity
- #2913 replace SHORT_NAME with short name interface
- #2909 Rector CI: enable SOLID set
- #2905 Fixup
- #2903 prevent getName() on StaticCall or MethodCall
- #2896 keep array function static
- #2631 [AddArrayReturnDocTypeRector] sets a less specific type in child method (mixed[]) than is defined in parent method (SomeObject[]), Thanks to @gnutix
- #2650 [CountOnNullRector] Should understand array/countable variable in trait method, Thanks to @gnutix
- #2860 Make
AnnotateThrowablesRector
continue on unhandled node types., Thanks to @Aerendir - #2859 Apply properties to constants rule from SOLID
- #2858 Cleanup AnnotateThrowablesRector
- #2857 Improve AnnotateThrowablesRector
- #2851 move Nette package to rules
- #2865 fix callable print [closes #2841]
- #2866 Skip CountOnNullRector on trait + fix return type mixed override
- #2885 Fix already constant
- #2900 Fix incorrect regexes to preserve doc tags spacing
- #2899 fix duplicate switch without break
- #2880 Fix PHP notice in ternary to spaceship rector, Thanks to @fsok
- #2870 fix remove alwasy else for anonymous function jump
- #2921 Fix FinalizeClassesWithoutChildrenRector for embedable
- #2893 fix tab indent
- #2897 fix nested array dim fetch resolving type
v0.7.0 - 2020-02-14
- #2795 [CakePHPToSymfony] Add CakePHPBeforeFilterToRequestEventSubscriberRector
- #2850 [PHPStan] Add KeepRectorNamespaceForRectorRule
- #2784 [PHPUnit] feature: add rule to refactor exception methods, Thanks to @alfredbez
- #2849 [Renaming] Add RenameFuncCallToStaticCallRector
- #2811 Add support for phpunit 9, Thanks to @snapshotpl
- #2843 add more checks to 'composer complete-check', Thanks to @alfredbez
- #2802 added --config parameter to README, Thanks to @C0pyR1ght
- #2781 [PhpDoc] move get param types to php doc info
- #2830 Decouple Static Type Mapper
- #2838 move Rector-rule based packages from /packages to /rules
- #2756 github-action: Annotate Github Pull Requests based on a Checkstyle X…, Thanks to @staabm
- #2829 decouple PropertyFetchTypeResolver
- #2847 move core architecture to own set
- #2775 Merge pull request #2775 from rectorphp/php-doc-object-attribute
- #2845 improve original format in CallableTypeNode
- #2783 Merge pull request #2783 from rectorphp/cleanup-parsed-nodes
- #2844 Update to PHPStan 0.12.10 stable
- #2786 Merge pull request #2786 from rectorphp/php-doc-only
- #2792 decouple ImplicitToExplicitRoutingAnnotationDecorator
- #2794 Merge pull request #2794 from rectorphp/cakephp-before-request
- #2840 Inject the coveralls token as a secret, Thanks to @ikvasnica
- #2797 use PhpDocInfo by default
- #2799 DocBlockManipulator decoupling
- #2801 Decouple DocBlockClassRenamer
- #2790 Merge pull request #2790 from rectorphp/cakephp-routes-to-explicit
- #2807 Move src namespace frm Rector\ to Rector\Core\
- #2817 decouple ParentConstantReflectionResolver
- #2825 decouple VendorLock package
- #2821 rector for doctrine setParameters method, Thanks to @vladyslavstartsev
- #2818 decouple function node finder and collector from ParsedNodesByType
- #2823 NodeNameResolver decoupled to own package
- #2742 Decouple PHPStan Type to function resolver logic, Thanks to @Lctrs
- #2810 rename package to use lowercased standard, prevent confusion with PSR-4
- #2791 [cs] apply property and method order
- #2780 remove deprecated
removeBy*()
in DocBlockManipulator
- #2819 Cognitive complexity fixes
- #2813 Fix encapsed
- #2846 Fix dev in build
- #2808 Fix replacement for Table::buildRules(), Thanks to @markstory
- #2800 Update to PHPStan 0.12.9 and fix scoping deps
- #2812 [PHP 74] Fix ArraySpreadInsteadOfArrayMergeRector for non-constant string keys
- #2816 PHPStan fixes, Thanks to @ondrejmirtes
- #2814 Fix protected parent constant override
- #2831 remove parameter in imports
- #2827 remove unused method
- #2798 Remove nullable PhpDoc
- #2826 remove duplicated method
- #2787 Merge pull request #2787 from rectorphp/remove-setter-only
- #2789 Merge pull request #2789 from rectorphp/remove-many-args
v0.6.14 - 2020-01-29
- #2758 [CI] add SonarCube
- #2726 [CakePHPToSymfony] Add CakePHPModelToDoctrineEntityRector
- #2744 [CakePHPToSymfony] Add CakePHPModelToDoctrineRepositoryRector
- #2731 [CakePHPToSymfony] Add model migration for ManyToOne, OneToOne, ManyToMany
- #2745 [CakePHPToSymfony] Add threaded and count to CakePHPModelToDoctrineRepositoryRector
- #2747 [CakePHPToSymfony] Add list to CakePHPModelToDoctrineRepositoryRector
- #2735 [DX] add rd() function mapping to tracy
- #2711 Add SetcookieRector, Thanks to @zonuexe
- #2757 Added phpunit problem matcher, Thanks to @staabm
- #2759 add travis retry
- #2761 Added opcache to docker image, Thanks to @JanMikes
- #2722 Merge pull request #2722 from rectorphp/readme-demo
- #2736 Merge pull request #2736 from rectorphp/generator-core
- #2728 Merge pull request #2728 from C0pyR1ght/patch-4, Thanks to @C0pyR1ght
- #2737 Docker build secured image for online demo, Thanks to @JanMikes
- #2762 Warmup opcache in docker, Thanks to @JanMikes
- #2739 split workflows, badge is above repository
- #2769 Merge pull request #2769 from rectorphp/node-type-resolver
- #2773 decouple PhpParserNodeMapper
- #2772 misc
- #2770 Cleanup
- #2771 Decouple ArrayTypeAnalyzer, CountableTypeAnalyzer and StringTypeAnalyzer
- #2768 Merge pull request #2768 from rectorphp/node-type-resolver
- #2767 Merge pull request #2767 from rectorphp/sonarcube
- #2750 move non-Rectors out of Rector namespace
- #2752 Merge pull request #2752 from rectorphp/find-collector
v0.6.13 - 2020-01-20
- #2720 add .travis.yml with tag release
v0.6.12 - 2020-01-20
- #2704 [CI] Add check for duplicated fixture after before content
- #2709 [CakePHPToSymfony] Add CakePHPControllerRenderToSymfonyRector
- #2718 [CakePHPToSymfony] Add h function templates
- #2714 Added composer rector-ci to workflow, Thanks to @jeroensmit
- #2630 [AddArrayReturnDocTypeRector] Allow mixed[] and iterable in place of Rector's setting wrong infered types, Thanks to @gnutix
- #2710 Merge pull request #2710 from jeroensmit/splitIfs, Thanks to @jeroensmit
- #2712 Merge pull request #2712 from jeroensmit/RemoveUnusedAliasBug, Thanks to @jeroensmit
- #2713 Merge pull request #2713 from jeroensmit/CombineIfPreserveDoc, Thanks to @jeroensmit
- #2703 Merge pull request #2703 from rectorphp/dx-readme
- #2702 Merge pull request #2702 from rectorphp/dx-get-node-types
- #2700 Merge pull request #2700 from Aerendir/failing-test-case-for-2699, Thanks to @Aerendir
- #2698 Merge pull request #2698 from rectorphp/cakephp-controller-render
- #2694 Merge pull request #2694 from Aerendir/failing-test-case-for-2693, Thanks to @Aerendir
- #2691 updated UnwrapFutureCompatibleIfRectorTest, Thanks to @C0pyR1ght
- #2715 Merge pull request #2715 from rectorphp/coverage
- #2719 Use on published release to trigger a new release on rector-prefixed, Thanks to @Lctrs
- #2707 Merge pull request #2707 from rectorphp/fix-throws-void
- #2706 Fix UnwrapFutureCompatibleIfFunctionExistsRector for no else [closes #2691]
- #2708 Merge pull request #2708 from rectorphp/fix-type-order
- #2683 [PHPUnit] Add ClassMethod/RemoveEmptyTestMethodRector
- #2692 Add PHP Linter
- #2676 Add CheckStaticTypeMappersCommand to CI
- #2655 Rename --rule argument into --only, add documentation., Thanks to @gnutix
- #2663 Add support for stringy calls in CallReflectionResolver, Thanks to @Lctrs
- #2674 Added CombineIfRector, Thanks to @jeroensmit
- #2670 Add support for invokable and array callables in CallReflectionResolver, Thanks to @Lctrs
- #2685 Add --output-file
- #2690 [PHPUnit] Improve GetMockRector
- #2662 Good bye CallManipulator, Thanks to @Lctrs
- #2654 Merge pull request #2654 from rectorphp/polyfill-php
- #2687 Changed ChangeMethodVisibilityRector yaml config, Thanks to @C0pyR1ght
- #2657 Migrate from PHPStan's Broker to ReflectionProvider, Thanks to @Lctrs
- #2658 Introduce a CallReflectionResolver, Thanks to @Lctrs
- #2659 Update rector-prefixed only on push to master, Thanks to @Lctrs
- #2660 Decouple PHPStanStaticTypeMapper
- #2681 Merge pull request #2681 from rectorphp/phpunit4
- #2682 Merge pull request #2682 from rectorphp/get-mock
- #2664 Merge pull request #2664 from rectorphp/static-type-mapper-collector
- #2666 Merge pull request #2666 from rectorphp/type-mapper-col-2
- #2671 Merge pull request #2671 from rectorphp/type-mapper-col-3
- #2672 Merge pull request #2672 from jeroensmit/RemoveDelegatingParentCallDefault, Thanks to @jeroensmit
- #2673 Merge pull request #2673 from staabm/patch-3, Thanks to @staabm
- #2668 Fixed url, Thanks to @palpalani
- #2686 Fix sync releases with rector-prefixed, Thanks to @Lctrs
v0.6.10 - 2020-01-12
- #2640 [AddDoesNotPerformAssertionToNonAssertingTestRector] Add failing test for Prophecy assertions., Thanks to @gnutix
- #2638 [CodingStyle] Prevent adding non-namespaced imports to non-namespaced class
- #2546 [Php70] add a rector to pass only variables as arguments by reference, Thanks to @Lctrs
- #2648 [Doctrine 2.0] Add class rename set
- #2644 [CakePHP 3.0] add class renames
- #2643 [CakePHP 3.0] Add AppUsesStaticCallToUseStatementRector
- #2613 Add support for PHPStan 0.12+ @template annotation., Thanks to @gnutix
- #2649 Add PHPStanAttributeTypeSyncer
- #2622 added link, Thanks to @C0pyR1ght
- #2623 added get started to readme, Thanks to @C0pyR1ght
- #2624 Add Gmagick to Imagick set
- #2629 Add a --no-progress-bar option (inspired from ECS) for nicer CI output., Thanks to @gnutix
- #2587 [ForeachItemsAssignToEmptyArrayToAssignRector] apply on code it should not, Thanks to @gnutix
- #2610 Improve Rector success message., Thanks to @gnutix
- #2618 More reliable way getting first stmt item, Thanks to @Jaapze
- #2645 Extend AddDoesNotPerformAssertionToNonAssertingTestRector by catching more test messages
- #2641 use Github Actions to compiler and publish prefixed rector.phar
- #2635 Test with Doctrine
- #2625 REAME changed URL to relative path, Thanks to @C0pyR1ght
- #2636 [AddDoesNotPerformAssertionToNonAssertingTestRector] fix skipping if annotation already exists (fixes infinite loop too), Thanks to @gnutix
- #2619 [CI] Fix GitHub actions phar build
- #2637 [CountOnNullRector] fix Rector applying on properties with phpdocs array, Thanks to @gnutix
- #2617 Fix PHPStan @return class-string, Thanks to @gnutix
- #2639 fix pattern miss matching
- #2646 Fix Union Array type StaticTypeMapper to string
- #2633 drop redundant interface and factory, remove symfony/var-dumper from rector.phar
- #2609 Remove stubs/ from rector.phar, Thanks to @gnutix
v0.6.9 - 2020-01-08
- #2608 Fix non-direct parent foreach in ForeachItemsAssignToEmptyArrayToAssignRector
v0.6.8 - 2020-01-08
- #2601 [DoctrineGemoToKnplabs] Add LoggableBehaviorRector
- #2599 [DoctrineGemoToKnplabs] Add BlameableBehaviorRector
- #2605 more reliable way getting last stmt, Thanks to @Jaapze
- #2603 Transition more jobs to GithubAction, Thanks to @staabm
- #2607 [CodeQuality] Fix nested foreach case in ForeachItemsAssignToEmptyArrayToAssignRector
- #2600 [Symfony] fix process error of controller with Internationalized routing, Thanks to @ghostika
v0.6.7 - 2020-01-07
- #2565 [DeadCode] Add RemoveUnusedClassesRector
- #2593 [DoctrineGedmoToKnpLabs] Add SoftDeletableBehaviorRector
- #2569 [Polyfill] Add UnwrapFutureCompatibleIfFunctionExistsRector
- #2570 [SOLID] Add ChangeNestedIfsToEarlyReturnRector & ChangeIfElseValueAssignToEarlyReturnRector
- #2568 [Symfony 5] Add param types
- #2581 Try pcov for code coverage, Thanks to @staabm
- #2572 Don't return void when function contains empty return statement, Thanks to @snapshotpl
- #2575 PHPStan 0.12.4 compatibility updates, Thanks to @ondrejmirtes
- #2576 travis: try phpdbg
- #2598 Skip ReturnTypeDeclarationRector when the type is already defined as \Traversable, Thanks to @gnutix
- #2582 avoid direct container in the code
- #2584 Update compiler with PHPStan 0.12.4 workflow change
- #2589 Transition some travis checks to GithubActions, Thanks to @staabm
- #2592 Transition fatal-error scan to GithubAction, Thanks to @staabm
- #2583 Revert "Try pcov for code coverage"
- #2586 fix box autoload Neon class in scoper.php.inc by --no-parallel
- #2588 Fix PHPStan 0.12+ @implements and @extends class annotations., Thanks to @gnutix
- #2595 Fix running AddArrayReturnDocTypeRector on empty arrays, Thanks to @gnutix
- #2566 fix ChangeArrayPushToArrayAssignRector for multiple items
- #2591 Remove travis-CI jobs which were moved to GithubAction, Thanks to @staabm
- #2567 make nested chain call remove configurable
v0.6.6 - 2020-01-04
- #2557 [CodeQuality] Add ChangeArrayPushToArrayAssignRector
- #2559 [CodeQuality] Add ForRepeatedCountToOwnVariableRector
- #2561 [CodingQuality] Add ForeachItemsAssignToEmptyArrayToAssignRector
- #2558 [MinimalScope] Add ChangeLocalPropertyToVariableRector
- #2538 [Php71] Add failing test case for CountOnNullRector, Thanks to @gnutix
- #2548 add IterableType to StaticTypeMapper::mapPHPStanTypeToPHPStanPhpDocType()
- #2541 [Restoration] Preconfigure CompleteImportForPartialAnnotationRector
- #2562 Prevent variable name override
- #2553 Improve 3rd party property type resolution
- #2550 allow loading bleedingEdge.neon config inside PHPStan phar
- #2563 prevent variable scope changing
- #2547 fix function callback in assert callback
v0.6.5 - 2020-01-03
- #2524 [CodeQuality] Add AbsolutizeRequireAndIncludePathRector
- #2510 [CodeQuality] Add IntvalToTypeCastRector
- #2523 [CodeQuality] Add ArrayKeyExistsTernaryThenValueToCoalescingRector
- #2528 [SOLID] Add RemoveAlwaysElseRector
- #2536 [TypeDeclaration] Add support for PhpStan's class-string type in PropertyTypeDeclarationRector, Thanks to @gnutix
- #2505 add hasByType() method to PhpDocInfo
- #2514 [Doctrine/dbal] Add 2.10 and 3.0 sets
- #2517 add resource type to StaticTypeMapper
- #2519 README: add docs for #2087
- #2503 [Gedmo to Knp] Add Translatable Behavior Rector
- #2526 add ctor only test-case
- #2529 Added phpdoc, Thanks to @staabm
- #2532 [PHP 7.4] Add @var removal to TypedPropertyRector
- #2530 [CodingStyle] Skip re-escaping chars by SymplifyQuoteEscapeRector
- #2527 [DeadCode] RemoveUnusedElseForReturnedValueRector
- #2534 improve generic type conversion
- #2531 Apply Rector on itself
- #2512 Update Travis
- #2509 Do not suggest typed property when defined in vendored parent, Thanks to @ruudk
- #2533 [CodeQuality] Fix identical boolcast
- #2520 [CodingStyle] Fix IdenticalFalseToBooleanNotRector for null|bool
- #2518 [TypeDeclaration] Fix static property type resolution
- #2511 Fix single-line comment and constant scalar type match
- #2508 Fix param type union
- #2507 Fix AddArrayReturnDocTypeRector for existing comment
v0.6.4 - 2019-12-27
- #2497 [DeadCode] Add TernaryToBooleanOrFalseToBooleanAndRector
- #2496 [Nette] Add magic template code quality
- #2500 [PHP] add PHP version feature checks, Thanks to @fsok
- #2484 [Gedmo to Knp] Add TreeBehaviorRector
- #2476 Add ScanFatalErrors command
- #2479 prevent re-adding id at AddEntityIdByConditionRector
- #2482 [DoctrineGedmoToKnplabs] init set
- #2502 Apply HelperFunctionToConstructorInjectionRector only in non-static class method scope
- #2475 [RemoveEmptyClassMethodRector + RemoveDeadConstructorRector] Should not apply on protected/private constructors, Thanks to @gnutix
- #2478 Link a few more recent articles, Thanks to @staabm
- #2480 merge ParentTypehintedArgumentRector to AddParamTypeDeclarationRector
- #2481 init MoveValueObjectsToValueObjectDirectoryRector
- #2487 Skip non-variable non-scalars in BinaryOpBetweenNumberAndStringRector
- #2485 Fix grouped use statement import
- #2486 Fix alias object conflict with existing type
- #2483 Fix typos, Thanks to @staabm
- #2501 Fix return override in case of parent vendor lock
- #2489 Fix name resolution in ArrayKeyFirstLastRector
- #2491 Fix codesample in TypedPropertyRector, Thanks to @ruudk
- #2493 fix PREG_SPLIT_DELIM_CAPTURE for split Nette Utils
- #2499 Fix function override under namespace
- #2492 [docs] Fix codesample in TypedPropertyRector, Thanks to @ruudk
v0.6.3 - 2019-12-23
- #2457 [Class_] Add AddInterfaceByTraitRector
- #2463 [Doctrine] Add AddEntityIdByConditionRector
- #2465 [PHP Deglobalize] Add ChangeGlobalVariablesToPropertiesRector
- #2461 Added int to StaticTypeMapper, Thanks to @lulco
- #2458 prevent duplicated added interface
- #2472 add symfony5 set
- #2464 [Nette] Control to Symfony Form + Controller
- #2470 merge Rector arguments on import
- #2459 disable imports by default
v0.6.2 - 2019-12-18
- #2439 [PHPUnit] Add get_class double sided to AssertCompareToSpecificMethodRector
- #2447 [TypeDeclaration] Add AddParamTypeDeclarationRector
- #2450 add intersection type support to StaticTypeMapper
- #2448 [PHP 7.0] Add StaticCallOnNonStaticToInstanceCallRector edge case of property fetch static call
- #2437 [Phalcon 4.0] Add FlashWithCssClassesToExtraCallRector
- #2442 [Symfony] refactor to ServiceMap
- #2438 Make BarewordStringRector skip missing file
- #2436 Update .travis.yml, Thanks to @andreybolonin
- #2428 Document import_short_classes + import_doc_blocks, Thanks to @gnutix
- #2427 Update phalcon40.yaml, Thanks to @ruudboon
- #2435 Various fixes
- #2420 Fix NewToStaticCallRector documentation, Thanks to @RusiPapazov
v0.6.1 - 2019-12-10
Rector is now shipped as prefixed phar - download from rector-prefixed
- #2410 Added default to prevent rector from breaking, Thanks to @jeroensmit
- #2409 [Phalcon 4] Add SwapClassMethodArgumentsRector rule
- #2407 Added missing methods, Thanks to @ruudboon
- #2406 Added check for correct delimiter to use in preg_quote, Thanks to @jeroensmit
- #2369 Add typo auto import + Swiftmailer 60 set
- #2397 Add rector rule for EntityInterface::isNew(), Thanks to @markstory
- #2373 Another attempt to add Compiler + upgrade to PHPStan 0.12
- #2374 Add another deprecation to the cakephp40 set., Thanks to @markstory
- #2392 Fix CompleteDynamicPropertiesRector to add parent property
- #2394 [TypeDeclaration] Object without class
- #2414 StaticTypeMapper - missing boolean type, Thanks to @sojki
- #2386 chore: use php 7.4 cli, Thanks to @danielroe
- #2359 Prevent crashing on dead symlinks, Thanks to @jeroensmit
- #2378 [Phalcon 4.0] init
- #2389 composer: lock phpstan to 0.11.19 due to breaking changes [closes #2385]
- #2390 Make sure name is passed to getName(), instead of expr
- #2396 prevent union sub-type nullable override
- #2395 prevent union sub-type nullable override
- #2400 return false on MethodCall name to prevent expr errors
- #2391 Exludes stubs on package install to prevent PHPStorm confussion
- #2372 [Symfony] Fix ConsoleExecuteReturnInt for nested functions
- #2393 [TypeDeclaration] Fix returned yield nodes in nested function [closes #2381]
- #2371 Update FilesFinder.php to fix builds..., Thanks to @mallardduck
- #2411 Fix undefined offset in UseInterfaceOverImplementationInConstructorRector, Thanks to @jeroensmit
- #2368 Fix: RandomFunctionRector typo fix + regenerated docs, Thanks to @radimvaculik
- #2404 Fix - iterable type introduced in PHP 7.1, Thanks to @sojki
- #2358 fix var type on method call
v0.6.0 - 2019-11-26
- #2347 Add diff based execution, Thanks to @EmanueleMinotto
- #2350 [NetteToSymfony] Extend migration set
- #2351 Open "create" command to the public
- #2346 [PHP] ContinueToBreakInSwitchRector skip continue with argument >1, Thanks to @fsok
- #2344 Bump to Symfony 4.4/5 and PHP 7.2+
- #2343 allow Symfony 5, bump min to Symfony 4.4
- #2353 Fixed error on classConstFetch outside class, Thanks to @jeroensmit
- #2352 Fix description, Thanks to @staabm
- #2349 [Php 70] Fix this call on static for PHPUnit non-assert
v0.5.23 - 2019-11-20
- #2332 [PHPUnit][Symfony] Add jakzal-injetor Rector
- #2338 [ID to UUID] Add middle step to initalize default uuid value
- #2337 Add more refactorings for CakePHP 4, Thanks to @markstory
- #2331 [PHP 8.0] Add union types
- #2329 [PHP Deglobalize] Add ChangeGlobalVariablesToPropertiesRector
- #2341 fix magic static
- #2302 [DX] add "paths" parameter
- #2264 [DynamicTypeAnalysis] Add Dynamic type infering
- #2278 travis: change ENV matrix to jobs + add Windows OS
- #2310 Added docs check, Thanks to @jeroensmit
- #2326 [PHPUnit 8.0] Add ReplaceAssertArraySubsetWithDmsPolyfillRector
- #2273 Add a working and a failing test case for #2187, Thanks to @gnutix
- #2321 [Nette 3.0] Add Nette 2.x to Nette 3 upgrade set
- #2297 Bump to PHP Parser 4.3
- #2306 improve stmt count check
- #2257 Update return types when set to array, Thanks to @stedekay
- #2325 [DX] report missing rules in
exclude_rectors
parameter - #2311 [DeadCode] Class constant with trait, Thanks to @jeroensmit
- #2291 [PHP70] Skip PHPUnit assert in
ThisCallOnStaticMethodToStaticCallRector
- #2328 simplify
ImportSkipper
skip for ClassLike name - #2277 Update rule with proper syntax of
ReturnArrayClassMethodToYieldRector
, Thanks to @gnutix - #2315 bugfix(Symfony33); correct the replacement of a namespace, Thanks to @nissim94
- #2292 check variable name
- #2300 Give testset a name, Thanks to @jeroensmit
- #2309 Merged
RemoveDeadZeroAndOneOperationRector
andRemoveZeroAndOneBinarRector
, Thanks to @jeroensmit
- #2282 [CodeQuality] Fix return type copy
- #2284 [CodingStyle] Fix extra new-line for EncapsedString
- #2324 [PHPUnit] Fix array subset for non-scalar values
- #2288 fix double import of function names
- #2289 fix name resolving on variable
- #2269 fix false static type of Symfony\SplFileInfo getRealPath()
- #2293 RemoveSetterOnlyPropertyAndMethodRector and UnusedPrivatePropertyRector fixes, Thanks to @jeroensmit
- #2294 Importing fix
- #2299 Fixed removing constructor when parameter defaults are different, Thanks to @jeroensmit
- #2323 Fixed sed command, Thanks to @jeroensmit
- #2318 Fixed issue with sed command:, Thanks to @jeroensmit
- #2275 fix no-regular naming
- #2308 Fix removing 0 when on left side of Minus, Thanks to @jeroensmit
- #2327 Fix parent interface, extends, implements same name as short name
- #2317 code fixes
- #2281 Fix ECS for windows, Thanks to @orklah
v0.5.21 - 2019-11-05
- #2254 [CI] Add nette-utils-code-quality set
- #2255 [CI] Add coding-style set
- #2246 [CodeQuality] Add property assigns to RemoveAlwaysTrueConditionSetInConstructorRector
- #2240 add template nested
- #2223 Add AbstractController as base class if no one exists, Thanks to @stedekay
- #2234 Decouple PropertyFetchManipulator methods for array dim fetch
- #2248 decouple phpunit 50 set
- #2237 keep comment on type change
- #2207 Previous statement rewrite, Thanks to @jeroensmit
- #2231 make screen generate file by default
- #2258 run all sets
- #2238 infer php version from composer.json
- #2252 Import default
- #2253 Speedup
- #2239 Better anonymous class handling, Thanks to @jeroensmit
- #2259 [tests] use generic method over explicit fixture yield
- #2249 [CodeQuality] Fix else in SimplifyForeachToArrayFilterRector
- #2236 [TypeDeclaration] Fix CompleteVarDocTypePropertyRector for mixed[] override
- #2261 Fix provider
- #2235 Fix importing parent that is identical in short to class name
- #2251 fix standalone run to symfony demo
- #2250 Fixed edge cases of RemoveDeadStmtRector, Thanks to @jeroensmit
- #2247 Fixed removal of non expressions, Thanks to @jeroensmit
- #2262 Fixes
- #2263 Fix StaticTypeMapper for nullables
- #2214 travis dogfood replay, Thanks to @ktomk
- #2203 optimize ConsoleExecuteReturnIntRector
- #2211 Ignore not required files in docker build, Thanks to @JanMikes
- #2222 Enable code quality set
- #2196 Update grammar in the README for clarity, Thanks to @sbine
- #2220 [cs] re-order private methods by call order
- #2233 Also remove assignment if the value of the assignment is different, Thanks to @jeroensmit
v0.5.20 - 2019-10-31
- #2224 add dead-code set to CI
- #2197 Add test to ConsoleExecuteReturnIntRector for a not command class, Thanks to @franmomu
- #2221 Add Rector-CI and handy "sets" parameter
- #2206 [PHPUnit 7.5] Add WithConsecutiveArgToArrayRector
- #2202 Fix ConsoleExecuteReturnIntRector if target class not directly extends Command, Thanks to @keulinho
- #2198 Fixed TYPO3 community package link, Thanks to @JanMikes
- #2218 Fix empty -c/--config value
- #2217 FIX AddDoesNotPerformAssertionToNonAssertingTest, Thanks to @DaveLiddament
- #2200 Fix ConsoleExecuteReturnIntRector for non console commands, Thanks to @keulinho
v0.5.19 - 2019-10-24
- #2195 [Laravel] Add Laravel 6 instant upgrade set
- #2192 Add test case for route annotation with optional parameters, Thanks to @stedekay
- #2182 [PHP 74] Add ChangeReflectionTypeToStringToGetNameRector
- #2193 fix union too many types
- #2190 Various Return types fixes
- #2194 fix for Template and Route annotation
- #2191 prevent mixed of specific override
v0.5.18 - 2019-10-22
- #2177 [CodeQuality] Add ArrayMergeOfNonArraysToSimpleArrayRector
- #2176 [CodeQuality] Add AddPregQuoteDelimiterRector
- #2184 [FEATURE] Possibility to add custom phpstan.neon configuration, Thanks to @sabbelasichon
- #2172 Add rules for ConsoleIo::styles(), Thanks to @markstory
- #2175 Added rector sets composition hint, Thanks to @SilverFire
- #2181 add test case for #2158
- #2188 add Standalone Runner
- #2180 fix ArgumentAdderRector for anonymous class [closes #2157]
- #2183 fix RemoveUnusedAliasRector for doc vs class concurency
- #2174 Fix for Issue2173, Thanks to @dpesch
- #2169 Fixes
- #2168 Prevent CI floods with progress bar
v0.5.17 - 2019-10-15
- #2087 Added way to exclude rectors, Thanks to @jeroensmit
- #2156 [PHPUnit] [Doc] Add FixDataProviderAnnotationTypoRector
- #2155 [PHPUnit] [Doc] Add EnsureDataProviderInDocBlockRector
- #2144 [PHPUnit] Add RemoveDataProviderTestPrefixRector
- #2132 [Symfony] Add ConsoleExecuteReturnIntRector, Thanks to @keulinho
- #2166 add paypal backers
- #2150 phpstan - add getContainer() after boot()
- #2141 add inter support
- #2142 [PHPUnit 6] Add AddDoesNotPerformAssertionToNonAssertingTestRector
- #2087 Added way to exclude rectors, Thanks to @jeroensmit
- #2146 fix ValueResolver static array for non static keys
- #2152 fix get property by class
- #2114 Fix for issue #2090, Thanks to @jeroensmit
- #2140 fix 3rd party testing without config
- #2147 fix string-named func
- #2164 [code-quality] fixes processing of trait - RemoveAlwaysTrueConditionSetInConstructorRector #2162, Thanks to @lapetr
- #2165 Bugfix for RemoveUnreachableStatementRector, Thanks to @jeroensmit
- #2145 [DeadCode] Make RemoveDefaultArgumentValueRector skip native functions
- #2148 [TypeDeclaration] Prevent array-iterable-Iterator override in ReturnTypeDeclarationRector
- #2159 Screen file command improvements
- #2149 prevent doc type of child array override
- #2151 make
ReturnTypeDeclarationRector
keep implementation
v0.5.16 - 2019-10-10
- #2139 Add
screen-file
command for learning & trainings
v0.5.15 - 2019-10-10
- #2135 Fix EncapsedStringsToSprintfRector for non-var exprs
- #2130 fix stub loading location
- #2128 Fix
EncapsedStringsToSprintfRector
when using class properties, Thanks to @gnutix
v0.5.14 - 2019-10-09
- #2123 [SOLID] Prefer interface if possible
- #2115 [DeadCode] Add
SimplifyIfElseWithSameContentRector
- #2080 [DeadCode] Add
RemoveUnreachableStatementRector
- #2103 [StrictCodeQuality] Add
VarInlineAnnotationToAssertRector
- #2122 [StrictCodeQuality] Add freshly created node support to var inline assert
- #2047 Add conditional method renaming rector, Thanks to @markstory
- #2094 Add
ShortenElseIfRector
, Thanks to @keulinho - #2095 Add fixture for phpunit x>y to greaterThan refactoring, Thanks to @keulinho
- #2096
ImportFullyQualifiedNamesRector
: add a failing test about modified annotations that shouldn't be, Thanks to @gnutix - #2084 Add failing test case for
ReturnArrayClassMethodToYieldRector
(removing comments), Thanks to @gnutix - #2099 Add documentation for
ImportFullyQualifiedNamesRector
new argument, Thanks to @gnutix - #2100 Add FunctionCallToConstantRector, Thanks to @keulinho
- #2081 Add failing test: StringifyStrNeedlesRector adds (string) to a method call that returns a string anyway, Thanks to @gnutix
- #2077 Add an option to skip importing root namespace classes (like \DateTime), Thanks to @gnutix
- #2091 Add
UseIncrementAssignRector
, Thanks to @keulinho - #2074 Add a PHPUnit TestCase stub., Thanks to @gnutix
- #2073
StringToArrayArgumentProcessRectorTest
: add failing test around Traversable, Thanks to @gnutix - #2062 Add stubs instead of dump class replace in constructor
- #2052 Add post run name imports
- #2049 Added StrictArraySearchRector - Issue #2009, Thanks to @jeroenherczeg
- #2124 add CommanderCollector
- #2054 [DoctrineCodeQuality] Initialize collections in constructor
- #2065 [CodingStyle] Allow private ctor override for static factory
- #2067 Use contextual method rename rector in cake4 rules., Thanks to @markstory
- #2125 improve uuid steps
- #2107 restart changed doc
- #2097 Improve class annotation matching
- #2109 skip var type in anonymous class for
PropertyTypeDeclarationRector
- #2083 Do not apply
SimplifyIfReturnBoolRector
when there are comments in between the if statements, Thanks to @gnutix - #2072 [CodingStyle] Skip common annotation aliases in RemoveUnusedAliasRector
- #2121 Allow
@Template
to get nullable values - #2076 [Symfony] Fix is submitted
- #2093 fix stringy str needless for return strings
- #2112 fix joinColumns always fallback
- #2070 Fixed the third argument in
VarDumperTestTrait
, Thanks to @adrozdek - #2075 Fix ReflectionException (Method
PHPUnit\Framework\TestCase::tearDown(...)
does not exist) thrown while autoloading class Symfony\Bundle\FrameworkBundle\Test\WebTestCase., Thanks to @gnutix - #2088 Fix changing the wrong property fetches, Thanks to @jeroensmit
- #2078 Fix type resolution for traversable
- #2079 fix @TODO malfforms
- #2102 Fix countable for countable classes without countable
- #2101 Fix virtual property
- #2082 Fixing
return new static()
not being covered byMakeInheritedMethodVisibilitySameAsParentRector
, Thanks to @gnutix - #2060 [PHP 7.1] Skip extra argument removal for parent static call
v0.5.13 - 2019-09-27
- #1980 [ZendToSymfony] Init Zend 1 to Symfony 4
- #1982 [Autodiscovery] init
- #2044 [CodeQuality] Add RemoveSoleValueSprintfRector
- #2032 [CodingStyle] Add MakeInheritedMethodVisibilitySameAsParentRector
- #2033 [CodingStyle] Add CallUserFuncCallToVariadicRector
- #1978 [DX] add check class existence scripts
- #1924 [DeadCode] Add RemoveAlwaysTrueIfConditionRector
- #2012 [Doctrine] Add ChangeReturnTypeOfClassMethodWithGetIdRector
- #1928 [Doctrine] Add stubs instead of full orm dependencies
- #2003 [Doctrine] add CustomIdGenerator + step 2 for uuid Doctrine migration
- #1994 [Doctrine] Add AlwaysInitializeUuidInEntityRector
- #2031 [Monolog] Add 2.0 upgrade set
- #1984 [PHPStan] add PreventParentMethodVisibilityOverrideRule
- #1947 [PHPUnit] Add @see annotation to reference test
- #1948 [PHPUnit] Add array call to data provider
- #2035 [Php53] Add DirNameFileConstantToDirConstantRector [close #2006]
- #2037 [Php71] Add ListToArrayDestructRector
- #2040 [Rector] Add RemoveZeroBreakContinueRector
- #2034 [Restoration] Add MissingClassConstantReferenceToStringRector
- #2020 [Symfony] Add MergeMethodAnnotationToRouteAnnotationRector
- #2019 [TypeDeclaration] Add AddMethodCallBasedParamTypeRector
- #2000 add isInDoctrineEntityClass() method
- #2001 add changeName/getName to serializer
- #1968 add skip of one to one relations with mapped by
- #1998 make DocBlockManipulator protected in AbstractRector + add GeneratedValue annotatoin parsing
- #1955 Added stub directory to Docker composer build phase, Thanks to @JanMikes
- #2015 Add rules for renaming CakePHP's Router methods, Thanks to @ADmad
- #2048 Add support for various annotation formats
- #1927 Add Sensio TemplateTagValueNode
- #1933 add removeNodeFromStatements() method to remove statement without key easily
- #2039 add function aliases to celebrity
- #1921 Add uuid only to entities with id
- #1939 Add ReturnedNodesReturnTypeInferer + big *TypeDeclarationRector refactoring
- #2036 [Php72] improve UnsetCastRector
- #2017 [Renaming] init new package
- #2030 [Renaming] fqnize freshly namespaced class
- #1943 Improve covariance in ReturnTypeDeclarationRector
- #1992 improve join table patterns
- #1952 improve test case provided rector class debug info
- #1937 uuid rules are now designed to be used at once
- #1925 rename level to set to prevent confusion of duplicate
- #2046 Decouple annotation to own PhpDocNodeFactory to allow extension without change
- #1869 Refactoring order creates incompatible return types, Thanks to @scheb
- #1986 improve single info multiline doc, drop NodeDecorator
- #1976 [phpstorm meta] make getByType() return nullable
- #1993 Improve annotation content joins
- #1996 Optimize class renaming
- #1997 Improve annotation spacing
- #1972 Migrate tests to data providers
- #1971 Cleanup
- #2043 [CI] run all sets check
- #1979 [DX] check invalid config arguments
- #2011 [Doctrine] Step #3 -
getUuid
/setUuid
method calls to id values - #1966 [Doctrine] split id and relation migration to 2 steps
- #2016 [Php] Split to own packages by version
- #1989 [PhpDoc] Multiline test improvements
- #2045 [Symfony] Make MakeDispatchFirstArgumentEventRector work with get_class
- #1938 [TypeDeclaration] Extend ReturnTypeDeclarationRector with incorrect types override
- #1931 Make type replacement of annotatoin OOP
- #1932 make use of
getProperties()
,getMethods()
,getConstants()
andgetTraitUses()
- #1914 Create rector for transforming Laravel validation rules to a prettier format, Thanks to @sashabeton
- #1923
RemoveUnusedPrivatePropertyRector
should skip entities [closes #1922] - #1940 cleanup type resolving
- #1934 UUID report old to new table
- #1961 Migrate
TypeInferers
andTypeResolvers
to PHPStan object types - #1991 make
EntityUuidNodeFactory
extensible - #2002 cover name at
JoinColumn
removal - #1999 make column tag value node changeable
- #1957 Move from string types to PHPStan types
- #1946 from helper methods to isStaticType() with PHPStan object typing
- #1953 StaticTypeMapper refactoring
- #1866 Misc
- #2013 cleanup
- #1951 Update README.md, Thanks to @drbyte
- #2021 [PHP71] Fix BinaryOpBetweenNumberAndStringRector for variables
- #1969 fix spacing with SpacelessPhpDocTagNode
- #2018 fix renaming class to existing one [closes #1438]
- #2014 Code sample fixes, Thanks to @HypeMC
- #2024 fix parent typehint for anonymous class
- #2025 Fix numeric string type in BinaryOpBetweenNumberAndStringRector
- #2026 Fix pseudo namespace to namespace with use statement
- #1967 Fix Doctrine stubs + separate reported files into 2
- #2027 Fix printing of tab-indented files
- #1962 Fixed small typos for Symfony docs., Thanks to @adrozdek
- #2022 Fix anonymous class constant
- #1990 fix multi constaints
- #1983 Fix Return type Covariance Inverse Order
- #1926 [DeadCode] Keep parent call delegation in case of accessibility override
- #2023 [DeadCode] Skip magic property
RemoveUnusedPrivatePropertyRector
- #1954 remove
CallableCollectorPopulator
- #1935 remove
getDoctrine\*()
methods fromPhpDocInfo
, usegetByType()
instead - #1958 remove few PHP-Parser rules to prevent package-rules vs package-features confusion
v0.5.12 - 2019-08-29
- #1898 Start CakePHP 4.0 rectors, Thanks to @markstory
- #1902 [BetterPhpDocParser] Add support for parsing Doctrine annotations
- #1906 [DoctrinePhpDocParser] Add relation tags and join column
- #1910 Add more rectors for CakePHP 4.0, Thanks to @markstory
- #1916 add parent construct call to uuid init
- #1912 [Doctrine] Id to UUID migration
- #1903 [dx] make ShouldNotHappen exceptions more informative
- #1915 allow non-uuid props
- #1897 allow testing outside Rector
- #1901 Move Jetbrains PhpStorm stubs into dev dependencies, Thanks to @atierant
- #1908 let parse only Doctrine tags we need
- #1917 fix expected namespace
v0.5.11 - 2019-08-25
- #1880 [DeadCode] Add RemoveNullPropertyInitializationRector to dead-code set
- #1865 [PSR4] Add NormalizeNamespaceByPSR4ComposerAutoloadRector
- #1895 add makeFinal() method to AbstractRector
- #1889 Add cakephp3.8 target and fix a typo, Thanks to @markstory
- #1847 [PHP 7.4] Add literal thousand superator
- #1878 [PSR4] Improve renamed classes collector to sort by highest parent
- #1894 rename levels command to sets
- #1896 merge isName and isNameInsensitive
- #1885 [CodingStyle] Fix ImportFullyQualifiedNamesRector for imported namespace
- #1888 Fix missing args in PreferThisOrSelfMethodCallRector
- #1891 Fix fqn doc with alraedy PHP imported namespace
- #1882 [CodingStyle] Import short classes as well [ref #1877]
- #1883 [CodingStyle] Make import
ImportFullyQualifiedNamesRector
include same short class in same namespace - #1881 [RenameClassRector] Include @ORM, @Assert, @Serializer etc annotations
- #1884 Parent constant visibility when it is declared in a super-superclass, Thanks to @scheb
- #1870 [DeadCode] Remove null value from property, Thanks to @jacekll
- #1875 Remove default excluded file patterns (closes #1815), Thanks to @scheb
v0.5.10 - 2019-08-19
- #1855 [CodingStyle] Add
AddArrayDefaultToArrayPropertyRector
- #1800 [DeadCode] Add
RemoveUnusedDoctrineEntityMethodAndPropertyRector
- #1819 [DeadCode] Add
RemoveSetterOnlyPropertyAndMethodCallRector
- #1823 [Nette] Add
JsonDecodeEncodeToNetteUtilsJsonDecodeEncodeRector
- #1857 [TypeDeclaration] Add
AddArrayReturnDocTypeRector
- #1856 [TypeDeclaration] Add
AddArrayParamDocTypeRector
- #1850 add reporting extension, rename rector finish to finishing
- #1818 add removed nodes collector
- #1826 add concat + multiline case to
ManualJsonStringToJsonEncodeArrayRector
- #1825 add implode support to
ManualJsonStringToJsonEncodeArrayRector
- #1802 add iterable return type for yield values in
ReturnTypeDeclarationRector
- #1851 Fix FluentReplaceRector for more than 2 calls + add * matching support
- #1807 add alias support to PropertyTypeDeclarationRector
- #1844 add RectorFinishExtensionRunner
- #1828 allow multiline empty spaces strings
- #1841 class manipulator now returns Property on property name search
- #1814 Improve PHPStan trait scope resolving
- #1862 [TypeDeclaration] Various
AddArrayReturnDocTypeRector
improvements - #1805 resolve target entity from same namespace
- #1858 Always keeps array in
*TypeInfo
- #1854 Ignores resource also when type is nullable, Thanks to @tigitz
- #1793 Break class name in
@var
when relation is defined in same namespace, Thanks to @snapshotpl - #1852 Fix decimal to float
- #1806 use DateTimeInterface over
DateTime
- #1839 skip ManyToOne properties in
SetterOnlyMethodAnalyzer
(#1838) - #1829 skip same-namespace-short name in
ImportFullyQualifiedNamesRector
- #1827 simplify
ManualJsonStringToJsonEncodeArrayRector
- #1821 skip abstract parent methods in
RemoveUnusedDoctrineEntityMethodAndPropertyRector
- #1838 skip ManyToOne properties in
SetterOnlyMethodAnalyzer
- #1840 Constants declared in interfaces have to be public, Thanks to @scheb
- #1863 merge ArrayPropertyDefaultValueRector to superior
AddArrayDefaultToArrayPropertyRector
- #1842 Overriding constants require at least the parent's visibility, Thanks to @scheb
- #1813 dont load phpstan-phpunit if phpunit not installed, Thanks to @slepic
- #1808 Correct
NameResolver::getName()
+ cleanup static analysis
- #1830 Fix non-same parent method name for RemoveParentCallWithoutParentRector
- #1804 Fix nullable array type param for PropertyTypeDeclarationRector
- #1803 Fix nullable for xToOne annotation by default
- #1794 Fix method call type
- #1864 Fix type resolutoin in PropertyNodeParamTypeInferer
- #1817 Fix analysed files for PHPStan scope resolver
- #1831 Fix unused method type for return type
- #1837 Fix RemoveSetterOnlyPropertyAndMethodCallRector race condition
- #1853 Fix different method call return in FluentReplaceRector
- #1859 Fix lowercase of union fqn types
- #1832 Fix args miss-match in RemoveDelegatingParentCallRector
- #1845 HelperFunctionToDependencyInjectionRector fix, Thanks to @sashabeton
- #1836 Fixing NodeRemovingVisitor
- #1835 Fix reseting of removed nodes
- #1833 Fix var/method call resolver
v0.5.9 - 2019-08-01
- #1761 [CodeQuality] Add ThrowWithPreviousExceptionRector
- #1762 [CodingStyle] Add ManualJsonStringToJsonEncodeArrayRector
- #1760 [DeadCode] Add RemoveDuplicatedCaseInSwitchRector
- #1776 [NodeTypeResolver] Add phpunit extension
- #1781 [TypeDeclaration] Add PropertyTypeDeclarationRector
- #1774 add empty array to static type to string resolver
- #1786 add priority to PropertyTypeInfererInterface and put doctrine infering first
- #1789 add xToOne relation support to Doctrine var type resolver
- #1787 add return nullable type to GetterOrSetterPropertyTypeInferer
- #1769 [Restoration] Return removed class annotations
- #1788 infer from @return doc type in PropertyTypeDeclaratoin
- #1782 [Symfony] Fix frozen parameter bag in DefaultAnalyzedSymfonyApplicationContainer
- #1779 FIXED: Catastrophic backtracking in regular expression if the current…, Thanks to @hernst42
- #1772 fix type analyzer for FQN
- #1790 fix laravel53 config
- #1791 [CodingStyle] remove extra break from BinarySwitchToIfElseRector
- #1780 [NodeTypeResolver] drop duplicated generic array type
- #1764 [Symfony] Use Symfony bridge interface for
doctrine
service, Thanks to @stloyd - #1759 [SymfonyCodeQuality] From listener to subscriber
- #1777 make constant array types unique
- #1771 skip non-annotation prefix
v0.5.8 - 2019-07-21
- #1691 [Architecture] Add
ConstructorInjectionToActionInjectionRector
- #1689 [CodeQuality] Add
is_a
with string true - #1754 [CodeQuality] Add
RemoveAlwaysTrueConditionSetInConstructorRector
- #1690 [CodeQuality] Add
StrlenZeroToIdenticalEmptyStringRector
- #1722 [CodingStyle] Add
EncapsedStringsToSprintfRector
- #1717 [DeadCode] Add static, self and FQN type to
RemoveUnusedPrivateMethodRector
- #1671 [Doctrine] Add registry to EM
- #1693 [Doctrine] Add
RemoveRepositoryFromEntityAnnotationRector
- #1709 [FuncCall] Don't add
$result
toparse_str
if second parameter is already set, Thanks to @ravanscafi - #1720 [Generic] Add
ServiceGetterToConstructorInjectionRector
- #1676 [PHP] Add scope limitation to
ArgumentAdderRector
for 3party non-existing params - #1695 [PHPStan] Add
RemoveNonExistingVarAnnotationRector
- #1696 [PHPUnit][Symfony] Add
AddMessageToEqualsResponseCodeRector
- #1744 add reference support to
ParamTypeDeclarationRector
- #1694 Add
rector.yaml
to.dockerignore
, Thanks to @aboks - #1674 Add Polyfil function support
- #1681 Add
parent::__construct()
to command dependencies
- #1748 [CodingStyle] Improve
NewlineBeforeNewAssignSetRector
- #1697 [DeadCode] Allow static constant call on
RemoveUnusedPrivateConstantRector
, Thanks to @ravanscafi - #1719 Resolve anonymous class return type to object
- #1752 [CodeQuality] Fix
CompleteDynamicPropertiesRector
for dynamic property fetch - #1718 [DeadCode] Fix too deep nesting in dead private property
- #1710 [MethodCall] Fix multilevel array subsets, Thanks to @ravanscafi
- #1715 [SOLID] Fix
PrivatizeLocalClassConstantRector
for in-class use - #1698 Fix
NameTypeResolver
resolveFullyQualifiedName return type, Thanks to @ravanscafi - #1684 fix new phpstan reports
- #1702 Fixed some issues for
RemoveZeroAndOneBinaryRector
, Thanks to @jeroensmit - #1703 Fixed unintended removal of properties when used inside a trait, Thanks to @jeroensmit
- #1738 Fix InjectAnnotationClassRector with aliases
- #1705 Fixed wrong naming of docs script in composer.json, Thanks to @jeroensmit
- #1712 Fix tests according to review and a few typos, Thanks to @ravanscafi
- #1673 Fix
InjectAnnotationClassRector
for@var
case - #1677 [Bugfix]
IsCountableRector
&IsIterableRector
should first check method availability, Thanks to @stloyd - #1686 [Bugfix] PHPDoc type-hint
resource
should not be used as PHP type-hint, Thanks to @stloyd - #1739 [CodeStyle] Newline before assign
- #1716 [DeadCode] Keep array method call in
RemoveUnusedPrivateMethodRector
- #1753 [DeadCode] Rector
RemoveDeadConstructorRector
should skipprivate
method, Thanks to @stloyd - #1687 [Symfony] Set few default common service names for Symfony App Analyzer, Thanks to @stloyd
- #1675 [Symfony] Make set symfony42 refactor get(...) in former container aware commands
- #1666 Skip session in
SelfContainerGetMethodCallFromTestToSetUpMethodRector
- #1757 make SymfonyContainer factory configurable with "kernel_environment" parameter in rector.yaml
- #1707 Don't mess with lines between docblock comment and var type., Thanks to @ravanscafi
- #1699 Update composer scripts, Thanks to @ravanscafi
- #1755 make interface description PHPStorm compatible, so it will not break abstract method complete
- #1711 Do not mark injected properties as private when moved to constructor, Thanks to @holtkamp
- #1714 Cleanup
- #1721 skip
Illuminate\Support\Collection
magic forCompleteDynamicPropertiesRector
- #1725 Empty compacts are forbidden, keep signature by replacing with empty array, Thanks to @ravanscafi
- #1728
is_real()
is deprecated instead ofis_float()
, Thanks to @holtkamp - #1735 Consider reference symbol in docblock for param type declaration rector, Thanks to @tigitz
- #1736 Colorify neon files, Thanks to @szepeviktor
- #1737 Typo in Travis config, Thanks to @szepeviktor
- #1679 [MakeCommandLazyRector] Remove duplicated check, Thanks to @stloyd
- #1701 Make sure parameter is not removed when a child class does use the parameter, Thanks to @jeroensmit
- #1723 Do not remove args when replacing to static calls, Thanks to @ravanscafi
- #1713 Remove
--with-style
in favour of mentioning ECS, Thanks to @stloyd
v0.5.7 - 2019-06-28
- #1661 Minor phpdoc fixes
v0.5.6 - 2019-06-28
- #1659 remove deprecated singly implemented autowire compiler pass
v0.5.6 - 2019-06-28
- #1584 [DeadCode] Add
RemoveDeadZeroAndOneOperationRector
- #1586 [DeadCode] Add
RemoveDelegatingParentCallRector
- #1603 [DeadCode] Add
RemoveDuplicatedInstanceOfRector
- #1656 [SymfonyPHPUnit] Add
SelfContainerGetMethodCallFromTestToSetUpMethodRector
- #1589 Add assign ref support to
AddDefaultValueForUndefinedVariableRector
- #1609 Add
ElasticSearchDSL
package, Thanks to @shyim - #1611 Add rector for ShopRegistration, Thanks to @shyim
- #1615 add exclude to typical reported typos
- #1610 Add shopware version const rector, Thanks to @shyim
- #1640 Add
--rule
option to process only single rule from set
- #1619 [CodeQuality] Fix
__set
/__get
case forCompleteDynamicPropertiesRector
- #1643 [CodingStyle] Fix extra slash in array simple types
- #1616 [DeadCode] Fix removed comment after return at
RemoveCodeAfterReturnRector
- #1602 [Laravel] Fix missing method name in 5.7
- #1645 [PHP] Fix
mktime
rename with args [closes #1622] - #1647 [PHP] Fix
JsonThrowOnErrorRector
inter-args - #1644 [PHP] Fix missed variadic on
ReflectionMethod::invoke()
[closes #1625] - #1618 [PHP] Fix class signature over interface priority in
RemoveExtraParametersRector
- #1642 [PHP] Fix
StringifyStrNeedlesRector
duplicated change - #1617 [Symfony] Fix GetRequestRector overlap to non-controllers
- #1605 Fix Open Collective link for
FUNDING.yml
, Thanks to @pxgamer - #1583 Fix CountOnNullRector for nullable and invalid property
- #1599 Fix
StringClassNameToClassConstantRector
for empty name [closes #1596] - #1590 Fix nullable item in
ListSwapArrayOrderRector
- #1631 Fix typo : rename
jsm-decouple.yaml
tojms-decouple.yaml
, Thanks to @gnutix - #1588 Fix foreach scope for
AddDefaultValueForUndefinedVariableRector
- #1601 Fix trait skip in
RemoveParentCallWithoutParentRector
- #1587 [PHP] Skip list in
AddDefaultValueForUndefinedVariableRector
- #1651 Update link to
UPGRADE.md 3.0
, Thanks to @vasilvestre - #1581 use
STOP_TRAVERSAL
over exception - #1525 #1469 prototype github issue template, Thanks to @funivan
v0.5.5 - 2019-06-08
v0.5.4 - 2019-06-06
- #1570 [DeadCode] Add
RemoveConcatAutocastRector
- #1519 [Symfony] Add
MakeCommandLazyRector
- #1568 [Symfony 4.3] Add
parent::__construct
toEventDispatcher
- #1562 add
CallableNodeTraverserTrait
- #1523 make RectorsFinder return consistent order by shorter names
- #1572 [Symfony 4.3] Improve event name and class flip
- #1548 Widen
PHPStan
version constraint to~0.11.6
., Thanks to @Aerendir
- #1550 Fix
symfony/finder
3.4 compact inLevelOptionResolver
- #1544 Fix phpdoc-parser BC break for generic multiline nodes
- #1569 Fix reporting of changed nodes
- #1559 Fix classname change for
FilterControllerEvent
, Thanks to @keulinho - #1557 Fix scope overflow in
AddDefaultValueForUndefinedVariableRector
- #1556 fix static method in reflection for
StaticCallOnNonStaticToInstanceCallRector
- #1571 Fix anonymous class method return type resolving
- #1567 Fix
solid.yaml
, Thanks to @Great-Antique - #1549 fix unescaped regular
- #1538 Don't remove aliases of classes with same name but different namespaces., Thanks to @Aerendir
- #1553 [CodeQuality] Skip collections
ForeachToInArrayRector
[closes #1533] - #1524 Cover multiline in description-aware nodes [closes #1522]
- #1565 make
StringClassNameToClassConstantRector
case sensitive [closes #1539] - #1545 Ensure Doctrine's
Collection
-like arrays are ignored., Thanks to @Aerendir - #1554 optimize
- #1558 Do not call parent constructor of
AutowiredEventDispatcher
unless it exists, Thanks to @cgkkevinr - #1561 make
RemoveUnusedAliasRector
take into account aliases that keep 2 classes with same short name explicit - #1555 skip nullable array for
ArrayPropertyDefaultValueRector
[closes #1542]
v0.5.3 - 2019-06-01
- #1520 [PHP] Add
is_countable
toCountOnNull
- #1521 make
LevelOptionResolver
smarter + add--set
alias to--level
v0.5.2 - 2019-05-31
- #1510 [CodeQuality] Add trait and parent class support for
CompleteDynamicPropertiesRector
- #1508 [CodeQuality] Fix unneeded return in
CallableThisArrayToAnonymousFunctionRector
- #1509 [PHP] Fix
AddDefaultValueForUndefinedVariableRector
for static variable - #1507 [PHP] Fix
BinaryOpBetweenNumberAndStringRector
for concat - #1517 fix
RenameClassRector
to change only direct class names, not children - #1511 fix
PHPStormVarAnnotationRector
for too nested var [closes #1407] - #1513 Make Symfony 4.3 + phpdoc-parser 0.3.4 compatible
- #1506 Ensure
static
variables are considered as declared, Thanks to @Aerendir - #1502 Test concatenation dot is ignored, Thanks to @Aerendir
v0.5.1 - 2019-05-30
- #1496 [Symfony 4.3] Add class renames, method renames and added arguments
v0.5.0 - 2019-05-28
- #1487 [Legacy] Remove singleton
- #1468 [MultipleClassFileToPsr4ClassesRector] Original file is deleted even if class matches filename, Thanks to @JanMikes
- #1424 [SplitStringClassConstantToClassConstFetchRector] Remove duplicated namespace separator, Thanks to @mxr576
- #1470 [PHP][CodingStyle] string class to ::class
- #1367 [DeadCode] Anonymous class implementing an interface doesn't respect interface signature, Thanks to @pierredup
- #1404 [TypeDeclaration] Create new set
- #1414 [PSR-4 Split] Split interfaces and traits as well, Thanks to @JanMikes
- #1416 [PHP 7.4] Spread array
- #1419 [CodeQuality] Add For to foreach
- #1443 [CodeQuality] Add CompactToVariablesRector
- #1488 🎉[CodeQuality] Add CompleteDynamicPropertiesRector
- #1390 [CodeQuality] Add AndAssignsToSeparateLinesRector
- #1485 [CodingStyle] Add VarConstantCommentRector
- #1484 [CodingStyle] Add SplitDoubleAssignRector
- #1483 [CodingStyle] Add ArrayPropertyDefaultValueRector
- #1482 [CodingStyle] Add CatchExceptionNameMatchingTypeRector
- #1481 [CodingStyle] Add FollowRequireByDirRector
- #1480 [CodingStyle] Add ConsistentPregDelimiterRector
- #1447 [CodingStyle] add partial support already imported support to ImportFullyQualifiedNamesRector
- #1389 [DeadCode] Add RemoveAndTrueRector
- #1392 [DeadCode] Add RemoveDefaultArgumentValueRector
- #1451 [PHP] Add RemoveMissingCompactVariableRector
- #1418 [PHP-DI] Add php-di @Inject annotation import
- #1460 [Psr4] Add supprot for namespace less MultipleClassFileToPsr4ClassesRector
- #1486 [SOLID] Add AbstractChildlessUnusedClassesRector
- #1406 [TypeDeclaration] Add AddFunctionReturnTypeRector
- #1403 [Symfony 4.3] Add swapped dispatch() arguments for EventDispatcher
- #1429 Add missing end bracket at HowItWorks.md's sample, Thanks to @sasezaki
- #1430 Add working directory option, Thanks to @ktomk
- #1417 Add trait analysis without class dependency
- #1491 add JsonOutputFormatter
- #1492 Symplify 6 bump + add relative paths to JsonOutputFormatter
- #1410 [PHP 7.4] Add ClosureToArrowFunctionRector
- #1449 [PHP 7.1] Add BinaryOpBetweenNumberAndStringRector
- #1450 [PHP 7.1] Add float to BinaryOpBetweenNumberAndStringRector
- #1452 Add non-namespaced support to ImportFullyQualifiedNamesRector
- #1461 [supporŧ] add funding Github - news from Github Satellite
- #1478 composer: add authors
- #1382 Add support to rename classes and it's namespace, Thanks to @JanMikes
- #1377 Add function support to ImportFullyQualifiedNamesRector
- #1489 [backers] add Jan Votruba
- #1412 [ImportFullyQualifiedNamesRector] Allow to opt-out from doc block modification, Thanks to @mxr576
- #1439 [PSR4] Improve MultipleClassFileToPsr4ClassesRector output
- #1477 introduce OutputFormatterCollector to allow extension of output formatters
- #1446 Narrow ArraySpreadInsteadOfArrayMergeRector to numeric-arrays only
- #1479 update to php-parser 4.2.2
- #1395 Preserve file permissions when updating a file, Thanks to @LeSuisse
- #1397 [DeadCode] Various set fixes
- #1398 Fix travis for Laravel self-run
- #1391 fix ImportFullyQualifiedNamesRector on multiple files
- #1444 fix ReservedObjectRector for lowercased object
- #1471 fix deleting file that matches class name
- #1425 speedup RenameClassRector on doc comments
- #1464 do not override printing files with previous stmts if possible
- #1415 Removed duplicated code, Thanks to @DaveLiddament
v0.4.12 - 2019-05-02
- #1326 [CodingStyle] Add SplitStringClassConstantToClassConstFetchRector
- #1327 [CodingStyle] Add ImportFullyQualifiedNamesRector
- #1363 [PHP] Add AddDefaultValueForUndefinedVariableRector
- #1347 [RemovingStatic] Add new level
- #1333 Add PrivatizeLocalClassConstantRector to SOLID, Thanks to @mxr576
- #1362 [PHP 7.4] Add ReservedFnFunctionRector
- #1323 allow Nette 3.0, Thanks to @mimmi20
- #1325 [DeadCode] Skip magic methods in RemoveUnusedParameterRector
- #1351 [DeadCode] Keep different case in RemoveDoubleAssignRector
- #1353 [DeadCode] Skip traits in RemoveUnusedPrivateMethodRector
- #1370 make ImportFullyQualifiedNamesRector take into account existing imports on combination of PHP and doc block
- #1354 Speedup tests by 90 % from 41 secs to 4
- #1357 Tests improvements
- #1359 Notice file rectors on run
- #1369 [CodingStyle] ImportsInClassCollection fixes
- #1368 [CodingStyle] Fix ImportFullyQualifiedNamesRector for self imports
- #1365 [CodingStyle] Fix interface short name identical with class name in ImportFullyQualifiedNamesRector
- #1348 [DeadCode] Remove overriden fix
- #1352 [DeadCode] Fix RemoveUnusedPrivateMethodRector for self call
- #1350 [Laravel] Fix MinutesToSecondsInCacheRector DateTimeInterface argument
- #1361 [Symfony] Fix GetRequestRector for get non method calls
- #1375 Fix file removal in MultipleClassFileToPsr4ClassesRector
- #1320 [CakePHP]FIx rule for cakephp37, Thanks to @o0h
- #1331 Use
dev
as Symfony default env to fix issue #1319, Thanks to @BernhardWebstudio
- #1349 [DeadCode] Remove double
v0.4.11 - 2019-04-14
- #1317 Add Changelog
- #1302 [Symfony 4.3] Add SimplifyWebTestCaseAssertionsRector
- #1302 [Symfony 4.3] Add
SimplifyWebTestCaseAssertionsRector
- #1311 [CodingStyle] Add
SplitGroupedConstantsAndPropertiesRector
- #1301 [PHPUnit] Add
RemoveExpectAnyFromMockRector
- #1304 [SOLID] Add
PrivatizeLocalClassConstantRector
- #1303 [SOLID] Add
FinalizeClassesWithoutChildrenRector
- #1302 [Symfony 4.3] Add
SimplifyWebTestCaseAssertionsRector