On Tue, 2026-02-03 at 10:31 -0700, Nathan via NumPy-Discussion wrote:
> Hi all,
> 
> Currently NumPy ships two versions of the Cython headers: one for
> Cython
> 3.0 and newer (__init__.cython-30.pxd) and one for older versions
> (__init__.pxd).
> 
> I'd like to make using the __init__.pxd file a compiler error in
> NumPy 2.5
> and force downstream users of the Cython interface to use Cython 3.0
> or
> newer.


Yeah, agreed, Cython 3 should be pretty adopted and projects who didn't
adopt yet are likely to struggle anyway.
Based on the wheels Cython <3 only supports up to Python 3.12 anyway.
Technically that means there is overlap with NumPy 2.5, but it is
really not much at this point...

- Sebastian


> 
> I have a PR open [1] to implement this and generate a compiler error
> with
> as an explanation as I can for any users of this header.
> 
> The immediate motivator here is needing to touch the Cython bindings
> for my
> other recent proposal [1]. I'd prefer not to need to worry about
> updating
> both versions of the Cython headers.
> 
> Beyond my personal desire to avoid doing unnecessary work, IMO having
> two
> versions of the headers is a recipe for bitrot and latent bugs.
> Contributors may or may not be asked to update both versions of the
> bindings depending on whether a reviewer remembers that there are two
> versions.
> 
> Cython 3.0.0 came out Jul 17, 2023, so when NumPy 2.5 comes out later
> this
> summer it will have been three years since that release. Dropping
> support
> this summer would follow our three-year support for CPython.
> 
> If anyone reading this would prefer that we not do this, please reply
> here
> or on the open pull request to let us know what your concerns are.
> Otherwise, I will likely merge my pull request next week.
> 
> -Nathan
> 
> [1] https://github.com/numpy/numpy/pull/30770
> [2]
> https://mail.python.org/archives/list/[email protected]/thread/TOFVC2RIXTPJKWVPFVAGET2NDTRMDQQL/
> _______________________________________________
> NumPy-Discussion mailing list -- [email protected]
> To unsubscribe send an email to [email protected]
> https://mail.python.org/mailman3//lists/numpy-discussion.python.org
> Member address: [email protected]
_______________________________________________
NumPy-Discussion mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/numpy-discussion.python.org
Member address: [email protected]

Reply via email to