Metadata-Version: 2.4
Name: Cython
Version: 3.1.4
Summary: The Cython compiler for writing C extensions in the Python language.
Home-page: https://cython.org/
Author: Robert Bradshaw, Stefan Behnel, David Woods, Greg Ewing, et al.
Author-email: cython-devel@python.org
License: Apache-2.0
Project-URL: Documentation, https://cython.readthedocs.io/
Project-URL: Donate, https://cython.readthedocs.io/en/latest/src/donating.html
Project-URL: Source Code, https://github.com/cython/cython
Project-URL: Bug Tracker, https://github.com/cython/cython/issues/
Project-URL: User Group, https://groups.google.com/g/cython-users
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Programming Language :: Python :: Implementation :: Stackless
Classifier: Programming Language :: C
Classifier: Programming Language :: C++
Classifier: Programming Language :: Cython
Classifier: Topic :: Software Development :: Code Generators
Classifier: Topic :: Software Development :: Compilers
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Typing :: Typed
Requires-Python: >=3.8
Description-Content-Type: text/x-rst
License-File: LICENSE.txt
License-File: COPYING.txt
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: license
Dynamic: license-file
Dynamic: project-url
Dynamic: requires-python
Dynamic: summary

The Cython language makes writing C extensions for the Python language as
easy as Python itself.  Cython is a source code translator based on Pyrex_,
but supports more cutting edge functionality and optimizations.

The Cython language is a superset of the Python language (almost all Python
code is also valid Cython code), but Cython additionally supports optional
static typing to natively call C functions, operate with C++ classes and
declare fast C types on variables and class attributes.  This allows the
compiler to generate very efficient C code from Cython code.

This makes Cython the ideal language for writing glue code for external
C/C++ libraries, and for fast C modules that speed up the execution of
Python code.

The newest Cython release can always be downloaded from https://cython.org/.
Unpack the tarball or zip file, enter the directory, and then run::

    pip install .

Note that for one-time builds, e.g. for CI/testing, on platforms that are not
covered by one of the wheel packages provided on PyPI *and* the pure Python wheel
that we provide is not used, it is substantially faster than a full source build
to install an uncompiled (slower) version of Cython with::

    NO_CYTHON_COMPILE=true pip install .

.. _Pyrex: https://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex/

3.1.4 (2025-09-16)
==================

Features added
--------------

* Declarations for the new ``PyUnstable_*()`` refcounting C-API functions in Py3.14 were added.
  (Github issue https://github.com/cython/cython/issues/6836)

Bugs fixed
----------

* The monitoring code could crash on tracing.
  (Github issue https://github.com/cython/cython/issues/7050)

* Initialising the monitoring code could fail with a CPython exception.
  See https://github.com/nedbat/coveragepy/issues/1790#issuecomment-3257410149

* Optimised integer shifting triggered undefined behaviour in C.
  (Github issue https://github.com/cython/cython/issues/7089)

* Deallocating objects that inherit from external types defined in pxd files
  could run into an infinite loop.
  (Github issue https://github.com/cython/cython/issues/7143)

* A reference to metaclasses could be leaked on instantiation.
  (Github issue https://github.com/cython/cython/issues/7130)

* (Unlikely) error handling during empty builtin container tests was ineffective.
  (Github issue https://github.com/cython/cython/issues/7190)

* Generated ``*_api.h`` files used potentially unknown Cython configuration macros.
  (Github issue https://github.com/cython/cython/issues/7108)

* ``cythonize()`` avoids parallel compiler runs on systems using ``spawn()`` in multiprocessing.
  Patch by Marcel Bargull.  (Github issue https://github.com/cython/cython/issues/3262)

* The ``@cython.ufunc``  decorator was missing in type checker stubs.
  Patch by jayClean.  (Github issue https://github.com/cython/cython/issues/7109)
