1
0
mirror of https://github.com/danog/psalm.git synced 2024-12-13 17:57:37 +01:00
Commit Graph

421 Commits

Author SHA1 Message Date
Matthew Brown
e152a8f6f1 Type array_pop/array_shift returns better 2016-10-12 01:37:32 -04:00
Matthew Brown
c4648673bf Rename @suppress to @psalm-suppress 2016-10-11 14:17:55 -04:00
Matthew Brown
f87e2ae4fc Set type of mixed for magic get 2016-10-11 13:45:19 -04:00
Matthew Brown
6f1d042039 Emit issue on empty type 2016-10-11 10:47:31 -04:00
Matthew Brown
2b4b7c26e9 Add byref for getmxrr 2016-10-11 01:27:59 -04:00
Matthew Brown
99fe265722 Add DOMDocument and DOMNode to list of classes to ignore properties on 2016-10-10 23:52:05 -04:00
Matthew Brown
472e4df3cc Allow mixed to match function args 2016-10-10 22:49:43 -04:00
Matthew Brown
64b4adfb22 Make UndefinedProperty issues more specific 2016-10-10 19:29:38 -04:00
Matthew Brown
a30c82e5d7 Fix bugs in refactor 2016-10-10 01:35:12 -04:00
Matthew Brown
f68280488c Remove custom error levels 2016-10-09 17:55:21 -04:00
Matthew Brown
5292467db0 Add @todo issues and fix errors in StatementsChecker 2016-10-09 17:54:58 -04:00
Matthew Brown
566fa8e838 Do not check deleted files 2016-10-08 20:49:14 -04:00
Matthew Brown
eecd35f10b Also scan deleted files 2016-10-07 13:26:29 -04:00
Matthew Brown
d8d26a3f40 Add more robust in-psalm check 2016-10-07 00:58:08 -04:00
Matthew Brown
ed2c157762 Accept space-separated arguments 2016-10-05 17:08:20 -04:00
Matthew Brown
3f742ee954 Generate big graph of all files that could possibly be affected 2016-10-05 13:24:46 -04:00
Matthew Brown
2261ecf596 Add ability to look up a file's dependencies 2016-10-04 19:23:38 -04:00
Matthew Brown
ae75296469 Use psalm-return in place of return if available 2016-10-03 21:36:42 -04:00
Matthew Brown
f3ee908232 Improve error message 2016-10-03 16:47:14 -04:00
Matthew Brown
c060a75b24 Throw error if we are accessing object-like array with int offset 2016-10-03 16:40:46 -04:00
Matthew Brown
b8ba6ffbf6 Add return type checking of object-like types 2016-10-03 16:40:02 -04:00
Matthew Brown
efb7cd8218 Give parsers ability to manipulate object-like types 2016-10-03 16:39:42 -04:00
Matthew Brown
7565ee3fac Update docblock checker to see object-like types 2016-10-03 16:37:31 -04:00
Matthew Brown
936630892e Fix reconciling of elseifs 2016-10-03 11:39:32 -04:00
Matthew Brown
49baa62224 Fix doblocks and invalid refs 2016-10-03 11:38:59 -04:00
Matthew Brown
89bc501e17 Make sure to set object-like property type if available 2016-10-03 10:41:21 -04:00
Matthew Brown
e04441b8ac Add ObjectLike check in 2016-10-03 01:35:54 -04:00
Matthew Brown
1d10d8e8a2 Add hasType check 2016-10-03 01:01:24 -04:00
Matthew Brown
41278260b8 Fix nested array adjust 2016-10-03 00:43:24 -04:00
Matthew Brown
575ee55d1b Now make string dictionaries object-like 2016-10-02 22:00:42 -04:00
Matthew Brown
c22fc15bfa clobber better 2016-10-02 22:00:05 -04:00
Matthew Brown
a84587e6c3 Clobber empty array when combining with object-like 2016-10-02 19:33:46 -04:00
Matthew Brown
bcd2b73c43 Add check for ObjectLike 2016-10-02 18:59:37 -04:00
Matthew Brown
047b932e46 Support combining ObjectLike types 2016-10-02 18:59:16 -04:00
Matthew Brown
79d7a87539 Ignore classes checked in class_exists 2016-10-02 13:05:49 -04:00
Matthew Brown
b4de3fc2d8 Add null check when updating type 2016-10-02 11:08:15 -04:00
Matthew Brown
a6f1eaeee2 Add support for -1 and +1 in property declarations 2016-10-02 10:30:44 -04:00
Matthew Brown
ff17dcf1ee Fix while loop unset issue 2016-10-02 10:26:13 -04:00
Matthew Brown
91ea6844ba Prevent error on string array assignment 2016-10-02 10:13:35 -04:00
Matthew Brown
a141ffe3cf Add support for iteration over object-like arrays 2016-10-02 09:50:24 -04:00
Matthew Brown
fb30b79a11 Fix descendant removal 2016-10-01 23:10:15 -04:00
Matthew Brown
dd57a85f54 Make sure we do not neglect main-scope method calls 2016-10-01 22:47:32 -04:00
Matthew Brown
ceeaa5467c Make sure we set return type to mixed 2016-10-01 21:02:13 -04:00
Matthew Brown
478ef9b551 Make sure object-like is not considered an object 2016-09-22 13:45:22 -04:00
Matthew Brown
f00eb66690 Do not assign array values on object 2016-09-22 13:43:53 -04:00
Matthew Brown
42c8923981 Fix isset assertions 2016-09-22 12:26:24 -04:00
Matthew Brown
2e371aca00 Create ObjectLike entities 2016-09-22 00:49:48 -04:00
Matthew Brown
5113ffefee Add a fully-parsable representation of object-like types 2016-09-22 00:31:07 -04:00
Matthew Brown
baf9bcd4d7 Make a class for arrays 2016-09-21 22:15:46 -04:00
Matthew Brown
abae0a9cae Fix erroneous array assignment 2016-09-21 19:14:44 -04:00
Matthew Brown
37aae5d731 Allow type assertions on array keys 2016-09-21 19:14:29 -04:00
Matthew Brown
5d768d4fbe Ignore object-like issue 2016-09-21 18:26:26 -04:00
Matthew Brown
520ca5b559 Add more support for evaluating object-like type and fix empty check in foreach 2016-09-21 16:42:39 -04:00
Matthew Brown
93a5e6775d Add object-like type to represent cheating arrays 2016-09-20 21:45:49 -04:00
Matthew Brown
e9a30ca556 Remove descendent types when assigning 2016-09-17 11:57:44 -04:00
Matthew Brown
dff23e9d74 Be more general with arrays 2016-09-15 16:42:50 -04:00
Matthew Brown
24fd84617f Fix include check and nest function arg check 2016-09-15 16:31:36 -04:00
Matthew Brown
55fc146c57 Fix possible reference error if interface name is bad 2016-09-15 16:30:18 -04:00
Matthew Brown
6027687ad9 Fix callmap incorrect value 2016-09-15 16:29:58 -04:00
Matthew Brown
58835c0ad5 Add getArrayVarId for making assertions about array keys 2016-09-13 18:58:49 -04:00
Matthew Brown
352f5e64b3 Do not overboil 2016-09-13 18:23:09 -04:00
Matthew Brown
70d01c8138 Fix nullref 2016-09-13 18:10:41 -04:00
Matthew Brown
c1ca6c27d5 If we do not know, do not assume 2016-09-13 17:35:30 -04:00
Matthew Brown
884648b56c Improve type combination when evaluating array types 2016-09-12 23:24:26 -04:00
Matthew Brown
324b5ecdae Remove bad $this 2016-09-12 19:44:33 -04:00
Matthew Brown
9d38d8c197 Simplify reported array type to avoid errors 2016-09-12 19:30:57 -04:00
Matthew Brown
d94a6fdaa0 Account for commas in stuff 2016-09-12 19:29:24 -04:00
Matthew Brown
7298b41c45 Do not throw access errors when array might be empty 2016-09-12 12:23:51 -04:00
Matthew Brown
6a9bcea901 Improve typing of properties 2016-09-12 11:32:44 -04:00
Matthew Brown
677614f23e Fix offset issues 2016-09-12 00:34:38 -04:00
Matthew Brown
0563f508ca Fix automatic array creation checks 2016-09-12 00:02:26 -04:00
Matthew Brown
e663c1da19 Add support for object negation 2016-09-12 00:01:47 -04:00
Matthew Brown
564c4e2bf3 If we see an object type assertion, filter out non-object types 2016-09-11 19:12:56 -04:00
Matthew Brown
554791e6ac Fix aliased class casing and misc errors 2016-09-09 23:17:56 -04:00
Matthew Brown
9ab0ee45a5 Add a bunch of docblocks 2016-09-09 20:07:36 -04:00
Matthew Brown
288ac91c4a Add protections 2016-09-09 18:54:24 -04:00
Matthew Brown
f455851f89 Fix bugs in array key checks 2016-09-09 18:36:35 -04:00
Matthew Brown
8c5adf477a Add support for key/value array typing 2016-09-09 16:21:49 -04:00
Matthew Brown
97a8e447d7 Check uses before checking functions 2016-09-02 16:16:11 -04:00
Matthew Brown
750d172917 Prevent nested functions from throwing errors
And fix fixLocalType when passed var
2016-09-02 13:47:11 -04:00
Matthew Brown
f86c396115 Ignore resources 2016-09-01 20:27:16 -04:00
Matthew Brown
0f5f4c3029 Check functionlike param types 2016-09-01 18:02:09 -04:00
Matthew Brown
99649f2f09 Fix reference errors 2016-09-01 00:07:29 -04:00
Matthew Brown
b40e057090 Add checks for !== true 2016-09-01 00:07:20 -04:00
Matthew Brown
47f66bf4dd Add support for exposing errors in external files 2016-08-31 23:12:35 -04:00
Matthew Brown
4ccf9cf06f Do not just return last successful type found 2016-08-31 17:08:04 -04:00
Matthew Brown
b8c5bc4968 proc_open can return false 2016-08-31 15:10:29 -04:00
Matthew Brown
330199c9a3 Add support for callable checks 2016-08-31 15:10:11 -04:00
Matthew Brown
bad1271744 Add more coverage for scalar types 2016-08-31 13:25:29 -04:00
Matthew Brown
f28485ddad Never set a null $var_name 2016-08-30 15:47:44 -04:00
Matthew Brown
89d04186b1 Add missing isResource method 2016-08-30 00:40:08 -04:00
Matthew Brown
7d11b4b9b0 Add support for numeric types 2016-08-30 00:39:17 -04:00
Matthew Brown
d689996fde Support all is_* checks 2016-08-30 00:25:15 -04:00
Matthew Brown
8212284675 Map function return types for builtins 2016-08-30 00:05:13 -04:00
Matthew Brown
4a88a376df Improve handling of switch and change method name 2016-08-30 00:04:10 -04:00
Matthew Brown
7e018d3c35 Revamp include file reporting 2016-08-24 19:00:44 -04:00
Matthew Brown
1327b9e604 Add better file location recognition for imports 2016-08-24 18:13:22 -04:00
Matthew Brown
e5a6f0d42f Add support for Closure->callable types 2016-08-24 17:06:41 -04:00
Matthew Brown
4d388d197c Fix analysis of switch statements 2016-08-24 17:06:20 -04:00
Matthew Brown
0e68179bb4 Pass in the right context 2016-08-24 00:22:38 -04:00