| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
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
| Original file line number | Diff line number | Diff line change | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Expand Up | @@ -185,7 +185,7 @@ _PyFrame_GetCodeBorrow(PyFrameObject *frame) | |||||||||||||
| } | ||||||||||||||
|
|
||||||||||||||
|
|
||||||||||||||
| // bpo-40421 added PyFrame_GetCode() to Python 3.9.0b1 | ||||||||||||||
| // bpo-40421 added PyFrame_GetBack() to Python 3.9.0b1 | ||||||||||||||
| #if PY_VERSION_HEX < 0x030900B1 && !defined(PYPY_VERSION) | ||||||||||||||
| PYCAPI_COMPAT_STATIC_INLINE(PyFrameObject*) | ||||||||||||||
| PyFrame_GetBack(PyFrameObject *frame) | ||||||||||||||
| Expand Down Expand Up | @@ -487,6 +487,15 @@ PyFloat_Unpack8(const char *p, int le) | |||||||||||||
| #endif | ||||||||||||||
|
|
||||||||||||||
|
|
||||||||||||||
| // gh-92154 added PyCode_GetCode() to Python 3.11.0b1 | ||||||||||||||
| #if PY_VERSION_HEX < 0x030B00B1 && !defined(PYPY_VERSION) | ||||||||||||||
|
Comment thread
Copy link
Copy Markdown
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low QualityNot sure if it matters, but this code will fail on one version: 3.11a7. In that version, co_code was removed, but there is no PyCode_GetCode. I don't know what you should do here. Maybe exclude that version?
Sorry, something went wrong.
All reactions
Copy link
Copy Markdown
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low QualityPerhaps #error with an explanatory message.
Sorry, something went wrong.
All reactions
Copy link
Copy Markdown
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality
Alpha versions of Python 3.11 are not supported: pythoncapi-compat/tests/test_pythoncapi_compat.py Lines 152 to 157 in c9764f5
It's a deliberate choice to not pollute pythoncapi_compat.h with ugly code to tons of compatibility layers, whereas there are few users of Python alpha versions.
What I suggested to users who want to upgrade pythoncapi_compat.h before Python 3.11 beta1 is to copy the file and then remove the functions which cause compilation errors. It's being discussed at: #32
Sorry, something went wrong.
erlend-aasland and Fidget-Spinner reacted with thumbs up emoji
All reactions
Copy link
Copy Markdown
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low QualityOk, makes sense.
Sorry, something went wrong.
All reactions
Copy link
Copy Markdown
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low QualityI'm not against adding an #error if you consider that it will help users impacted by this issue. Python 3.11 beta1 is scheduled in a few days. Python 3.11 breaks tons of C API: https://docs.python.org/dev/whatsnew/3.11.html#c-api-changes In the past, I tried first to add getter functions in one Python version, and only change the structure in the following Python version. Well, the optimization work broke many structures (PyThreadState, PyFrameObject, PyCodeObject). But after beta1, the API should be stable.
Sorry, something went wrong.
erlend-aasland and Skylion007 reacted with thumbs up emoji
All reactions
|
||||||||||||||
| PyObject *PyCode_GetCode(PyCodeObject *code) | ||||||||||||||
| { | ||||||||||||||
| return Py_NewRef(code->co_code); | ||||||||||||||
| } | ||||||||||||||
| #endif | ||||||||||||||
|
|
||||||||||||||
|
|
||||||||||||||
| // Py_UNUSED() was added to Python 3.4.0b2. | ||||||||||||||
| #if PY_VERSION_HEX < 0x030400B2 && !defined(Py_UNUSED) | ||||||||||||||
| # if defined(__GNUC__) || defined(__clang__) | ||||||||||||||
| Expand Down | ||||||||||||||
| Back | FazBrowse Home | New Git URL |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low QualityNit: PyCodeObject *code not PyObject *code :)
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low QualityFixed in commit bed155e.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.