Cython 0.12.1 released

Robert Bradshaw robertwb at math.washington.edu
Tue Feb 2 11:53:09 CET 2010


I'm happy to announce the release of Cython 0.12.1.

== About ==

Cython is a language that makes writing C extensions for the Python
language as easy as Python itself. Cython is based on the well-known
Pyrex, but supports more cutting edge functionality and
optimizations.Cython is an ideal language for wrapping external C
libraries, and for fast C modules that speed up the execution of
Python code. For more information, see http://cython.org.

== Where to get it ==

http://cython.org
http://pypi.python.org/pypi/Cython

== New Features ==

* Type inference improvements.

There have been several bug fixes and improvements to the type
inferencer.
Notably, there is now a "safe" mode enabled by setting the infer_types
directive to None. (The None here refers to the "default" mode, which
will be the default in 0.13.) This safe mode limits inference to
Python object types and C doubles, which should speed up execution
without affecting any semantics such as integer overflow behavior like
infer_types=True might. There is also an infer_types.verbose option
which allows one to see what types are inferred.

* The boundscheck directive works for lists and tuples as well as
buffers.
* len(s) and s.decode("encoding") are efficiently supported for char*
s.
* Cython's INLINE macro has been renamed to CYTHON_INLINE to reduce
conflict and has better support for the MSVC compiler on Windows. It
is no longer clobbered if externally defined.
* Revision history is now omitted from the source package, resulting
in a 85% size reduction. Running make repo will download the history
and turn the directory into a complete Mercurial working repository.
* Cython modules don't need to be recompiled when the size of an
external type grows. (A warning, rather than an error, is produced.)
This should be helpful for binary distributions relying on NumPy.

Several other bugs and minor improvements have been made. This release
should be fully backwards compatible with 0.12. For a list of tickets
closed, see http://trac.cython.org/cython_trac/query?group=component&milestone=0.12.1

== Contributors to this release ==

* Arfrever Frehtes Taifersar Arahesis
* Stefan Behnel
* Robert Bradshaw
* Lisandro Dalcin
* Julien Danjou
* Mark Lodato
* Dag Sverre Seljebotn

Thanks also to the many who've submitted feedback and contributed to
discussions on the mailing list.


More information about the Python-announce-list mailing list