BackofenLab / IntaRNA

Efficient target prediction incorporating accessibility of interaction sites
https://backofenlab.github.io/IntaRNA/
Other
46 stars 27 forks source link

IntaRNA --version does not reflect the installed conda package version? #218

Closed ChristianRohde closed 5 months ago

ChristianRohde commented 6 months ago

Hi,

I installed IntaRNA with "conda create --name IntaRNA bioconda::intarna". It looks fine if I check the installed packages:

conda list -n IntaRNA
packages in environment at /home/user/conda/envs/IntaRNA:
Name                    Version                   Build  Channel
boost-cpp                 1.78.0               h5adbc97_2    conda-forge
intarna                   3.4.0           pl5321h21ec9f0_1    bioconda
python                    3.10.14              h955ad1f_1  
viennarna                 2.6.4           py310pl5321h6cc9453_1    bioconda

I get a different answer if I activate the environment and run "IntaRNA --version". This tells me the follwing:

IntaRNA 2.3.1
 using Vienna RNA package 2.4.11 and boost 1.68.0

Do you have any ideas what is going wrong here?

Best, Christian

martin-raden commented 6 months ago

Hi Christian,

did you activate the environment before calling "IntaRNA --version" ?

Try

conda activate IntaRNA
IntaRNA --version

You can check the active conda environment using conda info

Hope that helps, best, Martin

martin-raden commented 6 months ago

PS. most likely your conda base installation features an old IntaRNA version or an old IntaRNA is installed in your system in one of the default PATHs and thus called if you do not activate the new conda environment...

ChristianRohde commented 6 months ago

OK, you are right: I do have old version of IntaRNA installed in the background. This is used if I do not activate my conda env. In addition even if I activate the new conda env this old version is still used and I have to point to the executable using the full path to make sure to use it:

(base) user@server:~$ conda activate IntaRNA
(IntaRNA) user@server:~$ IntaRNA --version
IntaRNA 2.3.1
 using Vienna RNA package 2.4.11 and boost 1.68.0
(IntaRNA) user@server:~$ /home/user/conda/envs/IntaRNA/bin/IntaRNA --version
IntaRNA 3.4.0
 using Vienna RNA package 2.6.4 and boost 1.78.0

A similar thing happens within R: loading the environment was not enough. In addition I have to point and load the python within that environment. I mean this makes sense, I just thought loading an environment would automatically do this.

library(reticulate)
use_condaenv(condaenv = "/home/user/conda/envs/IntaRNA", conda = "auto", required = NULL)

Sys.setenv(RETICULATE_PYTHON="/home/user/conda/envs/IntaRNA/bin/python")
reticulate::py_config()

Thank you for your help.

Best, Christian

martin-raden commented 5 months ago

Hi Christian,

sorry for the late reply. You are right, eventually conda should deal with that and set pathes accordingly with higher priority to your environment installation. Maybe your conda installation is corrupted?!

I will close this issue, since it is more conda related and not specific to IntaRNA. But keep posting in case you have further results or feedback!

Best, Martin