biocore / qurro

Visualize differentially ranked features (taxa, metabolites, ...) and their log-ratios across samples
https://biocore.github.io/qurro
BSD 3-Clause "New" or "Revised" License
33 stars 10 forks source link

Update the README to specify which Qurro version should be installed based on your QIIME 2 version #328

Open fedarko opened 1 year ago

fedarko commented 1 year ago

See the discussion here.

Option 1: adjust the "system requirements" section (maybe put this beforehand, and just have the system requirements section talk about python version & browsers?)

What version of Qurro should I install?

If you are using Qurro outside of QIIME 2, or if you are using Qurro within a relatively recent version of QIIME 2 (2020.11 or newer), you should install Qurro version 0.8.0 or newer. The installation commands below should install a version like this by default.

If you're using Qurro with older versions of QIIME 2 (before 2020.11), you will need to install a slightly older version of Qurro that can work with the older versions of pandas included with these QIIME 2 versions. You should install Qurro version 0.7.1.

Option 2: just add an extra parenthetical to the "system requirements" section --

System requirements

If you're using Qurro within QIIME 2, you will need a QIIME 2 version of at least 2020.11. (If you need to install Qurro into an older QIIME 2 version, you can install Qurro version 0.7.1.) [...]

The second option is more elegant, I think, but the first option is more obvious.

ARW-UBT commented 1 year ago

Hello, I have installed qurro in qiime2-2023.5 conda environment, and received this notification:

Successfully uninstalled altair-5.0.0 Successfully installed altair-3.1.0 qurro-0.8.0

Does anybody know whether downgrading altair will interfere with other qiime2 plugins?

Best,

fedarko commented 1 year ago

Based on searching through the QIIME 2 codebase, I think the only command in the core distribution of QIIME 2 that uses Altair (at the moment) is qiime composition da-barplot, which visualizes ANCOM-BC outputs. (There may also be some other community plugins besides Qurro that use Altair, but I'm not aware of any.)

It looks like downgrading Altair causes some problems for qiime composition da-barplot -- when I try running this command in a Q2 2023.5 environment that has altair==3.1.0 installed, the command generates a visualization without crashing (yay) but the visualization is broken (not yay):

good (using altair==5.0.1) bad (using altair==3.1.0)
image image

So, for the time being:

Eesh -- sorry for the trouble! This problem should be resolvable by updating Qurro to work with newer versions of Altair -- this is discussed in #216. I'm swamped with other projects right now, so I can't promise a quick resolution to this problem :(, but hopefully the information above is sufficient in the meantime.

ARW-UBT commented 1 year ago

Hi, Thank you for the detailed help. I will continue tu use qurro with previous releases of q2, since I use da-barplot, too. Best regards

ARW-UBT commented 1 year ago

Hi @fedarko In addition to the Altair issue described above, I would like to point to another change in q2-2023.5 which seems to be relevant to q2-qurro: https://forum.qiime2.org/t/q2-composition-da-barplot/26576/12?u=arwqiime It seems that qurro (in previous q2-versions) cannot read q2 artifacts created by q2-2023.5 (which use archive version '6'). I assume that you are aware of the downgrade incompatibility caused by different archive versions, just to make sure... Best regards,

fedarko commented 1 year ago

Thank you for letting me know—I wasn't aware of that change. Since it seems like this incompatibility exists at the level of QIIME 2, it seems like the workarounds will have to occur outside of Qurro. If you have a QIIME 2 artifact (let's call it X) from QIIME 2 2023.5 or newer that you'd like to use with Qurro in an older version of QIIME 2, I guess the easiest workarounds are:

  1. Export or extract the underlying file from X, and then import it back into QIIME 2 (in the older QIIME 2 environment). This will enable you to use X with Qurro within an older version of QIIME 2.

  2. Export or extract the underlying file from X, as well as your other QIIME 2 artifacts that you would like to provide to Qurro. This will enable you to run Qurro as a standalone tool outside of QIIME 2.

Neither of these workarounds are ideal, I know -- the first will remove provenance information from X, and the second will remove provenance information from X and from your other QIIME 2 artifacts.

The ideal solution to this is problem will be updating Qurro to work with the later version of Altair that QIIME 2 2023.5 uses (#216), which will then allow Qurro to be installed into QIIME 2 2023.5 (and thus negate this problem). The existence of this problem makes this update more urgent—I'll try to set aside some time soon to fix this. Thanks again for the note.

ARW-UBT commented 9 months ago

Hi @fedarko

I have used gemelli (instead of deicode to circumvent the np.int issue) in conda env q2-amplicon-2023.9. I have seen in the RPCA QIIME2 CLI tutorial of gemelli, that qurro has been used to inspect the relationship of contrasting groups of the biplot visualization. I have tried to install qurro in the current q2 environment, but was not successful. May I ask whether the issue from the previous post (Jul 7, 2023) has been already resolve and whether an updated qurro plugin is available? Thanks for your great plugins, Best,

fedarko commented 9 months ago

Thanks @ARW-UBT! I apologize -- it's been a busy period here (wrapping up other research projects, finishing my thesis, other duties...), so I have not yet gotten around to resolving this issue. I'll try to move it higher up in my priorities, since this is causing problems with other tools' workflows.

For what it's worth, I tried to install the latest version of QIIME 2 on my laptop today in order to start testing this -- and of course ran into all sorts of problems with my now-out-of-date version of conda :) So I'm going to have to take a bit to remember how this infrastructure works...

ARW-UBT commented 9 months ago

Hi @fedarko Thank you for your reply, and especially for the great service you provide to the q2 community and users - beside all other things. Qurro's capabilities are unique in q2 (to my knowledge) as it provides access to the contributing features in beta diversity analyses, which is different to q2-ancombc visualizations. And we often use the sample plot in qurro, which adds a unique view to the most-contributing feature to beta diversity analyses. Having said that, I appreciate your willingness to work on a Qurro plugin update. Best,

Laander05 commented 3 months ago

Any update on this @fedarko?

fedarko commented 2 months ago

Sorry -- not yet. I've been swamped with other tasks for now. I will try to get this addressed as soon as I can.