AGAT-v1.1.0
- Update readme
- add the AGAT version in the log using the AGAT header method
- doc:
- fix #297 modify output name/type
- #303 revise gfx doc for clarity
- #300 add new script agat_sq_rename_seqid.pl in order to rename sequence identifiers.
- add feature types in feature_levels.yaml: 3'-utr, 5'-utr, crispr, splice3, splice5
- fix #329 - when creating L1 from L2 be sure the L1 ID used is not already used by a feature of another type.
- fix #327 - avoid crash if CDS less than 3 nt in agat_sp_filter_incomplete_gene_coding_models.pl
- fix #325 and improve related merge functions (see improved result of test gff_syntax 15). Fix error in keep_only_uniq_from_list2 function to merge identical isoform and add merge_ suffix for merged attributes
- fix #315 add skip_merge_l3 in feature_levels yaml file to handle which feature to skip at the check_all_level3_locations step (decide which type of feature to merge when overlapping)
- fix #290 - deal with GeMoMA peculiar case where L3 is attached to L1 while L2 exists while L2 is also attached to L1. Parent attribute used as a locus_tag
- fix #347 update end location only if longest
- fix #350 improve AGAT to deal properly with peculiar Exonerate gff
- fix #352 do not check feature when already removed from hash in merge_overlap_loci to avoid error
Code:
- factorize functions _merge_overlap_features and merge_overlap_features to keep only the later
- change miscCount uniqID and uniqIDtoType hashes into a single hash for code simplification
- remove L1 and L2 for newly created IDs. Fix problem ID use several times in e.g. agat_sp_prokka_fix_fragmented_gene_annotations_1.gff output file (used by tRNA level1 gene created)
- Improve check_gene_overlap_at_CDSthenEXON to work at l2 and l1 if no children, and rename it into check_feature_overlap_from_l3_to_l1.
- add get_uniq_id function to make unique ID on the fly for spread features that can share identical IDs
- use push in infosequential instead of omniscient for Push-L3-omiscient-3: level3 - Use Unique ID even for CDS to avoid confusion in location and level3 checks - remove strand when cloning L3 to create a l2 (see issue #350)