1
0
mirror of https://github.com/danog/psalm.git synced 2024-12-15 02:47:02 +01:00
Commit Graph

4361 Commits

Author SHA1 Message Date
Bruce Weirdan
ac903c5634
Include enum cases in const wildcards
Refs vimeo/psalm#6471
2021-11-28 05:49:39 +02:00
Bruce Weirdan
03aea28c73
Merge pull request #6995 from vimeo/enum-constants 2021-11-27 21:49:13 +02:00
Bruce Weirdan
1797716cf7
Merge pull request #7006 from weirdan/show-php-version 2021-11-27 20:21:20 +02:00
Bruce Weirdan
97445b52f3
Correctly process constant references on enum-valued variables 2021-11-27 04:32:32 +02:00
Bruce Weirdan
d19aad7db1
Display target PHP version
Historically it was often not quite clear to users what PHP version
Psalm assumes, and why. This PR addresses this issue by printing the
version and where we got it from right before scanning the files.
2021-11-27 02:18:09 +02:00
Bruce Weirdan
3441197c60
Merge pull request #7004 from weirdan/drop-unused-property 2021-11-27 01:52:14 +02:00
Bruce Weirdan
2afced3101
Drop unused $fq_classlike_names property 2021-11-27 00:09:58 +02:00
orklah
72de3b66cc
Merge pull request #7003 from rarila/no-phpdoc-return-void
Use return type hints instead of php doc "@return void"
2021-11-26 23:03:28 +01:00
orklah
a27e729263
Merge pull request #7002 from orklah/listkeyedarray
Disable list flag for TKeyedArray after unset
2021-11-26 21:32:55 +01:00
ralila
fdaed941ad use return type hints instead of php doc "@return void" 2021-11-26 20:59:41 +01:00
orklah
4f223db455 Disable list flag for TKeyedArray after unset 2021-11-26 20:52:34 +01:00
Bruce Weirdan
f215ed28d0
Drop special handling of constant references on enums
Internally enum cases are constants, and they should be resolved as
such.

Fixes vimeo/psalm#6994
2021-11-26 06:00:01 +02:00
orklah
2fbad1bbeb
Merge pull request #6993 from orklah/taint-numerics
Taint can't be transmitted through numerics nor bool
2021-11-25 23:20:38 +01:00
orklah
ab61eae5c9 Taint can't transmit through numerics nor bool 2021-11-25 22:51:35 +01:00
orklah
3bc06a8eab Taint can't transmit through numerics nor bool 2021-11-25 22:40:01 +01:00
orklah
b4d25cbf60
Merge pull request #6984 from orklah/enumcase-in-attribute
allow using EnumCase in an Attribute
2021-11-24 19:52:19 +01:00
orklah
049285add2 allow using EnumCase in an Attribute 2021-11-24 19:43:43 +01:00
orklah
fdf3a8dbb8
Merge pull request #6979 from orklah/6975
don't accept unresolved literal string as valid callable-strings
2021-11-23 21:41:04 +01:00
Paweł Tomulik
dac8c98613
attempt to fix #6973 2021-11-23 20:26:07 +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
9db43cdaae don't accept unresolved literal string as valid callable-strings 2021-11-23 19:54:09 +01:00
Paweł Tomulik
a7b9a241f3
attempt to fix #6937 2021-11-22 23:24:20 +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
46139272f6
Merge pull request #6952 from orklah/null_propagation_in_return
fix null propagation in return
2021-11-21 21:53:50 +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
orklah
6bdadfe0cb fix null propagation in return 2021-11-21 13:18:26 +01:00
Sebastian Kehr
511ed99e46 expand type aliases when comparing unions 2021-11-19 14:15:38 +01:00
Maximilian Bösing
6bf02657b6
qa: ensure array_merge has at least one argument
Signed-off-by: Maximilian Bösing <2189546+boesing@users.noreply.github.com>
2021-11-15 21:10:20 +01:00
Maximilian Bösing
68abcaab5c
feature: extract class constant by wildcard detection into dedicated resolver
Signed-off-by: Maximilian Bösing <2189546+boesing@users.noreply.github.com>
2021-11-15 18:27:19 +01:00
Maximilian Bösing
743f570f66
bugfix: remove preg_quote as that will also quote wildcard
Signed-off-by: Maximilian Bösing <2189546+boesing@users.noreply.github.com>
2021-11-15 18:06:39 +01:00
Maximilian Bösing
a050ff2878
bugfix: quote regular expression
Signed-off-by: Maximilian Bösing <2189546+boesing@users.noreply.github.com>
2021-11-15 17:56:40 +01:00
Maximilian Bösing
3e1be794c4
refactor: expand test cases and optimize handling of invalid class-constant references
Signed-off-by: Maximilian Bösing <2189546+boesing@users.noreply.github.com>
2021-11-15 17:56:39 +01:00
Maximilian Bösing
c6191643ab
qa: add Reconciler::RECONCILIATION_* constants
Signed-off-by: Maximilian Bösing <2189546+boesing@users.noreply.github.com>
2021-11-15 17:56:02 +01:00
Maximilian Bösing
49624169a5
bugfix: reconcile class-constant
Signed-off-by: Maximilian Bösing <2189546+boesing@users.noreply.github.com>
2021-11-15 17:53:26 +01:00
Bruce Weirdan
608e8d11fa
Merge pull request #6922 from weirdan/cases-references 2021-11-15 11:49:47 +02:00
Bruce Weirdan
0a9154b8bb
Allow references to enum cases in class constants 2021-11-15 05:56:09 +02:00
ralila
fe8f919495 Fix some CS issues 2021-11-15 04:00:38 +01:00
ralila
0d0a06e78f Avoid empty variable names instead of filtering them later 2021-11-15 03:00:08 +01:00
ralila
4fd87f2d77 Allow a comma as separator 2021-11-15 02:59:16 +01:00
ralila
7326f3b125 Remove useless brackets 2021-11-14 23:55:32 +01:00
Bruce Weirdan
45e1a1c69a
Merge pull request #6850 from gharlan/hyperlink 2021-11-14 23:20:09 +02:00
Bruce Weirdan
d61e31bbaf
Merge pull request #6912 from weirdan/mbstrotolower-produces-nonlowercase-strings-sometimes 2021-11-14 21:03:24 +02:00
Bruce Weirdan
d302ffba91
Drop duplicate constant 2021-11-14 05:19:20 +02: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
Aaron Piotrowski
1bb204db76
Fix detecting readonly promoted property visibility 2021-11-13 12:54:15 -06:00
Aaron Piotrowski
d06510833b
Fix detection of readonly on promoted properties 2021-11-13 12:37:08 -06:00