conda-forge / matplotlib-feedstock

A conda-smithy repository for matplotlib.
BSD 3-Clause "New" or "Revised" License
22 stars 58 forks source link

Error installing on OS X Ventura 13 #351

Open Colelyman opened 1 year ago

Colelyman commented 1 year ago

Solution to issue cannot be found in the documentation.

Issue

It seems like there is an error installing the matplotlib-base package on OS X Ventura 13 (possibly because the formatting of the version type of OS X has changed...?).

Here is the output of installing the crispresso2 package (in the bioconda channel, and I am a maintainer of the package).

UnsatisfiableError: The following specifications were found to be incompatible with each other:

Output in format: Requested package -> Available versions

Package python conflicts for:
crispresso2 -> bowtie2 -> python[version='2.6.*|2.7.*|3.5.*|3.6.*|>=3.5,<3.6.0a0|3.4.*|>=3.11,<3.12.0a0|>=3.7.1,<3.8.0a0|3.10.*|3.9.*|3.8.*|3.7.*']
python=3
crispresso2 -> python[version='>=2.7,<2.8.0a0|>=3.10,<3.11.0a0|>=3.9,<3.10.0a0|>=3.6,<3.7.0a0|>=3.8,<3.9.0a0|>=3.7,<3.8.0a0']The following specifications were found to be incompatible with your system:

  - feature:/osx-64::__osx==13.0=0
  - feature:|@/osx-64::__osx==13.0=0
  - crispresso2 -> matplotlib-base -> __osx[version='>=10.11|>=10.12']

Your installed version is: 13.0

Note that this occurs on the M1 and M2 Apple Silicon chips, but is using the CONDA_SUBDIR=osx-64 environment variable to install the x86 versions of the packages. Also note that everything installs fine on M1 and M2 architecture with OS X Monterey 12.

Has anyone else run into this issue? Does it have something to do with the MACOSX_DEPLOYMENT_TARGET (found here in the recipe)?

I'm happy to submit a PR with a fix, but not sure where to start. If anyone has ideas on what to try, please let me know!

Installed packages

Issue occurs when installing package in new environment, so no packages are installed.

Environment info

active environment : base
    active env location : /Users/tracieluong/miniconda3
            shell level : 1
       user config file : /Users/tracieluong/.condarc
 populated config files : /Users/tracieluong/.condarc
          conda version : 23.1.0
    conda-build version : not installed
         python version : 3.10.9.final.0
       virtual packages : __archspec=1=arm64
                          __osx=13.0=0
                          __unix=0=0
       base environment : /Users/tracieluong/miniconda3  (writable)
      conda av data dir : /Users/tracieluong/miniconda3/etc/conda
  conda av metadata url : None
           channel URLs : https://repo.anaconda.com/pkgs/main/osx-arm64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/osx-arm64
                          https://repo.anaconda.com/pkgs/r/noarch
                          https://conda.anaconda.org/conda-forge/osx-arm64
                          https://conda.anaconda.org/conda-forge/noarch
                          https://conda.anaconda.org/bioconda/osx-arm64
                          https://conda.anaconda.org/bioconda/noarch
          package cache : /Users/tracieluong/miniconda3/pkgs
                          /Users/tracieluong/.conda/pkgs
       envs directories : /Users/tracieluong/miniconda3/envs
                          /Users/tracieluong/.conda/envs
               platform : osx-arm64
             user-agent : conda/23.1.0 requests/2.28.1 CPython/3.10.9 Darwin/22.1.0 OSX/13.0
                UID:GID : 502:20
             netrc file : None
           offline mode : False
dopplershift commented 1 year ago

I'm installing fine locally on macOS 13.5. Can you try just installing matplotlib-base on your system? If that fails, does it work without bioconda?

Colelyman commented 1 year ago

Thanks @dopplershift! Interestingly enough installing just matplotlib-base (even with bioconda) works just fine. Do you know if there is an different check when matplotlib-base is installed individually or as a dependency?

dopplershift commented 1 year ago

Nope, the check is always the same. You might try doing the install of crispresso2 using mamba, which is conda-compatible but tends to give better diagnostics for conflicts. Also looking at the current output, you might want to poke around at the dependencies for bowtie2.