Skip to content

htslib-1.10, 1.11 support

Compare
Choose a tag to compare
@jblachly jblachly released this 24 Nov 04:21
· 318 commits to master since this release

htslib-1.10 (and 1.11) compatibility

We have been compatible in the develop branch for a long time, but this finally comes to master for building client programs.

Besides adding tons of new APIs and functions in htslib-1.10 (and 1.11, with which this is binary compabile, see below) There are some major breaking changes to be aware of:

  1. 64 bit coordinates (previously were 32 bit in 1.9 and earlier)
    • go make all your int coordinates long
  2. Revamped namespace to place all convenience wrappers and idiomatic D and functions not included in htslib (like cigar and MD processing) under dhtslib.*, while direct C bindings moved under htslib.* (previously dhtslib.htslib.*)

This should build against htslib-1.10 or htslib-1.11, but the C bindings are only up to date with htslib-1.10 at the moment. This only means a handful of newest functions are not yet included. You can easily tell whether you have htslib-1.9 (or earlier) versus 1.10+ installed by looking at your shared libraries: if you have htslib.so.3, you are up to date. If htslib.so.2, that reflects htslib-1.9 or earlier and is incompatible with this release.