jorisvandenbossche commented on code in PR #43691:
URL: https://github.com/apache/arrow/pull/43691#discussion_r1726543311


##########
python/requirements-wheel-test.txt:
##########
@@ -5,22 +5,12 @@ pytest
 pytz
 tzdata; sys_platform == 'win32'
 
-numpy==1.21.3; platform_system == "Linux"   and platform_machine == "aarch64" 
and python_version < "3.11"
-numpy==1.23.4;                                                                 
   python_version == "3.11"
-numpy==1.26.0;                                                                 
   python_version >= "3.12"
-numpy==1.19.5; platform_system == "Linux"   and platform_machine != "aarch64" 
and python_version <  "3.9"
-numpy==1.21.3; platform_system == "Linux"   and platform_machine != "aarch64" 
and python_version >= "3.9" and python_version < "3.11"
-numpy==1.21.3; platform_system == "Darwin"  and platform_machine == "arm64"   
and python_version <  "3.11"
-numpy==1.19.5; platform_system == "Darwin"  and platform_machine != "arm64"   
and python_version <  "3.9"
-numpy==1.21.3; platform_system == "Darwin"  and platform_machine != "arm64"   
and python_version >= "3.9" and python_version < "3.11"
-numpy==1.19.5; platform_system == "Windows"                                   
and python_version <  "3.9"
-numpy==1.21.3; platform_system == "Windows"                                   
and python_version >= "3.9" and python_version < "3.11"
+# We generally test with the oldest numpy version that supports a given Python
+# version. However, there is no need to make this strictly the oldest version,
+# so it can be broadened to have a single version specification across 
platforms.
+# (`~=x.y.z` specifies a compatible release as `>=x.y.z, == x.y.*`)
+numpy~=1.21.3; python_version < "3.11"

Review Comment:
   I think that table is a recommendation about the versions to support for 
other projects (that rely on Python and numpy), not necessarily the 
Python/numpy version that supports each other.
   
   So if I interpret it correctly, my reading is that, for example, at Apr 05, 
2024, it is recommended to support Python 3.10+ and NumPy 1.23+.
   
   But for the oldest NumPy version to support Python 3.10, I looked at the 
release notes, for example 
https://numpy.org/doc/stable/release/1.21.3-notes.html indicates it is the 
first version to support 3.10
   
   In theory we could pin to an older version of numpy for Python 3.9 
(https://numpy.org/doc/stable/release/1.19.3-notes.html), but the problem is 
that then we need to start using a different version depending on the 
architecture, because at the time numpy first supported Python 3.9 (numpy 
1.19.3), there were not yet arm64 wheels.
   
   Given it is not super critical to test exactly with the oldest, but we 
mostly want to test with some other version than what we are building with 
(which is nowadays the most recent numpy version), I decided to keep the 
version pins simpler (as explained in the comment that I added to the txt file)



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to