diff --git a/gevent-22.10.2.tar.gz b/gevent-22.10.2.tar.gz deleted file mode 100644 index 4a9ac22..0000000 --- a/gevent-22.10.2.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:01ea78981520c9cdbe3722e1760a8ed0165a0b576cb5209f67881595561509da -size 4800293 diff --git a/gevent-23.7.0.tar.gz b/gevent-23.7.0.tar.gz new file mode 100644 index 0000000..c071d3c --- /dev/null +++ b/gevent-23.7.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5c866956a141efde3aaa049b6386d29c55260b2c3a3110e3ccaa03ea6456608 +size 4023058 diff --git a/handle-python-ssl-changes.patch b/handle-python-ssl-changes.patch deleted file mode 100644 index 8dbaf05..0000000 --- a/handle-python-ssl-changes.patch +++ /dev/null @@ -1,36 +0,0 @@ -Index: gevent-22.10.2/src/greentest/3.10/test_ssl.py -=================================================================== ---- gevent-22.10.2.orig/src/greentest/3.10/test_ssl.py -+++ gevent-22.10.2/src/greentest/3.10/test_ssl.py -@@ -2306,13 +2306,11 @@ class SimpleBackgroundTests(unittest.Tes - self.assertIs(sslobj._sslobj.owner, sslobj) - self.assertIsNone(sslobj.cipher()) - self.assertIsNone(sslobj.version()) -- self.assertIsNotNone(sslobj.shared_ciphers()) - self.assertRaises(ValueError, sslobj.getpeercert) - if 'tls-unique' in ssl.CHANNEL_BINDING_TYPES: - self.assertIsNone(sslobj.get_channel_binding('tls-unique')) - self.ssl_io_loop(sock, incoming, outgoing, sslobj.do_handshake) - self.assertTrue(sslobj.cipher()) -- self.assertIsNotNone(sslobj.shared_ciphers()) - self.assertIsNotNone(sslobj.version()) - self.assertTrue(sslobj.getpeercert()) - if 'tls-unique' in ssl.CHANNEL_BINDING_TYPES: -Index: gevent-22.10.2/src/greentest/3.11/test_ssl.py -=================================================================== ---- gevent-22.10.2.orig/src/greentest/3.11/test_ssl.py -+++ gevent-22.10.2/src/greentest/3.11/test_ssl.py -@@ -2326,13 +2326,11 @@ class SimpleBackgroundTests(unittest.Tes - self.assertIs(sslobj._sslobj.owner, sslobj) - self.assertIsNone(sslobj.cipher()) - self.assertIsNone(sslobj.version()) -- self.assertIsNotNone(sslobj.shared_ciphers()) - self.assertRaises(ValueError, sslobj.getpeercert) - if 'tls-unique' in ssl.CHANNEL_BINDING_TYPES: - self.assertIsNone(sslobj.get_channel_binding('tls-unique')) - self.ssl_io_loop(sock, incoming, outgoing, sslobj.do_handshake) - self.assertTrue(sslobj.cipher()) -- self.assertIsNotNone(sslobj.shared_ciphers()) - self.assertIsNotNone(sslobj.version()) - self.assertTrue(sslobj.getpeercert()) - if 'tls-unique' in ssl.CHANNEL_BINDING_TYPES: diff --git a/python-gevent.changes b/python-gevent.changes index 024f690..a2cb0de 100644 --- a/python-gevent.changes +++ b/python-gevent.changes @@ -1,3 +1,31 @@ +------------------------------------------------------------------- +Mon Aug 14 09:20:19 UTC 2023 - Dirk Müller + +- update to 23.7.0: + * Add preliminary support for Python 3.12, using greenlet + 3.0a1. + * Update the bundled c-ares version to 1.19.1. + * Fix an edge case connecting a non-blocking ``SSLSocket`` that + could result in an AttributeError. In a change to match + the standard library, calling ``sock.connect_ex()`` on a + subclass of ``socket`` no longer calls the subclass's + ``connect`` method. + * Make gevent's ``FileObjectThread`` (mostly used on Windows) + implement ``readinto`` cooperatively. + * Work around an ``AttributeError`` during cyclic garbage + collection when Python finalizers (``__del__`` and the like) + attempt to use gevent APIs. This is not a recommended practice, + and it is unclear if catching this ``AttributeError`` will fix + any problems or just shift them. + * Remove support for obsolete Python versions. This is + everything prior to 3.8. + * Stop using ``pkg_resources`` to find entry points (plugins). + Instead, use ``importlib.metadata``. + * Honor ``sys.unraisablehook`` when a callback function + produces an exception, and handling the exception in the hub + *also* produces an exception. +- drop skip-tests-in-leap.patch handle-python-ssl-changes.patch (obsolete) + ------------------------------------------------------------------- Fri Jun 9 08:08:57 UTC 2023 - Daniel Garcia diff --git a/python-gevent.spec b/python-gevent.spec index 99a79d8..e07b442 100644 --- a/python-gevent.spec +++ b/python-gevent.spec @@ -25,30 +25,28 @@ %endif %{?sle15_python_module_pythons} Name: python-gevent -Version: 22.10.2 +Version: 23.7.0 Release: 0 Summary: Python network library that uses greenlet and libevent License: MIT Group: Development/Languages/Python URL: https://www.gevent.org/ -# Source: https://files.pythonhosted.org/packages/source/g/gevent/gevent-%%{version}.tar.gz Source0: https://github.com/gevent/%{modname}/archive/%{version}.tar.gz#/%{modname}-%{version}.tar.gz Source100: %{name}-rpmlintrc # gcc7 for 15.1 produces no-return-in-nonvoid-function, but the same compiler for 15.2 not # usually, as long as no return value is used, this shouldn't be treated as an error # let's selectively disable the warning around the offending code Patch0: fix-no-return-in-nonvoid-function.patch -Patch1: skip-tests-in-leap.patch -Patch2: handle-python-ssl-changes.patch BuildRequires: %{python_module Cython} BuildRequires: %{python_module cffi} -BuildRequires: %{python_module devel} +BuildRequires: %{python_module devel >= 3.8} BuildRequires: %{python_module dnspython} BuildRequires: %{python_module greenlet >= 2.0.0} BuildRequires: %{python_module objgraph} +BuildRequires: %{python_module pip} BuildRequires: %{python_module psutil} BuildRequires: %{python_module requests} -BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module wheel} BuildRequires: %{python_module zope.event} BuildRequires: %{python_module zope.interface} BuildRequires: fdupes @@ -62,6 +60,7 @@ BuildRequires: pkgconfig(libuv) Requires: python-cffi Requires: python-dnspython Requires: python-greenlet >= 2.0.0 +Requires: python-importlib-metadata Requires: python-requests Requires: python-zope.event Requires: python-zope.interface @@ -108,11 +107,6 @@ Documentation and examples for %{name}. %if 0%{?sle_version} <= 150100 && 0%{?is_opensuse} %patch0 -p1 %endif - -%if 0%{?sle_version} <= 150300 -%patch1 -p1 -%endif -%patch2 -p1 sed -i -e '1s!bin/env python!bin/python!' examples/*.py sed -i -e '1{/bin.*python/d}' src/gevent/tests/*.py @@ -120,12 +114,12 @@ sed -i -e '1{/bin.*python/d}' src/gevent/tests/*.py export LIBEV_EMBED=%{use_bundled_libev} export CARES_EMBED=0 export CFLAGS="%{optflags} -fno-strict-aliasing" -%python_build +%pyproject_wheel %install export LIBEV_EMBED=%{use_bundled_libev} export CARES_EMBED=0 -%python_install +%pyproject_install %{python_expand # fix script interpreter-line and exec bit sed -i '1{s|^#!.*bin.*python.*$|#!%{__$python}|}' %{buildroot}%{$python_sitearch}/gevent/testing/testrunner.py chmod +x %{buildroot}%{$python_sitearch}/gevent/testing/testrunner.py diff --git a/skip-tests-in-leap.patch b/skip-tests-in-leap.patch deleted file mode 100644 index cb3d509..0000000 --- a/skip-tests-in-leap.patch +++ /dev/null @@ -1,20 +0,0 @@ -Index: gevent-21.1.2/src/greentest/3.6/test_ssl.py -=================================================================== ---- gevent-21.1.2.orig/src/greentest/3.6/test_ssl.py -+++ gevent-21.1.2/src/greentest/3.6/test_ssl.py -@@ -3186,6 +3186,7 @@ if _have_threads: - sock.do_handshake() - self.assertEqual(cm.exception.errno, errno.ENOTCONN) - -+ @unittest.skip("skip in SLE/Leap") - def test_no_shared_ciphers(self): - server_context = ssl.SSLContext(ssl.PROTOCOL_SSLv23) - server_context.load_cert_chain(SIGNED_CERTFILE) -@@ -3671,6 +3672,7 @@ if _have_threads: - self.assertEqual(sess_stat['accept'], 4) - self.assertEqual(sess_stat['hits'], 2) - -+ @unittest.skip("skip in SLE/Leap") - def test_session_handling(self): - context = ssl.SSLContext(ssl.PROTOCOL_SSLv23) - context.verify_mode = ssl.CERT_REQUIRED