kkmuffme
db7bdd81ac
Fix https://github.com/vimeo/psalm/issues/10880
2024-04-06 10:19:18 +02:00
kkmuffme
c8f0671b33
document that @psalm-internal works for namespace + class too
...
as used in https://github.com/vimeo/psalm/issues/9584
2024-03-28 00:16:23 +01:00
Evan Shaw
6269b804a0
Don't emit MissingOverrideAttribute for implicit Stringable implementations
2024-03-26 08:31:33 +13:00
kkmuffme
1bfa684d7f
scientific and underscore notation should be quoted too, since they won't be type juggled
2024-03-23 01:18:23 +01:00
kkmuffme
cd302f040b
further improve string-int juggling handling which was previously already improved by me in https://github.com/vimeo/psalm/pull/10481
...
Also fix https://psalm.dev/r/3b401c6f88
2024-03-22 23:20:57 +01:00
kkmuffme
1b91f566c4
add tests for int-like string array keys
2024-03-22 14:25:12 +01:00
Bruce Weirdan
4266a8e044
Merge pull request #10839 from kkmuffme/misc-class-callable-errors-not-reported
2024-03-20 05:51:34 +01:00
Bruce Weirdan
375fe32992
Update tests/CallableTest.php
2024-03-20 05:32:13 +01:00
Bruce Weirdan
b47449fa89
Merge pull request #10817 from kkmuffme/promoted-properties-not-set-in-extended-constructor
2024-03-20 02:44:01 +01:00
Evan Shaw
4b707d1233
Additional array fetch test case
2024-03-20 02:18:31 +01:00
Evan Shaw
86173d29c9
When inside isset, array fetch can return null
...
This prevents false positive for various types of issues inside empty,
such as RedundantConditionGivenDocblockType and TypeDoesNotContainType.
2024-03-20 02:18:31 +01:00
kkmuffme
9cfce37785
ParamNameMismatch not reported for __construct
...
Fix https://github.com/vimeo/psalm/issues/10784
2024-03-20 02:01:34 +01:00
Bruce Weirdan
3a1b10f211
Merge pull request #10828 from jack-worman/MissingClassConstType
2024-03-20 01:58:50 +01:00
Bruce Weirdan
2c1ac98439
Merge pull request #10815 from pilif/filter_var-named-args
2024-03-20 01:49:26 +01:00
Bruce Weirdan
98eab1fe23
Merge pull request #10822 from kkmuffme/report-param-name-mismatch-for-single-param-too
2024-03-20 01:34:53 +01:00
Bruce Weirdan
c5adc51f10
Merge pull request #10824 from kkmuffme/update-misc-deprecated-arg-types-PHP81-83
2024-03-20 01:26:46 +01:00
Bruce Weirdan
e3d55268f9
Merge pull request #10838 from kkmuffme/undefined-parent-not-reported-in-callable
2024-03-20 01:08:45 +01:00
kkmuffme
e83530a6c1
report invalid callable if callable cannot be called like this from current context
...
Fix https://github.com/vimeo/psalm/issues/10823
Fix https://github.com/vimeo/psalm/issues/8509
2024-03-20 01:02:54 +01:00
kkmuffme
a59248f5a1
self, parent and static in callable are deprecated since PHP 8.2
...
Fix https://github.com/vimeo/psalm/issues/10837
2024-03-20 01:02:54 +01:00
Bruce Weirdan
f61c7e108f
Merge pull request #10805 from weirdan/10461-allow-more-callable-types-as-subtypes-of-callable
2024-03-20 00:17:24 +01:00
kkmuffme
8efbf386c3
fix bad class
2024-03-19 21:17:26 +01:00
kkmuffme
ea825c626d
Explicitly set value in config to fix warning in tests
2024-03-19 21:06:20 +01:00
kkmuffme
881546340c
fix tests running with other than called PHP binary if called with a non-default PHP binary
...
e.g. you run the tests with a php83 executable but your default php is PHP 7.4, it will suddenly change while running the tests leading to false positive errors
2024-03-19 13:26:25 +01:00
kkmuffme
ff168a9c7a
Fix undefined parent not reported in callable
...
Fix https://github.com/vimeo/psalm/issues/10836
2024-03-16 21:45:24 +01:00
Jack Worman
c7fc76ec57
MissingClassConstType
2024-03-14 14:44:11 -04:00
kkmuffme
c174e35f15
Fix https://github.com/vimeo/psalm/issues/7550
2024-03-14 00:55:49 +01:00
kkmuffme
a2307aca81
report error for single param too since named args can even be used then
2024-03-13 19:27:57 +01:00
kkmuffme
9c5af0f494
Promoted properties missing in extended __construct should report PropertyNotSetInConstructor
...
Fix #10786
2024-03-13 14:57:20 +01:00
Philip Hofstetter
debffecd13
add support for named arguments for filter_var and filter_input
...
this fixes #10809
2024-03-13 09:11:17 +01:00
Bruce Weirdan
4ea41cb69a
Merge branch '5.23.x' into 5.x
2024-03-11 21:34:28 +01:00
Aleksandr Zhuravlev
2a91bd6616
Added test for #10807
2024-03-11 20:09:30 +01:00
Bruce Weirdan
4a2cf93d7a
Don't crash on invalid templates
...
Fixes vimeo/psalm#9596
2024-03-11 01:41:52 +01:00
Bruce Weirdan
20c788911f
Allow more callable types as subtypes of callable
...
Fixes vimeo/psalm#10461
2024-03-10 22:23:01 +01:00
Bruce Weirdan
00c2fef25d
Forbid named arguments for ArrayAcccess methods
...
Fixes vimeo/psalm#10533
2024-03-10 00:06:27 +01:00
Bruce Weirdan
739d87dba7
Use wider class-string when combining class strings with intersections
...
Fixes vimeo/psalm#10799
2024-03-09 20:32:20 +01:00
Bruce Weirdan
8e1aa46195
CS fix
...
- trailing commas in calls with anon functions
- useless array docblock
Refs 8d0f603bef
Refs 6ea0278a67
2024-03-09 18:41:51 +01:00
Bruce Weirdan
667a6a7b01
Merge pull request #10779 from weirdan/10755-namespace-anon-classes
2024-03-03 16:27:49 +01:00
Bruce Weirdan
6b9b4b523d
Namespace anonymous classes
...
Fixes vimeo/psalm#10755
2024-03-03 16:21:20 +01:00
Bruce Weirdan
87e2af43f5
Use PHP_VERSION_ID
instead of version_compare()
...
As we do elsewhere
2024-03-03 15:21:22 +01:00
Bruce Weirdan
64a32721e3
Allow the test fixed in vimeo/psalm#10778
2024-03-03 15:16:39 +01:00
kkmuffme
0975c156af
set previous default setting for failing test temporarily
...
Refs https://github.com/vimeo/psalm/issues/10773
2024-03-03 15:10:03 +01:00
kkmuffme
963feb91a7
fix PHP 8 tests running with wrong --php-version=/phpVersion= if not explicitly specified
2024-03-03 15:10:03 +01:00
Bruce Weirdan
ceb290891b
Initial support for named parameters for callables
...
Fixes vimeo/psalm#10766
2024-03-02 19:17:48 +01:00
kkmuffme
a1848a1a14
@since annotations should only infer PHP version in .phpstub files or for @since 8.0.0 PHP
...
Fix https://github.com/vimeo/psalm/issues/10761
2024-03-02 11:52:51 +01:00
kkmuffme
52fb472207
Fix PHP notice - crash on invalid taint-escape
2024-02-29 17:54:51 +01:00
Evan Shaw
22f32c1392
Set inside_isset = false when analyzing arguments
2024-02-27 22:30:10 +13:00
Bruce Weirdan
60badd0a93
Merge pull request #10752 from edsrzf/array-isset-disable-dim
2024-02-27 01:11:12 +01:00
Bruce Weirdan
4eec8bb5e8
Disabled wrong test
2024-02-27 01:04:03 +01:00
Bruce Weirdan
27461c98f6
Strip null used to signify completed iterations in foreach context
...
Even though `Generator::current()` can return `null` once generator is
exhausted, `foreach()` never iterates after iterator ends, so we can
safely remove `null` (unless, of course, generator can yield `null`).
2024-02-27 01:04:03 +01:00
Bruce Weirdan
8a0bc19fa6
Forbid iterating over generators with non-nullable send()
...
Fixes vimeo/psalm#6985
2024-02-27 01:04:03 +01:00