Change record status: 
Introduced in branch: 
1.x
Introduced in version: 
1.3.0
Description: 

Overview

Drupal Symfony Mailer can override the email building from other modules with an improved version using all the features of this module's new API. Management of overriding is now more flexible:

  • In version 1.2, you can enable the sub-module "Drupal Symfony Mailer Override" (symfony_mailer_bc) to enable all supported overrides.
  • In version 1.3, you can enable or disable overrides individually in the web UI. The sub-module is obsolete and will automatically be uninstalled.

Detailed changes

UI

  • In version 1.2, there is an "Import" page (/admin/config/system/mailer/import) with support for import.
  • In version 1.3 there is an "Override" page (/admin/config/system/mailer/override) with support for enable, disable and import. The old route will automatically redirect with a deprecation warning.

Drush

  • In version 1.2, there are drush commands mailer:import and mailer:import-info.
  • In version 1.3 the corresponding commands are mailer:override and mailer:override-info.

Email Builder development

  • In version 1.2, Email Builder plug-ins that provide an override use the annotation proxy and put their default configuration in the /config/optional directory.
  • In version 1.3 the corresponding annotation is override and the directory is /config/mailer_override . Old style plug-ins will still work with a deprecation warning.

API changes

In version 1.3 some functions and constants on EmailBuilderManagerInterface have been deprecated, with replacements on OverrideManagerInterface as follows:

Version 1.2 EmailBuilderManagerInterface Version 1.3 OverrideManagerInterface
IMPORT_READY No equivalent
IMPORT_COMPLETE STATE_IMPORTED
IMPORT_SKIPPED STATE_ENABLED
getImportInfo() getInfo()
importRequired() The concept has been removed and you can assume a value of FALSE.
import() action()
importAll() bulkAction()
setImportState() action()
Impacts: 
Site builders, administrators, editors
Module developers