Closed olekto closed 4 years ago
Fasta headers have 16 character limit for NCBI, you should have gotten a warning when you ran funannotate predict. I think this is because there isn't enough space in the Genbank flat file format. Genbank format is integrated into funannotate as the original goal of pipeline is to create NCBI read submissions, so this won't be changed. Simplest is just rename your fasta headers and run pipeline again.
Not sure but possible work around would be to pass the fasta and GFF files to funannotate update as opposed to the funannotate directory.
I have adjusted the accepted header length to 40, since I don't plan to submit to NCBI. I was not aware that it could hinder parts of funannotate itself.
I guess I might do 'funannotate annotate' first, and then maybe try passing the resulting fasta and GFF files to funannotate update. Then I will need to input the RNA-seq data again, but that is fine.
The update script reads the genbank file. So the header length requirement is because there isn’t enough space in the genbank format to allow for long header names, they run into the next field. So it will generate genbank files with truncated headers which is what is causing the error.
Thank you. I find it a bit unfortunate that I am restricted by the genbank format, when I am not planning to submit to genbank.
Will I get the same issue with functional annotation? I would rather not have to rename my fasta headers for the different species I work with, and then also rename all the different GFF files and such.
You can pass the scripts a GFF and FASTA file -- however, the Genbank flat files it writes won't be readable. Augustus training actually uses an intermediate Genbank flat file format, so long header names will cause the training to fail (at least it used to and not sure if this has been corrected or not).
Sorry for the inconvenience but Genbank was an early design choice -- GFF is not a great format due to lack of standardization in respect to most functional information in a single column. The number of GFF parsers in this code base is numerous, due to every tool outputting a slightly different (in)compatible format. The benefit (and at the same time drawback) of Genbank is that it is highly structured, meaning its much easier to reliably add functional annotation, etc. And biopython has a decent parser.
I originally wrote this tool because Maker based GFF3 output was nearly impossible to reformat for NCBI submission, resulting in hundreds of errors that needed to be manually fixed.
Are you using the latest release? Using 1.7.0
Describe the bug When running funannotate update, I get this error:
Where is this input file made? And can I change how it is made? It seems that the SeqID field and the amount of base pairs overlap. Is there a limit on anything here? It seems SeqID can be up to 30 characters at least, and the bp field should be able to handle several hundred million bases (I hope). Is there an easy way to fix this?
I just want a GFF and some predicted transcripts and proteins, and am not that interested in Genbank files. I do understand that it is need as an intermediate format inside funannotate.
Thank you.
Ole
What command did you issue? funannotate update -i fish --cpus 20 > update.out 2> update.err