Hello community,

here is the log from the commit of package python-tldextract for 
openSUSE:Factory checked in at 2019-03-11 11:16:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-tldextract (Old)
 and      /work/SRC/openSUSE:Factory/.python-tldextract.new.28833 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-tldextract"

Mon Mar 11 11:16:15 2019 rev:4 rq:683625 version:2.2.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-tldextract/python-tldextract.changes      
2018-12-24 11:45:20.353242199 +0100
+++ 
/work/SRC/openSUSE:Factory/.python-tldextract.new.28833/python-tldextract.changes
   2019-03-11 11:17:28.293294949 +0100
@@ -1,0 +2,13 @@
+Sun Mar 10 19:57:13 UTC 2019 - Martin Herkt <9+suse@cirno.systems>
+
+- Run test suite
+- Add tldextract-tests-offline.patch
+  No internet connection on OBS build hosts; skip suffix list
+  snapshot diff
+- Update to 2.2.1
+  * Bugfixes
+    - Ignore case on punycode prefix check
+    - Drop support for EOL Python 2.6
+    - Improve sundry doc and README bits
+
+-------------------------------------------------------------------

Old:
----
  tldextract-2.2.0.tar.gz

New:
----
  tldextract-2.2.1.tar.gz
  tldextract-tests-offline.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-tldextract.spec ++++++
--- /var/tmp/diff_new_pack.vnHQll/_old  2019-03-11 11:17:33.621293032 +0100
+++ /var/tmp/diff_new_pack.vnHQll/_new  2019-03-11 11:17:33.625293030 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package python-tldextract
 #
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
 
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
 Name:           python-tldextract
-Version:        2.2.0
+Version:        2.2.1
 Release:        0
 Summary:        Python module to separate the TLD of a URL
 License:        BSD-3-Clause
@@ -26,6 +26,15 @@
 Url:            https://github.com/john-kurkowski/tldextract
 Source:         
https://files.pythonhosted.org/packages/source/t/tldextract/tldextract-%{version}.tar.gz
 Source1:        %{name}-rpmlintrc
+# No internet connection on OBS build hosts; skip suffix list snapshot diff
+Patch:          tldextract-tests-offline.patch
+### BEGIN test requirements
+BuildRequires:  %{python_module pytest-mock}
+BuildRequires:  %{python_module pytest}
+BuildRequires:  %{python_module requests-file} >= 1.4
+BuildRequires:  %{python_module requests} >= 2.1.0
+BuildRequires:  %{python_module responses}
+### END test requirements
 BuildRequires:  %{python_module setuptools}
 BuildRequires:  fdupes
 BuildRequires:  python-rpm-macros
@@ -46,6 +55,7 @@
 
 %prep
 %setup -q -n tldextract-%{version}
+%autopatch -p1
 
 %build
 %python_build
@@ -54,6 +64,10 @@
 %python_install
 %python_expand %fdupes %{buildroot}%{$python_sitelib}
 
+%check
+%python_exec setup.py develop --user
+%python_exec -m pytest -v tests
+
 %files %{python_files}
 %license LICENSE
 %doc README.md

++++++ tldextract-2.2.0.tar.gz -> tldextract-2.2.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tldextract-2.2.0/PKG-INFO 
new/tldextract-2.2.1/PKG-INFO
--- old/tldextract-2.2.0/PKG-INFO       2017-10-27 08:07:26.000000000 +0200
+++ new/tldextract-2.2.1/PKG-INFO       2019-03-05 19:55:34.000000000 +0100
@@ -1,12 +1,11 @@
-Metadata-Version: 1.1
+Metadata-Version: 2.1
 Name: tldextract
-Version: 2.2.0
+Version: 2.2.1
 Summary: Accurately separate the TLD from the registered domain and subdomains 
of a URL, using the Public Suffix List. By default, this includes the public 
ICANN TLDs and their exceptions. You can optionally support the Public Suffix 
List's private domains as well.
 Home-page: https://github.com/john-kurkowski/tldextract
 Author: John Kurkowski
 Author-email: john.kurkow...@gmail.com
 License: BSD License
-Description-Content-Type: UNKNOWN
 Description: `tldextract` accurately separates the gTLD or ccTLD (generic or 
country code
         top-level domain) from the registered domain and subdomains of a URL.
         
@@ -39,9 +38,10 @@
 Classifier: Topic :: Utilities
 Classifier: License :: OSI Approved :: BSD License
 Classifier: Programming Language :: Python :: 2
-Classifier: Programming Language :: Python :: 2.6
 Classifier: Programming Language :: Python :: 2.7
 Classifier: Programming Language :: Python :: 3
 Classifier: Programming Language :: Python :: 3.4
 Classifier: Programming Language :: Python :: 3.5
 Classifier: Programming Language :: Python :: 3.6
+Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*
+Description-Content-Type: text/markdown
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tldextract-2.2.0/README.md 
new/tldextract-2.2.1/README.md
--- old/tldextract-2.2.0/README.md      2017-08-21 00:09:29.000000000 +0200
+++ new/tldextract-2.2.1/README.md      2019-03-05 17:47:17.000000000 +0100
@@ -14,10 +14,9 @@
 instead of 'bbc' and 'co.uk' respectively.
 
 `tldextract` on the other hand knows what all gTLDs and ccTLDs look like by
-looking up the currently living ones according to
-[the Public Suffix List](http://www.publicsuffix.org). So,
-given a URL, it knows its subdomain from its domain, and its domain from its
-country code.
+looking up the currently living ones according to [the Public Suffix List
+(PSL)](http://www.publicsuffix.org). So, given a URL, it knows its subdomain
+from its domain, and its domain from its country code.
 
 ```python
 >>> import tldextract
@@ -150,8 +149,8 @@
 
 #### Public vs. Private Domains
 
-[The Public Suffix List](https://publicsuffix.org/list/) maintains a concept of
-"private" domains.
+The PSL [maintains a concept of "private"
+domains](https://publicsuffix.org/list/).
 
 > PRIVATE domains are amendments submitted by the domain holder, as an
 > expression of how they operate their domain security policy. … While some
@@ -159,8 +158,7 @@
 > entries the same, other applications may wish to treat ICANN domains and
 > PRIVATE domains differently.
 
-By default, `tldextract` treats public and private domains the same. It's the
-more common case when people mentally parse a URL.
+By default, `tldextract` treats public and private domains the same.
 
 ```python
 >>> extract = tldextract.TLDExtract()
@@ -168,8 +166,7 @@
 ExtractResult(subdomain='waiterrant', domain='blogspot', suffix='com')
 ```
 
-But you can distinguish the Public Suffix List's private domains too, if you
-want.
+The following overrides this.
 
 ```python
 >>> extract = tldextract.TLDExtract(include_psl_private_domains=True)
@@ -178,6 +175,11 @@
 ExtractResult(subdomain='', domain='waiterrant', suffix='blogspot.com')
 ```
 
+The thinking behind the default is, it's the more common case when people
+mentally parse a URL. It doesn't assume familiarity with the PSL nor that the
+PSL makes such a distinction. Note this may run counter to the default parsing
+behavior of other, PSL-based libraries.
+
 #### Specifying your own URL or file for the Suffix List data
 
 You can specify your own input data in place of the default Mozilla Public 
Suffix List:
@@ -213,7 +215,7 @@
 
 (In the meantime, you can tell tldextract about your exception by either
 forking the PSL and using your fork in the `suffix_list_urls` param, or adding
-your suffix piecemeal with the `additional_suffixes` param.)
+your suffix piecemeal with the `extra_suffixes` param.)
 
 #### If I pass an invalid URL, I still get a result, no error. What gives?
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tldextract-2.2.0/setup.py 
new/tldextract-2.2.1/setup.py
--- old/tldextract-2.2.0/setup.py       2017-10-27 07:55:42.000000000 +0200
+++ new/tldextract-2.2.1/setup.py       2019-03-05 19:53:32.000000000 +0100
@@ -25,22 +25,19 @@
 You can optionally support the Public Suffix List's private domains as well.
 """
 
-import re
 import sys
 from setuptools import setup
 
-# I don't want to learn reStructuredText right now, so strip Markdown links
-# that make pip barf.
-LONG_DESCRIPTION_MD = __doc__
-LONG_DESCRIPTION = re.sub(r'(?s)\[(.*?)\]\((http.*?)\)', r'\1', 
LONG_DESCRIPTION_MD)
+if sys.version_info < (2, 7):
+    raise RuntimeError("Python 2.6 is EOL and no longer supported. "
+                       "Please upgrade your Python or use an older "
+                       "version of tldextract.")
 
 INSTALL_REQUIRES = ["setuptools", "idna", "requests>=2.1.0", 
"requests-file>=1.4"]
-if (2, 7) > sys.version_info:
-    INSTALL_REQUIRES.append("argparse>=1.2.1")
 
 setup(
     name="tldextract",
-    version="2.2.0",
+    version="2.2.1",
     author="John Kurkowski",
     author_email="john.kurkow...@gmail.com",
     description=("Accurately separate the TLD from the registered domain and "
@@ -53,13 +50,14 @@
     url="https://github.com/john-kurkowski/tldextract";,
     packages=['tldextract'],
     include_package_data=True,
-    long_description=LONG_DESCRIPTION,
+    python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*',
+    long_description=__doc__,
+    long_description_content_type="text/markdown",
     classifiers=[
         "Development Status :: 5 - Production/Stable",
         "Topic :: Utilities",
         "License :: OSI Approved :: BSD License",
         "Programming Language :: Python :: 2",
-        "Programming Language :: Python :: 2.6",
         "Programming Language :: Python :: 2.7",
         "Programming Language :: Python :: 3",
         "Programming Language :: Python :: 3.4",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tldextract-2.2.0/tests/main_test.py 
new/tldextract-2.2.1/tests/main_test.py
--- old/tldextract-2.2.0/tests/main_test.py     2017-10-25 09:35:42.000000000 
+0200
+++ new/tldextract-2.2.1/tests/main_test.py     2019-03-05 18:09:22.000000000 
+0100
@@ -102,6 +102,10 @@
 def test_punycode():
     assert_extract('http://xn--h1alffa9f.xn--p1ai',
                    ('xn--h1alffa9f.xn--p1ai', '', 'xn--h1alffa9f', 'xn--p1ai'))
+    assert_extract('http://xN--h1alffa9f.xn--p1ai',
+                   ('xN--h1alffa9f.xn--p1ai', '', 'xN--h1alffa9f', 'xn--p1ai'))
+    assert_extract('http://XN--h1alffa9f.xn--p1ai',
+                   ('XN--h1alffa9f.xn--p1ai', '', 'XN--h1alffa9f', 'xn--p1ai'))
     # Entries that might generate UnicodeError exception
     # This subdomain generates UnicodeError 'IDNA does not round-trip'
     
assert_extract('xn--tub-1m9d15sfkkhsifsbqygyujjrw602gk4li5qqk98aca0w.google.com',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tldextract-2.2.0/tldextract/remote.py 
new/tldextract-2.2.1/tldextract/remote.py
--- old/tldextract-2.2.0/tldextract/remote.py   2017-10-27 01:16:43.000000000 
+0200
+++ new/tldextract-2.2.1/tldextract/remote.py   2019-03-05 18:09:22.000000000 
+0100
@@ -19,6 +19,9 @@
 
 
 IP_RE = 
re.compile(r'^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$')
  # pylint: disable=line-too-long
+
+PUNY_RE = re.compile(r'^xn--', re.IGNORECASE)
+
 SCHEME_RE = re.compile(r'^([' + scheme_chars + ']+:)?//')
 
 LOG = logging.getLogger('tldextract')
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tldextract-2.2.0/tldextract/tldextract.py 
new/tldextract-2.2.1/tldextract/tldextract.py
--- old/tldextract-2.2.0/tldextract/tldextract.py       2017-10-25 
09:35:42.000000000 +0200
+++ new/tldextract-2.2.1/tldextract/tldextract.py       2019-03-05 
18:09:22.000000000 +0100
@@ -77,8 +77,9 @@
 
 from .remote import find_first_response
 from .remote import looks_like_ip
-from .remote import SCHEME_RE
 from .remote import IP_RE
+from .remote import PUNY_RE
+from .remote import SCHEME_RE
 
 # pylint: disable=invalid-name,undefined-variable
 try:
@@ -245,7 +246,7 @@
         labels = netloc.split(".")
 
         def decode_punycode(label):
-            if label.startswith("xn--"):
+            if PUNY_RE.match(label):
                 try:
                     return idna.decode(label.encode('ascii'))
                 except UnicodeError:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tldextract-2.2.0/tldextract.egg-info/PKG-INFO 
new/tldextract-2.2.1/tldextract.egg-info/PKG-INFO
--- old/tldextract-2.2.0/tldextract.egg-info/PKG-INFO   2017-10-27 
08:07:26.000000000 +0200
+++ new/tldextract-2.2.1/tldextract.egg-info/PKG-INFO   2019-03-05 
19:55:34.000000000 +0100
@@ -1,12 +1,11 @@
-Metadata-Version: 1.1
+Metadata-Version: 2.1
 Name: tldextract
-Version: 2.2.0
+Version: 2.2.1
 Summary: Accurately separate the TLD from the registered domain and subdomains 
of a URL, using the Public Suffix List. By default, this includes the public 
ICANN TLDs and their exceptions. You can optionally support the Public Suffix 
List's private domains as well.
 Home-page: https://github.com/john-kurkowski/tldextract
 Author: John Kurkowski
 Author-email: john.kurkow...@gmail.com
 License: BSD License
-Description-Content-Type: UNKNOWN
 Description: `tldextract` accurately separates the gTLD or ccTLD (generic or 
country code
         top-level domain) from the registered domain and subdomains of a URL.
         
@@ -39,9 +38,10 @@
 Classifier: Topic :: Utilities
 Classifier: License :: OSI Approved :: BSD License
 Classifier: Programming Language :: Python :: 2
-Classifier: Programming Language :: Python :: 2.6
 Classifier: Programming Language :: Python :: 2.7
 Classifier: Programming Language :: Python :: 3
 Classifier: Programming Language :: Python :: 3.4
 Classifier: Programming Language :: Python :: 3.5
 Classifier: Programming Language :: Python :: 3.6
+Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*
+Description-Content-Type: text/markdown
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tldextract-2.2.0/tldextract.egg-info/SOURCES.txt 
new/tldextract-2.2.1/tldextract.egg-info/SOURCES.txt
--- old/tldextract-2.2.0/tldextract.egg-info/SOURCES.txt        2017-10-27 
08:07:26.000000000 +0200
+++ new/tldextract-2.2.1/tldextract.egg-info/SOURCES.txt        2019-03-05 
19:55:34.000000000 +0100
@@ -20,6 +20,5 @@
 tldextract.egg-info/SOURCES.txt
 tldextract.egg-info/dependency_links.txt
 tldextract.egg-info/entry_points.txt
-tldextract.egg-info/pbr.json
 tldextract.egg-info/requires.txt
 tldextract.egg-info/top_level.txt
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tldextract-2.2.0/tldextract.egg-info/pbr.json 
new/tldextract-2.2.1/tldextract.egg-info/pbr.json
--- old/tldextract-2.2.0/tldextract.egg-info/pbr.json   2015-09-26 
19:45:40.000000000 +0200
+++ new/tldextract-2.2.1/tldextract.egg-info/pbr.json   1970-01-01 
01:00:00.000000000 +0100
@@ -1 +0,0 @@
-{"is_release": false, "git_version": "317ec7e"}
\ No newline at end of file

++++++ tldextract-tests-offline.patch ++++++
diff -ru tldextract-2.2.1.orig/tests/integration_test.py 
tldextract-2.2.1/tests/integration_test.py
--- tldextract-2.2.1.orig/tests/integration_test.py     2016-04-04 
04:11:18.000000000 +0200
+++ tldextract-2.2.1/tests/integration_test.py  2019-03-10 21:25:34.201039604 
+0100
@@ -8,24 +8,6 @@
 
 import tldextract
 
-
-def test_log_snapshot_diff(mocker):
-    mocker.patch.object(logging.getLogger(), 'level', logging.DEBUG)
-    debug_mock = mocker.patch.object(logging.getLogger('tldextract'), 'debug')
-
-    extractor = tldextract.TLDExtract()
-    try:
-        os.remove(extractor.cache_file)
-    except (IOError, OSError):
-        logging.warning(traceback.format_exc())
-
-    extractor('ignore.com')
-
-    assert debug_mock.call_count == 1
-    log_str = debug_mock.call_args[0][0]
-    assert log_str.startswith('computed TLD diff')
-
-
 def test_bad_kwargs():
     with pytest.raises(ValueError):
         tldextract.TLDExtract(

Reply via email to