Skip to content

Releases: nextstrain/augur

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)

28.0.0

30 Jan 18:47
Compare
Choose a tag to compare

These release notes are automatically extracted from the full changelog.

Major Changes

  • export v2: The string "none" is now an invalid value for --color-by-metadata and --metadata-columns options and will be ignored to prevent clashes with Auspice's internal use of "none". #1113 (@joverlee521)
  • schema: The string "none" is now an invalid branch label, node_attr key, and coloring key. #1113 (@joverlee521)
  • curate apply-geolocation-rules: The geolocation rule matching has been updated to be case-insensitive. Use the new --case-sensitive flag if you want to revert to the previous behavior of case-sensitive matching. #1740, #1741 (@joverlee521)
  • augur.io.read_sequences: Only accept the values "fasta" and "genbank" for format, instead of allowing any value supported by Biopython. #1731 (@victorlin)
    • This also applies to augur.io.sequences.read_single_sequence, which is not in the public API.

Features

  • All commands: Support compressed formats for input sequence files. This was already the case for most commands. Internal standardization extends the support to all other commands. #1730 (@victorlin)

Bug Fixes

  • When using >=Biopython 1.85: properly detect augur ancestral --root-sequence file format and, for all commands, support FASTA files with comments. #1731 (@victorlin)

Internal changes

  • Added a new function augur.io.sequences.read_single_sequence as a wrapper around Bio.SeqIO.read with support for compressed formats, similar to the augur.io.sequences.read_sequences wrapper around Bio.SeqIO.parse. #1730 (@victorlin)

27.2.0

22 Jan 01:33
Compare
Choose a tag to compare

These release notes are automatically extracted from the full changelog.

Features

  • export: Added a new option --warning to display a warning banner in Auspice, supported as of Auspice version 2.62.0. #1722 (@victorlin)

27.1.0

15 Jan 00:59
Compare
Choose a tag to compare

These release notes are automatically extracted from the full changelog.

Features

  • ancestral: Add --seed argument to enable deterministic inference of root states by TreeTime. #1690 (@huddlej)

Bug Fixes

  • ancestral, refine: Explicitly specify how the root and ambiguous states are handled during sequence reconstruction and mutation counting. #1690 (@rneher)
  • titers: Fix type errors in code associated with cross-validation of models. #1688 (@huddlej)
  • export: The help text for --lat-longs has been improved with a link to the defaults and specifics around the overriding behavior. #1715 (@victorlin)
  • augur.io.read_metadata: Pandas versions <1.4.0 prevented this function from properly setting the index column's data type. Support for those older versions has been dropped. #1716 (@victorlin)
  • In version 24.4.0, one of the new features was that all options that take multiple values could be repeated. Unfortunately, it overlooked a few that have been fixed in this version. #1707 (@victorlin)
    • augur curate rename --field-map
    • augur curate transform-strain-name --backup-fields
  • augur curate format-dates --expected-date-formats help text has been improved with clarifications regarding how values provided interact with builtin formats and how to match masked date parts. #1707, #1718 (@victorlin)
  • parse: Transform strain names the same way in both metadata and sequences instead of only transforming sequences. #1712 (@huddlej)

27.0.0

09 Dec 19:22
Compare
Choose a tag to compare

These release notes are automatically extracted from the full changelog.

Major Changes

Bug fixes

  • export: validation will no longer crash with KeyError: 'tree' when newer versions of jsonschema (≥4.18.0) are installed. #1358 (@victorlin)

26.2.0

20 Nov 18:19
Compare
Choose a tag to compare

These release notes are automatically extracted from the full changelog.

Features

26.1.0

12 Nov 23:25
Compare
Choose a tag to compare

These release notes are automatically extracted from the full changelog.

Features

  • ancestral, translate: Add --skip-validation as an alias to --validation-mode=skip. #1656 (@victorlin)
  • clades: Allow customizing the validation of input node data JSON files with --validation-mode and --skip-validation. #1656 (@victorlin)
  • tree: When using iqtree, check for all synonyms of default args when detecting potential conflicts, e.g. --threads-max is equivalent to -ntmax. Previously, we were only checking for the latter. Also use new, preferred IQtree2 option names (e.g. --polytomy instead of -czb etc.). #1547 (@corneliusroemer)

Bug Fixes

  • index: Previously specifying a directory that does not exist in the path to --output would result in an incorrect error stating that the input file does not exist. It now shows the correct path responsible for the error. #1644 (@victorlin)
  • curate format-dates: Update help docs and improve failure messages to show use of --expected-date-formats. #1653 (@joverlee521)

26.0.0

17 Sep 17:35
Compare
Choose a tag to compare

These release notes are automatically extracted from the full changelog.

Major Changes

  • filter: Duplicate header names in the FASTA file (--sequences) will now result in an error. #1613 (@victorlin)
  • parse: When both strain and name fields are present, the strain field will now be used as the sequence ID field. #1629 (@victorlin)
  • merge: Generated source columns (e.g. __source_metadata_{NAME}) are now omitted by default. They may be explicitly included with --source-columns=TEMPLATE or explicitly omitted with --no-source-columns. This may be a breaking change for any existing uses of augur merge relying on the generated columns, though as augur merge is relatively new we believe usage to be scant if extant at all. #1625 #1632 (@tsibley)

Bug Fixes

  • filter: Previously, when --subsample-max-sequences was slightly lower than the number of groups, it was possible to fail with an uncaught AssertionError. Internal calculations have been adjusted to prevent this from happening. #1588 #1598 (@victorlin)

25.4.0

03 Sep 19:06
Compare
Choose a tag to compare

These release notes are automatically extracted from the full changelog.

Features

  • merge: Table-specific id columns and delimiters may now be specified, e.g. --metadata-id-columns X=id Y=strain and --metadata-delimiters X=, Y=';', to allow more precise behaviour and avoid ordering issues. #1594 (@tsibley)

Bug Fixes

  • filter: Improved warning and error messages in the case of missing columns. #1604 (@victorlin)
  • merge: Any user-customized ~/.sqliterc file is now ignored so it doesn't break augur merge's internal use of SQLite. #1608 (@tsibley)
  • merge: Non-id columns in metadata inputs that would conflict with the output id column are now forbidden and will cause an error if present. Previously they would overwrite values in the output id column, causing incorrect output. #1593 (@tsibley)
  • import: Spaces in BEAST MCC tree annotations (for example, from a discrete state reconstruction) no longer break augur import beast's parsing. #1610 (@watronfire)