Requiring NumPy >= 1.17.x #1238
jpivarski
started this conversation in
Deprecations
Replies: 1 comment
-
Worth noting here before I forget it: we have some work-arounds for NumPy arrays that lack a |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Currently, the minimum NumPy version that Awkward Array can use is 1.13.1 (Jul 6, 2017, almost 5 years old). This minimum was set at the beginning of the project because it is the first NumPy version that supports NEP 13, without which Awkward Arrays couldn't use any ufuncs. Worse still, if someone tried to use a ufunc, it would give wrong answers, rather than raise exceptions.
Another meaningful cut-off would be to require NumPy >= 1.17.0 (Jul 26, 2019, almost 3 years old), because this is the first version that supports NEP 18, without which other NumPy functions, like
np.concatenate
, wouldn't work, though you could substituteak.concatenate
and it would work fine. This was never a limiting constraint because if you had an old NumPy and tried to usenp.concatenate
, it would just be slow and/or raise exceptions.In #1230, @agoose77 brought up the idea of implementing NumPy's random number generators (also required much earlier, in #489). NumPy has a legacy API that was superseded in NumPy 1.17.0. If we restrict to that NumPy version, we only need to implement the newer API, which is, of course, half the work! There were some bug-fixes in the API, so the minimum NumPy version might actually be 1.17.x for some x to be determined.
So the question is, would anyone's life be made more difficult if Awkward Array's minimum NumPy version became 1.17.x? Are there any systems that just have to use old NumPys?
Beta Was this translation helpful? Give feedback.
All reactions