Matt Brown
|
6afaf5aae9
|
Make Psalm compatible with PHP Parser 4
|
2018-04-17 13:06:02 -04:00 |
|
Matthew Brown
|
3fe9a0606e
|
Fix #654 - warn about MixedArgument when inferredType property does not exist
And handle str_replace more leniently when args unknown
|
2018-04-07 15:16:46 -04:00 |
|
Matthew Brown
|
6a6d6465f5
|
Fix #619 - don’t use capitalised letters to discriminate classes
|
2018-03-30 19:04:21 -04:00 |
|
Matthew Brown
|
c8c216edb2
|
Fix #610 - add slightly hacky check for multiple callmap options
|
2018-03-30 18:51:59 -04:00 |
|
Matthew Brown
|
58115599a1
|
Add support for callable(...) syntax
Ref #580
|
2018-03-26 22:13:10 -04:00 |
|
Matthew Brown
|
1f57876e48
|
Allow extract array to be passed by ref
|
2018-03-21 11:14:05 -04:00 |
|
Matthew Brown
|
49820b06dd
|
Prevent variadic args disrupting required closure param count
|
2018-03-21 09:04:07 -04:00 |
|
Matthew Brown
|
be72423980
|
Check for magic __call when analysing callables
|
2018-03-21 00:13:57 -04:00 |
|
Matthew Brown
|
d17058e7d5
|
Fix #608 - only check callable type if string/array is not also there
|
2018-03-20 08:58:05 -04:00 |
|
Matthew Brown
|
8b102d891c
|
Allow intersection types in callable args
|
2018-03-18 20:29:41 -04:00 |
|
Matthew Brown
|
4b014eaee1
|
Fix #600 - don’t implicitly convert object name to string
|
2018-03-18 14:16:47 -04:00 |
|
Matt Brown
|
4248cacbaf
|
Flesh out template type before replacing
|
2018-03-06 14:23:41 -05:00 |
|
Matt Brown
|
fac5554e13
|
Fix errors around static class constants in template vars
|
2018-03-06 13:59:59 -05:00 |
|
Matt Brown
|
57bbdc8034
|
Replace classlike name with more accurate context self
|
2018-03-05 18:05:12 -05:00 |
|
Matt Brown
|
aff689deea
|
Add support for __CLASS__ in template types
|
2018-03-05 17:36:08 -05:00 |
|
Matt Brown
|
57c2adb923
|
Fix #558 - add extra tests around functionality
|
2018-03-05 17:10:52 -05:00 |
|
Matt Brown
|
850998ed1a
|
Add class-string type for enforcing use of ::class constants
|
2018-03-05 16:06:06 -05:00 |
|
Matt Brown
|
d8825701f5
|
Fix #556 - closure params with defaults can still accept extra
|
2018-03-05 10:29:19 -05:00 |
|
Matthew Brown
|
67cad2063d
|
Fix #555 - fix function name mapping class
|
2018-03-05 09:01:24 -05:00 |
|
Matthew Brown
|
154341577d
|
Give expected/actual argument counts
|
2018-03-02 00:07:19 -05:00 |
|
Matthew Brown
|
799e81bc96
|
Improve callable issue message
|
2018-03-02 00:03:07 -05:00 |
|
Matthew Brown
|
6fbd8753d5
|
Fix $function_id when checking for method existence
|
2018-03-01 23:52:11 -05:00 |
|
Matthew Brown
|
cc19f50c04
|
Prevent missing classes from confounding callable arg checks
|
2018-03-01 23:43:52 -05:00 |
|
Matthew Brown
|
6660aa8a00
|
Fix #548 - check array_map/array_filter args for param matches
|
2018-03-01 23:33:21 -05:00 |
|
Matthew Brown
|
47cb74ddd1
|
Fix issue where namespaced function could be treated as root
|
2018-02-25 11:13:00 -05:00 |
|
Matt Brown
|
441506ad6f
|
Fix #216 - scan assert* functions for assertions, then apply to current context
|
2018-02-23 15:39:33 -05:00 |
|
Matt Brown
|
e04c4f866c
|
Fix #524 - prevent fatal error when checking stubbed function from namespace
|
2018-02-21 11:32:52 -05:00 |
|
Matthew Brown
|
e862e4ddb1
|
Make all plugin methods static
cc @TysonAndre
|
2018-02-11 20:56:34 -05:00 |
|
Matt Brown
|
72675cb5a0
|
Be more rigorous about atomic docblock type reconciliation
|
2018-02-08 13:01:39 -05:00 |
|
Matthew Brown
|
8e0998e081
|
Break apart the Codebase class
|
2018-02-03 18:56:54 -05:00 |
|
Matthew Brown
|
861d907845
|
Add more information to TooMany/TooFewArguments issues
Fixes #481
|
2018-02-02 11:26:55 -05:00 |
|
Matthew Brown
|
d8fb14e6f7
|
Fix incorrect template types being passed through
|
2018-02-01 01:52:20 -05:00 |
|
Matthew Brown
|
fb300baa6d
|
Move a bunch of code into Codebase
|
2018-02-01 00:50:01 -05:00 |
|
Matt Brown
|
fc805a926e
|
Add code coverage message at the end of a scan
|
2018-01-31 16:08:52 -05:00 |
|
Matthew Brown
|
e0fa3adb6f
|
Split up CallChecker to speed up Psalm
|
2018-01-28 18:29:38 -05:00 |
|
Matthew Brown
|
ed5245bc47
|
Go easy on unknown invocations
|
2018-01-28 18:13:38 -05:00 |
|
Matthew Brown
|
44b8b22995
|
Improve checks for unused variables and params
|
2018-01-28 17:28:34 -05:00 |
|
Matthew Brown
|
4a672fade8
|
Add a couple of optimisations suggested by Scrutinizer
|
2018-01-28 17:26:09 -05:00 |
|
Matthew Brown
|
7ce053bd8a
|
Make docblocks sligtly more phpdoc-compatible
|
2018-01-28 16:52:57 -05:00 |
|
Matthew Brown
|
dd32452d90
|
Remove more dead code found by Psalm
|
2018-01-28 12:43:19 -05:00 |
|
Matthew Brown
|
f628187de9
|
Remove dead code found by improved Psalm checks
|
2018-01-28 12:01:51 -05:00 |
|
Matt Brown
|
a2d11cce51
|
Fix static/self return type handling
|
2018-01-26 13:51:00 -05:00 |
|
Matt Brown
|
5e0a8c4339
|
Inherit correct self return type
|
2018-01-26 10:59:30 -05:00 |
|
Matt Brown
|
543872f186
|
Allow @psalm-ignore-falsable-return annotation
Downgrades issues around use of current(), reset(), end() etc.
|
2018-01-24 18:52:58 -05:00 |
|
Matt Brown
|
f0ee7203ec
|
Copy over infinite loop protection
|
2018-01-24 13:38:53 -05:00 |
|
Matt Brown
|
445b128a50
|
Fix recursion in static calls too
|
2018-01-24 13:26:24 -05:00 |
|
Matt Brown
|
72a4f148ff
|
Prevent infinite loops when analysing private functions that call each other
|
2018-01-24 13:11:23 -05:00 |
|
Matthew Brown
|
68b00ea49a
|
Add automatic fix for PossiblyUndefinedVariable
|
2018-01-21 16:24:20 -05:00 |
|
Matthew Brown
|
bc9761f6c9
|
Create Codebase out from ProjectChecker
|
2018-01-21 13:45:33 -05:00 |
|
Matthew Brown
|
67ef894ecc
|
Add extra trait test
|
2018-01-21 00:32:45 -05:00 |
|