5252PYTHON_ABI_MAJ_MIN = "" .join (PYTHON_MAJ_MIN )
5353PYTHON_ABI_FLAGS = "m" if sys .version_info .minor < 8 else ""
5454PYTHON_ABI = f"cp{ PYTHON_ABI_MAJ_MIN } -cp{ PYTHON_ABI_MAJ_MIN } { PYTHON_ABI_FLAGS } "
55- MANYLINUX_PYTHON_IMAGE_ID = f'python:{ "." .join (PYTHON_MAJ_MIN )} -slim-bullseye'
55+ PYTHON_IMAGE_TAG = "." .join (PYTHON_MAJ_MIN ) + (
56+ "-rc" if PYTHON_MAJ_MIN == ["3" , "12" ] else ""
57+ )
58+ MANYLINUX_PYTHON_IMAGE_ID = f"python:{ PYTHON_IMAGE_TAG } -slim-bullseye"
5659MUSLLINUX_IMAGES = {
5760 "musllinux_1_1" : f"quay.io/pypa/musllinux_1_1_{ PLATFORM } :latest" ,
5861}
59- MUSLLINUX_PYTHON_IMAGE_ID = f' python:{ "." . join ( PYTHON_MAJ_MIN ) } -alpine'
62+ MUSLLINUX_PYTHON_IMAGE_ID = f" python:{ PYTHON_IMAGE_TAG } -alpine"
6063DEVTOOLSET = {
6164 "manylinux_2_5" : "devtoolset-2" ,
6265 "manylinux_2_12" : "devtoolset-8" ,
8285 "39" : "1.21.4" ,
8386 "310" : "1.21.4" ,
8487 "311" : "1.23.4" ,
88+ "312" : "1.26.0" ,
8589}
8690NUMPY_VERSION = NUMPY_VERSION_MAP [PYTHON_ABI_MAJ_MIN ]
8791ORIGINAL_NUMPY_WHEEL = f"numpy-{ NUMPY_VERSION } -{ PYTHON_ABI } -linux_{ PLATFORM } .whl"
@@ -206,6 +210,8 @@ def build_numpy(container, policy, output_dir):
206210 elif policy .startswith ("manylinux_2_28_" ):
207211 docker_exec (container , "dnf install -y openblas-devel" )
208212 else :
213+ if tuple (int (part ) for part in NUMPY_VERSION .split ("." )[:2 ]) >= (1 , 26 ):
214+ pytest .skip ("numpy>=1.26 requires openblas" )
209215 docker_exec (container , "yum install -y atlas atlas-devel" )
210216
211217 if op .exists (op .join (WHEEL_CACHE_FOLDER , policy , ORIGINAL_NUMPY_WHEEL )):
@@ -222,7 +228,7 @@ def build_numpy(container, policy, output_dir):
222228
223229 docker_exec (
224230 container ,
225- f"pip wheel -w /io --no-binary=:all: numpy=={ NUMPY_VERSION } " ,
231+ f"pip wheel -w /io --no-binary=numpy numpy=={ NUMPY_VERSION } " ,
226232 )
227233 os .makedirs (op .join (WHEEL_CACHE_FOLDER , policy ), exist_ok = True )
228234 shutil .copy2 (
@@ -297,6 +303,8 @@ def test_build_repair_numpy(
297303 else :
298304 docker_exec (docker_python , "apt-get update -yqq" )
299305 docker_exec (docker_python , "apt-get install -y gfortran" )
306+ if tuple (int (part ) for part in NUMPY_VERSION .split ("." )[:2 ]) >= (1 , 26 ):
307+ docker_exec (docker_python , "pip install meson ninja" )
300308 docker_exec (
301309 docker_python ,
302310 "python -m numpy.f2py -c /auditwheel_src/tests/integration/foo.f90 -m foo" ,
0 commit comments