Skip to content

Support for alias to inlined service #394

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
May 30, 2024
Merged

Support for alias to inlined service #394

merged 1 commit into from
May 30, 2024

Conversation

b-viguier
Copy link

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 🙇

@b-viguier b-viguier marked this pull request as ready for review May 29, 2024 09:12
@ondrejmirtes ondrejmirtes merged commit 2c3d666 into phpstan:1.4.x May 30, 2024
31 checks passed
@ondrejmirtes
Copy link
Member

Thank you!

@b-viguier b-viguier deleted the fix-alias-to-inlined-services branch May 30, 2024 14:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants