orklah
b19f0a7034
Remove empty() and use strict comparison when safe ( #4211 )
...
* replace empty usage with stricter checks
* use strict comparison when safe
* replace is_null with === null for consistency
2020-09-19 18:26:51 -04:00
Brown
1ac527bbf1
Meke staticy methods properly static
2020-09-19 18:24:36 -04:00
Brown
62d43817f6
Fix #4206 - add shortcut for if ((bool) $foo)
2020-09-19 18:15:12 -04:00
Brown
0ae436d335
Fix a couple of false-positive redundant conditions
2020-09-19 18:12:14 -04:00
Brown
941643ca59
Fix tests
2020-09-19 17:04:35 -04:00
Brown
72d1d799b1
Fix #4208 - array with possibly-undefined keys isn‘t really sealed
2020-09-19 15:46:54 -04:00
Brown
f973937aec
Fix #4209 - allow hinting arrow function return type
2020-09-19 14:59:19 -04:00
Brown
a8a2a4cb66
Fix #4210 - fix __invoke declaration tracing
2020-09-19 14:18:52 -04:00
Brown
94ed53b25a
func_num_args is pure
...
fixes #4215
2020-09-19 13:58:29 -04:00
orklah
5db75dfbf2
align default value with documentation ( #4188 )
2020-09-17 21:40:19 -04:00
Brown
363887a445
Add explicit offset
...
Fixes #4202
2020-09-17 21:35:30 -04:00
Daniel Badura
7d5dbd3f38
add random_int as stub, returns positive-int if min is positive-int ( #4199 )
2020-09-17 08:31:31 -04:00
orklah
191495328a
Fix errors in return types ( #4189 )
...
* FunctionLikeAnalyzer::verifyReturnType returns void
* ArrayFunctionArgumentsAnalyzer::checkArgumentsMatch returns void
* AssertionFinder::scrapeAssertions can't return null
2020-09-16 17:35:55 -04:00
Brown
dda013dc2e
Only refine for matching closure union members
...
Ref #4136
2020-09-15 09:40:27 -04:00
Brown
0b209864fe
Improve accuracy of array_filter
2020-09-14 13:31:53 -04:00
Brown
8d7fe83e2a
Improve array_merge return type
2020-09-14 13:06:15 -04:00
Brown
b10c1ac280
Fix style
2020-09-14 12:19:30 -04:00
Brown
1f3215d36b
Support more array intersections in type parsing
2020-09-14 12:13:33 -04:00
Brown
02b725f8a2
Add back suppression
2020-09-14 11:02:04 -04:00
Brown
a37a3c5c96
Make sure all written entries are correctly sorted
2020-09-14 11:00:15 -04:00
Brown
17a0ecb60e
Fix regression – detect unused params with defaults again
2020-09-14 10:58:36 -04:00
Brown
1df3c9365c
Fix template check
2020-09-14 10:00:09 -04:00
Brown
79f4e9c354
Do no writing when saving parser cache in tests
2020-09-14 09:56:39 -04:00
Brown
77e84b3817
Fix a few more things
2020-09-13 23:28:31 -04:00
Brown
c4450b930c
Fix various things
2020-09-13 22:39:03 -04:00
Brown
3f911662f7
Fix stub test
2020-09-13 22:13:39 -04:00
Brown
249903e18a
Fix style issues
2020-09-13 21:45:07 -04:00
Brown
56bae3b587
Add check for strpos dictionaries
...
Ref #4070
2020-09-13 21:42:44 -04:00
Brown
8f8dbfbd72
Fix #4122 - detect yield in function arguments
2020-09-13 17:13:26 -04:00
Brown
f180fb23bc
Fix #4178 - always detect missing property types
2020-09-13 16:50:50 -04:00
Bruce Weirdan
689027c92d
Support multiple issue types in @psalm-suppress
( #4179 )
...
* Accept multiple issue names in `@psalm-suppress`
Fixes vimeo/psalm#1575
* Accept multiple issue types on statement docblocks as well
* Proper highlighting of individual issues in compound suppressions
2020-09-13 16:41:14 -04:00
Bruce Weirdan
cd110c7e2f
Added @psalm-stub-override
for classlikes and methods ( #4177 )
...
Fixes vimeo/psalm#1252
2020-09-13 16:40:31 -04:00
orklah
da47588f91
replace return;
by return null;
in every non-void method, add return null;
when mising, add return types, remove redundant phpdoc ( #4176 )
2020-09-13 16:39:06 -04:00
Brown
ded9237176
Fix bad error flagging
2020-09-13 16:38:32 -04:00
Brown
9ed09d2679
Fix #4127 - improve error message for unused closure var
2020-09-12 17:03:11 -04:00
ygottschalk
5b0c9b1a28
added array-size max constraint to greater check ( #4175 )
...
added a few unit tests
2020-09-12 16:13:13 -04:00
Brown
09d22cb05c
Fix #4169 - add appropriate bounds check
2020-09-12 11:33:26 -04:00
Claas Augner
3f8c91a64e
fix(docs): add missing issues to error levels ( #4171 )
2020-09-12 11:25:41 -04:00
Toshiyuki Goto
ad437c5265
Workaround to PhpScoper group use bug in Box ( #4174 )
2020-09-12 11:24:40 -04:00
orklah
ead107fa9e
More return types ( #4173 )
...
* add native return types
* redundant phpdoc
2020-09-12 11:24:05 -04:00
Lexidor Digital
43d91665c6
[easy fix] Update example for @no-named-arguments ( #4170 )
...
The text mentions `@no-named-arguments`, but the example shows `@no-named-params`.
`@no-named-params` can not be found in the psalm source.
Updated example to `@no-named-arguments`.
[https://github.com/vimeo/psalm/search?q=no-named-params&unscoped_q=no-named-params ](search for no-named-params) 1 result (this example)
[https://github.com/vimeo/psalm/search?q=no-named-arguments&unscoped_q=no-named-arguments ](search for no-named-arguments) 2 results (this example and in CommentAnalyzer.php)
2020-09-11 23:36:10 -04:00
Adrien LUCAS
107f596f24
Document Xdebug usage ( #4164 )
...
* Document Xdebug usage
* Change to non-persistent approache
Co-authored-by: Bruce Weirdan <weirdan@gmail.com>
Co-authored-by: Bruce Weirdan <weirdan@gmail.com>
2020-09-11 23:35:37 -04:00
Brown
6d8641ac09
Fix documentation
2020-09-10 22:58:26 -04:00
Brown
6ffe471525
Make new InvalidLiteralArgument issue for strpos refs
...
Ref #4070
2020-09-10 22:54:32 -04:00
Brown
eda426a594
Improve unique issue solution
2020-09-10 22:54:30 -04:00
Brown
00ad09816f
Fix tests
2020-09-10 19:05:47 -04:00
Brown
aaede393d4
Fix #4070 - prevent literal strpos argument
2020-09-10 18:28:34 -04:00
Brown
2100dbd8aa
Fix #4167 - allow many issues for the same position
2020-09-10 17:41:45 -04:00
Andrey Savchenko
3e1758deea
Changed path output in PhpStorm report to absolute ( #4159 )
...
Needs to be absolute to be recognized and linked up by PhpStorm terminal (at least for me on Windows).
See #3271 , https://youtrack.jetbrains.com/issue/IDEA-154439
2020-09-08 14:29:46 -04:00
Craig Francis
993e112236
Additional MySQL sinks, ref Issue #4155 ( #4158 )
2020-09-08 11:54:23 -04:00