1
0
mirror of https://github.com/danog/psalm.git synced 2024-12-16 03:17:02 +01:00
Commit Graph

364 Commits

Author SHA1 Message Date
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
Matthew Brown
885a6a605e Add better namespaced string representation for generic param class 2018-12-18 00:21:55 -05:00
Matthew Brown
ca6149ed17 Improve treatment of templated params within function analysis 2018-12-17 23:29:27 -05:00
Brown
ca1a615026 Don’t call reconciliation on empty vars 2018-12-17 15:23:56 -05:00
Brown
699d763cc1 Make isset($a[foo]) imply $a is not a string 2018-12-14 18:52:29 -05:00
Matthew Brown
a8851ff425 Improve handling of T::class when mixed is passed 2018-12-13 01:54:15 -05:00
Matthew Brown
8b5e8402a1 Add support for @param T:class $foo 2018-12-13 00:09:01 -05:00
Matthew Brown
9911ffc9cd Fix type 2018-12-13 00:08:37 -05:00
Brown
970ea48b25 Fix checks around array empty checks 2018-12-11 13:50:26 -05:00
Matthew Brown
b052e211a0 Improve internal typing for sabre/event promises 2018-12-10 23:18:53 -05:00
Brown
d9945a0ced Fix issue re-asserting non-empty-mixed 2018-12-10 18:33:26 -05:00
Brown
bd59153ddb Fix issue with empty mixed analysis with union 2018-12-10 11:17:35 -05:00
Matthew Brown
f0969cb3bb Fix getId calls on callable return types
Ref #1119
2018-12-08 14:10:06 -05:00
Matthew Brown
fd0ab47b80 Fix #1118 - detect possible issues with unions of mixed 2018-12-08 13:18:55 -05:00
Matthew Brown
f54a50ec7d Fix #1116 - provide slightly clearer message when comparing a class string to a string 2018-12-05 22:29:06 -05:00
Brown
4e183abdc6 Add better message when reconciling fails with bad result
Ref #1114
2018-12-05 10:36:42 -05:00
Matthew Brown
830ee873dc Throw exception before notice is emitted 2018-12-05 09:33:13 -05:00
Brown
f5e788ec1f Increase limits of literal strings to 50 characters 2018-11-27 17:48:23 -05:00
Brown
2e7a75ba0a Prevent Psalm-specific types leaking into PHPDoc 2018-11-27 12:20:06 -05:00
Matthew Brown
59b9b5d65b Move more classes into Internal namespace 2018-11-18 12:41:47 -05:00
Matthew Brown
37dedee7b6 Fix memory leak issues and disable garbage collection 2018-11-18 11:39:14 -05:00