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

7228 Commits

Author SHA1 Message Date
Brown
c96ba8d1f5
Add some backwards-incompatible changes for 4.x 2021-01-29 11:38:48 +01:00
Brown
226f3cef6a
Improve understanding of negated count queries 2021-01-29 11:38:48 +01:00
Brown
4b628c7db5
Improve Closure::fromCallable handling 2021-01-29 11:38:48 +01:00
Tyson Andre
c9ff06d4d4
Fix expected php 8.0 syntax error (#4084)
This will very likely be parsed as an attribute in php 8.0
See
https://wiki.php.net/rfc/shorter_attribute_syntax_change#secondary_vote
2021-01-29 11:38:48 +01:00
Brown
38cd48657f
Fix modulo test 2021-01-29 11:38:48 +01:00
Brown
e5e50926d4
Fix #4083 - namespace docblock method classes the proper way 2021-01-29 11:38:48 +01:00
Brown
c045c1b077
Allow ParamNameMismatch to be suppressed locally
Fixes #4012
2021-01-29 11:38:48 +01:00
Brown
b7002ceb9f
Fix treatment of closure params in array_map 2021-01-29 11:38:48 +01:00
Brown
9f246938ba
Fix #4081 - better inference of positive ints 2021-01-29 11:38:48 +01:00
Brown
90f79d25fa
Fix style issues 2021-01-29 11:38:47 +01:00
Markus Staab
da48436c9a
Docs: added more string types (#4080) 2021-01-29 11:38:47 +01:00
Markus Staab
7402fb3e0c
Docs: added callable-array (#4079)
* Docs: added callable-array

* Update array_types.md

* Add non-empty-array
2021-01-29 11:38:47 +01:00
Brown
5232f3012c
Fix test 2021-01-29 11:38:47 +01:00
Brown
9fcbe0a454
Allow pure-Callable type to be annotated 2021-01-29 11:38:47 +01:00
Brown
ca1b29b1dd
Report use of impure closures 2021-01-29 11:38:47 +01:00
Markus Staab
2375a3b2cd
docs: added positive integer (#4078)
* docs: added positive integer

* added to toc
2021-01-29 11:38:47 +01:00
Brown
9190571cfc
Remove some redundant calls 2021-01-29 11:38:47 +01:00
Brown
02255ae26b
Fix #4077 - always track closure purity 2021-01-29 11:38:47 +01:00
Brown
7beb274671
Fix typo 2021-01-29 11:38:47 +01:00
Brown
5835eec863
Fix #4061 - allow indirect null comparison check 2021-01-29 11:38:46 +01:00
Brown
489cd99752
Allow bare pure-callable in namespace cc @azjezz 2021-01-29 11:38:46 +01:00
Brown
317131b524
Simplify simplification 2021-01-29 11:38:46 +01:00
Saif Eddin G
a0a30c500c
add pure-callable type (#4066) 2021-01-29 11:38:46 +01:00
Brown
a716185564
Fix too-long line 2021-01-29 11:38:46 +01:00
Brown
6d43a6696c
Make clause fully immutable 2021-01-29 11:38:46 +01:00
Brown
b09309aa92
Prevent unset on immutable properties 2021-01-29 11:38:46 +01:00
Brown
7623e31829
Use a slightly cleaner fix 2021-01-29 11:38:46 +01:00
Brown
11ee00442d
Refine iterable key after is_array check
Ref #4038
2021-01-29 11:38:46 +01:00
Brown
e585955c96
Use immutable data structures for clause calculations 2021-01-29 11:38:45 +01:00
Brown
20139e7473
Fix #4064 - assume most iterators are impure 2021-01-29 11:38:45 +01:00
Brown
ab8d794709
Refine test for windows compat 2021-01-29 11:38:45 +01:00
Brown
4735ca39e2
Fix get_class-inferred templating 2021-01-29 11:38:45 +01:00
Brown
a0a9c9b7bc
Fix #4038 - don’t remove null types unnecessarily in mixed union 2021-01-29 11:38:45 +01:00
Brown
a466feda18
Fix type bug 2021-01-29 11:38:45 +01:00
Brown
bd7f207e31
Preserve intersections when expanding templated types
Fixes #4043
2021-01-29 11:38:45 +01:00
Brown
6aa8a492ac
Create empty params by default for SplObjectStorage
Fixes #4055
2021-01-29 11:38:45 +01:00
Brown
51bfb3666b
Fix #4052 - foreach over an iterable is impure 2021-01-29 11:38:45 +01:00
Brown
8ca604a533
Expand object-with-properties
Fixes #4057
2021-01-29 11:38:45 +01:00
Brown
f9b48163e0
Add a bunch of immutable & pure annotations 2021-01-29 11:38:44 +01:00
Brown
91e1e5f0f6
Fix #4036 - add immutable annotations automatically too 2021-01-29 11:38:44 +01:00
Bruce Weirdan
1ac27d6d22
Fix prophecy warnings (#4051)
* Use weirdan/prophecy-shim to avoid PHPUnit warnings on prophesize() calls

* Drop vcs repo as the package is already available on packagist

* Bump psalm/plugin-phpunit

Fixes Prophecy-related issues
2021-01-29 11:38:44 +01:00
Tom Klingenberg
fd96419527
Revert config schema, fix b/c break (#4046)
Previous in d5055ea the allowCoercionFromStringToClassConst attribute has
been removed from the XML configuration file per its schema.

While technically correct (was removed in 3.0), this breaks b/c between
minor versions, breaks with the release of 3.14.0.

Fix is revert.

Ref: d5055ea1d4
Caused-by: #3982
2021-01-29 11:38:44 +01:00
Matthew Brown
c4074012f8
Fix immutable tests 2021-01-29 11:38:44 +01:00
Brown
596492a95a
Only add pure when not overriding upstream 2021-01-29 11:38:44 +01:00
Brown
fe5fd82a93
Fix ImpureVariable test 2021-01-29 11:38:44 +01:00
Brown
e938e73549
Add a couple more pure annotations 2021-01-29 11:38:44 +01:00
Brown
5513fcdcff
Prevent isset on uknown property in pure function 2021-01-29 11:38:44 +01:00
Brown
1ec0f35011
Only add pure to functions with params 2021-01-29 11:38:43 +01:00
Brown
9100c26439
Prevent use of $this in pure functions 2021-01-29 11:38:43 +01:00
Brown
e9f07ac4b4
Add another pure annotation 2021-01-29 11:38:43 +01:00