FRDP
FRDP copied to clipboard
⬆ Update email-validator requirement from <1.3.2,>=1.1.0 to >=1.1.0,<2.0.1
Updates the requirements on email-validator to permit the latest version.
Changelog
Sourced from email-validator's changelog.
2.0.0 (April 15, 2023)
This is a major update to the library, but since email address specs haven't changed there should be no significant changes to which email addresses are considered valid or invalid with default options. There are new options for accepting unusual email addresses that were previously always rejected, some changes to how DNS errors are handled, many changes in error message text, and major internal improvements including the addition of type annotations. Python 3.7+ is now required. Details follow:
- Python 2.x and 3.x versions through 3.6, and dnspython 1.x, are no longer supported. Python 3.7+ with dnspython 2.x are now required.
- The dnspython package is no longer required if DNS checks are not used, although it will install automatically.
- NoNameservers and NXDOMAIN DNS errors are now handled differently: NoNameservers no longer fails validation, and NXDOMAIN now skips checking for an A/AAAA fallback and goes straight to failing validation.
- Some syntax error messages have changed because they are now checked explicitly rather than as a part of other checks.
- The quoted-string local part syntax (e.g. multiple @-signs, spaces, etc. if surrounded by quotes) and domain-literal addresses (e.g. @[192.XXX...] or @[IPv6:...]) are now parsed but not considered valid by default. Better error messages are now given for these addresses since it can be confusing for a technically valid address to be rejected, and new allow_quoted_local and allow_domain_literal options are added to allow these addresses if you really need them.
- Some other error messages have changed to not repeat the email address in the error message.
- The
ValidatedEmail
object has been renamed tonormalized
to be clearer about its importance, but access via- Some mailbox names like
postmaster
are now normalized to lowercase per RFC 2142.- The library has been reorganized internally into smaller modules.
- The tests have been reorganized and expanded. Deliverability tests now mostly use captured DNS responses so they can be run off-line.
- The main tool now reads options to validate_email from environment variables.
- Type annotations have been added to the exported methods and the ValidatedEmail class and some internal methods.
- The old dict-like pattern for the return value of validate_email is deprecated.
Version 2.0.0.post1 corrects some packaging issues.
Version 1.3.1 (January 21, 2023)
- The new SPF 'v=spf1 -all' (reject-all) deliverability check is removed in most cases. It now is performed only for domains that do not have MX records but do have an A/AAAA fallback record.
Version 1.3.0 (September 18, 2022)
- Deliverability checks now check for 'v=spf1 -all' SPF records as a way to reject more bad domains.
- Special use domain names now raise EmailSyntaxError instead of EmailUndeliverableError since they are performed even if check_deliverability is off.
- New module-level attributes are added to override the default values of the keyword arguments and the special-use domains list.
- The keyword arguments of the public methods are now marked as keyword-only, ending support for Python 2.x.
- pyIsEmail's test cases are added to the tests.
- Recommend that check_deliverability be set to False for validation on login pages.
- Added an undocumented globally_deliverable option.
Version 1.2.1 (May 1, 2022)
- example.com/net/org are removed from the special-use reserved domain names list so that they do not raise exceptions if check_deliverability is off.
- Improved README.
Verison 1.2.0 (April 24, 2022)
- Reject domains with NULL MX records (when deliverability checks are turned on).
- Reject unsafe unicode characters. (Some of these checks you should be doing on all of your user inputs already!)
... (truncated)
Commits
- See full diff in compare view
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase
.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
-
@dependabot rebase
will rebase this PR -
@dependabot recreate
will recreate this PR, overwriting any edits that have been made to it -
@dependabot merge
will merge this PR after your CI passes on it -
@dependabot squash and merge
will squash and merge this PR after your CI passes on it -
@dependabot cancel merge
will cancel a previously requested merge and block automerging -
@dependabot reopen
will reopen this PR if it is closed -
@dependabot close
will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually -
@dependabot ignore this major version
will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) -
@dependabot ignore this minor version
will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) -
@dependabot ignore this dependency
will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)