Pete Walker
a3bdf1ba8c
feat: Handle native intersection types
...
Adds native intersection type handling to psalm, removing the previous `UnexpectedValueException`.
Where an intersection is found in the parse tree, the types are resolved using the existing `Type::intersectUnionTypes` function, which I assume is being used when they're encountered in the existing docblock annotations.
I've added a handful of tests to cover this, but they're certainly not exhaustive. Are there any specific edge cases I should target?
This change feels way too simple... so apologies if I've missed something fundamental..!
2022-01-21 12:59:55 +00:00
Matthew Brown
1ff3161584
Remove array_unique call
2022-01-20 11:36:18 -05:00
Matthew Brown
70479444e3
Remove untested likely-unnecessary code
2022-01-20 11:29:36 -05:00
Matthew Brown
473631fb34
Remove unused & untested code in AlgebraAnalyzer
2022-01-20 11:16:33 -05:00
orklah
5a6dccd4a9
Merge pull request #7420 from orklah/remove-old-things
...
Remove forbidEcho
2022-01-19 20:32:19 +01:00
orklah
4e5711030d
Merge pull request #7429 from ricardoboss/update-baseline-docs
...
Added documentation for baseline files
2022-01-19 20:02:08 +01:00
Ricardo Boss
ae954f0cdc
Update dealing_with_code_issues.md
2022-01-19 13:34:51 +01:00
Ricardo Boss
bd1385df72
Added context for updating the baseline files
2022-01-19 13:32:47 +01:00
Ricardo Boss
1c3d15f5df
Added documentation for baseline files
2022-01-19 12:07:20 +01:00
orklah
cb976f8416
fix merge induced errors
2022-01-18 23:07:35 +01:00
orklah
477c0113c2
Merge remote-tracking branch 'upstream/4.x' into upstream-master3
2022-01-18 18:37:04 +01:00
orklah
ddf7a0bb36
remove forbidEcho
2022-01-18 18:27:27 +01:00
orklah
dceaa117cf
remove forbidEcho
2022-01-18 18:25:18 +01:00
orklah
5f749c8a33
remove forbidEcho
2022-01-18 18:14:39 +01:00
orklah
a0f52eae2f
Merge pull request #7407 from villfa/fix/7039
...
Improve signature of DOMDocument::loadXML()
2022-01-18 00:01:00 +01:00
Fabien Villepinte
c9eafa15ad
Improve signature of DOMDocument::loadXML()
2022-01-17 22:52:58 +00:00
Matthew Brown
e1d2da792c
More specific test name
2022-01-16 15:34:25 -05:00
Ricardo Boss
26dd4c5b8f
Try to provide literal int types when possible ( fixes #6966 ) ( #7071 )
...
* Fixed vimeo/psalm#6966
* Only accept >= 0 values for mode argument in round()
* Made round() only return float or literal float values and remove unneeded test
* Registered RoundReturnTypeProvider
* Updated cast analyzer to handle single string literal int values as literal ints
* Fixed psalm errors
* Fix invalid property accesses
* Addressed comments
* Added Tests
* Marked RoundReturnTypeProvider as internal
* Fixed CS
2022-01-16 21:33:04 +01:00
Matthew Brown
91902943bd
Make test more of a real-world example
2022-01-16 10:19:51 -05:00
orklah
c3745cd342
Merge pull request #7406 from villfa/fix/7389
...
Improve signature of random_bytes()
2022-01-16 15:30:21 +01:00
Fabien Villepinte
dd64326479
Update CallMap_historical too
2022-01-16 14:49:16 +01:00
Fabien Villepinte
642321ea70
Improve signature of random_bytes()
2022-01-16 14:47:42 +01:00
orklah
a99c433f3a
Merge pull request #7405 from klimick/fix-self-parsing-for-psalm-if-this-is
...
Fix `self` parsing for `psalm-if-this-is` and `psalm-self-out`
2022-01-16 14:31:45 +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
6578396afb
add test
2022-01-16 09:31:58 +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
32c8e6358c
Merge pull request #7400 from orklah/combinePositiveAndRange
...
Combine positive int and range
2022-01-15 23:27:22 +01:00
orklah
3260b1ad74
make class final in test to revalidate what it's testing
2022-01-15 21:53:05 +01:00
orklah
0beb8e7a4e
fix test
2022-01-15 21:39:29 +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
4344c8ec3f
add test
2022-01-15 21:29:24 +01:00
orklah
dc1132a915
Better Handling of TPositiveInt combined with TIntRange
2022-01-15 21:29:24 +01:00
orklah
e8c8161dd6
fix merge induced errors
2022-01-15 20:32:09 +01:00
orklah
5b82082bbd
Merge remote-tracking branch 'upstream/4.x' into upstream-master2
2022-01-15 20:21:00 +01:00
Matthew Brown
dd8df37572
Remove never-used assertion check
2022-01-15 13:38:00 -05: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
1f0d3de94b
Merge pull request #7399 from orklah/testnever2
...
Prevent NoValue when there is no phpdoc
2022-01-14 21:51:47 +01:00
orklah
fb30d831c6
Merge pull request #7398 from orklah/reconciliation
...
use Reconciler::RECONCILIATION_*
2022-01-14 21:44:16 +01:00
orklah
b3e7f12933
Prevent NoValue when there is no phpdoc
2022-01-14 21:39:23 +01:00
orklah
d2faa5b94f
fix errors after merge
2022-01-14 21:13:34 +01:00
orklah
b633619a2c
Merge remote-tracking branch 'upstream/4.x' into upstream-master
2022-01-14 21:01:25 +01:00
orklah
4a85fed181
use Reconciler::RECONCILIATION_*
2022-01-14 19:39:18 +01:00
orklah
9ac77e9512
Merge pull request #6521 from orklah/callable-non-falsy
...
TCallableString is non-falsy (0 can't be a functionlike name)
2022-01-14 19:38:41 +01:00
orklah
cdbaf0e14f
Merge pull request #6902 from orklah/forbidEcho
...
deprecate forbidEcho
2022-01-14 19:37:24 +01:00
orklah
d786e9deef
deprecate attribute forbidEcho
2022-01-14 19:31:03 +01:00
orklah
3a097845f6
Merge pull request #7397 from orklah/psl
...
remove psl analysis from CI
2022-01-14 19:27:25 +01:00