Matt Brown
|
32d526bde9
|
Add descendant variables for closure uses
Fixes #4522
|
2020-11-09 15:20:28 -05:00 |
|
Matt Brown
|
e97a9c86eb
|
Fix #4517 - track type contradiction issues in match expressions
|
2020-11-09 10:00:53 -05:00 |
|
Matt Brown
|
3aaa1d8447
|
Fix #4516 - treat exit() as the empty type
|
2020-11-09 08:44:03 -05:00 |
|
Matt Brown
|
683546e024
|
Fix #4519 - prevent crash with empty match
|
2020-11-09 08:36:59 -05:00 |
|
Matt Brown
|
8799e1a337
|
Break apart complex method
|
2020-11-09 00:58:45 -05:00 |
|
Matt Brown
|
6acd667e55
|
Fix #4509 - treat expression-derived constants as mixed
|
2020-11-08 15:36:38 -05:00 |
|
Matt Brown
|
324e9d11c3
|
Fix tests
|
2020-11-08 11:04:39 -05:00 |
|
Matt Brown
|
67f9853756
|
Preserve reconciled taints for all but non-string scalar types
|
2020-11-08 10:27:58 -05:00 |
|
Matt Brown
|
dccf236d16
|
Fix #4503 - don’t ignore assertions on possibly-null mixed
|
2020-11-08 10:06:39 -05:00 |
|
Matt Brown
|
9d7414cbbd
|
Get rid of version test, which is dumb
|
2020-11-06 18:24:23 -05:00 |
|
Axel H
|
271e0d86be
|
Fix type inference when unpacking typed iterables (#4487)
* Add test for unpacking typed iterables
* Fix type inference when unpacking typed iterables into arrays
* Fix possibly undefined array offset
|
2020-11-06 17:24:01 -05:00 |
|
Matt Brown
|
9daa534656
|
Ensure we flush out re-assigned vars also referenced
Fixes #4488
|
2020-11-06 12:51:41 -05:00 |
|
Matt Brown
|
3cde617ecc
|
Put assignment-in-conditional tests in their own file
|
2020-11-06 12:41:00 -05:00 |
|
Matt Brown
|
388e804ed8
|
Allow opt-in to strict return type checking
|
2020-11-05 18:20:04 -05:00 |
|
Matt Brown
|
d47d817843
|
Fix #4479 - use correct keys in message
|
2020-11-05 10:13:08 -05:00 |
|
Matt Brown
|
3e9c5d3600
|
Add support for @return never
|
2020-11-04 12:30:02 -05:00 |
|
Matt Brown
|
91d9dc3759
|
Fix overeager inference
|
2020-11-03 16:44:24 -05:00 |
|
Matt Brown
|
b35db3e523
|
Reorganise things a little
|
2020-11-03 16:15:54 -05:00 |
|
Matt Brown
|
3d4e77beb6
|
Fix int-mask-of expansion
|
2020-11-02 00:40:36 -05:00 |
|
Matt Brown
|
6922caf9f6
|
Fix #4466 use better differentiation for class_exists second param
|
2020-11-01 13:14:17 -05:00 |
|
Matt Brown
|
024d93b7fd
|
Fix #4467 - variables are only the same if they were set in the same location
|
2020-11-01 11:26:42 -05:00 |
|
Matt Brown
|
f0a30b9fd0
|
Invalidate child methods when signature changes
|
2020-11-01 09:46:21 -05:00 |
|
Matt Brown
|
667220408c
|
Fix #4464 - bust cache when Psalm’s version changes, not just composer’s
|
2020-11-01 09:01:53 -05:00 |
|
Matt Brown
|
938cebc9f8
|
Use better inference for getAttributes return type
Fixes #4367
|
2020-10-30 17:37:16 -04:00 |
|
Matt Brown
|
67554dd017
|
Fix #4453 - sanitise @extends types before attempting to parse
|
2020-10-30 15:08:23 -04:00 |
|
Matt Brown
|
579327a470
|
Detect when targets are incorrectly targeted
|
2020-10-30 13:28:45 -04:00 |
|
Matt Brown
|
4ea87b9054
|
Add support for int-mask<...> and int-mask-of<...>
|
2020-10-30 13:28:45 -04:00 |
|
Matt Brown
|
82f35c1454
|
Ensure Stringable is always available to tests that need it
|
2020-10-29 19:41:10 -04:00 |
|
Matt Brown
|
5c784dc7cb
|
Fix #4435 - ensure casts are always flow-sensitive
|
2020-10-28 14:06:05 -04:00 |
|
Matt Brown
|
fce5c26600
|
Remove subpar test
|
2020-10-28 13:55:51 -04:00 |
|
Matt Brown
|
f43dba8c4c
|
Use more accurate comparison for non-empty-lists
|
2020-10-28 13:32:55 -04:00 |
|
Matt Brown
|
a3755a1d1f
|
Fix tests
|
2020-10-27 22:29:49 -04:00 |
|
Matt Brown
|
aeeb1e6b90
|
Fix test type
|
2020-10-27 18:10:53 -04:00 |
|
Matt Brown
|
d00a02a06b
|
Fix #4429 - any class with a __toString method in PHP8 assumed to implement Stringable
|
2020-10-27 15:41:04 -04:00 |
|
Matt Brown
|
d27d86a84c
|
Fix #4422 - be aware of nested template params
|
2020-10-27 10:01:17 -04:00 |
|
Matt Brown
|
8dd5dc5b72
|
Improve algebra handling a little better
|
2020-10-26 16:34:56 -04:00 |
|
Matt Brown
|
d3464cb22a
|
Fix #4418 - improve try analysis for mixed, too
|
2020-10-26 09:05:48 -04:00 |
|
Matt Brown
|
462f8ba32b
|
Fix #4397 - allow offsetGet on inside isset
|
2020-10-25 22:16:43 -04:00 |
|
Matt Brown
|
b6dbc34523
|
Track final-ness of class when evaluating trait returns
|
2020-10-25 12:20:18 -04:00 |
|
Matt Brown
|
18f3a3721f
|
Fix #4414 - allow multiple @psalm-assert-if-true on same var
|
2020-10-25 10:49:39 -04:00 |
|
Matt Brown
|
94e26b2257
|
Empty checks variables are really falsy checks
|
2020-10-24 12:46:27 -04:00 |
|
Matt Brown
|
a832d77d73
|
Add logic to weed out unnecessary clauses
|
2020-10-24 11:31:36 -04:00 |
|
Matt Brown
|
f8eee22f77
|
Add basic support for PHP attributes
Ref #4367 - supports creation and argument checks
|
2020-10-24 00:10:22 -04:00 |
|
Matt Brown
|
f3cc7a7f2f
|
Break apart ReflectorVisitor
|
2020-10-23 19:53:04 -04:00 |
|
Matt Brown
|
1c836ad2fb
|
Invalidate signature types when use changes
|
2020-10-22 18:07:27 -04:00 |
|
Matt Brown
|
ad5a8c247b
|
Fix #4386 - fix issues with property promotion
|
2020-10-21 14:41:15 -04:00 |
|
feek
|
cc684eeccd
|
feature: ensure universal object crate class exists (#4375)
|
2020-10-20 17:17:49 -04:00 |
|
Matt Brown
|
f72e2d7de5
|
Fix #4374 - prevent paradox and allow Psalm to understand more assignments in conditionals
|
2020-10-20 14:43:05 -04:00 |
|
Matt Brown
|
66780716aa
|
Fix #3625 - getIterator call is used inside loop
|
2020-10-20 10:59:09 -04:00 |
|
Matt Brown
|
e7d1fa6798
|
Fix #4372 - count implicitly-used short-closure vars as used
|
2020-10-20 09:32:08 -04:00 |
|