Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-gitdb for openSUSE:Factory 
checked in at 2025-01-31 16:02:08
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-gitdb (Old)
 and      /work/SRC/openSUSE:Factory/.python-gitdb.new.2316 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-gitdb"

Fri Jan 31 16:02:08 2025 rev:8 rq:1241510 version:4.0.12

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-gitdb/python-gitdb.changes        
2023-11-28 22:19:27.733915400 +0100
+++ /work/SRC/openSUSE:Factory/.python-gitdb.new.2316/python-gitdb.changes      
2025-01-31 16:02:27.955207709 +0100
@@ -1,0 +2,14 @@
+Wed Jan 22 11:05:28 UTC 2025 - John Paul Adrian Glaubitz 
<adrian.glaub...@suse.com>
+
+- Update to 4.0.12
+  * Never add a vendored smmap directory to sys.path
+  * Revise and update the readme
+  * Set Dependabot submodule update cadence to weekly
+  * Add missing asserts in test_base.py
+  * Use contextlib.suppress instead of except: pass
+  * Add support for Python 3.13
+  * Potential Race Condition Fix - OS Rename & Chmod - PermissionError
+  * Bump gitdb/ext/smmap from 256c5a2 to 04dd210
+  * Bump actions/setup-python from 4 to 5
+
+-------------------------------------------------------------------

Old:
----
  gitdb-4.0.11.tar.gz

New:
----
  gitdb-4.0.12.tar.gz

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

Other differences:
------------------
++++++ python-gitdb.spec ++++++
--- /var/tmp/diff_new_pack.vM7qtS/_old  2025-01-31 16:02:29.935287144 +0100
+++ /var/tmp/diff_new_pack.vM7qtS/_new  2025-01-31 16:02:29.935287144 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package python-gitdb
 #
-# Copyright (c) 2023 SUSE LLC
+# Copyright (c) 2025 SUSE LLC
 #
 # 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 @@
 
 %{?sle15_python_module_pythons}
 Name:           python-gitdb
-Version:        4.0.11
+Version:        4.0.12
 Release:        0
 Summary:        Git Object Database
 License:        BSD-3-Clause

++++++ gitdb-4.0.11.tar.gz -> gitdb-4.0.12.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gitdb-4.0.11/PKG-INFO new/gitdb-4.0.12/PKG-INFO
--- old/gitdb-4.0.11/PKG-INFO   2023-10-20 09:43:00.508155300 +0200
+++ new/gitdb-4.0.12/PKG-INFO   2025-01-02 08:20:27.663828400 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: gitdb
-Version: 4.0.11
+Version: 4.0.12
 Summary: Git Object Database
 Home-page: https://github.com/gitpython-developers/gitdb
 Author: Sebastian Thiel
@@ -22,6 +22,7 @@
 Classifier: Programming Language :: Python :: 3.10
 Classifier: Programming Language :: Python :: 3.11
 Classifier: Programming Language :: Python :: 3.12
+Classifier: Programming Language :: Python :: 3.13
 Classifier: Programming Language :: Python :: 3 :: Only
 Requires-Python: >=3.7
 License-File: LICENSE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gitdb-4.0.11/README.rst new/gitdb-4.0.12/README.rst
--- old/gitdb-4.0.11/README.rst 2022-02-21 03:44:59.000000000 +0100
+++ new/gitdb-4.0.12/README.rst 2025-01-02 08:01:03.000000000 +0100
@@ -16,34 +16,38 @@
     :target: https://readthedocs.org/projects/gitdb/?badge=latest
     :alt: Documentation Status
 
-From `PyPI <https://pypi.python.org/pypi/gitdb>`_
+From `PyPI <https://pypi.python.org/pypi/gitdb>`_::
 
  pip install gitdb
 
 SPEEDUPS
 ========
 
-If you want to go up to 20% faster, you can install gitdb-speedups with:
+If you want to go up to 20% faster, you can install gitdb-speedups with::
 
  pip install gitdb-speedups
 
+However, please note that gitdb-speedups is not currently maintained.
+
 REQUIREMENTS
 ============
 
+* smmap - declared as a dependency, automatically installed
 * pytest - for running the tests
 
 SOURCE
 ======
-The source is available in a git repository at gitorious and github:
+
+The source is available in a git repository on GitHub:
 
 https://github.com/gitpython-developers/gitdb
 
-Once the clone is complete, please be sure to initialize the submodules using
+Once the clone is complete, please be sure to initialize the submodule using::
 
  cd gitdb
  git submodule update --init
 
-Run the tests with
+Run the tests with::
 
  pytest
 
@@ -53,13 +57,13 @@
 .. image:: 
https://github.com/gitpython-developers/gitdb/workflows/Python%20package/badge.svg
     :target: https://github.com/gitpython-developers/gitdb/actions
 
-The library is considered mature, and not under active development. It's 
primary (known) use is in git-python.
+The library is considered mature, and not under active development. Its 
primary (known) use is in GitPython.
 
 INFRASTRUCTURE
 ==============
 
-* Mailing List
-    * http://groups.google.com/group/git-python
+* Discussions
+    * https://github.com/gitpython-developers/GitPython/discussions
 
 * Issue Tracker
     * https://github.com/gitpython-developers/gitdb/issues
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gitdb-4.0.11/gitdb/__init__.py 
new/gitdb-4.0.12/gitdb/__init__.py
--- old/gitdb-4.0.11/gitdb/__init__.py  2023-10-20 09:37:54.000000000 +0200
+++ new/gitdb-4.0.12/gitdb/__init__.py  2025-01-02 08:01:35.000000000 +0100
@@ -4,34 +4,12 @@
 # the New BSD License: https://opensource.org/license/bsd-3-clause/
 """Initialize the object database module"""
 
-import sys
-import os
-
-#{ Initialization
-
-
-def _init_externals():
-    """Initialize external projects by putting them into the path"""
-    if 'PYOXIDIZER' not in os.environ:
-        where = os.path.join(os.path.dirname(__file__), 'ext', 'smmap')
-        if os.path.exists(where):
-            sys.path.append(where)
-
-    import smmap
-    del smmap
-    # END handle imports
-
-#} END initialization
-
-_init_externals()
-
 __author__ = "Sebastian Thiel"
 __contact__ = "byron...@gmail.com"
 __homepage__ = "https://github.com/gitpython-developers/gitdb";
-version_info = (4, 0, 11)
+version_info = (4, 0, 12)
 __version__ = '.'.join(str(i) for i in version_info)
 
-
 # default imports
 from gitdb.base import *
 from gitdb.db import *
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gitdb-4.0.11/gitdb/db/loose.py 
new/gitdb-4.0.12/gitdb/db/loose.py
--- old/gitdb-4.0.11/gitdb/db/loose.py  2023-10-13 09:36:31.000000000 +0200
+++ new/gitdb-4.0.12/gitdb/db/loose.py  2025-01-02 08:01:03.000000000 +0100
@@ -2,6 +2,8 @@
 #
 # This module is part of GitDB and is released under
 # the New BSD License: https://opensource.org/license/bsd-3-clause/
+from contextlib import suppress
+
 from gitdb.db.base import (
     FileDBBase,
     ObjectDBR,
@@ -52,6 +54,7 @@
 import tempfile
 import os
 import sys
+import time
 
 
 __all__ = ('LooseObjectDB', )
@@ -90,10 +93,8 @@
         """
         :return: readable object path to the object identified by hexsha
         :raise BadObject: If the object file does not exist"""
-        try:
+        with suppress(KeyError):
             return self._hexsha_to_file[hexsha]
-        except KeyError:
-            pass
         # END ignore cache misses
 
         # try filesystem
@@ -205,7 +206,7 @@
             # END assure target stream is closed
         except:
             if tmp_path:
-                os.remove(tmp_path)
+                remove(tmp_path)
             raise
         # END assure tmpfile removal on error
 
@@ -228,9 +229,22 @@
                 rename(tmp_path, obj_path)
             # end rename only if needed
 
-            # make sure its readable for all ! It started out as rw-- tmp file
-            # but needs to be rwrr
-            chmod(obj_path, self.new_objects_mode)
+            # Ensure rename is actually done and file is stable
+            # Retry up to 14 times - exponential wait & retry in ms.
+            # The total maximum wait time is 1000ms, which should be vastly 
enough for the
+            # OS to return and commit the file to disk.
+            for exp_backoff_ms in [1, 4, 9, 16, 25, 36, 49, 64, 81, 100, 121, 
144, 169, 181]:
+                with suppress(PermissionError):
+                    # make sure its readable for all ! It started out as rw-- 
tmp file
+                    # but needs to be rwrr
+                    chmod(obj_path, self.new_objects_mode)
+                    break
+                time.sleep(exp_backoff_ms / 1000.0)
+            else:
+                raise PermissionError(
+                    "Impossible to apply `chmod` to file {}".format(obj_path)
+                )
+
         # END handle dry_run
 
         istream.binsha = hex_to_bin(hexsha)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gitdb-4.0.11/gitdb/test/test_base.py 
new/gitdb-4.0.12/gitdb/test/test_base.py
--- old/gitdb-4.0.11/gitdb/test/test_base.py    2023-10-13 09:36:31.000000000 
+0200
+++ new/gitdb-4.0.12/gitdb/test/test_base.py    2025-01-02 08:01:03.000000000 
+0100
@@ -73,7 +73,7 @@
 
         # test deltapackstream
         dpostream = ODeltaPackStream(*(dpinfo + (stream, )))
-        dpostream.stream is stream
+        assert dpostream.stream is stream
         dpostream.read(5)
         stream._assert()
         assert stream.bytes == 5
@@ -92,7 +92,7 @@
 
         assert istream.size == s
         istream.size = s * 2
-        istream.size == s * 2
+        assert istream.size == s * 2
         assert istream.type == str_blob_type
         istream.type = "something"
         assert istream.type == "something"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gitdb-4.0.11/gitdb.egg-info/PKG-INFO 
new/gitdb-4.0.12/gitdb.egg-info/PKG-INFO
--- old/gitdb-4.0.11/gitdb.egg-info/PKG-INFO    2023-10-20 09:43:00.000000000 
+0200
+++ new/gitdb-4.0.12/gitdb.egg-info/PKG-INFO    2025-01-02 08:20:27.000000000 
+0100
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: gitdb
-Version: 4.0.11
+Version: 4.0.12
 Summary: Git Object Database
 Home-page: https://github.com/gitpython-developers/gitdb
 Author: Sebastian Thiel
@@ -22,6 +22,7 @@
 Classifier: Programming Language :: Python :: 3.10
 Classifier: Programming Language :: Python :: 3.11
 Classifier: Programming Language :: Python :: 3.12
+Classifier: Programming Language :: Python :: 3.13
 Classifier: Programming Language :: Python :: 3 :: Only
 Requires-Python: >=3.7
 License-File: LICENSE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gitdb-4.0.11/setup.py new/gitdb-4.0.12/setup.py
--- old/gitdb-4.0.11/setup.py   2023-10-20 09:33:09.000000000 +0200
+++ new/gitdb-4.0.12/setup.py   2025-01-02 08:01:22.000000000 +0100
@@ -7,7 +7,7 @@
 __author__ = "Sebastian Thiel"
 __contact__ = "byron...@gmail.com"
 __homepage__ = "https://github.com/gitpython-developers/gitdb";
-version_info = (4, 0, 11)
+version_info = (4, 0, 12)
 __version__ = '.'.join(str(i) for i in version_info)
 
 setup(
@@ -41,6 +41,7 @@
         "Programming Language :: Python :: 3.10",
         "Programming Language :: Python :: 3.11",
         "Programming Language :: Python :: 3.12",
+        "Programming Language :: Python :: 3.13",
         "Programming Language :: Python :: 3 :: Only",
     ]
 )

Reply via email to