sagemath / cysignals

cysignals: interrupt and signal handling for Cython. Source repository for https://pypi.org/project/cysignals/
GNU Lesser General Public License v3.0
43 stars 23 forks source link

cysignals: interrupt and signal handling for Cython

.. image:: https://travis-ci.org/sagemath/cysignals.svg?branch=master :target: https://travis-ci.org/sagemath/cysignals

.. image:: https://ci.appveyor.com/api/projects/status/vagqk56cj3ndycp4?svg=true :target: https://ci.appveyor.com/project/sagemath/cysignals

.. image:: https://readthedocs.org/projects/cysignals/badge/?version=latest :target: http://cysignals.readthedocs.org

Cython and interrupts

When writing Cython <http://cython.org/>_ code, special care must be taken to ensure that the code can be interrupted with CTRL-C. Since Cython optimizes for speed, Cython normally does not check for interrupts. For example, code like the following cannot be interrupted in Cython::

while True:
    pass

The cysignals package provides mechanisms to handle interrupts (and other signals and errors) in Cython code.

Requirements

Links

Changelog

1.12.0 (release candidate) ^^^^^^^^^^^^^^^^^^^^^^^^^^

1.11.4 (2023-10-07) ^^^^^^^^^^^^^^^^^^^

1.11.3 (2023-10-04) ^^^^^^^^^^^^^^^^^^^

1.11.2 (2021-12-15) ^^^^^^^^^^^^^^^^^^^

1.11.0 (2021-11-26) ^^^^^^^^^^^^^^^^^^^

1.10.3 (2021-03-16) ^^^^^^^^^^^^^^^^^^^

For changes in previous releases, see the best source available is to compare git tags: https://github.com/sagemath/cysignals/tags