Skip to content

pip install fails due to case-sensitivity for Cython vs cython #272

@Didou09

Description

@Didou09

Starting from a quasi empty conda env, I try to install tofu with pip.

I get an error about Cython, from the setup.py.
Cython is not known, because cython is listed in the dependencies.

Note: installing with pip into a conda env works only if we use the pip that installed by conda into that same env (check before running pip install):

(base) [ DV226270 spica ~ ] conda create -n empty python=3.6 pip ipython
(base) [ DV226270 spica ~ ] conda activate empty
(empty) [ DV226270 spica ~ ] which pip
~/.conda/envs/empty/bin/pip
(empty) [ DV226270 spica ~ ] pip install tofu
Collecting tofu
  Downloading https://files.pythonhosted.org/packages/5a/06/cbb85978151b0854bd2d2f022cfad1ff15a77db88593aeb236cf671bcd89/tofu-1.4.1.tar.gz (19.6MB)
     |\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 19.6MB 12.6MB/s 
    ERROR: Command errored out with exit status 1:
     command: /Home/DV226270/.conda/envs/empty/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-aptzshyh/tofu/setup.py'"'"'; __file__='"'"'/tmp/pip-install-aptzshyh/tofu/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-install-aptzshyh/tofu/pip-egg-info
         cwd: /tmp/pip-install-aptzshyh/tofu/
    Complete output (5 lines):
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-install-aptzshyh/tofu/setup.py", line 14, in <module>
        import Cython as cth
    ModuleNotFoundError: No module named 'Cython'
    ----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

In ipython, importing cython and Cython does not make a difference (except the file from which they are loaded, Cython is the init.py, cython is cython.py).
=> Replace all Cython occurences by cython

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions