1
0
mirror of https://github.com/danog/psalm.git synced 2024-12-03 10:07:52 +01:00
Commit Graph

14103 Commits

Author SHA1 Message Date
Ivan Sidorov
d533bb8c2e Ignore annotated magic static methods with usage object gap
Magic methods annotated by methods `__call` and `__callStatic`.
Magic static methods implemented in `__callStatic`
are not required implementation in `__call'.
2023-11-17 15:14:56 +00:00
Ivan Sidorov
715f6f51e1 Ignore annotated magic properties with usage static gap
In PHP is not exists methods for implementation magic static properties.
So, these magic static properties must not be presented.
2023-11-17 15:14:56 +00:00
Ivan Sidorov
1cfc343c43 Ignore declared static properties with usage object gap
Usage static properties in PHP is allow only by static gap.
2023-11-17 15:14:56 +00:00
Ivan Sidorov
6f19440b02 Fix text-labels with type of property
The labels for magic and declared properties must be equal.
2023-11-17 15:14:56 +00:00
Ivan Sidorov
650b8fcd1b Tests of current behaviors in the auto-completion feature 2023-11-17 15:14:56 +00:00
kkmuffme
a040ad1228 update decimal stubs from documented URL 2023-11-16 09:31:30 +01:00
orklah
5095f4eb85
Merge pull request #10360 from robchett/remove_early_progress_when_scanning_partial_codebase
A segment of progress was being output early as the startScanningFile…
2023-11-13 21:36:05 +01:00
orklah
bb4d80814b
Merge pull request #10361 from robchett/method_annotation_fixes
Method annotation fixes
2023-11-13 21:34:36 +01:00
orklah
e85413dd54
Merge pull request #10356 from robchett/inherit_magic_methods_from_mixin
Inherit magic methods from @mixin
2023-11-13 21:30:39 +01:00
orklah
3efb292039
Merge pull request #9783 from robchett/remove_MixedInferredReturnType
Remove MixedInferredReturnType
2023-11-13 21:29:56 +01:00
orklah
5de8390885
Merge pull request #10362 from robchett/type_aliases_for_static_statement_vars
Allow type aliases for static variables
2023-11-13 21:29:18 +01:00
orklah
d9d08f76f4
Merge pull request #10303 from kkmuffme/suppressing-novalue-should-not-treat-code-as-unevaluated
Suppressing NoValue should not treat subsequent code as unevaluated
2023-11-13 21:27:45 +01:00
kkmuffme
b0adeb463d fix test 2023-11-13 20:37:48 +01:00
kkmuffme
88e3cda3b9 remove unused function, fix unusedVariable error after suppress 2023-11-13 20:24:58 +01:00
kkmuffme
6a0a9d1c15 fix failing test caused by psalm-suppress as this should be invalidCodeParse test 2023-11-13 19:08:04 +01:00
kkmuffme
dcd53cadab Suppressing NoValue should not treat subsequent code as unevaluated
Fix https://github.com/vimeo/psalm/issues/10302
2023-11-13 18:57:41 +01:00
orklah
b3ef6a0bd7
Merge pull request #10351 from robchett/rdkafka_stubs
Add stubs for rdKafka
2023-11-09 20:21:56 +01:00
robchett
70075e778c Allow type aliases for static variables
Fixes #3837
2023-11-09 16:44:53 +00:00
RobChett
fb7fc1c569 Remove MixedInferredReturnType as the related issue is more accuratly reported by MixedReturnStatement 2023-11-09 16:22:35 +00:00
robchett
84ed631a9f Correct test min php version 2023-11-09 16:18:36 +00:00
robchett
80edd41858 Fix failing tests with invalid code 2023-11-09 15:57:42 +00:00
robchett
ac465067e3 Warn if @method annotation contradicts concrete function
Fixes #5990
2023-11-09 15:43:28 +00:00
robchett
975d59032b Don't inherit psuedo methods from parent if a concrete implementation exists
Fixes #4546
2023-11-09 15:43:28 +00:00
robchett
68d6d9b70b Trigger ImplementedParamTypeMismatch if concrete implementation of magic method does not match the magic method signature
Fixes #3871
2023-11-09 15:43:28 +00:00
robchett
44f9440664 Only inherit docblock param type if they type was not expanded
fixes this issue: https://psalm.dev/r/edaea88e00
2023-11-09 15:43:28 +00:00
robchett
61f02d8889 Detect magic method signature mismatch on interfaces
Fixes #5786
2023-11-09 14:20:01 +00:00
robchett
f4aef37ae5 A segment of progress was being output early as the startScanningFiles() method was not called before actually starting to scan files 2023-11-09 09:24:46 +00:00
orklah
0aa5050109
Merge pull request #10355 from greg0ire/allow-int
Allow int keys when calling Redis methods
2023-11-08 23:10:38 +01:00
Grégoire Paris
ba17015dfb
Allow int keys when calling Redis methods
In 5bfc0f960b, risky casting was invoked
as a way to show there is an issue here. However, it is not always
possible to use a string. For instance, there is no such thing as this
in PHP: ["1" => "whatever"]. If you try to create such an array, you
will obtain [1 => "whatever"] instead.

Ironically, this was copied in jetbrains/phpstorm, which is used in
PHPStan, which exhibited that false positive.

See https://github.com/JetBrains/phpstorm-stubs/pull/1454
2023-11-08 22:15:44 +01:00
robchett
86f503ab82 Docblock psudo methods can be inherited via @mixin
Fixes #3556
2023-11-08 10:48:19 +00:00
robchett
3578b42e5c Add stubs for rdKafka
Fixes #3406
2023-11-08 09:51:12 +00:00
orklah
5f0798844e
Merge pull request #10349 from ohader/docs/psalm-flow-5.x
Add documentation for @psalm-flow
2023-11-06 22:42:54 +01:00
Oliver Hader
e015b7f7de
Add documentation for @psalm-flow 2023-11-06 21:41:56 +01:00
orklah
b775d297bb
Merge pull request #10332 from braindawg/addZipExtensionStub
Stub constants for ZipArchive from ext-zip
2023-11-04 16:35:31 +01:00
orklah
7233f38805
Merge pull request #10263 from robchett/maintain_loop_start_val_after_increment
Maintain loop start val after increment/decrement
2023-11-04 09:59:05 +01:00
orklah
d041b652cd
Merge pull request #10344 from robchett/seal_method_seal_properties_without_prefix
Support @(no-)seal-(properties|methods) annotations without prefix
2023-11-04 09:57:52 +01:00
orklah
f147344741
Merge pull request #10341 from robchett/report_unused_issue_handler_suppressions
Report unused issue handler suppressions
2023-11-04 09:57:16 +01:00
orklah
be48d10ce0
Merge pull request #10340 from robchett/RecursiveArrayIterator_stub_correction
Fix stub for RecursiveArrayIterator::getChildren
2023-11-04 09:55:37 +01:00
orklah
302fb72bc8
Merge pull request #10326 from robchett/consistent_type_docblock_parsing
Consistent type docblock parsing
2023-11-04 09:54:58 +01:00
robchett
fecc4eb274 Rework test as it was a false negative 2023-11-03 21:42:17 +00:00
robchett
8414d70a77 Better reconciling of ++/-- operators in ints 2023-11-03 21:42:17 +00:00
robchett
d925bf5226 Correct decrement min/max ranges 2023-11-03 21:42:17 +00:00
robchett
ec5eae3347 Maintain loop start value after an increment 2023-11-03 21:42:17 +00:00
robchett
3cf93345a9 Sanitize docblocks for psalm-check-type 2023-11-03 21:41:48 +00:00
robchett
f507838ba8 Fix some stub docblocks that were thowing parse errors 2023-11-03 21:41:48 +00:00
robchett
70a83c8e2a Skip inline docblocks like {@see ...} 2023-11-03 21:41:48 +00:00
robchett
e76db142f8 Suppress '@template T as' test failures 2023-11-03 21:41:48 +00:00
robchett
39ac69b643 Fix parsing of class-string-map<T of Foo, T> 2023-11-03 21:41:48 +00:00
robchett
934383e036 Fix for spaces after , in multiline docblock types 2023-11-03 21:41:48 +00:00
robchett
d05bd5430d Use CommentAnalyzer::sanitizeDocblockType consistently 2023-11-03 21:41:48 +00:00