-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Closed
Labels
bugBehaving differently as it should behaveBehaving differently as it should behavelang: cythonImplemented using Cython codeImplemented using Cython code
Description
Python 3.13 moved a bunch of previously exposed functionality to its private C API, see the Python 3.13 release notes. Of these functions, we currently use _PyTraceback_Add
to append the C++ backtrace to our Python wrapper code in
openage/openage/cppinterface/exctranslate.pyx
Lines 46 to 58 in fb88dfc
cdef extern from "traceback.h": | |
void _PyTraceback_Add(const char *funcname, const char *filename, int lineno) | |
cdef void PyTraceback_Add(const char *functionname, const char *filename, int lineno) noexcept with gil: | |
""" | |
Add a new traceback stack frame. | |
Redirects to Python's internal _PyTraceback_Add function. | |
""" | |
# possible since 3.4.3 due to http://bugs.python.org/issue24436. | |
# the function will likely remain internal due to https://bugs.python.org/issue24743 | |
_PyTraceback_Add(functionname, filename, lineno) |
When Python 3.13 is used for building, the code no longer compiles.
We should probably remove _PyTraceback_Add
and find a better solution for the backtraces.
Metadata
Metadata
Assignees
Labels
bugBehaving differently as it should behaveBehaving differently as it should behavelang: cythonImplemented using Cython codeImplemented using Cython code