Skip to content

2.6.0

Compare
Choose a tag to compare
@nextstrain-bot nextstrain-bot released this 27 Sep 07:31

Nextclade Web 2.6.0, Nextclade CLI 2.6.0 (2022-09-27)

New metrics: Immune escape and ACE-2 binding

We added software support for the new custom metrics in Nextclade CLI and nextclade Web. The dataset "sars-cov-2-21L" with the data required for these metrics to appear will be released in the coming days. Stay tuned.

The dataset-name URL parameter is now properly applied in Nextclade Web, even when input-fasta is not provided

Previously dataset-name URL parameter was ignored, unless input-fasta is also set. Now the dataset-name will make Nextclade Web to preselect the requested dataset, regardless of whether the input-fasta URL parameter is also provided. This allows to create URLs which preconfigure Nextclade Web with a certain dataset and dataset customizations, with intent to provide fasta and to run manually.

Better error handling

We improved error handling, such that some of the errors in Nextclade Web now have better error messages. Some of the errors that previously caused hard crash in in Nextclade CLI are now handled more gracefully and with better error messages.

Internal changes

We upgraded Rust to 1.63.0 and Nextclade CLI and Nextalign CLI are now using std::thread::scope for better multithreading support.

Commit history

(click to expand)
  • [b2ba122] chore: remove deprecation notices from v1

  • [3a374c2] refactor: move types.ts file

It is lonely in the old deprecated algorithms/ directory, let's put it at the root.
Remaining changes are just import path change (automated).

  • [0583e91] refactor: format

  • [4a17d36] Merge pull request #981 from nextstrain/refactor/cleanup

  • [ab12755] fix(web): correct text instructions for fasta text fields

  • [129f549] Merge pull request #983 from nextstrain/fix/text-field-text

  • [7ea8414] fix: consider different file encodings

This attempts to mitigate crash in web when the fasta file is not UTF-8 or ASCII encoded.

Here I am trying to deduce a list of encodings the file resembles and then attempting to decode the contents of the file from these encodings to a JS string, instead of simply using the FileReader's .toString() function.

  • [992fc57] refactor: lint

  • [6f4b5b4] feat: try a more accurate chardet library

  • [b0f7bf2] feat: rephrase error message

  • [18d8716] Merge pull request #987 from nextstrain/fix/web-file-encoding

  • [f6bdaae] refactor: lint, fix typings

  • [86e2ac1] Merge pull request #988 from nextstrain/refactor/lint

  • [e8cce45] feat: calculate escape

  • [b5c6b29] feat: add escape to csv and tsv outputs

  • [add2a85] feat(web): add escape column

  • [551e4e2] feat: hide 'Escape' column when there aren't any values

  • [e4c02b0] refactor: lint

  • [8694a52] feat: avoid sending filenames to plausible

  • [f5cbfa2] feat: improve error page and popup

  • [b2f3b41] refactor: lint

  • [9650e27] Merge pull request #992 from nextstrain/feat/web-improve-error-handling

  • [ccbcacf] feat: extract translation strings

  • [ff265c1] Merge branch 'feat/extract-translation-strings'

  • [628666a] feat: setup automatic translation with AWS Translate

  • [d4e9bde] Merge pull request #993 from nextstrain/feat/autotranslate

  • [a674e35] feat: apply automatic translations

  • [b7a3ab1] feat(web): add more languages

  • [14b98fc] feat(web): translate more strings

  • [31bc2ef] refactor: correct compiler error

  • [b495e7b] feat(web): persist selected locale

  • [e9f63e1] fix(web): sort locales

  • [f90856b] Merge pull request #994 from nextstrain/feat/translate

  • [09ec70c] chore(deps): bump auspice in /packages_rs/nextclade-web

Bumps auspice from 2.37.3 to 2.38.0.


updated-dependencies:

  • dependency-name: auspice
    dependency-type: direct:production
    update-type: version-update:semver-minor
    ...

Signed-off-by: dependabot[bot] [email protected]

  • [d3b35c3] Merge pull request #996 from nextstrain/dependabot/npm_and_yarn/packages_rs/nextclade-web/auspice-2.38.0

  • [cc79e84] chore: release web v2.5.1

  • [bf21f97] Merge remote-tracking branch 'origin/master' into feat/escape

  • [44b1f9e] fix: correct escape algorithm

  • [125ac16] fix(web): ensure sorting results table by escape works

  • [ce1693a] feat: add text to escape help tooltip

  • [3a502a9] Add clarification on when escape scores are unreliable

  • [b00e6c3] feat(web): make escape column tooltip wider

  • [9450041] feat: allow optional name different from gene name for escape values

  • [ac1b14a] feat(web): add tooltips for escape column

  • [3cd1596] feat: skip escape calculation for outgroup samples

  • [e499dc7] fix(web): sorting by escape

  • [2320822] feat: list ignored clades in the virus json

  • [e06e142] feat: allow for escape coefs per posiition only and per posiition per aa

  • [dfbf64b] refactor: rename identifiers to clarify intent

  • [61e4fd7] refactor: lint

  • [6d28d49] feat: render phenotype values in separate columns

  • [006396d] feat: use 'default' value if aa is not found in phenotype data

  • [0e20f4a] fix(web): fix custom column sorting

  • [f27d1b4] feat(web): truncate phenotype values to 2 digits

  • [bf85198] feat(web): center phenotype value

  • [640e065] fix: avoid calling a method on undefined

  • [c82f35d] feat(web): make phenotype columns different width from clades, narrower

  • [8718dad] fix(web): read dataset name from URL, even when fasta is not provided

Resolves: #998

  • [45c47c2] feat(web): show an indicator when dataset files are customized

  • [edcdc25] feat: replace some calls to unwrap() with proper error handling

  • [1b238b2] feat: improve error message

  • [b10aa40] refactor: make function get_comp_level() infallible

This function can never fail. Here I remove a call to unwrap(), which can never occur, by replacing traits, and remove error return type

  • [9de0bd2] feat: replace some more calls to unwrap() with proper error handling

Here I also introduce helper functions which return Result, to avoid long error handling boilerplate.

  • [477a837] chore: upgrade rust to 1.63.0

  • [5593f5e] Merge remote-tracking branch 'origin/master' into feat/better-error-handling

  • [a975604] refactor: use std::thread::scope instead of crossbeam::thread::scope

As a better and mostly compatible alternative
https://blog.rust-lang.org/2022/08/11/Rust-1.63.0.html#whats-in-1630-stable

  • [7e99cb9] Merge pull request #999 from nextstrain/feat/web-url-read-dataset-without-fasta

fix(web): read dataset name from URL, even when fasta is not provided

  • [8546969] Merge pull request #1000 from nextstrain/feat/better-error-handling

  • [4d24120] Merge pull request #1001 from nextstrain/refactor/cli-std-thread-scope

  • [d618249] Merge remote-tracking branch 'origin/master' into feat/escape

  • [0713174] fix(web): fix phenotype attr marshaling when downloading csv/tsv

Phenotype attrs were parsed into incorrect type when passed from JS to Rust

  • [9473ce8] Merge pull request #990 from nextstrain/feat/escape

  • [9e0791a] chore: release web and cli 2.6.0

  • [7fc59a1] chore(ci): fix resource class 'small' not available

CircleCI is failing with: "Resource class machine for small, image ubuntu-2004:202201-02 is not available for your project, or is not a valid resource class. "

Let's try 'medium' class