Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-uritools for openSUSE:Factory 
checked in at 2026-04-26 21:11:31
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-uritools (Old)
 and      /work/SRC/openSUSE:Factory/.python-uritools.new.11940 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-uritools"

Sun Apr 26 21:11:31 2026 rev:7 rq:1349288 version:6.0.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-uritools/python-uritools.changes  
2026-03-10 18:01:07.810894813 +0100
+++ 
/work/SRC/openSUSE:Factory/.python-uritools.new.11940/python-uritools.changes   
    2026-04-26 21:14:12.656524718 +0200
@@ -1,0 +2,7 @@
+Sat Apr 25 20:55:45 UTC 2026 - Dirk Müller <[email protected]>
+
+- update to 6.0.2:
+  * Minor code improvements.
+  * Update project URLs.
+
+-------------------------------------------------------------------

Old:
----
  uritools-6.0.1.tar.gz

New:
----
  uritools-6.0.2.tar.gz

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

Other differences:
------------------
++++++ python-uritools.spec ++++++
--- /var/tmp/diff_new_pack.1wcMQa/_old  2026-04-26 21:14:13.236548415 +0200
+++ /var/tmp/diff_new_pack.1wcMQa/_new  2026-04-26 21:14:13.240548579 +0200
@@ -18,7 +18,7 @@
 
 %{?sle15_python_module_pythons}
 Name:           python-uritools
-Version:        6.0.1
+Version:        6.0.2
 Release:        0
 Summary:        URI parsing, classification and composition
 License:        MIT

++++++ uritools-6.0.1.tar.gz -> uritools-6.0.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/uritools-6.0.1/CHANGELOG.rst 
new/uritools-6.0.2/CHANGELOG.rst
--- old/uritools-6.0.1/CHANGELOG.rst    2025-12-21 19:57:35.000000000 +0100
+++ new/uritools-6.0.2/CHANGELOG.rst    2026-04-22 22:09:19.000000000 +0200
@@ -1,3 +1,12 @@
+v6.0.2 (2026-04-22)
+===================
+
+- Minor code improvements.
+
+- Update project URLs.
+
+- Update CI environment.
+
 v6.0.1 (2025-12-21)
 ===================
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/uritools-6.0.1/PKG-INFO new/uritools-6.0.2/PKG-INFO
--- old/uritools-6.0.1/PKG-INFO 2025-12-21 19:58:40.898700000 +0100
+++ new/uritools-6.0.2/PKG-INFO 2026-04-22 22:16:59.532577000 +0200
@@ -1,11 +1,16 @@
 Metadata-Version: 2.4
 Name: uritools
-Version: 6.0.1
+Version: 6.0.2
 Summary: URI parsing, classification and composition
 Author-email: Thomas Kemmer <[email protected]>
 Maintainer-email: Thomas Kemmer <[email protected]>
 License-Expression: MIT
 Project-URL: Homepage, https://github.com/tkem/uritools/
+Project-URL: Documentation, https://uritools.readthedocs.io/en/stable/
+Project-URL: Source, https://github.com/tkem/uritools/
+Project-URL: Repository, https://github.com/tkem/uritools/
+Project-URL: Issues, https://github.com/tkem/uritools/issues
+Project-URL: Changelog, 
https://github.com/tkem/uritools/blob/master/CHANGELOG.rst
 Classifier: Development Status :: 5 - Production/Stable
 Classifier: Intended Audience :: Developers
 Classifier: Operating System :: OS Independent
@@ -26,8 +31,8 @@
 ========================================================================
 
 .. image:: https://img.shields.io/pypi/v/uritools
-    :target: https://pypi.org/project/uritools
-    :alt: Latest PyPI version
+   :target: https://pypi.org/project/uritools
+   :alt: Latest PyPI version
 
 .. image:: 
https://img.shields.io/github/actions/workflow/status/tkem/uritools/ci.yml
    :target: https://github.com/tkem/uritools/actions/workflows/ci.yml
@@ -121,14 +126,14 @@
 
 - rfc3986_: A Python implementation of RFC 3986 including validation
   and authority parsing.
-- rfc3987_: Parsing and validation of URIs (RFC 3896) and IRIs (RFC
+- rfc3987_: Parsing and validation of URIs (RFC 3986) and IRIs (RFC
   3987).
 
 
 License
 ------------------------------------------------------------------------
 
-Copyright (c) 2014-2025 Thomas Kemmer.
+Copyright (c) 2014-2026 Thomas Kemmer.
 
 Licensed under the `MIT License`_.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/uritools-6.0.1/README.rst 
new/uritools-6.0.2/README.rst
--- old/uritools-6.0.1/README.rst       2025-05-02 15:51:45.000000000 +0200
+++ new/uritools-6.0.2/README.rst       2026-04-22 22:09:19.000000000 +0200
@@ -2,8 +2,8 @@
 ========================================================================
 
 .. image:: https://img.shields.io/pypi/v/uritools
-    :target: https://pypi.org/project/uritools
-    :alt: Latest PyPI version
+   :target: https://pypi.org/project/uritools
+   :alt: Latest PyPI version
 
 .. image:: 
https://img.shields.io/github/actions/workflow/status/tkem/uritools/ci.yml
    :target: https://github.com/tkem/uritools/actions/workflows/ci.yml
@@ -97,14 +97,14 @@
 
 - rfc3986_: A Python implementation of RFC 3986 including validation
   and authority parsing.
-- rfc3987_: Parsing and validation of URIs (RFC 3896) and IRIs (RFC
+- rfc3987_: Parsing and validation of URIs (RFC 3986) and IRIs (RFC
   3987).
 
 
 License
 ------------------------------------------------------------------------
 
-Copyright (c) 2014-2025 Thomas Kemmer.
+Copyright (c) 2014-2026 Thomas Kemmer.
 
 Licensed under the `MIT License`_.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/uritools-6.0.1/docs/conf.py 
new/uritools-6.0.2/docs/conf.py
--- old/uritools-6.0.1/docs/conf.py     2025-05-02 15:05:47.000000000 +0200
+++ new/uritools-6.0.2/docs/conf.py     2026-04-22 22:09:19.000000000 +0200
@@ -19,7 +19,7 @@
 
 
 project = "uritools"
-copyright = "2014-2025 Thomas Kemmer"
+copyright = "2014-2026 Thomas Kemmer"
 release, version = get_version()
 
 extensions = [
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/uritools-6.0.1/pyproject.toml 
new/uritools-6.0.2/pyproject.toml
--- old/uritools-6.0.1/pyproject.toml   2025-12-21 19:53:22.000000000 +0100
+++ new/uritools-6.0.2/pyproject.toml   2026-04-22 22:09:19.000000000 +0200
@@ -32,6 +32,11 @@
 
 [project.urls]
 Homepage = "https://github.com/tkem/uritools/";
+Documentation = "https://uritools.readthedocs.io/en/stable/";
+Source = "https://github.com/tkem/uritools/";
+Repository = "https://github.com/tkem/uritools/";
+Issues = "https://github.com/tkem/uritools/issues";
+Changelog = "https://github.com/tkem/uritools/blob/master/CHANGELOG.rst";
 
 [tool.setuptools]
 package-dir = {"" = "src"}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/uritools-6.0.1/src/uritools/__init__.py 
new/uritools-6.0.2/src/uritools/__init__.py
--- old/uritools-6.0.1/src/uritools/__init__.py 2025-12-21 19:57:35.000000000 
+0100
+++ new/uritools-6.0.2/src/uritools/__init__.py 2026-04-22 22:09:19.000000000 
+0200
@@ -13,7 +13,6 @@
 import re
 from string import hexdigits
 
-
 __all__ = (
     "GEN_DELIMS",
     "RESERVED",
@@ -34,7 +33,7 @@
     "uriunsplit",
 )
 
-__version__ = "6.0.1"
+__version__ = "6.0.2"
 
 
 # RFC 3986 2.2.  Reserved Characters
@@ -77,6 +76,9 @@
         uristring = uristring.encode(encoding, errors)
     if not isinstance(safe, bytes):
         safe = safe.encode("ascii")
+    # FIXME: though unlikely, _encoded may grow without bounds if arbitrary
+    # safe values are passed by a caller - consider using @functools.lru_cache
+    # instead of plain dict?
     try:
         encoded = _encoded[safe]
     except KeyError:
@@ -293,10 +295,10 @@
         the values are lists of values for each name.
 
         """
-        dict = collections.defaultdict(list)
+        result = collections.defaultdict(list)
         for name, value in self.getquerylist(sep, encoding, errors):
-            dict[name].append(value)
-        return dict
+            result[name].append(value)
+        return result
 
     def getquerylist(self, sep="&", encoding="utf-8", errors="strict"):
         """Split the query component into individual `name=value` pairs
@@ -312,15 +314,15 @@
             qsl = self.query.split(sep.decode("ascii"))
         else:
             qsl = self.query.split(sep.encode("ascii"))
-        items = []
+        result = []
         for parts in [qs.partition(self.EQ) for qs in qsl if qs]:
             name = uridecode(parts[0], encoding, errors)
             if parts[1]:
                 value = uridecode(parts[2], encoding, errors)
             else:
                 value = None
-            items.append((name, value))
-        return items
+            result.append((name, value))
+        return result
 
     def getfragment(self, default=None, encoding="utf-8", errors="strict"):
         """Return the decoded fragment identifier, or `default` if the
@@ -636,8 +638,10 @@
         authority.append(host.compressed.encode())
     elif isinstance(host, bytes):
         authority.append(_host(host))
-    elif host is not None:
+    elif isinstance(host, str):
         authority.append(_host(host.encode("utf-8")))
+    elif host is not None:
+        raise TypeError("Invalid host type: %r" % type(host))
 
     if isinstance(port, numbers.Number):
         authority.append(_port(str(port).encode()))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/uritools-6.0.1/src/uritools.egg-info/PKG-INFO 
new/uritools-6.0.2/src/uritools.egg-info/PKG-INFO
--- old/uritools-6.0.1/src/uritools.egg-info/PKG-INFO   2025-12-21 
19:58:40.000000000 +0100
+++ new/uritools-6.0.2/src/uritools.egg-info/PKG-INFO   2026-04-22 
22:16:59.000000000 +0200
@@ -1,11 +1,16 @@
 Metadata-Version: 2.4
 Name: uritools
-Version: 6.0.1
+Version: 6.0.2
 Summary: URI parsing, classification and composition
 Author-email: Thomas Kemmer <[email protected]>
 Maintainer-email: Thomas Kemmer <[email protected]>
 License-Expression: MIT
 Project-URL: Homepage, https://github.com/tkem/uritools/
+Project-URL: Documentation, https://uritools.readthedocs.io/en/stable/
+Project-URL: Source, https://github.com/tkem/uritools/
+Project-URL: Repository, https://github.com/tkem/uritools/
+Project-URL: Issues, https://github.com/tkem/uritools/issues
+Project-URL: Changelog, 
https://github.com/tkem/uritools/blob/master/CHANGELOG.rst
 Classifier: Development Status :: 5 - Production/Stable
 Classifier: Intended Audience :: Developers
 Classifier: Operating System :: OS Independent
@@ -26,8 +31,8 @@
 ========================================================================
 
 .. image:: https://img.shields.io/pypi/v/uritools
-    :target: https://pypi.org/project/uritools
-    :alt: Latest PyPI version
+   :target: https://pypi.org/project/uritools
+   :alt: Latest PyPI version
 
 .. image:: 
https://img.shields.io/github/actions/workflow/status/tkem/uritools/ci.yml
    :target: https://github.com/tkem/uritools/actions/workflows/ci.yml
@@ -121,14 +126,14 @@
 
 - rfc3986_: A Python implementation of RFC 3986 including validation
   and authority parsing.
-- rfc3987_: Parsing and validation of URIs (RFC 3896) and IRIs (RFC
+- rfc3987_: Parsing and validation of URIs (RFC 3986) and IRIs (RFC
   3987).
 
 
 License
 ------------------------------------------------------------------------
 
-Copyright (c) 2014-2025 Thomas Kemmer.
+Copyright (c) 2014-2026 Thomas Kemmer.
 
 Licensed under the `MIT License`_.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/uritools-6.0.1/tests/test_compose.py 
new/uritools-6.0.2/tests/test_compose.py
--- old/uritools-6.0.1/tests/test_compose.py    2021-10-11 20:18:34.000000000 
+0200
+++ new/uritools-6.0.2/tests/test_compose.py    2026-04-22 22:09:19.000000000 
+0200
@@ -115,9 +115,9 @@
                 uricompose(authority=authority)
         # invalid host type
         for host in (True, 42, 3.14, ipaddress.IPv6Network("2001:db00::0/24")):
-            with self.assertRaises(AttributeError, msg="host=%r" % host):
+            with self.assertRaises(TypeError, msg="host=%r" % host):
                 uricompose(authority=[None, host, None])
-            with self.assertRaises(AttributeError, msg="host=%r" % host):
+            with self.assertRaises(TypeError, msg="host=%r" % host):
                 uricompose(host=host)
         # invalid host ip-literal
         for host in ("[foo]", "[v1.x]"):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/uritools-6.0.1/tests/test_encoding.py 
new/uritools-6.0.2/tests/test_encoding.py
--- old/uritools-6.0.1/tests/test_encoding.py   2021-10-11 20:18:34.000000000 
+0200
+++ new/uritools-6.0.2/tests/test_encoding.py   2026-04-22 22:09:19.000000000 
+0200
@@ -57,13 +57,13 @@
             ("%F6lk%FCrbis", b"\xf6lk\xfcrbis"),
             (b"%F6lk%FCrbis", b"\xf6lk\xfcrbis"),
         ]
-        for input, output in cases:
-            self.assertEqual(uridecode(input, encoding=None), output)
+        for uristring, expected in cases:
+            self.assertEqual(uridecode(uristring, encoding=None), expected)
 
     def test_encode_bytes(self):
         cases = [(b"\xf6lk\xfcrbis", b"%F6lk%FCrbis")]
-        for input, output in cases:
-            self.assertEqual(uriencode(input, encoding=None), output)
+        for uristring, expected in cases:
+            self.assertEqual(uriencode(uristring, encoding=None), expected)
 
     def test_decode_errors(self):
         cases = [
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/uritools-6.0.1/tests/test_split.py 
new/uritools-6.0.2/tests/test_split.py
--- old/uritools-6.0.1/tests/test_split.py      2025-12-21 19:41:35.000000000 
+0100
+++ new/uritools-6.0.2/tests/test_split.py      2026-04-22 22:09:19.000000000 
+0200
@@ -4,7 +4,7 @@
 
 
 class SplitTest(unittest.TestCase):
-    def check(self, uri, parts, decoded=None):
+    def check(self, uri, parts):
         result = urisplit(uri)
         self.assertEqual(result, parts, "Error parsing %r" % uri)
         self.assertEqual(result.geturi(), uri, "Error recomposing %r" % uri)
@@ -387,12 +387,12 @@
             self.assertEqual(
                 parts.getquerylist(),
                 querylist,
-                "Error parsing query dict for %r" % query,
+                "Error parsing query list for %r" % query,
             )
             self.assertEqual(
                 parts.getquerydict(),
                 querydict,
-                "Error parsing query list for %r" % query,
+                "Error parsing query dict for %r" % query,
             )
 
     def test_getquerysep(self):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/uritools-6.0.1/tests/test_unsplit.py 
new/uritools-6.0.2/tests/test_unsplit.py
--- old/uritools-6.0.1/tests/test_unsplit.py    2021-10-11 20:18:34.000000000 
+0200
+++ new/uritools-6.0.2/tests/test_unsplit.py    2026-04-22 22:09:19.000000000 
+0200
@@ -28,5 +28,5 @@
                 b"urn:example:animal:ferret:nose",
             ),
         ]
-        for uri, parts in cases:
-            self.check(uri, parts)
+        for parts, uri in cases:
+            self.check(parts, uri)

Reply via email to