The devdays talk resulted in some interesting feedback. One suggestion was to look at laravel mail API. The current approach in #3539651: Introduce email plugins looks quite similar, that is reassuring.
During devdays sprints, the current merge request was cleaned up so far that it now runs GitLab CI pipelines. Tests from the previous approach were ported and merged into the current branch.
The first of two core refactoring issues landed this week (#3125013: Refactor update.fetch.inc into a MailHandler). The second one is RTBC (#3539178: Extract _user_mail_notify() into a user NotificationHandler).
The mailer module renaming issue took an interesting turn (#3542264: Rename mailer module to mailer_symfony and avoid namespace conflict with contrib mailer module). A third option was proposed (option c) which gets rid of the module entirely. The idea is that the mailer.services.yml file is moved to a new experimental core directory. In order to enable the feature, one has to explicitly add this services file to the container_yamls array in settings.php. A new policy issue tries to document this approach (#3588115: [policy, no patch] Allow experimental core features in addition to experimental modules).
The group discussed the work done during the devdays sprints. Not all members agreed with the separation of EmailPluginDefault and EmailPluginBase. The reason for the separation mainly was:
- Attribute based plugins can inherit from
EmailPluginBasewhich doesn’t have all the baggage needed to make yaml plugins work. Especially attribute based plugins most often will just implement their ownhtmlBody()method. Thehtml_body_templateplugin definition key is superfluous in that case.
The argument against the separation is:
- One unified class shared between attribute based and yaml based plugins makes the transition from one to the other easy. Both support the same set of plugin definition properties. As a developer you only have to look at one file to understand the plugin behavior.
The group decided to undo the separation between EmailPluginDefault and EmailPluginBase.
There are many merge request comments. Some of them are leftovers, some need attention. This should be cleaned up by a reviewer and then devs can act on the remaining ones.
What’s next:
- Async communication in Drupal #symfony-mailer slack channel.
- Next planning meeting takes place: June 3rd 2026 at 1PM UTC+1 (CEST).
Comments
Comment #2
znerol commented