- 24 Nov, 2021 2 commits
-
-
da-woods authored
Fixes https://github.com/cython/cython/issues/4296 If there was an error in preparing the function arguments after a memoryview had already been created, then the memoryview was not cleaned up correctly. (This leaves it in the slightly odd position where memoryviews are cleaned up in the wrapper function on failure, but in the main function on success. I kind of think it'd be better to clean them up in the wrapper function in both cases, but I'm reluctant to mess with a system that largely works.)
-
da-woods authored
For the Limited API, I'm not sure why USE_UNICODE_WRITER was ever the default - PyObject_Format() is part of the Limited API so should clearly be preferred. Python 3.11 hid _PyLong_FormatAdvancedWriter and _PyFloat_FormatAdvancedWriter. I've disabled USE_UNICODE_WRITER for the moment but I suspect we want to find replacements in the longer term.
-
- 23 Nov, 2021 3 commits
-
-
da-woods authored
Exception messages had changed a little
-
da-woods authored
If I understand correctly, the Cython-specific reimplementation of trashcan isn't needed of Python 3.8+ (because the patch it was based on was merged into Python). Therefore on these versions it can be disabled and the Python macros used instead. This is specifically needed for Python 3.11 since it removes or hides functions that are used in the Cython reimplementation. However, I've gone back further.
-
Matti Picus authored
-
- 18 Nov, 2021 14 commits
-
-
da-woods authored
The type for the self argument for binops depends on the compile directives. Therefore it needs a set of type slots that depends on the compiler directives. I've therefore got rid of the big static list of typeslots in TypeSlots.py in favour of a class that defines them all (and can be initialized with suitable compiler directives as needed). This involves moving a static dictionary and list out of the global scope too, so that they too can be part of the class. The passing of the dictionary and list to all the constructors is a bit awkward Fixes https://github.com/cython/cython/issues/4434
-
da-woods authored
Before this the _Py_TPFLAGS_HAVE_VECTORCALL was set all the time when using the limited api, but a CyFunction never sets up a vectorcall function. This caused basically all function calls to crash when binding=True with the limited API. Also removes the premature refnanny usage when setting up the module.
-
Jonathan Helgert authored
Disable on macOS due to bug in Apple clang++. See https://github.com/cython/cython/pull/4448#issuecomment-964405071
-
Stefan Behnel authored
-
Stefan Behnel authored
-
da-woods authored
* Initial support for Python 3.11 (GH-4414) https://github.com/cython/cython/issues/4414 * Add a basic replacement for PyCode_New(). An optimized versions would be nice, but this is intended to work sufficiently to start testing. Also, CPython 3.11 might actually add a new C-API function to simplify setting the current code position. That might be used instead. * Disable introspection of frame object with vectorcall This feature looked to only be used for early Python versions that don't have the full vectorcall protocol (and the contents of the frame object are changed in Python 3.11). * Use new C-API function to get the current frame on Python 3.11 alpha (GH-4427) Use the accessor function instead of the direct struct member (which is now the wrong type). https://github.com/cython/cython/issues/4427 Closes https://github.com/cython/cython/issues/4416 * Fix number of arguments * Disable CYTHON_FAST_PYCALL for 3.11 in Cython 0.29.x due to non-trivial incompatibilities. * Remove remanent of 3.8alpha/beta workaround for PyCode_New().
-
Max Bachmann authored
-
Stefan Behnel authored
-
da-woods authored
All the versions we currently test are new enough that the alias is no longer necessary.
-
da-woods authored
The string comparison was reporting '11' < '4' (so OpenMP tests were being skipped on GCC 11)
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Mike Taves authored
-
Stefan Behnel authored
-
- 16 Nov, 2021 11 commits
-
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Stefan Behnel authored
-
da-woods authored
Fixes https://github.com/cython/cython/issues/3647
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Stefan Behnel authored
Use newer test dependencies in Py3.6+. (Excluding 3.10 for now to give the projects a bit more time.)
-
Stefan Behnel authored
-
Stefan Behnel authored
Disable some plain Python (non Cython related) tests that fail in Py3.10 due to changed error messages.
-
- 13 Nov, 2021 1 commit
-
-
Julien Jerphanion authored
Originally discussed here: https://groups.google.com/g/cython-users/c/rU0_mt3Vgn0
-
- 11 Nov, 2021 2 commits
-
-
Johannes Mueller authored
The function `(cython-current-defun)` of `cython-mode.el` had some issues: * ran into an endless loop * for `cdef`s and `cpdef`s it picked the function type rather than the function name. * did not properly handle nested functions Closes https://github.com/cython/cython/issues/3218
-
Jonathan Helgert authored
Tests are disabled on macOS+clang (failing with Apple clang++ 12) but appear to work fine on gcc-11.
-
- 08 Nov, 2021 2 commits
-
-
da-woods authored
Use the accessor function instead of the direct struct member (which is now the wrong type). Closes https://github.com/cython/cython/issues/4416
-
Max Bachmann authored
-
- 07 Nov, 2021 5 commits
-
-
Segev Finer authored
Make coverage.py handle "stringsource" better by making it clear that it is not a file name (GH-4440) Having a code object with `co_filename` set to just "stringsource" (e.g. when using memory views or auto-pickling), causes coverage.py to think that "stringsource" is a relative path to an actual file. The convention is to wrap such fake paths with angle brackets, which coverage.py correctly recognizes. You will recognize this as the following error, e.g. when running "coverage html": No source for code: '.../stringsource'. Aborting report output, consider using -i.
-
Naelson Douglas C. Oliveira authored
Replace a mutable default argument with a None default and check since it is not intended to be mutated (GH-4435)
-
Stefan Behnel authored
-
Stefan Behnel authored
Avoid "possible loss of data" warning in MSVC by adding redundant casts to code that gets discarded later.
-
Robert Bradshaw authored
Still requires the more conservative __index__ here rather than a possibly truncating __int__ because this is used in a context where floating point values should probably be treated specially. This fixes Github issue #2752.
-