Roundup Tracker - Issues

Message3862

Author etaum
Recipients etaum
Date 2009-08-31.11:53:07
Message-id <1251719592.17.0.42392194346.issue2550582@psf.upfronthosting.co.za>
In-reply-to
observed in roundup versions 1.4.4 and higher

using a construct like 

tal:content="structure
python:context.assignedto.menu(filterspec={'user_projects':
path('context/project/id')})"

does not work; we end up with an exception like this:

  File "/usr/lib/python2.6/dist-packages/roundup/cgi/client.py", line
959, in renderContext
    result = pt.render(self, None, None, **args)
  File "/usr/lib/python2.6/dist-packages/roundup/cgi/templating.py",
line 327, in render
    getEngine().getContext(c), output, tal=1, strictinsert=0)()
  File
"/usr/lib/python2.6/dist-packages/roundup/cgi/TAL/TALInterpreter.py",
line 192, in __call__
    self.interpret(self.program)
  File
"/usr/lib/python2.6/dist-packages/roundup/cgi/TAL/TALInterpreter.py",
line 236, in interpret
    handlers[opcode](self, args)
  File
"/usr/lib/python2.6/dist-packages/roundup/cgi/TAL/TALInterpreter.py",
line 666, in do_useMacro
    self.interpret(macro)
  File
"/usr/lib/python2.6/dist-packages/roundup/cgi/TAL/TALInterpreter.py",
line 236, in interpret
    handlers[opcode](self, args)
  File
"/usr/lib/python2.6/dist-packages/roundup/cgi/TAL/TALInterpreter.py",
line 411, in do_optTag_tal
    self.do_optTag(stuff)
  File
"/usr/lib/python2.6/dist-packages/roundup/cgi/TAL/TALInterpreter.py",
line 396, in do_optTag
    return self.no_tag(start, program)
  File
"/usr/lib/python2.6/dist-packages/roundup/cgi/TAL/TALInterpreter.py",
line 391, in no_tag
    self.interpret(program)
  File
"/usr/lib/python2.6/dist-packages/roundup/cgi/TAL/TALInterpreter.py",
line 236, in interpret
    handlers[opcode](self, args)
  File
"/usr/lib/python2.6/dist-packages/roundup/cgi/TAL/TALInterpreter.py",
line 689, in do_defineSlot
    self.interpret(slot)
  File
"/usr/lib/python2.6/dist-packages/roundup/cgi/TAL/TALInterpreter.py",
line 236, in interpret
    handlers[opcode](self, args)
  File
"/usr/lib/python2.6/dist-packages/roundup/cgi/TAL/TALInterpreter.py",
line 632, in do_condition
    self.interpret(block)
  File
"/usr/lib/python2.6/dist-packages/roundup/cgi/TAL/TALInterpreter.py",
line 236, in interpret
    handlers[opcode](self, args)
  File
"/usr/lib/python2.6/dist-packages/roundup/cgi/TAL/TALInterpreter.py",
line 564, in do_insertStructure_tal
    structure = self.engine.evaluateStructure(expr)
  File
"/usr/lib/python2.6/dist-packages/roundup/cgi/PageTemplates/TALES.py",
line 227, in evaluate
    return expression(self)
  File
"/usr/lib/python2.6/dist-packages/roundup/cgi/PageTemplates/PythonExpr.py",
line 69, in __call__
    return f()
  File "&lt;string&gt;", line 2, in f
  File "/usr/lib/python2.6/dist-packages/roundup/cgi/templating.py",
line 1940, in menu
    for opt in linkcl.filter(None, conditions, sort_on, (None, None))
  File
"/usr/lib/python2.6/dist-packages/roundup/backends/rdbms_common.py",
line 2174, in filter
    proptree = self._proptree(filterspec, sortattr)
  File "/usr/lib/python2.6/dist-packages/roundup/hyperdb.py", line 1057,
in _proptree
    p = p.append(k)
  File "/usr/lib/python2.6/dist-packages/roundup/hyperdb.py", line 345,
in append
    propclass = self.props[name]
KeyError: 'filterspec'


I append a patch the implements a rought and ready workaround for this
problem ...
History
Date User Action Args
2009-08-31 11:53:12etaumsetmessageid: <1251719592.17.0.42392194346.issue2550582@psf.upfronthosting.co.za>
2009-08-31 11:53:12etaumsetrecipients: + etaum
2009-08-31 11:53:11etaumlinkissue2550582 messages
2009-08-31 11:53:08etaumcreate