Releases: lh3/minimap2
Minimap2-2.28 (r1209)
Notable changes to minimap2:
-
Bugfix:
--MD
was not working properly due to the addition of--ds
in the
last release (#1181 and #1182). -
New feature: added an experimental preset
lr:hqae
for aligning accurate
long reads back to their assembly. It has been observed thatmap-hifi
and
lr:hq
may produce many wrong alignments around centromeres when accurate
long reads (PacBio HiFi or Nanopore duplex/Q20+) are mapped to a diploid
assembly constructed from them. This new preset produces much more accurate
alignment. It is still experimental and may be subjective to changes in
future. -
Change: reduced the default
--cap-kalloc
to 500m to lower the peak
memory consumption (#855).
Notable changes to mappy:
- Bugfix: mappy option struct was out of sync with minimap2 (#1177).
Minimap2 should output identical alignments to v2.27.
(2.28: 27 March 2024, r1209)
Minimap2-2.27 (r1193)
Notable changes to minimap2:
-
New feature: added the
lr:hq
preset for accurate long reads at ~1% error
rate. This was suggested by Oxford Nanopore developers (#1127). Whether
this preset works well for PacBio HiFi reads has not been tested. -
New feature: added the
map-iclr
preset for Illumina Complete Long Reads
(#1069), provided by Illumina developers. -
New feature: added option
-b
to specify mismatch penalty for base
transitions (i.e. A-to-G or C-to-T changes). -
New feature: added option
--ds
to generate a newds:Z
tag that
indicates uncertainty in INDEL positions. It is an extension tocs
. The
mgutils-es6.js
script in minigraph parsesds
. -
Bugfix: avoided a NULL pointer dereference (#1154). This would not have an
effect on most systems but would still be good to fix. -
Bugfix: reverted the value of
ms:i
to pre-2.22 versions (#1146). This was
an oversight. See fcd4df2 for details.
Notable changes to paftools.js and mappy:
-
New feature: expose
bw_long
to mappy's Aligner class (#1124). -
Bugfix: fixed several compatibility issues with k8 v1.0 (#1161 and #1166).
Subcommands "call", "pbsim2fq" and "mason2fq" were not working with v1.0.
Minimap2 should output identical alignments to v2.26, except the ms tag.
(2.27: 12 March 2024, r1193)
Minimap2-2.26 (r1175)
Fixed the broken Python package. This is the only change.
(2.25: 25 April 2023, r1173)
Minimap2-2.25 (r1173)
Notable changes:
-
Improvement: use the miniprot splice model for RNA-seq alignment by default.
This model considers non-GT-AG splice sites and has slightly higher
(<0.1%) accuracy and sensitivity on real human data. -
Change: increased the default
-I
to8G
such that minimap2 would create a
uni-part index for a pair of mammalian genomes. This change may increase the
memory for all-vs-all read overlap alignment given large datasets. -
New feature: output the sequences in secondary alignments with option
--secondary-seq
(#687). -
Bugfix: --rmq was not parsed correctly (#1010)
-
Bugfix: possibly incorrect coordinate when applying end bonus to the target
sequence (#1025). This is a ksw2 bug. It does not affect minimap2 as
minimap2 is not using the affected feature. -
Improvement: incorporated several changes for better compatibility with
Windows (#1051) and for minimap2 integration at Oxford Nanopore Technologies
(#1048 and #1033). -
Improvement: output the HD-line in SAM output (#1019).
-
Improvement: check minimap2 index file in mappy to prevent segmentation
fault for certain indices (#1008).
For genomic sequences, minimap2 should give identical output to v2.24.
Long-read RNA-seq alignment may occasionally differ from previous versions.
(2.25: 25 April 2023, r1173)
Minimap2-2.24 (r1122)
This release improves alignment around long poorly aligned regions. Older
minimap2 may chain through such regions in rare cases which may result in
missing alignments later. The issue has become worse since the the change of
the chaining algorithm in v2.19. v2.23 implements an incomplete remedy. This
release provides a better solution with a X-drop-like heuristic and by enabling
two-bandwidth chaining in the assembly mode.
(2.24: 26 December 2021, r1122)
Minimap2-2.23 (r1111)
Notable changes:
-
Bugfix: fixed missing alignments around long inversions (#806 and #816).
This bug affected v2.19 through v2.22. -
Improvement: avoid extremely long mapping time for pathologic reads with
highly repeated k-mers not in the reference (#771). Use --q-occ-frac=0
to disable the new heuristic. -
Change: use --cap-kalloc=1g by default.
(2.23: 18 November 2021, r1111)
Minimap2-2.22 (r1101)
When choosing the best alignment, this release uses logarithm gap penalty and
query-specific mismatch penalty. It improves the sensitivity to long INDELs in
repetitive regions.
Other notable changes:
-
Bugfix: fixed an indirect memory leak that may waste a large amount of
memory given highly repetitive reference such as a 16S RNA database (#749).
All versions of minimap2 have this issue. -
New feature: added --cap-kalloc to reduce the peak memory. This option is
not enabled by default but may become the default in future releases.
Known issue:
- Minimap2 may take a long time to map a read (#771). So far it is not clear
if this happens to v2.18 and earlier versions.
(2.22: 7 August 2021, r1101)
Minimap2-2.21 (r1071)
Minimap2-2.20 (r1061)
This release fixed a bug in the Python module and improves the command-line
compatibiliity with v2.18. In v2.19, if -r
is specified with an asm*
preset,
users would get alignments more fragmented than v2.18. This could be an issue
for existing pipelines specifying -r
. This release resolves this issue.
(2.20: 27 May 2021, r1061)
Minimap2-2.19 (r1057)
This release includes a few important improvements backported from unimap:
-
Improvement: more contiguous alignment through long INDELs. This is enabled
by the minigraph chaining algorithm. Allasm*
presets now use the new
algorithm. They can find INDELs up to 100kb and may be faster for
chromosome-long contigs. The default mode andmap*
presets use this
algorithm to replace the long-join heuristic. -
Improvement: better alignment in highly repetitive regions by rescuing
high-occurrence seeds. If the distance between two adjacent seeds is too
large, attempt to choose a fraction of high-occurrence seeds in-between.
Minimap2 now produces fewer clippings and alignment break points in long
satellite regions. -
Improvement: allow to specify an interval of k-mer occurrences with
-U
.
For repeat-rich genomes, the automatic k-mer occurrence threshold determined
by-f
may be too large and makes alignment impractically slow. The new
option protects against such cases. Enabled forasm*
andmap-hifi
. -
New feature: added the
map-hifi
preset for mapping PacBio High-Fidelity
(HiFi) reads. -
Change to the default: apply
--cap-sw-mem=100m
for genomic alignment. -
Bugfix: minimap2 could not generate an index file with
-xsr
(#734).
This release represents the most significant algorithmic change since v2.1 in
2017. With features backported from unimap, minimap2 now has similar power to
unimap for contig alignment. Unimap will remain an experimental project and is
no longer recommended over minimap2. Sorry for reverting the recommendation in
short time.
(2.20: 26 May 2021, r1055)