%bcond_with python36_module %bcond_without python3 %global pypi_name PyMySQL # python2X and python3X are built form the same module, so we need a conditional for python2 bits # the state of the conditional is not important in the spec, it is set in modulemd %bcond_with python2 Name: python-%{pypi_name} Version: 0.8.0 Release: 10%{?dist} Summary: Pure-Python MySQL client library License: MIT URL: https://pypi.python.org/pypi/%{pypi_name}/ Source0: https://files.pythonhosted.org/packages/a8/b4/3544c8e6ed9b1c6a00e5b302e3d5a646e43a8a0ac5216f5ae8706688706e/PyMySQL-0.8.0.tar.gz BuildArch: noarch # for python2 %if %{with python2} BuildRequires: python2-devel BuildRequires: python2-setuptools %endif # for python3 %if %{with python3} %if %{with python36_module} BuildRequires: python36-devel BuildRequires: python36-rpm-macros %else BuildRequires: python3-devel %endif BuildRequires: python%{python3_pkgversion}-setuptools %endif %description This package contains a pure-Python MySQL client library. The goal of PyMySQL is to be a drop-in replacement for MySQLdb and work on CPython, PyPy, IronPython and Jython. %if %{with python2} %package -n python2-%{pypi_name} Summary: Pure-Python MySQL client library %{?python_provide:%python_provide python2-%{pypi_name}} %description -n python2-%{pypi_name} This package contains a pure-Python MySQL client library. The goal of PyMySQL is to be a drop-in replacement for MySQLdb and work on CPython, PyPy, IronPython and Jython. %endif %if %{with python3} %package -n python3-%{pypi_name} Summary: Pure-Python MySQL client library %{?python_provide:%python_provide python%{python3_pkgversion}-%{pypi_name}} %description -n python3-%{pypi_name} This package contains a pure-Python MySQL client library. The goal of PyMySQL is to be a drop-in replacement for MySQLdb and work on CPython, PyPy, IronPython and Jython. %endif %prep %setup -qn %{pypi_name}-%{version} rm -rf %{pypi_name}.egg-info %build %{?with_python2:%py2_build} %if %{with python3} %py3_build %endif %install %if %{with python2} %py2_install # Remove shebang for lib in %{buildroot}%{python2_sitelib}/pymysql/tests/thirdparty/test_MySQLdb/*.py; do sed -i '1{\@^#!/usr/bin/env python@d}' $lib done %endif %if %{with python3} %py3_install # Remove shebang for lib in %{buildroot}%{python3_sitelib}/pymysql/tests/thirdparty/test_MySQLdb/*.py; do sed -i '1{\@^#!/usr/bin/env python@d}' $lib done %endif %check # Tests cannot be launch on koji, they require a mysqldb running. %if %{with python2} %files -n python2-%{pypi_name} %license LICENSE %doc README.rst %{python2_sitelib}/%{pypi_name}-%{version}-py%{python2_version}.egg-info/ %{python2_sitelib}/pymysql/ %endif %if %{with python3} %files -n python3-%{pypi_name} %license LICENSE %doc README.rst %{python3_sitelib}/%{pypi_name}-%{version}-py%{python3_version}.egg-info/ %{python3_sitelib}/pymysql/ %endif %changelog * Thu Apr 25 2019 Tomas Orsava - 0.8.0-10 - Bumping due to problems with modular RPM upgrade path - Resolves: rhbz#1695587 * Tue Jul 31 2018 Lumír Balhar - 0.8.0-9 - Make possible to disable python3 subpackage * Tue Jul 17 2018 Tomas Orsava - 0.8.0-8 - BuildRequire also python36-rpm-macros as part of the python36 module build * Wed Jul 04 2018 Miro Hrončok - 0.8.0-7 - Add a bcond for python2 * Wed Apr 25 2018 Tomas Orsava - 0.8.0-6 - Make requires on python36-devel dependant on a python36_module bcond * Tue Apr 24 2018 Tomas Orsava - 0.8.0-5 - Hardcode requires on python36-devel for the python36 module. This will have to be modified when python37 is added. * Thu Feb 15 2018 Itamar Reis Peixoto - 0.8.0-4 - make spec file compatible with epel7 - remove conditionals and always build for Python 3 * Fri Feb 09 2018 Fedora Release Engineering - 0.8.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Mon Jan 15 2018 Iryna Shcherbina - 0.8.0-2 - Update Python 2 dependency declarations to new packaging standards (See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3) * Wed Dec 27 2017 Julien Enselme - 0.8.0-1 - Update to 0.8.0 * Thu Jul 27 2017 Fedora Release Engineering - 0.7.11-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Fri Apr 07 2017 Julien Enselme - 0.7.11-1 - Update to 0.7.11 * Wed Feb 15 2017 Julien Enselme - 0.7.10-1 - Update to 0.7.10 * Sat Feb 11 2017 Fedora Release Engineering - 0.7.9-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild * Mon Dec 19 2016 Miro Hrončok - 0.7.9-3 - Rebuild for Python 3.6 * Wed Nov 23 2016 Damien Ciabrini - 0.7.9-2 - cherrypick commit 755dfdc upstream to allow bind before connect Related: rhbz#1378008 * Sun Sep 18 2016 Julien Enselme - 0.7.9-1 - Update to 0.7.9 * Tue Jul 19 2016 Fedora Release Engineering - 0.6.7-6 - https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages * Thu Feb 04 2016 Fedora Release Engineering - 0.6.7-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild * Mon Jan 4 2016 Julien Enselme - 0.6.7-4 - Correct installation problems due to Requires: mariadb * Thu Nov 5 2015 Julien Enselme - 0.6.7-3 - Rebuilt for python 3.5 * Wed Nov 4 2015 Haïkel Guémar - 0.6.7-2 - Drop unnecessary mariadb requirement - Add python3 conditionals in order to rebuild it in EL7 * Thu Oct 1 2015 Julien Enselme - 0.6.7-1 - Update to 0.6.7 * Thu Aug 6 2015 Julien Enselme - 0.6.6-4 - Use %%license in %%files * Wed Aug 5 2015 Julien Enselme - 0.6.6-3 - Move python2 package in its own subpackage - Add provides * Fri Jul 31 2015 Julien Enselme - 0.6.6-2 - Add Provides: python2-PyMySQL - Remove usage of %%py3dir * Sun May 31 2015 Julien Enselme - 0.6.6-1 - Update to 0.6.6 * Wed Nov 26 2014 Julien Enselme - 0.6.2-1 - Initial packaging