Commit graph

159 commits

Author SHA1 Message Date
8fbe25a422
TASK: Cleanup missing vendor
* Add configured vendor in message for easer migration in IDEs (by
  hand).
* Remove non existing function from checks.

Relates: #36
2017-03-23 13:24:11 +01:00
1561c13b46
FEATURE: Improve handling of missing Vendor
* Check for string concatenation instead of earlier more stupid.

Relates: #36
2017-03-23 13:24:04 +01:00
f9f82b0629
FEATURE: Migrate plugin and module registration and configuration
* Prefix with configured vendor if first argument does not start with a
  string already.

Relates: #36
2017-03-23 13:23:54 +01:00
eaa99973b1
TASK: Refactor existing sniffs to work again
* As we migrated trait to class, all sniffs have to extend instead to
  use the new class.
* Also make PhpCsFile import and type hints the same across all sniffs.

Relates: #36
2017-03-23 13:23:26 +01:00
f91d3240e5
TASK: According to PR, use else instead of default 2017-03-23 13:23:18 +01:00
0d985ef42a
TASK: Fix call to undefined method
Relates: #33
2017-03-23 13:23:09 +01:00
9a13223d62
TASK: Rename method
* To follow CGL

Relates: #33
2017-03-23 13:22:58 +01:00
21c72c8b96
WIP|FEATURE: Handle trait and interfaces beside classes
* Also fix check whether another line should be added after namespace
  definition.

Relates: #36
2017-03-23 13:22:16 +01:00
1b610844b9
BUGFIX: PHPDoc 2017-03-23 10:18:01 +01:00
4e0c2802e4
FEATURE: Make path to mapping file configurable
* This way one can define the path in his own ruleset.xml
2017-03-23 09:37:08 +01:00
fcb778d903
WIP|FEATURE: Provide sniff to convert old legacy class definitions
* Insert missing namespace, based on existing class name.
* Allow configuration of Vendor to use.

* Will not adjust uses of the class.
* All other sniffs are broken right now, they need to be adjusted to
  new abstract class.

Relates: #36
2017-03-23 08:52:25 +01:00
fb746bf39d
TASK: According to PR, use else instead of default 2017-03-23 08:41:06 +01:00
05ce3d0aef
TASK: Fix call to undefined method
Relates: #33
2017-03-21 13:50:22 +01:00
aa76ad796a
TASK: Keep all TypeHints the same
Relates: #33
2017-03-21 13:41:44 +01:00
af6b4dad51
TASK: Rename method
* To follow CGL

Relates: #33
2017-03-21 13:30:04 +01:00
5fd8e965ac
BUGFIX: Fix bug introduced in e6e372f8b1
* Allow static calls to find class name before $stackPtr.
2017-03-21 10:31:14 +01:00
a16cad06cd
FEATURE: Provide sniff to migrate is_a calls
Resolves: #22
2017-03-21 09:14:11 +01:00
ba2ed2cf5f
TASK: Refactor code
* As we sometimes have to fix classnames inside a string, move this
  common work to trait.
* Also make classname "free" of string quotes inside the check, not the
  concrete sniffs.
2017-03-21 08:59:26 +01:00
e6e372f8b1
TASK: Remove duplicate code
* Move same code as default to trait.
2017-03-21 08:36:53 +01:00
ca741263b4
FEATURE: Provide sniff for catch statements
Resolves: #21
2017-03-21 08:30:19 +01:00
5fd9083b01 Merge pull request #18 from DanielSiepmann/hotfix/14-double-backslash
BUGFIX: Leading namespace separator in replaced classnames
2017-03-16 17:33:06 +01:00
Daniel Hürtgen
fd57147c2a Merge branch 'develop' into feature/16-use-statements 2017-03-16 16:56:23 +01:00
Daniel Hürtgen
2e7a90d636 Merge branch 'develop' into hotfix/14-double-backslash 2017-03-16 16:52:12 +01:00
Daniel Hürtgen
917e290bf3 Merge branch 'develop' into hotfix/phpdocs 2017-03-16 16:47:51 +01:00
Daniel Hürtgen
9364b8d61e BUGFIX: Fix missing word in phpdocs of sniff classes 2017-03-16 16:45:56 +01:00
fc070f3bf6
FEATURE: Make PHPDoc tags configurable
* Make them configurable in Sniff.
* Extend readme with new configuration option.
* Provide example in ruleset.xml

Resolves: #25, #24, #23
2017-03-16 16:25:55 +01:00
58eabf43de
BUGFIX: Fix wrong phpdoc for sniff 2017-03-16 15:19:09 +01:00
45d7de293c
BUGFIX: Fix wrong phpdocs of sniff classes 2017-03-16 15:18:10 +01:00
38651f315e
FEATURE: Migrate use statements
Resolves: #16
2017-03-16 15:13:33 +01:00
0012c229ed
BUGFIX: Leading namespace separator in replaced classnames
* First remove possible namespace seperators from class name to allow
  lookup.
* Check whether we have to prefix the new classname with namespace
  seperator.

Resolves: #14
2017-03-16 15:04:01 +01:00
187dc918a9
FEATURE: Migrate instantiation through object manager
* Mark "create" as deprecated with a warning.
* Migrate first argument of "create" and "get" calls if they are
  deprecated.

Resolves: #4
2017-03-16 14:15:04 +01:00
080816c530
Merge remote-tracking branch 'origin/develop' into feature/4-instantiation 2017-03-16 14:03:15 +01:00
e2bae45829
FEATURE: Respect class $var and $var class
* Respect both orders.
* Replace regexes with array checks.

Relates: #3
2017-03-16 13:44:03 +01:00
5cf98decb0
Merge remote-tracking branch 'origin/develop' into feature/4-instantiation 2017-03-16 12:07:06 +01:00
6361db2eaf
TASK: Use regex instead of whitespace char
* To be more bulletproof.

Relates: #3
2017-03-16 12:01:01 +01:00
c3358654fa
BUGFIX: Fix visibility of method
Relates: #3
2017-03-16 11:33:50 +01:00
dcc2b43258
Merge remote-tracking branch 'origin/develop' into feature/3-inline-ide-docs 2017-03-16 11:32:54 +01:00
Daniel Hürtgen
6617e2d4ab Merge pull request #10 from DanielSiepmann/feature/7-instanceof
Feature/7 instanceof
2017-03-16 11:29:54 +01:00
cdccab83bc
BUGFIX: Allow replacement of method
* As this method should be replaces by concrete classes.

Relates: #7
2017-03-16 11:03:20 +01:00
ae3c850e58
FEATURE: Make legacyExtensions configurable
* Make property public to allow configuration through ruleset.xml
* Provide example configuration in ruleset.xml

Relates: #7
2017-03-16 11:02:49 +01:00
20722f26d1
TASK: Refactor code base
* As method does not belong to class renaming, but is a general method,
  it was moved to a new trait.

Relates: #4
2017-03-14 11:37:06 +01:00
4134ba98f3
FEATURE: Migrate makeInstance instantiations
Relates: #4
2017-03-14 10:06:07 +01:00
5196baf185
FEATURE: Migrate legacy class names after "new"
Relates: #4
2017-03-14 10:02:36 +01:00
cec410eabe
BUGFIX: Fix visibility of method
* Only this way we can overwrite the content and provide the more
  specific class name replacement.
2017-03-14 10:01:46 +01:00
b3023f94ff
FEATURE: Migrate inline comments for IDEs
* Check all inline comments matching the necessary pattern.
* Check the contained class name.
* Migrate class name.

Resolves: #3
2017-03-14 08:42:20 +01:00
097fd7522c
FEATURE: Migrate legacy class names for insteanceof
* Check classes after instanceof token and migrate them when possible

Resolves: #7
2017-03-14 08:38:19 +01:00
1a17e160b5 FEATURE: Display new class name in error
* To be more helpful while searching without fixing.
* E.g. if sniffs are integrated into IDE, the user has a chance to fix
  them while checking.
2017-03-14 08:16:33 +01:00
04a1b860a6 TASK: Adjust visibility of trait members
* As they are internal API and even protected is published to the using
  classes as this is a trait.
2017-03-14 08:16:33 +01:00
73d58fffb6
FEATURE: Migrate static calls to legacy classnames
Fixes: #6
2017-03-08 21:47:56 +01:00
e88e177440
FEATURE: Migrate legacy class names in TypeHints
* Check function / method definitions and their type hints.

Resolves: #5
2017-03-07 16:24:17 +01:00
d1a2271e6e
FIX: Adjust variable name and type
* As the property only contains the content, and content is a string, we
  adjust the code accordingly.
2017-03-07 16:22:37 +01:00
10ee6295ac
TASK: Add suffix to trait and @var
* Add @var to processed annotations.
* Add suffix to trait.
2017-03-07 15:17:47 +01:00
9e0106c83f
FEATURE: Also migrate PHPDoc annotations
* Migrate @param and @return statements.
2017-03-07 14:56:18 +01:00
eab9d0c999
TASK: Fix PR issue, add exception if type could not be fixed 2017-03-07 13:58:50 +01:00
8d8a8cc330
TASK: Adjust flow
* Reduce indentation by introducing guards to code.
2017-03-07 13:52:40 +01:00
4fe1287247
TASK: Fix Scrutinizer issues 2017-03-07 13:41:36 +01:00
f912313da3 FEATURE: Also migrate legacy classes in extends
* Migrate legacy classes after extends keyword.
* Sort token types alphabetical.
2017-03-07 13:36:18 +01:00
1aaf0e5840 BUGFIX: Prefix classes with slash to prevent issues
* As we might be in a namespace, we have to prefix new class names with
  a leading slash
2017-03-07 13:36:18 +01:00
f4fbbcab77
FEATURE: Provide first basic implementation of classmapping
* Install PHP CodeSniffer.
* Install our project as new Standard.
* Set our Standard as default.
* Provide first basic implementation to detect implemented interfaces
  with old legacy class names and migrate them to new ones.
2017-03-07 13:36:09 +01:00