-
Notifications
You must be signed in to change notification settings - Fork 142
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support frame eval mode in Python 3.9 #441
Comments
As a note, I'm working on this now. |
I still haven't finished this... the actual fix is simple (mostly dealing with the new frame object required in i.e.: If the pre-processing is done on the cython level the related .c files aren't valid for all versions and I couldn't find a way to do the needed #if pre-processing on the C-level from cython. Given that, I'm thinking about no longer commiting the .c files to the repository and always regenerating them from the .pyx files. I think that the main change is that cython will need to be available for doing the compilation (whereas right now only a C/C++ compiler is needed). Do you think this is a problem? -- another option could be pre-creating one .c for Python 3.8 and another for Python 3.9 (the issues here is that the related cython file which has around 600 lines becomes 20k lines of C and some more logic will be needed due to those name changes). |
Actually, by using some code generation and macros I've been able to make it compile with a single .c for Python 3.8 and Python 3.9 -- cython makes it a bit tricky but I think it's still reasonable (so, it should keep on working as it already does). |
It seems that:
PyInterpreterState.eval_frame (PEP 523) now requires a new mandatory tstate parameter (PyThreadState*). (Contributed by Victor Stinner in :issue:
38500
.)The text was updated successfully, but these errors were encountered: