Skip to content

Releases: nextstrain/nextclade

1.0.0-alpha.8

19 May 01:51
Compare
Choose a tag to compare

Nextclade CLI and Nextalign CLI

This improves console logging messages of Nextclade CLI and Nextalign CLI.
The messages are now prefixed with message's log level (verbosity level) and the name of the application. Some of the error and warning messages have been reworded to better convey their meaning (but there is still some work to do here).

This should improve log readability and facilitate debugging when using Nextclade CLI and Nextalign CLI in complex pipelines.

Examples:

[ WARN] Nextclade: Warning: in sequence "Country/State-01234/2020": When processing gene "HappinessGene": Unable to align: no seed matches. Note that this gene will not be included in the results of the sequence

[ERROR] Nextclade: Error: when running the internal parallel pipeline: When parsing input sequences: Input stream ("path/to/an_empty_file.fasta") is empty or corrupted. Aborting.

1.0.0-alpha.7

17 May 01:23
Compare
Choose a tag to compare

Nextclade CLI

This version fixes values of rootOligonuc and primerOligonuc in detected PCR primer changes in Nextclade's JSON output file. They now correctly contain oligonucleotide sequence strings in ATGC alphabetical representation, not in the internal Nextclade's integral array representation.

Nextalign

There are no changes in Nextalign, but we keep versions of Nextalign and Nextclade in sync.

1.0.0-alpha.6

16 May 17:33
Compare
Choose a tag to compare

Nextclade CLI and Nextalign CLI

This version introduces verbosity levels for Nextclade CLI and Nextalign CLI.

The amount of information printed to console can now be changed using --verbosity flag. The following values are accepted (from least to most verbose):

  • silent
  • error
  • warn
  • info
  • debug

The default verbosity is warn.

Additionally, --silent flag is an alias for --verbosity=silent and --verbose is an alias for --verbosity=info.

The "silent" verbosity level guarantees that no console output is produced. This is handy when using stdout as output stream, e.g. with --output-fasta /dev/stdout, to avoid performance-costly file IO when "piping" output of Nextclade or Nextalign into the next stage of the processing pipeline which accepts inputs on stdin.

Additionally, the messages of warning verbosity (all warnings, including the ones produced when sequence alignment fails) are now being written to stderr instead of stdout.

Thanks @huddlej for the feature request.

1.0.0-alpha.5

06 May 07:18
Compare
Choose a tag to compare

Nextclade

This version rectifies contents of rows in CSV and TSV output files for sequences that trigger errors during processing.

For these rows, the seqName column now correctly contains sequence name, the errors column contains human-readable description of encountered error(s), and all other columns are empty (column delimiters are preserved).

Nextalign

There are no changes in Nextalign, but we keep versions of Nextalign and Nextclade in sync.

1.0.0-alpha.4

05 May 03:39
Compare
Choose a tag to compare

This version fixes regression introduced in version 1.0.0-alpha.3, which had order of reference and query sequences swapped, resulting in incorrect (inversed) mutations.

1.0.0-alpha.3

04 May 14:45
Compare
Choose a tag to compare

This version brings a couple of performance improvements to Nextclade CLI:

  • Memory consumption is reduced, because sequence data is no longer being kept in memory needlessly.

  • If both --output-json and --output-tree flags are omitted, then the analysis results are not being stored outside of worker threads (for sequential writes to JSON and for attaching new nodes to the tree). This avoids significant memory overhead of accumulating all the analysis results throughout the execution. These results are still written into CSV and TSV files, if so requested (with --output-csv and --output-tsv corresp.), and without additional memory overhead.

This should allow Nextclade CLI to scale better to very large datasets.

There are no changes in Nextalign, but we keep versions of Nextalign and Nextclade in sync.

1.0.0-alpha.2

30 Apr 11:09
Compare
Choose a tag to compare

Fixes a bug where reference sequence was not included into outputs even if --include-reference flag was provided. Thanks @tolot27 for the report.

1.0.0-alpha.1

28 Apr 11:24
Compare
Choose a tag to compare

Nextclade CLI 1.0.0-alpha.1 is available for early adopters.

Nextclade version 1.x is a full rewrite of Nextclade algorithm and of Nextclade command-line tool in C++ (versions 0.x were implemented in JavaScript). We expect Nextclade 1.x to be faster, more accurate and more convenient to install than 0.x.

Nextclade 1.0.0-alpha.1 is available on GitHub Releases and on DockerHub. Don't hesitate to give it a try:

  • GitHub: https://github.com/nextstrain/nextclade/releases
    (scroll to the end of this post for manual download links; mind the nextalign vs nextclade downloads)

    # Linux x86_64
    curl -fsSL "https://github.com/nextstrain/nextclade/releases/latest/download/nextclade-Linux-x86_64" -o "nextclade"
    
    # macOS Intel
    curl -fsSL "https://github.com/nextstrain/nextclade/releases/latest/download/nextclade-MacOS-x86_64" -o "nextclade"
    
    # macOS Apple Silicon
    curl -fsSL "https://github.com/nextstrain/nextclade/releases/latest/download/nextclade-MacOS-arm64" -o "nextclade"
    
    chmod +x nextclade
    nextclade --help
    # Follow the "Quick Example" section of the built-in help
    
  • DockerHub: https://hub.docker.com/r/nextstrain/nextclade/tags (under tag 1)

    docker pull nextstrain/nextclade:1
    docker run -it --rm nextstrain/nextclade:1 nextclade --help
    # Follow the "Quick Example" section of the built-in help
    # Don't forget to mount input and output directories into the container (`--volume`)
    

IMPORTANT: Nextclade Web (clades.nextstrain.org) still uses the old version of Nextclade (currently 0.14.2). Some differences in outputs are expected between versions 0.x and 1.x. We are working on integration of the new algorithm into Nextclade Web, with new exciting features. Stay tuned!

Changes in Nextclade CLI 1.0.0-alpha.1 compared to 0.14.2

  • Node.js is no longer required. Nextclade is now distributed as a standalone native executable file and is ready to be used after download. The latest version is available for major platforms at Github Releases page. Docker container image for the new version is available under tag 1: nextstrain/nextclade:1. Note that for compatibility the tag latest (which is used when the tag is omitted from docker command) still resolves to version 0.x.

  • The limitation of Node.js on maximum input file size (500 MB) is now removed. Nextclade should be able to handle large files and to use I/O resources more efficiently. Nextclade will stream sequence data to reduce memory consumption.

  • Nextclade is much faster now. Depending on conditions, we measured speedups up to 5x compared to the old implementation.

  • BREAKING CHANGE: Nextclade now uses Nextalign algorithm for the alignment and translation of sequences. This means that nucleotide alignment is now aware of codon boundaries. Alignment results and some of the analysis results might be slightly different.

  • Similarly to Nextalign, Nextclade can now output aligned peptides. In general, Nextclade is a superset of Nextalign and can do everything Nextalign can, plus more (for the price of additional computation).

  • BREAKING CHANGE: Nextclade no longer includes any default data. The following flags for input files were previously optional but are now required: --input-root-seq, --input-tree, --input-qc-config. The --input-gene-map flag is optional, but is highly recommended, because without gene map, the alignment will not be informed by codon boundaries and translation, peptide output and aminoacid change detection will not be available. The example SARS-CoV-2 data can be downloaded from GitHub and used as a starting point. Refer to built-in help for more details (--help).

  • BREAKING CHANGE: Gene map (--input-gene-map) now only accepted in GFF3 format. See an example at GitHub.

  • BREAKING CHANGE: Reference (root) sequence is no longer being written into outputs by default. Add --include-reference flag to include it. Reference peptides will also be included in this case.

  • BREAKING CHANGE: Nextclade might write aligned sequences into output files in the order that is different from the order of sequences in the input file. If order is important, use flag --in-order to enforce the initial order of sequences. This results in a small runtime performance penalty. Refer to built-in help for more details (--help).

Deprecation of Nextclade CLI 0.x

  • From now on, only critical fixes will be applied to the family of versions 0.x. New features will only be implemented for the 1.x family. After Nextclade 1.x stabilizes, Nextclade 0.x will be deprecated and no further versions under 0.x will be released. This will be announced separately.

  • After Nextclade 1.x stabilizes, the usage of NPM version of Nextclade 0.x on @nextstrain/nextclade and @neherlab/nextclade will be deprecated. This will be announced separately. The versions 0.x will still be available on NPM, but Nextclade 1.x will be published on Github Releases instead.

  • Docker container images for version 1.x are currently published under Docker tag 1 (i.e. nextstrain/nextclade:1). Images for version 0.x are now available under Docker tag 0 (i.e. nextstrain/nextclade:0). The latest tag still points to version 0.x. After nextclade 1.x stabilizes and 0.x is deprecated, the latest tag will be changed to point to version 1.x. This will be announced separately.

nextclade-1.0.0-alpha.0

23 Apr 11:07
Compare
Choose a tag to compare

Private release.
Nextclade 1.0.0 is a complete rewrite of Nextclade.
Release notes are still in the works.

nextalign-1.0.0-alpha.0

23 Apr 11:07
Compare
Choose a tag to compare

Private release.
Changed version to align with Nextclade 1.0.0.