./devel/py-cython, C-Extensions for Python

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 3.0.11, Package name: py312-cython-3.0.11, Maintainer: pkgsrc-users

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

The Cython language is very close to the Python language (and most
Python code is also valid Cython code), but Cython 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.

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


Required to run:
[devel/py-setuptools] [lang/python37]

Required to build:
[pkgtools/cwrappers]

Master sites:

Filesize: 2690.961 KB

Version history: (Expand)


CVS history: (Expand)


   2024-11-11 08:29:31 by Thomas Klausner | Files touched by this commit (862)
Log message:
py-*: remove unused tool dependency

py-setuptools includes the py-wheel functionality nowadays
   2024-08-05 20:44:58 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-cython: updated to 3.0.11

3.0.11 (2024-08-05)

Features added

* The C++11 ``emplace*`` methods were added to ``libcpp.deque``.

Bugs fixed

* The exception check value of functions declared in pxd files was not always \ 
applied in 3.0.10.
* A crash on exception deallocations was fixed.
* A crash was fixed when assigning a zero-length slice to a memoryview.
* ``libcpp.optional.value()`` could crash if it raised a C++ exception.
* The return type of ``str()`` was mishandled, leading to crashes with \ 
``language_level=3``.
* ``bytes.startswith/endswith()`` failed for non-bytes substrings (e.g. \ 
``bytearray``).
* Fused ctuples crashed Cython.
* A compiler crash was fixed when using extension types in fused types.
* The module cleanup code was incorrect for globally defined memory view slices.
* Some adaptations were made to enable compilation in Python 3.13.
   2024-07-28 13:56:32 by Thomas Klausner | Files touched by this commit (1)
Log message:
py-cython: force c99 compilers

This package already claims it needs a c99 compiler.
Following PR 58475 by Phil Krylov, let's force it to use one.
   2024-05-26 03:59:19 by David H. Gutteridge | Files touched by this commit (1)
Log message:
py-cython: requires py-setuptools >= 69 to match generated PLIST
   2024-04-02 07:58:38 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-cython: updated to 3.0.10

3.0.10 (2024-03-30)
===================

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

* Cython generated incorrect self-casts when directly calling final methods of \ 
subtypes.
  Patch by Lisandro Dalcin.  (Github issue :issue:`2747`)

* Internal C names generated from C function signatures could become too long \ 
for MSVC.
  (Github issue :issue:`6052`)

* The ``noexcept`` warnings could be misleading in some cases.
  Patch by Gonzalo Tornaría.  (Github issue :issue:`6087`)

* The ``@cython.ufunc`` implementation could generate incomplete C code.
  (Github issue :issue:`6064`)

* The ``libcpp.complex`` declarations could result in incorrect C++ code.
  Patch by Raffi Enficiaud.  (Github issue :issue:`6037`)

* Several tests were adapted to work with both NumPy 1.x and 2.0.
  Patch by Matti Picus.  (Github issues :issue:`6076`, :issue:`6100`)

* C compiler warnings when the freelist implementation is disabled (e.g. on \ 
PyPy) were fixed.
  It can now be disabled explicitly with the C macro guard \ 
``CYTHON_USE_FREELISTS=0``.
  (Github issue :issue:`6099`)

* Some C macro guards for feature flags were missing from the NOGIL Python \ 
configuration.

* Some recently added builtins were unconditionally looked up at module import time
  (if used by user code) that weren't available on all Python versions and could thus
  fail the import.

* A performance hint regarding exported pxd declarations was improved.
  (Github issue :issue:`6001`)
   2024-03-06 14:29:21 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-cython: updated to 3.0.9

3.0.9 (2024-03-05)
==================

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

* Assigning ``const`` values to non-const variables now issues a warning.
  (Github issue :issue:`5639`)

* Using ``noexcept`` on a function returning Python objects now issues a warning.
  (Github issue :issue:`5661`)

* Some C-API usage was updated for the upcoming CPython 3.13.
  Patches by Victor Stinner et al.  (Github issues :issue:`6003`, :issue:`6020`)

* The deprecated ``Py_UNICODE`` type is no longer used, unless required by user code.
  (Github issue :issue:`5982`)

* ``std::string.replace()`` declarations were added to libcpp.string.
  Patch by Kieran Geary.  (Github issue :issue:`6037`)

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

* Cython generates incorrect (but harmless) self-casts when directly calling
  final methods of subtypes.  Lacking a better solution, the errors that recent
  gcc versions produce have been silenced for the time being.
  Original patch by Michał Górny.  (Github issue :issue:`2747`)

* Unused variable warnings about clineno were fixed when C lines in tracebacks \ 
are disabled.
  (Github issue :issue:`6035`)

* Subclass deallocation of extern classes could crash if the base class uses GC.
  Original patch by Jason Fried.  (Github issue :issue:`5971`)

* Type checks for Python ``memoryview`` could use an invalid C function.
  Patch by Xenia Lu.  (Github issue :issue:`5988`)

* Calling final fused functions could generate invalid C code.
  (Github issue :issue:`5989`)

* Declaring extern enums multiple times could generate invalid C code.
  (Github issue :issue:`5905`)

* ``pyximport`` used relative paths incorrectly.
  Patch by Stefano Rivera.  (Github issue :issue:`5957`)

* Running Cython with globbing characters (``[]*?``) in the module search path \ 
could fail.
  Patch by eewanco.  (Github issue :issue:`5942`)

* Literal strings that include braces could change the C code indentation.

Other changes
-------------

* The "enum class not importable" warning is now only issued once per \ 
enum type.
  (Github issue :issue:`5941`)
   2024-01-10 21:37:34 by Adam Ciarcinski | Files touched by this commit (3) | Package updated
Log message:
py-cython: updated to 3.0.8

3.0.8 (2024-01-10)

Bugs fixed

* Using ``const`` together with defined fused types could fail to compile.

* A "use after free" bug was fixed in parallel sections.

* Several types were not available as ``cython.*`` types in pure Python code.

* The generated code is now correct C89 again, removing some C++ style ``//`` \ 
comments
  and C99-style declaration-after-code code ordering.  This is still relevant \ 
for some
  ols C compilers, specifically ones that match old Python 2.7 installations.
   2023-12-29 22:22:57 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-cython: updated to 3.0.7

3.0.7 (2023-12-19)
==================

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

* In the iterator of generator expressions, ``await`` and ``yield`` were not \ 
correctly analysed.
  (Github issue :issue:`5851`)

* ``cpdef`` enums with the same name cimported from different modules could lead to
  invalid C code.
  (Github issue :issue:`5887`)

* Some declarations in ``cpython.unicode`` were fixed and extended.
  (Github issue :issue:`5902`)

* Compiling fused types used in pxd files could crash Cython in Python 3.11+.
  (Github issues :issue:`5894`,  :issue:`5588`)

* Source files with non-ASCII file names could crash Cython.
  (Github issue :issue:`5873`)

* Includes all bug-fixes and features from the 0.29 maintenance branch
  up to the :ref:`0.29.37` release.