Skip to content

v0.1.0-beta.33

Pre-release
Pre-release

Choose a tag to compare

@stevenweaver stevenweaver released this 09 Jun 00:58
· 116 commits to main since this release

Bug Fixes

  • Restore WASM analysis execution after the beta.32 regression — `HyPhy WASM's --code` rejects numeric genetic code IDs ('0' is not a valid value for parameter 'Choose Genetic Code'), which broke every analysis since beta.32. Reverted to passing the descriptive name. Multi-word names like 'Vertebrate mitochondrial' still get space-split by aioli — proper fix (args as array to cliObj.exec) tracked separately. (#138)
  • Fix tree-source auto-switch race that blocked analyses on file load — The reactive guard for missing NJ trees fired at component mount before any file was loaded, switching `selectedTreeSource` to `'upload-new'` and leaving the state stuck when the file later loaded with a valid NJ tree. Gated the reactive on `$fileMetricsStore` so it only runs after datareader has completed. (#138)

Improvements

  • File-format parity with dm2 — dm2 supports 5 alignment formats (FASTA, NEXUS, PHYLIP sequential+interleaved, MEGA, CLUSTAL) end-to-end via HyPhy. dm3's JS-side codon validation only recognized FASTA and NEXUS, so PHYLIP/MEGA/CLUSTAL files uploaded fine but failed at analysis-start with a confusing `Sequence data found before header` error. Two complementary fixes:
    1. `BaseAnalysisRunner.validateInput` now skips JS codon validation for non-FASTA/NEXUS input — matches dm2's "trust HyPhy" behavior.
    2. `datareader.bf` now always emits a canonical FASTA (`DATA_FILE_PRINT_FORMAT = 9`, not 6 which is NEXUS) that downstream code prefers for submission. Every analysis sees FASTA regardless of what the user uploaded. (#139)
  • 28 new unit tests covering format detection and validation gating.