Releases: nextstrain/augur
31.3.0
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
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
These release notes are automatically extracted from the full changelog.
Features
- merge: Support merging of sequence files with
--sequences
. #1579 (@victorlin) - read-file: Multiple files are now accepted. #1815 (@victorlin)
- schema: Added fields for streamtrees and default zoom branch label. #1813 (@jameshadfield)
Bug fixes
31.1.0
These release notes are automatically extracted from the full changelog.
Features
- schema: Allow full stop character (
.
) in gene names. #955 (@jameshadfield)
Bug fixes
- filter: Improved speed of using
--group-by
,--min-date
, and--max-date
on large datasets. #1792, #1811 (@victorlin)
31.0.0
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
andcolorings
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
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
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 somonth=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 to2025-01
. Previously, all date parts were treated categorically without date validation somonth=0
was its own category. It will now be treated asmonth=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 inYYYY-MM
orYYYY-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
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
ormonth
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
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 asaugur.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
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)