Postpone LoggerPass exception with multiple found LoggerInterfaces to autowire #14
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When having multiple implementations of LoggerInterface in the container configuration, I cannot circumvent the
Multiple services of type Psr\Log\LoggerInterface found
error fromLoggerPass
even when loggers are explicitly set in the configuration, because the$builder->getByType
call throws even before the config condition is processed.This is a simple attempt to postpone the exception after the config is handled.
I have added the false flag so that the getByType does not throw on the implementation not existing, as this condition is later handled by defaulting to NullLogger. This flag only handles this case, not the case of multiple existing services.