#1156: Improve error reporting when incorrect number of post arguments
-------------------------+--------------------------------------------------
Reporter: talin | Owner: anonymous
Type: enhancement | Status: new
Priority: low | Milestone:
Component: TurboGears | Version: trunk
Severity: minor | Keywords:
-------------------------+--------------------------------------------------
While much of the error reporting has been improved with the adoption of
Genshi, there remain certain types of errors that are difficult to debug
due to the fact that the exception stack track contains little information
about the location or nature of the error. For example, the following
stack trace is a result of an error in a Genshi template, but there is no
indication of which part of the template or what variable is the source of
the problem:
{{{
500 Internal error
The server encountered an unexpected condition which prevented it from
fulfilling the request.
Page handler: <bound method Root.thes of <thes.controllers.Root object at
0x2062270>>
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4
/site-packages/CherryPy-2.2.1-py2.4.egg/cherrypy/_cphttptools.py", line
105, in _run
self.main()
File "/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4
/site-packages/CherryPy-2.2.1-py2.4.egg/cherrypy/_cphttptools.py", line
254, in main
body = page_handler(*virtual_path, **self.params)
File "<string>", line 3, in thes
File "/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4
/site-packages/TurboGears-1.1a0-py2.4.egg/turbogears/controllers.py", line
275, in expose
output = database.run_with_transaction(
File "<string>", line 5, in run_with_transaction
File "/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4
/site-packages/TurboGears-1.1a0-py2.4.egg/turbogears/database.py", line
247, in so_rwt
retval = func(*args, **kw)
File "<string>", line 5, in _expose
File "/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4
/site-packages/TurboGears-1.1a0-py2.4.egg/turbogears/controllers.py", line
292, in <lambda>
mapping, fragment, args, kw)))
File "/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4
/site-packages/TurboGears-1.1a0-py2.4.egg/turbogears/controllers.py", line
329, in _execute_func
return _process_output(output, template, format, content_type,
mapping, fragment)
File "/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4
/site-packages/TurboGears-1.1a0-py2.4.egg/turbogears/controllers.py", line
72, in _process_output
mapping=mapping, content_type=content_type,fragment=fragment)
File "/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4
/site-packages/TurboGears-1.1a0-py2.4.egg/turbogears/view/base.py", line
126, in render
return turbogears.util.adapt_call(engine.render, **dict(info=info,
format=format, fragment=fragment, template=template, mapping=mapping))
File "/Library/Frameworks/Python.framework/Versions/2.4/lib/python2.4
/site-packages/TurboGears-1.1a0-py2.4.egg/turbogears/util.py", line 163,
in adapt_call
return func(*args, **kw)
File "build/bdist.macosx-10.4-fat/egg/genshi/plugin.py", line 78, in
render
File "build/bdist.macosx-10.4-fat/egg/genshi/core.py", line 141, in
render
File "build/bdist.macosx-10.4-fat/egg/genshi/output.py", line 332, in
__call__
File "build/bdist.macosx-10.4-fat/egg/genshi/output.py", line 488, in
__call__
File "build/bdist.macosx-10.4-fat/egg/genshi/output.py", line 436, in
__call__
File "build/bdist.macosx-10.4-fat/egg/genshi/core.py", line 202, in
_ensure
File "build/bdist.macosx-10.4-fat/egg/genshi/filters.py", line 147, in
__call__
File "build/bdist.macosx-10.4-fat/egg/genshi/template.py", line 1118, in
_match
File "build/bdist.macosx-10.4-fat/egg/genshi/template.py", line 899, in
_eval
File "build/bdist.macosx-10.4-fat/egg/genshi/template.py", line 957, in
_flatten
File "build/bdist.macosx-10.4-fat/egg/genshi/template.py", line 951, in
_flatten
File "build/bdist.macosx-10.4-fat/egg/genshi/template.py", line 440, in
__call__
File "build/bdist.macosx-10.4-fat/egg/genshi/eval.py", line 97, in
evaluate
TypeError: __init__() takes at least 2 arguments (1 given)
}}}
I'm using the current trunk version as of mid-october.
--
Ticket URL: <http://trac.turbogears.org/turbogears/ticket/1156>
TurboGears <http://www.turbogears.org/>
TurboGears front-to-back web development
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"TurboGears Tickets" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/turbogears-tickets
-~----------~----~----~----~------~----~------~--~---