q2-metaphlan2 install conflict

Hi,

I was trying to install q2-metaphlan2 in qiime2-2019.10 version following instructions for qiime2 and q2-metaphlan2.

However, I got following conflicts massages:
Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: failed with repodata from current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Solving environment: |
Found conflicts! Looking for incompatible packages.
UnsatisfiableError: The following specifications were found to be incompatible with each other:

Package wheel conflicts for:
python=3.6.7 -> pip -> wheel
q2-metaphlan2 -> python[version=’>=3.5,<3.6.0a0’] -> pip -> wheel
Package mmtf-python conflicts for:
q2-metaphlan2 -> matplotlib -> mmtf-python
Package biopython conflicts for:
q2-metaphlan2 -> biopython
Package python conflicts for:
python=3.6.7
Package pip conflicts for:
q2-metaphlan2 -> python[version=’>=3.5,<3.6.0a0’] -> pip
python=3.6.7 -> pip
Package ca-certificates conflicts for:
python=3.6.7 -> openssl[version=’>=1.0.2p,<1.0.3a’] -> ca-certificates
q2-metaphlan2 -> python[version=’>=3.5,<3.6.0a0’] -> openssl[version=’>=1.0.2n,<1.0.3a’] -> ca-certificates
Package setuptools conflicts for:
q2-metaphlan2 -> setuptools
python=3.6.7 -> pip -> setuptools
Package certifi conflicts for:
q2-metaphlan2 -> setuptools -> certifi[version=’>=2016.09|>=2017.4.17’]
python=3.6.7 -> pip -> setuptools -> certifi[version=’>=2016.09|>=2016.9.26’]

I tried conda install --name qiime2-2019.10 q2-metaphlan2 -c fasnicar -c bioconda just installing q2-metaphlan2 inside of qiime2 env same thing happened.

Then I created an empty python=3.5 environment and just installed q2-metaphlan2 without qiime2. This time it worked. However, the latest qiime2 version still require python 3.6 in the yml, right? is there anyway to resolve this?

I am running Python 3.7.3 conda 4.7.12 on mac Mojave version 10.14.6,
Many thanks in advance!!

Hi @ziyuan_he,
I am not the developer of q2-metaphlan2 but I am pinging @fasnicar to see if he can help. Thanks for your patience!

Did you manage to solve this?

Cheers

No, i didn’t. I managed to use the standalone metaphlan2 though, and then I suppose the results can be converted to BIOM and imported into qiime2 but I didn’t go to the route and use other packages. I would be happy to know if there is any solution to the plug-in.

Thanks

@fasnicar sounds like q2-metaphlan2 is incompatible with the latest release of QIIME 2 — could you please take a look. Thanks!

I just tried to install q2-metaphlan and ran into the same problem.

It does indeed seem that q2-metaphlan is requiring python 3.5 somewhere in the recipe, but the latest versions of QIIME 2 are built with 3.6

Here's the relevant part of my conda install error (from running the installation command in the plugin instructions):

UnsatisfiableError: The following specifications were found
to be incompatible with the existing python installation in your environment:

Specifications:

  - q2-metaphlan2 -> python[version='>=3.5,<3.6.0a0']

Your python: python=3.6.7

I tried poke around the different codebases but can't seem to find where in the recipe this is being specified.

My current guess is that the conda packages were built using python 3.5, and @fasnicar hasn't re-built them with python 3.6 since QIIME 2 updated. I tried to go through the conda-build process myself after cloning the metaphlan2-install bitbucket repo and fixing a few bugs in the qiime2-recipe meta.yaml file (spaces between packages and version specification):

conda-build qiime2-recipe/ -s
conda-build qiime2-recipe/ -c bioconda --python 3.6 --output-folder .

(updated qiime2-recipe/meta.yaml file: meta.yaml (1.2 KB))

But got stuck with this error:

abort: http authorization required for https://bitbucket.org/cibiocm/export2graphlan

Here's the full traceback: conda-build-traceback.txt (9.4 KB)

So I'm guessing that somewhere in the package, it relies on a bitbucket repo that's not public.

Anyway, I will probably just go ahead and install an older version of QIIME 2 that uses python 3.5 so that this plugin works. Happy to keep troubleshooting this though!

4 Likes

Hi all,

I’m sorry I didn’t follow up on this earlier.
To make the story short, I did try to rebuild the q2-metaphlan2 package with a newer Python version than 3.5, but the package always failed the building.
Then in our lab we had to migrate from Bitbucket to GitHub, since mercurial will be no longer supported in Bitbucket. Also, we are going to have very soon a new MetaPhlAn release. So the plan will be to try to package the new MetaPhlAn for Qiime2.

Many thanks for your patience

3 Likes

Ok, thanks for the update and no worries @fasnicar. Like I said, I’m happy to continue helping troubleshoot as much as I can - I had to update two of my plugins for Python 3.6 so I’ve been through this!

1 Like

@cduvallet I was wondering if you managed to install the q2-metaphlan plugin, and which Qiime2 version allowed it. Thanks!

Nope, never got it working within qiime. Sorry and good luck!

1 Like