On Tue, Feb 3, 2026 at 10:31 AM Nathan via NumPy-Discussion < [email protected]> 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. > > 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 > Seems reasonable to me, seems compiler options are a good workaround if wanted. Might add the link https://cython.readthedocs.io/en/latest/src/userguide/migrating_to_cy30.html . Chuck
_______________________________________________ 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]
