brentp / fishers_exact_test

Fishers Exact Test for Python (Cython)
BSD 3-Clause "New" or "Revised" License
62 stars 21 forks source link

Package fails to install with pip #39

Closed demian1 closed 10 months ago

demian1 commented 2 years ago

I was trying to install the package using pip:

conda create -n env1
conda activate env1
conda install pip
pip install fisher

and I get the following error:

Collecting fisher
  Downloading fisher-0.1.10.tar.gz (22 kB)
  Preparing metadata (setup.py) ... done
Building wheels for collected packages: fisher
  Building wheel for fisher (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py bdist_wheel did not run successfully.
  │ exit code: 1
  ╰─> [30 lines of output]
      /opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/installer.py:27: SetuptoolsDeprecationWarning: setuptools.installer is deprecated. Requirements should be satisfied by a PEP 517 installer.
        warnings.warn(
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/private/var/folders/vl/1y1qg3c911x2hvqbsl7zfpz40000gn/T/pip-install-jz3yj6rv/fisher_d05069e6dbe946e584b816d16d18cac0/setup.py", line 69, in <module>
          setup(**setup_options)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/__init__.py", line 154, in setup
          _install_setup_requires(attrs)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/__init__.py", line 148, in _install_setup_requires
          dist.fetch_build_eggs(dist.setup_requires)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/dist.py", line 826, in fetch_build_eggs
          resolved_dists = pkg_resources.working_set.resolve(
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/pkg_resources/__init__.py", line 777, in resolve
          dist = best[req.key] = env.best_match(
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/pkg_resources/__init__.py", line 1062, in best_match
          return self.obtain(req, installer)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/pkg_resources/__init__.py", line 1074, in obtain
          return installer(requirement)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/dist.py", line 921, in fetch_build_egg
          return fetch_build_egg(self, req)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/installer.py", line 87, in fetch_build_egg
          wheel.install_as_egg(dist_location)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/wheel.py", line 95, in install_as_egg
          self._install_as_egg(destination_eggdir, zf)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/wheel.py", line 103, in _install_as_egg
          self._convert_metadata(zf, destination_eggdir, dist_info, egg_info)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/wheel.py", line 124, in _convert_metadata
          os.mkdir(destination_eggdir)
      FileExistsError: [Errno 17] File exists: '/private/var/folders/vl/1y1qg3c911x2hvqbsl7zfpz40000gn/T/pip-install-jz3yj6rv/fisher_d05069e6dbe946e584b816d16d18cac0/.eggs/numpy-1.22.2-py3.10-macosx-10.9-x86_64.egg'
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed building wheel for fisher
  Running setup.py clean for fisher
  error: subprocess-exited-with-error

  × python setup.py clean did not run successfully.
  │ exit code: 1
  ╰─> [30 lines of output]
      /opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/installer.py:27: SetuptoolsDeprecationWarning: setuptools.installer is deprecated. Requirements should be satisfied by a PEP 517 installer.
        warnings.warn(
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/private/var/folders/vl/1y1qg3c911x2hvqbsl7zfpz40000gn/T/pip-install-jz3yj6rv/fisher_d05069e6dbe946e584b816d16d18cac0/setup.py", line 69, in <module>
          setup(**setup_options)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/__init__.py", line 154, in setup
          _install_setup_requires(attrs)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/__init__.py", line 148, in _install_setup_requires
          dist.fetch_build_eggs(dist.setup_requires)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/dist.py", line 826, in fetch_build_eggs
          resolved_dists = pkg_resources.working_set.resolve(
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/pkg_resources/__init__.py", line 777, in resolve
          dist = best[req.key] = env.best_match(
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/pkg_resources/__init__.py", line 1062, in best_match
          return self.obtain(req, installer)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/pkg_resources/__init__.py", line 1074, in obtain
          return installer(requirement)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/dist.py", line 921, in fetch_build_egg
          return fetch_build_egg(self, req)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/installer.py", line 87, in fetch_build_egg
          wheel.install_as_egg(dist_location)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/wheel.py", line 95, in install_as_egg
          self._install_as_egg(destination_eggdir, zf)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/wheel.py", line 103, in _install_as_egg
          self._convert_metadata(zf, destination_eggdir, dist_info, egg_info)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/wheel.py", line 124, in _convert_metadata
          os.mkdir(destination_eggdir)
      FileExistsError: [Errno 17] File exists: '/private/var/folders/vl/1y1qg3c911x2hvqbsl7zfpz40000gn/T/pip-install-jz3yj6rv/fisher_d05069e6dbe946e584b816d16d18cac0/.eggs/numpy-1.22.2-py3.10-macosx-10.9-x86_64.egg'
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
  ERROR: Failed cleaning build dir for fisher
Failed to build fisher
Installing collected packages: fisher
  Running setup.py install for fisher ... error
  error: subprocess-exited-with-error

  × Running setup.py install for fisher did not run successfully.
  │ exit code: 1
  ╰─> [30 lines of output]
      /opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/installer.py:27: SetuptoolsDeprecationWarning: setuptools.installer is deprecated. Requirements should be satisfied by a PEP 517 installer.
        warnings.warn(
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/private/var/folders/vl/1y1qg3c911x2hvqbsl7zfpz40000gn/T/pip-install-jz3yj6rv/fisher_d05069e6dbe946e584b816d16d18cac0/setup.py", line 69, in <module>
          setup(**setup_options)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/__init__.py", line 154, in setup
          _install_setup_requires(attrs)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/__init__.py", line 148, in _install_setup_requires
          dist.fetch_build_eggs(dist.setup_requires)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/dist.py", line 826, in fetch_build_eggs
          resolved_dists = pkg_resources.working_set.resolve(
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/pkg_resources/__init__.py", line 777, in resolve
          dist = best[req.key] = env.best_match(
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/pkg_resources/__init__.py", line 1062, in best_match
          return self.obtain(req, installer)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/pkg_resources/__init__.py", line 1074, in obtain
          return installer(requirement)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/dist.py", line 921, in fetch_build_egg
          return fetch_build_egg(self, req)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/installer.py", line 87, in fetch_build_egg
          wheel.install_as_egg(dist_location)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/wheel.py", line 95, in install_as_egg
          self._install_as_egg(destination_eggdir, zf)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/wheel.py", line 103, in _install_as_egg
          self._convert_metadata(zf, destination_eggdir, dist_info, egg_info)
        File "/opt/homebrew/Caskroom/miniforge/base/envs/env1/lib/python3.10/site-packages/setuptools/wheel.py", line 124, in _convert_metadata
          os.mkdir(destination_eggdir)
      FileExistsError: [Errno 17] File exists: '/private/var/folders/vl/1y1qg3c911x2hvqbsl7zfpz40000gn/T/pip-install-jz3yj6rv/fisher_d05069e6dbe946e584b816d16d18cac0/.eggs/numpy-1.22.2-py3.10-macosx-10.9-x86_64.egg'
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: legacy-install-failure

× Encountered error while trying to install package.
╰─> fisher

note: This is an issue with the package mentioned above, not pip.
hint: See above for output from the failure.

The conda environment has the following packages installed:

# packages in environment at /opt/homebrew/Caskroom/miniforge/base/envs/env1:
#
# Name                    Version                   Build  Channel
bzip2                     1.0.8                h0d85af4_4    conda-forge
ca-certificates           2021.10.8            h033912b_0    conda-forge
libffi                    3.4.2                h0d85af4_5    conda-forge
libzlib                   1.2.11            h9173be1_1013    conda-forge
ncurses                   6.3                  he49afe7_0    conda-forge
openssl                   3.0.0                h0d85af4_2    conda-forge
pip                       22.0.3             pyhd8ed1ab_0    conda-forge
python                    3.10.2          hea1dfa3_3_cpython    conda-forge
python_abi                3.10                    2_cp310    conda-forge
readline                  8.1                  h05e3726_0    conda-forge
setuptools                60.9.1          py310h2ec42d9_0    conda-forge
sqlite                    3.37.0               h23a322b_0    conda-forge
tk                        8.6.11               h5dbffcc_1    conda-forge
tzdata                    2021e                he74cb21_0    conda-forge
wheel                     0.37.1             pyhd8ed1ab_0    conda-forge
xz                        5.2.5                haf1e3a3_1    conda-forge
zlib                      1.2.11            h9173be1_1013    conda-forge

I have also tried to purge the pip cache before installing, but it does not seem to help either.

Appreciate the help :)

shouldsee commented 1 year ago

seems related to numpy... can you try directly python -m pip install?