Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hot-fix packages using NumPy to require <2 ? #516

Closed
jakirkham opened this issue Aug 22, 2023 · 5 comments
Closed

Hot-fix packages using NumPy to require <2 ? #516

jakirkham opened this issue Aug 22, 2023 · 5 comments

Comments

@jakirkham
Copy link
Member

As brought up in issue ( conda-forge/scikit-learn-feedstock#227 ) ( in particular comment: conda-forge/scikit-learn-feedstock#227 (comment) ), for old packages we may not have numpy dependencies in run correctly constrained to ensure numpy 2 isn't pulled in by accident. Some proposed next steps:

  • Audit repodata to find where numpy upper bounds are undefined or too loose
  • Submit a repodata patch to fix those dependencies to be more tightly constrained
  • Make sure feedstocks are rebuilt with correct numpy constraint (if that hasn't already happened)
  • ?

Please suggest other steps or revise existing ones

cc @conda-forge/core

@h-vetinari
Copy link
Member

  • Audit repodata to find where numpy upper bounds are undefined or too loose
  • Submit a repodata patch to fix those dependencies to be more tightly constrained

I opened #712

  • Make sure feedstocks are rebuilt with correct numpy constraint (if that hasn't already happened)

For packages compiling against numpy, we've had a run-export for 2 years (conda-forge/numpy-feedstock@bca0916), so this should not be an issue. The problem is that feedstocks with a run-only dependence will do stuff like - numpy >=1.16. This is hard to catch.

We could address this in the piggyback, but it's not even clear to me that we'd need to change it, if the package builds successfully against 2.0.

@h-vetinari
Copy link
Member

There isn't a huge amount left to do here after #728 I think. However, obviously more packages can get added in numpy/numpy#26191, and also some packages which are currently missing a known lowest numpy 2.0-compatible version should be updated in the patch_yaml as those versions become known, see:

# packages from https://github.com/numpy/numpy/issues/26191
# where we DO NOT know the lowest version that supports numpy 2.0;
# so patch everything using current timestamp.
#
# TODO: As soon as the lower bounds (for numpy 2.0 support) of these packages
# become known, these should move to numpy2_known_lower_bound.yaml

For those reasons, I suggest to keep the issue open.

@beckermr
Copy link
Member

SGTM! I am going to draft an announcement explaining where to put patches and what we did.

@jakirkham
Copy link
Member Author

Should we roll that announcement into a general NumPy 2 announcement?

Repodata patching is presumably only on of a few things for NumPy 2 users & maintainers will care about

@hmaarrfk
Copy link
Contributor

I feel like we can close this issue now right?

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

No branches or pull requests

5 participants