Problem/Motivation
Per https://www.drupal.org/node/2997196 this is no longer used.
It depends on doctrine/lexer, which has uncertain support status, and therefore complicates #3104265: Update Composer dependencies on Doctrine components in 9.0.x.
Proposed resolution
Remove it.
Remaining tasks
User interface changes
API changes
Data model changes
Release notes snippet
| Comment | File | Size | Author |
|---|---|---|---|
| #8 | 3105181-8-interdiff.txt | 1 KB | catch |
| #8 | 3105181-8.patch | 4.82 KB | catch |
| #2 | 3105181.patch | 3.82 KB | catch |
Comments
Comment #2
catchHere's a patch.
composer removedoesn't work with the new meta package stuff, so I just hacked it out of composer.json and composer.lockComment #3
mglamanIsn't it still used by the EmailValidator component?
Comment #4
xjmComment #5
mglamanI opened an issue on doctrine/lexer to get clarification about the version support: https://github.com/doctrine/lexer/issues/39
Comment #6
andypostRestarted tests, there's some broken ones and core/composer.json states
"egulias/email-validator": "^2.0",btw Core could use SF constraint https://api.drupal.org/api/drupal/vendor%21symfony%21validator%21Constra...
It has extra options for domains and could be a way to IDN
Comment #7
andypostMissed about validation #3054535: Discuss whether to decouple from Symfony Validator
Btw found great summary #3045516: [meta] Fully support the range of characters that are allowed in email addresses
Comment #8
catch@mglaman it's an optional dependency for Symfony's e-mail validator component, but it's only included in require-dev, so we can remove our own dependency as long as we don't do strict e-mail checking using Symfony's e-mail validator.
Missed a couple of refs in the above patch, trying again.
Also updating the issue summary since doctrine/lexer isn't actually deprecated (whoops), it's the lexer bits of Doctrine\Common that were deprecated, however we should still remove the unused dependency here and it's still a very confusing situation with lexer support status.
Comment #9
andypostpoints it is used
Comment #10
mglamanPer #9, my point (and I forgot a line) in #5 was that a component class extends it.
Comment #11
longwaveThe OP states that https://www.drupal.org/node/2997196 says it can be removed, but that's not what that change record is about - we wrapped egulias/email-validator and provided an interface so we didn't rely on the exact implementation and it could be swapped out as per #2749873: "email.validator" core service cannot be easily replaced. We still use this dependency as the email validation service pretty much everywhere we want to validate an email address.
If we do want to remove it we will have to switch our EmailValidator component to use Symfony\Component\Validator\Constraints\EmailValidator first.
Comment #12
catchArggh sorry I think this is just bad grepping on my part. Dead end here. We can do the Symfony switch maybe but that has its own issue.
Comment #13
mile23You know why you think this issue is fixed? :-)
Because we never fixed the composer.json for drupal/core-utility: #2876669-65: Fix dependency version requirement declarations in components
That is, drupal/core-utility still has a hard dependency on egulias which is unexpressed.