chore: more phpstan fixes#7265
Conversation
VincentLanglet
commented
Jun 30, 2025
| Q | A |
|---|---|
| Branch? | main |
| Tickets | Closes #..., closes #... |
| License | MIT |
| Doc PR | api-platform/docs#... |
| - tests/Fixtures/TestBundle/Entity/ | ||
| - src/OpenApi/Factory/OpenApiFactory.php | ||
| - | ||
| message: '#is never assigned .* so it can be removed from the property type.#' |
There was a problem hiding this comment.
false positive because private ?int $id is not set with a setter but with doctrine magic.
| ) { | ||
| $this->types = \is_string($types) ? (array) $types : $types; | ||
| $this->serialize = \is_array($serialize) ? $serialize : [$serialize]; | ||
| $this->serialize = (null === $serialize || \is_array($serialize)) ? $serialize : [$serialize]; |
There was a problem hiding this comment.
Before, null was transformed into [null]
| * @param array<string, mixed> $context | ||
| * | ||
| * @throws RuntimeException | ||
| * @throws InvalidArgumentException |
There was a problem hiding this comment.
Catch somewhere, so we need to update the phpdoc to avoid a catch.neverThrown error
| * @param object|class-string $resource | ||
| * @param array<string, mixed>|array{force_resource_class?: string|class-string, item_uri_template?: string, uri_variables?: array<string, string>} $context | ||
| * | ||
| * @throws OperationNotFoundException |
There was a problem hiding this comment.
same for catch.neverThrown
| /** | ||
| * @author Kévin Dunglas <kevin@dunglas.dev> | ||
| * | ||
| * @phpstan-ignore trait.unused |
There was a problem hiding this comment.
Never used in api platform code base
| { | ||
| $actual = (array) $this->getValueOfNode($node); | ||
|
|
||
| if (!\is_array($actual)) { |
There was a problem hiding this comment.
$actual is caster line 122
| return false; | ||
| } | ||
|
|
||
| if (!\in_array($subject, array_keys(self::RBAC), true) || !\is_array(self::RBAC[$subject])) { |
There was a problem hiding this comment.
the second condition was always true
c538257 to
72a1020
Compare
ebba787 to
5228a77
Compare
| } | ||
|
|
||
| return $aliasMap; | ||
| return array_combine($rootAliases, $rootEntities); |
There was a problem hiding this comment.
array_combine never return false since php 8 and you require 8.2
|
|
||
| $this->typesContainerProphecy->has('Dummy')->shouldBeCalled()->willReturn(false); | ||
| $this->assertNull($nodeInterface->resolveType([ItemNormalizer::ITEM_RESOURCE_CLASS_KEY => Dummy::class], [], $this->prophesize(ResolveInfo::class)->reveal())); | ||
| $resolvedType = $nodeInterface->resolveType([ItemNormalizer::ITEM_RESOURCE_CLASS_KEY => Dummy::class], [], $this->prophesize(ResolveInfo::class)->reveal()); |
There was a problem hiding this comment.
setting a variable avoid a phpstan bug
| { | ||
| /** @var HttpClientInterface $client */ | ||
| $client = new class implements ClientInterface { | ||
| $client = new class implements HttpClientInterface { |
There was a problem hiding this comment.
I used a real HttpClientInterface instead of the Guzzle one
|
awesome thanks! |