We are using Drupal 8.6.17. Recently after we upgraded contact_emails module from 8.x-1.16 to 8.x-1.18, we see fatal error caused by this module as below:

TypeError: Argument 4 passed to Drupal\contact_emails\ContactEmailer::__construct() must be an instance of Drupal\Component\Utility\EmailValidatorInterface, instance of Egulias\EmailValidator\EmailValidator given, called in /mnt/www/html/eadrupaltest/docroot/core/lib/Drupal/Component/DependencyInjection/Container.php on line 278 in /mnt/www/html/eadrupaltest/docroot/modules/contrib/contact_emails/src/ContactEmailer.php on line 84

After digging, it turns out there is a change record related to the EmailValidatorInterface:
https://www.drupal.org/node/2997196

So I am wondering if you could put this information in the project homepage to remind people that version 8.x-1.17 and above requires Drupa core 8.7.x and above.

Thanks

Comments

eric.chenchao created an issue. See original summary.

eric.chenchao’s picture

Issue summary: View changes
scott_euser’s picture

Thanks for spotting! So two things here

  • could consider extending test coverage to old drupal core releases (currently uses the default latest)
  • could add to composer json to specify minimum requirements

Will have a think: I never considered someone would update one module but not core and other modules with it, but I suppose drupal 8.6 is still getting security coverage even though it is excluded from bugfixes. I could not seem to find a doc page with recommendations on this to module maintainers but if anyone sees one, would be helpful!

eric.chenchao’s picture

Good ideas. Also it maybe worth having 8.x-2.x releases with breaking changes.

astonvictor’s picture

Status: Active » Closed (outdated)

I guess the issue is pretty old.
We already have a new release that has the correct requirements (core >= 8.8).