Skip to content

BUG: scipy-1.14.1-cp312-cp312-macosx_12_0_arm64 wheel rejected by pip check #21436

Open
@duncanmmacleod

Description

@duncanmmacleod

Describe your issue.

The wheel installed by pip install scipy==1.14.1 on an arm64 macos machine running macos 12.7.5 is rejected by pip check because the Tag metadata isn't recognised:

$ uname -a
Darwin builder-osx-7.ligo.org 21.6.0 Darwin Kernel Version 21.6.0: Wed Apr 24 06:05:12 PDT 2024; root:xnu-8020.240.18.708.4~1/RELEASE_ARM64_T8101 arm64
$ sw_vers
ProductName:    macOS
ProductVersion: 12.7.5
BuildVersion:   21H1222
$ conda create -n test -c conda-forge python=3.12 pip
$ conda activate test
$ pip install scipy
$ pip list
Package    Version
---------- -------
numpy      2.1.0
pip        24.2
scipy      1.14.1
setuptools 72.2.0
wheel      0.44.0
$ pip check
scipy 1.14.1 is not supported on this platform

The issue, as I understand it, is that the Tag metadata for the wheel doesn't match any of the tags understood by the packaging library (vendored inside pip):

$ grep Tag ${CONDA_PREFIX}/lib/python3.12/site-packages/scipy-*.dist-info/WHEEL
Tag: cp312-cp312-macosx_12_3_arm64
$ python3 -c "import pprint; from pip._vendor.packaging.tags import mac_platforms; pprint.pprint(list(mac_platforms()))";
['macosx_12_0_arm64',
 'macosx_12_0_universal2',
 'macosx_11_0_arm64',
 'macosx_11_0_universal2',
 'macosx_10_16_universal2',
 'macosx_10_15_universal2',
 'macosx_10_14_universal2',
 'macosx_10_13_universal2',
 'macosx_10_12_universal2',
 'macosx_10_11_universal2',
 'macosx_10_10_universal2',
 'macosx_10_9_universal2',
 'macosx_10_8_universal2',
 'macosx_10_7_universal2',
 'macosx_10_6_universal2',
 'macosx_10_5_universal2',
 'macosx_10_4_universal2']

i.e. there is no valid macosx_12_3_arm64 platform.

I have no idea whether this is a bug in pip/packaging or an issue with that wheel.

Reproducing Code Example

conda create -n test -c conda-forge python=3.12 pip
conda activate test
pip install scipy
pip check

Error message

scipy 1.14.1 is not supported on this platform

SciPy/NumPy/Python version and system information

1.14.1 2.1.0 sys.version_info(major=3, minor=12, micro=5, releaselevel='final', serial=0)
/Users/duncanmacleod/opt/conda/envs/test/lib/python3.12/site-packages/scipy/__config__.py:154: UserWarning: Install `pyyaml` for better output
  warnings.warn("Install `pyyaml` for better output", stacklevel=1)
{
  "Compilers": {
    "c": {
      "name": "clang",
      "linker": "ld64",
      "version": "15.0.0",
      "commands": "cc"
    },
    "cython": {
      "name": "cython",
      "linker": "cython",
      "version": "3.0.11",
      "commands": "cython"
    },
    "c++": {
      "name": "clang",
      "linker": "ld64",
      "version": "15.0.0",
      "commands": "c++"
    },
    "fortran": {
      "name": "gcc",
      "linker": "ld64",
      "version": "12.1.0",
      "commands": "gfortran"
    },
    "pythran": {
      "version": "0.16.1",
      "include directory": "../../../../../../private/var/folders/hw/1f0gcr8d6kn9ms0_wn0_57qc0000gn/T/pip-build-env-x9rig1ei/overlay/lib/python3.12/site-packages/pythran"
    }
  },
  "Machine Information": {
    "host": {
      "cpu": "aarch64",
      "family": "aarch64",
      "endian": "little",
      "system": "darwin"
    },
    "build": {
      "cpu": "aarch64",
      "family": "aarch64",
      "endian": "little",
      "system": "darwin"
    },
    "cross-compiled": false
  },
  "Build Dependencies": {
    "blas": {
      "name": "scipy-openblas",
      "found": true,
      "version": "0.3.27.dev",
      "detection method": "pkgconfig",
      "include directory": "/private/var/folders/hw/1f0gcr8d6kn9ms0_wn0_57qc0000gn/T/cibw-run-ghg42m3n/cp312-macosx_arm64/build/venv/lib/python3.12/site-packages/scipy_openblas32/include",
      "lib directory": "/private/var/folders/hw/1f0gcr8d6kn9ms0_wn0_57qc0000gn/T/cibw-run-ghg42m3n/cp312-macosx_arm64/build/venv/lib/python3.12/site-packages/scipy_openblas32/lib",
      "openblas configuration": "OpenBLAS 0.3.27.dev DYNAMIC_ARCH NO_AFFINITY neoversen1 MAX_THREADS=64",
      "pc file directory": "/Users/runner/work/scipy/scipy"
    },
    "lapack": {
      "name": "scipy-openblas",
      "found": true,
      "version": "0.3.27.dev",
      "detection method": "pkgconfig",
      "include directory": "/private/var/folders/hw/1f0gcr8d6kn9ms0_wn0_57qc0000gn/T/cibw-run-ghg42m3n/cp312-macosx_arm64/build/venv/lib/python3.12/site-packages/scipy_openblas32/include",
      "lib directory": "/private/var/folders/hw/1f0gcr8d6kn9ms0_wn0_57qc0000gn/T/cibw-run-ghg42m3n/cp312-macosx_arm64/build/venv/lib/python3.12/site-packages/scipy_openblas32/lib",
      "openblas configuration": "OpenBLAS 0.3.27.dev DYNAMIC_ARCH NO_AFFINITY neoversen1 MAX_THREADS=64",
      "pc file directory": "/Users/runner/work/scipy/scipy"
    },
    "pybind11": {
      "name": "pybind11",
      "version": "2.12.0",
      "detection method": "config-tool",
      "include directory": "unknown"
    }
  },
  "Python Information": {
    "path": "/private/var/folders/hw/1f0gcr8d6kn9ms0_wn0_57qc0000gn/T/cibw-run-ghg42m3n/cp312-macosx_arm64/build/venv/bin/python",
    "version": "3.12"
  }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    Official binariesItems related to the official SciPy binaries, including wheels and vendored libsdefectA clear bug or issue that prevents SciPy from being installed or used as expected

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions