diff --git a/flask-0.9-jinja2_egg.patch b/flask-0.9-jinja2_egg.patch new file mode 100644 index 0000000..a4fbb15 --- /dev/null +++ b/flask-0.9-jinja2_egg.patch @@ -0,0 +1,63 @@ +--- Flask-0.9/flask/templating.py 2012-07-01 04:10:19.000000000 -0700 ++++ Flask-0.9/flask/templating.py.new 2016-12-30 11:09:26.201514713 -0800 +@@ -9,6 +9,8 @@ + :license: BSD, see LICENSE for more details. + """ + import posixpath ++import sys ++sys.path.insert(0, '/usr/lib/python2.6/site-packages/Jinja2-2.6-py2.6.egg') + from jinja2 import BaseLoader, Environment as BaseEnvironment, \ + TemplateNotFound + +--- Flask-0.9/flask/__init__.py 2012-07-01 04:10:45.000000000 -0700 ++++ Flask-0.9/flask/__init__.py.new 2016-12-30 11:09:42.257574140 -0800 +@@ -12,10 +12,12 @@ + + __version__ = '0.9' + ++import sys + # utilities we import from Werkzeug and Jinja2 that are unused + # in the module but are exported as public interface. + from werkzeug.exceptions import abort + from werkzeug.utils import redirect ++sys.path.insert(0, '/usr/lib/python2.6/site-packages/Jinja2-2.6-py2.6.egg') + from jinja2 import Markup, escape + + from .app import Flask, Request, Response +--- Flask-0.9/flask/testsuite/blueprints.py 2012-07-01 04:10:19.000000000 -0700 ++++ Flask-0.9/flask/testsuite/blueprints.py.new 2016-12-30 11:09:00.752420519 -0800 +@@ -12,11 +12,13 @@ + from __future__ import with_statement + + import flask ++import sys + import unittest + import warnings + from flask.testsuite import FlaskTestCase, emits_module_deprecation_warning + from werkzeug.exceptions import NotFound + from werkzeug.http import parse_cache_control_header ++sys.path.insert(0, '/usr/lib/python2.6/site-packages/Jinja2-2.6-py2.6.egg') + from jinja2 import TemplateNotFound + + +--- Flask-0.9/flask/testsuite/templating.py 2012-07-01 04:10:19.000000000 -0700 ++++ Flask-0.9/flask/testsuite/templating.py.new 2016-12-30 11:08:28.005299314 -0800 +@@ -167,6 +167,8 @@ + def test_custom_template_loader(self): + class MyFlask(flask.Flask): + def create_global_jinja_loader(self): ++ import sys ++ sys.path.insert(0, '/usr/lib/python2.6/site-packages/Jinja2-2.6-py2.6.egg') + from jinja2 import DictLoader + return DictLoader({'index.html': 'Hello Custom World!'}) + app = MyFlask(__name__) +--- Flask-0.9/flask/helpers.py 2012-07-01 04:10:19.000000000 -0700 ++++ Flask-0.9/flask/helpers.py.new 2016-12-30 11:07:58.429189845 -0800 +@@ -49,6 +49,7 @@ + except ImportError: + from werkzeug.utils import wrap_file + ++sys.path.insert(0, '/usr/lib/python2.6/site-packages/Jinja2-2.6-py2.6.egg') + from jinja2 import FileSystemLoader + + from .globals import session, _request_ctx_stack, _app_ctx_stack, \ diff --git a/python-flask.spec b/python-flask.spec index 142f190..0bcd939 100644 --- a/python-flask.spec +++ b/python-flask.spec @@ -3,7 +3,7 @@ Name: python-flask Version: 0.9 -Release: 7%{?dist} +Release: 8%{?dist} Epoch: 1 Summary: A micro-framework for Python based on Werkzeug, Jinja 2 and good intentions @@ -11,12 +11,19 @@ Group: Development/Libraries License: BSD URL: http://flask.pocoo.org/ Source0: http://pypi.python.org/packages/source/F/Flask/%{srcname}-%{srcversion}.tar.gz +%if 0%{?rhel} == 6 +# add the necessary path to sys.path in order to be able to import +# the egg-y jinja2-26 (see the README.Fedora in that package) +Patch0: flask-0.9-jinja2_egg.patch +%endif BuildArch: noarch BuildRequires: python2-devel python-setuptools-devel python-werkzeug python-sphinx Requires: python-werkzeug -%if 0%{?rhel} +%if 0%{?rhel} == 6 +# EL 6 system python-jinja2 is 2.2, while Flask 0.9 requires >= 2.4, +# so use this 2.6 version BuildRequires: python-jinja2-26 Requires: python-jinja2-26 %else @@ -50,6 +57,9 @@ Documentation and examples for %{name}. %prep %setup -q -n %{srcname}-%{srcversion} %{__sed} -i "1i __requires__ = ['Jinja2>=2.4']" setup.py +%if 0%{?rhel} == 6 +%patch0 -p1 +%endif %build %{__python} setup.py build @@ -84,6 +94,10 @@ rm -rf examples/jqueryexample/*.pyc %doc docs/_build/html examples %changelog +* Fri Dec 30 2016 Adam Williamson - 1:0.9-8 +- Fix use of python-jinja2-26 on EPEL 6 (it requires special handling) +- Only use python-jinja2-26 on EPEL 6, not EPEL 7 + * Mon Jul 29 2013 Haïkel Guémar - 1:0.9-7 - fix wrong requires on sphinx (RHBZ #989361)