a a écrit : > hi i tried psyco+webpy > > here is the error that i got > please let me know if any of you has success run psyco+webpy > thanks > > import web, psyco > urls = ( > '/', 'view', > '/add','add' > ) > psyco.full() > psyco.log() > psyco.profile() > > Launching server: http://0.0.0.0:8080/ > Traceback (most recent call last): > File "C:\Python24\lib\site-packages\web.py", line 2054, in > run_wsgi_app > result = self.server.app(env, self.wsgi_start_response) > File "C:\Python24\lib\site-packages\web.py", line 1894, in wsgifunc > result = func() > File "C:\Python24\lib\site-packages\web.py", line 1872, in <lambda> > func = lambda: handle(getattr(mod, name), mod) > File "C:\Python24\lib\site-packages\web.py", line 1051, in handle > return tocall(*([urllib.unquote(x) for x in args] + fna)) > File "C:\mark\web1\codepsyco.py", line 27, in GET > web.render('view.html') > File "C:\Python24\lib\site-packages\web.py", line 1707, in render > terms.update(sys._getframe(1).f_locals) > File "C:\Python24\Lib\site-packages\psyco\support.py", line 129, in > __getattr__
Functions optimized by Psyco have limitations concerning access of their local variables, as stated there: http://psyco.sourceforge.net/psycoguide/bugs.html As a workaround, you should prevent psyco from optimizing the functions calling render(). psyco.cannotcompile(web.djangoerror) psyco.cannotcompile(??.GET) P.S. I just had a look at the web.py code and it seems that there are several uses of _getframe(x).f_locals. I find this trick not very pythonic (a function's docstring even says:"""Guido van Rossum doesn't want you to use this function.""") and anyway psyco will not appreciate it. -- Amaury -- http://mail.python.org/mailman/listinfo/python-list