%global srcname Werkzeug %bcond_without tests %if ! 0%{?fedora} # disable Python 3 if not Fedora %global with_python3 0 # define some macros for RHEL 6 %global __python2 %__python %global python2_sitelib %python_sitelib %endif %global tests 0 Name: python-werkzeug Version: 0.14.1 Release: 7.1%{?dist} Summary: The Swiss Army knife of Python web development License: BSD URL: http://werkzeug.pocoo.org/ Source0: https://files.pythonhosted.org/packages/source/W/Werkzeug/%{srcname}-%{version}.tar.gz # Pypi version of werkzeug is missing _themes folder needed to build werkzeug sphinx docs # See https://github.com/mitsuhiko/werkzeug/issues/761 Source1: werkzeug-sphinx-theme.tar.gz # https://github.com/pallets/werkzeug/pull/1293 # skip all tests that use xprocess when it's not installed (like here, # as it's not packaged for Fedora...) Patch0: 1293.patch # Use sys.executable in tests Patch1: https://github.com/pallets/werkzeug/pull/1455.patch BuildArch: noarch %global _description\ Werkzeug\ ========\ \ Werkzeug started as simple collection of various utilities for WSGI\ applications and has become one of the most advanced WSGI utility\ modules. It includes a powerful debugger, full featured request and\ response objects, HTTP utilities to handle entity tags, cache control\ headers, HTTP dates, cookie handling, file uploads, a powerful URL\ routing system and a bunch of community contributed addon modules.\ \ Werkzeug is unicode aware and doesn't enforce a specific template\ engine, database adapter or anything else. It doesn't even enforce\ a specific way of handling requests and leaves all that up to the\ developer. It's most useful for end user applications which should work\ on as many server environments as possible (such as blogs, wikis,\ bulletin boards, etc.).\ %description %_description %package -n python2-werkzeug Summary: %summary BuildRequires: python2-devel BuildRequires: python2-setuptools # For tests %if 0%{tests} BuildRequires: python2-pytest BuildRequires: python2-hypothesis BuildRequires: python2-requests BuildRequires: python2-pyOpenSSL BuildRequires: python2-greenlet BuildRequires: python2-redis BuildRequires: python2-memcached %endif %{?python_provide:%python_provide python2-werkzeug} %description -n python2-werkzeug %_description %package -n python2-werkzeug-doc Summary: Documentation for %{name} BuildRequires: python2-sphinx Requires: python2-werkzeug = %{version}-%{release} %{?python_provide:%python_provide python2-werkzeug-doc} %description -n python2-werkzeug-doc Documentation and examples for %{name}. %if 0%{?with_python3} %package -n python3-werkzeug Summary: %summary BuildRequires: python3-devel BuildRequires: python3-setuptools # For tests %if 0%{tests} BuildRequires: python3-pytest BuildRequires: python3-hypothesis BuildRequires: python3-requests BuildRequires: python3-pyOpenSSL BuildRequires: python3-greenlet BuildRequires: python3-redis BuildRequires: python3-memcached %endif #%{?python_provide:%python_provide python3-werkzeug} %{?python_provide:%python_provide python%{python3_pkgversion}-%{srcname}} %description -n python3-werkzeug %_description %package -n python3-werkzeug-doc Summary: Documentation for python3-werkzeug BuildRequires: python3-sphinx Requires: python3-werkzeug = %{version}-%{release} #%{?python_provide:%python_provide python3-werkzeug-doc} %{?python_provide:%python_provide python%{python3_pkgversion}-%{srcname}} %description -n python3-werkzeug-doc Documentation and examples for python3-werkzeug. %endif # python3 %prep %autosetup -p1 -n %{srcname}-%{version} %{__sed} -i 's/\r//' LICENSE %{__sed} -i '1d' tests/multipart/test_collect.py tar -xf %{SOURCE1} %if 0%{?with_python3} rm -rf %{py3dir} cp -a . %{py3dir} find %{py3dir} -name '*.py' | xargs sed -i '1s|^#!python|#!%{__python3}|' %endif %build %py2_build find examples/ -name '*.py' -executable | xargs chmod -x find examples/ -name '*.png' -executable | xargs chmod -x pushd docs # Add a symlink to the dir with the Python module so that __version__ can be # obtained therefrom. ln -s ../werkzeug werkzeug make html popd %if 0%{?with_python3} pushd %{py3dir} %py3_build find examples/ -name '*.py' -executable | xargs chmod -x find examples/ -name '*.png' -executable | xargs chmod -x pushd docs # Add a symlink to the dir with the Python module so that __version__ can be # obtained therefrom. ln -s ../werkzeug werkzeug make SPHINXBUILD=sphinx-build-3 html popd popd mv %{py3dir}/docs ./docs3 %endif %install %py2_install %{__rm} -rf docs/_build/html/.buildinfo %{__rm} -rf examples/cupoftee/db.pyc %if 0%{?with_python3} pushd %{py3dir} %py3_install %{__rm} -rf docs/_build/html/.buildinfo %{__rm} -rf examples/cupoftee/db.pyc popd %endif %check %if 0%{tests} PYTHONPATH=./ py.test-2 pushd %{py3dir} PYTHONPATH=./ py.test-3 popd %endif %files -n python2-werkzeug %license LICENSE %doc AUTHORS PKG-INFO CHANGES.rst %{python2_sitelib}/* %files -n python2-werkzeug-doc %doc docs/_build/html examples %if 0%{?with_python3} %files -n python3-werkzeug %license LICENSE %doc AUTHORS PKG-INFO CHANGES.rst %{python3_sitelib}/* %files -n python3-werkzeug-doc %doc docs3/_build/html examples %endif %changelog * Sat Mar 09 2019 Ruslan Pisarev - 0.14.1-7.1 - Disable tests, support to build on EL7 * Sun Feb 17 2019 Elliott Sales de Andrade - 0.14.1-7 - Backport fix to tests using 'python' command * Sat Feb 02 2019 Fedora Release Engineering - 0.14.1-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Mon Jul 16 2018 Miro Hrončok - 0.14.1-5 - Make sure we ship Python 3 docs in the Python 3 docs package * Sat Jul 14 2018 Fedora Release Engineering - 0.14.1-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Mon Jun 18 2018 Miro Hrončok - 0.14.1-3 - Rebuilt for Python 3.7 * Tue Jun 05 2018 Miro Hrončok - 0.14.1-2 - Don't BR watchdog, it is not needed * Wed May 09 2018 Adam Williamson - 0.14.1-1 - Update to 0.14.1 (needed by httpbin) - Run tests during build * Fri Feb 09 2018 Fedora Release Engineering - 0.12.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Mon Nov 20 2017 Charalampos Stratakis - 0.12.2-1 - Update to 0.12.2 * Fri Sep 29 2017 Troy Dawson - 0.11.10-8 - Cleanup spec file conditionals * Sat Aug 19 2017 Zbigniew Jędrzejewski-Szmek - 0.11.10-7 - Python 2 binary package renamed to python2-werkzeug See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3 * Thu Jul 27 2017 Fedora Release Engineering - 0.11.10-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Sat Feb 11 2017 Fedora Release Engineering - 0.11.10-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild * Tue Dec 13 2016 Stratakis Charalampos - 0.11.10-4 - Rebuild for Python 3.6 * Tue Dec 13 2016 Tomas Orsava - 0.11.10-3 - Fixed the building of documentation * Tue Jul 19 2016 Fedora Release Engineering - 0.11.10-2 - https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages * Sat May 28 2016 Haïkel Guémar - 0.11.10-1 - Upstream 0.11.19 - Fix unicode issues with python3 * Thu Apr 14 2016 Haïkel Guémar - 0.11.6-1 - Upstream 0.11.6 (upstream #822) * Thu Feb 04 2016 Fedora Release Engineering - 0.10.4-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild * Wed Oct 14 2015 Robert Kuska - 0.10.4-3 - Rebuilt for Python3.5 rebuild - Add werkzeug sphinx theme as a Source1 * Thu Jun 18 2015 Fedora Release Engineering - 0.10.4-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild * Sat May 30 2015 Ricky Elrod - 0.10.4-1 - Upstream 0.10.4. * Fri Jul 18 2014 Haïkel Guémar - 0.9.6-1 - Upstream 0.9.6 - Fixes RHBZ #1105819 * Sun Jun 08 2014 Fedora Release Engineering - 0.9.4-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild * Tue May 13 2014 Bohuslav Kabrda - 0.9.4-2 - Rebuilt for https://fedoraproject.org/wiki/Changes/Python_3.4 * Mon Aug 26 2013 Haïkel Guémar - 0.9.4-1 - Upstream 0.9.4 * Thu Jul 25 2013 Haïkel Guémar - 0.9.3-1 - Upstream 0.9.3 * Tue Jul 23 2013 Ricky Elrod - 0.9.2-1 - Upstream 0.9.2 release. * Sat Jun 15 2013 Haïkel Guémar - 0.9.1-1 - upstream 0.9.1 - add python3 flavor * Fri Jun 14 2013 Ricky Elrod - 0.9-1 - Upstream 0.9.0 release. * Thu Feb 14 2013 Fedora Release Engineering - 0.8.3-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild * Sat Jul 21 2012 Fedora Release Engineering - 0.8.3-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild * Sun Feb 5 2012 Haïkel Guémar - 0.8.3-1 - upstream 0.8.3 (fixes XSS security issues) * Wed Jan 25 2012 Haïkel Guémar - 0.8.2-1 - upstream 0.8.2 * Sat Jan 14 2012 Fedora Release Engineering - 0.6.2-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild * Wed Feb 09 2011 Fedora Release Engineering - 0.6.2-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Thu Jul 22 2010 David Malcolm - 0.6.2-2 - Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild * Sun May 23 2010 Peter Halliday - 0.6.2-1 - Updating because upstream release of Werkzeug 0.6.2 * Fri Mar 05 2010 Peter Halliday - 0.6-1 - Updating because upstream release of Werkzeug 0.6 * Tue Aug 25 2009 Peter Halliday - 0.5.1-1 - Initial package