Skip to content

Scheduled monthly dependency update for May#175

Closed
pyup-bot wants to merge 4 commits into
masterfrom
pyup-scheduled-update-2025-05-01
Closed

Scheduled monthly dependency update for May#175
pyup-bot wants to merge 4 commits into
masterfrom
pyup-scheduled-update-2025-05-01

Conversation

@pyup-bot
Copy link
Copy Markdown
Collaborator

@pyup-bot pyup-bot commented May 1, 2025

Update Cython from 0.29.23 to 3.0.12.

Changelog

3.0.12

===================

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

* Release 3.0.11 introduced some incorrect ``noexcept`` warnings.
(Github issue :issue:`6335`)

* Conditional assignments to variables using the walrus operator could crash.
(Github issue :issue:`6094`)

* Dict assignments to struct members with reserved C names could generate invalid C code.

* Fused ctuples with the same entry types but different sizes could fail to compile.
(Github issue :issue:`6328`)

* In Py3, `pyximport` was not searching `sys.path` when looking for importable source files.
(Github issue :issue:`5615`)

* Using `& 0` on integers produced with `int.from_bytes()` could read invalid memory on Python 3.10.
(Github issue :issue:`6480`)

* Modules could fail to compile in PyPy 3.11 due to missing CPython specific header files.
Patch by Matti Picus.  (Github issue :issue:`6482`)

* Minor fix in C++ ``partial_sum()`` declaration.

3.0.11

===================

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

* The C++11 ``emplace*`` methods were added to ``libcpp.deque``.
Patch by Somin An.  (Github issue :issue:`6159`)

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

* The exception check value of functions declared in pxd files was not always applied in 3.0.10.
(Github issue :issue:`6122`)

* A crash on exception deallocations was fixed.
(Github issue :issue:`6022`)

* A crash was fixed when assigning a zero-length slice to a memoryview.
Patch by Michael Man.  (Github issue :issue:`6227`)

* ``libcpp.optional.value()`` could crash if it raised a C++ exception.
Patch by Alexander Condello.  (Github issue :issue:`6190`)

* The return type of ``str()`` was mishandled, leading to crashes with ``language_level=3``.
(Github issue :issue:`6166`)

* ``bytes.startswith/endswith()`` failed for non-bytes substrings (e.g. ``bytearray``).
(Github issue :issue:`6168`)

* Fused ctuples crashed Cython.
(Github issue :issue:`6068`)

* A compiler crash was fixed when using extension types in fused types.
(Github issue :issue:`6204`)

* The module cleanup code was incorrect for globally defined memory view slices.
(Github issue :issue:`6276`)

* Some adaptations were made to enable compilation in Python 3.13.
(Github issues :issue:`5997`, :issue:`6182`, :issue:`6251`)

3.0.10

===================

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`)

3.0.9

==================

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`)

3.0.8

==================

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

* Using ``const`` together with defined fused types could fail to compile.
(Github issue :issue:`5230`)

* A "use after free" bug was fixed in parallel sections.
(Github issue :issue:`5922`)

* 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.

3.0.7

==================

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.

3.0.6

==================

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

* Fused def function dispatch is a bit faster.

* Declarations for the ``wchar`` PyUnicode API were added.
(Github issue :issue:`5836`)

* The Python "nogil" fork is now also detected with the new ``Py_GIL_DISABLED`` macro.
Patch by Hugo van Kemenade.  (Github issue :issue:`5852`)

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

* Comparing dataclasses could give different results than Python.
(Github issue :issue:`5857`)

* ``float(std::string)`` generated invalid C code.
(Github issue :issue:`5818`)

* Using ``cpdef`` functions with ``cimport_from_pyx`` failed.
(Github issue :issue:`5795`)

* A crash was fixed when string-formatting a Python value fails.
(Github issue :issue:`5787`)

* On item access, Cython could try the sequence protocol before the mapping protocol
in some cases if an object supports both.
(Github issue :issue:`5776`)

* A C compiler warning was resolved.
(Github issue :issue:`5794`)

* Complex numbers failed to compile in MSVC with C11.
Patch by Lysandros Nikolaou.  (Github issue :issue:`5809`)

* Some issues with the Limited API and with PyPy were resolved.
(Github issues :issue:`5695`, :issue:`5696`)

* A C++ issue in Python 3.13 was resolved.
(Github issue :issue:`5790`)

* Several directives are now also available (as no-ops) in Python code.
(Github issue :issue:`5803`)

* An error message was corrected.
Patch by Mads Ynddal.  (Github issue :issue:`5805`)

3.0.5

==================

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

* Preliminary support for CPython 3.13a1 was added to allow early testing.
(Github issue :issue:`5767`)

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

* A compiler crash was fixed.
(Github issue :issue:`5771`)

* A typo in the ``always_allow_keywords`` directive for Python code was fixed.
Patch by lk-1984.  (Github issue :issue:`5772`)

* Some C compiler warnings were resolved.
Patch by Pierre Jolivet.  (Github issue :issue:`5780`)

3.0.4

==================

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

* A new compiler directive ``show_performance_hints`` was added to disable the
newly added performance hint output.
(Github issue :issue:`5748`)

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

* cythonize` required ``distutils`` even for operations that did not build binaries.
(Github issue :issue:`5751`)

* A regression in 3.0.3 was fixed that prevented calling inline functions
from another inline function in ``.pxd`` files.
(Github issue :issue:`5748`)

* Some C compiler warnings were resolved.
Patch by Pierre Jolivet.  (Github issue :issue:`5756`)

3.0.3

==================

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

* More warnings were added to help users migrate and avoid bugs.
(Github issue :issue:`5650`)

* A warning-like category for performance hints was added that bypasses ``-Werror``.
(Github issue :issue:`5673`)

* FastGIL now uses standard ``thread_local`` in C++.
(Github issue :issue:`5640`)

* ``reference_wrapper`` was added to ``libcpp.functional``.
Patch by Vyas Ramasubramani.  (Github issue :issue:`5671`)

* The ``cythonize`` command now supports the ``--cplus`` option known from the ``cython`` command.
(Github issue :issue:`5736`)

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

* Performance regressions where the GIL was needlessly acquired were fixed.
(Github issues :issue:`5670`, :issue:`5700`)

* A reference leak for exceptions in Python 3.12 was resolved.
Patch by Eric Johnson.  (Github issue :issue:`5724`)

* ``fastcall`` calls with keyword arguments generated incorrect C code.
(Github issue :issue:`5665`)

* Assigning the type converted result of a conditional (if-else) expression
to ``int`` or ``bool`` variables could lead to incorrect C code.
(Github issue :issue:`5731`)

* Early (unlikely) failures in Python function wrappers no longer set a
traceback in order to simplify the C code flow.  Being mostly memory
allocation errors, they probably would never have created a traceback anyway.
(Github issue :issue:`5681`)

* Relative cimports from packages with ``__init__.py`` files could fail.
(Github issue :issue:`5715`)

* Several issues with the Limited API support were resolved.
(Github issues :issue:`5641`, :issue:`5648`, :issue:`5689`)

* The code generated for special-casing both Cython functions and PyCFunctions was cleaned up
to avoid calling C-API functions that were not meant for the other type respectively.
This could previously trigger assertions in CPython debug builds and now also plays better
with the Limited API.
(Github issues :issue:`4804`, :issue:`5739`)

* Fix some C compiler warnings.
Patches by Ralf Gommers, Oleksandr Pavlyk, Sebastian Koslowski et al.
(Github issues :issue:`5651`, :issue:`5663`, :issue:`5668`, :issue:`5717`, :issue:`5726`, :issue:`5734`)

* Generating gdb debugging information failed when using generator expressions.
Patch by Oleksandr Pavlyk.  (Github issue :issue:`5552`)

* Passing a ``setuptools.Extension`` into ``cythonize()`` instead of a
``distutils.Extension`` could make it miss the matching extensions.

* ``cython -M`` needlessly required ``distutils``, which made it fail in Python 3.12.
(Github issue :issue:`5681`)

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

* The visible deprecation warning for ``DEF`` was removed again since it proved
difficult for some users to migrate away from it.  The statement is still
meant to be removed at some point (and thus, like ``IF``, should not be
used in new code), but the time for sunset is probably not around the corner.
(Github issue :issue:`4310`)

* The ``np_pythran`` option raise a ``DeprecationWarning`` if it receives other values
than ``True`` and ``False``.  This will eventually be disallowed (in line with all
other boolean options).

3.0.2

==================

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

* Using ``None`` as default value for arguments annotated as ``int`` could crash Cython.
(Github issue :issue:`5643`)

* Default values of fused types that include ``complex`` could generate invalid C code
with ``-DCYTHON_CCOMPLEX=0``.
(Github issue :issue:`5644`)

* Using C++ enum class types in extension type method signatures could generate invalid C code.
(Github issue :issue:`5637`)

3.0.1

==================

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

* The error messages regarding exception declarations were improved in order to give
better help about possible reasons and fixes.
(Github issue :issue:`5547`)

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

* Memory view types in Python argument annotations no longer accept ``None``.  They now
require an explicit ``Optional[]`` or a ``None`` default value in order to allow ``None``
to be passed.  This was an oversight in the 3.0.0 release and is a BACKWARDS INCOMPATIBLE
change.  However, since it only applies to code using Python syntax, it probably only
applies to newly written code that was written for Cython 3.0 and can easily be adapted.
In most cases, we expect that this change will avoid bugs in user code rather than
produce problems.
(Github issue :issue:`5612`)

* ``nogil`` functions using parallel code could freeze when called with the GIL held.
(Github issues :issue:`5564`, :issue:`5573`)

* Relative cimports could end up searching globally and find the same package installed
elsewhere, potentially in another version.
(Github issue :issue:`5511`)

* Attribute lookups on known standard library modules could accidentally search
in the module namespace instead.
(Github issue :issue:`5536`)

* Using constructed C++ default arguments could generate invalid C++ code.
(Github issue :issue:`5553`)

* ``libcpp.memory.make_unique()`` was lacking C++ exception handling.
(Github issue :issue:`5560`)

* Some non-public and deprecated CAPI usages were replaced by public
(and thus more future proof) API code.

* Many issues with the Limited API support were resolved.
Patches by Lisandro Dalcin et al.
(Github issues :issue:`5549`, :issue:`5550`, :issue:`5556`, :issue:`5605`, :issue:`5617`)

* Some C compiler warnings were resolved.
Patches by Matti Picus et al.  (Github issues :issue:`5557`, :issue:`5555`)

* Large Python integers are now stored in hex instead of decimal strings to work around
security limits in Python and generally speed up their Python object creation.

* ``NULL`` could not be used as default for fused type pointer arguments.
(Github issue :issue:`5554`)

* C functions that return pointer types now return ``NULL`` as default exception value.
Previously, calling code wasn't aware of this and always tested for raised exceptions.
(Github issue :issue:`5554`)

* Untyped literal default arguments in fused functions could generate invalid C code.
(Github issue :issue:`5614`)

* C variables declared as ``const`` could generate invalid C code when used in closures,
generator expressions, ctuples, etc.
(Github issues :issue:`5558`,  :issue:`5333`)

* Enums could not refer to previously defined enums in their definition.
(Github issue :issue:`5602`)

* The Python conversion code for anonymous C enums conflicted with regular int conversion.
(Github issue :issue:`5623`)

* Using memory views for property methods (and other special methods) could lead to
refcounting problems.
(Github issue :issue:`5571`)

* Star-imports could generate code that tried to assign to constant C macros like
``PY_SSIZE_T_MAX`` and ``PY_SSIZE_T_MIN``.
Patch by Philipp Wagner.  (Github issue :issue:`5562`)

* ``CYTHON_USE_TYPE_SPECS`` can now be (explicitly) enabled in PyPy.

* The template parameter "delimeters" in the Tempita ``Template`` class was corrected
to "delimiters".  The old spelling is still available in the main template API but
now issues a ``DeprecationWarning``.
(Github issue :issue:`5608`)

* The ``cython --version`` output is now  less likely to reach both stdout and stderr.
Patch by Eli Schwartz.  (Github issue :issue:`5504`)

* The sdist was missing the `Shadow.pyi` stub file.

3.0.0

==========================

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

* Cython functions now use the `PEP-590`_ vectorcall protocol in Py3.7+.
Patch by Jeroen Demeyer.  (Github issue :issue:`2263`)

* Unicode identifiers are supported in Cython code (`PEP-3131`_).
Patch by David Woods.  (Github issue :issue:`2601`)

* Unicode module names and imports are supported.
Patch by David Woods.  (Github issue :issue:`3119`)

* Annotations are no longer parsed, keeping them as strings following `PEP-563`_.
Patch by David Woods.  (Github issue :issue:`3285`)

* Preliminary support for the CPython's ``Py_LIMITED_API`` (stable ABI) is
available by setting the  ``CYTHON_LIMITED_API`` C macro.  Note that the
support is currently in an early stage and many features do not yet work.
You currently still have to define ``Py_LIMITED_API`` externally in order
to restrict the API usage.  This will change when the feature stabilises.
Patches by Eddie Elizondo and David Woods.  (Github issues :issue:`3223`,
:issue:`3311`, :issue:`3501`)

* The dispatch to fused functions is now linear in the number of arguments,
which makes it much faster, often 2x or more, and several times faster for
larger fused types with many specialisations.
Patch by will-ca.  (Github issue :issue:`1385`)

* ``with gil/nogil`` statements can be conditional based on compile-time
constants, e.g. fused type checks.
Patch by Noam Hershtig.  (Github issue :issue:`2579`)

* ``const`` can be used together with fused types.
Patch by Thomas Vincent.  (Github issue :issue:`1772`)

* Reimports of already imported modules are substantially faster.
(Github issue :issue:`2854`)

* Positional-only arguments are supported in Python functions (`PEP-570`_).
Patch by Josh Tobin.  (Github issue :issue:`2915`)

* The ``volatile`` C modifier is supported in Cython code.
Patch by Jeroen Demeyer.  (Github issue :issue:`1667`)

* ``cython.trashcan(True)`` can be used on an extension type to enable the
CPython :ref:`trashcan`. This allows deallocating deeply recursive objects
without overflowing the stack. Patch by Jeroen Demeyer.  (Github issue :issue:`2842`)

* Inlined properties can be defined for external extension types.
Patch by Matti Picus. (Github issue :issue:`2640`, redone later in :issue:`3571`)

* The ``str()`` builtin now calls ``PyObject_Str()`` instead of going
through a Python call.
Patch by William Ayd.  (Github issue :issue:`3279`)

* String concatenation can now happen in place if possible, by extending the
existing string rather than always creating a new one.
Patch by David Woods.  (Github issue :issue:`3453`)

* Multiplication of Python numbers with small constant integers is faster.
(Github issue :issue:`2808`)

* Some list copying is avoided internally when a new list needs to be created
but we already have a fresh one.
(Github issue :issue:`3494`)

* Extension types that do not need their own ``tp_new`` implementation (because
they have no object attributes etc.) directly inherit the implementation of
their parent type if possible.
(Github issue :issue:`1555`)

* The attributes ``gen.gi_frame`` and ``coro.cr_frame`` of Cython compiled
generators and coroutines now return an actual frame object for introspection.
(Github issue :issue:`2306`)

* Several declarations in ``cpython.*``, ``libc.*`` and ``libcpp.*`` were added.
Patches by Jeroen Demeyer, Matthew Edwards, Chris Gyurgyik, Jerome Kieffer
and Zackery Spytz.
(Github issues :issue:`3468`, :issue:`3332`, :issue:`3202`, :issue:`3188`,
:issue:`3179`, :issue:`2891`, :issue:`2826`, :issue:`2713`)

* Deprecated NumPy API usages were removed from ``numpy.pxd``.
Patch by Matti Picus.  (Github issue :issue:`3365`)

* ``cython.inline()`` now sets the ``NPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION``
C macro automatically when ``numpy`` is imported in the code, to avoid C compiler
warnings about deprecated NumPy C-API usage.

* The builtin ``abs()`` function can now be used on C numbers in nogil code.
Patch by Elliott Sales de Andrade.  (Github issue :issue:`2748`)

* `PEP-479`_ (``generator_stop``) is now enabled by default with language level 3.
(Github issue :issue:`2580`)

* The ``cython.view.array`` type supports inheritance.
Patch by David Woods.  (Github issue :issue:`3413`)

* Code annotation accepts a new debugging argument ``--annotate-fullc`` that
will include the complete syntax highlighted C file in the HTML output.
(Github issue :issue:`2855`)

* ``--no-capture`` added to ``runtests.py`` to prevent stdout/stderr capturing
during srctree tests.
Patch by Matti Picus.  (Github issue :issue:`2701`)

* ``--no-docstrings`` option added to ``cythonize`` script.
Original patch by mo-han.  (Github issue :issue:`2889`)

* ``cygdb`` gives better error messages when it fails to initialise the
Python runtime support in gdb.
Patch by Volker Weissmann.  (Github issue :issue:`3489`)

* The Pythran ``shape`` attribute is supported.
Patch by Serge Guelton.  (Github issue :issue:`3307`)

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

* The unicode methods ``.upper()``, ``.lower()`` and ``.title()`` were
incorrectly optimised for single character input values and only returned
the first character if multiple characters should have been returned.
They now use the original Python methods again.

* Fused argument types were not correctly handled in type annotations and
``cython.locals()``.
Patch by David Woods.  (Github issues :issue:`3391`, :issue:`3142`)

* Diverging from the usual behaviour, ``len(memoryview)``, ``len(char*)``
and ``len(Py_UNICODE*)`` returned an unsigned ``size_t`` value.  They now
return a signed ``Py_ssize_t``, like other usages of ``len()``.

* Nested dict literals in function call kwargs could incorrectly raise an
error about duplicate keyword arguments, which are allowed when passing
them from dict literals.
(Github issue :issue:`2963`)

* Item access (subscripting) with integer indices/keys always tried the
Sequence protocol before the Mapping protocol, which diverged from Python
semantics.  It now passes through the Mapping protocol first when supported.
(Github issue :issue:`1807`)

* Name lookups in class bodies no longer go through an attribute lookup.
Patch by Jeroen Demeyer.  (Github issue :issue:`3100`)

* Broadcast assignments to a multi-dimensional memory view slice could end
up in the wrong places when the underlying memory view is known to be
contiguous but the slice is not.
(Github issue :issue:`2941`)

* Pickling unbound methods of Python classes failed.
Patch by Pierre Glaser.  (Github issue :issue:`2972`)

* The ``Py_hash_t`` type failed to accept arbitrary "index" values.
(Github issue :issue:`2752`)

* The first function line number of functions with decorators pointed to the
signature line and not the first decorator line, as in Python.
Patch by Felix Kohlgrüber.  (Github issue :issue:`2536`)

* Constant integer expressions that used a negative exponent were evaluated
as integer 0 instead of the expected float value.
Patch by Kryštof Pilnáček.  (Github issue :issue:`2133`)

* The ``cython.declare()`` and ``cython.cast()`` functions could fail in pure mode.
Patch by Dmitry Shesterkin.  (Github issue :issue:`3244`)

* ``__doc__`` was not available inside of the class body during class creation.
(Github issue :issue:`1635`)

* Setting ``language_level=2`` in a file did not work if ``language_level=3``
was enabled globally before.
Patch by Jeroen Demeyer.  (Github issue :issue:`2791`)

* ``__init__.pyx`` files were not always considered as package indicators.
(Github issue :issue:`2665`)

* Compiling package ``__init__`` files could fail under Windows due to an
undefined export symbol.  (Github issue :issue:`2968`)

* A C compiler cast warning was resolved.
Patch by Michael Buesch.  (Github issue :issue:`2775`)

* Binding staticmethods of Cython functions were not behaving like Python methods.
Patch by Jeroen Demeyer.  (Github issue :issue:`3106`, :issue:`3102`)

* Memoryviews failed to compile when the ``cache_builtins`` feature was disabled.
Patch by David Woods.  (Github issue :issue:`3406`)

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

* The default language level was changed to ``3str``, i.e. Python 3 semantics,
but with ``str`` literals (also in Python 2.7).  This is a backwards incompatible
change from the previous default of Python 2 semantics.  The previous behaviour
is available through the directive ``language_level=2``.
(Github issue :issue:`2565`)

* Cython no longer generates ``__qualname__`` attributes for classes in Python
2.x since they are problematic there and not correctly maintained for subclasses.
Patch by Jeroen Demeyer.  (Github issue :issue:`2772`)

* Source file fingerprinting now uses SHA-1 instead of MD5 since the latter
tends to be slower and less widely supported these days.
(Github issue :issue:`2790`)

* The long deprecated include files ``python_*``, ``stdio``, ``stdlib`` and
``stl`` in ``Cython/Includes/Deprecated/`` were removed.  Use the ``libc.*``
and ``cpython.*`` pxd modules instead.
Patch by Jeroen Demeyer.  (Github issue :issue:`2904`)

* The search order for include files was changed. Previously it was
``include_directories``, ``Cython/Includes``, ``sys.path``. Now it is
``include_directories``, ``sys.path``, ``Cython/Includes``. This was done to
allow third-party ``*.pxd`` files to override the ones in Cython.
Patch by Matti Picus.  (Github issue :issue:`2905`)

* The command line parser was rewritten and modernised using ``argparse``.
Patch by Egor Dranischnikow.  (Github issue :issue:`2952`, :issue:`3001`)

* Dotted filenames for qualified module names (``pkg.mod.pyx``) are deprecated.
Use the normal Python package directory layout instead.
(Github issue :issue:`2686`)

* Binary Linux wheels now follow the manylinux2010 standard.
Patch by Alexey Stepanov.  (Github issue :issue:`3355`)

* Support for Python 2.6 was removed.

.. _`PEP-560`: https://www.python.org/dev/peps/pep-0560
.. _`PEP-570`: https://www.python.org/dev/peps/pep-0570
.. _`PEP-487`: https://www.python.org/dev/peps/pep-0487
.. _`PEP-590`: https://www.python.org/dev/peps/pep-0590
.. _`PEP-3131`: https://www.python.org/dev/peps/pep-3131
.. _`PEP-563`: https://www.python.org/dev/peps/pep-0563
.. _`PEP-479`: https://www.python.org/dev/peps/pep-0479

0.29.37

====================

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

* Fix a potential crash while cleaning up subtypes of externally imported extension
types when terminating Python.  This was introduced in Cython 0.29.35.

* Fix a ``complex`` related compile error on Windows.
(Github issue :issue:`5512`)

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

* ``cythonize`` failed to consider the ``CYTHON_FORCE_REGEN`` env variable.
Patch by Harmen Stoppels.  (Github issue :issue:`5712`)

0.29.36

====================

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

* Async generators lost their return value in PyPy.
(Github issue :issue:`5465`)

* The outdated C macro ``_PyGC_FINALIZED()`` is no longer used in Py3.9+.

* The deprecated ``Py_OptimizeFlag`` is no longer used in Python 3.9+.
(Github issue :issue:`5343`)

* Using the global ``__debug__`` variable but not assertions could lead to compile errors.

* The broken HTML template support was removed from Tempita.
(Github issue :issue:`3309`)

0.29.35

====================

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

* A garbage collection enabled subtype of a non-GC extension type could call into the
deallocation function of the super type with GC tracking enabled.  This could lead
to crashes during deallocation if GC was triggered on the type at the same time.
(Github issue :issue:`5432`)

* Some C compile failures and crashes in CPython 3.12 were resolved.

* ``except + nogil`` was syntactically not allowed.
``except +nogil`` (i.e. defining a C++ exception handling function called ``nogil``)
is now disallowed to prevent typos.
(Github issue :issue:`5430`)

* A C compile failure in PyPy 3.10 was resolved.
Patch by Matti Picus.  (Github issue :issue:`5408`)

* Cython modules now use PEP-489 multi-phase init by default in PyPy 3.9 and later.
Original patch by Matti Picus.  (Github issue :issue:`5413`)

* API header files generated by different Cython versions can now be included in the
same C file.
(Github issue :issue:`5383`)

* Function signatures containing a type like `tuple[()]` could not be printed.
Patch by Lisandro Dalcin.  (Github issue :issue:`5355`)

0.29.34

====================

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

* A reference leak of the for-loop list/tuple iterable was resolved if the for-loop's
``else:`` branch executes a ``break`` for an outer loop.
(Github issue :issue:`5347`)

* Some C compile failures in CPython 3.12 were resolved.

* Some old usages of the deprecated Python ``imp`` module were replaced with ``importlib``.
Patch by Matúš Valo.  (Github issue :issue:`5300`)

* Some issues with ``depfile`` generation were resolved.
Patches by Eli Schwartz.  (Github issues :issue:`5279`, :issue:`5291`)

0.29.33

====================

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

* The ``cythonize`` and ``cython`` commands have a new option ``-M`` / ``--depfile``
to generate ``.dep`` dependency files for the compilation unit.  This can be used
by external build tools to track these dependencies.
The ``cythonize`` option was already available in Cython :ref:`0.29.27`.
Patches by Evgeni Burovski and Eli Schwartz.  (Github issue :issue:`1214`)

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

* ``const`` fused types could not be used with memory views.
Patch by Thomas Vincent.  (Github issue :issue:`1772`)

* ``wstr`` usage was removed in Python 3.12 and later (PEP-623).
(Github issue :issue:`5145`)

* A type check assertion for Cython functions failed in debug Python builds.
(Github issue :issue:`5031`)

* Fixed various compiler warnings.
Patches by Lisandro Dalcin et al.  (Github issues :issue:`4948`, :issue:`5086`)

* Fixed error when calculating complex powers of negative numbers.
(Github issue :issue:`5014`)

* Corrected a small mis-formatting of exception messages on Python 2.
(Github issue :issue:`5018`)

* The ``PyUnicode_AsUTF8AndSize()`` C-API function was missing from the CPython declarations.
(Github issue :issue:`5163`)

* A performance problem in the compiler was resolved when nesting conditional expressions.
(Github issue :issue:`5197`)

* Test suite problems with recent NumPy and CPython versions were resolved.
(Github issues :issue:`5183`, :issue:`5190`)

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

* The undocumented, untested and apparently useless syntax
``from somemodule cimport class/struct/union somename`` was deprecated
in anticipation of its removal in Cython 3.  The type
modifier is not needed here and a plain ``cimport`` of the name will do.
(Github issue :issue:`4905`)

* Properly disable generation of descriptor docstrings on PyPy since they cause crashes.
It was previously disabled, but only accidentally via a typo.
Patch by Matti Picus.  (Github issue :issue:`5083`)

* The ``cpow`` directive of Cython 3.0 is available as a no-op.
(Github issue :issue:`5016`)

0.29.32

====================

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

* Revert "Using memoryview typed arguments in inner functions is now rejected as unsupported."
Patch by David Woods.  (Github issue :issue:`4798`)

* ``from module import *`` failed in 0.29.31 when using memoryviews.
Patch by David Woods.  (Github issue :issue:`4927`)

0.29.31

====================

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

* A new argument ``--module-name`` was added to the ``cython`` command to
provide the (one) exact target module name from the command line.
Patch by Matthew Brett and h-vetinari.  (Github issue :issue:`4906`)

* A new keyword ``noexcept`` was added for forward compatibility with Cython 3.
Patch by David Woods.  (Github issue :issue:`4903`)

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

* Use ``importlib.util.find_spec()`` instead of the deprecated ``importlib.find_loader()``
function when setting up the package path at import-time.
Patch by Matti Picus.  (Github issue :issue:`4764`)

* Require the C compiler to support the two-arg form of ``va_start``
on Python 3.10 and higher.
Patch by Thomas Caswell.  (Github issue :issue:`4820`)

* Make ``fused_type`` subscriptable in Shadow.py.
Patch by Pfebrer.  (Github issue :issue:`4842`)

* Fix the incorrect code generation of the target type in ``bytearray`` loops.
Patch by Kenrick Everett.  (Github issue :issue:`4108`)

* Atomic refcounts for memoryviews were not used on some GCC versions by accident.
Patch by Sam Gross.  (Github issue :issue:`4915`)

* Silence some GCC ``-Wconversion`` warnings in C utility code.
Patch by Lisandro Dalcin.  (Github issue :issue:`4854`)

* Tuple multiplication was ignored in expressions such as ``[*(1,) * 2]``.
Patch by David Woods.  (Github issue :issue:`4864`)

* Calling ``append`` methods on extension types could fail to find the method
in some cases.
Patch by David Woods.  (Github issue :issue:`4828`)

* Ensure that object buffers (e.g. ``ndarray[object, ndim=1]``) containing
``NULL``  pointers are safe to use, returning ``None`` instead of the ``NULL``
pointer.
Patch by Sebastian Berg.  (Github issue :issue:`4859`)

* Using memoryview typed arguments in inner functions is now rejected as unsupported.
Patch by David Woods.  (Github issue :issue:`4798`)

* Compilation could fail on systems (e.g. FIPS) that block MD5 checksums at runtime.
(Github issue :issue:`4909`)

* Experimental adaptations for the CPython "nogil" fork was added.
Note that there is no official support for this in Cython 0.x.
Patch by Sam Gross.  (Github issue :issue:`4912`)

0.29.30

====================

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

* The GIL handling changes in 0.29.29 introduced a regression where
objects could be deallocated without holding the GIL.
(Github issue :issue:`4796`)

0.29.29

====================

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

* Avoid acquiring the GIL at the end of nogil functions.
This change was backported in order to avoid generating wrong C code
that would trigger C compiler warnings with tracing support enabled.
Backport by Oleksandr Pavlyk.  (Github issue :issue:`4637`)

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

* Function definitions in ``finally:`` clauses were not correctly generated.
Patch by David Woods.  (Github issue :issue:`4651`)

* A case where C-API functions could be called with a live exception set was fixed.
Patch by Jakub Kulík.  (Github issue :issue:`4722`)

* Pickles can now be exchanged again with those generated from Cython 3.0 modules.
(Github issue :issue:`4680`)

* Cython now correctly generates Python methods for both the provided regular and
reversed special numeric methods of extension types.
Patch by David Woods.  (Github issue :issue:`4750`)

* Calling unbound extension type methods without arguments could raise an
``IndexError`` instead of a ``TypeError``.
Patch by David Woods.  (Github issue :issue:`4779`)

* Calling unbound ``.__contains__()`` super class methods on some builtin base
types could trigger an infinite recursion.
Patch by David Woods.  (Github issue :issue:`4785`)

* The C union type in pure Python mode mishandled some field names.
Patch by Jordan Brière.  (Github issue :issue:`4727`)

* Allow users to overwrite the C macro ``_USE_MATH_DEFINES``.
Patch by Yuriy Chernyshov. (Github issue :issue:`4690`)

* Improved compatibility with CPython 3.10/11.
Patches by Thomas Caswell, David Woods.
(Github issues :issue:`4609`, :issue:`4667`, :issue:`4721`, :issue:`4730`, :issue:`4777`)

* Docstrings of descriptors are now provided in PyPy 7.3.9.
Patch by Matti Picus.  (Github issue :issue:`4701`)

0.29.28

====================

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

* Due to backwards incompatible changes in CPython 3.11a4, the feature flags
``CYTHON_FAST_THREAD_STATE`` and ``CYTHON_USE_EXC_INFO_STACK`` are now disabled
in Python 3.11 and later.  They are enabled again in Cython 3.0.
Patch by David Woods.  (Github issue :issue:`4610`)

* A C compiler warning in older PyPy versions was resolved.
Patch by Matti Picus.  (Github issue :issue:`4236`)

0.29.27

====================

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 :issue:`1214`)

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

* Compilation failures on PyPy were resolved.
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 :issue:`4550`)

* Some C compiler warnings about missing type struct initialisers in Py3.10 were resolved.

* Cython no longer warns about using OpenMP 3.0 features since they are now
considered generally available.

0.29.26

====================

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

* An incompatibility with CPython 3.11.0a3 was resolved.
(Github issue :issue:`4499`)

* The ``in`` operator failed on literal lists with starred expressions.
Patch by Arvind Natarajan.  (Github issue :issue:`3938`)

* A C compiler warning in PyPy about a missing struct field initialisation was resolved.

0.29.25

====================

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

* Several incompatibilities with CPython 3.11 were resolved.
Patches by David Woods, Victor Stinner, Thomas Caswell.
(Github issues :issue:`4411`, :issue:`4414`, :issue:`4415`, :issue:`4416`, :issue:`4420`,
:issue:`4428`, :issue:`4473`, :issue:`4479`, :issue:`4480`)

* Some C compiler warnings were resolved.
Patches by Lisandro Dalcin and others.  (Github issue :issue:`4439`)

* C++ ``std::move()`` should only be used automatically in MSVC versions that support it.
Patch by Max Bachmann.  (Github issue :issue:`4191`)

* The ``Py_hash_t`` type failed to accept arbitrary "index" values.
(Github issue :issue:`2752`)

* Avoid copying unaligned 16-bit values since some platforms require them to be aligned.
Use memcpy() instead to let the C compiler decide how to do it.
(Github issue :issue:`4343`)

* Cython crashed on invalid truthiness tests on C++ types without ``operator bool``.
Patch by David Woods.  (Github issue :issue:`4348`)

* The declaration of ``PyUnicode_CompareWithASCIIString()`` in ``cpython.unicode`` was incorrect.
Patch by Max Bachmann.  (Github issue :issue:`4344`)

0.29.24

====================

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

* Inline functions in pxd files that used memory views could lead to invalid
C code if the module that imported from them does not use memory views.
Patch by David Woods.  (Github issue :issue:`1415`)

* Several declarations in ``libcpp.string`` were added and corrected.
Patch by Janek Bevendorff.  (Github issue :issue:`4268`)

* Pickling unbound Cython compiled methods failed.
Patch by Pierre Glaser.  (Github issue :issue:`2972`)

* The tracing code was adapted to work with CPython 3.10.

* The optimised ``in`` operator failed on unicode strings in Py3.9 and later
that were constructed from an external ``wchar_t`` source.
Also, related C compiler warnings about deprecated C-API usage were resolved.
(Github issue :issue:`3925`)

* Some compiler crashes were resolved.
Patch by David Woods.  (Github issues :issue:`4214`, :issue:`2811`)

* An incorrect warning about 'unused' generator expressions was removed.
(GIthub issue :issue:`1699`)

* The attributes ``gen.gi_frame`` and ``coro.cr_frame`` of Cython compiled
generators and coroutines now return an actual frame object for introspection,
instead of ``None``.
(Github issue :issue:`2306`)
Links

Update numpy from 1.21.0 to 2.2.5.

Changelog

2.2.5

release. It has a large number of typing fixes/improvements as well as
the normal bug fixes and some CI maintenance.

This release supports Python versions 3.10-3.13.

Contributors

A total of 7 people contributed to this release. People with a \"+\" by
their names contributed a patch for the first time.

-   Charles Harris
-   Joren Hammudoglu
-   Baskar Gopinath +
-   Nathan Goldbaum
-   Nicholas Christensen +
-   Sayed Adel
-   karl +

Pull requests merged

A total of 19 pull requests were merged for this release.

-   [28545](https://github.com/numpy/numpy/pull/28545): MAINT: Prepare 2.2.x for further development
-   [28582](https://github.com/numpy/numpy/pull/28582): BUG: Fix return type of NpyIter_GetIterNext in Cython declarations
-   [28583](https://github.com/numpy/numpy/pull/28583): BUG: avoid deadlocks with C++ shared mutex in dispatch cache
-   [28585](https://github.com/numpy/numpy/pull/28585): TYP: fix typing errors in `_core.strings`
-   [28631](https://github.com/numpy/numpy/pull/28631): MAINT, CI: Update Ubuntu to 22.04 in azure-pipelines
-   [28632](https://github.com/numpy/numpy/pull/28632): BUG: Set writeable flag for writeable dlpacks.
-   [28633](https://github.com/numpy/numpy/pull/28633): BUG: Fix crackfortran parsing error when a division occurs within\...
-   [28650](https://github.com/numpy/numpy/pull/28650): TYP: fix `ndarray.tolist()` and `.item()` for unknown dtype
-   [28654](https://github.com/numpy/numpy/pull/28654): BUG: fix deepcopying StringDType arrays (#28643)
-   [28661](https://github.com/numpy/numpy/pull/28661): TYP: Accept objects that `write()` to `str` in `savetxt`
-   [28663](https://github.com/numpy/numpy/pull/28663): CI: Replace QEMU armhf with native (32-bit compatibility mode)
-   [28682](https://github.com/numpy/numpy/pull/28682): SIMD: Resolve Highway QSort symbol linking error on aarch32/ASIMD
-   [28683](https://github.com/numpy/numpy/pull/28683): TYP: add missing `"b1"` literals for `dtype[bool]`
-   [28705](https://github.com/numpy/numpy/pull/28705): TYP: Fix false rejection of `NDArray[object_].__abs__()`
-   [28706](https://github.com/numpy/numpy/pull/28706): TYP: Fix inconsistent `NDArray[float64].__[r]truediv__` return\...
-   [28723](https://github.com/numpy/numpy/pull/28723): TYP: fix string-like `ndarray` rich comparison operators
-   [28758](https://github.com/numpy/numpy/pull/28758): TYP: some `[arg]partition` fixes
-   [28772](https://github.com/numpy/numpy/pull/28772): TYP: fix incorrect `random.Generator.integers` return type
-   [28774](https://github.com/numpy/numpy/pull/28774): TYP: fix `count_nonzero` signature

Checksums

MD5

 3a5d0889d6d7951f44bc6f7a03fa30c6  numpy-2.2.5-cp310-cp310-macosx_10_9_x86_64.whl
 bcf9f4e768b070e17b2635f422a6e27d  numpy-2.2.5-cp310-cp310-macosx_11_0_arm64.whl
 e82c8fa47a65bb5c2c83295f549dab12  numpy-2.2.5-cp310-cp310-macosx_14_0_arm64.whl
 a5511a995c0f79a8b9a81f2b50e9f692  numpy-2.2.5-cp310-cp310-macosx_14_0_x86_64.whl
 72bfc1f98238a8e4ba08999e61111e0e  numpy-2.2.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 146c83a5b8099d8d2607392b2ef7fedf  numpy-2.2.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 6ebdc80b54b008a10575e5d7bbb613f5  numpy-2.2.5-cp310-cp310-musllinux_1_2_aarch64.whl
 97efde6443da8f9280a5fc2614a087e5  numpy-2.2.5-cp310-cp310-musllinux_1_2_x86_64.whl
 c143f352206cec535b41b6b1d34c5898  numpy-2.2.5-cp310-cp310-win32.whl
 0b17fbbf584785f675f1c5b24a00ff93  numpy-2.2.5-cp310-cp310-win_amd64.whl
 58532622d7eff69a3c71c1ae89dea070  numpy-2.2.5-cp311-cp311-macosx_10_9_x86_64.whl
 0d002c733bb02debe0b15de5ba872d1e  numpy-2.2.5-cp311-cp311-macosx_11_0_arm64.whl
 ff0c736c60be96506806061ace2251a1  numpy-2.2.5-cp311-cp311-macosx_14_0_arm64.whl
 4febdec973c4405fd08ef35e0c130de1  numpy-2.2.5-cp311-cp311-macosx_14_0_x86_64.whl
 0bf4e457c612e565420e135458e70fe0  numpy-2.2.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 a43b608ad15ebdc0960611497205d598  numpy-2.2.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 7b4b1afd412149a9af7c25d7346fade8  numpy-2.2.5-cp311-cp311-musllinux_1_2_aarch64.whl
 a1e70be013820f92dbfd4796fc4044bb  numpy-2.2.5-cp311-cp311-musllinux_1_2_x86_64.whl
 73344e05a6fec0b38183363b4a026252  numpy-2.2.5-cp311-cp311-win32.whl
 b7d5fdd23057c58d15c84eef6bfedb55  numpy-2.2.5-cp311-cp311-win_amd64.whl
 801b11bb546aac2d92d7b3d5d6c90e86  numpy-2.2.5-cp312-cp312-macosx_10_13_x86_64.whl
 68dc4298cad9405ad30cfb723be4ae48  numpy-2.2.5-cp312-cp312-macosx_11_0_arm64.whl
 c31c872e0fa8df5ed7f91882621a925f  numpy-2.2.5-cp312-cp312-macosx_14_0_arm64.whl
 179dfa545c32c44b77cf8db3b973785f  numpy-2.2.5-cp312-cp312-macosx_14_0_x86_64.whl
 4562513ff2f1e3f31d66b8e435000141  numpy-2.2.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 c80a2d8aab1a4d6a66f3fca2f0744744  numpy-2.2.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 e363e0d8c116522d55b0ddd0cbf2de67  numpy-2.2.5-cp312-cp312-musllinux_1_2_aarch64.whl
 d31d443270c76b7238ece2f87b048d21  numpy-2.2.5-cp312-cp312-musllinux_1_2_x86_64.whl
 bf469fe048fa4ed75a5d8725297e283a  numpy-2.2.5-cp312-cp312-win32.whl
 069b832aa15b6a815497135e7fa8cae8  numpy-2.2.5-cp312-cp312-win_amd64.whl
 b2cf059c831cbcfdb4044613a1e5bc8d  numpy-2.2.5-cp313-cp313-macosx_10_13_x86_64.whl
 70bcb93e55ff0f6602636602e0834607  numpy-2.2.5-cp313-cp313-macosx_11_0_arm64.whl
 00c4938d67fd5b658ad92ac26fbe9cab  numpy-2.2.5-cp313-cp313-macosx_14_0_arm64.whl
 0ca38aa51874b9252a2c9d85f81dcd07  numpy-2.2.5-cp313-cp313-macosx_14_0_x86_64.whl
 6062cf707b8bc07a1600af0991a0a88e  numpy-2.2.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 62c1cf7de0327546f3a1e3852de640d3  numpy-2.2.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 ab3ad3390396552f76160139cc528784  numpy-2.2.5-cp313-cp313-musllinux_1_2_aarch64.whl
 d258ba55c9a3936fa0c113cac8bbc0cc  numpy-2.2.5-cp313-cp313-musllinux_1_2_x86_64.whl
 59bb7e1acb81fc4a02c3b791e110f01e  numpy-2.2.5-cp313-cp313-win32.whl
 2e5728a9e5c6405d3a22138e4dd7019f  numpy-2.2.5-cp313-cp313-win_amd64.whl
 d315521ec7275d0341787f2450e57e55  numpy-2.2.5-cp313-cp313t-macosx_10_13_x86_64.whl
 17018c7c259ae81cf2ca4f58523d7d1c  numpy-2.2.5-cp313-cp313t-macosx_11_0_arm64.whl
 ef6fd6a9c6a07db004a272b82f0ea710  numpy-2.2.5-cp313-cp313t-macosx_14_0_arm64.whl
 07b2baf70b84b44ca6924794d9c7e431  numpy-2.2.5-cp313-cp313t-macosx_14_0_x86_64.whl
 a2fb1ed562d2b6da091d980c7486d113  numpy-2.2.5-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 22fa9137283f463436d7b20a220071cd  numpy-2.2.5-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 b0ae924e4834155eb5ac159ae611c292  numpy-2.2.5-cp313-cp313t-musllinux_1_2_aarch64.whl
 c7a8351484f2df9a499c68f1ac73121c  numpy-2.2.5-cp313-cp313t-musllinux_1_2_x86_64.whl
 1da753e4127a0bdcdfbfa6639568057e  numpy-2.2.5-cp313-cp313t-win32.whl
 a8c869efc0888f214239e5c4f0e6acfb  numpy-2.2.5-cp313-cp313t-win_amd64.whl
 7255b93f38e7d54a59d6798182f24c6a  numpy-2.2.5-pp310-pypy310_pp73-macosx_10_15_x86_64.whl
 6743ce025de6c245b03ca8511b306503  numpy-2.2.5-pp310-pypy310_pp73-macosx_14_0_x86_64.whl
 5abbeec4ff2add1c46f8779f730c73fa  numpy-2.2.5-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 8e2e01f02d05e111ef2b104d1b3afad1  numpy-2.2.5-pp310-pypy310_pp73-win_amd64.whl
 df2e46b468f9fdf06b13b04eca9a723f  numpy-2.2.5.tar.gz

SHA256

 1f4a922da1729f4c40932b2af4fe84909c7a6e167e6e99f71838ce3a29f3fe26  numpy-2.2.5-cp310-cp310-macosx_10_9_x86_64.whl
 b6f91524d31b34f4a5fee24f5bc16dcd1491b668798b6d85585d836c1e633a6a  numpy-2.2.5-cp310-cp310-macosx_11_0_arm64.whl
 19f4718c9012e3baea91a7dba661dcab2451cda2550678dc30d53acb91a7290f  numpy-2.2.5-cp310-cp310-macosx_14_0_arm64.whl
 eb7fd5b184e5d277afa9ec0ad5e4eb562ecff541e7f60e69ee69c8d59e9aeaba  numpy-2.2.5-cp310-cp310-macosx_14_0_x86_64.whl
 6413d48a9be53e183eb06495d8e3b006ef8f87c324af68241bbe7a39e8ff54c3  numpy-2.2.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 7451f92eddf8503c9b8aa4fe6aa7e87fd51a29c2cfc5f7dbd72efde6c65acf57  numpy-2.2.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 0bcb1d057b7571334139129b7f941588f69ce7c4ed15a9d6162b2ea54ded700c  numpy-2.2.5-cp310-cp310-musllinux_1_2_aarch64.whl
 36ab5b23915887543441efd0417e6a3baa08634308894316f446027611b53bf1  numpy-2.2.5-cp310-cp310-musllinux_1_2_x86_64.whl
 422cc684f17bc963da5f59a31530b3936f57c95a29743056ef7a7903a5dbdf88  numpy-2.2.5-cp310-cp310-win32.whl
 e4f0b035d9d0ed519c813ee23e0a733db81ec37d2e9503afbb6e54ccfdee0fa7  numpy-2.2.5-cp310-cp310-win_amd64.whl
 c42365005c7a6c42436a54d28c43fe0e01ca11eb2ac3cefe796c25a5f98e5e9b  numpy-2.2.5-cp311-cp311-macosx_10_9_x86_64.whl
 498815b96f67dc347e03b719ef49c772589fb74b8ee9ea2c37feae915ad6ebda  numpy-2.2.5-cp311-cp311-macosx_11_0_arm64.whl
 6411f744f7f20081b1b4e7112e0f4c9c5b08f94b9f086e6f0adf3645f85d3a4d  numpy-2.2.5-cp311-cp311-macosx_14_0_arm64.whl
 9de6832228f617c9ef45d948ec1cd8949c482238d68b2477e6f642c33a7b0a54  numpy-2.2.5-cp311-cp311-macosx_14_0_x86_64.whl
 369e0d4647c17c9363244f3468f2227d557a74b6781cb62ce57cf3ef5cc7c610  numpy-2.2.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 262d23f383170f99cd9191a7c85b9a50970fe9069b2f8ab5d786eca8a675d60b  numpy-2.2.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 aa70fdbdc3b169d69e8c59e65c07a1c9351ceb438e627f0fdcd471015cd956be  numpy-2.2.5-cp311-cp311-musllinux_1_2_aarch64.whl
 37e32e985f03c06206582a7323ef926b4e78bdaa6915095ef08070471865b906  numpy-2.2.5-cp311-cp311-musllinux_1_2_x86_64.whl
 f5045039100ed58fa817a6227a356240ea1b9a1bc141018864c306c1a16d4175  numpy-2.2.5-cp311-cp311-win32.whl
 b13f04968b46ad705f7c8a80122a42ae8f620536ea38cf4bdd374302926424dd  numpy-2.2.5-cp311-cp311-win_amd64.whl
 ee461a4eaab4f165b68780a6a1af95fb23a29932be7569b9fab666c407969051  numpy-2.2.5-cp312-cp312-macosx_10_13_x86_64.whl
 ec31367fd6a255dc8de4772bd1658c3e926d8e860a0b6e922b615e532d320ddc  numpy-2.2.5-cp312-cp312-macosx_11_0_arm64.whl
 47834cde750d3c9f4e52c6ca28a7361859fcaf52695c7dc3cc1a720b8922683e  numpy-2.2.5-cp312-cp312-macosx_14_0_arm64.whl
 2c1a1c6ccce4022383583a6ded7bbcda22fc635eb4eb1e0a053336425ed36dfa  numpy-2.2.5-cp312-cp312-macosx_14_0_x86_64.whl
 9d75f338f5f79ee23548b03d801d28a505198297534f62416391857ea0479571  numpy-2.2.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 3a801fef99668f309b88640e28d261991bfad9617c27beda4a3aec4f217ea073  numpy-2.2.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 abe38cd8381245a7f49967a6010e77dbf3680bd3627c0fe4362dd693b404c7f8  numpy-2.2.5-cp312-cp312-musllinux_1_2_aarch64.whl
 5a0ac90e46fdb5649ab6369d1ab6104bfe5854ab19b645bf5cda0127a13034ae  numpy-2.2.5-cp312-cp312-musllinux_1_2_x86_64.whl
 0cd48122a6b7eab8f06404805b1bd5856200e3ed6f8a1b9a194f9d9054631beb  numpy-2.2.5-cp312-cp312-win32.whl
 ced69262a8278547e63409b2653b372bf4baff0870c57efa76c5703fd6543282  numpy-2.2.5-cp312-cp312-win_amd64.whl
 059b51b658f4414fff78c6d7b1b4e18283ab5fa56d270ff212d5ba0c561846f4  numpy-2.2.5-cp313-cp313-macosx_10_13_x86_64.whl
 47f9ed103af0bc63182609044b0490747e03bd20a67e391192dde119bf43d52f  numpy-2.2.5-cp313-cp313-macosx_11_0_arm64.whl
 261a1ef047751bb02f29dfe337230b5882b54521ca121fc7f62668133cb119c9  numpy-2.2.5-cp313-cp313-macosx_14_0_arm64.whl
 4520caa3807c1ceb005d125a75e715567806fed67e315cea619d5ec6e75a4191  numpy-2.2.5-cp313-cp313-macosx_14_0_x86_64.whl
 3d14b17b9be5f9c9301f43d2e2a4886a33b53f4e6fdf9ca2f4cc60aeeee76372  numpy-2.2.5-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 2ba321813a00e508d5421104464510cc962a6f791aa2fca1c97b1e65027da80d  numpy-2.2.5-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 a4cbdef3ddf777423060c6f81b5694bad2dc9675f110c4b2a60dc0181543fac7  numpy-2.2.5-cp313-cp313-musllinux_1_2_aarch64.whl
 54088a5a147ab71a8e7fdfd8c3601972751ded0739c6b696ad9cb0343e21ab73  numpy-2.2.5-cp313-cp313-musllinux_1_2_x86_64.whl
 c8b82a55ef86a2d8e81b63da85e55f5537d2157165be1cb2ce7cfa57b6aef38b  numpy-2.2.5-cp313-cp313-win32.whl
 d8882a829fd779f0f43998e931c466802a77ca1ee0fe25a3abe50278616b1471  numpy-2.2.5-cp313-cp313-win_amd64.whl
 e8b025c351b9f0e8b5436cf28a07fa4ac0204d67b38f01433ac7f9b870fa38c6  numpy-2.2.5-cp313-cp313t-macosx_10_13_x86_64.whl
 8dfa94b6a4374e7851bbb6f35e6ded2120b752b063e6acdd3157e4d2bb922eba  numpy-2.2.5-cp313-cp313t-macosx_11_0_arm64.whl
 97c8425d4e26437e65e1d189d22dff4a079b747ff9c2788057bfb8114ce1e133  numpy-2.2.5-cp313-cp313t-macosx_14_0_arm64.whl
 352d330048c055ea6db701130abc48a21bec690a8d38f8284e00fab256dc1376  numpy-2.2.5-cp313-cp313t-macosx_14_0_x86_64.whl
 8b4c0773b6ada798f51f0f8e30c054d32304ccc6e9c5d93d46cb26f3d385ab19  numpy-2.2.5-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 55f09e00d4dccd76b179c0f18a44f041e5332fd0e022886ba1c0bbf3ea4a18d0  numpy-2.2.5-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 02f226baeefa68f7d579e213d0f3493496397d8f1cff5e2b222af274c86a552a  numpy-2.2.5-cp313-cp313t-musllinux_1_2_aarch64.whl
 c26843fd58f65da9491165072da2cccc372530681de481ef670dcc8e27cfb066  numpy-2.2.5-cp313-cp313t-musllinux_1_2_x86_64.whl
 1a161c2c79ab30fe4501d5a2bbfe8b162490757cf90b7f05be8b80bc02f7bb8e  numpy-2.2.5-cp313-cp313t-win32.whl
 d403c84991b5ad291d3809bace5e85f4bbf44a04bdc9a88ed2bb1807b3360bb8  numpy-2.2.5-cp313-cp313t-win_amd64.whl
 b4ea7e1cff6784e58fe281ce7e7f05036b3e1c89c6f922a6bfbc0a7e8768adbe  numpy-2.2.5-pp310-pypy310_pp73-macosx_10_15_x86_64.whl
 d7543263084a85fbc09c704b515395398d31d6395518446237eac219eab9e55e  numpy-2.2.5-pp310-pypy310_pp73-macosx_14_0_x86_64.whl
 0255732338c4fdd00996c0421884ea8a3651eea555c3a56b84892b66f696eb70  numpy-2.2.5-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 d2e3bdadaba0e040d1e7ab39db73e0afe2c74ae277f5614dad53eadbecbbb169  numpy-2.2.5-pp310-pypy310_pp73-win_amd64.whl
 a9c0d994680cd991b1cb772e8b297340085466a6fe964bc9d4e80f5e2f43c291  numpy-2.2.5.tar.gz

2.2.4

release. There are a large number of typing improvements, the rest of
the changes are the usual mix of bugfixes and platform maintenace.

This release supports Python versions 3.10-3.13.

Contributors

A total of 15 people contributed to this release. People with a \"+\" by
their names contributed a patch for the first time.

-   Abhishek Kumar
-   Andrej Zhilenkov
-   Andrew Nelson
-   Charles Harris
-   Giovanni Del Monte
-   Guan Ming(Wesley) Chiu +
-   Jonathan Albrecht +
-   Joren Hammudoglu
-   Mark Harfouche
-   Matthieu Darbois
-   Nathan Goldbaum
-   Pieter Eendebak
-   Sebastian Berg
-   Tyler Reddy
-   lvllvl +

Pull requests merged

A total of 17 pull requests were merged for this release.

-   [28333](https://github.com/numpy/numpy/pull/28333): MAINT: Prepare 2.2.x for further development.
-   [28348](https://github.com/numpy/numpy/pull/28348): TYP: fix positional- and keyword-only params in astype, cross\...
-   [28377](https://github.com/numpy/numpy/pull/28377): MAINT: Update FreeBSD version and fix test failure
-   [28379](https://github.com/numpy/numpy/pull/28379): BUG: numpy.loadtxt reads only 50000 lines when skip_rows \>= max_rows
-   [28385](https://github.com/numpy/numpy/pull/28385): BUG: Make np.nonzero threading safe
-   [28420](https://github.com/numpy/numpy/pull/28420): BUG: safer bincount casting (backport to 2.2.x)
-   [28422](https://github.com/numpy/numpy/pull/28422): BUG: Fix building on s390x with clang
-   [28423](https://github.com/numpy/numpy/pull/28423): CI: use QEMU 9.2.2 for Linux Qemu tests
-   [28424](https://github.com/numpy/numpy/pull/28424): BUG: skip legacy dtype multithreaded test on 32 bit runners
-   [28435](https://github.com/numpy/numpy/pull/28435): BUG: Fix searchsorted and CheckFromAny byte-swapping logic
-   [28449](https://github.com/numpy/numpy/pull/28449): BUG: sanity check `__array_interface__` number of dimensions
-   [28510](https://github.com/numpy/numpy/pull/28510): MAINT: Hide decorator from pytest traceback
-   [28512](https://github.com/numpy/numpy/pull/28512): TYP: Typing fixes backported from #28452, 28491, 28494
-   [28521](https://github.com/numpy/numpy/pull/28521): TYP: Backport fixes from #28505, 28506, 28508, and 28511
-   [28533](https://github.com/numpy/numpy/pull/28533): TYP: Backport typing fixes from main (2)
-   [28534](https://github.com/numpy/numpy/pull/28534): TYP: Backport typing fixes from main (3)
-   [28542](https://github.com/numpy/numpy/pull/28542): TYP: Backport typing fixes from main (4)

Checksums

MD5

 935928cbd2de140da097f6d5f4a01d72  numpy-2.2.4-cp310-cp310-macosx_10_9_x86_64.whl
 bf7fd01bb177885e920173b610c195d9  numpy-2.2.4-cp310-cp310-macosx_11_0_arm64.whl
 826e52cd898567a0c446113ab7a7b362  numpy-2.2.4-cp310-cp310-macosx_14_0_arm64.whl
 9982a91d7327aea541c24aff94d3e462  numpy-2.2.4-cp310-cp310-macosx_14_0_x86_64.whl
 5bdf5b63f4ee01fa808d13043b2a2275  numpy-2.2.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 677b3031105e24eaee2e0e57d7c2a306  numpy-2.2.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 d857867787fe1eb236670e7fdb25f414  numpy-2.2.4-cp310-cp310-musllinux_1_2_aarch64.whl
 a5aff3a7eb2923878e67fbe1cd04a9e9  numpy-2.2.4-cp310-cp310-musllinux_1_2_x86_64.whl
 e00bd3ac85d8f34b46b7f97a8278aeb3  numpy-2.2.4-cp310-cp310-win32.whl
 e5cb2a5d14bccee316bb73173be125ec  numpy-2.2.4-cp310-cp310-win_amd64.whl
 494f60d8e1c3500413bd093bb3f486ea  numpy-2.2.4-cp311-cp311-macosx_10_9_x86_64.whl
 a886a9f3e80a60ce6ba95b431578bbca  numpy-2.2.4-cp311-cp311-macosx_11_0_arm64.whl
 889f3b507bab9272d9b549780840a642  numpy-2.2.4-cp311-cp311-macosx_14_0_arm64.whl
 059788668d2c4e9aace4858e77c099ed  numpy-2.2.4-cp311-cp311-macosx_14_0_x86_64.whl
 db9ae978afb76a4bf79df0657a66aaeb  numpy-2.2.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 e36963a4c177157dc7b0775c309fa5a8  numpy-2.2.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 3603e683878b74f38e5617f04ff6a369  numpy-2.2.4-cp311-cp311-musllinux_1_2_aarch64.whl
 afbc410fb9b42b19f4f7c81c21d6777f  numpy-2.2.4-cp311-cp311-musllinux_1_2_x86_64.whl
 33ff8081378188894097942f80c33e26  numpy-2.2.4-cp311-cp311-win32.whl
 5b11fe8d26318d85e0bc577a654f6643  numpy-2.2.4-cp311-cp311-win_amd64.whl
 91121787f396d3e98210de8b617e5d48  numpy-2.2.4-cp312-cp312-macosx_10_13_x86_64.whl
 c524d1020b4652aacf4477d1628fa1ba  numpy-2.2.4-cp312-cp312-macosx_11_0_arm64.whl
 eb08f551bdd6772155bb39ac0da47479  numpy-2.2.4-cp312-cp312-macosx_14_0_arm64.whl
 7cb37fc9145d0ebbea5666b4f9ed1027  numpy-2.2.4-cp312-cp312-macosx_14_0_x86_64.whl
 c4452a5dc557c291904b5c51a4148237  numpy-2.2.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 bd23a12ead870759f264160ab38b2c9d  numpy-2.2.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 07b44109381985b48d1eef80feebc5ad  numpy-2.2.4-cp312-cp312-musllinux_1_2_aarch64.whl
 95f1a27d33106fa9f40ee0714681c840  numpy-2.2.4-cp312-cp312-musllinux_1_2_x86_64.whl
 507e550a55b19dedf267b58a487ba0bc  numpy-2.2.4-cp312-cp312-win32.whl
 be21ccbf8931e92ba1fdb2dc1250bf2a  numpy-2.2.4-cp312-cp312-win_amd64.whl
 e94003c2b65d81b00203711c5c42fb8e  numpy-2.2.4-cp313-cp313-macosx_10_13_x86_64.whl
 cf781fd5412ffd826e0436883452cc17  numpy-2.2.4-cp313-cp313-macosx_11_0_arm64.whl
 92c9a30386a64f2deddad1db742bd296  numpy-2.2.4-cp313-cp313-macosx_14_0_arm64.whl
 7fd16554fa0a15b7f99b1fabf1c4592c  numpy-2.2.4-cp313-cp313-macosx_14_0_x86_64.whl
 9293b0575a902b2d55c35567dee7679e  numpy-2.2.4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 9970699bd95e8a64a562b1e6328b83d0  numpy-2.2.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 e8597c611a919a8e88229d6889c1f86e  numpy-2.2.4-cp313-cp313-musllinux_1_2_aarch64.whl
 329288501f012606605bdbed368e58e9  numpy-2.2.4-cp313-cp313-musllinux_1_2_x86_64.whl
 04bf8d0f6a9e279ab01df4ed0b4aeee1  numpy-2.2.4-cp313-cp313-win32.whl
 66801fe84a436b7ed3be6e0082b86917  numpy-2.2.4-cp313-cp313-win_amd64.whl
 3e2f31e01b45cd16a87b794477de3714  numpy-2.2.4-cp313-cp313t-macosx_10_13_x86_64.whl
 7504018213a3a8fea7173e2c1d0fcfd1  numpy-2.2.4-cp313-cp313t-macosx_11_0_arm64.whl
 e299021397c3cdb941b7ffe77cf0fefe  numpy-2.2.4-cp313-cp313t-macosx_14_0_arm64.whl
 1cc2731a246079bcab361179f38e7ccb  numpy-2.2.4-cp313-cp313t-macosx_14_0_x86_64.whl
 e6eccf936d25c9eda9df1a4d50ae2fdc  numpy-2.2.4-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 ba825efd05cca6d56c3dca9f7f1f88e7  numpy-2.2.4-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 369eebec47c9c27cb4841a13e9522167  numpy-2.2.4-cp313-cp313t-musllinux_1_2_aarch64.whl
 554dbfa52988d01f715cbe8d4da4b409  numpy-2.2.4-cp313-cp313t-musllinux_1_2_x86_64.whl
 811d25a008c68086c9382487e9a4127a  numpy-2.2.4-cp313-cp313t-win32.whl
 893fd2fdd42f386e300bee885bbb7778  numpy-2.2.4-cp313-cp313t-win_amd64.whl
 65e284546c5ee575eca0a3726c0a1d98  numpy-2.2.4-pp310-pypy310_pp73-macosx_10_15_x86_64.whl
 e4e73511eac8f1a10c6abbd6fa2fa0aa  numpy-2.2.4-pp310-pypy310_pp73-macosx_14_0_x86_64.whl
 a884ed5263b91fa87b5e3d14caf955a5  numpy-2.2.4-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 7330087a6ad1527ae20a495e2fb3b357  numpy-2.2.4-pp310-pypy310_pp73-win_amd64.whl
 56232f4a69b03dd7a87a55fffc5f2ebc  numpy-2.2.4.tar.gz

SHA256

 8146f3550d627252269ac42ae660281d673eb6f8b32f113538e0cc2a9aed42b9  numpy-2.2.4-cp310-cp310-macosx_10_9_x86_64.whl
 e642d86b8f956098b564a45e6f6ce68a22c2c97a04f5acd3f221f57b8cb850ae  numpy-2.2.4-cp310-cp310-macosx_11_0_arm64.whl
 a84eda42bd12edc36eb5b53bbcc9b406820d3353f1994b6cfe453a33ff101775  numpy-2.2.4-cp310-cp310-macosx_14_0_arm64.whl
 4ba5054787e89c59c593a4169830ab362ac2bee8a969249dc56e5d7d20ff8df9  numpy-2.2.4-cp310-cp310-macosx_14_0_x86_64.whl
 7716e4a9b7af82c06a2543c53ca476fa0b57e4d760481273e09da04b74ee6ee2  numpy-2.2.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
 adf8c1d66f432ce577d0197dceaac2ac00c0759f573f28516246351c58a85020  numpy-2.2.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
 218f061d2faa73621fa23d6359442b0fc658d5b9a70801373625d958259eaca3  numpy-2.2.4-cp310-cp310-musllinux_1_2_aarch64.whl
 df2f57871a96bbc1b69733cd4c51dc33bea66146b8c63cacbfed73eec0883017  numpy-2.2.4-cp310-cp310-musllinux_1_2_x86_64.whl
 a0258ad1f44f138b791327961caedffbf9612bfa504ab9597157806faa95194a  numpy-2.2.4-cp310-cp310-win32.whl
 0d54974f9cf14acf49c60f0f7f4084b6579d24d439453d5fc5805d46a165b542  numpy-2.2.4-cp310-cp310-win_amd64.whl
 e9e0a277bb2eb5d8a7407e14688b85fd8ad628ee4e0c7930415687b6564207a4  numpy-2.2.4-cp311-cp311-macosx_10_9_x86_64.whl
 9eeea959168ea555e556b8188da5fa7831e21d91ce031e95ce23747b7609f8a4  numpy-2.2.4-cp311-cp311-macosx_11_0_arm64.whl
 bd3ad3b0a40e713fc68f99ecfd07124195333f1e689387c180813f0e94309d6f  numpy-2.2.4-cp311-cp311-macosx_14_0_arm64.whl
 cf28633d64294969c019c6df4ff37

@pyup-bot
Copy link
Copy Markdown
Collaborator Author

pyup-bot commented Jun 6, 2025

Closing this in favor of #176

@pyup-bot pyup-bot closed this Jun 6, 2025
@alimanfoo alimanfoo deleted the pyup-scheduled-update-2025-05-01 branch June 6, 2025 21:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant