Bruce Weirdan
|
e552925af6
|
Emit separate type of issue when foreach value is unused (#5932)
* Emit separate type of issue when foreach value is unused
Fixes vimeo/psalm#5929
* Fixed var name case sensitivity
|
2021-06-17 00:40:24 -04:00 |
|
Matt Brown
|
8509999f3f
|
Remove some unused return values
|
2021-06-10 12:09:46 -04:00 |
|
Bruce Weirdan
|
6abce3525a
|
Enforce use sort (#5900)
|
2021-06-07 22:55:21 -04:00 |
|
Andrey Klimenko
|
e5e397a6c5
|
Type negation in generic context (#5879)
* Type negation in generic context
* Fix cs
|
2021-06-03 01:06:25 -04:00 |
|
orklah
|
de1bb954cf
|
Handle the case where a switch return on each case (#5819)
* Handle the case where a switch return on each case
* introduce a "hybrid" case exit type for cases where there's both "none" and something else
|
2021-05-23 16:24:29 -04:00 |
|
Matt Brown
|
7354ec9903
|
Fix #5298 - improve handling of method that may write properties
|
2021-05-23 16:22:52 -04:00 |
|
Matt Brown
|
f6bdeb6234
|
Fix switch-with-continue bug
|
2021-05-17 07:27:58 -05:00 |
|
Matthew Brown
|
bb8ce8817d
|
Simplify a bit of logic in switch analysis
|
2021-05-13 17:31:17 -04:00 |
|
Matt Brown
|
0f5b117534
|
Migrate ClassLikeName options to object
|
2021-04-30 15:01:33 -04:00 |
|
Matt Brown
|
40b6860881
|
Workaround Phar compaction error
|
2021-04-18 23:28:34 -04:00 |
|
Matt Brown
|
642f2f435c
|
Fix #5640 - improve handling of assignments in conditional
|
2021-04-18 16:16:54 -04:00 |
|
Matt Brown
|
bb0bfda7c5
|
Improve mic drop variable name
|
2021-04-18 15:50:50 -04:00 |
|
Matt Brown
|
0acc02e184
|
Use more descriptive names for properties & variables of if/else handling
|
2021-04-18 15:38:12 -04:00 |
|
Matt Brown
|
929f931c14
|
Taint mixed keys too
|
2021-03-24 16:42:30 -04:00 |
|
Matt Brown
|
10ccbdd8be
|
Add tainting for array keys
Fixes #5470
|
2021-03-24 15:32:56 -04:00 |
|
Bruce Weirdan
|
185827a7ab
|
Continue analysis after unknown exception being caught (#5348)
Fixes vimeo/psalm#5188
|
2021-03-11 00:08:02 -05:00 |
|
orklah
|
5191dac3fa
|
Introduce Virtual Nodes in order to differentiate real nodes in plugins (#5222)
|
2021-02-15 16:18:41 -05:00 |
|
Matt Brown
|
2dc86651a4
|
Check context var exists
|
2021-02-09 14:13:24 -05:00 |
|
Matt Brown
|
b9dac8c46c
|
Add slashes
|
2021-02-09 10:57:19 -05:00 |
|
Matt Brown
|
a955dabfe5
|
Account for context var not existing
|
2021-02-09 10:46:33 -05:00 |
|
Matt Brown
|
ecfc4726d7
|
Limit removal of vars further
|
2021-02-09 00:53:09 -05:00 |
|
Matt Brown
|
ad0b575080
|
Better fix for #5180
|
2021-02-08 23:31:49 -05:00 |
|
|
81b75a7884
|
Check iterator types on yield from (#5042)
* Check iterator types on yield from
* Switch to NodeAbstract
* Make Foo iterable
|
2021-01-20 17:41:15 -05:00 |
|
Matt Brown
|
2f58c6afc8
|
Fix #5020 - remove previous catch var assertions when assigning inside catch
|
2021-01-17 14:28:28 -05:00 |
|
orklah
|
f9fccb2b2d
|
implement DTO for plugins (#4881)
* implement DTO for plugins
* introduce EventHandler + reintroduce legacy API for plugins
|
2021-01-06 09:05:53 -05:00 |
|
orklah
|
1d9987e0ed
|
fix phpdoc (#4905)
|
2020-12-29 11:42:41 +00:00 |
|
Matt Brown
|
a27c674cee
|
Add test for #4825
|
2020-12-10 13:51:49 -05:00 |
|
Matt Brown
|
8cae4047b0
|
Fix #4825 - check for finally var set
|
2020-12-10 11:48:43 -05:00 |
|
Matt Brown
|
e702e472fc
|
Support simple list assignment in foreach
Ref #4741
|
2020-12-06 19:14:52 -05:00 |
|
Matt Brown
|
2feba22a00
|
Make more try vars potentially undefined
Fixes #4764
|
2020-12-03 11:44:10 -05:00 |
|
Matt Brown
|
1a629ccc82
|
Fix a few issues
|
2020-12-01 18:26:15 -05:00 |
|
Matt Brown
|
f5494bc407
|
Fix typos caused by Macbook Pro’s bad keyboard
|
2020-12-01 14:14:09 -05:00 |
|
orklah
|
f0c0ac0616
|
handle return flag for a try/catch/finally (#4746)
* handle return flag for a try/catch/finally
* add tests for psalter
|
2020-12-01 12:55:27 -05:00 |
|
Matt Brown
|
15a5bd5e29
|
Simplify storage and retrieval of extended template params
|
2020-11-29 15:05:32 -05:00 |
|
Matt Brown
|
4af7e818b2
|
Simplify ArrayFetchAnalyzer::getArrayAccessTypeGivenOffset
Ref #4714
|
2020-11-27 23:36:47 -05:00 |
|
Matt Brown
|
5f065d3d74
|
Turn template bound tuples into object
Ref #4714
|
2020-11-27 11:43:30 -05:00 |
|
orklah
|
ae0486529e
|
Unused psalm-suppress (#4646)
|
2020-11-21 17:39:40 -05:00 |
|
Matt Brown
|
c562e1dd52
|
Don’t taint foreach keys with array-fetch
We could use array-keyfetch or similar, but for now gives false-positives
|
2020-11-19 19:08:59 -05:00 |
|
Matt Brown
|
236292ff05
|
Fix #4600 - set attributes in a bunch of places
|
2020-11-18 12:44:59 -05:00 |
|
Matt Brown
|
24c9702aa5
|
Remove unused imports
|
2020-11-08 12:31:21 -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
|
b8f5d16e9f
|
Consolidate similar functionality
|
2020-11-07 00:58:20 -05:00 |
|
Matt Brown
|
bb5b5142d6
|
Add more info to mic drop code
|
2020-11-06 21:36:38 -05:00 |
|
Matt Brown
|
45b3dce631
|
Break apart IfElseAnalyzer
|
2020-11-06 21:01:17 -05:00 |
|
Matt Brown
|
3359e7699a
|
Rename IfAnalyzer
|
2020-11-06 20:51:14 -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
|
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
|
d3464cb22a
|
Fix #4418 - improve try analysis for mixed, too
|
2020-10-26 09:05:48 -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 |
|