GH-48473: [CI][Python] Require numpy 2.0 - #50769
Conversation
|
|
459c7f0 to
d0a51cc
Compare
|
@tadeja @rok @raulcd @jorisvandenbossche this is ready for review. The failure seems to be an unrelated arrow flight timeout. Once this is on master, I'll file a new StringDType from/to conversion PR. |
|
@github-actions crossbow submit -g python |
|
Revision: d0a51cc Submitted crossbow builds: ursacomputing/crossbow @ actions-764bbcb6f5 |
raulcd
left a comment
There was a problem hiding this comment.
Thanks @alippai for working on this. Changes LGTM in general, let me lauch extra CI and get the ok from @pitrou @jorisvandenbossche @AlenkaF
| python: "3.11" | ||
| pandas: "2.0.3" | ||
| numpy: "1.23.2" | ||
| pandas: "2.2.2" |
There was a problem hiding this comment.
@jorisvandenbossche is the bump to pandas 2.2.2 ok from your perspective in order to support numpy > 2?
There was a problem hiding this comment.
That should be fine I think (well, it is also unavoidable if we want to only support numpy >= 2)
|
@github-actions crossbow submit wheel-cp313 |
|
Revision: d0a51cc Submitted crossbow builds: ursacomputing/crossbow @ actions-449ef0ee7b |
|
@github-actions crossbow submit wheel-cp311 |
|
Revision: d0a51cc Submitted crossbow builds: ursacomputing/crossbow @ actions-012e7c747c |
ngoldbaum
left a comment
There was a problem hiding this comment.
I asked an AI model to review this with an eye toward code that can be deleted to simplify interfacing with Pandas and it found several more places where you can delete or simplify code. I'm happy to take on these cleanups in a followup if you think my suggestions are scope creep.
cb5085f to
d0a51cc
Compare
|
@ngoldbaum @rok thanks, I’ll address the pandas upgrade too. It was addressing the numpy upgrade only. I believe pandas improvements are in scope for this MR. Addressing upstream fixes and even onboarding the optimal/newer APIs allowed by the new version should land together. |
5c4831f to
dc6ef99
Compare
ngoldbaum
left a comment
There was a problem hiding this comment.
Just one last nit but this otherwise looks good to me!
dc6ef99 to
b2ceece
Compare
| python: "3.11" | ||
| pandas: "2.0.3" | ||
| numpy: "1.23.2" | ||
| pandas: "2.2.2" |
There was a problem hiding this comment.
That should be fine I think (well, it is also unavoidable if we want to only support numpy >= 2)
| {% for python_version, pandas_version, numpy_version, cache_leaf in [("3.11", "2.2.2", "2.0.2", True), | ||
| ("3.12", "latest", "latest", False), | ||
| ("3.13", "latest", "1.26.2", False), | ||
| ("3.13", "latest", "2.1.0", False), |
There was a problem hiding this comment.
| ("3.13", "latest", "2.1.0", False), | |
| ("3.13", "latest", "2.1.3", False), |
(seems more logical to test with the latest bug-fix release from a certain series?)
Rationale for this change
Require Numpy 2.0 to support newer features, allow newer numpy API/ABI
What changes are included in this PR?
Are there any user-facing changes?
Yes, in contrast to pyarrow 25, after merging this PR pyarrow 26 can't be used with Numpy 1.x or pandas 2.0-2.2.1
This PR includes breaking changes to public APIs.
This PR was created using GPT-5.6-Sol-xhigh, every line read & reviewed by me.