Hello community,
here is the log from the commit of package python-email_validator for
openSUSE:Factory checked in at 2019-05-08 15:15:59
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-email_validator (Old)
and /work/SRC/openSUSE:Factory/.python-email_validator.new.5148 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-email_validator"
Wed May 8 15:15:59 2019 rev:4 rq:701278 version:1.0.4
Changes:
--------
---
/work/SRC/openSUSE:Factory/python-email_validator/python-email_validator.changes
2019-03-29 20:35:18.786569816 +0100
+++
/work/SRC/openSUSE:Factory/.python-email_validator.new.5148/python-email_validator.changes
2019-05-08 15:16:00.528927440 +0200
@@ -1,0 +2,6 @@
+Tue May 7 10:28:10 UTC 2019 - [email protected]
+
+- version update to 1.0.4
+ * no upstream changelog
+
+-------------------------------------------------------------------
Old:
----
v1.0.3.tar.gz
New:
----
v1.0.4.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-email_validator.spec ++++++
--- /var/tmp/diff_new_pack.nakRag/_old 2019-05-08 15:16:01.700930051 +0200
+++ /var/tmp/diff_new_pack.nakRag/_new 2019-05-08 15:16:01.736930131 +0200
@@ -18,7 +18,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-email_validator
-Version: 1.0.3
+Version: 1.0.4
Release: 0
Summary: A robust email syntax and deliverability validation library
for Python
License: CC0-1.0
@@ -61,7 +61,8 @@
%python_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
-# there are no tests
+%check
+%{python_expand $python email_validator/__init__.py --tests < test_pass.txt}
%files %{python_files}
%license LICENSE
++++++ v1.0.3.tar.gz -> v1.0.4.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python-email-validator-1.0.3/.gitignore
new/python-email-validator-1.0.4/.gitignore
--- old/python-email-validator-1.0.3/.gitignore 1970-01-01 01:00:00.000000000
+0100
+++ new/python-email-validator-1.0.4/.gitignore 2019-05-02 21:43:32.000000000
+0200
@@ -0,0 +1,18 @@
+__pycache__/
+*.py[cod]
+*$py.class
+*.so
+.Python
+build/
+dist/
+downloads/
+eggs/
+.eggs/
+*.egg-info/
+*.egg
+*.log
+docs/_build/
+.python-version
+.env
+.venv
+env/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python-email-validator-1.0.3/README.rst
new/python-email-validator-1.0.4/README.rst
--- old/python-email-validator-1.0.3/README.rst 2017-09-12 13:47:58.000000000
+0200
+++ new/python-email-validator-1.0.4/README.rst 2019-05-02 21:43:32.000000000
+0200
@@ -188,6 +188,13 @@
do this at account creation time so you don't change the user's login
information without telling them.)
+UCS-4 support required for Python 2.7
+'''''''''''''''''''''''''''''''''''''
+
+Note that when using Python 2.7, it is required that it was built with
+UCS-4 support (see `here
<https://stackoverflow.com/questions/29109944/python-returns-length-of-2-for-single-unicode-character-string>`__);
otherwise emails with unicode characters outside
+of the BMP (Basic Multilingual Plane) will not validate correctly.
+
Normalization
-------------
@@ -268,7 +275,7 @@
Note that ``smtputf8`` is ``False`` even though the domain part is
internationalized because
-`SMTPUTF8 <https://tools.ietf.org/html/rfc6531>`__ is only
+`SMTPUTF8 <https://tools.ietf.org/html/rfc6531>`__ is only
needed if the local part of the address is internationalized (the domain
part can be converted to IDNA ASCII). Also note that the ``email`` and
``domain_i18n`` fields provide a normalized form of the email address
@@ -390,9 +397,13 @@
For Project Maintainers
-----------------------
-To publish a universal wheel to pypi::
+The package is distributed as a universal wheel. The wheel is specified as
+universal in the file ``setup.cfg`` by the ``universal = 1`` key in the
+``[bdist_wheel]`` section. To publish a universal wheel to pypi::
pip3 install twine
rm -rf dist
- python3 setup.py bdist_wheel --universal
+ python3 setup.py bdist_wheel
twine upload dist/*
+ git tag v1.0.XXX
+ git push --tags
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/python-email-validator-1.0.3/email_validator/__init__.py
new/python-email-validator-1.0.4/email_validator/__init__.py
--- old/python-email-validator-1.0.3/email_validator/__init__.py
2017-09-12 13:47:58.000000000 +0200
+++ new/python-email-validator-1.0.4/email_validator/__init__.py
2019-05-02 21:43:32.000000000 +0200
@@ -39,6 +39,8 @@
DOT_ATOM_TEXT = DOT_ATOM_TEXT.decode("ascii")
ATEXT_HOSTNAME = ATEXT_HOSTNAME.decode("ascii")
+DEFAULT_TIMEOUT = 15 # secs
+
class EmailNotValidError(ValueError):
"""Parent class of all exceptions raised by this module."""
pass
@@ -55,7 +57,8 @@
email,
allow_smtputf8=True,
allow_empty_local=False,
- check_deliverability=True):
+ check_deliverability=True,
+ timeout=DEFAULT_TIMEOUT):
"""Validates an email address, raising an EmailNotValidError if the
address is not valid or returning a dict of information
when the address is valid. The email argument can be a str or a bytes
instance, but if bytes it must be ASCII-only."""
@@ -88,7 +91,7 @@
if check_deliverability:
# Validate the email address's deliverability and update the
# return dict with metadata.
- ret.update(validate_email_deliverability(ret["domain"],
ret["domain_i18n"]))
+ ret.update(validate_email_deliverability(ret["domain"],
ret["domain_i18n"], timeout))
# If the email address has an ASCII form, add it.
ret["email"] = ret["local"] + "@" + ret["domain_i18n"]
@@ -233,13 +236,16 @@
"domain_i18n": domain_i18n,
}
-def validate_email_deliverability(domain, domain_i18n):
+def validate_email_deliverability(domain, domain_i18n,
timeout=DEFAULT_TIMEOUT):
# Check that the domain resolves to an MX record. If there is no MX
record,
# try an A or AAAA record which is a deprecated fallback for
deliverability.
try:
resolver = dns.resolver.get_default_resolver()
+ if timeout:
+ resolver.lifetime = timeout
+
try:
# Try resolving for MX records and get them in sorted
priority order.
response = dns.resolver.query(domain, "MX")
@@ -260,7 +266,7 @@
mtas = [(0, str(r)) for r in response]
mx_fallback = "AAAA"
except (dns.resolver.NoNameservers,
dns.resolver.NXDOMAIN, dns.resolver.NoAnswer):
-
+
# If there was no MX, A, or AAAA
record, then mail to
# this domain is not deliverable.
raise EmailUndeliverableError("The
domain name %s does not exist." % domain_i18n)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python-email-validator-1.0.3/setup.cfg
new/python-email-validator-1.0.4/setup.cfg
--- old/python-email-validator-1.0.3/setup.cfg 1970-01-01 01:00:00.000000000
+0100
+++ new/python-email-validator-1.0.4/setup.cfg 2019-05-02 21:43:32.000000000
+0200
@@ -0,0 +1,5 @@
+[bdist_wheel]
+universal = 1
+
+[metadata]
+license_file = LICENSE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/python-email-validator-1.0.3/setup.py
new/python-email-validator-1.0.4/setup.py
--- old/python-email-validator-1.0.3/setup.py 2017-09-12 13:47:58.000000000
+0200
+++ new/python-email-validator-1.0.4/setup.py 2019-05-02 21:43:32.000000000
+0200
@@ -6,7 +6,7 @@
setup(
name='email_validator',
- version='1.0.3',
+ version='1.0.4',
description='A robust email syntax and deliverability validation
library for Python 2.x/3.x.',
long_description=open("README.rst", encoding='utf-8').read(),
@@ -16,7 +16,7 @@
author_email=u'[email protected]',
license='CC0 (copyright waived)',
- # See https://pypi.python.org/pypi?%3Aaction=list_classifiers
+ # See https://pypi.org/pypi?%3Aaction=list_classifiers
classifiers=[
'Development Status :: 5 - Production/Stable',
'License :: CC0 1.0 Universal (CC0 1.0) Public Domain
Dedication',
@@ -24,10 +24,12 @@
'Intended Audience :: Developers',
'Topic :: Software Development :: Libraries :: Python Modules',
+ 'Programming Language :: Python :: 2',
'Programming Language :: Python :: 2.7',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
+ 'Programming Language :: Python :: 3.6',
],
keywords="email address validator",