1
0
mirror of https://github.com/danog/psalm.git synced 2024-12-16 19:36:59 +01:00
Commit Graph

345 Commits

Author SHA1 Message Date
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