-
Notifications
You must be signed in to change notification settings - Fork 3
Changelog
github-actions[bot] edited this page Sep 23, 2026
·
10 revisions
- Fixed:
dendrogram-from-matrixfailed on matrices whose sample names look like numbers (001,1e3): they were parsed as numbers and no longer matched between rows and columns. Names are now kept as written. - Fixed: Ctrl-C during sketching still ran every queued sample before stopping.
- Fixed: a sample listed twice in the metadata file was plotted twice in the PCoA; it is now an error.
- Fixed: a metadata category named "Other" was shown in grey and listed twice in the legend.
- Infinite values in a distance matrix are rejected like missing values.
- The command is logged with quotes so it can be copied and run again as is.
- Available on PyPI:
pip install genome-comparator(Mash must be installed separately). Releases are published to PyPI automatically. - Bioconda recipe in
recipe/meta.yaml. - Package metadata: keywords, classifiers, and links to the documentation, changelog, issues and DOI.
- Releases are archived on Zenodo: https://doi.org/10.5281/zenodo.22920856 (all versions). DOI badge and citation
added to the README and
CITATION.cff.
- Fixed:
--meand--bootstrapcrashed with exactly 3 genomes. - Fixed:
tree-renamerandtree-collapserwrote bootstrap support values as quoted labels ('95'), which tree viewers do not read as support values. They are now kept as support values. - Fixed: reading an
.xlsmatrix without thexlrdpackage gave a traceback; the error now explains how to fix it. - Fixed: the PCoA axes showed "nan%" when all genomes were identical.
-
tree-renamerwarns when several tips end up with the same name. - Packaging: SPDX license metadata (no more setuptools deprecation warning); README images use absolute links.
- The main command is now
genome-comparator, the same name as the tool, with the same options.mash-phylostill works but prints a deprecation warning.python -m genome_comparatoralso works. - Description added to
CITATION.cff(used by Zenodo).
- PCoA plots use a colourblind-friendly palette (Okabe-Ito) and one marker shape per category, instead of Plotly's default colours. Missing metadata is shown as "Unknown"; past 42 categories, the least frequent ones are grouped into "Other".
- Fixed:
sample_stats.tsvleft the number of sequences empty for single-sequence assemblies (e.g. complete genomes). - New example dataset (
examples/listeria/, 22 public genomes) and wiki pages: Tutorial, How it works, Performance, Related tools and FAQ. - README with example figures, features, citation information;
CITATION.cff,CONTRIBUTING.md, code of conduct, security policy, and issue and pull request templates.
-
mash-phylonow finds Mash in its own conda environment whenmashis not in thePATH, so/path/to/envs/genome_comparator/bin/mash-phyloworks without activating the environment. The log shows whichmashwas used.
- Fixed:
--bootstrapcould hang on Python < 3.14. Worker processes were started withfork(the Linux default before Python 3.14), which can deadlock when the parent process runs threads. They now useforkserver(orspawnwhereforkserveris not available). - CI: 20-minute timeout on the test jobs, and no duplicate test runs on tag pushes.
- New
--bootstrap Noption: support values on all the trees (UPGMA, NJ, ME), from replicates sketched with different hash seeds. Replicate trees are built in parallel worker processes. See Bootstrap support. - Documentation moved to this wiki, maintained in the
wiki/folder of the repository.
- Package layout with installable commands and a
pyproject.toml;conda env create -f environment.ymlworks. - Pairwise distances are computed with a single
mash trianglecall instead of onemash distper sample. - Sketches are named after the sample, so the slow file-path-to-name substitution is gone.
- Fixed: fasta files whose name contains
_R1/_R2(e.g.Iso_R10.fastaandIso_R11.fasta) were merged into a single sample. - Fixed: branch lengths of the hierarchical clustering tree were rounded to 2 decimals (most Mash distances became 0).
- Fixed: re-running in the same output folder kept the old
all.mshbecausemash pasterefuses to overwrite it. - Fixed: failures of Mash were ignored; they are now reported.
- Fixed: relative input paths starting with
../pointed to the wrong folder. - Fixed:
--cleanrecursively deleted every*.listfile under the output folder; it now only removes files it created. - Fixed:
tree-renamerused partial matches (S1also renamedS10);tree-collapserwrote invalid Newick when names contained commas. - The default hierarchical clustering method is now
average(UPGMA) rather thanward, which assumes Euclidean distances. Use--linkage wardfor the previous behaviour. - The PCA was replaced by a PCoA (the proper ordination for a distance matrix), with optional metadata colouring.
- New
--metree,--phylipoutput,--metadata/--color-by,--min-copies,--forceand--versionoptions. -
sample_stats.txtis now a tab-separated table:sample_stats.tsv. -
tree-collapserno longer needs ete3.
Getting started
Understanding the results
Reference