Skip to content

Releases: NBISweden/AGAT

AGAT v1.6.1

13 Jan 09:46

Choose a tag to compare

  • Removal of Temp::Dir::Tiny for conda packaging
  • Fix displayed version used in the AGAT header
  • Avoid race condition crash, throw a warning instead

AGAT v1.6.0

19 Dec 14:09

Choose a tag to compare

Major Release

This release introduces significant improvements in performance, usability, and code maintainability.

Enhancements
• Several method optimizations resulting in small performance gains.
• Input processing parallelization is now available via the new cpu parameter.
The input file is split into agat_tmp chunks by sequence identifier, and each chunk is processed using Parallel::ForkManager.
This improves performance only when the number of sequences is greater than or equal to the number of CPUs and when input files are large (>300 MB).
The original single-CPU behavior can be restored using cpu=0.
• Unified CLI options: --output, --out, and -o are now equivalent (outfile removed).
• Unified boolean option handling: --boolean_option enables the option. --no-boolean_option disables it (as handled by the agat script. But note that scripts only suggest boolean activation).
• Centralized all printing via the dual_print method.
• Centralized key information using global variables to simplify method calls (no need to pass numerous variables). These are defined in Utilities.pm.
• Configuration CONFIG is now populated earlier and is accessible globally.
• hashID and mRNAGeneLink are now included in the omniscient hash to simplify data access and method calls.
• Gzipped files are now processed directly in Perl, improving compatibility with Windows.
• Added a Nextflow pipeline to assess performance.

•	Test suite parallelization.
•	Scripts are now pipe-safe.
•	Unified CLI through shared options (aligned with agat_config.yaml). All AGAT configuration options can now be set directly from the command line.

The last three points were inspired by and benefited from #559. Many thanks to @kim-fehl for the contribution.

Bug Fixes
• Fix #556: prevent empty attributes from being concatenated to ID during GFF3 parsing.
• Fix #250: preserve URL-escaped characters in the output.
• Fix #507: add a raw option to export raw data into a dedicated folder for agat_sp_statistics.pl.

New Options
• Added url_encode_out parameter to decode URL-escaped characters in GFF3 output (usefulness to be evaluated).
• Added --force option to overwrite existing output files.

Documentation
• Homogenized POD documentation (option types now specified in the options line, e.g. -o, --out, --output ).
• Simplified the second part of the POD across all scripts.

Full Changelog: v1.5.1...v1.6.0

AGAT v1.5.1

22 Jul 12:45
77d2fc7

Choose a tag to compare

  • fix #550 :
    • agat_sp_keep_longest_isoform was not updating level1 feature location (e.g.) after isoforms was removed.
    • agat_sp_statistics was providing surestimated values for gene calculation after isoform removed (the script do a calculation with and without isoform using same function as agat_sp_keep_longest_isoform).
  • replace use of check_gene_positions by check_level1_positions and remove check_gene_positions less generalized.
  • Update check_all_level1_locations and check_all_level2_locations. extrem_start is set to undef instead of a fake fixed value. Simplify check_all_level2_locations that was doing a useless extra test.
  • sync version released and version displayed ^^

AGAT v1.5.0

03 Jul 09:02
deb5d58

Choose a tag to compare

  • agat_sp_move_attributes_within_records generalized: attribute can move up or down - was only down before
  • agat_sp_manage_functional_annotation : extra information added in output (pe,sv,os from uniprot db header and evalue from blast output)
  • New script: change agat_sp_flag_short_introns.pl renamed into agat_sp_flag_short_introns_ebi.pl - it was too specific and flag only short intron in CDS
  • fix 516 - new agat_sp_flag_short_introns.pl script to flag a record when an intron is shorten than expected value with the short_intron attribute
  • fix annoying warning "Use of uninitialized value"
  • fix #528 - empty string (double quote) added by parser when attribute separated by 2 semicolon in a row
  • fix #512 - Original behaviour was: when an isoform fail the test ,the gene is discarded. Now only the failing isoform is discarded. The gene is discarded only if all isoforms fail.
    Fixed bug where an empty list of IDs to keep was incorrectly interpreted as no list provided. This bypassed filtering and caused the entire omniscient hash to be printed instead of an empty output.
    the bug affected agat_sp_filter_by_locus_distance.pl, agat_sp_fix_longest_ORF.pl and agat_sp_filter_by_ORF_size.pl
  • improve docs, helps, README and code indentation
  • CI : - Pin coverage version
    - update cache to v3

AGAT v1.4.2

06 Dec 08:51
9ecbcc6

Choose a tag to compare

What's Changed

  • Fix issue with Perl>5.36 by @Juke34 in #509
  • fix #507 - add option raw to print raw data in a dedidcated folder by @Juke34 in #510
  • fix #457 remove attribute in gene_id and transcript_id to keep only the first … by @Juke34 in #496

When getting "Parsed attribute had a quote in the middle of a value." in CellRanger it might be due to multiple values attribute. (e.g. tag "basic" "Ensembl_canonical"; ). Activating the deflate_attribute from AGAT global config fixes the issue.

Full Changelog: v1.4.1...v1.4.2

AGAT-v1.4.1

19 Sep 20:25
64702ff

Choose a tag to compare

What's Changed

  • Allow agat_sp_filter_feature_by_attribute_value to filter with multiple values - fix #426 by @Juke34 in #464
  • Add possibility to output agat_sp_statistics.pl result in yaml format - fix #401 by @Juke34 in #466
  • fix #420. Now table 0 can be called (bioperl >= april 2024 must be pr… by @Juke34 in #470
  • Fix #471 - agat_sp_filter_feature_by_attribute_value.pl to allow the use of "!" test by @Juke34 in #473
  • Fix #475 : Added an option for agat_sp_merge_annotations.pl to refer a folder of GFF files by @IvanUgrin in #476
  • Mfannot - agat_convert_mfannot2gff.pl - big improvement in handling this conversion by @Juke34 in #483
  • sort tag L2 for better reproducibility in a function of OmniscientO by @Juke34 in #487
  • fix #484 by @Juke34 in #488 - CDS must not be attached to Level2 if no Parent/ID relationship and locus name not the same as previous L2. Should be parsed using locus instead of sequential (as expected).
  • fix #307 - Update agat_sp_statistics.pl to provide median and percentile statistics by @Juke34 in #489
  • remove transcript ID in Level1 feature when creating it from another feature used as template (clean_clone) by @Juke34 in #491

Documentation:

  • Update documentation of agat_convert_minimap2_bam2gff.md by @Juke34 in #452
  • Update README - Update Zenodo to always point to latest DOI
  • rename agat_sp_fix_cds_frame.pl to agat_sp_fix_cds_phase.pl in pod of the script and its corresponding md doc file
  • fix mispelling script name in doc. fix #456 by @Juke34 in #465
  • remove unused inflate option from agat_convert_genscan2gff.pl and agat_convert_genscan2gff.md fix #477 by @Juke34 in #481
  • update doc agat_sp_compare_two_annotations.pl by @Juke34 in #490
  • Shift AGAT documentation from readthedocs to Mkdocs (gh-pages of GitHub now) by @Juke34 in #482

New Contributors

Full Changelog: v1.4.0...v1.4.1

AGAT-v1.4.0

05 Apr 13:53
1143408

Choose a tag to compare

  • fix #448 an issue affecting AGAT when using GFF2 and GFF2.5 bioperl parser. Bioperl is adding an extra empty ID attribute that mess up with AGAT. An extra step in AGAT remove this empty attribute and allows AGAT to works appropriately.

AGAT-v1.3.3

28 Mar 12:14
a23b8ea

Choose a tag to compare

What's Changed

  • Fix 445 bug introduced in 1.3.1 in lib/AGAT/OmniscientI.pm by @Juke34 in #447

Full Changelog: v1.3.2...v1.3.3

AGAT-v1.3.2

21 Mar 15:26
2276eb6

Choose a tag to compare

/!\ Please avoid to use that version ! Important bug for files with only level3 features (exons, CDS) when recreating Level2 (mRNA) and level1 (gene) - stop prematurely

What's Changed

  • Rendering :
    • Re-activting progress bar (tata has been deactivated by mistake in previous releases)
    • Display AGAT header for all scripts (before was only for sp scripts)
    • Providing log information to user about the config file taken.
  • fix #441 use L3 feature instead to L1 as template to create features when transcript_id exists by @Juke34 in #442. Bug was affecting GTF input annotations that have only level3 features (CDS,exons;etc.) and that was outputted in GTF (GFF output are fine excepted their transcript_id attribute that become wrong but are anyway useless in GFF).

Full Changelog: v1.3.1...v1.3.2

AGAT-v1.3.1

08 Mar 09:15
39e841d

Choose a tag to compare

What's Changed

  • Fix #435 agat_sp_compare_two_annotations.pl now output gene IDs by @Juke34 in #437
  • Fix #436 agat_sp_manage_functional_annotation.pl now appending Name,product,dbxref,product attributes by default instead of replacing. Add parameters to clean those attributes. by @Juke34 in #438

Full Changelog: v1.3.0...v1.3.1