ConductorConfigForm doesn't allow to override the Messenger service

Created on 5 August 2025, about 1 month ago

Problem/Motivation

The form ConductorConfigForm uses the Messenger object implemented in Drupal\Core\Messenger\Messenger, but experience_builder overrides it, using the one in Drupal\experience_builder\Messenger.

Steps to reproduce

- Having enabled experience_builder and conductor
- Visit /admin/config/development/conductor

The website encountered an unexpected error. Try again later.

TypeError: Drupal\conductor\Form\ConductorConfigForm::__construct(): Argument #5 ($messenger) must be of type Drupal\Core\Messenger\Messenger, Drupal\experience_builder\Messenger given, called in /var/www/html/web/modules/contrib/conductor/src/Form/ConductorConfigForm.php on line 49 in Drupal\conductor\Form\ConductorConfigForm->__construct() (line 72 of modules/contrib/conductor/src/Form/ConductorConfigForm.php).

Proposed resolution

It should type cast to the interface instead of the class.
Type the messenger object to MessengerInterface instead of Messenger

🐛 Bug report
Status

Active

Version

1.0

Component

Code

Created by

🇪🇸Spain isholgueras

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Merge Requests

Comments & Activities

Production build 0.71.5 2024