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

480 Commits

Author SHA1 Message Date
Matthew Brown
b2fb80978e Fix assertions with single templated class-string 2019-05-27 12:17:20 -04:00
Matthew Brown
97eab1a2e6 Fix bad string key assertion 2019-05-27 10:10:21 -04:00
Matthew Brown
442c307b30 Prevent removing null from single null type 2019-05-27 00:12:57 -04:00
Matthew Brown
052599192a Fix #1680 - narrow nullable templated matching 2019-05-25 12:44:47 -04:00
Matthew Brown
790bc53bfd Fix #1681 - interpret parent annotation properly 2019-05-25 11:51:09 -04:00
Matthew Brown
62dacaf97b Also replace templated intersection types that aren’t direct templates
Ref #1675
2019-05-24 17:34:40 -04:00
Matthew Brown
7a48225184 Fix leaky template type 2019-05-24 13:35:14 -04:00
Matthew Brown
a43e4d879b Remove unnecessary option 2019-05-24 10:26:10 -04:00
Matthew Brown
9e3724bb0c Prevent class-string<T> from assigning unknown type to mixed
Fixes #1672
2019-05-24 10:20:37 -04:00
Matthew Brown
c80f9d8ecd Add class-based support for key-of
Ref #762
2019-05-24 02:12:58 -04:00
Matthew Brown
574545e149 Add initial support for key-of<T>
Ref #762
2019-05-23 23:53:48 -04:00
Matthew Brown
a18a564ad9 Add parser support for key-of and indexed access 2019-05-23 23:52:48 -04:00
Brown
3fcadb8f4c Prevent redundant addType 2019-05-23 18:09:53 -04:00
Brown
01dcf8f631 Fix erroneous update of existing variables 2019-05-23 18:04:12 -04:00
Matthew Brown
a1eb191f57 Remove TSqlSelectString and related dependency 2019-05-20 23:14:41 -04:00
Matthew Brown
ea930b8875 Fix interface_exists after class_exists check 2019-05-20 20:57:59 -04:00
Brown
4035823d51 Fix #1652 - allow totally-templated intersections 2019-05-17 15:40:52 -04:00
Matthew Brown
3599c20316 Fix #1641 - crawl intersection types 2019-05-15 22:30:35 -04:00
Brown
4a434d9a2f Add separate issue for undefined classes in docblocks 2019-05-15 18:41:26 -04:00
Brown
f1d8b1e6e7 Prevent extending covariant template params
Fixes #1610
2019-05-14 18:51:30 -04:00
Brown
7fbbe964cb Fix #1609 - warn when using covariant template type as input 2019-05-14 18:17:38 -04:00
Brown
10272c2da1 Fix #1636 - don’t allow invalid phpdoc to be outputted 2019-05-14 17:41:22 -04:00
Brown
751253ddf0 Fix #1603 - prevent invalid covariant template classes from being passed 2019-05-06 16:38:08 -04:00
Brown
57a585240c Allow is_subclass_of/is_a to inform shape of mixed arg 2019-05-06 10:06:05 -04:00
Matthew Brown
49acdfc764 Fix issue when reconciling is_subclass_of on possibly-undefined variable 2019-05-03 09:09:51 -04:00
Brown
640c1d13a6 Fix unused variables now found in Psalm’s code 2019-05-02 17:21:23 -04:00
Matthew Brown
82e0bcafac Fix #1578 - fix empty array error 2019-04-26 00:47:42 -04:00
Brown
a529f74473 Add support for tracking callables 2019-04-17 15:45:40 -04:00
Brown
8751bf232b Improve handling of negated boolean operations 2019-04-12 11:26:33 -04:00
Brown
a9b8952ea2 Fix #1545 - improve handling of negated binary ops 2019-04-11 18:51:21 -04:00
Brown
be5a262deb Add better handling for non-edge-case function calls 2019-04-11 14:53:21 -04:00
Brown
7f8b47c5cf Fix buggy behaviour around callable tests 2019-04-09 18:09:57 -04:00
Brown
5173c18cce Fix calls after updating callmap 2019-04-09 16:52:32 -04:00
Brown
c022d49b1a Allow coercion from templated param to false 2019-03-28 10:19:02 -04:00
Tyson Andre
2e6a2f14ed Fix typos in psalm with codespell's dictionary 2019-03-24 23:01:20 -04:00
Brown
22fc0b5aa3 Fix #1482 - don’t substitute template params when no default present 2019-03-22 18:05:45 -04:00
Brown
b9ba24929d Refactor storage of template names to prevent clashes 2019-03-22 15:59:10 -04:00
Brown
da1f79b7de Don’t change type after !== check
Fixes #1490
2019-03-21 16:57:42 -04:00
Brown
8d06c6a700 Fix #1480 by remembering where a property was set 2019-03-19 19:43:18 -04:00
Matthew Brown
f5c6abb6a0 Allow capturing of class-string<T>
Fixes #1457
2019-03-17 10:19:15 -04:00
bugreportuser
e31cfa503d Allow reconciling superglobal types 2019-03-16 12:49:38 -04:00
Matthew Brown
9ded84fd5b Fix comparison of strings with multiple newlines 2019-03-16 12:40:19 -04:00
Matthew Brown
01d6caf6a2 Catch negated instanceof bugs 2019-03-16 12:34:48 -04:00
Matthew Brown
a0659a02f1 Fix #1418 - support templated union types 2019-03-16 11:15:25 -04:00
Brown
71a99808fe Increase max length of strings 2019-03-12 13:15:20 -04:00
Brown
85f34f2aca Add defining class and increas string length 2019-03-12 12:58:04 -04:00
Matthew Brown
2932e3eb83 Allow numeric to be coerced to literal int 2019-03-12 01:26:19 -04:00
Brown
e22f216a5b Allow callable|array to be coerced to an array 2019-03-11 11:39:33 -04:00
Matthew Brown
907244cd23 Don’t assert on non-empty checks 2019-03-11 01:35:09 -04:00
Matthew Brown
95b986d2d4 Fix #1367 - allow assertions on mixed arrays to define objectlike type 2019-03-10 23:38:30 -04:00