Version numbering#
MFEprimer CLI releases on GitHub use Semantic Versioning (MAJOR.MINOR.PATCH). Spec: semver.org.
How we bump within 4.x#
| Bump | When |
|---|---|
MINOR (4.5 → 4.6) |
Compatibility impact — existing scripts or parsers must change (for example a breaking *.spec.tsv column layout) |
PATCH (4.5.0 → 4.5.1) |
No compatibility burden — bug fixes, robustness, optional enhancements, smarter defaults that keep old usage working |
MAJOR (4 → 5) |
Ecosystem-level incompatibility; rare while we stay on 4.x |
Before tagging, ask: will documented existing usage break? If yes → at least MINOR. Otherwise → PATCH. Do not bump MINOR only because a change “feels big” (example: auto-detect query -k shipped as v4.5.1, not 4.6.0).
Recent examples#
| Version | Why that level |
|---|---|
| v4.5.0 | Breaking TSV column layout for SNP QC → MINOR |
| v4.5.1 | Auto-detect -k from index + index hardening → PATCH |
| v4.3.1 | Additive productTm / ta columns → PATCH |
See also: Updates, Version numbering, Large / repeat-rich genomes.