ee8c5c9c35
Remove some array_values
2021-11-26 21:47:17 +01:00
1129ab1475
Raise RedundantCast when using array_values on a list
2021-11-26 21:47:14 +01:00
orklah
3bc06a8eab
Taint can't transmit through numerics nor bool
2021-11-25 22:40:01 +01:00
orklah
b42c2814a9
Merge pull request #6971 from orklah/empty-keys
...
fix counting array properties when some are Never
2021-11-23 20:11:47 +01:00
orklah
eca56c0c1a
Merge pull request #6972 from orklah/unused-throws
...
prevent Psalm from considering throwing methods as unused just because they're immutable
2021-11-22 22:00:55 +01:00
orklah
1c1e352e5f
prevent Psalm from considering throwing methods as unused just because they're immutable
2021-11-22 21:29:57 +01:00
orklah
0d47722195
fix counting array properties when some are Never
2021-11-22 21:13:25 +01:00
orklah
79fa7f5993
Merge pull request #6953 from orklah/callstatic-pure
...
check __callStatic purity instead of the pseudoMethod purity
2021-11-21 23:02:07 +01:00
orklah
3e56e859a9
fix inheritance
2021-11-21 21:53:24 +01:00
orklah
41fd460db5
check __callStatic purity instead of the pseudoMethod purity
2021-11-21 13:51:19 +01:00
Bruce Weirdan
f5b71a3a5f
Infer mb_strtolower() result as string when encoding is specified
...
`mb_strtolower()` may return characters we generally consider uppercase
when it's given the encoding argument. This PR makes Psalm to err on the
side of caution and treat the return type as `string` rather than
`lowercase-string` in this case
Refs vimeo/psalm#6908
2021-11-14 03:57:10 +02:00
Bruce Weirdan
9210bbcdd4
Forbid enum instantiation
...
Fixes vimeo/psalm#6837
2021-11-07 00:14:37 +02:00
orklah
9c9669ea44
don't consider calls to methods with assertions as Unused
2021-11-06 19:54:17 +01:00
orklah
eca530d792
don't register taints for numeric variables
2021-11-04 00:29:07 +01:00
sasezaki
e3c6464a91
accept ::class constant strings for literal argument
2021-11-03 13:44:14 +09:00
Bruce Weirdan
0cdb0dc04a
Merge pull request #6768 from zoonru/psalm-self-out-templates
2021-11-02 21:41:16 +02:00
orklah
96ae8e7600
Merge pull request #6793 from orklah/unevaluatedCode
...
emit UnevaluatedCode after exit or never returning functionlike
2021-11-01 23:41:36 +01:00
orklah
68a4f9e930
emit UnevaluatedCode after exit or never returning functionlike
2021-11-01 22:13:29 +01:00
Alexey Borzov
91ec5712ad
Add a means to switch return types based on PHP_VERSION_ID
...
As suggested in vimeo/psalm#6755
2021-10-29 22:19:38 +03:00
597487c4c9
Assert that $lhs_var_id
is defined
2021-10-28 10:50:43 +02:00
5fae548e62
Add template support to @psalm-self-out
2021-10-28 10:44:37 +02:00
9c59550e15
Fully fix recursive template parameter resolution
2021-10-27 10:58:33 +02:00
c0e6f93deb
Fix template parameter collection for child classes with fewer parameters
2021-10-26 13:06:45 +02:00
orklah
a0681a4498
flag impure calls made through __callstatic
2021-10-24 09:55:40 +02:00
orklah
64df00baba
Merge pull request #6660 from orklah/cleanup4
...
Code trimming
2021-10-14 00:12:21 +02:00
orklah
ae193ca4da
replace elvis operator by coalesce operator when applicable
2021-10-13 20:16:06 +02:00
orklah
bee5b69f7f
use Attribute feature of PHP-Parser to avoid dealing with dynamic properties
2021-10-13 13:27:56 +02:00
orklah
af414ffe59
Merge pull request #6642 from orklah/inside-conditional
...
Inside conditional
2021-10-11 20:45:14 +02:00
orklah
911076939c
Merge pull request #6628 from orklah/phpparser2
...
Php-Parser 4.13
2021-10-11 20:42:32 +02:00
orklah
c4ebc34695
suppress or use the return type
2021-10-11 17:27:52 +02:00
orklah
cc82e6cf41
suppress warning
2021-10-10 13:58:09 +02:00
orklah
1b24b0309c
reduce complexity
2021-10-10 13:52:14 +02:00
orklah
69d412bfcb
fix error message when input is possibly undefined
2021-10-10 13:42:28 +02:00
orklah
fb8b07613d
Allow sending possibly_undefined inputs to optional params
2021-10-10 12:44:04 +02:00
orklah
870ee4ff93
->args to ->getArgs
2021-10-09 23:37:04 +02:00
orklah
f62c76a334
Merge pull request #6622 from orklah/return_0
...
fix @return 0
2021-10-09 18:25:46 +02:00
orklah
a1df08f718
fix an old test
2021-10-09 18:18:15 +02:00
orklah
87a5df6043
only put offset to 0 when there's only one argument
2021-10-07 20:38:10 +02:00
orklah
3a2eddf2d7
pass the method_id to be able to set the new offset type to 0 for array_unshift
2021-10-07 09:46:49 +02:00
orklah
6627055f3b
make TypeCombiner override empty-array
2021-10-07 09:46:17 +02:00
orklah
0e83afdb86
Merge pull request #6518 from orklah/fix-truthy
...
improvements of alwaysTruthy/alwaysFalsy
2021-10-04 13:29:49 +02:00
orklah
8b07e69645
Merge pull request #6514 from zoonru/if-this-is
...
Add if-this-is
2021-10-04 09:49:26 +02:00
orklah
53c0a4e63a
cleanup
2021-10-04 00:03:06 +02:00
orklah
f8628ef68c
fix errors
2021-10-02 10:01:05 +02:00
Bruce Weirdan
2e7e343ef8
Merge pull request #6423 from orklah/count-equal-0-negated-assertion
2021-10-02 00:53:03 +03:00
Bruce Weirdan
d232cc0d02
Merge pull request #6553 from orklah/exec-leak
2021-09-30 21:32:55 +03:00
orklah
02ef33c4ac
Merge pull request #6554 from simPod/use-a
...
Use correct English articles
2021-09-30 09:37:56 +02:00
Simon Podlipsky
4f5e30fd30
Use correct English articles
2021-09-30 09:19:08 +02:00
orklah
3133cd159a
fix NPE
2021-09-29 22:30:38 +02:00
orklah
2a2e7c5e32
prevent object leaking that lead to changes in callmap
2021-09-29 22:27:34 +02:00