Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-requests-toolbelt for 
openSUSE:Factory checked in at 2022-10-03 13:44:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-requests-toolbelt (Old)
 and      /work/SRC/openSUSE:Factory/.python-requests-toolbelt.new.2275 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-requests-toolbelt"

Mon Oct  3 13:44:19 2022 rev:10 rq:1007133 version:0.9.1

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/python-requests-toolbelt/python-requests-toolbelt.changes
        2022-03-02 18:20:46.380655247 +0100
+++ 
/work/SRC/openSUSE:Factory/.python-requests-toolbelt.new.2275/python-requests-toolbelt.changes
      2022-10-03 13:44:29.997314840 +0200
@@ -1,0 +2,7 @@
+Fri Sep 30 04:24:08 UTC 2022 - Steve Kowalik <steven.kowa...@suse.com>
+
+- Add patch stop-using-pyopenssl-compat.patch:
+  * Stop importing (and using!) a pyopenssl compatibility module
+    to avoid a DeprecationWarning. 
+
+-------------------------------------------------------------------

New:
----
  stop-using-pyopenssl-compat.patch

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

Other differences:
------------------
++++++ python-requests-toolbelt.spec ++++++
--- /var/tmp/diff_new_pack.veIkX4/_old  2022-10-03 13:44:30.553316063 +0200
+++ /var/tmp/diff_new_pack.veIkX4/_new  2022-10-03 13:44:30.561316081 +0200
@@ -22,7 +22,6 @@
 Release:        0
 Summary:        A utility belt for advanced users of python3-requests
 License:        Apache-2.0
-Group:          Development/Languages/Python
 URL:            https://github.com/requests/toolbelt
 Source:         
https://files.pythonhosted.org/packages/source/r/requests-toolbelt/requests-toolbelt-%{version}.tar.gz
 # Replace expired test certificate
@@ -33,6 +32,9 @@
 Patch1:         remove_mock.patch
 # PATCH-FIX-UPSTREAM requests-toolbelt-pr246-collections.abc.patch -- fix 
python310 deprecation. gh#requests/toolbelt#246
 Patch2:         
https://github.com/requests/toolbelt/pull/246.patch#/requests-toolbelt-pr246-collections.abc.patch
+# PATCH-FIX-OPENSUSE Stop using PyOpenSSLCompat, it generates widespread
+# DeprecationWarnings
+Patch3:         stop-using-pyopenssl-compat.patch
 BuildRequires:  %{python_module requests >= 2.12.2}
 BuildRequires:  %{python_module setuptools}
 BuildRequires:  fdupes
@@ -61,8 +63,6 @@
 cp %{SOURCE1} tests/certs
 
 rm -rf requests_toolbelt.egg-info
-# requires network access
-rm -v tests/test_multipart_encoder.py
 
 %build
 %python_build
@@ -76,7 +76,8 @@
 export OPENSSL_SYSTEM_CIPHERS_OVERRIDE=xyz_nonexistent_file
 export OPENSSL_CONF=''
 
-%pytest
+# Requires network access
+%pytest -k 'not (TestFileFromURLWrapper or test_reads_file_from_url_wrapper)'
 
 %files %{python_files}
 %license LICENSE

++++++ stop-using-pyopenssl-compat.patch ++++++
Index: requests-toolbelt-0.9.1/requests_toolbelt/adapters/x509.py
===================================================================
--- requests-toolbelt-0.9.1.orig/requests_toolbelt/adapters/x509.py
+++ requests-toolbelt-0.9.1/requests_toolbelt/adapters/x509.py
@@ -8,6 +8,7 @@ X.509 certificate without needing to con
 """
 
 from OpenSSL.crypto import PKey, X509
+from OpenSSL.SSL import Context, TLS_CLIENT_METHOD
 from cryptography import x509
 from cryptography.hazmat.primitives.serialization import (load_pem_private_key,
                                                           load_der_private_key)
@@ -18,19 +19,8 @@ from datetime import datetime
 from requests.adapters import HTTPAdapter
 import requests
 
-from .._compat import PyOpenSSLContext
 from .. import exceptions as exc
 
-"""
-importing the protocol constants from _ssl instead of ssl because only the
-constants are needed and to handle issues caused by importing from ssl on
-the 2.7.x line.
-"""
-try:
-    from _ssl import PROTOCOL_TLS as PROTOCOL
-except ImportError:
-    from _ssl import PROTOCOL_SSLv23 as PROTOCOL
-
 
 class X509Adapter(HTTPAdapter):
     r"""Adapter for use with X.509 certificates.
@@ -81,7 +71,6 @@ class X509Adapter(HTTPAdapter):
     """
 
     def __init__(self, *args, **kwargs):
-        self._check_version()
         cert_bytes = kwargs.pop('cert_bytes', None)
         pk_bytes = kwargs.pop('pk_bytes', None)
         password = kwargs.pop('password', None)
@@ -118,15 +107,6 @@ class X509Adapter(HTTPAdapter):
             kwargs['ssl_context'] = self.ssl_context
         return super(X509Adapter, self).proxy_manager_for(*args, **kwargs)
 
-    def _check_version(self):
-        if PyOpenSSLContext is None:
-            raise exc.VersionMismatchError(
-                "The X509Adapter requires at least Requests 2.12.0 to be "
-                "installed. Version {0} was found instead.".format(
-                    requests.__version__
-                )
-            )
-
 
 def check_cert_dates(cert):
     """Verify that the supplied client cert is not invalid."""
@@ -172,7 +152,7 @@ def create_ssl_context(cert_byes, pk_byt
         raise ValueError('Cert and key could not be parsed from '
                          'provided data')
     check_cert_dates(cert)
-    ssl_context = PyOpenSSLContext(PROTOCOL)
-    ssl_context._ctx.use_certificate(X509.from_cryptography(cert))
-    ssl_context._ctx.use_privatekey(PKey.from_cryptography_key(key))
+    ssl_context = Context(TLS_CLIENT_METHOD)
+    ssl_context.use_certificate(X509.from_cryptography(cert))
+    ssl_context.use_privatekey(PKey.from_cryptography_key(key))
     return ssl_context
Index: requests-toolbelt-0.9.1/requests_toolbelt/_compat.py
===================================================================
--- requests-toolbelt-0.9.1.orig/requests_toolbelt/_compat.py
+++ requests-toolbelt-0.9.1/requests_toolbelt/_compat.py
@@ -49,17 +49,7 @@ else:
     except ImportError:
         from urllib3.contrib import appengine as gaecontrib
 
-if requests.__build__ < 0x021200:
-    PyOpenSSLContext = None
-else:
-    try:
-        from requests.packages.urllib3.contrib.pyopenssl \
-                import PyOpenSSLContext
-    except ImportError:
-        try:
-            from urllib3.contrib.pyopenssl import PyOpenSSLContext
-        except ImportError:
-            PyOpenSSLContext = None
+PyOpenSSLContext = None
 
 PY3 = sys.version_info > (3, 0)
 

Reply via email to