nextstrain/auspice.us

BUG: White screen of death if Newick tree contains duplicate tip names

Closed this issue · 1 comments

Current Behavior

When loading a Newick .nwk tree in Auspice that contains a duplicate name, Auspice just shows a white screen.

Expected behavior

Auspice should fail graciously, reporting to the user what the problem is: duplicate name.

Even better would be if duplicate names were tolerated.

How to reproduce

Steps to reproduce the current behavior:

  1. Load newick tree with duplicate names
  2. Observe result

Example:

(A:1,((B:1,A:1):2,(C:1,A:1):1):1;

Your environment: if browsing Nextstrain online

auspice.us (2.34.1)

Additional context

Took me quite a while to figure out what the problem was.

Console

TypeError: n is undefined
    e https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    e https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    e https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    u https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    render https://auspice.us/dist/auspice.chunk.7.bundle.601f509793cce87b7cc2.js:1
    le https://auspice.us/dist/auspice.chunk.7.bundle.601f509793cce87b7cc2.js:1
    value https://auspice.us/dist/auspice.chunk.7.bundle.601f509793cce87b7cc2.js:1
    ss https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    vu https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    unstable_runWithPriority https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    Wo https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    du https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    eu https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    o https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    unstable_runWithPriority https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    Wo https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    $o https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    z https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    onmessage https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
[auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17:82566](https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js)
    ns https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    callback https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    di https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    ss https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    vu https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    unstable_runWithPriority https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    Wo https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    du https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    eu https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    o https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    unstable_runWithPriority https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    Wo https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    $o https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    z https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    onmessage https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
Uncaught TypeError: n is undefined
    e https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    e https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    e https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    u https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    render https://auspice.us/dist/auspice.chunk.7.bundle.601f509793cce87b7cc2.js:1
    le https://auspice.us/dist/auspice.chunk.7.bundle.601f509793cce87b7cc2.js:1
    value https://auspice.us/dist/auspice.chunk.7.bundle.601f509793cce87b7cc2.js:1
    ss https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    vu https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    unstable_runWithPriority https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    Wo https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    du https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    eu https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    o https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    unstable_runWithPriority https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    Wo https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    $o https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    z https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    onmessage https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
[auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26:76293](https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js)
    e https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    e https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    e https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    u https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:26
    render https://auspice.us/dist/auspice.chunk.7.bundle.601f509793cce87b7cc2.js:1
    le https://auspice.us/dist/auspice.chunk.7.bundle.601f509793cce87b7cc2.js:1
    value https://auspice.us/dist/auspice.chunk.7.bundle.601f509793cce87b7cc2.js:1
    ss https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    vu https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    vu self-hosted:1287
    unstable_runWithPriority https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    Wo https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    du https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    eu https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    eu self-hosted:1230
    o https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    unstable_runWithPriority https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    Wo https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    $o https://auspice.us/dist/auspice.chunk.core-vendors.bundle.126811c65cb905dbfcea.js:17
    z https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42
    onmessage https://auspice.us/dist/auspice.chunk.5.bundle.566aaba5de43a7cdf717.js:42

Closed by #27