Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

error: ete3 not installed #3

Open
Xueliang24 opened this issue Aug 1, 2022 · 7 comments
Open

error: ete3 not installed #3

Xueliang24 opened this issue Aug 1, 2022 · 7 comments

Comments

@Xueliang24
Copy link

I use singularity to install funannotate by
singularity pull docker://reslp/funannotate:1.8.1

When funannotate check --show-versions, it showed
Traceback (most recent call last):
File "/usr/local/bin/ete3", line 6, in
from ete3.tools.ete import main
File "/usr/local/lib/python3.7/dist-packages/ete3/tools/ete.py", line 55, in
from . import (ete_split, ete_expand, ete_annotate, ete_ncbiquery, ete_view,
File "/usr/local/lib/python3.7/dist-packages/ete3/tools/ete_view.py", line 48, in
from .. import (Tree, PhyloTree, TextFace, RectFace, faces, TreeStyle, CircleFace, AttrFace,
ImportError: cannot import name 'TextFace' from 'ete3' (/usr/local/lib/python3.7/dist-packages/ete3/init.py)

even I install ete3 by pip and set environmental PATH, it also happened.

@reslp
Copy link
Owner

reslp commented Aug 1, 2022

Hi,

thank you for using this container! The issue with ete3 in funannotate is known for some time:

nextgenusfs/funannotate#249
etetoolkit/ete#195

there are some workarounds for this (one solution is explained in the first link), however it still can cause problems. Maybe this is what you already tried. In general most of funannotate should work fine though even without ete3. If I recall correctly, ete3 is only used for one specific thing during funannotate compare.

In general I would recommend to use a newer version of funannotate (a lot has changed since v1.8.1) and some other things like access to several annotation databases may not work anymore in older versions.

all the best,

Philipp

@Xueliang24
Copy link
Author

Thanks for your quick response!
Because I met a problem when I wanna install funannotate by conda. The augustus compilation error could not be solved.
So I wanna to use funannotate by singularity.
May I use singularity pull docker://reslp/funannotate:lastest to use newer version?

@reslp
Copy link
Owner

reslp commented Aug 1, 2022

Yes, you well get a more up to date version. singularity pull docker://reslp/funannotate:lastest should give you 1.8.7 for example. However 1.8.11 is the most recent version (for which I do not have a container yet). But official funannotate also offers containers, you can check out the funannotate Github page for more info on that.

@Xueliang24
Copy link
Author

Oh!Thanks

@Xueliang24 Xueliang24 reopened this Aug 1, 2022
@Xueliang24
Copy link
Author

Xueliang24 commented Aug 1, 2022

Could you guide me how to set the PATH of gmes_petal.pl or GENEMARK in the sandbox built from funannotate lastest?
Now I set export GENEMARK_PATH="${GENEMARK_PATH:-"/venv/opt/gmes_petap"}" in the /.singularity.d/env/10-docker2singularity.sh.
Meanwhile I set echo "export GENEMARK_PATH=/venv/opt/gmes_petap" >/venv/etc/conda/activate.d/gmes_petap.sh and echo "unset GENEMARK_PATH" >/venv/etc/conda/deactivate.d/gmes_petap.sh.
Also, I used chmod -R 777 GENEMARK software and perl change_path_in_perl_scripts.pl "/venv/bin/perl" according to the which perl.
But it still failed.

@Xueliang24
Copy link
Author

What the author said in thenextgenusfs/funannotate/issues/687 might be right.
Emm. I run funannotate test -t predict --cpus 10 and it was successful. So likely the funannotate check is just not accurate in this case because it isn't looking at the ENV variables

@reslp
Copy link
Owner

reslp commented Aug 2, 2022

The PATH should already be set inside the container, so there is nothing you should have to do there. Try running env inside the container to see all the variables. To make Genemark work, you have to follow the instructions in the README file. This is necessary because GENMARK_PATH is set to a predefined variable. However, you can also run funannotate without GeneMark, if it is not there funannotate should realize and not use it to predict genes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants