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 |
|
Matt Brown
|
3803bbfce0
|
Fix #4368 - improve handling of try with finally
|
2020-10-20 09:07:10 -04:00 |
|
Niclas van Eyk
|
0261024aa6
|
Initial proposal for psalm-require-{extends, implements} (#4361)
* initial implementation of psalm-require-extends
* Added @psalm-require-implements
* Added shortcode for ExtensionRequirementViolation
* Docs & cofig entries for @pasalm-require-{implements,extends}
* Added requirement violations to issues.md
|
2020-10-19 15:08:18 -04:00 |
|
Matt Brown
|
1a6b684993
|
Fix #4366 - possibly-undefined vars in finally block should not error
|
2020-10-19 09:56:38 -04:00 |
|
Matt Brown
|
fe294a4dc0
|
Don’t overwrite true flag
|
2020-10-18 01:24:36 -04:00 |
|
Matt Brown
|
0897abf5cb
|
Be more explicit about negation
|
2020-10-18 00:39:43 -04:00 |
|
Matt Brown
|
3c29ffd0b7
|
Ignore just-coerced vars
|
2020-10-17 23:35:24 -04:00 |
|
Matt Brown
|
055fe551c1
|
Suppress errors from fake statements
|
2020-10-17 18:35:55 -04:00 |
|
Matt Brown
|
c0f6afbd87
|
Improve binary op || analysis for chain
|
2020-10-17 17:16:47 -04:00 |
|
orklah
|
ceaaa39ec3
|
improve phpdoc (#4352)
|
2020-10-17 12:36:44 -04:00 |
|
Matt Brown
|
4614f4be3e
|
Unskip now-working tests
|
2020-10-17 12:30:19 -04:00 |
|