51 Commits

Author SHA1 Message Date
Tomas Votruba
b0dc20a462
make ComposerFileProcessor run on non-root paths of composer.json (#6111) 2021-04-12 20:47:56 +00:00
Tomas Votruba
b2412ad62a
Refactor doctrine/annotation from dynamic to own static-reflection parser (#5974)
* remove doctrine/annotations

* Refactor doctrine/annotation parser to static reflection with phpdoc-parser

* remove doctirne-annotation-parser-syncer

* remove annotation stubs

* use nodes

* almost there

* [ci-review] Rector Rectify

* skip temporary

* phpstan: remove fixed messages

Co-authored-by: kaizen-ci <info@kaizen-ci.org>
2021-04-04 11:01:11 +02:00
Tomas Votruba
025e6ed571
[PhpDocParser] Make use of native attributes (#5841)
Co-authored-by: kaizen-ci <info@kaizen-ci.org>
2021-03-19 14:33:58 +00:00
Tomas Votruba
a389839c5c
[CI] Downgrade Rector to PHP 7.1 + prefix it (#5880)
* [downgrade] simplify to 2 configs

* rename downgrade_packages.sh to downgrade_rector_to_php71.sh

* add test case stub

* [CI] add linter for php code

* [CI] update tagged workflow

* update for covariance

* [ci-review] Rector Rectify

Co-authored-by: kaizen-ci <info@kaizen-ci.org>
2021-03-18 02:48:44 +01:00
Tomas Votruba
2be6607854
[Reporting] Move missing rector services to single class (#5881) 2021-03-17 19:59:47 +01:00
Tomas Votruba
0ac0e54b02
[Naming] Removing underscore rules, rather handle with coding standards (#5868) 2021-03-15 23:24:43 +00:00
TomasVotruba
68bf6e8de8 remove dead-doc-block config 2021-03-15 21:09:43 +01:00
TomasVotruba
c27b9e8338 drop symfony-autowire set, used just once internally 2021-03-15 21:04:20 +01:00
Tomas Votruba
721f619a1d
Post moving cleanup (#5827) 2021-03-12 23:52:38 +00:00
Tomas Votruba
c791f5ed60
[RectorGenerator] Decouple to external package (#5825) 2021-03-12 20:13:27 +01:00
Tomas Votruba
67670e70ad
[DX] move packages from src/tests to single PSR-4 directory (#5824) 2021-03-12 01:21:29 +00:00
Tomas Votruba
ba1444959d
[TypeDeclaration] Improve param by caller type #2 (#5787) 2021-03-07 14:27:17 +00:00
Tomas Votruba
382f146eaf
Merge CoreRectorInterface (#5762) 2021-03-03 22:28:27 +01:00
Tomas Votruba
d5bf66f9cd
[CI] run rules dir by dir to identify static reflection weak sposts (#5720)
* [CI] run rules dir by dir to identify static reflection weak sposts

* [ci-review] Rector Rectify

* consistency

* remove unused property

* add data provider test fixture

* add InvertedIfFactory to lower complexity

* [DeadCode] Skip unused public method if data provider

* misc

* [DeadCode] Do not remove class method if required by parent ocntract

* make use of ContextAnalyzer to find the loop

* narrow dirs one level

* narrow packages

* narrow

* use directly

* narrow

* correct constant name to keep BC

* bump deps

* add version_compare to removed extra params, just to be sure

* do not return function node on unchanged name

* narrow

* add support for multiple variants

* widen

* remove double check [skip ci]

Co-authored-by: kaizen-ci <info@kaizen-ci.org>
2021-03-02 14:43:36 +01:00
Tomas Votruba
4909e63a1d
Make use of static reflection from PHPStan (#5665)
* break test without autoload

* PHPStanServiceFactory - add tests directory as analysed paths

* use ReflectionProvider instead of class_exists

* use native reflections for annotation reader

* use native class and method reflections

* add RectorBetterReflectionSourceLocatorFactory

* add DynamicSourceLocator that is shared by PHPStan and Rector

* use ReflectoinProvider instead of class_exists()

* resolve native ClassMethodReflection

* make AnonymousFunctionFactory use reflection

* [DowngradePHP74] Improve DowngradeCovariantReturnTypeRector

* phsptan: avoid ClassReflection

* ProcessCommand: add file infos to source locator

* [DeadCode] Skip RemoveUnusedPublicMethodRector for test

* remove autolaod from tests

* misc

* remove is_a()

* [CI] enable only few dirs to avoid fails

* misc

* [ci-review] Rector Rectify

* [ci-review] Rector Rectify

Co-authored-by: kaizen-ci <info@kaizen-ci.org>
2021-02-28 08:47:48 +01:00
Tomas Votruba
1ea1f5852b
[DeadCode] Remove RemoveUnusedClassesRector and RemoveUselessJustForSakeInterfaceRector, too unreliable (#5618) 2021-02-19 01:13:43 +01:00
Tomas Votruba
1d80ef3df6
[TypeDeclaration] Add external types to ParamTypeFromStrictTypedPropertyRector (#5560) 2021-02-15 19:31:53 +00:00
Tomas Votruba
ecbef2bcaa
[Tests] remove getPhpVersion() helped method, use configs instead (#5477) 2021-02-09 17:25:16 +00:00
Tomas Votruba
4590b10b43
[Process] Add --no-diffs for better huge CI debug (#5368) 2021-01-29 20:12:09 +00:00
Michal Lulco
695b16ccf1
Fixed case sensitivity for SetList (#5345) 2021-01-28 16:48:39 +01:00
Tomas Votruba
0dc20048ae
Cleanup too detailed order rules + add TypedPropertyFromStrictConstructorRector (#5288) 2021-01-22 18:47:02 +00:00
Tomas Votruba
d256bbd8c0
change rector-ci.php to rector.php (#4994) 2020-12-25 19:11:33 +01:00
Tomas Votruba
d131d804d9
Bump min PHP version to 7.3 (#4838)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-12-09 23:25:53 +01:00
Tomas Votruba
080e5cbe00
use symplify/skipper (#4689) 2020-11-26 23:09:21 +01:00
Tomas Votruba
41121a94f0
add ActiveRectorsProvider, fix reporting 0 rules registered (#4106) 2020-09-02 12:54:11 +00:00
Tomas Votruba
7ac228c638
[CI] Add type-declaration set (#4089)
* [CI] Add type-declaration set

* [rector] [CI] Add type-declaration set

* [cs] [CI] Add type-declaration set

* skip nullable void

* add anonymous parent/interface support

* refactor MultiExceptionCatchRector to use Catch_ over integers

* type fixes

* fix unoin array type override

* remove unused test cases

* drop overcomplicated InlineValidationRulesToArrayDefinitionRector

* skip assign on var

* [rector] skip assign on var

* [cs] skip assign on var

* [rector] [cs] skip assign on var

* skip assign on var

* fixes

* [rector] fixes

* [cs] fixes

Co-authored-by: rector-bot <tomas@getrector.org>
2020-09-01 17:56:30 +00:00
Tomas Votruba
dfe158e2da
[DX] Various value objects added (#4034)
* [DX] Add TypeToStaticCall

* [DX] Add ClassConstantRename

* [DX] Add IssetUnsetToMethodCall

* [DX] Add MethodToYield

* drop unamtained shopware sets

* [DX] Add RenamedAnnotationInType

* [DX] Add MethodCallWrap

* [DX] Add RenamedProperty

* [DX] Add StringToClassConstant

* [DX] Add ArgumentSwap

* simplify rename function rector

* [DX] Add RemovedFunctionArgument

* [DX] Add MethodCallToService

* [DX] Add UnprefixedMethodToGetSet

* [DX] Add PseudoNamespaceToNamespaceRector

* [DX] Add FunctionArgumentSwap

* [DX] Add StaticCallToFunction

* [DX] Add ParentCallToProperty

* [DX] Add ParentDependency

* [DX] Add CallWithParamRename

* [DX] Added MethodCallRenameWithAddedArguments

* [DX] Add PropertyToMethodCall

* [DX] Add PropertyToMethodCall

* [rector] [DX] Add PropertyToMethodCall

* [cs] [DX] Add PropertyToMethodCall

Co-authored-by: rector-bot <tomas@getrector.org>
2020-08-26 10:54:53 +00:00
Tomas Votruba
5cad696c95
[DX] Add AddedArgument (#4029) 2020-08-25 23:25:00 +02:00
Tomas Votruba
c2cfdaeacd
[DX] Add MethodVisibility value object (#4028) 2020-08-25 21:19:12 +02:00
Tomas Votruba
4553ae9579
[DX] Add TypeMethodWrap, RemovedArgument (#4026)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-08-25 21:05:58 +02:00
Tomas Votruba
44d3ec8b7a
[DX] Add MethodReturnType value object (#4020)
* re-enable rule

* add MethodReturnType value object

* drop sylius deprecated sets, as not maintained for last 2 years
2020-08-25 18:34:49 +00:00
Tomas Votruba
35f61c64b6
[objectize] moving parameter typehint to objects (#4019)
* moving parameter typehint to objects

* rename constnats

* add support for nested configs

* switch to param type value object

* [rector] switch to param type value object

Co-authored-by: rector-bot <tomas@getrector.org>
2020-08-25 02:21:00 +02:00
Tomas Votruba
c1653070f5
[phpstan] Add rule for complex config (#4015)
* [phpstan] Add ForbiddenComplexArrayConfigInSetRule

* add MethodCallRename value object

* [SymfonyPhpConfig] Add array to value object configuration rule

* apply first MethodCallRename value object
2020-08-24 22:26:14 +00:00
Tomas Votruba
de4748f935
README + recipe improvements (#4017)
* rector-recipe and README improvements

* ci: add generate command test
2020-08-24 21:25:26 +00:00
Tomas Votruba
4ef653976f
Fix invalid set reporting (#4006)
* do not use internal rectors

* report invalid set

* remove dashes before number in set name

* [rector] remove dashes before number in set name

Co-authored-by: rector-bot <tomas@getrector.org>
2020-08-22 19:27:41 +00:00
Tomas Votruba
752a35253b
Remove YAML from tests (#3989)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-08-19 18:00:27 +02:00
Tomas Votruba
9946e88c9a
[RectorGenerator] prevent incorrect package configuration (#3962)
* preven incorrect package configuration

* update create-recipe to rector-recipe, with prefix and better discoverability

* [rector] update create-recipe to rector-recipe, with prefix and better discoverability

* [cs] update create-recipe to rector-recipe, with prefix and better discoverability

Co-authored-by: rector-bot <tomas@getrector.org>
2020-08-15 09:14:54 +00:00
Tomas Votruba
1c4b510513
PHPStan: require iterable types (#3936)
* phpstan: require iterable types

* add link on relative path and line

* fix missing class type

* typed array in Rector code + add data provide support resolver

* remove duplicated set

* drop unused yaml ecs config

* add out-of-the-box directory for 3rd party packages

* static fixes

* [rector] static fixes

* [cs] static fixes

* [rector] [cs] static fixes

* generic types

Co-authored-by: rector-bot <tomas@getrector.org>
2020-08-11 10:59:04 +00:00
Tomas Votruba
09f67341ee
Add set-path constant support (#3886) 2020-08-03 21:14:41 +02:00
TomasVotruba
fe72e003ed use constants in configs 2020-07-30 13:53:53 +02:00
TomasVotruba
b376dd8169 [SymonfyPhpConfig] Add ChangeCallByNameToConstantByClassRector 2020-07-30 01:38:09 +02:00
TomasVotruba
3aa9b261a2 [config] switch from args to configure method call 2020-07-30 00:43:06 +02:00
TomasVotruba
8b1cdcb46e decouple PhpDocTypeChanger 2020-07-27 12:38:06 +02:00
TomasVotruba
0188d802d2 use SmartFileSystem over Nette FileSystem 2020-07-24 14:39:10 +02:00
TomasVotruba
0790505ddb prepare config 2020-07-24 14:11:15 +02:00
TomasVotruba
3a9375007e decouple Set package 2020-07-21 01:39:24 +02:00
TomasVotruba
ee9d0439cf make use of Set constants 2020-07-20 01:06:56 +02:00
TomasVotruba
6a4792abf4 apply new naming rule 2020-07-19 23:36:10 +02:00
TomasVotruba
cb13e7116e skip dynamic name 2020-07-19 20:21:52 +02:00
TomasVotruba
133683dc3d [Naming] Skip return without type and with args 2020-07-19 17:23:38 +02:00