Brown
92239add4d
Add some backwards-incompatible changes for 4.x
2020-08-30 11:44:14 -04:00
Brown
c13b0efd49
Improve understanding of negated count queries
2020-08-30 11:32:01 -04:00
Brown
64f08fa9dc
Improve Closure::fromCallable handling
2020-08-29 22:02:58 -04:00
Tyson Andre
5f855a73d4
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
2020-08-29 13:36:56 -04:00
Brown
f9815d6e83
Fix modulo test
2020-08-29 11:47:34 -04:00
Brown
cf5aa5c5cd
Fix #4083 - namespace docblock method classes the proper way
2020-08-29 11:46:24 -04:00
Brown
efed9d4480
Allow ParamNameMismatch to be suppressed locally
...
Fixes #4012
2020-08-29 11:17:57 -04:00
Brown
3ca4a576e7
Fix treatment of closure params in array_map
2020-08-29 11:10:09 -04:00
Brown
df0d426f61
Fix #4081 - better inference of positive ints
2020-08-28 16:38:50 -04:00
Brown
d29620a42b
Fix style issues
2020-08-28 15:46:55 -04:00
Markus Staab
fc50dd3acb
Docs: added more string types ( #4080 )
2020-08-28 14:37:46 -04:00
Markus Staab
58141d44ed
Docs: added callable-array ( #4079 )
...
* Docs: added callable-array
* Update array_types.md
* Add non-empty-array
2020-08-28 14:37:28 -04:00
Brown
5980ef58dc
Fix test
2020-08-28 14:07:01 -04:00
Brown
1825e30752
Allow pure-Callable type to be annotated
2020-08-28 13:15:04 -04:00
Brown
63b74276c6
Report use of impure closures
2020-08-28 13:01:14 -04:00
Markus Staab
bb1d257aff
docs: added positive integer ( #4078 )
...
* docs: added positive integer
* added to toc
2020-08-28 12:55:50 -04:00
Brown
98ce590e9d
Remove some redundant calls
2020-08-28 12:48:33 -04:00
Brown
efe143a396
Fix #4077 - always track closure purity
2020-08-28 12:42:55 -04:00
Brown
5f5ce6eb32
Fix typo
2020-08-26 18:16:12 -04:00
Brown
e64d45b644
Fix #4061 - allow indirect null comparison check
2020-08-26 17:58:01 -04:00
Brown
936a7e01b6
Allow bare pure-callable in namespace cc @azjezz
2020-08-26 16:57:27 -04:00
Brown
e9adcb8d35
Simplify simplification
2020-08-26 16:51:55 -04:00
Saif Eddin G
5a20092fbd
add pure-callable type ( #4066 )
2020-08-26 16:51:22 -04:00
Brown
0f18f77d49
Fix too-long line
2020-08-26 16:27:35 -04:00
Brown
988e17f11d
Make clause fully immutable
2020-08-26 15:35:29 -04:00
Brown
b2b329d1a9
Prevent unset on immutable properties
2020-08-26 12:18:34 -04:00
Brown
f33d626052
Use a slightly cleaner fix
2020-08-26 11:03:27 -04:00
Brown
9878613594
Refine iterable key after is_array check
...
Ref #4038
2020-08-26 11:00:38 -04:00
Brown
8ad1c2eeb1
Use immutable data structures for clause calculations
2020-08-26 10:41:47 -04:00
Brown
20e004744f
Fix #4064 - assume most iterators are impure
2020-08-25 18:04:36 -04:00
Brown
57ac0a3310
Refine test for windows compat
2020-08-25 17:37:37 -04:00
Brown
59e7f69d7b
Fix get_class-inferred templating
2020-08-25 17:25:05 -04:00
Brown
6ab3e732fb
Fix #4038 - don’t remove null types unnecessarily in mixed union
2020-08-25 15:50:33 -04:00
Brown
d25a24ee89
Fix type bug
2020-08-25 15:09:14 -04:00
Brown
6e1218065d
Preserve intersections when expanding templated types
...
Fixes #4043
2020-08-25 14:12:57 -04:00
Brown
346d475f55
Create empty params by default for SplObjectStorage
...
Fixes #4055
2020-08-25 11:52:21 -04:00
Brown
2b060b75d3
Fix #4052 - foreach over an iterable is impure
2020-08-25 11:24:57 -04:00
Brown
3f50fbc116
Expand object-with-properties
...
Fixes #4057
2020-08-25 10:15:56 -04:00
Brown
7dba9bc50a
Add a bunch of immutable & pure annotations
2020-08-24 19:29:00 -04:00
Brown
4e10a0ed6f
Fix #4036 - add immutable annotations automatically too
2020-08-24 19:29:00 -04:00
Bruce Weirdan
ffd899ed3c
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
2020-08-24 18:02:39 -04:00
Tom Klingenberg
46013a35c8
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
2020-08-24 00:56:45 -04:00
Matthew Brown
c8ecee109c
Fix immutable tests
2020-08-24 00:35:59 -04:00
Brown
94cec15598
Only add pure when not overriding upstream
2020-08-23 22:16:03 -04:00
Brown
6103cf0f51
Fix ImpureVariable test
2020-08-23 22:07:02 -04:00
Brown
ba1ff21af4
Add a couple more pure annotations
2020-08-23 18:53:34 -04:00
Brown
140d37c7ef
Prevent isset on uknown property in pure function
2020-08-23 18:50:17 -04:00
Brown
02a2e99d42
Only add pure to functions with params
2020-08-23 18:41:31 -04:00
Brown
10f7031080
Prevent use of $this
in pure functions
2020-08-23 18:37:46 -04:00
Brown
41cf47ef0b
Add another pure annotation
2020-08-23 18:07:49 -04:00