[Cython] Cython 0.25 released

Antoine Martin antoine at nagafix.co.uk
Wed Oct 26 05:11:06 EDT 2016


On 26/10/16 03:34, Robert Bradshaw wrote:
> I'm happy to announce the release of Cython 0.25 which has numerous
> new features and bug fixes. It is available at
> https://pypi.python.org/pypi/Cython
> 
> We have also moved bug tracking from trac.cython.org to github issues.
> However, user support still remains at cython-users@, please refrain
> from filing issues until you have confirmed an actual bug.

0.25 does not build on any CentOS 6.x:
wget
"https://pypi.python.org/packages/f8/2e/5898046f8089205981447c23ebb8fe02cd9d66939cd74338aa4872853d8e/Cython-0.25.tar.gz#md5=1b61433b8410ac382ac9b248b42466fd"
tar -zxf Cython-0.25.tar.gz
cd Cython-0.25
python ./setup.py build
(..)
building 'Cython.Runtime.refnanny' extension
creating build/temp.linux-x86_64-2.6/home/centos/Cython-0.25/Cython/Runtime
gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
--param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC
-fwrapv -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions
-fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic
-D_GNU_SOURCE -fPIC -fwrapv -fPIC -I/usr/include/python2.6 -c
/home/centos/Cython-0.25/Cython/Runtime/refnanny.c -o
build/temp.linux-x86_64-2.6/home/centos/Cython-0.25/Cython/Runtime/refnanny.o
gcc: /home/centos/Cython-0.25/Cython/Runtime/refnanny.c: No such file or
directory
gcc: no input files
error: command 'gcc' failed with exit status 1

If I just run:
cythonize /home/centos/Cython-0.25/Cython/Runtime/refnanny.pyx
Then the build succeeds.

Cheers
Antoine


> 
> - Robert
> 
> 
> Features added
> --------------
> 
> * def/cpdef methods of cdef classes benefit from Cython's internal function
>   implementation, which enables introspection and line profiling for them.
>   Implementation sponsored by Turbostream (www.turbostream-cfd.com).
> 
> * The distutils extension ``Cython.Distutils.build_ext`` has now been updated
>   to use cythonize which properly handles dependencies.  The old extension can
>   still be found in ``Cython.Distutils.old_build_ext`` and is now deprecated.
> 
> * Calls to Python functions are faster, following the recent "FastCall"
>   optimisations that Victor Stinner implemented for CPython 3.6.
>   See https://bugs.python.org/issue27128 and related issues.
> 
> * The new METH_FASTCALL calling convention for PyCFunctions is supported
>   in CPython 3.6.  See https://bugs.python.org/issue27810
> 
> * C++ classes can now have typedef members. STL containers updated with
>   value_type.
> 
> * Support for bazel using a the pyx_library rule in //Tools:rules.bzl.
> 
> * Initial support for using Cython modules in Pyston.  Patch by Daetalus.
> 
> * Dynamic Python attributes are allowed on cdef classes if an attribute
>   ``cdef dict __dict__`` is declared in the class.  Patch by empyrical.
> 
> * Cython implemented C++ classes can make direct calls to base class methods.
>   Patch by empyrical.
> 
> * New directive ``cython.no_gc`` to fully disable GC for a cdef class.
>   Patch by Claudio Freire.
> 
> * Buffer variables are no longer excluded from ``locals()``.
>   Patch by da-woods.
> 
> * Building f-strings is faster, especially when formatting C integers.
> 
> * for-loop iteration over "std::string".
> 
> * ``libc/math.pxd`` provides ``e`` and ``pi`` as alias constants to simplify
>   usage as a drop-in replacement for Python's math module.
> 
> * Speed up cython.inline().
> 
> * Binary lshift operations with small constant Python integers are faster.
> 
> * Some integer operations on Python long objects are faster in Python 2.7.
> 
> * Support for the C++ ``typeid`` operator.
> 
> Significant Bugs fixed
> ----------------------
> 
> * Division of complex numbers avoids overflow by using Smith's method.
> 
> * Some function signatures in ``libc.math`` and ``numpy.pxd`` were incorrect.
>   Patch by Michael Seifert.
> 
> Other changes
> -------------
> 
> * The "%%cython" IPython/jupyter magic now defaults to the language level of
>   the current jupyter kernel.  The language level can be set explicitly with
>   "%%cython -2" or "%%cython -3".
> _______________________________________________
> cython-devel mailing list
> cython-devel at python.org
> https://mail.python.org/mailman/listinfo/cython-devel
> 



More information about the cython-devel mailing list