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 2026-08-20 16:17:34
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-s3transfer (Old)
and /work/SRC/openSUSE:Factory/.python-s3transfer.new.1258 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-s3transfer"
Thu Aug 20 16:17:34 2026 rev:46 rq:1372278 version:0.19.2
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-s3transfer/python-s3transfer.changes
2026-07-15 16:59:38.423125535 +0200
+++
/work/SRC/openSUSE:Factory/.python-s3transfer.new.1258/python-s3transfer.changes
2026-08-20 16:17:35.792122811 +0200
@@ -1,0 +2,8 @@
+Wed Aug 19 19:06:08 UTC 2026 - John Paul Adrian Glaubitz
<[email protected]>
+
+- Update to version 0.19.2
+ * bugfix:TLS: Return a configuration error when the CA bundle value
+ (ca_bundle, AWS_CA_BUNDLE, REQUESTS_CA_BUNDLE, or verify) resolves
+ to an empty or whitespace-only string.
+
+-------------------------------------------------------------------
Old:
----
s3transfer-0.19.1.tar.gz
New:
----
s3transfer-0.19.2.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-s3transfer.spec ++++++
--- /var/tmp/diff_new_pack.5LQBG8/_old 2026-08-20 16:17:37.307175992 +0200
+++ /var/tmp/diff_new_pack.5LQBG8/_new 2026-08-20 16:17:37.311176133 +0200
@@ -18,7 +18,7 @@
%{?sle15_python_module_pythons}
Name: python-s3transfer
-Version: 0.19.1
+Version: 0.19.2
Release: 0
Summary: Python S3 transfer manager
License: Apache-2.0
++++++ s3transfer-0.19.1.tar.gz -> s3transfer-0.19.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/s3transfer-0.19.1/PKG-INFO
new/s3transfer-0.19.2/PKG-INFO
--- old/s3transfer-0.19.1/PKG-INFO 2026-07-10 20:11:52.433406800 +0200
+++ new/s3transfer-0.19.2/PKG-INFO 2026-07-22 20:06:59.713466400 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: s3transfer
-Version: 0.19.1
+Version: 0.19.2
Summary: An Amazon S3 Transfer Manager
Home-page: https://github.com/boto/s3transfer
Author: Amazon Web Services
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/s3transfer-0.19.1/s3transfer/__init__.py
new/s3transfer-0.19.2/s3transfer/__init__.py
--- old/s3transfer-0.19.1/s3transfer/__init__.py 2026-07-10
20:11:52.000000000 +0200
+++ new/s3transfer-0.19.2/s3transfer/__init__.py 2026-07-22
20:06:59.000000000 +0200
@@ -145,7 +145,7 @@
from s3transfer.exceptions import RetriesExceededError, S3UploadFailedError
__author__ = 'Amazon Web Services'
-__version__ = '0.19.1'
+__version__ = '0.19.2'
logger = logging.getLogger(__name__)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/s3transfer-0.19.1/s3transfer/crt.py
new/s3transfer-0.19.2/s3transfer/crt.py
--- old/s3transfer-0.19.1/s3transfer/crt.py 2026-07-10 20:07:26.000000000
+0200
+++ new/s3transfer-0.19.2/s3transfer/crt.py 2026-07-22 20:06:59.000000000
+0200
@@ -37,7 +37,7 @@
from botocore import UNSIGNED
from botocore.compat import urlsplit
from botocore.config import Config
-from botocore.exceptions import NoCredentialsError
+from botocore.exceptions import InvalidConfigError, NoCredentialsError
from botocore.utils import ArnParser, InvalidArnException
from s3transfer.constants import FULL_OBJECT_CHECKSUM_ARGS, MB
@@ -143,6 +143,15 @@
S3RequestTlsMode.ENABLED if use_ssl else S3RequestTlsMode.DISABLED
)
if verify is not None:
+ if isinstance(verify, str) and not verify.strip():
+ raise InvalidConfigError(
+ error_msg=(
+ 'Invalid CA bundle: the configured value (ca_bundle, '
+ 'AWS_CA_BUNDLE, REQUESTS_CA_BUNDLE, or verify) resolved '
+ 'to an empty or whitespace-only string. Provide a valid '
+ 'path to a CA bundle file.'
+ )
+ )
tls_ctx_options = TlsContextOptions()
if verify:
tls_ctx_options.override_default_trust_store_from_path(
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/s3transfer-0.19.1/s3transfer.egg-info/PKG-INFO
new/s3transfer-0.19.2/s3transfer.egg-info/PKG-INFO
--- old/s3transfer-0.19.1/s3transfer.egg-info/PKG-INFO 2026-07-10
20:11:52.000000000 +0200
+++ new/s3transfer-0.19.2/s3transfer.egg-info/PKG-INFO 2026-07-22
20:06:59.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: s3transfer
-Version: 0.19.1
+Version: 0.19.2
Summary: An Amazon S3 Transfer Manager
Home-page: https://github.com/boto/s3transfer
Author: Amazon Web Services
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/s3transfer-0.19.1/tests/unit/test_crt.py
new/s3transfer-0.19.2/tests/unit/test_crt.py
--- old/s3transfer-0.19.1/tests/unit/test_crt.py 2026-07-10
20:07:26.000000000 +0200
+++ new/s3transfer-0.19.2/tests/unit/test_crt.py 2026-07-22
20:06:59.000000000 +0200
@@ -14,7 +14,11 @@
import pytest
from botocore.credentials import Credentials, ReadOnlyCredentials
-from botocore.exceptions import ClientError, NoCredentialsError
+from botocore.exceptions import (
+ ClientError,
+ InvalidConfigError,
+ NoCredentialsError,
+)
from botocore.session import Session
from s3transfer.exceptions import TransferNotDoneError
@@ -366,3 +370,19 @@
def test_always_enables_s3express(self, mock_s3_crt_client):
s3transfer.crt.create_s3_crt_client('us-west-2')
assert mock_s3_crt_client.call_args[1]['enable_s3express'] is True
+
+ def test_empty_verify_value_raises(self, mock_s3_crt_client):
+ with pytest.raises(InvalidConfigError):
+ s3transfer.crt.create_s3_crt_client('us-west-2', verify='')
+
+ def test_whitespace_verify_value_raises(self, mock_s3_crt_client):
+ with pytest.raises(InvalidConfigError):
+ s3transfer.crt.create_s3_crt_client('us-west-2', verify=' ')
+
+ def test_verify_false_disables_verification(self, mock_s3_crt_client):
+ with (
+ mock.patch('s3transfer.crt.TlsContextOptions') as mock_tls_options,
+ mock.patch('s3transfer.crt.ClientTlsContext'),
+ ):
+ s3transfer.crt.create_s3_crt_client('us-west-2', verify=False)
+ assert mock_tls_options.return_value.verify_peer is False