Commit a32e3fc4 authored by Stefan Behnel's avatar Stefan Behnel

Update changelog.

parent 13f8cd75
......@@ -2,6 +2,47 @@
Cython Changelog
================
3.0.0 alpha 11 (2022-0?-??)
===========================
Features added
--------------
* A new decorator ``@cython.dataclasses.dataclass`` was implemented that provides
compile time dataclass generation capabilities to ``cdef`` classes (extension types).
Patch by David Woods. (Github issue :issue:`2903`)
* Named expressions (PEP 572) aka. assignment expressions (aka. the walrus operator
``:=``) were implemented.
Patch by David Woods. (Github issue :issue:`2636`)
* The ``cythonize`` command has a new option ``-M`` to generate ``.dep`` dependency
files for the compilation unit. This can be used by external build tools to track
these dependencies. Already available in Cython :ref:`0.29.27`.
Patch by Evgeni Burovski. (Github issue :issue:`1214`)
* The generated C code now compiles in CPython 3.11a4.
(Github issue :issue:`4500`)
Bugs fixed
----------
* Includes all bug-fixes from the :ref:`0.29.27` release.
Other changes
-------------
* When using type annotations, ``func(x: list)`` or ``func(x: ExtType)`` (and other
Python builtin or extension types) now disallow ``None`` as input argument to ``x``.
This is consistent with the normal typing semantics in Python, and was a common gotcha
for users who did not expect ``None`` to be allowed as input. To allow ``None``, use
``typing.Optional`` as in ``func(x: Optional[list])``. ``None`` is also automatically
allowed when it is used as default argument, i.e. ``func(x: list = None)``.
Note that, for backwards compatibility reasons, this does not apply when using Cython's
C notation, as in ``func(list x)``. Here, ``None`` is still allowed, as always.
(Github issues :issue:`3883`, :issue:`2696`)
3.0.0 alpha 10 (2022-01-06)
===========================
......@@ -903,16 +944,16 @@ Features added
* The ``cythonize`` command has a new option ``-M`` to generate ``.dep`` dependency
files for the compilation unit. This can be used by external build tools to track
these dependencies.
Patch by Evgeni Burovski. (Github issue #1214)
Patch by Evgeni Burovski. (Github issue :issue:`1214`)
Bugs fixed
----------
* Compilation failures on PyPy were resolved.
Patches by Matti Picus. (Github issues #4509, #4517)
Patches by Matti Picus. (Github issues :issue:`4509`, :issue:`4517`)
* Calls to ``range()`` with more than three arguments did not fail.
Original patch by Max Bachmann. (Github issue #4550)
Original patch by Max Bachmann. (Github issue :issue:`4550`)
* Some C compiler warnings about missing type struct initialisers in Py3.10 were resolved.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment