55 Commits

Author SHA1 Message Date
Tomas Votruba
382f146eaf
Merge CoreRectorInterface (#5762) 2021-03-03 22:28:27 +01:00
Tomas Votruba
b7b6725364
remove abstract (#5736) 2021-03-03 08:49:57 +00: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
a61a2c6e5e
use getNodeTypes() with class-string generic type (#5692)
Co-authored-by: kaizen-ci <info@kaizen-ci.org>
2021-02-27 00:06:15 +00:00
Tomas Votruba
362ebbea46
[TypeDeclaration] Add ReturnTypeFromReturnNewRector (#5624)
Co-authored-by: kaizen-ci <info@kaizen-ci.org>
2021-02-19 12:01:23 +00:00
Tomas Votruba
d2948833a8
drop unused AddPropertyByParentRector (#5537) 2021-02-13 23:36:53 +00:00
Tomas Votruba
afdf5839e7
[testing] change provideConfigFileInfo() to provideConfigFilePath() (#5518) 2021-02-12 19:19:40 +01:00
Tomas Votruba
ecbef2bcaa
[Tests] remove getPhpVersion() helped method, use configs instead (#5477) 2021-02-09 17:25:16 +00:00
Ruud Kamphuis
a0e735a652
Add failing test fixture for StringifyStrNeedlesRector (#5461)
* Add failing test fixture for StringifyStrNeedlesRector

# Failing Test for StringifyStrNeedlesRector

Based on https://getrector.org/demo/d2da9632-23c3-4f71-b800-219c8871639c

It should understand that `PHP_EOL` is a constant that is always a `string`. Therefore, no need to cast it to string.

* Support UnionType in NodeTypeAnalyser
2021-02-09 14:07:00 +01:00
Tomas Votruba
128e340646
[PHP 7.3] Remove compact checks of unused variable, better migrate in type-safe way (#5396) 2021-01-31 20:39:41 +01:00
Tomas Votruba
7293c3c2a8
less traits 2 (#5384) 2021-01-30 23:20:05 +00:00
Tomas Votruba
734972d4b0
less traits (#5383) 2021-01-30 21:41:25 +00:00
Tomas Votruba
fa3af124b0
[DeadDocBlock] Add RemoveUselessVarTagRector (#5382)
Co-authored-by: rector-bot <tomas@getrector.org>
2021-01-30 22:16:37 +01:00
Tomas Votruba
e2757242be
Various stabilizations (#5381) 2021-01-30 20:30:37 +00:00
Tomas Votruba
1fc272e228
[PHP 7.3] Move RemoveMissingCompactVariableRector (#5373)
* [PHP 7.3] Move RemoveMissingCompactVariableRector

* [ci-review] Rector Rectify

Co-authored-by: rector-bot <tomas@getrector.org>
2021-01-30 02:22:50 +01:00
Tomas Votruba
024ec4ba93
[Generics] Add GenericsPHPStormMethodAnnotationRector (#5365)
Co-authored-by: rector-bot <tomas@getrector.org>
2021-01-29 17:24:20 +01:00
Tomas Votruba
87072b597d
PHP 7.4 8 typo (#5290) 2021-01-22 23:11:10 +00:00
Abdul Malik Ikhsan
c2c5228199
[TypeDeclaration] Improve FlipTypeControlToUseExclusiveTypeRector : add Nullable support for Assign expr (#5254)
Co-authored-by: rector-bot <tomas@getrector.org>
2021-01-20 11:41:35 +00:00
Abdul Malik Ikhsan
6b196a96ea
[TypeDeclaration] Register FlipTypeControlToUseExclusiveTypeRector to type-declaration set (#5223)
Co-authored-by: rector-bot <tomas@getrector.org>
Co-authored-by: Tomas Votruba <tomas.vot@gmail.com>
2021-01-19 12:24:48 +01:00
Tomas Votruba
cfbe014d67
[PHP 7.3] Fix stirng retype on intersections (#5216)
* [PHP 7.3] Fix stirng retype on intersections

* remove unneeded command layer for showing not enough args

* make sure there is application

* misc
2021-01-17 23:39:13 +00:00
Tomas Votruba
014c019449
[fixtures] require skip prefix on skipped files (#5079)
* skip unnecesary test case

* namespace corrections, skip prefix corrections

* hide for now

* skip new phpstan cases
2021-01-03 15:54:27 +00:00
Abdul Malik Ikhsan
6d6abf0bf2
[PHP 7.3] Skip RegexDashEscapeRector double escape (#5066)
* Add failing test fixture for RegexDashEscapeRector

# Failing Test for RegexDashEscapeRector

Based on https://getrector.org/demo/d351fdc0-409a-4f7e-aeb0-a5ee70da2a8b

* [PHP 7.3] Fixes #5055 Closes #5056 Skip RegexDashEscapeRector on escaped

Co-authored-by: Simon Brüchner <powtac@gmx.de>
2021-01-01 23:26:38 +01:00
Tomas Votruba
d465ec83e2
[DeadCode] Move RecastingRemovalRector from PHPStan set (#4983)
* [DeadCode] Move RecastingRemovalRector from PHPStan set

* [ci-review] Rector Rectify

* [ci-review] Rector Rectify

* [ci-review] Rector Rectify

Co-authored-by: rector-bot <tomas@getrector.org>
2020-12-25 00:22:45 +00:00
Abdul Malik Ikhsan
24e17588c1
[Utils] Run validate-fixture-namespace/classname to rules/ directories (#4935) 2020-12-22 18:12:20 +01:00
Tomas Votruba
37b3cecda3
Upgrade to php-parser 4.10.4 and PHPStan 0.12.63 (#4926)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-12-20 22:05:48 +01:00
Tomas Votruba
574c7cd174
[static] Narrow param types, remove duplicated methods (#4921)
* narrow types and other static fixes

* duplicates static fixes

* [ci-review] Rector Rectify

Co-authored-by: rector-bot <tomas@getrector.org>
2020-12-20 13:50:55 +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
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
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
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
Abdul Malik Ikhsan
449801e1f3
Add regex uri to regex constant (#4504)
Co-authored-by: Jan Lohage <j2L4e@users.noreply.github.com>
Co-authored-by: rector-bot <tomas@getrector.org>
2020-10-29 19:04:33 +01: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
e47a806300
Remove AbstractFileSystemRector and move to AbstractRector (#4378) 2020-10-09 21:51:09 +02:00
Tomas Votruba
7e124dffc0
[static] replace string attirbutes with contants + fix require rule (#4354)
* replace string attirbutes with contants

* static fixes

* composer: bump sypmlify

* composer: drop branch alias, not usedp
2020-10-04 22:19:25 +00: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
Igor
a3c9dabdf6
Fix PHPStan constants issues (#4248) 2020-09-17 21:24:34 +02: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
4f1beae3fd
[DX] Fix NoAbstractMethodRule cases (#4180)
* decouple IsAbleFuncCallInterface

* decouple WithFunctionToNetteUtilsStringsRectorInterface

* decouple NodeTraversableInterface

* decouple RectorInterfaceAwareInterface

* [ci] disable markdown check to prevent user bothering
2020-09-09 09:07:14 +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
e698e83687
[Transform] Decouple new set that changes nodes (#4073)
* [Transform] Move PropertyToMethodRector from Generic to Transform category

* move AbstractIsAbleRector to Generic

* [Transform] Move MethodCallToPropertyFetchRector from Generic to Transform

* [Transform] Move MethodCallToStaticCallRector from Generic to Transform

* [Transform] Move MethodCallToAnotherMethodCallWithArgumentsRector from Generic to Transform
2020-08-30 15:47:36 +02:00
Tomas Votruba
351e59fa3b
Fix array type (#4058)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-08-29 16:20:27 +02:00
Tomas Votruba
190d7cf616
update ecs (#4048)
* remove array return

* misc
2020-08-28 23:10:00 +02:00
Dmytro Naumenko
60aa571c71
Fixed RemoveMissingCompactVariableRector to handle array arguments properly (#4023) 2020-08-27 11:00:46 +02:00
TomasVotruba
99db894192 restore types 2020-07-27 10:44:51 +02:00
TomasVotruba
a8a6e7bcad rename file to fileInfo 2020-06-30 01:45:05 +02:00
TomasVotruba
0cb82c2a6f apply new Naming_ 2020-06-30 00:57:38 +02:00
TomasVotruba
7f49658112 change test(string ) to test(SmartFileInfo ) in tests 2020-06-25 20:02:36 +02:00
TomasVotruba
489531aee7 skip interface 2020-06-19 17:09:59 +02:00
TomasVotruba
e44792bd00 rename args_count 2020-05-25 00:51:33 +02:00