Repository navigation
Releases: ncbi/egapx
Release list
v1.0.1
- Fixed an issue where long reads data wasn't being properly passed to gene prediction step in some cases
- Fixed an issue where short RNA-seq library strandedness identification wasn't properly passed to downstream tasks
- Fixed an issue where gnomon_biotype was incorrectly converting some single-exon genes to pseudogenes
- Fixed issues where long reads and proteins alignment stats weren't reported correctly
- Updated chainer parameters to match EGAP
- Updated long read post-alignment filter to match EGAP
- Updated diamond parameters in orthology plane to match EGAP
- Updated prepare_submission to fix more product names causing validation errors
- Removed human ALT/PATCH and readthrough proteins from ortholog reference set
- Known issues
- EGAPx will not work properly on Nextflow v26
- Missing or errors in read stats when using local data
- EGAPx will abort if one or more RNAseq runs is assigned suspect by rna_strandedness task
- EGAPx will sometimes fail if using very large long RNA-seq datasets due to inadequate data splitting
v1.0
- Added MultiQC report to output
- Updated reference datasets, including protein sets for molluscs and tunicates
- Added additional protein alignment filtering steps to reduce the effect of poor models from taxonomically-close species
- Updated Rfam models detected in cmsearch, including eukaryotic models from RNaseP and SRP clans
- Added detection and warnings for EGAPx config files changes with new software releases
- Added alert when attempting to run an ENA genome through prepare_submission (NCBI does not process annotations for ENA/DDBJ assemblies)
- Added output with chromosome:contig mapping #219
- Fixed an issue where SRA reads stored in a local cache were not used in EGAPx run if the cache was relocated post-download #257
- Fixed an issue where EGAPx runs fail due to multiple users on the same compute cluster generating lockfile collisions #247 #248
- Fixed a rare issue where the incorrect set of proteins was retrieved and aligned as evidence to the target genome
- Added --busco-downloads parameter to egapx.py to enable specification of BUSCO lineage downloads directory
- Documentation updates
- MultiQC report
- Clarify unique library names should be used for each long read library #260
- Known issues:
- EGAPx will not work properly on Nextflow v26
- EGAPx MultiQC report has some data formatting issues
- Missing or errors in read stats when using local data
- protein stats are omitted pending some bug fixes in the calculations
- EGAPx will abort if one or more RNAseq runs is assigned suspect by rna_strandedness task
v0.5.2
v0.5.1
-
Revised CPU, memory, and timeout settings. See here for relevant documentation
-
Fixed a formatting issue when providing private long reads (not from SRA) #198 #188
-
Fixed an issue when downloading files from FTP in online mode #214
-
Added support for read-only pre-existing BUSCO installs #211
-
Added support for long reads in FASTQ format #201
-
Fixed an issue where cmsearch does not have permissions to write to tmp space location #207
-
Fixed a crash when genome FASTA starts with '\n' #182
-
Fixed an issue where EGAPx pulls SRA files not explicitly provided in the input YAML if they were part of a SRA experiment (SRX) containing multiple SRA runs
-
Removed redundant align_sort tasks in gnomon plane
-
Adjusted align_sort to use less memory when sorting large datasets
-
Adjusted make_winmask_stats parameters to accommodate running on large genomes
-
Revised egapx.py downloads to use HTTPS instead of FTP
-
Revised logic to read modifiers ([qual=value] style) in protein FASTA deflines to make taxids available in gnomon reports
-
Fixed an issue where rRNAs shorter than their expected size were triggering FATAL errors in prepare_submission
- These rRNAs are now marked up as both /pseudo and partial
-
Documentation updates
- Clarified the minimum requirements for an EGAPx run (genome, taxid)
- Updated documentation for CPU and memory settings
- Updated documentation for annotation submissions
v0.5.0
-
Added option to use prosplign instead of miniprot to align proteins as annotation evidence
- Prosplign is most likely to help in organisms with less RNA-seq, and/or those that are more distant from other genomes with protein sets
- Prosplign is more computationally expensive than miniprot
-
Added new protein sets with many more species and protein selection logic
- User-specified number of taxa to use from a protein set, selecting the taxonomically-closest
- Can exclude protein sets by taxid
- Can supplement default sets with user-provided proteins
-
Added tRNA feature annotation using tRNAscan
-
Added rRNA feature annotation using Rfam
-
Added other short ncRNA feature annotation (with the exception of miRNAs) using cmsearch
-
Revisions to ortholog reference names to better meet GenBank standards
-
Improvements for plant gene naming
-
Adjust CPU settings for some tasks (e.g. STAR) to improve efficiency
-
Reduce footprint of EGAPx working directories
-
Fixed an issue where minimap2 fails by renaming long reads #166
-
Fixed an issue where BUSCO wasn't producing output in some situations
-
Fixed an issue where EGAPx failed when sequence titles are absent in genome FASTA files #173
-
Fixed an issue where EGAPx failed when run with no RNA-seq
-
Fixed an issue where EGAPx was downloading extra SRA runs
-
Added asn_adjust to image, which can be used to edit ASN in some situations
-
Improvements to prepare_submission for GenBank submission:
- annotation provider can be specified GP-40924
- handling for multispecies BioProjects
- outputs final GFF3 file which can incorporate adjustments to structural/functional annotation
-
Documentation updates
- Added documentation for new features
- Added documentation for recommended genome FASTA formatting
- Updated documentation for recommended RNAseq formatting
- Clarified EGAPx does not annotate organelles
- Added language about prepare_submission errors that can be ignored
- Added EGAPx diagram
v0.4.1-alpha
Bugfixes
- Fixed formatting for long reads identifiers that were causing issues in chainer #121
- Fixes for prepare_submission for GenBank-compliance
- Fixed an error where extra SRA runs were incorrectly retrieved and used when providing explicit SRA accessions in some situations
- Fixed an issue on AWS to prevent repeated HTTP connections causing connection timeout errors on tasks with periodic logging
- Fixed escape slashes triggering errors in sra_uids_query #144
v0.4.0-alpha
New features
- Added support for long-read RNA sequencing (e.g. PacBio, ONT) as evidence for annotation. This can increase isoform diversity and model accuracy
- uses long_reads: YAML parameter
- supports long reads from SRA or local files
- Added prepare_egapx_gb_submission.py to support annotation submission to GenBank for both new and existing assemblies.
- The script will produce submission files, however they are not yet GenBank submission-compliant. A subsequent patch release (likely 0.4.1) will produce GenBank-compliant files.
- Existing assemblies must have been processed through GenBank (not EMBL or DDBJ) and not submitted by a different group.
- Added quality assessments:
- BUSCO for annotation quality evaluation, automatically run on one longest isoform per gene with the closest available BUSCO lineage dataset. This is equivalent to BUSCO reporting on NCBI RefSeq annotations
- Contamination report from gnomon_biotype to help identify potential assembly problems
- Gnomon annotation reports summarizing evidence for each model: gnomon_report.txt, gnomon_quality_report.txt
- Reporting of RNA-seq model support in final annotation as part of the model_evidence attribute in GFF3
- Added additional outputs:
- Added summary of RNA-seq datasets at beginning of EGAPx run
- Added warning message when >20 RNAseq datasets are in-scope using SRA entrez query, to help prevent runs with unexpectedly large amounts of data. Use --force to override
- STAR BAM alignment files. Use export_bam: true to produce BAM output
- Parameter changes:
- Updated short-read RNA sequencing specification to short_reads: YAML parameter, to better distinguish from the long_reads option
- Data model revisions:
- Revised Ig/TCR segment annotations to omit CDS and pseudogenes to use mRNA instead of individual exon features for better compatibility with GenBank submission
- Gene naming improvements
- Increased representation of alternative splicing based on RNA-seq support
- Adopted some RefSeq filtering criteria:
- recategorization of some transcripts as 'transcript' or 'misc_RNA' when identified as NMD candidates
- filtering out weakly supported two-exon lncRNAs
- filtering out alternate splice isoforms that lack support for all introns from either a long transcript or a single RNA-seq sample or run
- Additional improvements:
- Updated to miniprot-0.15 to improve handling of protein alignments in tandem gene duplications
- Added genome masking using WindowMasker, which is used to exclude regions from Gnomon ab initio gene prediction. This does not impact gene prediction based on protein or transcript alignment evidence
- Added logic to include some models predicted solely by ab initio logic based on high coverage alignments to SwissProt proteins, referred to as "secondary support". This helps identify some genes that lack supporting transcript or protein alignments to the genome
- Support Data updates:
- Added target protein set for Echinoderms
- Added ortholog reference files for Bombyx mori and Tribolium castaneum, used for orthology calls and nomenclature in Lepidoptera and Coleoptera, respectively
- Updated SwissProt protein support data to latest release and to remove some proteins with names that do not conform to GenBank standards
- Documentation updates
- Revised docs to include new features
- Added Table of Contents
- Added FAQ
Bugfixes
v0.3.2-alpha
v0.3.1-alpha
Release 0.3.0-alpha
New features integrated from RefSeq EGAP:
- ortholog analysis vs a pre-defined reference species
- refinement of gene biotype (protein-coding, pseudogene, lncRNA) based on annotation and orthology properties
- Assignment of gene symbols, names, and protein names based on orthology or comparison to SwissProt proteins
- Better annotation of single-exon protein-coding genes based on well supported proteins
- Automatic selection of organism symbol format, ortholog reference species, protein reference sets, maximum intron size, and some annotation-related parameters
- Added target protein sets for plant clades and additional vertebrates
- Integration of structural and functional annotation into final output, including: ASN.1, GFF, GTF, mRNA FASTA, CDS FASTA, protein FASTA
Execution improvements:
- Added versioning for EGAPx (egapx.py runner, Docker/Singularity images)
- Added check for user input files
- Improved support for pre-download of reference files
- Updated STAR to produce csi index instead of bai index to work for large sequences
- Increased time limit for chainer
- Updated chunk size for miniprot tasks to 25k
- Enable skipping gnomon training when parameters from closely-related taxa are available
- Relocated Python requirements.txt to repo root
Future plans:
- Workflow for GenBank submission. Contact us if you want to help with testing.
- long-read transcript evidence using minimap2
- short ncRNA prediction with tRNAscan and Rfam