bbb0eee201Accepting request 1184005 from devel:languages:python
factory
Ana Guerrero
2024-07-02 16:14:32 +00:00
1b6ec08e25- update to 2.2.0: * Email addresses with internationalized local parts could, with rare Unicode characters, be returned as valid but actually be invalid in their normalized form (returned in the normalized field). Local parts now re-validated after Unicode NFC normalization to ensure that invalid characters cannot be injected into the normalized address and that characters with length-increasing NFC normalizations cannot cause a local part to exceed the maximum length after normalization. * The length check for email addresses with internationalized local parts is now also applied to the original address string prior to Unicode NFC normalization, which may be longer and could exceed the maximum email address length, to protect callers who do not use the returned normalized address. * Improved error message for IDNA domains that are too long or have invalid characters after Unicode normalization. * A new option to parse My Name <address@domain> strings, i.e. a display name plus an email address in angle brackets, is now available. It is off by default. * Improvements to Python typing. * Some additional tests added.
devel
Dirk Mueller2024-06-29 16:02:30 +00:00
d1a56ef00bAccepting request 1181682 from devel:languages:python
Ana Guerrero
2024-06-20 14:46:29 +00:00
5ce700d3ea- update to 2.1.2: * The domain name length limit is corrected from 255 to 253 IDNA ASCII characters. I misread the RFCs. * When a domain name has no MX record but does have an A or AAAA record, if none of the IP addresses in the response are globally reachable (i.e. not Private-Use, Loopback, etc.), the response is treated as if there was no A/AAAA response and the email address will fail the deliverability check. * When a domain name has no MX record but does have an A or AAAA record, the mx field in the object returned by validate_email incorrectly held the IP addresses rather than the domain itself. * Fixes in tests.Dirk Mueller2024-06-19 07:08:46 +00:00
a720363e70Accepting request 1178915 from devel:languages:python
Ana Guerrero
2024-06-07 13:02:11 +00:00
3505d41520- update to 2.1.1: * Fixed typo 'marking' instead of 'marketing' in case- insensitive mailbox name list. * When DNS-based deliverability checks fail, in some cases exceptions are now thrown with raise ... from for better nested exception tracking. * Fixed tests to work when no local resolver can be configured. * This project is now licensed under the Unlicense (instead of CC0). * Minor improvements to tests. * Minor improvements to code style. - drop dont-require-resolv-tests.patch: obsolete * Ignore warning as error from requests-toolbelt via dnspython.Dirk Mueller2024-06-06 07:39:25 +00:00
b955f71d35Accepting request 1128295 from devel:languages:python
Ana Guerrero
2023-11-23 20:38:34 +00:00
cfa5cb234a- update to 2.1.0: * Python 3.8+ is now required (support for Python 3.7 was dropped). * The old email field on the returned ValidatedEmail object, which in the previous version was superseded by normalized, will now raise a deprecation warning if used. See https://stackoverflow.com/q/879173 for strategies to suppress the DeprecationWarning. * A __version__ module attribute is added. * The email address argument to validate_email is now marked as positional-only to better reflect the documented usage using the new Python 3.8 feature.Dirk Mueller2023-11-16 10:03:49 +00:00
bcb82af895- Add dont-require-resolv-tests.patch to make tests run without an existing /etc/resolv.conf file - Update to 2.0.0: 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 emailDaniel Garcia2023-05-25 08:33:48 +00:00
632f8f6fe9- update to 1.3.1: * 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.Dirk Mueller2023-01-28 13:40:18 +00:00
5d25f04318Accepting request 1007824 from devel:languages:pythonRichard Brown2022-10-04 18:37:59 +00:00
0c9b640537- Update to 1.3.0: * 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. * 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.Daniel Garcia2022-10-04 08:07:40 +00:00
04b4aa3a72- Update to 1.2.1: * Rejecting domains with NULL MX records (when deliverability checks are turned on). * Rejecting unsafe unicode characters. (Some of these checks you should be doing on all of your user inputs already!) * Rejecting most special-use reserved domain names. A new test_environment option is added for using @*.test domains. * example and example.com/net/org are removed from the special-use domains list. * SPECIAL_USE_DOMAIN_NAMES is now a documented part of the API (and it is a list instead of a tuple) * New module-level attributes ALLOW_SMTPUTF8, CHECK_DELIVERABILITY, TEST_ENVIRONMENT, and DEFAULT_TIMEOUT can be used to change the default values of the keyword arguments. - Add patch ignore-urllib3-pyopenssl-warning.patch: * Ignore warning as error from requests-toolbelt via dnspython.
Steve Kowalik
2022-09-08 07:28:34 +00:00