Hi everyone,
If you maintain Python packages with C extensions that use the Numpy C API, wheels that were built against Numpy 1.x will not work if a user installs your wheels and Numpy 2.0.0 (which will happen by default for new installs after Numpy 2.0.0 is released unless you specifically require numpy<2 as a run-time dependency).
Currently, Numpy 2.0.0 is not released yet, but 2.0.0rc1 is. This release candidate is guaranteed to be ABI-compatible with the final Numpy 2.0.0 which means that if you want to avoid any issues for your packages, you should build new wheels of your packages now with numpy>2.0.0rc1 as a build-time dependency. Wheels built now against 2.0.0rc1 will be compatible with both (recent) Numpy 1.x and 2.x. For more details, you can see this comment:
and for an example of PR done for reproject:
I released reproject v0.13.1 today which uses this and has wheels that were built against numpy 2.0.0rc1.
Please feel free to ask here or on the Slack #infrastructure channel if you have any questions!
Cheers,
Tom