%global __provides_exclude_from ^%{python3_sitearch}/.*\\.so$ %global modname gevent %global optflags %(echo %{optflags} -I%{_includedir}/libev) Name: python-%{modname} Version: 21.1.2 Release: 3.0001%{?dist} Summary: A coroutine-based Python networking library License: MIT URL: http://www.gevent.org/ Source0: %{pypi_source %{modname} %{version} tar.gz} BuildRequires: gcc BuildRequires: c-ares-devel BuildRequires: libev-devel BuildRequires: libuv-devel %description gevent is a coroutine-based Python networking library that uses greenlet to provide a high-level synchronous API on top of libevent event loop. Features include: * convenient API around greenlets * familiar synchronization primitives (gevent.event, gevent.queue) * socket module that cooperates * WSGI server on top of libevent-http * DNS requests done through libevent-dns * monkey patching utility to get pure Python modules to cooperate %package -n python3-%{modname} Summary: %{summary} %{?python_provide:%python_provide python3-%{modname}} BuildRequires: python3-devel BuildRequires: python3-Cython BuildRequires: python3-greenlet-devel >= 0.4.17 BuildRequires: python3-setuptools # For tests BuildRequires: python3-dns BuildRequires: python3-psutil BuildRequires: python3-zope-interface BuildRequires: python3-zope-event Requires: python3-greenlet >= 0.4.17 %description -n python3-%{modname} gevent is a coroutine-based Python networking library that uses greenlet to provide a high-level synchronous API on top of libevent event loop. Features include: * convenient API around greenlets * familiar synchronization primitives (gevent.event, gevent.queue) * socket module that cooperates * WSGI server on top of libevent-http * DNS requests done through libevent-dns * monkey patching utility to get pure Python modules to cooperate Python 3 version. %prep %autosetup -p1 -n %{modname}-%{version} # Remove bundled libraries rm -r deps # Upstream intentionally includes C extension sources in the built package, # because... reasons (PyPy I think?) however we do not want that. Sources will # go into debuginfo as normal. sed -i -e 's/include_package_data=True/include_package_data=False/' setup.py # Force re-cythonizing the sources rm $(grep -rl '/\* Generated by Cython') %build export GEVENTSETUP_EMBED=0 # Build Python 3 first to use Python 3 Cython %py3_build %install export GEVENTSETUP_EMBED=0 %py3_install rm %{buildroot}%{python3_sitearch}/%{modname}/_*2.py rm %{buildroot}%{python3_sitearch}/%{modname}/__pycache__/_*2.* find %{buildroot} -name '.buildinfo' -delete # Correct the permissions. find %{buildroot} -name '*.so' -exec chmod 755 {} ';' %check export PYTHONPATH=%{buildroot}%{python3_sitearch} %__python3 -m gevent.tests || : cd src/gevent/tests && GEVENT_FILE=thread %__python3 -mgevent.tests test__*subprocess*.py %files -n python3-%{modname} %license LICENSE %doc README.rst %{python3_sitearch}/%{modname}* %changelog * Fri Jul 23 2021 Fedora Release Engineering - 21.1.2-3.0001 - Add python3-zope-event BuildRequires for epel9 bootstrap - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Fri Jul 23 2021 Fedora Release Engineering - 21.1.2-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Fri Jun 04 2021 Python Maint - 21.1.2-2 - Rebuilt for Python 3.10 * Mon Apr 26 2021 Dan Callaghan - 21.1.2-1 - new upstream bug fix release 21.1.2 * Wed Jan 27 2021 Fedora Release Engineering - 20.9.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Mon Nov 16 2020 Fabien Boucher - 20.9.0-1 - new upstream release 20.9.0 * Mon Oct 05 2020 Orion Poplawski - 20.6.1-3 - BR python3-setuptools * Wed Jul 29 2020 Fedora Release Engineering - 20.6.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Sat Jun 13 2020 Dan Callaghan - 20.6.1-1 - new upstream release 20.6.1 * Sat Jun 06 2020 Orion Poplawski - 20.6.0-1 - Update to 20.6.0 (bz#1840109) - Resolve Python 3.9 issue (bz#1838696) - Only remove Cython generated .c files - Add BR on libuv-devel - Use updated build variables - Run tests, but do not fail on them for now * Sun May 24 2020 Miro Hrončok - 20.5.0-2 - Rebuilt for Python 3.9 * Sun May 17 2020 Dan Callaghan - 20.5.0-1 - new upstream release 20.5.0: https://github.com/gevent/gevent/blob/20.5.0/CHANGES.rst * Thu Jan 30 2020 Fedora Release Engineering - 1.5-0.2.a3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Wed Jan 08 2020 Robert-André Mauchin - 1.5-0.1.a3 - Update to 1.5a3 (#1705661) * Thu Oct 03 2019 Miro Hrončok - 1.3.6-7 - Rebuilt for Python 3.8.0rc1 (#1748018) * Sat Aug 17 2019 Miro Hrončok - 1.3.6-6 - Rebuilt for Python 3.8 * Mon Aug 12 2019 Miro Hrončok - 1.3.6-5 - Subpackage python2-gevent has been removed See https://fedoraproject.org/wiki/Changes/Mass_Python_2_Package_Removal * Fri Jul 26 2019 Fedora Release Engineering - 1.3.6-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Tue Jun 11 2019 Victor Stinner - 1.3.6-3 - Add Python 3.8 support, backport upstream change to use CodeType.replace() if available (rhbz#1716342) * Sat Feb 02 2019 Fedora Release Engineering - 1.3.6-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Mon Sep 17 2018 Dan Callaghan - 1.3.6-1 - Upstream bug fix release 1.3.6: http://www.gevent.org/changelog.html * Sat Jul 14 2018 Fedora Release Engineering - 1.3.4-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Mon Jul 02 2018 Miro Hrončok - 1.3.4-2 - Rebuilt for Python 3.7 * Tue Jun 26 2018 Dan Callaghan - 1.3.4-1 - Update to 1.3.4 (RHBZ#1593266) * Mon Jun 18 2018 Miro Hrončok - 1.3.3-2 - Rebuilt for Python 3.7 * Wed Jun 13 2018 Dan Callaghan - 1.3.3-1 - Update to 1.3.3 (RHBZ#1589102) * Mon Jun 04 2018 Dan Callaghan - 1.3.2-1 - Update to 1.3.2 (RHBZ#1583647) * Tue May 29 2018 Dan Callaghan - 1.3.1-1 - Update to 1.3.1 (RHBZ#1552352) http://www.gevent.org/whatsnew_1_3.html * Fri Feb 09 2018 Fedora Release Engineering - 1.2.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Wed Aug 09 2017 Dan Callaghan - 1.2.2-1 - Update to 1.2.2 (RHBZ#1389634) * Thu Aug 03 2017 Fedora Release Engineering - 1.1.2-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild * Thu Jul 27 2017 Fedora Release Engineering - 1.1.2-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Sat Feb 11 2017 Fedora Release Engineering - 1.1.2-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild * Mon Dec 19 2016 Miro Hrončok - 1.1.2-2 - Rebuild for Python 3.6 * Sun Jul 24 2016 Igor Gnatenko - 1.1.2-1 - Update to 1.1.2 (RHBZ #1359455) * Tue Jul 19 2016 Fedora Release Engineering - 1.1.1-2 - https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages * Tue Apr 05 2016 Igor Gnatenko - 1.1.1-1 - Update to 1.1.1 (RHBZ #1323855) * Tue Mar 15 2016 Dan Callaghan - 1.1.0-1 - Update to 1.1.0 final release * Wed Feb 17 2016 Igor Gnatenko - 1.1-0.8.rc4 - Update to 1.1rc4 (RHBZ #1309141) * Thu Feb 04 2016 Fedora Release Engineering - 1.1-0.7.rc3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild * Wed Jan 20 2016 Dan Callaghan - 1.1-0.6.rc3 - Update to 1.1rc3 * Tue Nov 10 2015 Fedora Release Engineering - 1.1-0.5.b6 - Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 * Sat Oct 24 2015 Igor Gnatenko - 1.1-0.4.b6 - Fix description in spec * Sun Oct 18 2015 Igor Gnatenko - 1.1-0.3.b6 - Update to 1.1b6 (RHBZ #1272717) * Tue Oct 06 2015 Orion Poplawski - 1.1-0.2.b5 - Drop use of unneeded %%{py3dir} * Mon Oct 05 2015 Igor Gnatenko - 1.1-0.1.b5 - Update to 1.1b5 (RHBZ #1244452) - Add python3 support - Follow modern RPM packaging guidelines * Fri Jun 26 2015 Dan Callaghan - 1.0.2-2 - removed version requirement for greenlet * Mon Jun 22 2015 Dan Callaghan - 1.0.2-1 - bug fix release 1.0.2: https://github.com/gevent/gevent/blob/v1.0.2/changelog.rst#release-102-may-23-2015 * Thu Jun 18 2015 Fedora Release Engineering - 1.0.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild * Sun Aug 17 2014 Fedora Release Engineering - 1.0.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild * Fri Aug 15 2014 Orion Poplawski - 1.0.1-1 - Update to 1.0.1 * Sat Jun 07 2014 Fedora Release Engineering - 1.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild * Wed Jan 22 2014 Orion Poplawski - 1.0-1 - Update to 1.0 * Sun Aug 04 2013 Fedora Release Engineering - 0.13.8-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild * Thu Feb 14 2013 Fedora Release Engineering - 0.13.8-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild * Thu Dec 27 2012 Silas Sewell - 0.13.8-1 - Update to 0.13.8 * Sat Jul 21 2012 Fedora Release Engineering - 0.13.6-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild * Sat Jan 14 2012 Fedora Release Engineering - 0.13.6-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild * Sun Jul 24 2011 Silas Sewell - 0.13.6-1 - Update to 0.13.6 * Wed Feb 16 2011 Silas Sewell - 0.13.3-1 - Update to 0.13.3 * Tue Feb 08 2011 Fedora Release Engineering - 0.13.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Sat Oct 09 2010 Silas Sewell - 0.13.1-1 - Update to 0.13.1 * Tue Jul 27 2010 David Malcolm - 0.13.0-2 - Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild * Wed Jul 14 2010 Silas Sewell - 0.13.0-1 - Update to 0.13.0 * Fri Apr 23 2010 Silas Sewell - 0.12.2-2 - Remove setuptools requirement * Wed Mar 17 2010 Silas Sewell - 0.12.2-1 - Initial build