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

284 Commits

Author SHA1 Message Date
Matt Brown
e1bc9c65fc Add ksort to list of no-op by ref functions (vis-a-vis their argument shape 2018-09-04 13:14:44 -04:00
Matt Brown
17ea48eda4 Add ability to pretend that a file has declare(strict_types=1) 2018-08-29 15:10:56 -04:00
Matt Brown
f844f86a6c Improve type coercion checks in strict mode 2018-08-28 17:42:39 -04:00
Matt Brown
4ef2aafdd8 Fix #955 - always check third argument of array_splice 2018-08-24 16:12:07 -04:00
Matt Brown
070e7903df Allow suppression of TooManyArguments by function/method id 2018-08-16 16:49:33 -04:00
Matt Brown
366f625c83 Improve handling of coerced-to-array strings in array_splice 2018-08-14 11:51:17 -04:00
Matthew Brown
7c10a09ead Fix #911 - properly substitute alias types
Also improve handling of array_splice
2018-08-08 22:33:31 -04:00
Matt Brown
bbf48bbdfe Fix #873 - allow unpacking of all iterables 2018-07-09 09:59:51 -04:00
Matthew Brown
b5c89084fc Fix #851 - prevent null being removed in simplifyUnionType 2018-06-30 10:38:37 -04:00
Matt Brown
2fc816a6e1 Fix repeated use of spread operator 2018-06-28 17:05:50 -04:00
Matthew Brown
685ae67435 Fix #839 - check args for __call methods 2018-06-26 23:11:16 -04:00
Matthew Brown
e3ae1bf26f Fix #15 - check for uncaught throws if config flag is set 2018-06-22 01:13:49 -04:00
Matt Brown
740279352e Fix #830 - unpack template param args appropriately 2018-06-20 10:40:50 -04:00
Matt Brown
11240eb193 Fix #826 allow better template replacements 2018-06-19 13:19:41 -04:00
Matthew Brown
89affb6c2c Fix #822 - improve dead code detection on assignop expressions 2018-06-16 23:40:25 -04:00
Matthew Brown
3670f066bb Improve dead code detection 2018-06-16 20:01:41 -04:00
Matthew Brown
eae563e9e4 Fix space after function 2018-06-09 10:51:02 -04:00
Matthew Brown
7a02d300d6 Fix closure return type 2018-06-09 10:23:04 -04:00
Matthew Brown
6d4d0cf825 Fix #794 - use template types to restrict input 2018-06-09 10:14:18 -04:00
Matthew Brown
df89c8d7f2 Fix variadic check for included file functions 2018-05-30 21:01:50 -04:00
Matt Brown
549e90eca4 Treat required files the same as the files that require them, reporting-wise 2018-05-30 16:19:18 -04:00
Tyson Andre
39a1ecfd89 Remove unused variables (#777) 2018-05-29 10:08:56 +01:00
Matthew Brown
81ae1ca222 Fix #747 - allow Generator to replace Traversable in templated params 2018-05-28 22:26:43 +01:00
Matthew Brown
3805893c5a Improve error messages for literal types 2018-05-20 17:43:02 -04:00
Matthew Brown
a3e2b98f7c Fix #743 - put InvalidArgument messages before PossiblyFalseArgument 2018-05-20 13:14:31 -04:00
Matthew Brown
5bd9ba6207 Make TClassString inherit from TLiteralString 2018-05-20 00:27:53 -04:00
Matthew Brown
34a39b895c Support checks for array emptiness 2018-05-19 20:31:48 -04:00
Matt Brown
5c0f4a999c Move a bunch of classes to better places 2018-05-11 18:35:02 -04:00
Matthew Brown
8f9b4098bc Allow scalar to work with false
Fixes #718
2018-05-08 22:18:58 -04:00
Matt Brown
6e259bed03 Always evaluate closures, even when passed as mixed call args 2018-05-08 18:11:10 -04:00
Matt Brown
a0984cdaf1 Fix #697 - make missing objectlike fields an InvalidArgument 2018-04-27 17:10:57 -04:00
Matt Brown
0882b9c0f9 Fix #687 - interpret unpacked arguments in array_push and array_unshift 2018-04-20 17:14:38 -04:00
Matt Brown
1f3837d972 Fix #686 - allow undefined class inside class_exists call 2018-04-19 12:16:00 -04:00
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