Repository navigation
v0.1.0-beta.33
Pre-release
Pre-release
·
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:
- `BaseAnalysisRunner.validateInput` now skips JS codon validation for non-FASTA/NEXUS input — matches dm2's "trust HyPhy" behavior.
- `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.