MikkelSchubert / paleomix

Pipelines and tools for the processing of ancient and modern HTS data.
https://paleomix.readthedocs.io/en/stable/
MIT License
43 stars 19 forks source link

pip install seems broken #27

Closed gtrichard closed 4 years ago

gtrichard commented 4 years ago

Hello @MikkelSchubert

I'm trying to make a conda recipe for your tool here: https://github.com/bioconda/bioconda-recipes/pull/20339

The pip installation is broken (issue is coming from the coverage>=4.0 dependency). I think it could be possible to let pip down in terms of dependencies management and let conda do the work since all the dependencies for paleomix are available in conda.

MikkelSchubert commented 4 years ago

Thanks for letting me know about this issue and for working on a conda recipe for paleomix, but I am going to need you to give more information: Your OS/platform and its version, the version of Python and pip used, the command used to install paleomix, and what output you got when you tried to install paleomix using pip.

Cheers, Mikkel

marcelm commented 4 years ago

I added a couple of comments to the bioconda PR: I don’t think that pip install of paleomix is actually broken. The only problem was that coverage (and some other packages) are listed as setup_requires dependencies in paleomix 1.2.14, while this isn’t correctly reflected in the recipe (they need to appear as host: dependencies instead of run: dependencies).

gtrichard commented 4 years ago

As @marcelm pointed out, one of the issue associated to the bioconda recipe is fixed in master but not in 1.2.14. Releasing a new version could alleviate that:

The setup.py script specifies coverage as a setup_requires dependency, so it must be available at installation time. Translated into Conda terms, this means that you need to add it as a host dependency.

The full list of dependencies is at https://github.com/MikkelSchubert/paleomix/blob/v1.2.14/setup.py#L78 : nose>=1.3.0, flexmock>=0.9.7, coverage>=4.0.0

It’s not a good idea to have these development-only dependencies within setup_requires, and this has actually been fixed in the master version of paleomix. But to package 1.2.14, you’ll need to add the above to the host requirements. Or perhaps you can convince the author to release a new version shortly.

gtrichard commented 4 years ago

So the pip is not broken, I got some errors but it was associated to my environment. A clean install solved the issue.

Still, a conda recipe would be nice I guess. I'm still trying to figure out how to make it work.