1
0
mirror of https://github.com/danog/psalm.git synced 2025-01-05 12:38:35 +01:00
Commit Graph

384 Commits

Author SHA1 Message Date
Matthew Brown
4ec7903e8b Fix #390 - add support for object{foo:int, bar:string} annotation 2019-01-18 00:56:24 -05:00
Matthew Brown
90dc39c296 Don’t preserve old storages when receiving worker data
This bug was found when running Psalm in threaded execution mode
2019-01-15 23:24:29 -05:00
Brown
f5a81249e0 Fix #1202 - don’t allow undefined constants in enums 2019-01-15 11:31:13 -05:00
Brown
773be5ceb2 Remove blank line 2019-01-14 17:13:55 -05:00
Brown
496bd97714 Make sure we’re not flipping the wrong constraint 2019-01-14 16:07:57 -05:00
Brown
ee004a91ac Fix #1068 by restricting template types to passed called closure returns 2019-01-14 15:50:25 -05:00
Matthew Brown
3ca5ec9281 Fix templated class conversion allowing child class 2019-01-13 14:40:21 -05:00
Matthew Brown
bd9f2ec546 Add separate issue type for undefined interface method 2019-01-13 13:07:53 -05:00
Brown
9947bc56f6 Fix Psalm errors and improve error output 2019-01-10 19:18:02 -05:00
Brown
0d28d5d82b Add check for @template-extends return types 2019-01-10 19:01:30 -05:00
Brown
ddc2637fc5 Add support for @template-extends Foo<SomeClass> 2019-01-10 17:58:32 -05:00
Brown
f108badd03 Fix #1067 - add support for @template-extends 2019-01-10 16:59:44 -05:00
Brown
b8d822cd26 Prohibit leaking of template params across class boundaries 2019-01-10 12:13:49 -05:00
Brown
1e20cbfa79 Prevent template params leaking when extended 2019-01-10 10:27:40 -05:00
Brown
2201380c52 Fix type transformation issues in templated class strings 2019-01-08 17:34:58 -05:00
Brown
43bbd739a2 Fix generic param fetches 2019-01-08 16:55:53 -05:00
Brown
546919a515 Allow reconciliation with nullable type string 2019-01-08 15:26:54 -05:00
Brown
8e26d639de Fix #1181 - improve handling of complicated conditionals 2019-01-08 12:33:44 -05:00
Matthew Brown
dfba6e0dec Fix #1181 - prevent allowed memory errors with large conditionals 2019-01-08 09:19:33 -05:00
Matthew Brown
fb83da94bd Exit early when encountering complicated conditionals 2019-01-08 09:02:41 -05:00
Matthew Brown
a2ee2f12a4 Allow scalar to contain numeric 2019-01-07 21:52:58 -05:00
Brown
9ec8690825 Fix #1177 - prevent redundant condition leaking 2019-01-07 18:22:42 -05:00
Matthew Brown
b19dd25881 Fix #742 - infer template type from closure 2019-01-06 12:16:09 -05:00
Matthew Brown
4d6031b39b Fix #1172 - treat is_subclass_of similarly to is_a 2019-01-05 16:58:34 -05:00
Matthew Brown
632f613ba0 Numeric is not expressible in PHP 2019-01-05 13:17:44 -05:00
Matthew Brown
bf8f76671b Don’t crash when suppressing UndefinedClass with bad params 2019-01-05 12:59:12 -05:00
Matthew Brown
8dbee1c1d9 Allow iterable to be output in PHP 7.1 too 2019-01-05 11:05:26 -05:00
Matthew Brown
6f1d56a80f Upcast iterables to traversables when used in a templated class string 2019-01-05 10:32:39 -05:00
Matthew Brown
9d8c2792e2 Add array-key type and improve general type handling
Fixes #1144
2019-01-05 00:15:53 -05:00
Matthew Brown
2dc3d9651f Separate iterable into its own type
Fixes #1151
2019-01-04 14:54:40 -05:00
Matthew Brown
87052537cf Fix #1167 - don’t worry about AbstractInstantiation when it could be a descendant 2019-01-04 12:28:00 -05:00
Matthew Brown
75e0684854 Callable can be fully expressed if its uncomplicated 2019-01-04 08:36:44 -05:00
Matthew Brown
e5559e3012 Allow callables to be plain objects, and vice versa
Previously Psalm required they be *known* objects
2019-01-04 08:04:26 -05:00
Matthew Brown
bfb1eb9be2 Properly namespace TClassString output 2019-01-02 20:25:42 -05:00
Brown
2b4b55fd33 Add support for @return no-return
Fixes #1155
2019-01-02 17:05:39 -05:00
Brown
69d9fd7e28 Fix regression when reasoning about class strings 2019-01-02 11:35:49 -05:00
Matthew Brown
c4d024a72d Check variable static calls
Fixes #1142 and #1160
2019-01-02 09:00:45 -05:00
Matthew Brown
34cbe70e6f Fix templated @return T::class output 2019-01-02 06:46:10 -05:00
Matthew Brown
b0534cc498 Fix #1149 - allow empty check on iterable 2018-12-26 11:52:37 +01:00
Matthew Brown
8cc7f6a4cf Improve reporting of iterable type 2018-12-23 01:26:26 -05:00
Matthew Brown
d70f853055 Fix display of class constants in types 2018-12-22 21:05:07 -05:00
Matthew Brown
f01b462d75 Add better output for class strings 2018-12-22 12:08:35 -05:00
Brown
5842ac1517 Fix internal error with property fetches on undefined classes 2018-12-20 14:26:55 -05:00
Brown
fb848d62e9 Add checks for if (count($a)) and if (count($a) [operator] [number]) 2018-12-19 16:15:19 -05:00
Brown
8e5e3564bc Fix erroneous redundant condition warning 2018-12-19 16:10:09 -05:00
Matthew Brown
ea89a6ba29 Revert "First pass"
This reverts commit 9ed047234f.
2018-12-19 08:45:14 -05:00
Matthew Brown
20f7147af1 Revert "Maybe bad idea"
This reverts commit 03c817be08.
2018-12-19 08:44:56 -05:00
Matthew Brown
03c817be08 Maybe bad idea 2018-12-19 01:59:26 -05:00
Matthew Brown
9ed047234f First pass 2018-12-19 01:59:14 -05:00
Matthew Brown
e75d8d00bb Improve result of "static" type-to-string 2018-12-18 01:14:19 -05:00