hmmm. you may be right. Will look into this tonight. Massimo
On Apr 16, 4:15 pm, Jonathan Lundell <jlund...@pobox.com> wrote: > In admin/default, we have: > > def compile_app(): > c = app_compile(request.args[0], request) > if c: > session.flash = T('application compiled') > else: > import traceback > tb = traceback.format_exc() > session.flash = DIV(T('Cannot compile: there are errors in your > app:',CODE(tb))) > redirect(URL(r=request, f='site')) > > It's calling this from gluon/admin: > > def app_compile(app, request): > """ > Compiles the application > > Parameters > ---------- > app: > application name > request: > the global request object > """ > from compileapp import compile_application, remove_compiled_application > folder = apath(app, request) > try: > compile_application(folder) > return True > except (Exception, RestrictedError): > remove_compiled_application(folder) > return False > > However, CODE(tb) appears to be always empty. I believe that's because > traceback.format_exc() expects to find a traceback buffer on the stack, but > since app_compile() has returned after catching the exception, the exception > isn't on the stack any more. I think it's necessary for app_compile to return > the traceback to the caller. > > -- > Subscription settings:http://groups.google.com/group/web2py/subscribe?hl=en