From 1540b2bae3ebe4c3ef5df0cf7236104a3ada6e3c Mon Sep 17 00:00:00 2001 From: Armin Ronacher Date: Wed, 10 Feb 2010 02:13:51 +0100 Subject: [PATCH] Broke a test for 2.x :) --HG-- branch : trunk --- MANIFEST.in | 3 ++- TODO | 39 --------------------------------------- jinja2/testsuite/debug.py | 3 +-- 3 files changed, 3 insertions(+), 42 deletions(-) delete mode 100644 TODO diff --git a/MANIFEST.in b/MANIFEST.in index b341589..9bebc13 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1,5 +1,6 @@ -include MANIFEST.in Makefile CHANGES LICENSE AUTHORS TODO ez_setup.py +include MANIFEST.in Makefile CHANGES LICENSE AUTHORS recursive-include docs * +recursive-include custom_fixers * recursive-include tests * recursive-include ext * recursive-include artwork * diff --git a/TODO b/TODO deleted file mode 100644 index a951936..0000000 --- a/TODO +++ /dev/null @@ -1,39 +0,0 @@ -Todo Before Release -=================== - -This has to be implemented before the release: - -Pull Attributes Onces ---------------------- - -Imagine the following template:: - - {% if foo.bar %} - {{ baz(foo.bar) }} - {% endif %} - -Problem with that is that it compiles to this:: - - if environment.subscribe(l_foo, 'bar'): - if 0: yield None - yield u'\n %s\n' % ( - l_baz(environment.subscribe(l_foo, 'bar')), - ) - -As `environment.subscribe` is more expensive then regular attribute lookups -(it tries getitem/getattr and in sandbox mode also permissions) multiple -lookups with the same parameters in the same scope should get local aliases. -The result we have is that one:: - - t1 = environment.subscribe(l_foo, 'bar') - if t1: - if 0: yield None - yield u'\n %s\n' % ( - l_baz(t1), - ) - -However that should only happen if the attribute is accessed multiple times -unlike locals and filters/tests which are always pulled. We're not doing that -for filters/tests/locals as nested scopes may access it and testing is too -complicated for the tiny performance improvement but easy for attribute -lookups, keeping the complexity of the whole thing in mind. diff --git a/jinja2/testsuite/debug.py b/jinja2/testsuite/debug.py index 0c94193..ee79498 100644 --- a/jinja2/testsuite/debug.py +++ b/jinja2/testsuite/debug.py @@ -38,8 +38,7 @@ ZeroDivisionError: int(eger)? division or modulo by zero # be fixed though. self.assert_traceback_matches(lambda: env.get_template('syntaxerror.html'), r'''(?sm) File ".*?syntaxerror.html", line 4, in (template|) - \{% endif %\} - .*? + \{% endif %\}.*? (jinja2\.exceptions\.)?TemplateSyntaxError: Encountered unknown tag 'endif'. Jinja was looking for the following tags: 'endfor' or 'else'. The innermost block that needs to be closed is 'for'. ''') -- 2.26.2