New release 0.19 of the Cython compiler


Stefan Behnel

I'm happy to announce that Cython 0.19 has been released. This is a feature
release of the Cython compiler that adds some major usability improvements
especially for code that needs to run in both Py2 and Py3, as well as
better Python compatibility and optimisations.

You can get it from here:

Release notes:


Major new features in this release:

* New directives ``c_string_type`` and ``c_string_encoding`` to
automatically convert between C strings and the different Python
string types.

* Keyword arguments are supported for cdef functions, including external
C/C++ library functions.

* New freelist decorator for extension types.

* Fast extension type instantiation using the ``Type.__new__(Type)`` idiom
has gained support for passing arguments.

* Slicing was optimised for several builtin types and otherwise conforms
better with Python semantics for user defined types.

* The mapping of dict view/item methods in Python 3 was improved.

What is Cython?

Cython is an optimising static compiler for both the Python programming
language and the extended Cython programming language (based on Pyrex). It
makes writing C extensions for Python as easy as Python itself.

The Cython language is a superset of the Python language that additionally
supports calling C functions and declaring C types on variables and class
attributes. This allows the compiler to generate very efficient C code from
Cython code. The C code is generated once and then compiles with all major
C/C++ compilers in CPython 2.4 and later, including Python 3.x.

All of this makes Cython the ideal language for wrapping external C
libraries, embedding CPython into existing applications, and for fast C
modules that speed up the execution of Python code.

See the project home page for further information:

Have fun,



Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question