New conda installation scheme

Hi everyone,

The QIIME 2 development team would like to thank everyone for their help this last week identifying when our release instructions were broken, usually a dependency returning 404. We really appreciate your patience as we rebuilt our install files to fix these issues.

As a direct result, we’ve retooled how we distribute these conda environments to prevent these issues from occurring in the future.

Instead of QIIME 2 using what we call an explicit environment file we’re switching to the more modern yaml environment file. The net impact is we will no longer be using very specific builds/URLs. This means that you shouldn’t see 404s while conda downloads QIIME 2’s dependencies if something changes.

Starting with 2017.12, we’ve updated our install instructions, which can be found here.

As an additional upside to these changes, we can now use the latest conda (4.4) once more! :tada:


Before and After

Where you would have typed:

conda create -n qiime2-RELEASE --file https://URL-WE-PROVIDE

You would now type:

wget https://URL-WE-PROVIDE/RELEASE-NAME.yml  # or your favorite tool
conda env create -n qiime2-RELEASE --file RELEASE-NAME.yml

That yaml file (RELEASE-NAME.yml) can be deleted once the environment has been created.


For developers (or advanced users of conda) who are used to using:

conda install --file https://URL-WE-PROVIDE

within an existing environment, you should now use

conda env update --file RELEASE-NAME.yml

to accomplish the same task with the new yaml environment file.


As always, thanks for supporting QIIME 2!

5 Likes

Hey guys, I have two requests.

  1. Can you explicitly state requirements in the installation guide

    • Python minimal version
    • anaconda/miniconda & conda supported versions
  2. The ipykernel version 4.7 has a bug which results duplicate entries in tab autocompletion and it doesn’t work well together with my OCD when I use the jupyter notebook, so I manually downgraded ipykernel to 4.6 and I didn’t see any side effects (yet). Can you edit the install file so that ipykernel==4.6.1? (for the sake of us, the anally-retentive people)

Hi @uria!

Since QIIME 2 is a full conda environment, the Python is already set by that, so it doesn't matter what your system Python is. Could you elaborate further on why you think this would be useful?

Good idea! New issue here.

The install file is generated, so we try to avoid editing it by hand. Making things weirder, ipykernel isn't a direct dependency of ours, it get's pulled in by something else a couple steps removed... We're probably just going to wait for the bug to be fixed upstream, sorry. Downgrading it yourself sounds like a perfect solution in the interim though!

Hello @ebolyen,

In our system, the python interpreters are bundled with several additional environment variables that are changed together with the loaded version of python, thus may collide with qiime2 install scripts.
But you are right, this is a concrete problem I have with our IT, and none of your concern.

An off-topic reply has been split into a new topic: How to install QIIME 2 2017.12

Please keep replies on-topic in the future.