News:Samtools/htslib/bcftools 1-3 released
Entering edit mode
8.2 years ago

For those who didn't see it via email or twitter, samtools/htslib/bcftools version 1.3 have been released. There were a bunch of changes, though I'll just put a few of what I personally think are the major ones below:


  • Files can now be accessed via HTTPS and Amazon S3 in addition to HTTP and FTP, when HTSlib is configured to use libcurl for network file access rather than the included basic knetfile networking.
  • fai_build() and samtools faidx now accept initial whitespace in ">" headers (e.g., "> chr1 description" is taken to refer to "chr1").
  • HTSlib's configure script and Makefile now fully support the standard convention of allowing CC/CPPFLAGS/CFLAGS/LDFLAGS/LIBS to be overridden as needed. Previously the Makefile listened to $(LDLIBS) instead; if you were overriding that, you should now override LIBS rather than LDLIBS.


  • ## The obsolete samtools sort in.bam out.prefix usage has been removed. If you are still using ‑f, ‑o, or out.prefix, convert to use -T PREFIX and/or -o FILE instead.
  • The bamshuf command has been renamed to collate (hence the term bamshuf no longer appears in the documentation, though it still works on the command line for compatibility with existing scripts).
  • The mpileup command now outputs the unseen allele in VCF/BCF as <*> rather than X or <X> as previously, and now has AD, ADF, ADR, INFO/AD, INFO/ADF, INFO/ADR --output-tags annotations that largely supersede the existing DV, DP4, DPR annotations.
  • The rmdup command no longer immediately aborts (previously it always aborted with bam_get_library() not yet implemented), but remains not recommended for most use.
  • Samtools index's optional index output path argument works again.
  • Fixed calmd, targetcut, and potential mpileup segfaults when given broken alignments with POS far beyond the end of their reference sequences.
  • Samtools stats now outputs separate "N" and "other" columns in the ACGT content per cycle section.
  • Added -a option to samtools depth to show all locations, including zero depth sites.
  • New samtools dict command, which creates a sequence dictionary (as used by Picard) from a FASTA reference file.
  • Samtools stats --target-regions option works again.
  • samtools fixmate - - works in pipelines again; with 1.0 to 1.2, this failed with [bam_mating] cannot determine output format.
  • Restored previous samtools calmd -u behaviour of writing compression level 0 BAM files. Samtools 1.0 to 1.2 incorrectly wrote raw non-BGZF BAM files, which cannot be read by most other tools. (Samtools commands other than calmd were unaffected by this bug.)


  • bcftools call has new options --ploidy and --ploidy-file to make handling sample ploidy easier. See man page for details.
  • stats: -i/-e short options changed to -I/-E to be consistent with the filtering -i/-e (--include/--exclude) options used in other tools.
  • general --threads option to control the number of output compression threads used when outputting compressed VCF or BCF.
  • cnv and polysomy: new commands for detecting CNVs, aneuploidy, and contamination from SNP genotyping data.

Congrats to the htslib, samtools, and bcftools developers on their fine work!

FYI, you have to explicitly enable compilation against libcurl, so don't just blindly ./configure and expect that to happen.

htslib samtools bcftools • 4.9k views

Login before adding your answer.

Traffic: 1640 users visited in the last hour
Help About
Access RSS

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6