-
Notifications
You must be signed in to change notification settings - Fork 26
Support Numpy 1 and Numpy 2 #1194
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
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## develop #1194 +/- ##
========================================
Coverage 90.38% 90.39%
========================================
Files 132 132
Lines 13754 13761 +7
========================================
+ Hits 12432 12439 +7
Misses 1322 1322 ☔ View full report in Codecov by Sentry. 🚨 Try these New Features:
|
b86318b to
691b464
Compare
|
I'm going to enable this for review just to run the conda CI jobs. Still a draft... at this time not intending to merge. |
8a83ef4 to
ab3dec1
Compare
|
@j-c-c , lets get this reviewed and into |
j-c-c
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
janden
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Numpy 2 requires more changes than I recall. I'm thinking maybe I didn't actually get this far before due to depends issues. My mistake.
Because a lot of scientific python libraries are not supporting Numpy2 yet (I can see why, don't hold your breathe!), we should plan to support both 1 and 2 for a while. (See numpy/numpy#26191) . This PR adds that compatibility forUpdate: I was able to resolve all occurrences covered by tests without the workaround.copy=behavior which was one of ASPIRE's main blockers. ( grumbles, I understand the ABI compat issues, but I truly don't understand how user API bridges could not have been built ....)There are many dtype issues. I've resolved those covered by unit tests.
One I've noted I wanted to come back to, as I'm not satisfied yet (I figured out where to fix it, but not where it came from 😬 ... 🔎 ). I'll look at that before review, but wanted to get this draft up now to run the CI etc.My main concern is that I can virtually guarantee I'm missing some np2 dtype mismatches that will cause runtime crashes later. Some of these are not going to be from our code (they will likely be fluid as extern packages update). There isn't much I can do about that other than to try and fix them on our side as they come to surface. 🤷♂️