Be notified of new releases
Create your free GitHub account today to subscribe to this repository for new releases and build software alongside 28 million developers.Sign up
The bcftools-1.9.tar.bz2 download is the full source code release. The “Source code” downloads are generated by GitHub and are incomplete as they don't bundle HTSlib and are missing some generated files.
REF and ALT columns can be now transferred from the annotation file.
fixed bug when setting vector_end values.
new -M option to control output at missing genotypes
variants immediately following insersions should not be skipped. Note however, that the current fix requires normalized VCF and may still falsely skip variants adjacent to multiallelic indels.
bug fixed in -H selection handling
the --tsv2vcf option now makes the missing genotypes diploid, "./." instead of "."
the behavior of -i/-e with --gvcf2vcf changed. Previously only sites with FILTER set to "PASS" or "." were expanded and the -i/-e options dropped sites completely. The new behavior is to let the -i/-e options control which records will be expanded. In order to drop records completely, one can stream through "bcftools view" first.
since the real consequence of start/splice events are not known, the aminoacid positions at subsequent variants should stay unchanged
--forceoption to skip malformatted transcripts in GFFs with out-of-phase CDS exons.
+dosage: output all alleles and all their dosages at multiallelic sites
+fixref: fix serious bug in -m top conversion
add two-tailed binomial test
add functions N_PASS() and F_PASS()
add support for lists of samples in filtering expressions, with many samples it was impractical to list them all on the command line. Samples can be now in a file as, e.g.,
allow multiple perl functions in the expressions and some bug fixes
fix a parsing problem,
@was not removed from
mpileup: fixed bug where, if samples were renamed using the
--read-groups) option, some samples could be omitted from the output file.
norm: update INFO/END when normalizing indels
+split: new -S option to subset samples and to use custom file names instead of the defaults
+smpl-stats: new plugin
+trio-stats: new plugin
Fixed build problems with non-functional configure script produced on some platforms
-i, -efiltering: Support for custom perl scripts
+contrast: New plugin to annotate genotype differences between groups of samples
+fixploidy: New options for simpler ploidy usage
+setGT: Target genotypes can be set to phased by giving
run-roh.pl: Allow to pass options directly to
Number of bug fixes
The bcftools-1.8.tar.bz2 download is the full source code release. The “Source code” downloads are generated by GitHub and are incomplete as they don't bundle HTSlib and are missing some generated files.
-i, -efiltering: Major revamp, improved filtering by FORMAT fields and missing values. New
GT=ref,alt,misetc keywords, check the documentation for details.
query: Only matching expression are printed when both the -f and -i/-e expressions contain genotype fields. Note that this changes the original behaviour. Previously all samples were output when one matching sample was found. This functionality can be achieved by pre-filtering with view and then streaming to query. Compare
bcftools query -f'[%CHROM:%POS %SAMPLE %GT\n]' -i'GT="alt"' file.bcf
bcftools view -i'GT="alt"' file.bcf -Ou | bcftools query -f'[%CHROM:%POS %SAMPLE %GT\n]'
csq: Homs always considered phased and other fixes
-c nonework and remove
roh: Fix errors in the RG output
stats: Allow IUPAC ambiguity codes in the reference file; report the number of missing genotypes
+fill-tags: Add ExcHet annotation
+setGt: Fix bug in binom.test calculation, previously it worked only for nAlt<nRef!
+split: New plugin to split a multi-sample file into single-sample files in one go
Improve python3 compatibility in plotting scripts
The bcftools-1.7.tar.bz2 download is the full source code release. The “Source code” downloads are generated by GitHub and are incomplete as they don't bundle HTSlib and are missing some generated files.
New options added to the
consensuscommand. Note that the
-i, --iupacoption has been renamed to
-I, --iupac, in favor of the standard
Filtering expressions (
-i/-e): support for
GT=<type>expressions and for lists and ranges (#639) - see the man page for details.
csq: relax some GFF3 parsing restrictions to enable using Ensembl GFF3 files for plants (#667)
+setGTplugin: new option to set genotypes based on a two-tailed binomial distribution test. Also, allow combining
mpileup: fix typo (#636)
convert --gvcf2vcfbugfix (#641)
The bcftools-1.6.tar.bz2 download is the full source code release. The “Source code” downloads are generated by GitHub and are incomplete as they don't bundle HTSlib and are missing some generated files.
Added autoconf support to bcftools. See
INSTALLfor more details.
mpileup: fix for misreported indel depths for reads containing adjacent indels (3c1205c).
plot-vcfstats: Open stats file in text mode, not binary (#618).
fixrefplugin: Allow multiallelic sites in the
-i, --use-id reference. Also flip genotypes, not just REF/ALT!
merge: fix gVCF merge bug when last record on a chromosome opened a gVCF block (#616)
New options added to the ROH plotting script.
+pruneplugin for pruning sites by LD (R2) or maximum number of records within a window.
New N_MISSING, F_MISSING (number and fraction missing) filtering expressions.
Fix HMM initialization in
rohwhen snapshots are used in multiple chromosome VCF.
Fix buffer overflow (#607) in
The bcftools-1.5.tar.bz2 download is the full source code release. The “Source code” downloads are generated by GitHub and are incomplete as they [don't bundle HTSlib and] are missing some generated files.
This is primarily a security bug fix update.
roh: Fixed malfunctioning options
and newly allowed their combination. Added a convenience wrapper
and an interactive script for visualizing the calls
csq: More control over warning messages (#585).
Portability improvements (#587). Still work to be done on this front.
Add support for breakends to
queryand filtering (#592).
plot-vcfstats: Fix for python 2/3 compatibility (#593).
-l, --listoption for
-i, --use-idoption for
The bcftools-1.4.1.tar.bz2 download is the full source code release. The “Source code” downloads are generated by GitHub and are incomplete as they [don't bundle HTSlib and] are missing some generated files.
Release 1.4 (13 March 2017)
Two new commands -
mpileupcommand has been imported from samtools to bcftools. The
reasoning behind this is that bcftools calling is intimately tied to mpileup
and any changes to one, often requires changes to the other. Only the
genotype likelihood (BCF output) part of mpileup has moved to bcftools,
while the textual pileup output remains in samtools. The BCF output option
samtools mpileupwill likely be removed in a release or two or when
bcftools callare incompatible with the old mpileup output.
The basic mpileup functionality remains unchanged as do most of the command
line options, but there are some differences and new features that one
should be aware of:
samtools mpileup -t, --output-tagschanged to
bcftools mpileup -a, --annotateto avoid conflict with the
option common across other bcftools commands.
-s, --output-MQare no longer used as they are
only for textual pipelup output, which is not included in
-Oshort option reassigned to
--samplesfor consistency with other bcftools commands.
-v, --VCF, and
-u, --uncompressedoptions from
samtools mpileupare no longer used, being replaced by the
-O, --output-typeoption common to other bcftools commands.
-f, --fasta-refoption is now required by default to help avoid user
errors. Can be diabled using
-d, --depth .. max per-file depthnow behaves as expected
and according to the documentation, and prints a meaningful diagnostics.
-S, --samples-filecan be used to rename samples on the fly. See man
page for details.
-G, --read-groupsfunctionality has been extended to allow
reassignment, grouping and exclusion of readgroups. See man page for
-l, --positionsreplaced by the
-T, --targets-fileoptions to be consistent with other bcftools
gVCF output is supported. Per-sample gVCFs created by mpileup can be
bcftools merge --gvcf.
Can generate mpileup output on multiple (indexed) regions using the
-R, --regions-fileoptions. In samtools, one
was restricted to a single region with the
csq: New command for haplotype-aware variant consequence calling.
See man page and paper.
Updates, improvements and bugfixes for many other commands:
--mark-sitesnow works with
VCF files rather than just tab-delimited files. Now possible to annotate
a subset of samples from tab file, not just VCF file (#469). Bugfixes (#428).
call: New option
-F, --prior-freqsto take advantage of prior knowledge
of population allele frequencies. Improved calculation of the QUAL score
particularly for REF sites (#449, 7c56870).
call -m. Bugfixes (#436).
concat --naivenow works with vcf.gz in addition to bcf files.
consensus: handle variants overlapping region boundaries (#400).
convert: gvcf2vcf support for mpileup and GATK. new
assign sex to be used in certain output types (#500). Large speedup of
--haplegendsample(e8e369b) especially with
option enabled. Bugfixes (#460).
cnv: improvements to output (be8b378).
filter: bugfixes (#406).
gtcheck: improved cross-check mode (#441).
indexcan now specify the path to the output index file. Also, gains the
merge: Large overhaul of
mergecommand including support for merging
gVCF files created by
bcftools mpileup --gvcfwith the new
option. New options
-Fto control filter logic and
-0to set missing
data to REF. Resolved a number of longstanding issues (#296, #361, #401,
plugin: A number of new plugins:
GTsubset(thanks to @dlaehnemann)
and changes to existing plugins:
reheader: allow muiltispace delimiters in
roh: Now possible to process multiple samples at once. This allows
considerable speedups for files with thousands of samples where the cost of
HMM is neglibible compared to I/O and decompressing. In order to fit tens of
thousands samples in memory, a sliding HMM can be used (new
option). Viterbi training now uses Baum-Welch algorithm, and works much
better. Support for gVCFs or FORMAT/PL tags. Added
-O, --output-typeoptions to control output of sites or regions
(compression optional). Many bugs fixed - do not segfault on missing PL
values anymore, a typo in genetic map calculation resulted in a slowdown and
view -a, --trim-alt-allelesvarious bugfixes for missing data and more
informative errors should now be given on failure to pinpoint problems.
Timestamps are now added to header lines summarising the command (#467).
Use of the
--threadsoptions should be faster across the board thanks to
changes in HTSlib meaning meaning threads are now shared by the compression
and decompression calls.
Changes to genotype filtering with
The [foo-1.x].tar.bz2 download is the full source code release. The “Source code” downloads are generated by GitHub and are incomplete as they [don't bundle HTSlib and] are missing some generated files.
concatcommand has a new
--naiveoption for faster operations on large BCFs (PR #359).
GTisec: new plugin courtesy of David Laehnemann (@dlaehnemann) to count genotype intersections across all possible sample subsets in a VCF file.
- Numerous VCF parsing fixes.
- Build fix: peakfit.c now builds correctly with GSL v2 (#378).
- Various bug fixes and improvements to the
roh(#328) commands, and to the
- Clarified documentation of
viewfilter options, and of the
--targets-fileoptions (#357, #411).
The bcftools-1.3.1.tar.bz2 download is the full source code release. The “Source code” downloads are generated by GitHub and are incomplete as they are missing some generated files.
bcftools callhas new options
--ploidy-fileto make handling sample ploidy easier. See man page for details.
-eshort options changed to
-Eto be consistent with the filtering
--exclude) options used in other tools.
--threadsoption to control the number of output compression threads used when outputting compressed VCF or BCF.
polysomy: new commands for detecting CNVs, aneuploidy, and contamination from SNP genotyping data.
- various new options, plugins, and bug fixes, including #84, #201, #204, #205, #208, #211, #222, #225, #242, #243, #249, #282, #285, #289, #302, #311, #318, #336, and #338.
The bcftools-1.3.tar.bz2 download is the full source code release. The “Source code” downloads are generated by GitHub and are incomplete as they are missing some generated files.
bcftools annotateplugins: fixploidy, vcf2sex, tag2tag
- more features in
bcftools convertcommand, amongst others new
--hapsamplefunction (thanks to Warren Kretzschmar @wkretzsch)
- support for complements in
bcftools annotate --remove
- support for
-efiltering expressions in
- improved error reporting
- the default prior increased from
-P 1.1e-3, some clear calls were missed with default settings previously
- support for the new symbolic allele
- support for
- bug fixes, such as: proper trimming of DPR tag with
-Aswitch does not add back records removed by
-vand the behaviour has been made consistent with
- the default prior increased from
- many bug fixes and improvements, such as
- bug in filtering, FMT & INFO vs INFO & FMT
- fixes in
- filter update AN/AC with
- isec outputs matching records for both VCFs in the Venn mode
- annotate considers alleles when working with
--set-idfeature for annotate
convertcan be used similarly to
The bcftools-1.2.tar.bz2 download is the full source code release. The “Source code” downloads are generated by GitHub and are incomplete as they don't bundle HTSlib and are missing some generated files.