Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-discid for openSUSE:Factory 
checked in at 2026-08-05 17:49:22
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-discid (Old)
 and      /work/SRC/openSUSE:Factory/.python-discid.new.16738 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-discid"

Wed Aug  5 17:49:22 2026 rev:12 rq:1369589 version:1.4.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-discid/python-discid.changes      
2026-04-07 16:49:16.869463673 +0200
+++ /work/SRC/openSUSE:Factory/.python-discid.new.16738/python-discid.changes   
2026-08-05 17:50:16.305789135 +0200
@@ -1,0 +2,94 @@
+Tue Aug  4 21:12:24 UTC 2026 - Dirk Müller <[email protected]>
+
+- update to 1.4.2:
+  * Provide Python wheel on PyPI.
+  * Removed remaining Python 2 specific code from util.py.
+  * Mark package as typed by adding a py.typed marker file.
+  * Added type hints to the public API for better IDE support and
+    type checking.
+  * Added :attr:`Disc.pregap` property.
+  * Fixed: mutable default arguments in function signatures.
+  * Accept any Sequence[int] for offsets in :func:`put`.
+  * Removed Python 2 specific code and comments.
+  * Improved code consistency with ruff formatting and linting.
+  * Minimum supported Python version is now 3.10 (previously
+    3.9).
+  * Enhanced documentation with type hints using sphinx-autodoc-
+    typehints.
+  * Fixed typos and broken links in documentation.
+  * Modernized, PEP 518 compatible, build system using
+    pyproject.toml.
+  * Minimum supported Python version is now 3.9.
+  * :issue:`51` tests requiring a physical disc are not run by
+    default anymore. Set the environment variable
+    PYTHON_DISCID_TEST_DEVICE to enable them or run make
+    disccheck.
+  * Fixed :func:`put` to work with first track number greater
+    than 1.
+  * Add :attr:`Disc.cddb_query_string` property.
+  * improve install with pip
+  * add Makefile
+  * workaround :issue:`43` for py2app problems
+  * :issue:`41` improve windows example
+  * feature :issue:`36` add :attr:`Disc.toc_string`
+  * :issue:`38` remove :class:`DiscId` (deprecated since 0.5.0)
+  * fix: :issue:`37` test_emptyness: Assertion disc->success
+    failed
+  * revert code to version 1.0.0 (see :issue:`35`)
+  * fix: :issue:`35` deprecation warning for DEFAULT_DEVICE shows
+    always
+  * renamed a api documentation page, a redirect was created
+  * fix: :issue:`34` bring back :data:`DEFAULT_DEVICE` as
+    deprecated
+  * :issue:`30` :data:`DEFAULT_DEVICE` is now
+    :func:`get_default_device()`
+  * :issue:`32` :attr:`Disc.submission_url` doesn't point to a
+    redirect now
+  * fix: seconds are now rounded the same as on MB server
+    (0.5->up)
+  * feature: :issue:`10` add :attr:`Disc.mcn` and
+    :attr:`Track.isrc`
+  * feature: add :data:`LIBDISCID_VERSION_STRING`
+  * feature: :issue:`28` add :attr:`Disc.seconds`,
+    :attr:`Track.seconds` and aliases :attr:`Disc.length` and
+    :attr:`Track.sectors`
+  * :issue:`22` move :func:`read` and :func:`put` to module level
+  * :issue:`25` provide a package discid rather than a module
+  * :issue:`29` changed parameters for :func:`put` to include
+    extra sectors and add :exc:`TOCError`
+  * rename :class:`DiscId` to :class:`Disc`
+  * fix: :issue:`27` move track attributes to :class:`Track`
+  * fix: :issue:`24` only have "real" tracks in the list(s) (0
+    not special)
+  * fix: :issue:`19` only read the requested features from disc
+    (sparse)
+  * fix: :issue:`26` remove :attr:`DiscId.webservice_url`
+    (deprecated)
+  * fix: detect the version of libdiscid 0.3.0 also in lib64
+    installations
+  * feature: added :data:`FEATURES_IMPLEMENTED`,
+    :attr:`DiscId.track_lengths`, :attr:`DiscId.webservice_url`
+    and :attr:`DiscId.freedb_id`
+  * feature :issue:`18`: disc access test suite
+  * fix :issue:`21`: uninformative error on Windows
+  * feature :issue:`20`: add :data:`FEATURES` list
+  * feature: :func:`DiscId.put`, :attr:`DiscId.track_offsets`,
+    :attr:`DiscId.sectors`, :attr:`DiscId.first_track_num`,
+    :attr:`DiscId.last_track_num`
+  * fix :issue:`17`: test fails on Mac OS X for default_device
+  * fix :issue:`16`: prefer libdiscid in current directory
+  * fix :issue:`15`: import can now raise :exc:`OSError`
+  * fix :issue:`14`: find libdiscid in current folder
+    (Linux/Unix)
+  * fix :issue:`9`: test fails on Python 3.2 because of unicode
+    literals
+  * API change from :func:`DiscId.get_id` to :attr:`DiscId.id`
+  * added :data:`DEFAULT_DEVICE` as a module constant
+  * added :attr:`DiscId.submission_url`
+  * added an actual documentation and links to linux packages
+  * add tests and continuous integration configuration
+  * add changelog
+  * initial version with :func:`DiscId.read` and
+    :func:`DiscId.get_id`
+
+-------------------------------------------------------------------

Old:
----
  discid-1.4.0.tar.gz

New:
----
  discid-1.4.2.tar.gz

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

Other differences:
------------------
++++++ python-discid.spec ++++++
--- /var/tmp/diff_new_pack.fDPHHR/_old  2026-08-05 17:50:16.853808364 +0200
+++ /var/tmp/diff_new_pack.fDPHHR/_new  2026-08-05 17:50:16.853808364 +0200
@@ -19,7 +19,7 @@
 
 %{?sle15allpythons}
 Name:           python-discid
-Version:        1.4.0
+Version:        1.4.2
 Release:        0
 Summary:        Python binding of Libdiscid
 License:        LGPL-3.0-or-later

++++++ discid-1.4.0.tar.gz -> discid-1.4.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/discid-1.4.0/CHANGES.rst new/discid-1.4.2/CHANGES.rst
--- old/discid-1.4.0/CHANGES.rst        2026-03-30 08:15:56.000000000 +0200
+++ new/discid-1.4.2/CHANGES.rst        2026-07-10 12:20:05.000000000 +0200
@@ -1,6 +1,15 @@
 Changelog
 =========
 
+Changes in 1.4.2 (2026-07-10):
+------------------------------
+ * Provide Python wheel on PyPI.
+ * Removed remaining Python 2 specific code from ``util.py``.
+
+Changes in 1.4.1 (2026-06-24):
+------------------------------
+ * Mark package as typed by adding a ``py.typed`` marker file.
+
 Changes in 1.4.0 (2026-03-30):
 ------------------------------
  * Added type hints to the public API for better IDE support and type checking.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/discid-1.4.0/PKG-INFO new/discid-1.4.2/PKG-INFO
--- old/discid-1.4.0/PKG-INFO   2026-03-30 08:16:01.948351400 +0200
+++ new/discid-1.4.2/PKG-INFO   2026-07-10 12:20:14.504207400 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.4
 Name: discid
-Version: 1.4.0
+Version: 1.4.2
 Summary: Python binding of Libdiscid
 Author-email: Johannes Dewender <[email protected]>, Philipp Wolfer 
<[email protected]>
 License-Expression: LGPL-3.0-or-later
@@ -16,6 +16,7 @@
 Classifier: Programming Language :: Python :: 3 :: Only
 Classifier: Topic :: Multimedia :: Sound/Audio :: CD Audio :: CD Ripping
 Classifier: Topic :: Software Development :: Libraries :: Python Modules
+Classifier: Typing :: Typed
 Requires-Python: >=3.10
 Description-Content-Type: text/x-rst
 License-File: COPYING.LESSER
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/discid-1.4.0/discid/__init__.py 
new/discid-1.4.2/discid/__init__.py
--- old/discid-1.4.0/discid/__init__.py 2026-03-30 08:15:56.000000000 +0200
+++ new/discid-1.4.2/discid/__init__.py 2026-07-10 12:20:05.000000000 +0200
@@ -33,19 +33,19 @@
 from discid.libdiscid import get_default_device
 from discid.track import Track
 
-__version__ = "1.4.0"
+__version__ = "1.4.2"
 
 __all__ = [
-    "LIBDISCID_VERSION_STRING",
     "FEATURES",
     "FEATURES_IMPLEMENTED",
+    "LIBDISCID_VERSION_STRING",
     "Disc",
-    "Track",
     "DiscError",
     "TOCError",
-    "read",
-    "put",
+    "Track",
     "get_default_device",
+    "put",
+    "read",
 ]
 
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/discid-1.4.0/discid/disc.py 
new/discid-1.4.2/discid/disc.py
--- old/discid-1.4.0/discid/disc.py     2026-03-30 08:15:56.000000000 +0200
+++ new/discid-1.4.2/discid/disc.py     2026-07-10 12:20:05.000000000 +0200
@@ -191,7 +191,7 @@
         # only the "read" (= TOC) feature is supported by put
         self._requested_features = ["read"]
 
-        offsets = [disc_sectors] + list(track_offsets)
+        offsets = [disc_sectors, *track_offsets]
         # libdiscid always expects an array of 100 integers, no matter the 
track count.
         c_offsets = (c_int * 100)()
         c_offsets[0] = offsets[0]
@@ -398,11 +398,11 @@
     @property
     def tracks(self) -> list[Track]:
         """A list of :class:`Track` objects for this Disc."""
-        tracks: list[Track] = []
         assert self._success
-        for number in range(self.first_track_num, self.last_track_num + 1):
-            tracks.append(Track(self, number))
-        return tracks
+        return [
+            Track(self, number)
+            for number in range(self.first_track_num, self.last_track_num + 1)
+        ]
 
     @property
     def cddb_query_string(self) -> str:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/discid-1.4.0/discid/libdiscid.py 
new/discid-1.4.2/discid/libdiscid.py
--- old/discid-1.4.0/discid/libdiscid.py        2026-03-30 08:15:56.000000000 
+0200
+++ new/discid-1.4.2/discid/libdiscid.py        2026-07-10 12:20:05.000000000 
+0200
@@ -156,9 +156,7 @@
     if _features_available:
         c_features = (c_char_p * 32)()
         _LIB.discid_get_feature_list(c_features)
-        for feature in c_features:
-            if feature:
-                features.append(_decode(feature))
+        features.extend(_decode(feature) for feature in c_features if feature)
     else:
         # libdiscid <= 0.4.0
         features = ["read"]  # no generic platform yet
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/discid-1.4.0/discid/util.py 
new/discid-1.4.2/discid/util.py
--- old/discid-1.4.0/discid/util.py     2026-03-30 08:15:56.000000000 +0200
+++ new/discid-1.4.2/discid/util.py     2026-07-10 12:20:05.000000000 +0200
@@ -30,8 +30,6 @@
     elif isinstance(string, bytes):
         return string
     raise TypeError("Unexpected type, expected string or bytes")
-    # UnicodeDecodeError (Python 2) is NOT caught
-    # device names should be ASCII
 
 
 def _decode(byte_string: bytes | str) -> str:
@@ -43,15 +41,12 @@
     raise TypeError("Unexpected type, expected string or bytes")
 
 
-def _sectors_to_seconds(sectors: int | float) -> int:
+def _sectors_to_seconds(sectors: float) -> int:
     """Round sectors to seconds like done on MusicBrainz Server
 
     The result is forced to :obj:int to make formatted output easier.
     """
-    # note that `round(2.5) == 2` on Python 3
-    # and math.floor doesn't return :obj:int on Python 2
-    # additionally always `int / int =^= int` in Python 2
-    return int(math.floor((sectors / float(SECTORS_PER_SECOND)) + 0.5))
+    return math.floor((sectors / float(SECTORS_PER_SECOND)) + 0.5)
 
 
 # vim:set shiftwidth=4 smarttab expandtab:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/discid-1.4.0/discid.egg-info/PKG-INFO 
new/discid-1.4.2/discid.egg-info/PKG-INFO
--- old/discid-1.4.0/discid.egg-info/PKG-INFO   2026-03-30 08:16:01.000000000 
+0200
+++ new/discid-1.4.2/discid.egg-info/PKG-INFO   2026-07-10 12:20:14.000000000 
+0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.4
 Name: discid
-Version: 1.4.0
+Version: 1.4.2
 Summary: Python binding of Libdiscid
 Author-email: Johannes Dewender <[email protected]>, Philipp Wolfer 
<[email protected]>
 License-Expression: LGPL-3.0-or-later
@@ -16,6 +16,7 @@
 Classifier: Programming Language :: Python :: 3 :: Only
 Classifier: Topic :: Multimedia :: Sound/Audio :: CD Audio :: CD Ripping
 Classifier: Topic :: Software Development :: Libraries :: Python Modules
+Classifier: Typing :: Typed
 Requires-Python: >=3.10
 Description-Content-Type: text/x-rst
 License-File: COPYING.LESSER
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/discid-1.4.0/discid.egg-info/SOURCES.txt 
new/discid-1.4.2/discid.egg-info/SOURCES.txt
--- old/discid-1.4.0/discid.egg-info/SOURCES.txt        2026-03-30 
08:16:01.000000000 +0200
+++ new/discid-1.4.2/discid.egg-info/SOURCES.txt        2026-07-10 
12:20:14.000000000 +0200
@@ -9,6 +9,7 @@
 discid/__init__.py
 discid/disc.py
 discid/libdiscid.py
+discid/py.typed
 discid/track.py
 discid/util.py
 discid.egg-info/PKG-INFO
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/discid-1.4.0/doc/CHANGES.rst 
new/discid-1.4.2/doc/CHANGES.rst
--- old/discid-1.4.0/doc/CHANGES.rst    2026-03-30 08:15:56.000000000 +0200
+++ new/discid-1.4.2/doc/CHANGES.rst    2026-07-10 12:20:05.000000000 +0200
@@ -1,6 +1,15 @@
 Changelog
 =========
 
+Changes in 1.4.2 (2026-07-10):
+------------------------------
+ * Provide Python wheel on PyPI.
+ * Removed remaining Python 2 specific code from ``util.py``.
+
+Changes in 1.4.1 (2026-06-24):
+------------------------------
+ * Mark package as typed by adding a ``py.typed`` marker file.
+
 Changes in 1.4.0 (2026-03-30):
 ------------------------------
  * Added type hints to the public API for better IDE support and type checking.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/discid-1.4.0/pyproject.toml 
new/discid-1.4.2/pyproject.toml
--- old/discid-1.4.0/pyproject.toml     2026-03-30 08:15:56.000000000 +0200
+++ new/discid-1.4.2/pyproject.toml     2026-07-10 12:20:05.000000000 +0200
@@ -4,7 +4,7 @@
 
 [project]
 name = "discid"
-version = "1.4.0"
+version = "1.4.2"
 description = "Python binding of Libdiscid"
 authors = [
   {name = "Johannes Dewender", email = "[email protected]"},
@@ -22,6 +22,7 @@
   "Programming Language :: Python :: 3 :: Only",
   "Topic :: Multimedia :: Sound/Audio :: CD Audio :: CD Ripping",
   "Topic :: Software Development :: Libraries :: Python Modules",
+  "Typing :: Typed",
 ]
 
 [project.urls]
@@ -43,8 +44,11 @@
     "ruff>=0.14.13",
 ]
 
+[tool.setuptools.package-data]
+discid = ["py.typed"]
+
 [tool.ruff]
 src=["discid"]
 
 [tool.ruff.lint]
-select = ["E", "F", "W", "B"]
+select = ["E", "F", "B", "I", "UP", "RUF", "PYI", "PERF"]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/discid-1.4.0/test_discid.py 
new/discid-1.4.2/test_discid.py
--- old/discid-1.4.0/test_discid.py     2026-03-30 08:15:56.000000000 +0200
+++ new/discid-1.4.2/test_discid.py     2026-07-10 12:20:05.000000000 +0200
@@ -210,16 +210,15 @@
                     track.seconds, math.floor((track.sectors / 75.0) + 0.5)
                 )
                 self.assertEqual(type(track.seconds), int)
-            toc = [
-                test_disc.first,
-                disc.last_track_num,
-                disc.sectors,
-            ] + track_offsets
+            toc = [test_disc.first, disc.last_track_num, disc.sectors, 
*track_offsets]
             toc_string = " ".join(map(str, toc))
             self.assertEqual(disc.toc_string, toc_string)
-            cddb_query = (
-                [disc.freedb_id, disc.last_track_num] + track_offsets + 
[disc.seconds]
-            )
+            cddb_query = [
+                disc.freedb_id,
+                disc.last_track_num,
+                *track_offsets,
+                disc.seconds,
+            ]
             cddb_query_string = " ".join(map(str, cddb_query))
             self.assertEqual(disc.cddb_query_string, cddb_query_string)
 

Reply via email to