Full traceback: Traceback (most recent call last): File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/client.py", line 1007, in renderContext result = pt.render(self, None, None, **args) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/templating.py", line 343, in render getEngine().getContext(c), output, tal=1, strictinsert=0)() File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/TAL/TALInterpreter.py", line 192, in __call__ self.interpret(self.program) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/TAL/TALInterpreter.py", line 236, in interpret handlers[opcode](self, args) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/TAL/TALInterpreter.py", line 666, in do_useMacro self.interpret(macro) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/TAL/TALInterpreter.py", line 236, in interpret handlers[opcode](self, args) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/TAL/TALInterpreter.py", line 411, in do_optTag_tal self.do_optTag(stuff) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/TAL/TALInterpreter.py", line 396, in do_optTag return self.no_tag(start, program) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/TAL/TALInterpreter.py", line 391, in no_tag self.interpret(program) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/TAL/TALInterpreter.py", line 236, in interpret handlers[opcode](self, args) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/TAL/TALInterpreter.py", line 689, in do_defineSlot self.interpret(slot) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/TAL/TALInterpreter.py", line 236, in interpret handlers[opcode](self, args) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/TAL/TALInterpreter.py", line 632, in do_condition self.interpret(block) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/TAL/TALInterpreter.py", line 236, in interpret handlers[opcode](self, args) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/TAL/TALInterpreter.py", line 411, in do_optTag_tal self.do_optTag(stuff) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/TAL/TALInterpreter.py", line 396, in do_optTag return self.no_tag(start, program) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/TAL/TALInterpreter.py", line 391, in no_tag self.interpret(program) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/TAL/TALInterpreter.py", line 236, in interpret handlers[opcode](self, args) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/TAL/TALInterpreter.py", line 632, in do_condition self.interpret(block) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/TAL/TALInterpreter.py", line 236, in interpret handlers[opcode](self, args) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/TAL/TALInterpreter.py", line 564, in do_insertStructure_tal structure = self.engine.evaluateStructure(expr) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/PageTemplates/TALES.py", line 227, in evaluate return expression(self) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/PageTemplates/Expressions.py", line 195, in __call__ return self._eval(econtext) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/PageTemplates/Expressions.py", line 190, in _eval return render(ob, econtext.vars) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/PageTemplates/Expressions.py", line 96, in render ob = ob() File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/templating.py", line 912, in history current[prop_n] = prop.plain(escape=1) File "/opt/roundup/lib/python2.4/site-packages/roundup/cgi/templating.py", line 1655, in plain return str(self._value.local(offset)) AttributeError: 'str' object has no attribute 'local'