PalMuc/TransPi

Error: No module named 'busco'

gabrielnsil opened this issue · 4 comments

Hello Ramón!

Thanks for the great tool that is TransPi.

Currently, I am having some issues related to BUSCO. After exhaustive troubleshooting, it seems the condaEnv that contains BUSCO is not being activated during the execution of the pipeline.

I am using the versions:
Nextflow version 21.04.1
TransPi - Transcriptome Analysis Pipeline v1.3.0-rc

The Environment is created and I can navigate to the folder and find BUSCO:

Creating Conda env: -c conda-forge bioconda::bowtie2=2.4.2=py36hff7a194_2 bioconda::samtools=1.11=h6270b1f_0 [cache /home/porifera/TransPi/condaEnv/env-ef941e5448d01c1e0c7325e5aa0c3700]
Creating Conda env: -c conda-forge bioconda::busco=4.1.4=py_2 [cache /home/porifera/TransPi/condaEnv/env-e8d22bfae5e32eac973114001910dada]
Creating Conda env: -c conda-forge bioconda::cd-hit=4.8.1 bioconda::exonerate=2.4 bioconda::blast=2.11.0 [cache /home/porifera/TransPi/condaEnv/env-0761ea60e49e247680763dddcc8ef240]

I am having the following error:

Command output:
  -- Starting BUSCO --

No module named 'busco'
There was a problem installing BUSCO or importing one of its dependencies. See the user guide and the GitLab issue board (https://gitlab.com/ezlab/busco/issues) if you need further assistance.

  -- DONE with BUSCO --

Command error:
  cp: cannot stat ‘SRR4423080.Trinity.bus4/short_summary.*.SRR4423080.Trinity.bus4.txt’: No such file or directory

Work dir:
 
/home/porifera/TransPi/work/1d/383229a8419abad57e7485ee281de2

Tip: you can replicate the issue by changing to the process work dir and entering the command `bash .command.run`

It seems that TransPi is searching the PATH of my user and executing the BUSCO installed on my server (which is currently broken… The no module named ‘busco’ error message appears when I execute from terminal).

Any thoughts? My log can be found at:
transpi_out.txt

(Sorry for my English, if something is not clear I can try to explain better)

Best Wishes,
Gabriel

Hello @gabrielnsil,

Yes, it may be that TransPi is trying to use the BUSCO installed in your server but that is very odd and should not happen. Maybe your local busco is located higher in the PATH and is using that one instead of the conda env.

Can you activate the individual env of BUSCO created by TransPi and call BUSCO normally?

conda activate /home/porifera/TransPi/condaEnv/env-e8d22bfae5e32eac973114001910dada

busco -h

Let me know.

Best,
Ramón

Hello Ramón, thank you for the reply

Yes, I can activate the individual condaEnv of BUSCO created by TransPi but the No module named 'busco' persists. The command which busco shows the path for the BUSCO installed in my server, even with this individual condaEnv activated. I already reinstalled TransPi from scratch 3 times but the problem continues.

Curiously, with the condaEnv activated and using the which command, I observed that some tools called are from my server while others are from the condaEnv. It is normal?
Example:

which fuse-ranges
~/TransPi/condaEnv/env-e8d22bfae5e32eac973114001910dada/bin/fuse-ranges

which nhmmer
/home/linuxbrew/.linuxbrew/bin/nhmmer

I really have no more ideas on how to go from here, maybe clean up the $PATH variable prior to the execution of TransPi?

Thank you for your time,
Gabriel

Hello,

I think the issue is in the order of your $PATH. It looks that the installation of your local busco is higher. You can remove the specific address of the local busco from $PATH. But be careful not to remove others that are essential for the system. Is the local busco under your linuxbrew installation?

Best,
Ramón

Hello,

I think the issue is in the order of your $PATH. It looks that the installation of your local busco is higher. You can remove the specific address of the local busco from $PATH. But be careful not to remove others that are essential for the system. Is the local busco under your linuxbrew installation?

Best, Ramón

I've also encountered the same "No module named 'busco'" problem and it is indeed the result of incorrect order of environment variable. Add a command of

export PATH="/home/$USER/miniconda3/envs/BUSCO/bin"

will help to solve this problem.
Thanks for your helping!

Best,
Ryann