orklah
3a85f49268
Merge pull request #7673 from VincentLanglet/pdoException
...
PDOException extends RuntimeException and can use int code errors
2022-02-23 13:45:57 +01:00
Bei Xiao
c9666bbeb5
Reduce method complexity
2022-02-22 20:50:43 +02:00
Bei Xiao
6a3b5679fe
Support interfaces extending enums
2022-02-22 16:04:56 +02:00
Aaron Piotrowski
97b5685f55
Fix first-class callable in loop
2022-02-21 18:37:20 -06:00
orklah
1a5b120081
Merge pull request #7713 from AndrolGenhald/bugfix/self-in-attribute
...
Use current context when analyzing attributes
2022-02-21 18:50:22 +01:00
AndrolGenhald
04c0db5aff
Use current context when analyzing attributes ( fixes #7710 ).
2022-02-21 10:38:50 -06:00
m1ke
628bf584c2
Alter config file to actually load threads param
2022-02-21 11:07:21 +00:00
AndrolGenhald
0476ca7844
Fix trailing commas for PHP < 7.3.
2022-02-18 08:44:51 -06:00
AndrolGenhald
ea2f452c25
Analyze attribute statements instead of constructing virtual statements.
2022-02-18 08:18:34 -06:00
a.dmitryuk
8e1e0d1e5e
style-ci
2022-02-18 10:33:35 +07:00
a.dmitryuk
dc8764153e
Throw exception if file_put_contents failed
2022-02-18 10:05:23 +07:00
87d9a01f78
Add configuration for maximum size of shaped array
2022-02-15 14:09:08 +01:00
eb3df40fbb
Add option to disable @var parsing everywhere except for properties.
2022-02-15 10:04:56 +01:00
Vincent Langlet
694157b2e0
PDOException extends RuntimeException and can use int code errors
2022-02-14 21:04:10 +01:00
AndrolGenhald
fd0ecf2528
Rename variable to be consistent with existing convention.
2022-02-13 15:34:21 -06:00
AndrolGenhald
32c389482c
Fix issue with nested try
block and add more tests.
2022-02-13 15:30:06 -06:00
AndrolGenhald
7b1599d783
Fix false positive for unused variable in try ( fixes #7613 ).
2022-02-13 15:14:59 -06:00
Bruce Weirdan
dc776d3ada
Suppress false-positive
2022-02-13 00:48:58 +02:00
Bruce Weirdan
45a19b3f3c
Honour global function suppressions for UndefinedFunction
...
Fixes vimeo/psalm#7610
2022-02-13 00:22:55 +02:00
orklah
a3852b8a55
Merge pull request #7650 from orklah/totallytyped
...
deprecate totallyTyped
2022-02-12 09:56:39 +01:00
orklah
dbf47b16c3
deprecate totallyTyped
2022-02-12 09:30:37 +01:00
orklah
c13a536386
Merge pull request #7614 from kkmuffme/add-phpredis-stubs
...
add phpredis stubs
2022-02-11 23:15:48 +01:00
m1ke
92aedd6f7f
Fix cherry pick issues
2022-02-11 11:27:01 +00:00
m1ke
fc694d7a98
Allow psalm to load threads from the config
2022-02-11 11:23:17 +00:00
m1ke
a688bd6da3
Use config threads if lower than detected threads
2022-02-11 11:23:09 +00:00
m1ke
810880c71b
Alter order of precedence and upated docs to match
2022-02-11 11:12:36 +00:00
Office
432d0be658
load phpredis stubs
2022-02-09 15:56:51 +01:00
Bruce Weirdan
21e6371ce2
Strip colours from success message
...
Fixes vimeo/psalm#7619
2022-02-09 15:35:40 +02:00
Tomasz Kusy
124aa22fe9
Resolve __DIR__ / __FILE__ when const/variable is used for include CS fix fix fix :)
2022-02-04 20:27:45 +01:00
Tomasz Kusy
8da45aa7d8
Resolve __DIR__ / __FILE__ when const/variable is used for include CS fix fix
2022-02-04 20:26:06 +01:00
Tomasz Kusy
b73f2c96d8
Resolve __DIR__ / __FILE__ when const/variable is used for include CS fix
2022-02-04 19:43:55 +01:00
Tomasz Kusy
bcbfbed072
Resolve __DIR__ / __FILE__ when const/variable is used for include
2022-02-04 19:39:39 +01:00
phptest2
582624a932
improving error message for Could not resolve config path
...
$directory_path is false, so better use $prospective_directory_path in the error message.
2022-02-03 17:58:12 +01:00
Vincent
3c3e692e7e
AtomicStaticCallAnalyzer: clear tmp var from context ( fix #7556 )
2022-02-02 13:51:54 +01:00
orklah
1c2ffc81c2
tweaks
2022-02-01 22:49:20 +01:00
Bruce Weirdan
dadb1f2167
Merge pull request #7539 from vimeo/revert-7363-81_returntypewillchange
2022-02-01 01:03:09 +02:00
Bruce Weirdan
f61193b798
Reinstate MethodSignatureMustProvideReturnType
...
It's never emitted, but is there for BC.
2022-01-31 23:38:15 +02:00
orklah
68e67aeb10
Merge pull request #7546 from orklah/impure-callable
...
Handle first class callable on unknown functions
2022-01-31 22:02:35 +01:00
orklah
a598efb4ab
Handle first class callable on unknown functions
2022-01-31 21:36:01 +01:00
adrew
e284b91b82
Remove redundant flag from SimpleTypeInferer
2022-01-31 23:03:34 +03:00
adrew
121a801616
Fix object constant inference
2022-01-31 23:03:34 +03:00
orklah
48e09ab308
fix
2022-01-31 20:55:53 +01:00
orklah
fc281672ea
fix wrong detection of purity
2022-01-31 20:52:25 +01:00
Bruce Weirdan
603714518b
Revert "PHP 8.1: Report missing typehints in overridden native methods"
2022-01-31 14:37:42 +02:00
Oliver Hader
1e072cb904
[TASK] Add AfterFunctionLikeAnalysisEvent::getFunctionlikeStorage
...
AfterFunctionLikeAnalysisEvent's method `getClasslikeStorage` actually
returned the current `FunctionLikeStorage`. This change streamlines the
naming and adds corresponding `getFunctionlikeStorage` method.
Method `getClasslikeStorage` is deprecated in will be removed
in Psalm v5.0.
2022-01-30 16:55:39 +01:00
Vincent Langlet
854a3412fe
Use function
2022-01-30 15:32:55 +01:00
Vincent Langlet
cd3213201d
Fix
2022-01-30 15:30:40 +01:00
b30121ba1c
Deprecate template_extended_count
2022-01-26 20:21:00 +01:00
orklah
3f799fc5fd
fix CS issue
2022-01-25 20:58:40 +01:00
ElisDN
9f01c16ae9
Fix array_replace type
2022-01-25 15:22:50 +03:00
orklah
f1c4b62f5c
Merge pull request #7414 from b2pweb/call-docblock-method-using-parent
...
Add support of docblock method using parent keyword
2022-01-24 13:02:57 +01:00
orklah
0619b404e5
Merge pull request #7390 from VincentLanglet/exceptionCode
...
Add Exception->getCode() return type provider
2022-01-24 12:56:57 +01:00
Bruce Weirdan
3a6dc9b458
Merge pull request #7431 from zoonru/disable_suppress_all
2022-01-24 11:25:32 +02:00
Vincent Langlet
9905baeceb
Add flagfrom_calculation
2022-01-24 09:31:10 +01:00
Vincent
280de4bc98
Fix undefined parent method call (ref #7414 )
2022-01-24 09:17:29 +01:00
orklah
3649712c66
deprecate TPositiveInt
2022-01-23 23:26:24 +01:00
orklah
82d84b0b3a
fix internal properties on interfaces
2022-01-23 13:08:35 +01:00
AndrolGenhald
01868a9766
Mark loadXdebugStub as deprecated (removed in #7107 ).
2022-01-22 16:03:35 -06:00
orklah
0bf3c43908
Merge pull request #7455 from ohader/issue-6788-4x
...
!!! Deprecate \Psalm\Plugin\RegistrationInterface methods
2022-01-22 18:35:39 +01:00
orklah
73af019110
fix a weird case
2022-01-22 17:45:40 +01:00
orklah
997d5d5f5f
handle two more cases of firstClassCallable
2022-01-22 17:37:35 +01:00
Oliver Hader
c34e32f60e
!!! Deprecate \Psalm\Plugin\RegistrationInterface methods
...
Following \Psalm\Plugin\RegistrationInterface methods are deprecated
+ addFileTypeScanner
+ addFileTypeAnalyzer
Following \Psalm\PluginRegistrationSocket methods are deprecated
+ addFileTypeScanner
+ getAdditionalFileTypeScanners
+ addFileTypeAnalyzer
+ getAdditionalFileTypeAnalyzers
+ getAdditionalFileExtensions
+ addFileExtension
Mentioned methods will be removed in Psalm v5.0, corresponding
functionality will be provided by following new interfaces and classes
+ \Psalm\Plugin\FileExtensionsInterface
+ \Psalm\PluginFileExtensionsSocket
Related: #6788
2022-01-21 14:51:36 +01:00
Vincent Quatrevieux
c7bfc03a6b
Merge branch '4.x' into call-docblock-method-using-parent
2022-01-20 08:59:50 +01:00
orklah
bbfdd57d5c
Merge pull request #7363 from zoonru/81_returntypewillchange
...
PHP 8.1: Report missing typehints in overridden native methods
2022-01-19 20:31:54 +01:00
Vincent
f7252417e4
Fix typing (ref #7430 )
2022-01-19 13:49:41 +01:00
4cfe1a0773
Add configuration option to disable @psalm-suppress all
2022-01-19 13:24:26 +01:00
1914be4ca1
Rollback
2022-01-19 12:44:55 +01:00
38945018f5
Run analysis on all PHP versions
2022-01-19 12:39:08 +01:00
d970661182
Add separate issue
2022-01-19 12:20:50 +01:00
e54d666a2e
cs-fix
2022-01-19 12:06:38 +01:00
d8be15a83d
More legacy php changes
2022-01-19 12:06:38 +01:00
c98930d6ce
Fix syntax
2022-01-19 12:06:38 +01:00
cee9eb0ead
PHP 8.1: Report missing typehints in overridden native methods
2022-01-19 12:06:35 +01:00
Vincent
7b25ca75f4
Resolve generics of inherited pseudo methods ( fix #7419 )
2022-01-19 11:45:19 +01:00
Fabien Villepinte
c9eafa15ad
Improve signature of DOMDocument::loadXML()
2022-01-17 22:52:58 +00:00
Vincent
09fc43a4d8
Add support of docblock method using parent keyword ( fix #7411 )
2022-01-17 19:26:42 +01:00
andrew
10012c9e09
Fix self parsing for psalm-if-this-is and psalm-self-out
2022-01-16 16:11:40 +03:00
orklah
de824d6724
Merge pull request #7403 from orklah/readonly_phpdoc_promoted
...
support @readonly for promoted properties
2022-01-16 09:38:37 +01:00
orklah
e26e022428
support @readonly for promoted properties
2022-01-16 09:31:58 +01:00
orklah
3c726e76df
Merge pull request #7401 from orklah/getObjectVarsNoValue
...
Psalm can't be sure get_object_vars will return an empty array unless object is known AND final
2022-01-15 23:27:33 +01:00
orklah
bf9845a4aa
Psalm can't be sure get_object_vars will return an empty array unless object is known AND final
2022-01-15 21:36:46 +01:00
orklah
dc1132a915
Better Handling of TPositiveInt combined with TIntRange
2022-01-15 21:29:24 +01:00
orklah
4e27889736
Merge pull request #7384 from tm1000/bugfix/catch-additional-InvalidArgumentException
...
Catch additional InvalidArgumentException
2022-01-15 11:32:15 +01:00
orklah
9a9243e5fe
Merge pull request #7385 from b2pweb/handle-template-on-pseudo-method
...
Add support of template for docblock methods
2022-01-15 11:26:03 +01:00
orklah
75947c97c6
Merge pull request #7391 from b2pweb/docblock-method-inheritance
...
Handle inherited docblock method
2022-01-15 11:24:06 +01:00
orklah
fb30d831c6
Merge pull request #7398 from orklah/reconciliation
...
use Reconciler::RECONCILIATION_*
2022-01-14 21:44:16 +01:00
orklah
4a85fed181
use Reconciler::RECONCILIATION_*
2022-01-14 19:39:18 +01:00
orklah
d786e9deef
deprecate attribute forbidEcho
2022-01-14 19:31:03 +01:00
orklah
93fe3e81d4
Merge pull request #7304 from orklah/classconst5
...
Refactor Reconciler::handleLiteralEquality
2022-01-14 19:16:23 +01:00
Vincent
a52362465b
Handle inherited docblock method ( fix #7198 )
2022-01-14 10:30:09 +01:00
Vincent Langlet
9f84da4d6f
Try another strategy
2022-01-13 23:57:02 +01:00
Vincent Langlet
cbfa6a10da
Fix
2022-01-13 22:43:57 +01:00
Vincent Langlet
f2138ace7b
Avoid calling autoloader
2022-01-13 22:12:39 +01:00
Vincent Langlet
b1285bd058
Fix cs
2022-01-13 21:53:34 +01:00
Vincent Langlet
31c5845a30
Register provider
2022-01-13 21:46:01 +01:00
Vincent Langlet
1d6ae16504
Add Exception code return type provider
2022-01-13 21:44:06 +01:00
Vincent
fe7665aaaf
Add support of template for docblock methods ( fix #7320 )
2022-01-13 11:04:37 +01:00
Andrew Nagy
6910461b76
Catch additional InvalidArgumentException
2022-01-12 21:04:35 +00:00
Andrew Nagy
0eb00e8ae2
Fix closure to have storage bug in codeAction
2022-01-10 23:36:21 +00:00
orklah
af37af7d8c
Merge pull request #7242 from zoonru/seal_all_properties
...
PHP 8.2: seal all properties configuration
2022-01-10 21:36:31 +01:00
orklah
611583c481
Merge pull request #7354 from wouterj/issue-7353/issuehandlers-elements
...
Support multiple <issueHandlers> elements
2022-01-10 21:34:43 +01:00
Patrick Remy
a555543c0c
fix: pass static class name to ReturnTypeAnalyzer
2022-01-10 21:23:52 +01:00
b9e3979c3f
Cs-fix
2022-01-10 10:22:51 +01:00
a35ccfb0cb
Revert misguided changes
2022-01-10 10:19:12 +01:00
b530f23acc
PHP 8.2: seal all properties by default, add configuration key for lower versions
2022-01-10 10:11:28 +01:00
orklah
549c02d661
Merge pull request #7356 from orklah/keep-class-strings-through-array_merge
...
keep class-strings through array_merge
2022-01-09 16:16:55 +01:00
orklah
413da78568
Merge pull request #7326 from orklah/short_closures_returning_never
...
allow short closure to return never
2022-01-09 16:01:26 +01:00
orklah
65efab3a8d
keep class-strings through array_merge
2022-01-09 15:48:58 +01:00
Wouter de Jong
e4e9edda27
Support multiple <issueHandlers> elements
...
This is likely to occur when including multiple Psalm config files.
2022-01-09 14:11:03 +01:00
orklah
c94e25fa7f
refactor the TooFewArguments check to start checking with named arguments
2022-01-09 00:37:16 +01:00
orklah
ce2c6cf438
set the is_list flag for the array inferred for hrtime
2022-01-08 22:48:05 +01:00
orklah
a9bc132842
Merge pull request #7349 from orklah/hrtime2
...
Seal the array inferred for hrtime
2022-01-08 22:40:20 +01:00
Bruce Weirdan
3502f0460a
Merge branch '4.18.x' into 4.x
2022-01-08 23:32:50 +02:00
orklah
afc3a76bc0
Seal the array inferred for hrtime
2022-01-08 22:22:21 +01:00
Bruce Weirdan
a4878ac2b5
Revert "Merge pull request #7239 from DeyV/master"
...
This reverts commit 33628cad51
, reversing
changes made to 216cf6c534
.
2022-01-08 22:26:24 +02:00
orklah
abd499c9c9
Merge pull request #7337 from orklah/broken-phar
...
replace class name by full FQN for scoper
2022-01-07 21:58:14 +01:00
orklah
90ada3774c
replace class name by full FQN for scoper
2022-01-07 21:51:11 +01:00
orklah
9d225086e9
replace empty checks on Union with dedicated method
2022-01-07 21:27:45 +01:00
orklah
0d9480ad00
Merge pull request #7335 from orklah/errors_on_int_reconciliation
...
Errors on superior/inferior reconciliation
2022-01-07 20:19:35 +01:00
orklah
af28687708
fix reconciliation when the assertions is not part of the existing range and add tests
2022-01-07 19:39:19 +01:00
orklah
c0864b2652
emit errors on failure to reconcile ints
2022-01-07 18:32:24 +01:00
Stefan Vetsch
7f2f0d99ec
Issue #7243 : Do not throw exception on xinclude with fallbacks
2022-01-07 09:40:19 +01:00
orklah
cbb0c6398f
allow short closure with never
2022-01-06 21:36:34 +01:00
Fabien Villepinte
b9d8dd9d3f
Fix analysis when __invoke() exists
2022-01-06 21:22:18 +01:00
Bruce Weirdan
46bcb626f5
Merge pull request #7321 from weirdan/dont-crash-on-array_map-first-class-callable
2022-01-06 14:11:35 +02:00
Bruce Weirdan
fe036d4db0
Prevent crashes on array_map(...)
...
Fixes vimeo/psalm#7305
2022-01-06 10:38:58 +02:00
orklah
18ab5a099f
Merge pull request #7309 from orklah/emptyStringKeyedArray
...
fix empty string not quoted in keyed array offset
2022-01-06 09:37:28 +01:00
orklah
e7bc6f273a
don't crash when pushing a template to in_array
2022-01-05 22:33:20 +01:00
orklah
7e2b9d0fab
fix empty string in keyed array offset
2022-01-05 22:26:35 +01:00
orklah
27c4b07d5b
fix wrong not literal loose check
2022-01-05 22:11:22 +01:00
orklah
c22670d851
use the correct type for float function
2022-01-05 20:05:56 +01:00
orklah
57e054931e
remove unused param
2022-01-05 20:01:34 +01:00
orklah
fac7317af3
refactor float as well
2022-01-05 20:00:56 +01:00
orklah
26542afdf4
accept more loose literal equalities and loop over non-literal types on a separate loop
2022-01-05 19:45:22 +01:00
orklah
7dccfa4ff9
CS
2022-01-05 18:44:58 +01:00
orklah
e0fb87596d
typo
2022-01-05 18:21:38 +01:00
orklah
c1575d29fd
consistency with string handling
2022-01-05 18:06:08 +01:00
orklah
8099126958
make sure to keep the origin of the type (from_docblock)
2022-01-05 17:52:04 +01:00
orklah
16bb62b499
Fixup!!! don't allow checks on literals
2022-01-05 12:41:08 +01:00
orklah
411399b600
Fixup!!! don't allow checks on literals
2022-01-05 12:22:44 +01:00
orklah
83a02d9a61
Fixup!!! don't allow checks on literals
2022-01-05 12:21:50 +01:00
orklah
5c0fc46734
Fixup!!! be more flexible on loose_equality for strings
2022-01-05 12:10:32 +01:00
orklah
3fc8139205
Fixup!!! only allow general TInt to pass
2022-01-05 11:17:39 +01:00
orklah
950710a47a
Fixup!!! make sure to add atomics with the correct offset key
2022-01-05 09:58:56 +01:00
orklah
36349a1370
refactor literal string equality check
2022-01-05 09:52:47 +01:00
orklah
2ada8ee8b0
refactor literal int equality check
2022-01-05 09:52:47 +01:00
orklah
a8c2fcde76
resolve ClassConst before checking equalities and fix things
2022-01-05 09:52:47 +01:00
Fabien Villepinte
c42f3d51bd
Fix typo
2022-01-04 16:27:06 +01:00
Fabien Villepinte
2f3af4a5bc
Remove unused import
2022-01-04 16:13:48 +01:00
Fabien Villepinte
1fa6b612b1
Fix parse_url() return type
2022-01-04 16:09:18 +01:00