Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-s3transfer for 
openSUSE:Factory checked in at 2025-07-30 11:41:07
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-s3transfer (Old)
 and      /work/SRC/openSUSE:Factory/.python-s3transfer.new.13279 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-s3transfer"

Wed Jul 30 11:41:07 2025 rev:39 rq:1296097 version:0.13.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-s3transfer/python-s3transfer.changes      
2025-05-31 19:14:17.620377802 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-s3transfer.new.13279/python-s3transfer.changes
   2025-07-30 11:41:15.428480168 +0200
@@ -1,0 +2,7 @@
+Wed Jul 23 12:20:57 UTC 2025 - John Paul Adrian Glaubitz 
<adrian.glaub...@suse.com>
+
+- Update to version 0.13.1
+  * enhancement:Python: Added provisional support for the
+    upcoming Python 3.14 release
+
+-------------------------------------------------------------------

Old:
----
  s3transfer-0.13.0.tar.gz

New:
----
  s3transfer-0.13.1.tar.gz

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

Other differences:
------------------
++++++ python-s3transfer.spec ++++++
--- /var/tmp/diff_new_pack.EKMond/_old  2025-07-30 11:41:16.460522830 +0200
+++ /var/tmp/diff_new_pack.EKMond/_new  2025-07-30 11:41:16.464522996 +0200
@@ -18,7 +18,7 @@
 
 %{?sle15_python_module_pythons}
 Name:           python-s3transfer
-Version:        0.13.0
+Version:        0.13.1
 Release:        0
 Summary:        Python S3 transfer manager
 License:        Apache-2.0

++++++ s3transfer-0.13.0.tar.gz -> s3transfer-0.13.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/s3transfer-0.13.0/PKG-INFO 
new/s3transfer-0.13.1/PKG-INFO
--- old/s3transfer-0.13.0/PKG-INFO      2025-05-22 20:05:33.230821400 +0200
+++ new/s3transfer-0.13.1/PKG-INFO      2025-07-18 20:11:17.464557200 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: s3transfer
-Version: 0.13.0
+Version: 0.13.1
 Summary: An Amazon S3 Transfer Manager
 Home-page: https://github.com/boto/s3transfer
 Author: Amazon Web Services
@@ -18,6 +18,7 @@
 Classifier: Programming Language :: Python :: 3.11
 Classifier: Programming Language :: Python :: 3.12
 Classifier: Programming Language :: Python :: 3.13
+Classifier: Programming Language :: Python :: 3.14
 Requires-Python: >= 3.9
 License-File: LICENSE.txt
 License-File: NOTICE.txt
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/s3transfer-0.13.0/s3transfer/__init__.py 
new/s3transfer-0.13.1/s3transfer/__init__.py
--- old/s3transfer-0.13.0/s3transfer/__init__.py        2025-05-22 
20:05:33.000000000 +0200
+++ new/s3transfer-0.13.1/s3transfer/__init__.py        2025-07-18 
20:11:17.000000000 +0200
@@ -134,6 +134,7 @@
 import socket
 import string
 import threading
+from logging import NullHandler
 
 from botocore.compat import six  # noqa: F401
 from botocore.exceptions import IncompleteReadError, ResponseStreamingError
@@ -145,12 +146,7 @@
 from s3transfer.exceptions import RetriesExceededError, S3UploadFailedError
 
 __author__ = 'Amazon Web Services'
-__version__ = '0.13.0'
-
-
-class NullHandler(logging.Handler):
-    def emit(self, record):
-        pass
+__version__ = '0.13.1'
 
 
 logger = logging.getLogger(__name__)
@@ -513,7 +509,7 @@
         with self._shutdown_lock:
             if self._shutdown:
                 raise QueueShutdownError(
-                    "Cannot put item to queue when " "queue has been shutdown."
+                    "Cannot put item to queue when queue has been shutdown."
                 )
         return queue.Queue.put(self, item)
 
@@ -800,8 +796,7 @@
             )
         except Exception:
             logger.debug(
-                "Exception caught in download_file, removing partial "
-                "file: %s",
+                "Exception caught in download_file, removing partial file: %s",
                 temp_filename,
                 exc_info=True,
             )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/s3transfer-0.13.0/s3transfer/crt.py 
new/s3transfer-0.13.1/s3transfer/crt.py
--- old/s3transfer-0.13.0/s3transfer/crt.py     2025-05-22 20:00:38.000000000 
+0200
+++ new/s3transfer-0.13.1/s3transfer/crt.py     2025-07-18 20:11:17.000000000 
+0200
@@ -46,6 +46,7 @@
 from s3transfer.utils import (
     CallArgs,
     OSUtils,
+    create_nested_client,
     get_callbacks,
     is_s3express_bucket,
 )
@@ -481,7 +482,7 @@
         if client_kwargs is None:
             client_kwargs = {}
         self._resolve_client_config(session, client_kwargs)
-        self._client = session.create_client(**client_kwargs)
+        self._client = create_nested_client(session, **client_kwargs)
         self._client.meta.events.register(
             'request-created.s3.*', self._capture_http_request
         )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/s3transfer-0.13.0/s3transfer/manager.py 
new/s3transfer-0.13.1/s3transfer/manager.py
--- old/s3transfer-0.13.0/s3transfer/manager.py 2025-05-22 20:00:38.000000000 
+0200
+++ new/s3transfer-0.13.1/s3transfer/manager.py 2025-07-18 20:11:17.000000000 
+0200
@@ -514,8 +514,9 @@
         for kwarg in actual:
             if kwarg not in allowed:
                 raise ValueError(
-                    "Invalid extra_args key '{}', "
-                    "must be one of: {}".format(kwarg, ', '.join(allowed))
+                    "Invalid extra_args key '{}', must be one of: {}".format(
+                        kwarg, ', '.join(allowed)
+                    )
                 )
 
     def _add_operation_defaults(self, extra_args):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/s3transfer-0.13.0/s3transfer/processpool.py 
new/s3transfer-0.13.1/s3transfer/processpool.py
--- old/s3transfer-0.13.0/s3transfer/processpool.py     2025-05-22 
20:00:38.000000000 +0200
+++ new/s3transfer-0.13.1/s3transfer/processpool.py     2025-07-18 
20:11:17.000000000 +0200
@@ -214,6 +214,7 @@
     OSUtils,
     calculate_num_parts,
     calculate_range_parameter,
+    create_nested_client,
 )
 
 logger = logging.getLogger(__name__)
@@ -577,9 +578,8 @@
 
     def create_client(self):
         """Create a botocore S3 client"""
-        return botocore.session.Session().create_client(
-            's3', **self._client_kwargs
-        )
+        session = botocore.session.Session()
+        return create_nested_client(session, 's3', **self._client_kwargs)
 
 
 class TransferMonitor:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/s3transfer-0.13.0/s3transfer/subscribers.py 
new/s3transfer-0.13.1/s3transfer/subscribers.py
--- old/s3transfer-0.13.0/s3transfer/subscribers.py     2025-05-22 
20:00:38.000000000 +0200
+++ new/s3transfer-0.13.1/s3transfer/subscribers.py     2025-07-18 
20:11:17.000000000 +0200
@@ -20,7 +20,7 @@
     """The base subscriber class
 
     It is recommended that all subscriber implementations subclass and then
-    override the subscription methods (i.e. on_{subsribe_type}() methods).
+    override the subscription methods (i.e. on_{subscribe_type}() methods).
     """
 
     VALID_SUBSCRIBER_TYPES = ['queued', 'progress', 'done']
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/s3transfer-0.13.0/s3transfer/utils.py 
new/s3transfer-0.13.1/s3transfer/utils.py
--- old/s3transfer-0.13.0/s3transfer/utils.py   2025-05-22 20:00:38.000000000 
+0200
+++ new/s3transfer-0.13.1/s3transfer/utils.py   2025-07-18 20:11:17.000000000 
+0200
@@ -831,3 +831,18 @@
     if any(checksum in extra_args for checksum in FULL_OBJECT_CHECKSUM_ARGS):
         return
     extra_args.setdefault("ChecksumAlgorithm", DEFAULT_CHECKSUM_ALGORITHM)
+
+
+# NOTE: The following interfaces are considered private and are subject
+# to abrupt breaking changes. Please do not use them directly.
+
+try:
+    from botocore.utils import create_nested_client as create_client
+except ImportError:
+
+    def create_client(session, *args, **kwargs):
+        return session.create_client(*args, **kwargs)
+
+
+def create_nested_client(session, service_name, **kwargs):
+    return create_client(session, service_name, **kwargs)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/s3transfer-0.13.0/s3transfer.egg-info/PKG-INFO 
new/s3transfer-0.13.1/s3transfer.egg-info/PKG-INFO
--- old/s3transfer-0.13.0/s3transfer.egg-info/PKG-INFO  2025-05-22 
20:05:33.000000000 +0200
+++ new/s3transfer-0.13.1/s3transfer.egg-info/PKG-INFO  2025-07-18 
20:11:17.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: s3transfer
-Version: 0.13.0
+Version: 0.13.1
 Summary: An Amazon S3 Transfer Manager
 Home-page: https://github.com/boto/s3transfer
 Author: Amazon Web Services
@@ -18,6 +18,7 @@
 Classifier: Programming Language :: Python :: 3.11
 Classifier: Programming Language :: Python :: 3.12
 Classifier: Programming Language :: Python :: 3.13
+Classifier: Programming Language :: Python :: 3.14
 Requires-Python: >= 3.9
 License-File: LICENSE.txt
 License-File: NOTICE.txt
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/s3transfer-0.13.0/setup.py 
new/s3transfer-0.13.1/setup.py
--- old/s3transfer-0.13.0/setup.py      2025-05-22 20:00:38.000000000 +0200
+++ new/s3transfer-0.13.1/setup.py      2025-07-18 20:11:17.000000000 +0200
@@ -47,5 +47,6 @@
         'Programming Language :: Python :: 3.11',
         'Programming Language :: Python :: 3.12',
         'Programming Language :: Python :: 3.13',
+        'Programming Language :: Python :: 3.14',
     ],
 )
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/s3transfer-0.13.0/tests/functional/test_upload.py 
new/s3transfer-0.13.1/tests/functional/test_upload.py
--- old/s3transfer-0.13.0/tests/functional/test_upload.py       2025-05-22 
20:00:38.000000000 +0200
+++ new/s3transfer-0.13.1/tests/functional/test_upload.py       2025-07-18 
20:11:17.000000000 +0200
@@ -458,7 +458,7 @@
             if checksum_algorithm:
                 checksum_member = f'Checksum{checksum_algorithm.upper()}'
                 response = upload_part_response['service_response']
-                response[checksum_member] = f'sum{i+1}=='
+                response[checksum_member] = f'sum{i + 1}=='
 
             upload_part_response['expected_params'] = expected_params
             self.stubber.add_response(**upload_part_response)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/s3transfer-0.13.0/tests/unit/test_compat.py 
new/s3transfer-0.13.1/tests/unit/test_compat.py
--- old/s3transfer-0.13.0/tests/unit/test_compat.py     2025-05-22 
20:00:38.000000000 +0200
+++ new/s3transfer-0.13.1/tests/unit/test_compat.py     2025-07-18 
20:11:17.000000000 +0200
@@ -10,6 +10,7 @@
 # distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
 # ANY KIND, either express or implied. See the License for the specific
 # language governing permissions and limitations under the License.
+import multiprocessing
 import os
 import shutil
 import signal
@@ -80,7 +81,15 @@
 class TestBaseManager(unittest.TestCase):
     def create_pid_manager(self):
         class PIDManager(BaseManager):
-            pass
+            def __init__(self):
+                # Python 3.14 changed the non-macOS POSIX default to forkserver
+                # but the code in this module does not work with it
+                # See https://github.com/python/cpython/issues/125714
+                if multiprocessing.get_start_method() == 'forkserver':
+                    ctx = multiprocessing.get_context(method='fork')
+                else:
+                    ctx = multiprocessing.get_context()
+                super().__init__(ctx=ctx)
 
         PIDManager.register('getpid', os.getpid)
         return PIDManager()
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/s3transfer-0.13.0/tests/unit/test_futures.py 
new/s3transfer-0.13.1/tests/unit/test_futures.py
--- old/s3transfer-0.13.0/tests/unit/test_futures.py    2025-05-22 
20:00:38.000000000 +0200
+++ new/s3transfer-0.13.1/tests/unit/test_futures.py    2025-07-18 
20:11:17.000000000 +0200
@@ -474,7 +474,7 @@
     def get_task(self, task_cls, main_kwargs=None):
         return task_cls(self.coordinator, main_kwargs=main_kwargs)
 
-    def get_sleep_task(self, sleep_time=0.01):
+    def get_sleep_task(self, sleep_time=0.03):
         return self.get_task(SleepTask, main_kwargs={'sleep_time': sleep_time})
 
     def add_semaphore(self, task_tag, count):

Reply via email to