Bruce Weirdan
f64da372f3
Simplify conditions with deep object access
2023-07-23 23:09:46 +02:00
orklah
afaef14f64
Merge pull request #10012 from ygottschalk/fix/10001-always-report-unused-baseline
...
Always report UnusedBaseline issues
2023-07-23 12:35:32 +02:00
Bruce Weirdan
eaf41a1874
Fix incorrect positions set in code action edits
...
Neovim requires positions to supply column as well as row.
2023-07-23 07:09:24 +02:00
rhertogh
8d76314a48
Fixed PHPCS errors for CommentAnalyzer (Multi-line function calls must have a trailing comma after the last parameter).
2023-07-15 19:11:15 +02:00
rhertogh
65ad2f829e
Fixed PHPCS errors for CommentAnalyzer
2023-07-15 19:04:52 +02:00
rhertogh
c362dd5af7
Ensure comment lines are terminated with a new line character (\n).
2023-07-15 19:00:28 +02:00
rhertogh
f378ef1cab
Allow comments in types (e.g. array shape)
2023-07-15 18:43:47 +02:00
rhertogh
9935b2c71e
Merge branch 'master' into inline_comments_in_types
...
# Conflicts:
# tests/CommentAnalyzerTest.php
2023-07-15 15:46:01 +02:00
klimick
38f6d45155
Do not fill template result when arg is unpacked
2023-07-11 11:10:48 +03:00
klimick
9fccf201e3
Fix callable without params inference
2023-07-11 01:01:31 +03:00
Yannick Gottschalk
867290cd06
Always report UnusedBaseline issues
2023-07-10 14:09:11 +02:00
rhertogh
f7fb2c8809
Merge branch 'master' into allow_space_before_array_shape_opening_brace
2023-07-09 14:32:28 +02:00
rhertogh
2285c9d4bd
Fixed codestyle for CommentAnalyzer and use plain instead of multibite string functions
2023-07-06 23:54:50 +02:00
rhertogh
356e6d7bbd
First setup to allow comments in types (e.g. array shape)
2023-07-06 23:40:13 +02:00
kkmuffme
9fd590685c
fix "days" ignore falsable return not ignored correctly
...
see Reflection.php, where the same condition was used already, but was insufficient
2023-07-06 08:21:27 +02:00
rhertogh
242a38c184
Allow space before array shape opening brace and added unit tests for \Psalm\Internal\Analyzer\CommentAnalyzer::splitDocLine()
2023-07-06 00:01:00 +02:00
kkmuffme
8d8adefb6c
no error for printf with only 1 arg
...
Fix https://github.com/vimeo/psalm/issues/9987
2023-07-03 22:59:02 +02:00
kkmuffme
b4126326eb
make stubbed constant types configurable with comment
...
Fix https://github.com/vimeo/psalm/issues/4024
2023-07-03 22:28:25 +02:00
orklah
27798e69a0
Merge pull request #9970 from kkmuffme/missing-composer-lock-should-not-invalidate-cache-created-with-missing-composer-lock
...
Missing composer lock should not invalidate cache created with missing composer lock
2023-07-03 21:42:47 +02:00
orklah
a83c3fe325
Merge branch 'master' into missing-composer-lock-should-not-invalidate-cache-created-with-missing-composer-lock
2023-07-03 21:02:00 +02:00
orklah
9575bc319c
Merge branch 'master' into fix/9968-exhume-enum
2023-07-03 20:59:26 +02:00
orklah
3e54feb9b4
Merge pull request #9964 from ygottschalk/fix/phpparser-deprecation-name-parts
...
Fix/phpparser deprecation name parts
2023-07-03 20:59:09 +02:00
Yannick Gottschalk
e819a608fb
Added issue suppression
2023-07-03 10:40:54 +02:00
Yannick Gottschalk
42b3736c39
Fixed psalm self test
2023-07-03 10:28:16 +02:00
Yannick Gottschalk
1787960027
Fixed exhuming enums as enums, not as classes
2023-07-03 09:57:14 +02:00
orklah
8d1876a8a3
Merge pull request #9981 from kkmuffme/fix-replace-functions-return-type-provider-less-specific
...
fix mixed replace return types for arrays
2023-07-02 12:59:01 +02:00
orklah
53ce62bf28
Merge pull request #9975 from kkmuffme/sprintf-single-arg-splat-array
...
Fix sprintf single arg splat array
2023-07-02 10:08:08 +02:00
kkmuffme
0377dd9eda
code style
2023-07-02 09:45:55 +02:00
kkmuffme
d24df1a077
improve config validation and fix wrong condition
2023-07-02 09:00:53 +02:00
kkmuffme
7593b5bdc6
more code style and shepherd
2023-07-02 08:42:05 +02:00
kkmuffme
c2388b4d90
fix failing tests and shepherd
2023-07-02 08:33:43 +02:00
Roland Franssen :)
b525f9cf70
PHPCBF CAN FIX THE 1 MARKED SNIFF VIOLATIONS AUTOMATICALLY
2023-07-01 17:01:49 +02:00
Roland Franssen :)
bf31ffbd92
Update Psalm.php
2023-07-01 16:56:33 +02:00
Roland Franssen :)
f07cdfc129
Update Psalm.php
2023-07-01 16:50:25 +02:00
Roland Franssen :)
33b0693c4f
ugh
2023-07-01 16:47:16 +02:00
Roland Franssen :)
010306fda8
Update Psalm.php
2023-07-01 14:00:12 +02:00
Roland Franssen :)
ce9d9db115
Update Psalm.php
2023-07-01 13:54:15 +02:00
Roland Franssen :)
52c629c331
infer --debug in GHA
2023-07-01 13:48:58 +02:00
Roland Franssen :)
8ed4f94988
Infer output format from GITHUB_ACTIONS env
...
aka --output-format=github
2023-06-30 21:45:11 +02:00
kkmuffme
09a3b4b32c
code style
2023-06-30 17:14:13 +02:00
kkmuffme
26eb870e47
fix mixed replace return types for arrays
...
* remove useless replace return type provider code that returned incorrect type for array replacements and was worse duplicate of existing stubs
* require preg patterns to be non-empty-strings as otherwise it will throw a PHP notice
* improve return type of array replacements to be more correct (not fully correct due to https://github.com/vimeo/psalm/issues/5994#issuecomment-1614601590 )
2023-06-30 17:08:03 +02:00
kkmuffme
62475cb4e8
code style
2023-06-29 14:42:23 +02:00
kkmuffme
2dd26cb0f1
Fix sprintf single arg splat array
...
Fix https://github.com/vimeo/psalm/issues/9873#issuecomment-1612901224
2023-06-29 13:47:42 +02:00
Yannick Gottschalk
5a2f7c0a71
Use getParts() instead of $parts on PhpParser\Node\Name.
...
also use getFirst(), getLast() and getString()
2023-06-28 03:13:25 +02:00
kkmuffme
b877aa7096
misc consistency improvements for cache
2023-06-27 23:23:18 +02:00
kkmuffme
0584339657
if cache was created with missing composer.lock file use it too instead of ignoring it
2023-06-27 23:16:06 +02:00
Yannick Gottschalk
f93d23899d
Fix glob CallMap and stub to prevent crash on alpine (and possibly other systems)
2023-06-25 13:17:13 +02:00
kkmuffme
d4dcee3203
code style
2023-06-24 18:11:15 +02:00
kkmuffme
0535c6b877
PHP 7 format with only placeholders isn't falsable if valid
...
limit tests to PHP 8 to avoid having to create them twice and add specific test for Issue 9941
2023-06-24 18:11:15 +02:00
kkmuffme
c5fee532f3
consistently ignore falsable return, remove unused suppress with new types
2023-06-24 18:11:15 +02:00
kkmuffme
7f0217d1e3
fix incorrect default stubs
2023-06-24 18:11:15 +02:00
kkmuffme
28b9e8dd95
run format checks for splat too
2023-06-24 18:11:15 +02:00
kkmuffme
9599c240b3
code style
2023-06-24 18:11:15 +02:00
kkmuffme
52ca871057
fix try/catch variable must be initialized
2023-06-24 18:11:15 +02:00
kkmuffme
fad17686bd
Fix false positive for array unpacking
...
Fix https://github.com/vimeo/psalm/issues/9873
2023-06-24 18:11:15 +02:00
kkmuffme
f2a9e09136
reorganize code for PHP 7 to also check for invalid argument and reduce duplicate
2023-06-24 18:11:15 +02:00
kkmuffme
151f101f7c
fix PHP 7 sprintf too many arguments false positive
...
Fix https://github.com/vimeo/psalm/issues/9941
2023-06-24 18:11:15 +02:00
Tinjo Schöni
a737ca8072
Consider a property type change as a signature change
2023-06-24 15:31:15 +02:00
Tinjo Schöni
1b1915eaf5
Make file storage cache handling consistent
2023-06-24 14:29:28 +02:00
Tinjo Schöni
9939cae52d
Support project analysis with file diffing in tests
2023-06-24 14:29:28 +02:00
Maximilian Bösing
f482a5cb31
bugfix: pass non-empty
information when reconciling iterable
...
Signed-off-by: Maximilian Bösing <2189546+boesing@users.noreply.github.com>
2023-06-23 21:15:37 +02:00
orklah
01e2ac78d4
Merge pull request #9950 from orklah/iterableInt
...
fix reconciliation between a list and iterable
2023-06-22 23:45:39 +02:00
orklah
8929f8b4d8
fix reconciliation between a list and iterable
2023-06-22 23:37:40 +02:00
orklah
bb28c5aa64
Merge pull request #9932 from ygottschalk/fix/cache-fail-silent
...
Fix/cache fail silent
2023-06-21 21:09:56 +02:00
orklah
03b91561a7
Merge pull request #9935 from ygottschalk/fix/cache-config-warnings
...
Make config warn about missing cache related functions
2023-06-21 21:08:39 +02:00
Yannick Gottschalk
dbc4f48e2b
Make config warn about missing cache related functions
2023-06-20 12:40:08 +02:00
Yannick Gottschalk
503c38df03
Make cache writes fail silent
2023-06-20 11:54:05 +02:00
Yannick Gottschalk
66848306f9
Make cache fail silent
2023-06-20 11:51:24 +02:00
Tinjo Schöni
1161edfa33
Invalidate cached methods when referenced files are deleted
2023-06-20 01:01:24 +02:00
Tinjo Schöni
3e2de9d152
Implement a way to test cache issues
2023-06-20 01:01:23 +02:00
orklah
8e636086b3
put config to true to prevent deprecations for new config files ( #9857 )
...
* put config to true to prevent deprecations for new config files
2023-06-19 22:02:29 +02:00
orklah
8ca4110e68
Merge pull request #9930 from orklah/volatile_cache
...
remove StementsVolatileCache for perf reasons
2023-06-19 22:00:19 +02:00
orklah
da8c1da8be
remove StementsVolatileCache for perf reasons
2023-06-19 21:44:00 +02:00
orklah
1b571a1649
improve perfs for switch by not creating reverse assertions against constants
2023-06-19 21:24:46 +02:00
kkmuffme
9d1558b3ca
make compressor configurable
...
Fix https://github.com/vimeo/psalm/issues/9905
Suppress throws for igbinary_unserialize like it was done for @unserialize
2023-06-18 20:22:02 +02:00
orklah
e2dde5d200
Merge pull request #9922 from robchett/elseif_shouldnt_be_modifying_outer_scope
...
Don't update types of the outer scope when in an elseif conditional
2023-06-18 11:00:16 +02:00
orklah
b5159517ce
Merge pull request #9920 from robchett/CoreGenericAttributes
...
Add a stub file for Attributes defined by PHP
2023-06-17 22:11:26 +02:00
robchett
4600d2b224
Fix line lenght
2023-06-17 14:13:04 +01:00
robchett
7792b6c36c
Don't update types of the outer scope when in an elseif conditional
2023-06-17 13:36:29 +01:00
robchett
5fc48bbb62
Add a stub file for Attributes defined by PHP
2023-06-17 12:26:56 +01:00
robchett
721b65ce2f
Add Type::getIntRange
2023-06-17 12:24:09 +01:00
robchett
338b50a959
Change __LINE__ to a positive-int
2023-06-17 12:24:09 +01:00
orklah
eb64a471c4
Merge pull request #9903 from ygottschalk/fix/9827-union-empty-array-and-false
...
Fixes #9827
2023-06-15 21:19:44 +02:00
kkmuffme
16aaa3ae2b
regex cleanup
2023-06-13 22:07:51 +02:00
kkmuffme
d4732f118e
fix minor trim bug in original code and small speed up
2023-06-13 22:04:39 +02:00
kkmuffme
e75d514ada
speed up on unix
2023-06-13 21:55:43 +02:00
kkmuffme
9a4d7aa719
additional gains
2023-06-13 21:52:03 +02:00
kkmuffme
3f3890382b
replace all at once
2023-06-13 21:19:52 +02:00
kkmuffme
5ac3ed08df
additional ones
2023-06-13 20:37:33 +02:00
kkmuffme
394a40b0f7
remove preg, minor performance gain (up to 1%)
2023-06-13 20:29:20 +02:00
kkmuffme
51fd63cfbb
fix CI warnings
2023-06-13 16:59:25 +02:00
kkmuffme
96988ea5ec
code style
2023-06-12 19:44:22 +02:00
kkmuffme
d0f14ba19e
ignore complex placeholders for now
...
Fix https://github.com/vimeo/psalm/issues/9900
Fix https://github.com/vimeo/psalm/issues/9901
Fix original core stubs sprintf returning a wrong type too (unrelated to return type provider) for placeholders that are always empty
2023-06-12 19:44:22 +02:00
kkmuffme
9bc4752e29
add checks for complex empty format and make return type more specific
2023-06-12 19:44:22 +02:00
kkmuffme
9232e4e76b
code style
2023-06-12 19:44:22 +02:00
kkmuffme
697d06b24d
fix empty format return type, add errors for empty format or format without placeholders
2023-06-12 19:44:22 +02:00
kkmuffme
f2168de96e
fix printf bug
2023-06-12 19:44:22 +02:00
orklah
715a91d15c
Merge pull request #9889 from dkarlovi/feat/cache.gz
...
feat: cache.gz
2023-06-12 18:50:01 +02:00
Yannick Gottschalk
40ce0cf7d7
Fixes #9827
2023-06-12 15:25:17 +02:00
orklah
b6cba5a377
Merge pull request #9877 from kkmuffme/sprintf-improve-return-param-type-validation
...
Sprintf improve return param type validation
2023-06-11 13:08:24 +02:00