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

317 Commits

Author SHA1 Message Date
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
c5107f2abf Fix zlib_encode 2016-10-26 11:57:30 -04:00
Matthew Brown
c48ce9ec33 Deal with optional callmap args better 2016-10-26 11:51:59 -04:00
Matthew Brown
76191e2505 Add back apc_store proper signature 2016-10-26 11:25:44 -04:00
Matthew Brown
77c442cb1d Improve CallMap from origin 2016-10-26 11:16:37 -04:00
Matthew Brown
b0b767c465 Fix unnecessary Exception signatures 2016-10-26 10:25:52 -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
6dde59bd20 Fix previous exception 2016-10-24 19:20:42 -04:00
Matthew Brown
4d0d5fab9a Fix Exception type 2016-10-24 19:00:52 -04:00
Matthew Brown
3fa1cce4f6 Fix more callmap issues 2016-10-24 18:56:43 -04:00
Matthew Brown
09ab4b4f33 Fix casing of DateTime objects 2016-10-24 18:49:27 -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
bd173f8840 Fix #21 - stopOnFirstError now handled properly 2016-10-23 23:32:17 -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
Matthew Brown
6d8e722a77 Add support for anonymous classes 2016-10-20 20:54:17 -04:00
Matthew Brown
6283553d19 Properly clear cache 2016-10-20 18:16:17 -04:00
Matthew Brown
0100ca2b8c Add better cache clear 2016-10-20 18:12:13 -04:00
Matthew Brown
d71d439e25 Closure basically implements callable 2016-10-20 18:05:28 -04:00
Matthew Brown
07636468a2 Improve Generator typing 2016-10-20 15:26:02 -04:00
Matthew Brown
4c51e02107 Fix function checking 2016-10-20 14:36:15 -04:00
Matthew Brown
8c23d0829a Add typed support for spaceship operator 2016-10-20 14:28:16 -04:00
Matthew Brown
a4644a0e4a Add support for Generator types 2016-10-20 14:28:16 -04:00
Matthew Brown
518e8bcbaf Support PHP5.5 features (except yield, for now) 2016-10-20 00:13:35 -04:00
Matthew Brown
5e45a70ea8 Fix erroneous continue 2016-10-19 16:50:49 -04:00
Matthew Brown
451d97e0ed Add support for variadic and packed variables 2016-10-19 00:31:32 -04:00
Matthew Brown
58bb10b948 Improve maths type resolution 2016-10-19 00:00:49 -04:00
Matthew Brown
98b4029ebd Support PHP7 return types 2016-10-18 21:54:08 -04:00
Matthew Brown
6b4039aae3 Fix #23 - prevent duplicte messages 2016-10-18 18:55:53 -04:00
Matthew Brown
900f86507d Avoid TooManyArguments issues on mock classes 2016-10-18 18:27:16 -04:00
Matthew Brown
a1acaa231a Allow @psalm-variadic to denote functions that use func_call_args 2016-10-18 17:55:07 -04:00
Matthew Brown
068dc41173 Fix #24 - do not emit TooManyArguments issue erroneously for function calls 2016-10-18 16:43:50 -04:00
Matthew Brown
f916a6f9a3 Remove unused methods 2016-10-18 16:28:51 -04:00
Matthew Brown
935b9dfe07 Be more sensitive to function_exists checks, do not apply to whole function 2016-10-18 16:14:52 -04:00
Matthew Brown
375c522304 Fix #25 - only emit one MethodSignagureMismatch per line 2016-10-18 16:00:03 -04:00
Matthew Brown
b7ffd66211 Do not check methods after is_callable 2016-10-18 14:22:54 -04:00
Matthew Brown
d247cead09 Exit properly when encountering classes we cannot deal with 2016-10-18 11:25:15 -04:00
Matthew Brown
991806a2c4 Ignore files outside project dirs for diffs 2016-10-18 10:17:25 -04:00
Matthew Brown
e6cc026d20 Add check for continue when not in loop context 2016-10-17 16:42:23 -04:00
Matthew Brown
2b0af34d2c Be more lenient with null vs void return type 2016-10-15 18:55:17 -04:00
Matthew Brown
fd6954f056 Add override for ArrayObject and fix error message 2016-10-15 18:45:31 -04:00
Matthew Brown
b2a5081163 Add checks for method signature mismatch 2016-10-15 18:01:04 -04:00
Matthew Brown
331475640b Obviate array_filter 2016-10-15 13:14:43 -04:00
Matthew Brown
31257634f4 Improve messages 2016-10-15 13:10:48 -04:00
Matthew Brown
18a55e2854 Also inspect arrays from strings 2016-10-15 13:10:05 -04:00
Matthew Brown
81e15362a0 Fix psalm errors in psalm 2016-10-15 10:36:19 -04:00
Matthew Brown
ca3dfe6e39 Fix Psalm errors in Psalm 2016-10-15 00:12:57 -04:00
Matthew Brown
6201957f76 Add a ton of docblocks 2016-10-14 00:53:43 -04:00
Matthew Brown
3a92e29f59 Fix View checks 2016-10-13 21:30:27 -04:00
Matthew Brown
2406e0b190 Fix additional ref 2016-10-13 19:13:57 -04:00
Matthew Brown
9adc30ecd9 Fix use var 2016-10-13 19:08:28 -04:00
Matthew Brown
a444fd95c2 Fix miscellaneous var ids 2016-10-13 19:01:12 -04:00
Matthew Brown
ab2b3cea9e Fix registerVariable call 2016-10-13 18:40:07 -04:00
Matthew Brown
cd69b0e5d6 Allow static property gets/sets 2016-10-13 18:27:23 -04:00
Matthew Brown
8da29add82 Delay expression checks until the end 2016-10-13 01:32:52 -04:00
Matthew Brown
4c4b6e9902 Add docblocks where relevant 2016-10-12 01:38:29 -04:00
Matthew Brown
14606bddbb Set types on static property evaluation 2016-10-12 01:38:16 -04:00
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