84 Commits

Author SHA1 Message Date
Tomas Votruba
2db8699deb
[CodeQuality] Skip newline (#5103) 2021-01-06 21:10:51 +00:00
Abdul Malik Ikhsan
4622072613
[CodeQuality] Skip ExplicitBoolCompareRector on not variable type (#5101)
* Add failing test fixture for ExplicitBoolCompareRector

# Failing Test for ExplicitBoolCompareRector

Based on https://getrector.org/demo/3cb57eee-954d-4f12-9d0f-7ce703672f60

* Update and rename demo_file.php.inc to UnknownPropertyType.php.inc

* Closes #5100

* fixture

Co-authored-by: Jan Kuchař <honza@kucharovi.cz>
2021-01-06 20:13:48 +01:00
Abdul Malik Ikhsan
ff0134b5ca
[CodeQuality] Skip IssetOnPropertyObjectToPropertyExistsRector on null scope (#5094)
* Fixed scope as null on IssetOnPropertyObjectToPropertyExistsRector. Related #5090

* Updated is_null check with !

* Update rules/code-quality/src/Rector/Isset_/IssetOnPropertyObjectToPropertyExistsRector.php

Thanks

Co-authored-by: Abdul Malik Ikhsan <samsonasik@gmail.com>

* Update rules/code-quality/src/Rector/Isset_/IssetOnPropertyObjectToPropertyExistsRector.php

Thanks!

Co-authored-by: Abdul Malik Ikhsan <samsonasik@gmail.com>

* Fixes #5090 Closes 5091 reduce code complexity and add fixture

* fixture

* null check

* null check

* reduce complexity

* fixture fix

Co-authored-by: Lito <lito@eordes.com>
2021-01-05 17:26:39 +01:00
Abdul Malik Ikhsan
e1c89d17f6
[fixtures] Enable validate-fixture-skip-naming check (#5081)
* [fixtures] Enable validate-fixture-skip-naming check

* full path vendor vendor/symplify/easy-testing/bin/easy-testing validate-fixture-skip-naming rules tests

* 21 files

* more fixture

* various fix

* various fix

* more fixtures

* apply to packages rules tests utils

* more fixtures

* more fixtures

* more fixtures

* more fixtures

* more fixtures

* more fixtures

* more fixtures

* fixture fix

* done

* fixture fix
2021-01-04 14:18:27 +01:00
Abdul Malik Ikhsan
fab4eb6bdd
[CodeQuality] Do not namespacing "self" on GetClassToInstanceOfRector (#5073) 2021-01-02 23:00:25 +01:00
Abdul Malik Ikhsan
ec986c1090
[CodeQuality] Do not namespacing "static" on GetClassToInstanceOfRector (#5071)
* Add failing test fixture for GetClassToInstanceOfRector

# Failing Test for GetClassToInstanceOfRector

Based on https://getrector.org/demo/c605ea4b-824c-4fb6-8357-2b71a87098b6

* [CodeQuality] Closes #5064 Do not namespacing "static" on GetClassToInstanceOfRector

Co-authored-by: Jan Kuchař <honza@kucharovi.cz>
2021-01-02 21:27:01 +01:00
Tomas Votruba
db89b5eefa
[CodeQuality] Move MoveVariableDeclarationNearReferenceRector (#4989)
* [CodeQuality] Move MoveVariableDeclarationNearReferenceRector

* move code-quality-strict rules to own namespace

* move MoveVariableDeclarationNearReferenceRector to CodeQualityStrict

* add ClassConstFetchFactory

* static fixes
2020-12-25 16:22:19 +00:00
Abdul Malik Ikhsan
48eaa5c950
[CodeQuality] Fixes #4950 Skip IssetOnPropertyObjectToPropertyExistsRector on property as variable (#4953) 2020-12-22 23:21:12 +01:00
Abdul Malik Ikhsan
24e17588c1
[Utils] Run validate-fixture-namespace/classname to rules/ directories (#4935) 2020-12-22 18:12:20 +01:00
Abdul Malik Ikhsan
003314b958
[CodeQuality] Add SwitchNegatedTernaryRector (#4940)
Co-authored-by: Tomas Votruba <tomas.vot@gmail.com>
Co-authored-by: rector-bot <tomas@getrector.org>
2020-12-22 18:10:01 +01:00
Abdul Malik Ikhsan
143164504e
[CodeQuality] Add UnwrapSprintfOneArgumentRector (#4827)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-12-09 12:29:01 +01:00
Krystian Marcisz
47a9a52ffd
[CodeQuality] Add DateTimeToDateTimeInterfaceRector (#4791)
Co-authored-by: Tomas Votruba <tomas.vot@gmail.com>
2020-12-05 21:21:22 +01:00
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
Krystian Marcisz
2eba542760
Fix UnusedForeachValueToArrayKeysRector on objects (#4750) 2020-12-02 14:09:35 +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
Abdul Malik Ikhsan
7fcbac3230
[CodeQuality] ForToForeachRector improvement on ArrayDimFetch handling (#4613)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-11-15 17:12:48 +01:00
Abdul Malik Ikhsan
978087e846
[CodeQuality] Skip ForToForeachRector on assign count is used inside for statements (#4607)
* Failing fixture for to foreach assign count is used inside for

* Fix skip assign count used inside for statements

* cs fix

* use areNodesEqual()

* phpstan

* method naming

* [ci-review] Rector Rectify

Co-authored-by: rector-bot <tomas@getrector.org>
2020-11-14 14:07:38 +00:00
Abdul Malik Ikhsan
75714bb3d6
[CodeQuality] Fixes #4578 Skip ForToForeachRector on complex init (#4579) 2020-11-11 17:08:28 +00:00
Abdul Malik Ikhsan
d876f5bf59
[CodeQuality] Fixes #4516 Skip Apply ArrayThisCallToThisMethodCallRector on array inside property (#4533) 2020-11-01 14:32:48 +01:00
Abdul Malik Ikhsan
55a0400a62
Typo Fix funciton -> function (#4532) 2020-11-01 09:51:52 +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
Abdul Malik Ikhsan
a2ae659e0a
[CodeQualityStrict] Enable MoveOutMethodCallInsideIfConditionRector (#4502)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-10-29 21:47:12 +01:00
Tomas Votruba
35502016a6
Improve MoveOutMethodCallInsideIfConditionRector (#4492)
* skip rename

* add method call and variable name for MoveOutMethodCallInsideIfConditionRector

* decouple MethodCallToVariableNameResolver

* use trick with Scope if variable is already defined

* fixup! use trick with Scope if variable is already defined

* cover case with variable name and method call

* add decopule note future

* [ci-review] Rector Rectify

* [ci] try re-trigger ci-review after push automatically

Co-authored-by: rector-bot <tomas@getrector.org>
2020-10-27 15:51:44 +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
Abdul Malik Ikhsan
11c76808be
[CodeQuality] Add MoveOutMethodCallInsideIfConditionRector (#4457)
* Add MoveOutMethodCallInsideIfConditionRector

* cs fix

* implemented handling pass constant to arg 0

* phpstan

* final touch: no need strtolower() before ucfirst on fallback var name
2020-10-23 15:15:54 +02:00
Tomas Votruba
10ae0d687a
[CodeQuality] Add NewStaticToNewSelfRector (#4468)
* [CodeQuality] Add NewStaticToNewSelfRector

* regenerated docs

* drop patches
2020-10-20 22:01:47 +00:00
Tomas Votruba
aa98eb5d9e
[CodeQuality] Skip dynamic properties for bindTo() (#4467)
* [CodeQuality] Decouple complete dynamic properties rector, add skip of bind()

* [rector] [CodeQuality] Decouple complete dynamic properties rector, add skip of bind()

* [cs] [CodeQuality] Decouple complete dynamic properties rector, add skip of bind()

Co-authored-by: rector-bot <tomas@getrector.org>
2020-10-20 22:43:05 +02:00
Tomas Votruba
75d25a1dcb
[CodeQuality] Decouple complete dynamic properties rector, add skip of Closure::bind() (#4466)
* [ci] temporarily hide split monorepo

* [CodeQuality] Decouple complete dynamic properties rector, add skip of bind()

* [rector] [CodeQuality] Decouple complete dynamic properties rector, add skip of bind()

* [cs] [CodeQuality] Decouple complete dynamic properties rector, add skip of bind()

Co-authored-by: rector-bot <tomas@getrector.org>
2020-10-20 20:27:12 +00:00
Tomas Votruba
5988584736
[CodeQuality] Improve missing property type resolution for array dim fetch (#4462)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-10-20 20:35:35 +02:00
Tomas Votruba
b9f45eab00
[CodeQuality] Skip nested foreach (#4461) 2020-10-20 17:07:01 +02:00
Tomas Votruba
8bdb879a55
[CodeQuality] Add nested foreach foreach that is required for assign (#4459) 2020-10-20 14:24:32 +00:00
Tomas Votruba
9d2757f80d
[CodeQuality] Support multi boolean and in isset on property (#4455)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-10-20 12:50:21 +02:00
Abdul Malik Ikhsan
26ab509d7a
[CodeQuality] Register IssetOnPropertyObjectToPropertyExistsRector to code-quality config set (#4441)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-10-18 20:42:49 +02:00
Tomas Votruba
1c8fac5242
Add meta node FileWithoutNamespace (#4355)
* [CakePHP] Promote AppUsesStaticCallToUseStatementRector to File

* [CakePHP] Change ImplicitShortClassNameUseStatementRector to FileWithoutNamespace approach

* [Renaming] Update PseudoNamespaceToNamespaceRector to use FileWithnoutNamespace

* [rector] [Renaming] Update PseudoNamespaceToNamespaceRector to use FileWithnoutNamespace

* [cs] [Renaming] Update PseudoNamespaceToNamespaceRector to use FileWithnoutNamespace

Co-authored-by: rector-bot <tomas@getrector.org>
2020-10-05 08:39:02 +00:00
Abdul Malik Ikhsan
8e58d44acf
[Code Quality] Fixes #4286 Skip ArrayKeyExistsTernaryThenValueToCoalescingRector when else is a not null (#4298) 2020-09-27 22:34:02 +02: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
Abdul Malik Ikhsan
8ef90fd61a
Fixes #3939 Add IssetOnPropertyObjectToPropertyExists rule (#4214) 2020-09-15 13:29:25 +02:00
Tomas Votruba
740ccda385
[CodingStyle] Drop SimplifyBoolIdenticalTrueRector, does not bring expected value (#4113) 2020-09-02 20:12:58 +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
351e59fa3b
Fix array type (#4058)
Co-authored-by: rector-bot <tomas@getrector.org>
2020-08-29 16:20:27 +02:00
Dmytro Naumenko
12691991bb
[Code Quality] If the whole concatenated string is longer than 120 chars, skip it (#4052) 2020-08-28 18:08:25 +02:00
dobryy
2e7bdca4e2
[DX] Rename namespaces respect node type (#3973) 2020-08-18 17:57:30 +02:00
Tomas Votruba
0f25a84740
[CodeQuality] Add argument support to ArrayThisCallToThisMethodCallRector (#3921)
* make array method call to closure

* [CodeQuality] Add ArrayThisCallToThisMethodCallRector
2020-08-06 10:32:51 +00:00
Tomas Votruba
55acb3578a
[MagicDisclosure] Add SetterOnSetterMethodCallToStandaloneAssignRector (#3860)
* [MagicDisclosure] Add MethodCallOnSetterMethodCallToStandaloneAssignRector

* merge ChainMethodCallManipulator to ChainMethodCallNodeAnalyzer for better DX

* [MagicDisclosure] Add in arg defluent

* rebase
2020-08-01 11:41:16 +00:00
TomasVotruba
fe72e003ed use constants in configs 2020-07-30 13:53:53 +02:00
TomasVotruba
cd942d5a07 fix fixture content 2020-07-28 00:02:54 +02:00
TomasVotruba
8c31bd27e4 [CodeQuality] Add case class name fix 2020-07-27 20:45:41 +02:00
TomasVotruba
c28a5a9746 [Celebrity] Merge to code-quality 2020-07-27 10:18:03 +02:00
TomasVotruba
eb01322e2b [CodeQuality] Remove exception coding from JoinStringConcatRector 2020-07-19 15:30:10 +02:00