again documentation updates fixed another python 2.4 bug. Imports are not evaluated with the template context any longer which makes it possible to keep them in memory
--HG--
branch : trunk
diff --git a/jinja2/compiler.py b/jinja2/compiler.py
index f9f11b3..b40c1d1 100644
--- a/jinja2/compiler.py
+++ b/jinja2/compiler.py
@@ -720,7 +720,7 @@
self.write('context.vars[%r] = ' % node.target)
self.write('environment.get_template(')
self.visit(node.template, frame)
- self.write(', %r).include(context)' % self.name)
+ self.write(', %r).module' % self.name)
if frame.toplevel and not node.target.startswith('__'):
self.writeline('context.exported_vars.discard(%r)' % node.target)
@@ -729,7 +729,7 @@
self.newline(node)
self.write('included_template = environment.get_template(')
self.visit(node.template, frame)
- self.write(', %r).include(context)' % self.name)
+ self.write(', %r).module' % self.name)
for name in node.names:
if isinstance(name, tuple):
name, alias = name
@@ -1051,6 +1051,11 @@
frame.assigned_names.add(node.name)
self.write('l_' + node.name)
+ def visit_MarkSafe(self, node, frame):
+ self.write('Markup(')
+ self.visit(node.expr, frame)
+ self.write(')')
+
def visit_Const(self, node, frame):
val = node.value
if isinstance(val, float):