Releases: nextstrain/augur
Releases · nextstrain/augur
17.1.0
Features
- refine: Upgrade TreeTime from 0.8.6 to >= 0.9.2 which enables a speedup of timetree inference in marginal mode due to the use of Fast Fourier Transforms #1018. (@rneher and @anna-parker)
Bug Fixes
- refine, export v1: Use pandas.DataFrame.at instead of .loc for single values #979. (@victorlin)
- refine: Gracefully handle all exceptions from TreeTime #1023. (@anna-parker)
- refine: Document branch length units
treetime
expects #1024. (@anna-parker) - dates: Raise an error when metadata to
get_numerical_dates()
is not a pandas DataFrame #1026. (@victorlin)
17.0.0
17.0.0 (9 August 2022)
Major Changes
- Moved the following modules to subpackages #1002. (@joverlee521)
These are technically breaking changes for the API, but they do not change the Augur CLI commands.import.py
->import_/__init__.py
import_beast.py
->import_/beast.py
measurements.py
->measurements/__init__.py
+measurements/concat.py
+measurements/export.py
- Move the following internal functions/classes #1002. (@joverlee521)
augur.add_default_command
->argparse_.add_default_command
utils.HideAsFalseAction
->argparse_.HideAsFalseAction
- Subcommands must include a
register_parser
function to add their own parser instead of aregister_arguments
function #1002. (@joverlee521) - utils: Remove internal function
utils.read_metadata()
#978. (@victorlin)- Use
io.read_metadata()
going forwards. - To switch to using metadata as a pandas DataFrame (recommended):
- Iterate through strains:
metadata.items()
->metadata.iterrows()
- Check strain presence:
strain in metadata
->strain in metadata.index
- Check field presence:
field in metadata[strain]
->field in metadata.columns
- Get metadata for a strain:
metadata[strain]
->metadata.loc[strain]
- Get field for a strain:
metadata[strain][field]
->metadata.at[strain, field]
- Iterate through strains:
- To keep using metadata in a dictionary:
metadata = read_metadata(args.metadata) metadata.insert(0, "strain", metadata.index.values) columns = metadata.columns metadata = metadata.to_dict(orient="index")
- Use
Features
- export:
--skip-validation
now also skips version compatibility checks #902. (@corneliusroemer) - filter: Report names of duplicate strains found during metadata parsing #1008 (@huddlej)
- translate: Add support for Nextclade gene map GFFs #1017 (@huddlej)
Bug Fixes
- filter: Rename internal force inclusion filtering functions #1006 (@victorlin)
16.0.3
16.0.3 (6 July 2022)
Bug Fixes
- filter: Move
register_arguments
to the top of the module for better readability #995. (@victorlin) - filter: Fix a regression introduced in 16.0.2 that caused grouping with subsampled max sequences and force-included strains to fail in a data-specific way #1000. (@huddlej)
16.0.2
16.0.2 (30 June 2022)
Bug Fixes
- The entropy panel was unavailable if mutations were not translated #881. This has been fixed by creating an additional
annotations
block inaugur ancestral
containing (nucleotide) genome annotations in the node-data #961 (@jameshadfield) - ancestral: WARNINGs to stdout have been updated to print to stderr #961 (@jameshadfield)
- filter: Explicitly drop date/year/month columns from metadata during grouping. #967 (@victorlin)
- This fixes a bug #871 where
augur filter
would crash with a crypticValueError
ifyear
and/ormonth
is a custom column in the input metadata and also included in--group-by
.
- This fixes a bug #871 where
- filter: Fix duplicates that may appear in metadata when using
--include
/--include-where
with subsampling #986 (@victorlin)
6.3.0
Features
- Augur
refine
,ancestral
andtraits
now use the
upgraded TreeTime v0.7
This should have a number of under-the-hood improvements.
See PR 431 - ancestral: New options to either
--keep-ambiguous
or--infer-ambiguous
. If using
--infer-ambiguous
the previous behavior will be maintained in which tips withN
will have
their nucleotide state inferred. If using--keep-ambiguous
, these tips will be left asN
.
With this upgrade, we are still defaulting to--infer-ambiguous
, however, we plan to swap
default to--keep-ambiguous
in the future. If this distintion matters to you, we would suggest
that you explicitly record--keep-ambiguous
/--infer-ambiguous
in your build process.
Also part of PR 431 - traits: Allow input of
--weights
which references a.tsv
file in the following format:where these weights represent equilibrium frequencies in the CTMC transition model. We imagine thedivision Hubei 10.0 division Jiangxi 1.0 division Chongqing 1.0
primary use of user-specified weights to correct for strong sampling biases in available data.
See PR 443
Bug fixes
- Improvements to make shell scripts run more easily on Windows.
See PR 437
6.2.0
Features
- refine: Include
--divergence-units
option to distinguish betweenmutations
andmutations-per-site
. Keepmutations-per-site
as default behavior.
See PR 435
Bug fixes
- utils: Support v2 auspice JSONs in json_to_tree utility function.
See PR 432
6.1.1 (17 December 2019)
Bug fixes
- frequencies: Fix bug in string matching for weighted frequencies introduced in
v6.1.0. See PR 426.
6.1.1
6.1.1 (17 December 2019)
Bug fixes
- frequencies: Fix bug in string matching for weighted frequencies introduced in
v6.1.0. See PR 426.
6.1.0
6.1.0 (13 December 2019)
Features
- export: Include
--description
option to pass in a Markdown file with dataset
description. This is displays in Auspice in the footer. For rationale,
see Auspice issue 707 and
for Augur changes see PR 423.
Bug fixes
- frequencies: Fix weighted frequencies when weight keys are unrepresented.
See PR 420.
6.0.0
6.0.0 (10 December 2019)
Overview
Version 6 is a major release of augur affecting many augur commands. The format
of the exported JSON (v2) has changed and now merges the previously separate
files containing tree and meta information. To maintain backward compatibility,
the export command was split into export v1
(old) and export v2
(new).
Detailed release notes are provided in the augur documentation on
read-the-docs.
For a migration guide, consult
migrating-v5-v6.
Major features / changes
- export: Swap from a separate
_tree.json
and_meta.json
to a single
"unified"dataset.json
output file - export: Include additional command line options to alleviate need for Auspice
config - export: Include option for reference sequence output
- export: Move to GFF-style annotations
- export: Validate exported JSONs against schema
- ancestral: Allow output of FASTA and JSON files
- import: Include
import beast
command to import labeled BEAST MCC tree - parse: Include
--prettify-fields
option to cleanup metadata fields - Documentation improvements
Minor features / changes
- colors.tsv: Allow whitespace, but insist on tab delimiting
- lat_longs.tsv: Allow whitespace, but insist on tab delimiting
- Remove code for old "non-modular" augur, old "non-modular" builds and Python
tests - Improve test builds
- filter: More interpretable output of how many sequences have been filtered
- filter: Additional flag
--subsample-seed
to seed the random number generator
and thereby make subsampling reproducible - sequence-traits: Numerical output as originally intended, but required an
Auspice bugfix - traits: Explanation of what is considered missing data & how it is interpreted
- traits: GTR models are exported in the output JSON for better accountability &
reproducibility
5.4.1
5.4.1 (12 November 2019)
Bug fixes
- export v1: Include
--minify-json
option that was mistakenly not included in PR 398.
See PR 409