I commited a bunch of changes to Psyco. Here are a few words about them...
Primitive traceback support. There is still no general frame support, but
this is enough to let the familiar tracebacks be printed again.
Memory allocation bug fixed. Might be the source of the SF bug reported by
Codepage. [Can you please check this? Thanks!]
IMPORT_NAME and IMPORT_FROM opcodes supported (import xx / from xx import
yy). The "from xx import *" form is not supported but is supposed to be
illegal anyway in a function.
Fix for global variables: a function like
N = 5
failed with a NameError on the last line if N did not exist in the globals
before the function call. Note however that a contrieved exemple can still
be built: if f() calls g() which creates a new global N, f() will
immediately see N. I have taken care of this in the common case of N not
also being the name of an existing built-in.
Class creation: when creating a class inside a function, __metaclass__ was
looked up in the globals of the last Python-executed function instead of the
Minor other fixes.