Skip to content

Minimap2-2.18 (r1015)

Compare
Choose a tag to compare
@lh3 lh3 released this 09 Apr 17:35
· 213 commits to master since this release

This release fixes multiple rare bugs in minimap2 and adds additional
functionality to paftools.js.

Changes to minimap2:

  • Bugfix: a rare segfault caused by an off-by-one error (#489)

  • Bugfix: minimap2 segfaulted due to an uninitilized variable (#622 and #625).

  • Bugfix: minimap2 parsed spaces as field separators in BED (#721). This led
    to issues when the BED name column contains spaces.

  • Bugfix: minimap2 --split-prefix did not work with long reference names
    (#394).

  • Bugfix: option --junc-bonus didn't work (#513)

  • Bugfix: minimap2 didn't return 1 on I/O errors (#532)

  • Bugfix: the de:f tag (sequence divergence) could be negative if there were
    ambiguous bases

  • Bugfix: fixed two undefined behaviors caused by calling memcpy() on
    zero-length blocks (#443)

  • Bugfix: there were duplicated SAM @SQ lines if option --split-prefix is in
    use (#400 and #527)

  • Bugfix: option -K had to be smaller than 2 billion (#491). This was caused
    by a 32-bit integer overflow.

  • Improvement: optionally compile against SIMDe (#597). Minimap2 should work
    with IBM POWER CPUs, though this has not been tested. To compile with SIMDe,
    please use make -f Makefile.simde.

  • Improvement: more informative error message for I/O errors (#454) and for
    FASTQ parsing errors (#510)

  • Improvement: abort given malformatted RG line (#541)

  • Improvement: better formula to estimate the dv:f tag (approximate sequence
    divergence). See DOI:10.1101/2021.01.15.426881.

  • New feature: added the --mask-len option to fine control the removal of
    redundant hits (#659). The default behavior is unchanged.

Changes to mappy:

  • Bugfix: mappy caused segmentation fault if the reference index is not
    present (#413).

  • Bugfix: fixed a memory leak via 238b6bb

  • Change: always require Cython to compile the mappy module (#723). Older
    mappy packages at PyPI bundled the C source code generated by Cython such
    that end users did not need to install Cython to compile mappy. However, as
    Python 3.9 is breaking backward compatibility, older mappy does not work
    with Python 3.9 anymore. We have to add this Cython dependency as a
    workaround.

Changes to paftools.js:

  • Bugfix: the "part10-" line from asmgene was wrong (#581)

  • Improvement: compatibility with GTF files from GenBank (#422)

  • New feature: asmgene also checks missing multi-copy genes

  • New feature: added the misjoin command to evaluate large-scale misjoins and
    megabase-long inversions.

Although given the many bug fixes and minor improvements, the core algorithm
stays the same. This version of minimap2 produces nearly identical alignments
to v2.17 except very rare corner cases.

Now unimap is recommended over minimap2 for aligning long contigs against a
reference genome. It often takes less wall-clock time and is much more
sensitive to long insertions and deletions.

(2.18: 9 April 2021, r1015)