Skip to content

[Messenger] shouldn’t the default bus service be public? #28215

Closed
@MatTheCat

Description

@MatTheCat

Given the following configuration

framework:
    messenger:
        default_bus: messenger.bus.commands
        buses:
            messenger.bus.commands:
                middleware:
                    - SendinBlue\Middleware\EventBusMiddleware

            messenger.bus.events:
                middleware:
                    - Symfony\Component\Messenger\Middleware\AllowNoHandlerMiddleware

I expected to be able to use ControllerTrait::dispatchMessage but the call fails because the container can’t access message_bus.

Adding

$container->getAlias('message_bus')->setPublic(true);

in a compiler pass solves the issue but it seems weird to me.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions