3.0.0 - 26th Sept. 2024

TYPO3 13 compatibility + Recipient group refactoring

  • Add more possibilities to manipulate recipient groups using query restrictions on tables or extbase model based recipient sources
  • Enhanced csv based recipient groups
  • Add feature to reduce the list of recipients of a mailing by choosing one or more other recipient groups
  • Improved bounce mails handing (needs IMAP account now!)

New features

Breaking changes

  • Recipient Source Configurations now uses the DTO MEDIAESSENZ\Domain\Model\Dto\RecipientSourceConfigurationDTO.

    Previously the getRecipientSourceConfiguration method of the following events returns an array:

    • ManipulateMarkersEvent
    • ManipulateRecipientEvent
    • DeactivateRecipientEvent

    Please adjust your event listeners to use e.g. $recipientsSourceConfiguration->table instead of $recipientsSourceConfiguration['table']. There is also a custom property available to transfer custom yaml config into event listeners.

    mail:
      recipientSources:
        myCustomDataSource:
          custom:
            foo: bar
    Copied!

    This will be available as $recipientsSourceConfiguration->custom['foo'] in an event listener.

  • Plain Lists and CSV recipient groups are now different recipient group types. A migration wizard to convert from the old to new format comes with this version. Attention: Before using the migration wizard please do a database compare, but do not rename or remove the field "csv" in the first step! After the new fields "csv_type", "csv_data", "csv_separator" and "csv_file" have been generated, goto admin tools > upgrade and click on upgrade wizard. Here start the wizard with the title: "EXT:mail: Migrate mail group type plain to plain or new group csv, depending on csv type.". After this, you can safely delete the field "csv" from the tx_mail_domain_model_group database table.
  • Mail records now have a status field, which can hold (currently) 5 different states:

    • 0 = DRAFT
    • 1 = SCHEDULED
    • 2 = SENDING
    • 3 = PAUSED
    • 4 = ABORTED
    • 5 = SENT

    There is an update wizard to convert existing mail records. Please do not delete the mail database field "sent" or rename it to "zzz_deleted_sent" before running it once!

    As a side effect, the backend module of the queue now only shows scheduled mails that have not yet been sent.

  • For a better bounce mail handling MAIL now uses ddeboer/imap instead of tedivm/fetch. Since ddeboer/imap only can handle IMAP accounts, the possibility to use a POP3 account for collecting bounce mails is dropped. As the mail server type parameter in the bounce mail command is therefore obsolete, it is also deleted. The parameter "count", to set the number of bounce mail to be processed per run, was dropped as well, since it should not be a critical thing, to handle all found bounce mail in one run. Due to this changes, all scheduler task using this command may be corrupt after updating to MAIL 3.0. In dought just recreate them.