153 Commits

Author SHA1 Message Date
Tomas Votruba
09f17a7b64
[Downgrade] [PHP 8.0] Add DowngradePropertyPromotionToConstructorPropertyAssignRector (#4762)
* [Downgrade] [PHP 8.0] Add DowngradePropertyPromotionToConstructorPropertyAssignRector

* fix parent

* various fixes for PHP 8.0 tests

* [ci-review] Rector Rectify

* Update rules/downgrade-php80/tests/Rector/Class_/DowngradePropertyPromotionToConstructorPropertyAssignRector/DowngradePropertyPromotionToConstructorPropertyAssignRectorTest.php

Co-authored-by: rector-bot <tomas@getrector.org>
2020-12-03 13:27:24 +00:00
Abdul Malik Ikhsan
7dc7763585
[DeadCode] Fixes #4663 Handle RemoveEmptyMethodCallRector on parent is Assign (#4746) 2020-12-02 12:44:56 +01:00
Tomas Votruba
42dae6a86a
[DeadCode] Fix RemoveDeadConstructorRector (#4751)
* [DeadCode] Fix RemoveDeadConstructorRector

* [DeadCode] Fix RemoveUnusedParameterRector in property promotion
2020-12-02 10:38:59 +00:00
Tomas Votruba
132062acf3
[DeadCode] Fix dead method in property promotion (#4749)
* [DeadCode] Fix dead method in property promotion

* bump workflows PHP version to 7.2, to respect symplify bump

* allow non-existing attributes in tests
2020-12-02 10:15:39 +00:00
Tomas Votruba
2030badc19
[PHP 8.0] Add nette utils strings replace, static fixes (#4741)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-12-01 14:52:24 +01:00
Tomas Votruba
dade40765a
trait refactoring (#4718)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-11-27 22:29:40 +01:00
Abdul Malik Ikhsan
a38debb672
[DX] Fixes #4205 Change phpversion from string to php constant int type (#4679)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-11-24 16:32:49 +01:00
Tomas Votruba
661b2f0a65
[Symplify 9] Follow up + phpstan rules tidying (#4625)
* improve static

* improve phpstan rules

* [PHPStanExtensions] Drop CheckCodeSampleBeforeAfterAlwaysDifferentRule, already part of domain in CodeSample

* cleanup
2020-11-16 23:32:24 +00:00
Tomas Votruba
a7705ed0a5
[Symplify 9] First update + switch to RuleDocGenerator (#4616)
* [composer] bump to Symplify 9

* [Symplify 9] Update phpstan rules

* bump to Symplify 9 BETA2

* update AbstractKernel from Tests to Testing namespace

* decoupling removing node trait

* remove fluent calls

* removing variadic

* [CodingStyle] Improve AnnotateThrowablesRector

* bump deps

* Make use of RuleDocGenerator

* first short

* [DocumentationGenerator] Drop deprecated package, RuleSetGenerator now handles it

* import namespace

* update docs
2020-11-16 17:50:38 +00:00
Abdul Malik Ikhsan
120e531084
[DeadCode] Fixes #4472 Remove method call on $this (#4598)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-11-13 12:14:25 +01:00
Abdul Malik Ikhsan
4764fd1ac3
[DeadCode] Fixes #4561 Skip RemoveUnusedPrivatePropertyRector removes used Parameter (#4564)
* Add test case for not removing used constructor parameter

* Fixes #4561 Closes #4563

* [ci-review] Generate Rector & Nodes documentation

* [ci-review] Apply coding standards

* phpstan

* reduce complexity

* [ci-review] Rector Rectify

Co-authored-by: Tim Siebels <siebels.tim@gmail.com>
Co-authored-by: rector-bot <tomas@getrector.org>
2020-11-08 18:22:24 +00:00
Tomas Votruba
84d2cc41d2
[DeadCode] Fix removal of class under (#4545)
* [DeadCode] Fix removal of class under

* [ci-review] Rector Rectify

Co-authored-by: rector-bot <tomas@getrector.org>
2020-11-02 19:01:31 +00:00
Tomas Votruba
c03b66f7cd
move suffix filesystem 2 (#4529)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-11-01 16:39:04 +01:00
Tomas Votruba
0513315056
Change file system approach of MultipleClassFileToPsr4ClassesRector to file without namespace node (#4522)
* Change file system approach of MultipleClassFileToPsr4ClassesRector to file without namespace node

* update DecoupleClassMethodToOwnClassRector

* [ci] add rebase jobp

* disable fail fast for unit tests

* misc
2020-10-31 12:59:40 +00:00
Tomas Votruba
bc41ba2b2e
phpstan cleanup (#4509)
* move tag objects to ValueObject namespace

* [ci] temporarily disable weird broken monorepo split, wait for move to github actoins
2020-10-29 23:06:26 +01:00
Abdul Malik Ikhsan
9e0b632e4e
[CodeQualityStrict] Add CountArrayToEmptyArrayComparisonRector to CodeQualityStrict (#4496)
Co-authored-by: rector-bot <tomas@getrector.org>
Co-authored-by: Tomas Votruba <tomas.vot@gmail.com>
2020-10-29 09:59:39 +01:00
Tomas Votruba
a6e85fe69a
[PHPUnit] Fix AddSeeTestAnnotationRector for same short name, but different namespace (#4488)
* [PHPUnit] Fix AddSeeTestAnnotationRector for same short name, but different namespace

* correct namespaces
2020-10-27 00:42:04 +00:00
Abdul Malik Ikhsan
7a1ea1328b
[CodeQuality] Register MoveOutMethodCallInsideIfConditionRector to config code-quality set (#4477)
* [CodeQuality] Register MoveOutMethodCallInsideIfConditionRector to config code-quality set

* rename use string parameter

* phpstan

* fix false positive string param to be var === variable name

* fix false positive

* phpstan

* ensure not same variable

* phpstan

* add ucfirst after var

* add fixture failing test for variable exists to be skipped

* add fixture failing test for variable exists in previuos statement

* phpstan space

* add handling variable exists in previous statement and in ClassMethod/Functions args

* handle exists but inside if

* reduce complexity

* clean up

* clean up

* cs fix

* phpstan

* remove - in variable

* use fallback when first character is numeric

* using regex to check string start alpha for variable

* cs fix

* use ClassConstFetch name to set variable name

* [ci-review] Rector Rectify

* [ci-review] Rector Rectify

* [ci-review] Rector Rectify

* clean up

* fix

* [ci-review] Rector Rectify

* Update rules/code-quality/src/Rector/If_/MoveOutMethodCallInsideIfConditionRector.php

* Update rules/code-quality/src/Rector/If_/MoveOutMethodCallInsideIfConditionRector.php

Co-authored-by: rector-bot <tomas@getrector.org>
Co-authored-by: Tomas Votruba <tomas.vot@gmail.com>
2020-10-26 14:03:26 +00:00
Tomas Votruba
0f2e6d407e
[DoctrineAnnotaitonGenerated] Update to doctrine/annotations 1.11 + fix static (#4479) 2020-10-25 14:43:05 +01:00
Tomas Votruba
6c51f3fb4f
[Restoration] Add InferParamFromClassMethodReturnRector (#4471)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-10-21 23:06:24 +02:00
Tomas Votruba
4f37d2ec3f
decouple ProjectType from Option (#4451) 2020-10-19 15:11:40 +00:00
Tomas Votruba
9869678e4a
[DeadCode] Fix removal of if->cond (#4450) 2020-10-19 16:38:02 +02:00
Tomas Votruba
5b37363b60
[DeadCode] Add expr-names support to RemoveEmptyMethodCallRector (#4448)
* [DeadCode] Add expr-names support to RemoveEmptyMethodCallRector

* skip abstract method
2020-10-19 13:35:37 +00:00
Tomas Votruba
c18b06b474
[DeadCode] Cover array dim fetch assign (#4446) 2020-10-19 01:46:38 +02:00
Tomas Votruba
29594b63f4
[DeadCode] Count arg value as used (#4445) 2020-10-18 23:18:04 +00:00
Abdul Malik Ikhsan
67bdc35fe5
[core] Add ClassReflectionToAstResolver service (#4438) 2020-10-18 10:31:37 +02:00
Abdul Malik Ikhsan
c6eb33ab2f
[DeadCode] Improve RemoveEmptyMethodCallRector: Using PHPStan\Reflection\ClassReflection->isBuiltIn() to check internal class (#4435) 2020-10-17 18:40:40 +02:00
Abdul Malik Ikhsan
ba4ec9de09
[DeadCode] Fixes #4425 Remove empty method call (#4428)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-10-17 17:29:10 +02:00
Tomas Votruba
9f7073ada3
[NodeAnalyzer] Check property fetch for read (#4431)
* [NodeAnalyzer] Check property fetch for read

* [ReadWrite] Decopule new package for read/write/only analysis

* add property fetch
2020-10-16 20:16:36 +00:00
Tomas Votruba
245000a0ce
[DeadCode] Improve unused private property detection (#4430)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-10-16 21:29:29 +02:00
Tomas Votruba
16031da4b7
[DeadCode] Fix binary different nesting in RemoveOverriddenValuesRector (#4422)
* decopule NodeByTypeAndPositionCollector

* decouple VariableUseFinder
2020-10-15 20:23:25 +00:00
Tomas Votruba
b2c9e3b127
[DeadCode] Make RemoveUnusedPrivateConstantRector skip enum (#4419) 2020-10-15 13:04:58 +00:00
Tomas Votruba
c84690baa6
[DeadCode] Various improvements (#4417) 2020-10-15 14:15:01 +02:00
Tomas Votruba
151a83a733
[DeadCode] Remove php-doc from remove params (#4411)
* [DeadCode] Remove unused param doc too

* [DeadCode] Remove php-doc from remove parmas

* [rector] [DeadCode] Remove php-doc from remove parmas

* [cs] [DeadCode] Remove php-doc from remove parmas

Co-authored-by: rector-bot <tomas@getrector.org>
2020-10-14 23:20:02 +00:00
Tomas Votruba
e085f52f86
[DeadCode] Improve parent and current type comparison on RemoveDelegatingParentCallRector (#4409)
* decouple CurrentAndParentClassMethodComparator

* fix param reflections

* [rector] fix param reflections

* [cs] fix param reflections

* composer: bump assert

* [rector] composer: bump assert

* [cs] composer: bump assert

* static fixes

Co-authored-by: rector-bot <tomas@getrector.org>
2020-10-14 17:14:55 +00:00
TomasVotruba
4103cbce07 fix cs 2020-10-02 12:07:55 +02:00
Tomas Votruba
8ae3868a57
[Restoration] Add RestoreFullyQualifiedNameRector (#4336)
* [Restoration] Add RestoreFullyQualifiedNameRector

* update docs

* use service aware test case for PHPStan rules

* improve FullyQualifiedNameMatcher

* cs fixes

* add return doc resolution

* composer: bump to symfony 4.4/5.1
2020-10-01 19:45:29 +00:00
Tomas Votruba
d7f90774ee
allow php-parser 4.10 + fixes of args merge change (#4277)
* allow php-parser 4.10 + fixes of args merge change

* use fixed php-parser 4.10.1
2020-09-23 20:22:35 +00:00
Igor
f2ecdeb0b1
[Naming] Foreach over "data", renames to "datum" (#4221)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-09-15 10:23:13 +02:00
Tomas Votruba
59c5a5e5ba
[NodeRepository] Merge function like finder to NodeRepository (#4186)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-09-11 00:09:05 +02:00
Tomas Votruba
f5f7ba76af
[NoreRepository] merge ClassLikeParsedNodesFinder to NodeRepository (#4185)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-09-10 14:56:54 +02:00
Tomas Votruba
7cab529bf8
Introduce NodeRepository, single place to get all nodes (#4183)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-09-10 12:24:43 +02:00
dobryy
f69ea0e023
[Naming] Rename foreach value variable to match method return type (#4130)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-09-09 10:52:43 +02:00
Abdul Malik Ikhsan
bcb9580353
apply run ecs check-heredoc-nowdoc command to packages and rules directory (#4138) 2020-09-08 15:27:17 +02: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
41a9b63c6f
fix ci (#4057) 2020-08-29 11:03:40 +02:00
Dmytro Naumenko
41d5f5567f
[TryCatch] Try/Catch with filled Finally can not be dead (#4053) 2020-08-28 23:08:45 +02:00
Tom Pavelec
36b24b2bfc
fix: swapped naming of camel and pascal cases (#4047) 2020-08-28 18:07:15 +02:00
Tomas Votruba
650dcc8ef0
beware reference (#4039) 2020-08-27 12:19:22 +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