Releases: nextstrain/augur
Releases · nextstrain/augur
19.2.0
19.1.0
Features
- io: Add
open_fileandwrite_sequencesto the Python Pubic API. #1114 (@joverlee521)
19.0.0
Major Changes
- io: Only
read_metadataandread_sequencesare available as part of the Python Public API. Other Python API functions of theaugur.iomodule are no longer directly available. This is a breaking change, although we suspect few users to be impacted. If you still need to use other imports in your scripts, they can be imported from the Developer API but note that they are no longer part of the Public API. #1087 (@victorlin)
Bug Fixes
- docs: Update the API documentation to reflect the latest state of things in the codebase. #1087 (@victorlin)
- Fix support for Biopython version 1.80 which deprecated
Bio.Seq.Seq.ungap(). #1102 (@victorlin) - export v2: Fixed a bug where colorings for zero values via
--colorswould not get applied to the exported Auspice JSON. #1100 (@joverlee521) - curate: Fixed a bug where metadata TSVs failed to parse if data within a column included comma separated values #1110 (@joverlee521)
18.2.0
Features
- Add the curate subcommand with two sub-subcommands, passthru and normalize-strings. The curate subcommand is intended to be a suite of commands to help users with data curation prior to running Nextstrain analyses. We will continue to add more subcommands as we identify other common data curation tasks. Please see the usage docs for details. #1039 (@joverlee521)
18.1.2
18.1.1
18.1.0
Features
- filter: Add support to group by ISO week (
--group-by week) during subsampling. #1067 (@victorlin)
Bug Fixes
- filter: Fixed unintended behavior in which grouping by
daywould "work" when used withmonthand/oryear. Updated so it will be ignored. #1070 (@victorlin) - filter: Fixed unintended behavior in which grouping by
monthwith ambiguous years would "work". Updated so date ambiguity is checked properly for all generated columns. #1072 (@victorlin)
18.0.0
Major Changes
- export: The
--node-dataoption may now be given multiple times to provide additional.jsonfiles. Previously, subsequent occurrences of the option overrode prior occurrences. This is a breaking change, although we expect few usages to be impacted. Each occurrence of the option may still specify multiple files at a time. #1010 (@tsibley)
Bug Fixes
- refine: 17.1.0 updated TreeTime to version 0.9.2 and introduced the
refineflag--use-fft. This makes previously costly marginal date inference cheaper. This update adjusts whenrefineruns marginal date inference during its iterative optimization. Without theuse-fftflag, it will now behave as it did before 17.1.0 (marginal inference only during final iterations). With the--use-fftflag, marginal date inference will be used at every step during the iteration if refine is run with--date-inference marginal#1034. (@rneher) - tree: When using IQtree as tre builder,
--nthreadsnow sets the maximum number of threads (IQtree argument-ntmax). The actual number of threads to use can be specified by the user through the tree-builder-arg-ntwhich defaults to-nt AUTO, causing IQtree to automatically chose the best number of threads to use #1042 (@corneliusroemer) - Make cvxopt as a required dependency, since it is required for titer models to work #1035. (@victorlin)
- filter: Fix compatibility with Pandas 1.5.0 which could cause an unexpected
AttributeErrorwith an invalid--querygiven toaugur filter. #1050 (@tsibley) - refine: Add
--verbosityargument that is passed down to TreeTime to facilitate monitoring and debugging. #1033 (@anna-parker) - Improve handling of errors from TreeTime. #1033 (@anna-parker)
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
treetimeexpects #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__.pyimport_beast.py->import_/beast.pymeasurements.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_commandutils.HideAsFalseAction->argparse_.HideAsFalseAction
- Subcommands must include a
register_parserfunction to add their own parser instead of aregister_argumentsfunction #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-validationnow 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)