%if 0%{?rhel} && 0%{?rhel} <= 6 %{!?__python2: %global __python2 /usr/bin/python2} %{!?python2_sitelib: %global python2_sitelib %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")} %{!?python2_sitearch: %global python2_sitearch %(%{__python2} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")} %endif %global with_python3 1 %if 0%{?fedora} %{!?python3_pkgversion: %global python3_pkgversion 3} %else %{!?python3_pkgversion: %global python3_pkgversion 34} %endif %if 0%{?rhel} > 7 # Disable python2 build by default %bcond_with python2 %else %bcond_without python2 %endif Name: python-kitchen Version: 1.2.5 Release: 5%{?dist} Summary: Small, useful pieces of code to make python coding easier Group: Development/Languages License: LGPLv2+ URL: https://pypi.python.org/pypi/kitchen/ Source0: https://github.com/fedora-infra/kitchen/archive/v%{version}.tar.gz BuildArch: noarch %if %{with python2} BuildRequires: python2-devel BuildRequires: python2-nose # For the subprocess test BuildRequires: python2-test %endif # with python2 # sphinx needs to be more recent to build the html docs %if 0%{?fedora} %if %{with python2} BuildRequires: python2-sphinx %else BuildRequires: python-sphinx %endif %if 0%{?fedora} || 0%{?rhel} > 6 # At present, chardet isn't present in epel but it's a soft dep BuildRequires: python-chardet Requires: python-chardet %endif %endif # with python2 %if 0%{?with_python3} BuildRequires: python%{python3_pkgversion}-devel BuildRequires: python%{python3_pkgversion}-nose BuildRequires: python%{python3_pkgversion}-test BuildRequires: python%{python3_pkgversion}-chardet %if 0%{?fedora} BuildRequires: python%{python3_pkgversion}-sphinx %endif %endif %description kitchen includes functions to make gettext easier to use, handling unicode text easier (conversion with bytes, outputting xml, and calculating how many columns a string takes), and compatibility modules for writing code that uses python-2.7 modules but needs to run on python-2.3. %package doc Summary: API documentation for the Kitchen python2 module # Currently discussing guidelines about doc subpackages Requiring the main package: # https://lists.fedoraproject.org/pipermail/packaging/2013-June/009191.html #Requires: %%{name} = %%{version}-%%{release} %description doc kitchen includes functions to make gettext easier to use, handling unicode text easier (conversion with bytes, outputting xml, and calculating how many columns a string takes), and compatibility modules for writing code that uses python-2.7 modules but needs to run on python-2.3. This package contains the API documenation for programming with the python-2 version of the kitchen library. %if %{with python2} %package -n python2-kitchen Summary: Small, useful pieces of code to make python 2 coding easier Group: Development/Languages %{?python_provide:%python_provide python2-kitchen} %description -n python2-kitchen kitchen includes functions to make gettext easier to use, handling unicode text easier (conversion with bytes, outputting xml, and calculating how many columns a string takes). This is the python2 version of the kitchen module. %endif # with python2 %if 0%{?with_python3} %package -n python%{python3_pkgversion}-kitchen Summary: Small, useful pieces of code to make python 3 coding easier Group: Development/Languages %{?python_provide:%python_provide python%{python3_pkgversion}-kitchen} %{?__python3:Requires: %{__python3}} Requires: python%{python3_pkgversion}-chardet %description -n python%{python3_pkgversion}-kitchen kitchen includes functions to make gettext easier to use, handling unicode text easier (conversion with bytes, outputting xml, and calculating how many columns a string takes). This is the python3 version of the kitchen module. %package -n python%{python3_pkgversion}-kitchen-doc Summary: API documentation for the Kitchen python3 module #Requires: %%{name} = %%{version}-%%{release} %description -n python%{python3_pkgversion}-kitchen-doc kitchen includes functions to make gettext easier to use, handling unicode text easier (conversion with bytes, outputting xml, and calculating how many columns a string takes). This package contains the API documenation for programming with the python-3 version of the kitchen library. %endif %prep %autosetup -n kitchen-%{version} # Remove bundled egg info, if any. rm -rf *.egg* %build %if %{with python2} %py2_build %endif # with python2 %if 0%{?with_python3} %py3_build %endif # Build docs %if 0%{?fedora} %if %{with python2} sphinx-build-2 kitchen2/docs/ build/sphinx/html cp -pr build/sphinx/html . rm -rf html/.buildinfo %else sphinx-build kitchen2/docs/ build/sphinx/html cp -pr build/sphinx/html . rm -rf html/.buildinfo %endif %endif # with python2 %if 0%{?with_python3} && 0%{?fedora} sphinx-build-3 kitchen3/docs/ build/sphinx/html cp -pr build/sphinx/html . rm -rf html/.buildinfo %endif %install %if %{with python2} %py2_install %endif # with python2 %if 0%{?with_python3} %py3_install %endif %check # In current mock, the PATH isn't being reset. This causes failures in some # subprocess tests as a check tests /root/bin/PROGRAM and fails with Permission # Denied instead of File Not Found. reseting the PATH works around this. PATH=/bin:/usr/bin %if 0%{?fedora} %if %{with python2} PYTHONPATH=.:kitchen2/ nosetests-%{python2_version} kitchen2/tests/ %else PYTHONPATH=.:kitchen2/ nosetests kitchen2/tests/ %endif %endif # with python2 %if 0%{?with_python3} PYTHONPATH=.:kitchen3/ nosetests-%{python3_version} kitchen3/tests/ %endif %if %{with python2} %files -n python2-kitchen %doc README.rst NEWS.rst %license COPYING COPYING.LESSER %{python2_sitelib}/kitchen* %endif # with python2 %if %{with python2} %files doc %doc kitchen2/docs/* %license COPYING COPYING.LESSER %if 0%{?fedora} || 0%{?rhel} >= 6 %doc html %endif %endif # with python2 %if 0%{?with_python3} %files -n python%{python3_pkgversion}-kitchen %doc README.rst NEWS.rst %license COPYING COPYING.LESSER %{python3_sitelib}/kitchen* %files -n python%{python3_pkgversion}-kitchen-doc %doc kitchen3/docs/* %license COPYING COPYING.LESSER %if 0%{?fedora} %doc html %endif %endif %changelog * Tue Sep 25 2018 Tomas Orsava - 1.2.5-5 - Require the Python interpreter directly instead of using the package name - Resolves: rhbz#1633610 * Tue Aug 14 2018 Petr Viktorin - 1.2.5-4 - Fix conditionalized require on python-chardet - Resolves: #1610024 * Fri Jun 08 2018 Charalampos Stratakis - 1.2.5-3 - Conditionalize the python2 subpackage * Fri Feb 09 2018 Fedora Release Engineering - 1.2.5-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Sun Dec 17 2017 Kevin Fenzi - 1.2.5-1 - Update to 1.2.5. Fixes bug #1484856 * Thu Jul 27 2017 Fedora Release Engineering - 1.2.4-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Sat Feb 11 2017 Fedora Release Engineering - 1.2.4-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild * Mon Dec 19 2016 Miro HronĨok - 1.2.4-5 - Rebuild for Python 3.6 - Add docs back as a separate source (to fix build with recent sphinx) - Update codepoints patch for latest Python and unicode data * Mon Sep 12 2016 Ralph Bean - 1.2.4-4 - Explicit python2 subpackage. - Support python34 on epel7. - Modernize python macros. * Tue Jul 19 2016 Fedora Release Engineering - 1.2.4-3 - https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages * Thu Feb 04 2016 Fedora Release Engineering - 1.2.4-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild * Fri Nov 13 2015 Ralph Bean - 1.2.4-1 - new version - Apply patch fixing the unicode codepoints table for py3.5. * Wed Nov 11 2015 Ralph Bean - 1.2.1-5 - Support python34 on EPEL7. * Tue Nov 10 2015 Fedora Release Engineering - 1.2.1-4 - Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 * Thu Jun 18 2015 Fedora Release Engineering - 1.2.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild * Tue Dec 02 2014 Ralph Bean - 1.2.1-2 - Include patch to get py34 tests working for rawhide. * Tue Dec 02 2014 Ralph Bean - 1.2.1-1 - Latest upstream, now with python3 support! - Added python3 subpackages. - Remove use of build_sphinx. - Rename README and NEWS with new .rst extension. - Modernized python2 macros. * Sat Jun 07 2014 Fedora Release Engineering - 1.1.1-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild * Sat May 31 2014 Peter Robinson 1.1.1-6 - Move the html docs to the docs package * Sun Aug 04 2013 Fedora Release Engineering - 1.1.1-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild * Tue Jun 25 2013 Toshio Kuratomi - 1.1.1-4 - Move the api documentation into its own subpackage * Thu Feb 14 2013 Fedora Release Engineering - 1.1.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild * Sat Jul 21 2012 Fedora Release Engineering - 1.1.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild * Tue Feb 14 2012 Toshio Kuratomi - 1.1.1-1 - Bugfix for using easy_gettext_setup or get_translation_object with the default localedirs * Thu Jan 12 2012 Toshio Kuratomi - 1.1.0-1 - Update to 1.1.0 final * Thu Apr 14 2011 Toshio Kuratomi - 1.0.0-1 - Upstream update to 1.0 final * Sun Feb 20 2011 Toshio Kuratomi - 0.2.4-1 - Upstream update 0.2.4 - Changes i18n.easy_gettext_setup() to return lgettext functions when byte strings are requested. * Tue Feb 08 2011 Fedora Release Engineering - 0.2.3-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Wed Jan 5 2011 Toshio Kuratomi - 0.2.3-2 - Upstream respin of the tarball * Wed Jan 5 2011 Toshio Kuratomi - 0.2.3-1 - Upstream update to 0.2.3 - Fixes https://bugzilla.redhat.com/show_bug.cgi?id=667433 * Mon Jan 3 2011 Toshio Kuratomi - 0.2.2-1 - Upstream update 0.2.2 - Adds exception to message functions - Build html docs * Thu Sep 2 2010 Toshio Kuratomi - 0.2.1-0.1.a1 - Update to upstream 0.2.1a1 release. - Fixes build on python-2.7, adds iterutils module, optimizes some functions, increases documentation * Thu Jul 29 2010 Dennis Gilmore - 0.2-0.1.a2 - propoerlly version accrding to pre-release guidelines - run tests - update to 0.2a2 - include COPYING.LESSER and docs dir * Thu Jul 29 2010 Dennis Gilmore - 0.2a1-2 - rename to python-kitchen * Thu Jul 29 2010 Dennis Gilmore - 0.2a1-1 - update to 0.2a1 * Thu Jul 15 2010 Dennis Gilmore - 0.1a3-3 - fix spelling mistake in description * Thu Jul 15 2010 Dennis Gilmore - 0.1a3-2 - add documentaion - fix description * Thu Jul 15 2010 Dennis Gilmore - 0.1a3-1 - initial package