f11ed46f26
Immutable assertions
2022-10-03 11:32:15 +02:00
ef60a0c88c
Fix properties-of on generics&intersections
2022-10-03 11:28:01 +02:00
3abd0b961f
Immutable Unions
2022-10-03 10:45:36 +02:00
orklah
028ac7f540
Merge pull request #8494 from pvandommelen/fix_any_type_widening
...
Fix type widening when `Any` assertion is used
2022-09-18 19:35:07 +02:00
Peter van Dommelen
2eb4ca0e3b
Within the reconciler's fast path, do not require the existing type to include mixed when handling an Any
assertion.
2022-09-18 17:07:30 +02:00
Peter van Dommelen
05f28ce8cd
Do not widen type to mixed
and lose the existing type information when an Any
assertion is used.
...
Fixes #8084 .
2022-09-18 17:02:09 +02:00
Matthew Brown
d957ff2015
Fix mixed type hole when sending Foo<string> to Foo<mixed> ( #8481 )
...
* Fix mixed type hole when sending Foo<string> to Foo<mixed>
* Fix ifThisIs test
* Suppress bugs highlighted with fix
* Fix PHPDoc parsing
2022-09-13 13:13:06 -04:00
orklah
afe85fad86
Merge pull request #8418 from Nicelocal/fix_8414
...
fix: Fix template resolution of complex extended types
2022-08-17 20:38:02 +02:00
979091d2ab
Optimize
2022-08-17 13:38:11 +02:00
0220da0b32
Add tests
2022-08-17 13:30:36 +02:00
95ef63ece9
Update
2022-08-17 13:25:00 +02:00
24b008ee40
Fix
2022-08-17 13:19:25 +02:00
1401bf94db
Fix #8414
2022-08-17 13:11:27 +02:00
orklah
42462b8640
Merge pull request #8408 from ThomasLandauer/patch-1
...
Adding note about referencedMethod
2022-08-13 16:33:18 +02:00
Thomas Landauer
f87becfb3b
Adding note about referencedMethod
...
Info is taken from https://github.com/vimeo/psalm/issues/2297#issuecomment-549480186
2022-08-13 16:14:51 +02:00
orklah
f315647338
Merge pull request #8402 from gmessier/master
...
Add capability to use inclusion files in a different directory (fix)
2022-08-11 21:20:03 +02:00
Guillaume Messier
ca3d0990be
Add capability to use inclusion files in a different directory for plugins and issueHandlers
2022-08-11 14:36:04 -04:00
orklah
ffc8c8080d
Merge pull request #8360 from bitwise-operators/8307-operand-class-constants
...
Add BitwiseNot and BooleanNot operators to SimpleTypeInferer
2022-08-04 20:30:52 +02:00
Bitwise Operators
9f6ce3059d
tests: added tests for bitwise-and, bitwise-xor, bitwise-not and boolean-not class constants
2022-08-04 08:52:43 +02:00
Bitwise Operators
a5c550cea4
Fix incorrect handling of null response
2022-08-03 18:27:32 +02:00
Bitwise Operators
f782313c45
Add BitwiseNot and BooleanNot operators to SimpleTypeInferer. Should fix #8307 .
2022-08-03 15:48:54 +02:00
24f7920e9a
Fix if propagation ( #8326 )
...
* Add failing unit test
* Fix test
* Revert "Add comment for skipped test"
This reverts commit e4f73beb08
.
* Revert "Simplify context updates even more"
This reverts commit a32e63f131
.
* Revert "Remove special handling for elseifs that breaks for else if"
This reverts commit d7d9ddc653
.
* Fix test
2022-07-30 19:20:05 -04:00
orklah
f5b7a569e2
Merge pull request #8345 from weirdan/rector-ArraySpreadInsteadOfArrayMergeRector-2
...
Applied ArraySpreadInsteadOfArrayMergeRector (take 2)
2022-07-30 09:18:15 +02:00
Bruce Weirdan
c9e6b54050
CS fix
2022-07-29 23:08:11 -04:00
Bruce Weirdan
7444ea8e2d
Simplify some methods to keep Psalm happy
2022-07-29 23:01:49 -04:00
Bruce Weirdan
238b54abf8
Revert one particular replacement that confuses Psalm
2022-07-29 22:00:21 -04:00
Bruce Weirdan
58e87fa5e0
Applied ArraySpreadInsteadOfArrayMergeRector (take 2)
2022-07-29 18:17:21 -04:00
orklah
7c4228fb56
Merge pull request #8324 from Nicelocal/fix_union_assertions
...
Fix union assertions
2022-07-28 19:06:14 +02:00
7a7a7f6bc9
cs-fix
2022-07-28 12:05:13 +02:00
33d8f3a62d
Fix unit tests
2022-07-28 12:03:12 +02:00
abe58876a7
Fix
2022-07-27 20:32:44 +02:00
6ce32a48d5
Fix
2022-07-27 20:24:24 +02:00
68f3f246f5
Fix
2022-07-27 20:08:00 +02:00
1a4d68e53b
Make private
2022-07-27 18:56:24 +02:00
82e8c0dea8
Disable intersection of unrelated classes
2022-07-27 18:55:01 +02:00
c409675e3e
Fix intersection of final classes
2022-07-27 18:46:07 +02:00
c2a8d1bb06
cs
2022-07-27 18:00:24 +02:00
e19589117d
Fix unit test
2022-07-27 17:56:41 +02:00
37274b308f
Add temporary failing test
2022-07-27 17:51:55 +02:00
09fb879428
Fix #8322 , #8319
2022-07-27 17:42:48 +02:00
18106af5e5
Refactor
2022-07-27 14:39:34 +02:00
orklah
63b389f54d
Merge pull request #8044 from AndrolGenhald/feature/improve-array-spreading
...
Fix various array spread issues.
2022-07-26 20:30:31 +02:00
AndrolGenhald
094621d5bb
Fix array-shape value type being mixed instead of single key being mixed.
2022-07-26 12:00:05 -05:00
AndrolGenhald
ee68184527
Fix key comparison when unpacking Traversables.
2022-07-26 12:00:05 -05:00
AndrolGenhald
2b389df270
Use count
instead of empty
.
2022-07-26 12:00:05 -05:00
AndrolGenhald
d54eebfe02
Fix various array spread issues.
...
- Correctly infer `array` and `list` instead of `non-empty-array` and `non-empty-list` (fixes #7296 )
- Add support for spreading string keys (fixes #7297 ).
- Show issue when trying to unpack non-iterable
- Show issue when trying to unpack iterable with non-array-key key
- Re-added invalid PHP 8.0 tests removed in #6613
- Unpacked lists with known keys will be inferred as eg `array{0: int, 1: int}<int<0, max>, int>` now but will still be treated as lists
- Unpacked arrays with known keys will now be inferred as eg `array{a: string, b: string}<int, int>` instead of `array<int|string, int|string>`
2022-07-26 12:00:03 -05:00
orklah
4b2935f800
Merge pull request #8282 from drupol/stub/fix-cachingiterator
...
Update `CachingIterator::getCache` stub.
2022-07-22 19:38:06 +02:00
Pol Dellaiera
63b64532d6
Update CachingIterator
, use int-mask-of
.
2022-07-22 18:38:12 +02:00
orklah
f6fb7155b7
Merge pull request #8306 from AndrolGenhald/pull/8290
...
Fix type reconciliation breaking Context::$references_in_scope (fixes #8289 ).
2022-07-21 21:48:40 +02:00
AndrolGenhald
ba6270c06a
Fix type reconciliation breaking Context::$references_in_scope ( fixes #8289 ).
2022-07-21 14:27:21 -05:00