phpstan / phpstan-symfony

Symfony extension for PHPStan
MIT License
698 stars 89 forks source link

Support for alias to inlined service #394

Closed b-viguier closed 3 months ago

b-viguier commented 3 months ago

Why

When stacking decorators, all inlined services are prefixed by a .. This character is explicitly removed in the service map since this commit.

But then, when browsing aliases, the Xml factory is not able to find the target service in the map, because the alias definition contains the ., but not the stored service. The we got following false-positive

Service "<...>" is not registered in the container.

How

I added the same log for alias field that the one for id, and it fixed the issue locally. I added a test for this use case.

⚠️ I'm not sure why this . has been removed in first place, maybe there are other (untested?) side-effects... at least the discussion is opened 🙂

Thanks a lot for your work 🙇

ondrejmirtes commented 3 months ago

Thank you!