- 14 Jun, 2021 4 commits
-
-
Stefan Behnel authored
Closes https://github.com/cython/cython/pull/4224
-
Stefan Behnel authored
Automatically add stubs for "cython.cimports.*" in the test runner to make them importable in Python (although not necessarily runnable).
-
Stefan Behnel authored
-
Stefan Behnel authored
Automatically prepend "import cython" to the examples if necessary.
-
- 11 Jun, 2021 1 commit
-
-
- 09 Jun, 2021 8 commits
-
-
Stefan Behnel authored
-
da-woods authored
Closes https://github.com/cython/cython/issues/4214 Closes https://github.com/cython/cython/issues/2811 * Set "entry.qualified_name" for builtin types. * Make sure we always have a correct "qualified_name" for all symtab Entry instances.
-
Marius Wachtler authored
Looking at the Cython code I spotted a few areas where it contains special paths for Pyston v1. Pyston v1 only supports python2 and is dead but we did release a new Pyston v2 which is a fork of CPython 3.8. As we don't currently set `PYSTON_VERSION` in v2 the current code can't trigger and can be removed. I hoped we would not need any special casing for v2 because it should be fully compatible with CPython but https://github.com/cython/cython/issues/4200 may temporarily need one but I think the current code is overkill and if necessary I can add (part of) it back later on.
-
Stefan Behnel authored
-
Matti Picus authored
-
Stefan Behnel authored
Split the interface of "cythonrun" and "BuildExecutable" so that the latter no longer automatically runs the program.
-
da-woods authored
MSVC appears not like like `#if/#else` with an macro call. Fixes https://github.com/cython/cython/issues/4202
-
Stefan Behnel authored
-
- 06 Jun, 2021 1 commit
-
-
Robert Bradshaw authored
Fixed optimizations in defined cppclass
-
- 05 Jun, 2021 1 commit
-
-
da-woods authored
The problem was they were being skipped with SkipDeclarations
-
- 26 May, 2021 12 commits
-
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Stefan Behnel authored
Assume that all live PyPy3 installations know about the correct Py3 signature of PyEval_EvalCode() by now. See discussion leading up to https://github.com/conda-forge/cython-feedstock/pull/75#issuecomment-848770641
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Matti Picus authored
-
Stefan Behnel authored
-
Spencer Brown authored
Implements https://github.com/cython/cython/issues/2090
-
- 25 May, 2021 13 commits
-
-
Ashwin Srinath authored
* Add execution policy overloads to all algorithms * Add update_cpp17_extension for cpp17 tests * Fix type deduction logic for forwarding reference argument
-
Stefan Behnel authored
Closes https://github.com/cython/cython/issues/3909
-
scoder authored
* Split the current "CYTHON_COMPILING_IN_LIMITED_API" macro guard into separate feature guards: 1) using a global module state struct ("CYTHON_USE_MODULE_STATE") 2) using PyType_FromSpec() for extension types ("CYTHON_USE_TYPE_SPECS") 3) actual limited-API special casing ("CYTHON_COMPILING_IN_LIMITED_API") * Start using PyType_FromModuleAndSpec() for creating extension types since that adds the module reference with PEP-573. * Do not pass the module reference into *shared* extension types since we do not want to keep the module alive just because other modules still refer to the type. * Mark the Limited-API and module state struct features as experimental. * Add CI setups for using PyType_FromSpec() for creating extension types. * Avoid overly complicated code in __Pyx_FetchCommonTypeFromSpec() when we are not compiling against the Limited-API. * Correctly set up the bases tuple for PyType_FromSpecWithBases() and stop relying on the PyTypeObject struct being available in several places by using the type pointer instead (and setting it early enough). * Set the "tp_dealloc" slot from the type spec, also for the limited API case. * Generally re-enable the "heaptype bases hack" when creating extension types. * Implement "tp_dictoffset" slot when using type specs in Py3.9+. * Fix and simplify the vtable setup in the limited API config. * Make CyFunction inheritable to "correctly" allow FusedFunction subclassing it. * Enable buffer interface support when using type specs by assigning the "tp_as_buffer" slot explicitly after creating the type. * Set "vectorcalloffset" when using type specs. * Make "__bool__" slot prefer Py3+ name instead of Py2 name to make the correct name ("Py_nb_bool") appear in the type spec. * Validate and fix up all extension types when constructing them from type specs (not only the internal ones). * Only call PyType_Modified() once after changing a type, not once per change. * Turn the "no buffer protocol in the limited API" error into a warning since the user code might still work without it. * Enable the same flags for CyFunction in the static type and type spec case since it's shared across modules and thus, we might otherwise end up with differently configured types in the same runtime. * The names of Cython's internal types (functions, generator, coroutine, etc.) are now prefixed with the shared module name, instead of making them look like homeless builtins. See https://bugs.python.org/issue20204 See https://github.com/python/cpython/commit/490055a1673b524da2ebe2312f072aba2a826036 * Work around a CPython bug that makes it overwrite exttype member definitions for the "__module__" attribute. See https://bugs.python.org/issue40703 * Inherit buffer slots manually since type slots don't support them and thus PyType_Ready() does not see them. * Add METH_METHOD call support (currently unused). * Fix the vectorcall offset used in CyFunction type struct in Py3.9, if it inherits from PyCMethodObject instead of PyCFunctionObject. * Work around the duplicate creation of the "OverrideCheckNode" for fused cpdef functions. See https://github.com/cython/cython/issues/3628 * Decref the type when deallocating instances of heap types in Py3.8+. See https://bugs.python.org/issue35810 * Look up the fused dispatch function in the override check, not the specialisation (which shouldn't be overridden all by itself). Closes https://github.com/cython/cython/issues/3628 * Avoid running the override check for CyFunction, just because it's not a PyCFunction itself.
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Stefan Behnel authored
-
Stefan Behnel authored
-