Skip to content

Releases: nextstrain/augur

31.3.0

03 Jul 21:25
Compare
Choose a tag to compare

These release notes are automatically extracted from the full changelog.

Features

  • traits: Added new options --branch-labels and --branch-confidence to export branch labels for nodes which have a corresponding state change. These are useful for creating streamtrees which convey geographic jumps. #1814 (@jameshadfield)
  • filter, merge: Added a new option --nthreads to configure parallelism. Right now, it is only passed to SeqKit, but it may be used for other internal optimizations in the future. #1833 (@victorlin)
  • filter: Added a new option --skip-checks to bypass checks for duplicates in sequences and whether ids in metadata have a sequence entry. Mainly useful when working with larger files. #1833 (@victorlin)
  • Added a new AUGUR_PROFILE environment variable. If set, Augur will run with Python's cProfile profiler and save results to the value which should be a file path. This may result in slightly slower run times, and should only be used for debugging purposes. #1835 (@victorlin)

Bug fixes

  • filter, merge: Improved run time of sequence I/O operations, especially in the common use case of having a workflow manager run multiple invocations simultaneously. #1833 (@victorlin)
  • filter, merge: Previously, SeqKit was hardcoded to use its default of 4 threads per command, which could have resulted in oversubscription of resources in the common use case of having a workflow manager run multiple invocations simultaneously. The default behavior has been updated to use 1 thread per command to discourage oversubscription of resources. It is configurable with the new --nthreads option described above. #1833 (@victorlin)

31.2.1

12 Jun 17:59
Compare
Choose a tag to compare

These release notes are automatically extracted from the full changelog.

Bug fixes

  • curate format-dates: Removed redundant warning messages that were previously displayed when using --failure-reporting "warn". #1816 (@victorlin)
  • filter: Improved performance of --output-sequences by using SeqKit internally. #1794 (@victorlin)
  • filter: Improved performance when using --sequences without --sequence-index by skipping indexing of --sequences when no sequence-based filters are used. #1827 (@victorlin)
  • filter: Fixed a bug that prevented proper checking of duplicates and sequence index mismatches on VCF inputs. #1826 (@victorlin)
  • merge: Fixed a performance bug where input sequence file validation unnecessarily loaded file contents into device memory. #1820 (@victorlin)
  • refine: Fixed a bug where inferred dates were being wrongly marked as not inferred. #1829 (@victorlin)

31.2.0

05 Jun 19:26
Compare
Choose a tag to compare

These release notes are automatically extracted from the full changelog.

Features

Bug fixes

  • Added a missing redirect for the environment variables documentation page from its previous location. #1812 (@tsibley)

31.1.0

27 May 23:14
Compare
Choose a tag to compare

These release notes are automatically extracted from the full changelog.

Features

Bug fixes

  • filter: Improved speed of using --group-by, --min-date, and --max-date on large datasets. #1792, #1811 (@victorlin)

31.0.0

19 May 19:01
Compare
Choose a tag to compare

These release notes are automatically extracted from the full changelog.

Major Changes

  • augur mask --mask, augur tree --exclude-sites: BED files with inconsistent CHROM values (i.e., values in the first column of data lines) will throw an error, as Augur (implicitly) expects to be working on a single piece of DNA (chromosome, segment, etc), and multiple CHROM values in a BED file indicate a violation of this expectation. This is a breaking change. #945 (@genehack)
  • filter: Empty values in the metadata id column will result in an error that can only be resolved by editing the metadata file or by specifying a different id column with --metadata-id-columns. #1807 (@joverlee521)

Bug fixes

  • augur mask --mask, augur tree --exclude-sites: Providing an empty BED file, or one with only header lines and no data lines, will no longer cause an error to be thrown. #945 (@genehack)
  • augur.utils.read_bed_file() was rewritten for increased compliance with the BED file specification. In particular, header line dectection is improved and multiple header lines are now supported. #945 (@genehack)
  • export v2: Improved the error message that is displayed when the metadata index column has duplicated values #1791 (@genehack)
  • tree: Improved help text for --tree-builder-args to explain some IQ-TREE options won't work because of defline rewriting #875 (@genehack)
  • export v2: Automatically rename fields within the filters and colorings configs of the provided auspice config file to match the renamed fields in the exported nodes. #1804 (@joverlee521)
  • export v2: Divergence values are now exported with increased precision, showing up to 6 significant digits instead of 3. #1801 (@rneher)

30.0.1

28 Apr 18:25
Compare
Choose a tag to compare

These release notes are automatically extracted from the full changelog.

Bug fixes

  • filter: Removed the note that appeared in output when running with --sequences and without --sequence-index. The help text of both options has been updated to clarify the relationship between the two. #1797 (@victorlin)

30.0.0

15 Apr 20:09
Compare
Choose a tag to compare

These release notes are automatically extracted from the full changelog.

Major Changes

Note: The following breaking changes were effective as of version 29.1.0.

  • filter: Date values in <year>-<month> format with more than 4 digits in the year (e.g. 02025-04) or more than 2 digits in the month (e.g. 2025-004) are no longer supported. Support for these was unintentional, but it worked in practice. #1786 (@victorlin)
  • filter: Date values in <year>-<month>-<day> format that fall outside of valid date boundaries now fail with an error. For example, 2025-00-01 is invalid. Previously, all date parts were treated categorically without date validation so month=0 was its own category. #1786 (@victorlin)
  • filter: Date values in <year>-<month> format that fall outside of valid date boundaries are now auto-converted to the closest date. For example, 2025-00 will be auto-converted to 2025-01. Previously, all date parts were treated categorically without date validation so month=0 was its own category. It will now be treated as month=1. This is a side-effect of the change in 29.1.0 that switched to the same internal date parsing function that is used by other commands. A future major version may change behavior to fail with an error to better align with handling of <year>-<month>-<day>. [#1774][] (@victorlin)

Bug fixes

  • filter: version 29.1.0 inadvertently dropped support for date values in <year>-<month> or <year>-<month>-<day> format that are not in YYYY-MM or YYYY-MM-DD format. Support for some values has been restored. See the "Major Changes" section for details on which values are explicitly no longer supported. #1785 (@victorlin)

29.1.0

10 Apr 23:41
Compare
Choose a tag to compare

These release notes are automatically extracted from the full changelog.

Features

  • export v2: Allow multiple auspice config files (--auspice-config) which are merged together. Note that the merging of lists extends the original list, although elements representing the same data are overwritten instead. You can optionally write out this merged config via --output-auspice-config for debugging purposes. #1756 (@jameshadfield)

Bug fixes

  • titers: Improve error messages when titer models do not have enough data. #1769 (@huddlej)
  • align: Remove extra logs for insertions since the coordinates are output the *.insertions.csv. #1772 (@joverlee521)
  • filter: Fixed an error with weighted sampling by year. #1776 (@victorlin)
  • filter: Previously, subsampling with --group-by year or month would crash on numeric dates. This has been fixed by switching to the same internal date parsing function that is used by other commands. #1774 (@victorlin)
  • filter: Made a small adjustment to use pandas's "string" dtype alias when processing values in metadata. #1782 (@victorlin)
  • filter: Options --output and -o have been deprecated and will now show a warning message. See DEPRECATED.md for details. #1622 (@victorlin)
  • Updated outdated documentation on supported date formats in metadata. #882 (@victorlin)

29.0.0

26 Feb 20:16
Compare
Choose a tag to compare

These release notes are automatically extracted from the full changelog.

Major Changes

  • Updated default latitudes and longitudes for geography traits that includes location name changes. See the pull request for more details. #1744 (@joverlee521)
  • curate apply-geolocation-rules: Augur's standard geolocation rules are used by default and rules provided via --geolocation-rules are considered custom rules that have precedence over the default rules. The --no-default-rules flag can be used to ignore the default rules. See the pull request for more details. #1745 (@joverlee521)
  • augur.utils.read_strains has been removed as it's been deprecated since January 2024. The same function is available through the public API as augur.io.read_strains. #1749 (@joverlee521)
  • Bumped minimum Python version to 3.9 as support for 3.8 was dropped in Augur v27.0.0. #1763 (@joverlee521)

Features

  • refine: Added a --remove-outgroup flag which can be used when rooting a tree on a single taxon. Rooting and removal of outgroup will be performed before any temporal inference, if applicable. #1751 (@jameshadfield)
  • Added standard geolocation rules in "augur/data/geolocation_rules.tsv" that can be used with augur curate apply-geolocation-rules. #1744 (@joverlee521)
  • [refine, export] Ambiguous dates (e.g. those with "XX" in the date string) are now exported in the Auspice JSON, and all tips now have an additional "inferred" boolean property. These changes only apply to temporal trees. #1760 (@jameshadfield)

Bug fixes

  • Certain strain names would be silently renamed by augur tree [--method iqtree]. We now avoid such renaming wherever possible and in cases where there are backslashes or single quotes we now raise a fatal error.
    Note that names with spaces in the FASTA header (description line) continue to be modified such that everything after the first space is not used in the resulting tree. #1750 (@jameshadfield)
  • Fixed the error that occurred when running augur curate --help. #1755 (@joverlee521)

28.0.1

10 Feb 18:27
Compare
Choose a tag to compare

These release notes are automatically extracted from the full changelog.

Bug Fixes

  • schema: document node property values support url. This feature has been supported in Auspice since v2.25.0. #1743 (@joverlee521)
  • augur.io.read_metadata: Ensure that the index column's dtype is always "string" so that numeric ids don't get converted to numeric dtypes. #1746 (@joverlee521)