X-Git-Url: http://git.tremily.us/?p=jinja2.git;a=blobdiff_plain;f=setup.py;h=414795620a176ddcbe342103ebc7516dce8c5566;hp=90dfd84b38e1d73fa8d5572c81fd3e1f94893e7d;hb=HEAD;hpb=0830e25652a68d709e76f5ff0a8b46a2e8b6903f diff --git a/setup.py b/setup.py index 90dfd84..4147956 100644 --- a/setup.py +++ b/setup.py @@ -1,11 +1,11 @@ # -*- coding: utf-8 -*- """ -Jinja -===== +Jinja2 +~~~~~~ -Jinja is a `sandboxed`_ template engine written in pure Python. It provides a -`Django`_ like non-XML syntax and compiles templates into executable python code. -It's basically a combination of Django templates and python code. +Jinja2 is a template engine written in pure Python. It provides a +`Django`_ inspired non-XML syntax but supports inline expressions and +an optional `sandboxed`_ environment. Nutshell -------- @@ -17,7 +17,7 @@ Here a small example of a Jinja template:: {% block content %} {% endblock %} @@ -25,61 +25,86 @@ Here a small example of a Jinja template:: Philosophy ---------- -Application logic is for the controller but don't try to make the life for the -template designer too hard by giving him too few functionality. +Application logic is for the controller but don't try to make the life +for the template designer too hard by giving him too few functionality. -For more informations visit the new `jinja webpage`_ and `documentation`_. +For more informations visit the new `Jinja2 webpage`_ and `documentation`_. -Note ----- +.. _sandboxed: http://en.wikipedia.org/wiki/Sandbox_(computer_security) +.. _Django: http://www.djangoproject.com/ +.. _Jinja2 webpage: http://jinja.pocoo.org/ +.. _documentation: http://jinja.pocoo.org/2/documentation/ +""" +import sys -This is the Jinja 1.0 release which is completely incompatible with the old -"pre 1.0" branch. The old branch will still receive security updates and -bugfixes but the 1.0 branch will be the only version that receives support. +from setuptools import setup, Extension, Feature -If you have an application that uses Jinja 0.9 and won't be updated in the -near future the best idea is to ship a Jinja 0.9 checkout together with -the application. +debugsupport = Feature( + 'optional C debug support', + standard=False, + ext_modules = [ + Extension('jinja2._debugsupport', ['jinja2/_debugsupport.c']), + ], +) -.. _sandboxed: http://en.wikipedia.org/wiki/Sandbox_%28computer_security%29 -.. _Django: http://www.djangoproject.com/ -.. _jinja webpage: http://jinja.pocoo.org/ -.. _documentation: http://jinja.pocoo.org/documentation/index.html -""" -import os -import ez_setup -ez_setup.use_setuptools() -from setuptools import setup + +# tell distribute to use 2to3 with our own fixers. +extra = {} +if sys.version_info >= (3, 0): + extra.update( + use_2to3=True, + use_2to3_fixers=['custom_fixers'] + ) + +# ignore the old '--with-speedups' flag +try: + speedups_pos = sys.argv.index('--with-speedups') +except ValueError: + pass +else: + sys.argv[speedups_pos] = '--with-debugsupport' + sys.stderr.write('*' * 74 + '\n') + sys.stderr.write('WARNING:\n') + sys.stderr.write(' the --with-speedups flag is deprecated, assuming ' + '--with-debugsupport\n') + sys.stderr.write(' For the actual speedups install the MarkupSafe ' + 'package.\n') + sys.stderr.write('*' * 74 + '\n') setup( - name = 'Jinja', - version = '1.0', - url = 'http://jinja.pocoo.org/', - license = 'BSD', - author = 'Armin Ronacher', - author_email = 'armin.ronacher@active-4.com', - description = 'A small but fast and easy to use stand-alone template ' - 'engine written in pure python.', - long_description = __doc__, - zip_safe = True, - classifiers = [ + name='Jinja2', + version='2.7-dev', + url='http://jinja.pocoo.org/', + license='BSD', + author='Armin Ronacher', + author_email='armin.ronacher@active-4.com', + description='A small but fast and easy to use stand-alone template ' + 'engine written in pure python.', + long_description=__doc__, + # jinja is egg safe. But we hate eggs + zip_safe=False, + classifiers=[ 'Development Status :: 5 - Production/Stable', 'Environment :: Web Environment', 'Intended Audience :: Developers', 'License :: OSI Approved :: BSD License', 'Operating System :: OS Independent', 'Programming Language :: Python', + 'Programming Language :: Python :: 3', 'Topic :: Internet :: WWW/HTTP :: Dynamic Content', 'Topic :: Software Development :: Libraries :: Python Modules', 'Topic :: Text Processing :: Markup :: HTML' ], - keywords = ['python.templating.engines'], - packages = ['jinja', 'jinja.translators'], - data_files = [ - ('docs', os.listdir('docs/build')), - ('docs/txt', os.listdir('docs/src')) - ], - platforms = 'any', - extras_require = {'plugin': ['setuptools>=0.6a2']} + packages=['jinja2', 'jinja2.testsuite', 'jinja2.testsuite.res', + 'jinja2._markupsafe'], + extras_require={'i18n': ['Babel>=0.8']}, + test_suite='jinja2.testsuite.suite', + include_package_data=True, + entry_points=""" + [babel.extractors] + jinja2 = jinja2.ext:babel_extract[i18n] + """, + features={'debugsupport': debugsupport}, + **extra )