Matthew Brown
|
67338c4bf5
|
Also detect non-inherited private constructors
|
2017-07-08 22:01:26 -04:00 |
|
Matthew Brown
|
c7b0f6685f
|
Make Psalm a bit faster
|
2017-07-08 21:19:16 -04:00 |
|
Matthew Brown
|
91bdd65588
|
Fix #179 - check for abstract method instantiations
|
2017-06-30 10:24:47 -04:00 |
|
Matthew Brown
|
d8654b8389
|
Slow down Psalm by checking parent initialisations too
|
2017-06-30 01:24:45 -04:00 |
|
Matt Brown
|
967b51d5fc
|
Make sure that traits are listed as analyzable so issues can be shown
|
2017-06-21 16:36:45 -04:00 |
|
Matt Brown
|
f49d167a49
|
Add tracking from where a trait was included
|
2017-06-21 14:22:52 -04:00 |
|
Matthew Brown
|
878696b72c
|
Fix #173 - don’t emit MissingConstructor issues from trait constructor
|
2017-06-21 01:25:41 -04:00 |
|
Matthew Brown
|
22a716f4da
|
Improve formatting of phpdocs
|
2017-05-26 20:16:18 -04:00 |
|
Matthew Brown
|
d6909193ea
|
Add additional formatting changes
|
2017-05-26 20:05:57 -04:00 |
|
Matthew Brown
|
688a72c794
|
Fix #36 - emit issues on deprecated properties
|
2017-05-25 01:32:34 -04:00 |
|
Matthew Brown
|
0fdf281896
|
Add support for @deprecated classes
|
2017-05-25 00:34:39 -04:00 |
|
Matthew Brown
|
4fd46e1752
|
Improve formatting
|
2017-05-24 22:07:49 -04:00 |
|
Matthew Brown
|
7532e32b9d
|
Fixed spacing and use statement formatting
|
2017-05-19 00:48:26 -04:00 |
|
Matt Brown
|
052624fa94
|
Fix issue calculating inherited parent property mutations
|
2017-05-12 19:15:08 -04:00 |
|
Matt Brown
|
624bba0f5c
|
Divid pseudo properties into get and set types
|
2017-05-05 11:20:05 -04:00 |
|
Matthew Brown
|
c4f45b0f1a
|
Add more info for plugin
|
2017-05-05 00:06:46 -04:00 |
|
Matthew Brown
|
d2ae36296f
|
Add plugin to improve storage after scanning classlike
|
2017-05-04 22:40:24 -04:00 |
|
Matt Brown
|
df890fbfb0
|
Fix #155 - support @property declaration for classes with magic getters & setters
|
2017-05-04 18:35:05 -04:00 |
|
Matthew Brown
|
bdfe2396ad
|
Don’t suggest useless type information
|
2017-04-15 00:45:43 -04:00 |
|
Matthew Brown
|
a8bee2f843
|
Suggest missing property types for traits as well
|
2017-04-15 00:04:03 -04:00 |
|
Matthew Brown
|
0c4824b2cc
|
Take property defaults into account when suggesting missing type
|
2017-04-14 23:46:55 -04:00 |
|
Matthew Brown
|
60be6f07a0
|
Delay checks for MissingPropertyType so we can give more useful messages
|
2017-04-14 23:09:34 -04:00 |
|
Matthew Brown
|
a89018d9ae
|
Only warn about issues in files that we’re trying to scan
|
2017-03-24 18:34:46 -04:00 |
|
Matthew Brown
|
caf72bda52
|
Shave off a little extra time by caching file_checker refs
|
2017-03-19 23:30:20 -04:00 |
|
Matthew Brown
|
f2f944d4c0
|
Prevent trying to open invalid file paths
|
2017-03-19 18:20:48 -04:00 |
|
Matthew Brown
|
f6066aaded
|
Log references to parent classes
|
2017-03-10 19:36:17 -05:00 |
|
Matt Brown
|
f9f38f283e
|
Emit issue when property type is not defined
|
2017-03-02 12:19:18 -05:00 |
|
Matthew Brown
|
5cd1b6735f
|
Add even more references in docblocks
|
2017-03-01 22:27:52 -05:00 |
|
Matt Brown
|
864d242f13
|
Improve labelling of referencing expressions
|
2017-03-01 11:56:36 -05:00 |
|
Matt Brown
|
b948198ca9
|
Also collect use path locations
|
2017-02-27 18:24:20 -05:00 |
|
Matt Brown
|
4f597a4068
|
Fix references
|
2017-02-27 16:38:43 -05:00 |
|
github@muglug.com
|
07c9cfb848
|
Check template typeof class references
|
2017-02-27 16:35:24 -05:00 |
|
Matt Brown
|
cbb8252125
|
Don’t be sensitive to casing differences in file paths
|
2017-02-27 12:02:13 -05:00 |
|
Matthew Brown
|
cd5f727d2e
|
Collect explicit references to classes/methods
|
2017-02-26 23:09:18 -05:00 |
|
Matt Brown
|
444a56f4f5
|
Nest file class registration in conditional
|
2017-02-22 17:26:20 -05:00 |
|
Matthew Brown
|
47de866601
|
Fix issue using abstract methods from traits
|
2017-02-22 01:25:51 -05:00 |
|
Matthew Brown
|
b2957ef4e4
|
Remove redundant property
|
2017-02-22 00:06:31 -05:00 |
|
Matthew Brown
|
e61ea17db5
|
Move FileChecker functionality into separate, better-contained classes
|
2017-02-18 13:41:27 -05:00 |
|
Matthew Brown
|
b80628b1c4
|
Convert all templated properties to most acceptable type
|
2017-02-12 14:10:34 -05:00 |
|
Matthew Brown
|
a31ef0ae5f
|
Always save property assignments for analysis
|
2017-02-12 13:25:59 -05:00 |
|
Matthew Brown
|
2ecffbdd6f
|
Always check methods with global scope
|
2017-02-12 13:16:40 -05:00 |
|
Matthew Brown
|
f32fabd798
|
Remove dead code
|
2017-02-11 19:30:06 -05:00 |
|
Matthew Brown
|
8ff6634e7b
|
Add issue for possibly unused variables in public/private methods
also changed a lot of access
|
2017-02-11 18:56:38 -05:00 |
|
Matt Brown
|
32d85e20da
|
Remove unused vars
|
2017-02-10 19:10:13 -05:00 |
|
Matt Brown
|
0d2581f961
|
Fix possibility of break when getting property in quick evaluation
|
2017-02-10 18:45:11 -05:00 |
|
Matthew Brown
|
8ffd45407c
|
Add support for namespaced templates
|
2017-02-10 00:14:44 -05:00 |
|
Matthew Brown
|
98b0ed280c
|
Add support for templating
|
2017-02-09 20:35:17 -05:00 |
|
Matthew Brown
|
64cbe005f3
|
Remove more false positives
|
2017-02-08 02:23:41 -05:00 |
|
Matthew Brown
|
cdcacc395d
|
Rename DeadCode to UnusedVariable, UnusedMethod and UnusedClass
|
2017-02-08 00:28:26 -05:00 |
|
Matthew Brown
|
0fbf8b5619
|
Remove more dead code
|
2017-02-02 00:45:23 -05:00 |
|
Matthew Brown
|
ec65f31aaa
|
Improve dead code analysis and fix errors found
|
2017-02-02 00:20:58 -05:00 |
|
Matthew Brown
|
1051ba9fc1
|
Wait to evaluate property defaults until analysis
|
2017-02-01 18:27:24 -05:00 |
|
Matthew Brown
|
d3abc0011d
|
Fix #80 - add dead code checks via command line
|
2017-01-31 23:24:33 -05:00 |
|
Matthew Brown
|
1ece3071f9
|
Add reference counting for methods and remove dead code
|
2017-01-29 23:44:05 -05:00 |
|
Jon Ursenbach
|
c66082897d
|
Fixing a typo in the ClassLikeChecker exception message.
|
2017-01-29 00:34:42 -05:00 |
|
Matthew Brown
|
ea06f62d72
|
Fix registration of private trait properties
|
2017-01-27 17:57:59 -07:00 |
|
Matthew Brown
|
3c3d22164c
|
Add private properties to context
|
2017-01-27 08:49:37 -07:00 |
|
Matthew Brown
|
c485a3d056
|
Check for not-set-in-constructor errors across traits too
|
2017-01-27 08:28:21 -07:00 |
|
Matthew Brown
|
98d4ced24f
|
Make location of not-set-in-constructor errors more precise
|
2017-01-26 23:40:22 -07:00 |
|
Matthew Brown
|
63801c38c0
|
Make location of constructor error more specific
|
2017-01-26 23:32:03 -07:00 |
|
Matthew Brown
|
6bcc763414
|
Fix #3 by checking inside __constructor calls for initialisations
|
2017-01-26 23:23:12 -07:00 |
|
Matthew Brown
|
daa923e243
|
Stop analysis if parent class cannot be located
|
2017-01-23 13:36:06 -07:00 |
|
Matthew Brown
|
3ad6ec2e34
|
Be more resilient if we ignore that parent class does not exist
|
2017-01-23 13:21:40 -07:00 |
|
Matthew Brown
|
894b25487f
|
Fix #71 - prevent instantiation of abstract classes
|
2017-01-20 00:10:10 -05:00 |
|
Matthew Brown
|
9d1b382820
|
Fix #48 by recording class definition line number & file path
|
2017-01-19 23:45:21 -05:00 |
|
Matt Brown
|
77ff99206e
|
Inherit all parent properties when analyzing method
|
2017-01-19 13:11:45 -05:00 |
|
Matt Brown
|
0ba02f304f
|
Make project checker always aware of file paths to classes
|
2017-01-19 10:55:58 -05:00 |
|
Matthew Brown
|
d7096df7a6
|
Don’t complain about non-user-defined class casing
|
2017-01-18 00:33:48 -05:00 |
|
Matthew Brown
|
b438e4c305
|
Revert "Don’t complain about incorrectly cased builtin classes"
This reverts commit 20558c6039 .
|
2017-01-18 00:23:17 -05:00 |
|
Matthew Brown
|
20558c6039
|
Don’t complain about incorrectly cased builtin classes
As they can never cause autoloader issues
|
2017-01-18 00:20:24 -05:00 |
|
Matthew Brown
|
b9bad01dbd
|
Treat reflected interface parents correctly
|
2017-01-16 20:47:23 -05:00 |
|
Matthew Brown
|
3cdb1753d5
|
Update to the more accurate TypeChecker::isContainedBy
|
2017-01-16 20:00:51 -05:00 |
|
Matthew Brown
|
b3726c9de5
|
Use getcwd() for the project’s base, not the config file parent directory
|
2017-01-16 18:33:04 -05:00 |
|
Matthew Brown
|
e3a9cb98c3
|
Add extra issue for invalid clone and fix issue reporting;
|
2017-01-16 12:59:09 -05:00 |
|
Matthew Brown
|
d46282e13f
|
Fix issue with constants defined inside interfaces
|
2017-01-16 00:13:08 -05:00 |
|
Matthew Brown
|
de9d282205
|
Be more robust in the case of missing parent class
|
2017-01-15 22:09:32 -05:00 |
|
Matthew Brown
|
5845463dab
|
Fix #61 - don’t warn about non-implementing abstract classes
|
2017-01-15 19:02:36 -05:00 |
|
Matthew Brown
|
03141e41c2
|
Move string-stored types into named classes
|
2017-01-15 10:22:05 -05:00 |
|
Matthew Brown
|
78c1138a94
|
Fix #53 - add back extends checks for reflected classes
|
2017-01-14 19:34:10 -05:00 |
|
Matt Brown
|
e300550209
|
Be less brittle when interface does not exist
|
2017-01-12 11:16:00 -05:00 |
|
Matthew Brown
|
5f54a9571c
|
Fix deep project checks
|
2017-01-12 01:03:48 -05:00 |
|
Matthew Brown
|
107d8352fc
|
Add back mutation checks
|
2017-01-12 00:38:15 -05:00 |
|
Matthew Brown
|
56be346191
|
Add back mutation checks
|
2017-01-11 21:37:53 -05:00 |
|
Matthew Brown
|
03c5ea3cef
|
Store all class keys lowercased
|
2017-01-09 00:14:39 -05:00 |
|
Matthew Brown
|
c90a479b15
|
Fix self-referential issue
|
2017-01-08 13:53:40 -05:00 |
|
Matthew Brown
|
e670ce4ca4
|
Revisit files to save memory usage
|
2017-01-08 12:55:32 -05:00 |
|
Matthew Brown
|
28cd8caca8
|
Change analyzeMethods to analyze
|
2017-01-07 15:57:25 -05:00 |
|
Matthew Brown
|
17329015dc
|
Discriminate between checking, visiting and analyzing in method names
|
2017-01-07 15:09:47 -05:00 |
|
Matthew Brown
|
694da2cabd
|
Simplify a lot of APIs
|
2017-01-07 14:35:07 -05:00 |
|
Matthew Brown
|
6ee69e547f
|
Do more to separate out processing steps
|
2017-01-06 01:07:11 -05:00 |
|
Matthew Brown
|
7609ca02c0
|
Fix #32 by evaluating all class references in files lazily
|
2017-01-04 23:42:58 -05:00 |
|
Matthew Brown
|
30c910109c
|
Fix inherited reflected properties/methods
|
2017-01-01 19:50:29 -05:00 |
|
Matthew Brown
|
883ca6a5db
|
Fix #30 by consolidating properties into single storage array
|
2017-01-01 19:09:17 -05:00 |
|
Matthew Brown
|
0b3b3f01f3
|
Fix support for traits returning self
|
2016-12-31 11:49:04 -05:00 |
|
Matthew Brown
|
e972f4106c
|
Remove erroneous array index
|
2016-12-30 20:19:40 -05:00 |
|
Matthew Brown
|
77dacf23e6
|
Remove var_dump
|
2016-12-30 20:07:12 -05:00 |
|
Matthew Brown
|
b068bd7858
|
Fix many bugs
|
2016-12-30 20:05:32 -05:00 |
|
Matthew Brown
|
4a10bdbc60
|
Fix suppressed warnings in tests
|
2016-12-30 19:36:35 -05:00 |
|
Matthew Brown
|
b529fa4877
|
Move static method arrays into MethodStorage classes
|
2016-12-30 15:53:35 -05:00 |
|
Matthew Brown
|
92fe58b97c
|
Shift storage from static arrays to dedicated ClassLikeStorage objects
|
2016-12-30 12:41:14 -05:00 |
|