diff --git a/CHANGELOG.md b/CHANGELOG.md index 034b32d8..4d66f933 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,10 @@ release completed. ## [Unreleased] +## [0.9.0] — TBD — `v0.9.0` + +> DRAFT release prep (do not tag until the definitive run is integrated). The entries below are those of the merged pull requests of the v0.9.0 cycle; the definitive run is `--preset v0.9.1 --withheld-detail-policy on` with the `tblastn` outlier policy (`MATPREDICT_TBLASTN_SEG=yes`, `MATPREDICT_TBLASTN_SEG_GENES=SLA2,APN2,MAT1-1-1`) and its counts are filled in once the tables are built. Rules that exist but are in no preset: `--weak-fragment-cap-policy`, `--weak-coverage-noise-policy`, `--strong-single-gene-policy`, `--confidence-cap-policy`. + ### Added - `--preset v0.9.1` (curator's ruling 2026-11-07): v0.9 plus three rules that lower a tier or withhold an idiomorph label: `--weak-flank-cap-policy on` (#129: 23 loci in the v0.8.1 run go from `high` to `medium`), `--short-fragment-vote-policy undetermined` (#138: 107 loci become `undetermined`) and `--single-region-cap-policy on` (#167: 202 Basidiomycota loci go from `high` to `medium`). The weak-coverage rule (#149: 109 loci `medium` to `high`) is held out for the curator's review. It is the preset of the v0.9.0 full run. - `--preset v0.9` (curator's ruling 2026-11-07): v0.8.1 plus the three report-only rules of the v0.9.0 cycle: `--cross-family-policy keep_labelled` (#255: both calls kept where the kept call has no idiomorph label and the other has one; one genome in 23,579 v0.8.1 reports is affected), `--idiomorph-margin-policy separate` (#145: a single-candidate identity gap is reported as `idiomorph_identity_gap`; 74 of the loci in a 300-genome panel move the value), and `--scope-label-policy on` (#170: 10 `Basidiomycota:MAT` loci in the v0.8.1 run, on STE3, PAN6 and RPL39 alone outside the family's scope, are marked `family_unconfirmed`). No call, coordinate or tier changes. The rules that change a tier or an idiomorph label (`--weak-fragment-cap-policy`, `--weak-flank-cap-policy`, `--short-fragment-vote-policy`, `--single-region-cap-policy`, `--weak-coverage-noise-policy`) are in no preset until the curator approves their genome lists. diff --git a/CITATION.cff b/CITATION.cff index 91fd9189..855e7cb6 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -8,7 +8,7 @@ authors: affiliation: University of California-Riverside orcid: "https://orcid.org/0000-0002-7591-0020" title: "MATPredict: MAT locus identification in Fungi" -version: 0.8.1 +version: 0.9.0 doi: TBD date-released: 2026-11-06 url: "https://github.com/stajichlab/MATPredict" diff --git a/README.md b/README.md index 93581156..e190eeb0 100644 --- a/README.md +++ b/README.md @@ -552,14 +552,14 @@ No paper describes MATPredict yet. Cite the software and the release you used. The citation metadata is in [CITATION.cff](CITATION.cff); GitHub shows it under "Cite this repository". -> Stajich JE. MATPredict: MAT locus identification in Fungi. Version 0.8.1. +> Stajich JE. MATPredict: MAT locus identification in Fungi. Version 0.9.0. > https://github.com/stajichlab/MATPredict ```bibtex @software{matpredict, author = {Stajich, Jason E.}, title = {MATPredict: MAT locus identification in Fungi}, - version = {0.8.1}, + version = {0.9.0}, url = {https://github.com/stajichlab/MATPredict}, year = {2026} } diff --git a/pyproject.toml b/pyproject.toml index 571af152..c38b1258 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "MATPredict" -version = "0.8.1" +version = "0.9.0" description = "Fungal MAT locus annotator/classifier" authors = [{name = "Jason Stajich", email = "jason.stajich@ucr.edu"}] requires-python = ">=3.11" diff --git a/web/intro/about.md b/web/intro/about.md index f62a3210..65a6d874 100644 --- a/web/intro/about.md +++ b/web/intro/about.md @@ -53,13 +53,13 @@ The command-line software is cited in the project README, under [Citation](https://github.com/stajichlab/MATPredict#citation). The citation metadata is in [CITATION.cff](https://github.com/stajichlab/MATPredict/blob/main/CITATION.cff), which GitHub shows under "Cite this repository". -> Stajich JE. MATPredict: MAT locus identification in Fungi. Version 0.8.1. https://github.com/stajichlab/MATPredict +> Stajich JE. MATPredict: MAT locus identification in Fungi. Version 0.9.0. https://github.com/stajichlab/MATPredict ```bibtex @software{matpredict, author = {Stajich, Jason E.}, title = {MATPredict: MAT locus identification in Fungi}, - version = {0.8.1}, + version = {0.9.0}, url = {https://github.com/stajichlab/MATPredict}, year = {2026} } diff --git a/web/spike/browser/run-detect.mjs b/web/spike/browser/run-detect.mjs index fd62100f..c40d1a39 100644 --- a/web/spike/browser/run-detect.mjs +++ b/web/spike/browser/run-detect.mjs @@ -15,7 +15,7 @@ const [genome, outDir, ...rest] = process.argv.slice(2); const phylum = rest[rest.indexOf("--phylum") + 1] ?? "Ascomycota"; const ENGINE = process.env.ENGINE ?? "losat"; // tblastn engine: "losat" or "mmseqs" const home = "/Users/jstajich/projects/MATPredict"; -const WHEEL = process.env.WHEEL ?? join(home, "web/spike/dist/matpredict-0.8.1-py3-none-any.whl"); +const WHEEL = process.env.WHEEL ?? join(home, "web/spike/dist/matpredict-0.9.0-py3-none-any.whl"); const DB_DIR = process.env.DB_DIR ?? join(home, "db"); const WASM_DIR = process.env.WASM_DIR ?? join(process.env.HOME, "wasm-build"); const LOC_DIR = process.env.LOCALIZER_DIR ?? join(home, "web/spike/localizer"); @@ -74,7 +74,7 @@ parser = argparse.ArgumentParser(prog="matpredict") subs = parser.add_subparsers(dest="cmd") detect_cli.register_subcommands(subs) args = parser.parse_args(["detect", "--genome", "/data/${basename(genome)}", "--phylum", "${phylum}", - "--preset", "v0.8.1", "--out-dir", "/out"]) + "--preset", "v0.9.1", "--out-dir", "/out"]) error = None try: rc = args.func(args) diff --git a/web/spike/page/app.mjs b/web/spike/page/app.mjs index 8f85853c..65a67551 100644 --- a/web/spike/page/app.mjs +++ b/web/spike/page/app.mjs @@ -107,7 +107,7 @@ from MATPredict.detect import cli as detect_cli parser = argparse.ArgumentParser(prog="matpredict") subs = parser.add_subparsers(dest="cmd") detect_cli.register_subcommands(subs) -args = parser.parse_args(["detect", "--genome", "/data/${genomeName}", "--phylum", "${phylum}", "--preset", "v0.8.1", "--out-dir", "/out"]) +args = parser.parse_args(["detect", "--genome", "/data/${genomeName}", "--phylum", "${phylum}", "--preset", "v0.9.1", "--out-dir", "/out"]) error = None rc = None try: