galaxyproject / tools-iuc

Tool Shed repositories maintained by the Intergalactic Utilities Commission
https://galaxyproject.org/iuc
MIT License
160 stars 421 forks source link

Issues with multiple Qiime wrappers related to biom-format 2.1.5 lastest build (py27_3) #1570

Open arbernard opened 6 years ago

arbernard commented 6 years ago

Hi everyone,

I have an issue related to both the Qiime wrappers on the tools-iuc repo and to the Qiime Bioconda recipe (or rather one of its dependencies) so I'm not sure if this is the appropriate place to discuss it.

So, here is my issue:

Yesterday, I wanted to do a PR to fix some Datatype class not found errors in a few Qiime wrappers but even if the planemo tests on my local machine were running fine I stumbled upon issues during the travis build on my fork.

I checked the Travis log and the build was failing because it was detecting mismatches between test result files and the expected result files specified in the wrappers.

Nothing strange here... except that it was reporting mismatches for tools that I hadn't modified at all on my branch :/

Took me a while to troobleshoot the origin of the issue but it appears that the problem lies in the biom-format 2.1.5 bioconda recipe that is a prerequisite of the Qiime 1.9.1 recipe (which are both automatically installed if conda is activated on a given Galaxy instance that uses the Qiime IUC wrappers).

Indeed, if the tests were Ok on my local machine it was because my conda environment for Qiime 1.9.1 was using the py27_1 build of the biom-format 2.1.5 recipe while, in the meantime, they are failing with travis (or on new Galaxy instance I used for testing) because it is using the latest py27_3 build of the biom-format 2.1.5 recipe.

With this recent update of the biom-format recipe, every Qiime tools that used to generate biom1 (json) output files are now creating biom2 (binary) output files.

I haven't checked if this format change is causing issues in workflows that chains several of the affected tools yet but it obviously makes planemo tests and travis builds fail.

So, I don't know what is the best solution here.

Is it possible to request a specific build of a given prerequisite in a recipe ? (to revert to the previous situation where Qiime output files were not affected/modified)

Or should we try to deal with the changes introduced in the latest build of the biom-format 2.1.5 recipe ?

As discussed with @shiltemann yesterday on Gitter, adapting to the changes would at least mean that:

There might be additional changes that I don't remember right now.

What do you think is the best solution here ?

ping @bebatut, @shiltemann, @bgruening

nsoranzo commented 6 years ago

@arbernard Can you open a WIP pull request, so that we can easily have a look at the Travis logs?

arbernard commented 6 years ago

@nsoranzo Ok, I'll create a WIP PR.