Matthew Brown
|
6c34ab2d52
|
Remove is_numeric check which was erroneously asserting non-string
|
2016-12-11 20:25:14 -05:00 |
|
Matthew Brown
|
1e8f986d8c
|
Narrow down error lines for reconcileKeyedTypes
|
2016-12-11 13:59:36 -05:00 |
|
Matthew Brown
|
562f71b21f
|
Add TypeDoesNotContainType issue and fix those issues in Psalm code
|
2016-12-11 13:48:11 -05:00 |
|
Matthew Brown
|
73b1ab1411
|
Support int offsets in dealing with type inference
|
2016-12-10 18:24:28 -05:00 |
|
Matthew Brown
|
327e3150a2
|
Fix erroneous self-check
|
2016-12-10 15:08:38 -05:00 |
|
Matthew Brown
|
c3df70e634
|
Allow int offsets to be treated as keys
|
2016-12-10 15:01:59 -05:00 |
|
Matthew Brown
|
12b5097fba
|
Fix function casing when checking regular functions
|
2016-12-10 13:20:41 -05:00 |
|
Matthew Brown
|
0b06b3b09b
|
Fix #9 - updated docblocks are lowercased
|
2016-12-10 13:07:12 -05:00 |
|
Matt Brown
|
eff98bfe00
|
Ignore nullrefs when using echo
|
2016-12-09 18:53:26 -05:00 |
|
Matt Brown
|
14277201d4
|
Improve understanding of objectlike types in array_* functions
|
2016-12-09 18:53:10 -05:00 |
|
Matt Brown
|
899250530e
|
Cast key to int
|
2016-12-09 13:27:59 -05:00 |
|
Matt Brown
|
30159d8f70
|
Ignore invalid scalar argument issue in echo
|
2016-12-09 12:53:22 -05:00 |
|
Matt Brown
|
b3106c68bb
|
Fix #6 - raise error with erroneous __toString
|
2016-12-09 12:48:02 -05:00 |
|
Matt Brown
|
ce3b24bf5f
|
Fix #8 - defer always to call map if function not user-defined
|
2016-12-09 12:07:47 -05:00 |
|
Matt Brown
|
e6ff24b8d2
|
Fix assignment in elseif
|
2016-12-09 12:06:14 -05:00 |
|
Matt Brown
|
28621485b0
|
Add support for parent-defined consts
|
2016-12-08 17:19:06 -05:00 |
|
Matt Brown
|
260a6d4df5
|
Make class errors more specific
|
2016-12-08 17:15:51 -05:00 |
|
Matt Brown
|
c9557d47ce
|
Fix exponentiation and modulo type inference
|
2016-12-08 16:37:14 -05:00 |
|
Matt Brown
|
d8f0a40d99
|
Improve param class hilighting
|
2016-12-08 16:23:07 -05:00 |
|
Matt Brown
|
117645ac73
|
Account for off-by-one issue in PhpParser
|
2016-12-08 15:57:18 -05:00 |
|
Matthew Brown
|
a5195b2571
|
Add JSON output format
|
2016-12-07 22:38:57 -05:00 |
|
Matt Brown
|
6356f28a1f
|
Fix #5 by simplifying oldstyle constructor support
|
2016-12-07 18:07:54 -05:00 |
|
Matt Brown
|
55a060b53a
|
Add support for closure checks
|
2016-12-07 14:13:39 -05:00 |
|
Matthew Brown
|
7aac9985de
|
Remove unnecessary suppression
|
2016-12-07 01:14:47 -05:00 |
|
Matthew Brown
|
cb9fe6e231
|
Add typehint to property/call maps
|
2016-12-07 01:12:42 -05:00 |
|
Matthew Brown
|
88be61ddbe
|
Fix files
|
2016-12-07 00:16:15 -05:00 |
|
Matthew Brown
|
def7120b8b
|
Further tweak travis
|
2016-12-07 00:07:33 -05:00 |
|
Matthew Brown
|
519c17cb9c
|
Remove PHP 5.4 support
|
2016-12-07 00:04:06 -05:00 |
|
Matt Brown
|
48e19fc7e5
|
Add support for closure docblocks
|
2016-12-06 19:41:52 -05:00 |
|
Matt Brown
|
af1a932655
|
Make code location more accurate
|
2016-12-06 18:27:22 -05:00 |
|
Matthew Brown
|
c0a3211f66
|
Support disabling file includes via the config
|
2016-12-06 16:41:42 -05:00 |
|
Matthew Brown
|
ef1049224d
|
Add selection of return types in code preview
|
2016-12-06 16:33:47 -05:00 |
|
Matthew Brown
|
60e15c255b
|
Add support for gettype switch statements too
|
2016-12-06 13:51:03 -05:00 |
|
Matthew Brown
|
638fdad3ad
|
Add support for PHP 7.1 iterable pseudo-type
|
2016-12-04 21:04:25 -05:00 |
|
Matthew Brown
|
37166a27b9
|
Set inferredType without needing string key offsets
|
2016-12-04 19:33:14 -05:00 |
|
Matthew Brown
|
23334700f6
|
Add config option to determine whether or not to use a property default value for its type
|
2016-12-04 18:43:07 -05:00 |
|
Matthew Brown
|
35802ccaa6
|
Don't totally panic when encountering invalid argument error
|
2016-12-04 18:42:20 -05:00 |
|
Matthew Brown
|
dcb9e1af14
|
Be more lenient when computing result of addition/subtraction
|
2016-12-04 18:41:33 -05:00 |
|
Matthew Brown
|
03d8a4ab0b
|
Add support for array destructuring with keys
|
2016-12-04 14:14:00 -05:00 |
|
Matthew Brown
|
b912dd2777
|
Add support for array destructuring
|
2016-12-04 13:35:38 -05:00 |
|
Matthew Brown
|
52ba52ce91
|
Fix false negative for return type check
|
2016-12-04 10:57:58 -05:00 |
|
Matthew Brown
|
7cb6891a0b
|
Add support for class constant visibility
|
2016-12-04 01:44:33 -05:00 |
|
Matthew Brown
|
983c6fd6c4
|
Allow nullable method return types
|
2016-12-04 00:08:25 -05:00 |
|
Matthew Brown
|
ffee37a23a
|
Support nullable return types
|
2016-12-03 23:03:18 -05:00 |
|
Matthew Brown
|
0675e3364a
|
Fix PHPParser 3.0.1 compatibility issues
|
2016-12-03 22:41:45 -05:00 |
|
Matthew Brown
|
ae16353f94
|
Suppress a couple more issues
|
2016-12-03 20:44:04 -05:00 |
|
Matthew Brown
|
a1acbfec07
|
Show code snippets when reporting errors
This also introduces a new method of identifying specific code locations when creating issues
|
2016-12-03 19:11:30 -05:00 |
|
Matthew Brown
|
1d603b11d0
|
Fix NULL signature issue
|
2016-11-30 15:03:52 -05:00 |
|
Matthew Brown
|
134bc950fb
|
Add specific NullArrayAccess error
|
2016-11-22 11:11:47 -05:00 |
|
Matthew Brown
|
4f95c67e1c
|
Emit issues for null/mixed array access
|
2016-11-21 19:07:56 -05:00 |
|
Matthew Brown
|
cf0c0cdda2
|
Do not quit, just fall through
|
2016-11-21 18:38:56 -05:00 |
|
Matthew Brown
|
7b3ab79aab
|
Treat empty as mixed
|
2016-11-21 17:49:07 -05:00 |
|
Matthew Brown
|
05a004c8bc
|
Add check for array access on invalid type
|
2016-11-21 16:44:35 -05:00 |
|
Matthew Brown
|
e9ea66f21b
|
Fix issues in examples
|
2016-11-21 15:51:38 -05:00 |
|
Matthew Brown
|
0cb3b828b8
|
Add support for oldstyle constructors
|
2016-11-21 14:36:06 -05:00 |
|
Matthew Brown
|
72071fb5ec
|
Add missing docblock params
|
2016-11-21 13:37:27 -05:00 |
|
Matthew Brown
|
a179eb89eb
|
Add check for missing function params in docblocks
|
2016-11-21 13:37:02 -05:00 |
|
Matthew Brown
|
55005cdf23
|
Removing repetition
|
2016-11-21 00:11:30 -05:00 |
|
Matthew Brown
|
8acc0f388b
|
Remove need for typehint
|
2016-11-21 00:03:46 -05:00 |
|
Matthew Brown
|
e43fd6af53
|
Fix invalid phpdoc return type
|
2016-11-20 23:57:37 -05:00 |
|
Matthew Brown
|
55a3ffa773
|
Add missing return types
|
2016-11-20 23:45:10 -05:00 |
|
Matthew Brown
|
9d3dcc7401
|
Do not panic when bad types are passed
|
2016-11-20 23:31:10 -05:00 |
|
Matthew Brown
|
6822f46a2c
|
Add suppprt for PHP 7.0 grouped uses
|
2016-11-20 22:40:19 -05:00 |
|
Matthew Brown
|
4b3f63c843
|
Fix missing properties
|
2016-11-20 22:02:26 -05:00 |
|
Matthew Brown
|
5a9f99c24e
|
Fix namespacing issues in PHP 5.6
|
2016-11-20 21:49:06 -05:00 |
|
Matthew Brown
|
64029b2c74
|
Make sure we only checking namespaces with names
|
2016-11-20 17:26:30 -05:00 |
|
Matthew Brown
|
4a66dad2ac
|
Improve interface inheritance
|
2016-11-20 11:51:19 -05:00 |
|
Matthew Brown
|
31aa1c3ce5
|
Fix PHPDoc-style type parsing
|
2016-11-20 02:52:34 -05:00 |
|
Matthew Brown
|
d542b22322
|
Add belt & braces file checking
|
2016-11-18 16:13:59 -05:00 |
|
Matthew Brown
|
262e6895be
|
Fix lowercase check
|
2016-11-14 14:31:31 -05:00 |
|
Matthew Brown
|
360213df9e
|
Add support for PHPDoc-style type updates
|
2016-11-13 20:32:09 -05:00 |
|
Matthew Brown
|
f2ce83c8e5
|
Fix minor boop
|
2016-11-13 15:55:06 -05:00 |
|
Matthew Brown
|
fa2209719b
|
Fix nullref
|
2016-11-13 15:46:35 -05:00 |
|
Matthew Brown
|
409a7e4b9e
|
Fix assignment checks
|
2016-11-13 15:39:16 -05:00 |
|
Matthew Brown
|
31f2f95140
|
Ignore empty types when converting to string
|
2016-11-13 14:36:10 -05:00 |
|
Matthew Brown
|
4bdc338b54
|
Make getTypeAssertion less type-sensitive
|
2016-11-13 13:15:40 -05:00 |
|
Matthew Brown
|
3b1dfd0942
|
Fix issue combining generic and object-like
|
2016-11-13 11:54:40 -05:00 |
|
Matthew Brown
|
38daca5edd
|
Fix Psalm errors in Psalm
|
2016-11-13 11:24:46 -05:00 |
|
Matthew Brown
|
87bb4a2f52
|
Fix various issues with docblock updates
|
2016-11-13 01:43:51 -05:00 |
|
Matthew Brown
|
5cf95b42f2
|
--update-docblocks now works
|
2016-11-12 23:59:31 -05:00 |
|
Matthew Brown
|
8dfca6cce2
|
Add dummy --update-docblocks option
|
2016-11-12 18:51:48 -05:00 |
|
Matthew Brown
|
05ae7905d9
|
Refactor IfChecker to break apart massive method
|
2016-11-11 17:13:30 -05:00 |
|
Matthew Brown
|
264e77addd
|
Change a few more words
|
2016-11-07 19:16:51 -05:00 |
|
Matthew Brown
|
36fc49965b
|
Correct speling
|
2016-11-07 17:31:02 -05:00 |
|
Matthew Brown
|
622a0794c3
|
Swap in Fully-Qualified for Absolute terms
|
2016-11-07 17:29:51 -05:00 |
|
Matthew Brown
|
12a12e15c2
|
Emit issue if return type is missing
|
2016-11-07 17:07:59 -05:00 |
|
Matthew Brown
|
3b038db454
|
Avoid missing property
|
2016-11-07 15:29:47 -05:00 |
|
Matthew Brown
|
8cf4134b69
|
Remove exception if cannot touch this
|
2016-11-07 10:11:14 -05:00 |
|
Matthew Brown
|
8d0a8ab055
|
Rely on call map more
|
2016-11-06 23:30:14 -05:00 |
|
Matthew Brown
|
e9b4eb69e5
|
Improve diff mechanism to hit prevent unnecessary file_get_contents
|
2016-11-06 00:59:29 -04:00 |
|
Matthew Brown
|
721e0d01e2
|
Get rid of var_dumps
|
2016-11-05 20:53:39 -04:00 |
|
Matthew Brown
|
7d6ac4719f
|
Fix offset assignment creation
|
2016-11-05 20:17:22 -04:00 |
|
Matthew Brown
|
492269ddd4
|
Ignore inability to infer when requiring
|
2016-11-05 18:46:17 -04:00 |
|
Matthew Brown
|
b3f3a20928
|
Correctly evaluate $this and self in property/return types
|
2016-11-05 18:31:09 -04:00 |
|
Matthew Brown
|
7c44353116
|
Add inferredType to InstanceOf_
|
2016-11-05 17:57:14 -04:00 |
|
Matthew Brown
|
c5591adf10
|
Add support for global in functions and mixed inferred return errors
|
2016-11-05 17:54:34 -04:00 |
|
Matthew Brown
|
2323d28238
|
Improve cache clearing
|
2016-11-04 22:04:55 -04:00 |
|
Matthew Brown
|
7df4d74a7b
|
Fix Psalm errors
|
2016-11-04 21:14:04 -04:00 |
|
Matthew Brown
|
299bc45319
|
Fix trait inheritance diff
|
2016-11-04 20:49:04 -04:00 |
|
Matthew Brown
|
60c8c5f099
|
Fix return type
|
2016-11-04 20:48:01 -04:00 |
|
Jon Ursenbach
|
917ee41461
|
Fixing some code styling issues.
|
2016-11-04 20:10:59 -04:00 |
|
Jon Ursenbach
|
653f509e80
|
Merge branch 'master' into psr2-fixes
|
2016-11-04 20:07:21 -04:00 |
|
Matthew Brown
|
ea4daa7b7e
|
Move cache dir into better config
|
2016-11-04 17:47:11 -04:00 |
|
Jon Ursenbach
|
8a6e8e9940
|
Fixing remaining PSR-2 violations.
|
2016-11-03 20:51:56 -04:00 |
|
Jon Ursenbach
|
27c2db1d1d
|
PSR-2
|
2016-11-02 17:50:54 -04:00 |
|
Matthew Brown
|
d27e06cc86
|
Fix interface inheritance
|
2016-11-02 12:14:21 -04:00 |
|
Matthew Brown
|
70f8947336
|
Break apart long functions
|
2016-11-02 09:24:36 -04:00 |
|
Matthew Brown
|
5cc5bd4ed4
|
Fix tests to all have property types
|
2016-11-01 14:32:19 -04:00 |
|
Matthew Brown
|
b78e83c4c0
|
Break out method
|
2016-11-01 14:20:01 -04:00 |
|
Matthew Brown
|
88eb43e9ca
|
Break out ExpressionChecker
|
2016-11-01 14:14:41 -04:00 |
|
Matthew Brown
|
712752d587
|
Split out asssignment methods
|
2016-11-01 11:37:58 -04:00 |
|
Matthew Brown
|
a6850a8f3c
|
Prevent a nullref
|
2016-11-01 01:02:54 -04:00 |
|
Matthew Brown
|
34af24a2b4
|
Add all the properties
|
2016-11-01 00:39:41 -04:00 |
|
Matthew Brown
|
1c09ea7380
|
Fix Psalm errors in Psalm
|
2016-10-31 15:42:20 -04:00 |
|
Matthew Brown
|
c2f63c392e
|
Emit issue if property type is missing
|
2016-10-31 15:17:54 -04:00 |
|
Matthew Brown
|
8fefaecd9c
|
Skip when encountering null list var
|
2016-10-30 19:59:26 -04:00 |
|
Matthew Brown
|
4d5b0abb74
|
Add explicit value tracking
|
2016-10-30 19:52:35 -04:00 |
|
Matthew Brown
|
b220ee51cc
|
Correctly assign list values
|
2016-10-30 19:38:08 -04:00 |
|
Matthew Brown
|
518f0f70a8
|
Break out possibly-reusable bit
|
2016-10-30 19:13:09 -04:00 |
|
Matthew Brown
|
53cef386a2
|
Do not error on mixed input
|
2016-10-30 12:53:56 -04:00 |
|
Matthew Brown
|
6cd63cc0f3
|
Fix nullref
|
2016-10-30 12:51:41 -04:00 |
|
Matthew Brown
|
604c875d0c
|
Fix more errors caught by Psalm
|
2016-10-30 12:46:18 -04:00 |
|
Matthew Brown
|
ad228e4d7e
|
Hardcode properties that Psalm needs
|
2016-10-30 11:14:36 -04:00 |
|
Matthew Brown
|
722a7fba5c
|
Don't squeal when autoloading classes
|
2016-10-30 01:13:33 -04:00 |
|
Matthew Brown
|
98437c52db
|
Check closure params to see if they align with array_map/array_filter args
|
2016-10-29 22:17:46 -04:00 |
|
Matthew Brown
|
95be3c4a05
|
Interpret variadic params as arrays
|
2016-10-29 20:50:24 -04:00 |
|
Matthew Brown
|
9f94add470
|
Update plugin interface to add $suppressed_issues
|
2016-10-28 16:49:42 -04:00 |
|
Matthew Brown
|
b31ac4a862
|
Removed object-like type descriptor in favour of array{} syntax
|
2016-10-28 13:24:06 -04:00 |
|
Matthew Brown
|
c91cb30bd6
|
Rethrow exception
|
2016-10-28 11:05:51 -04:00 |
|
Matthew Brown
|
12918d8cc9
|
Fix ref
|
2016-10-28 10:58:49 -04:00 |
|
Matthew Brown
|
b627bdf9c6
|
Catch bad docblock issue
|
2016-10-28 10:54:20 -04:00 |
|
Matthew Brown
|
0b0a5ff0e8
|
Better check for bad static invocation
|
2016-10-28 10:22:45 -04:00 |
|
Matthew Brown
|
cc0c62fd23
|
Allow spaces in docblock types
|
2016-10-28 00:11:16 -04:00 |
|
Matthew Brown
|
95f5a4603a
|
Add property for poorly-reflected builtin classes
|
2016-10-27 16:05:27 -04:00 |
|
Matthew Brown
|
78e183ea0c
|
Filter null & false if no arg passed to array_filter
|
2016-10-26 17:51:34 -04:00 |
|
Matthew Brown
|
c48ce9ec33
|
Deal with optional callmap args better
|
2016-10-26 11:51:59 -04:00 |
|
Matthew Brown
|
4d224d56db
|
Handle user-defined code in root namespace (e.g. OAuth) better
|
2016-10-25 11:40:09 -04:00 |
|
Matthew Brown
|
694d159829
|
Fix interface extends return types
|
2016-10-25 11:20:06 -04:00 |
|
Matthew Brown
|
4b65f92cb9
|
Fix #29 - allow interface extension
|
2016-10-24 18:49:07 -04:00 |
|
Matthew Brown
|
357cd8ad41
|
Add support for Closure::__invoke
|
2016-10-24 15:55:05 -04:00 |
|
Matthew Brown
|
74ec219421
|
Add more checks for inferredType
|
2016-10-24 12:13:12 -04:00 |
|
Matthew Brown
|
2ddb08c778
|
Add more protective checks
|
2016-10-24 11:06:04 -04:00 |
|
Matthew Brown
|
ce95275878
|
Fix more Psalm bugs found by Psalm
|
2016-10-23 12:24:53 -04:00 |
|
Matthew Brown
|
d8b10a6c97
|
Fix errors caught by Psalm
|
2016-10-23 01:57:11 -04:00 |
|
Matthew Brown
|
fbdfc78546
|
Fix references to moved fucntionality
|
2016-10-22 18:25:14 -04:00 |
|
Matthew Brown
|
f3f1ba1caa
|
Break out block checkers
|
2016-10-22 17:35:59 -04:00 |
|
Matthew Brown
|
2bea64ca52
|
Split out SwitchChecker
|
2016-10-22 13:37:06 -04:00 |
|
Matthew Brown
|
dda4c52e03
|
Fix ref
|
2016-10-22 13:29:32 -04:00 |
|
Matthew Brown
|
e4ba8b1abc
|
Make StatementsChecker much smaller
|
2016-10-22 13:28:40 -04:00 |
|
Matthew Brown
|
6174048354
|
Flesh out function params when evaluating args
|
2016-10-21 14:38:03 -04:00 |
|