From 78ed00021f07e6b5e1d531795ecf0289feac13ff Mon Sep 17 00:00:00 2001 From: Heng Li Date: Tue, 23 Apr 2013 11:25:46 -0400 Subject: [PATCH 1/3] r384: updated NEWS --- NEWS | 33 +++++++++++++++++++++++++++++++++ main.c | 4 ++++ 2 files changed, 37 insertions(+) diff --git a/NEWS b/NEWS index 0cf0591..42e7c79 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,36 @@ +Release 0.7.4 (23 April, 2013) +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +This is a bugfix release. Most of bugs are considered to be minor which only + very rarely. + ccur + + * Bugfix: wrong CIGAR when a query sequence bridges three or more target + sequences. This only happens when aligning reads to short assembly contigs. + + * Bugfix: leading "D" operator in CIGAR. + + * Extend more seeds for better alignment around tandem repeats. This is also + a cause of the leading "D" operator in CIGAR. + + * Bugfix: SSE2-SSW may occasionally find incorrect query starting position + around tandem repeat. This will lead to a suboptimal CIGAR in BWA-MEM and + a wrong CIGAR in BWA. + + * Bugfix: clipping penalty does not work as is intended when there is a gap + towards the end of a read. + + * Fixed an issue caused by a bug in the libc from Mac/Darwin. In Darwin, + fread() is unable to read a data block longer than 2GB due to an integer + overflow bug in its implementation. + +Since version 0.7.4, BWA-MEM is considered to reach similar stability to +BWA-backtrack for short-read mapping. + +(0.7.4: 23 April, r385) + + + Release 0.7.3a (15 March, 2013) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/main.c b/main.c index aee4772..f7616b7 100644 --- a/main.c +++ b/main.c @@ -46,6 +46,10 @@ static int usage() fprintf(stderr, " bwtupdate update .bwt to the new format\n"); fprintf(stderr, " bwt2sa generate SA from BWT and Occ\n"); fprintf(stderr, "\n"); + fprintf(stderr, "Note: To use BWA, you need to first index the genome with `bwa index'. There are\n"); + fprintf(stderr, " three alignment algorithms in BWA: `mem', `bwasw' and `aln/samse/sampe'. If\n"); + fprintf(stderr, " you are not sure which to use, try `bwa mem' first. Please `man ./bwa.1' for\n"); + fprintf(stderr, " for the manual.\n\n"); return 1; } From 2f6897c72bf1c23504cf23c07d98a8ff90251d61 Mon Sep 17 00:00:00 2001 From: Heng Li Date: Tue, 23 Apr 2013 11:27:30 -0400 Subject: [PATCH 2/3] r384: don't compile bwamem-lite by default --- Makefile | 2 +- main.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index b660557..abbe42f 100644 --- a/Makefile +++ b/Makefile @@ -7,7 +7,7 @@ AOBJS= QSufSort.o bwt_gen.o bwase.o bwaseqio.o bwtgap.o bwtaln.o bamlite.o \ is.o bwtindex.o bwape.o kopen.o pemerge.o \ bwtsw2_core.o bwtsw2_main.o bwtsw2_aux.o bwt_lite.o \ bwtsw2_chain.o fastmap.o bwtsw2_pair.o -PROG= bwa bwamem-lite +PROG= bwa INCLUDES= LIBS= -lm -lz -lpthread SUBDIRS= . diff --git a/main.c b/main.c index f7616b7..2c1678e 100644 --- a/main.c +++ b/main.c @@ -3,7 +3,7 @@ #include "utils.h" #ifndef PACKAGE_VERSION -#define PACKAGE_VERSION "0.7.3-r382-beta" +#define PACKAGE_VERSION "0.7.3-r384-beta" #endif int bwa_fa2pac(int argc, char *argv[]); From c14aaad1ce72f5784bfe04df757a6b12fe07b7ea Mon Sep 17 00:00:00 2001 From: Heng Li Date: Tue, 23 Apr 2013 11:40:56 -0400 Subject: [PATCH 3/3] Released bwa-0.7.4-r385 --- bwa.1 | 37 ++++++++++++++++++++----------------- main.c | 2 +- 2 files changed, 21 insertions(+), 18 deletions(-) diff --git a/bwa.1 b/bwa.1 index 9d45a3d..d25ba4a 100644 --- a/bwa.1 +++ b/bwa.1 @@ -1,4 +1,4 @@ -.TH bwa 1 "15 March 2013" "bwa-0.7.4" "Bioinformatics tools" +.TH bwa 1 "23 April 2013" "bwa-0.7.4" "Bioinformatics tools" .SH NAME .PP bwa - Burrows-Wheeler Alignment Tool @@ -44,7 +44,12 @@ for the BWA-MEM algorithm. .SH COMMANDS AND OPTIONS .TP .B index -bwa index [-p prefix] [-a algoType] +.B bwa index +.RB [ -p +.IR prefix ] +.RB [ -a +.IR algoType ] +.I db.fa Index database sequences in the FASTA format. @@ -55,20 +60,16 @@ Index database sequences in the FASTA format. Prefix of the output database [same as db filename] .TP .BI -a \ STR -Algorithm for constructing BWT index. Available options are: -.RS -.TP +Algorithm for constructing BWT index. BWA implements two algorithms for BWT +construction: .B is -IS linear-time algorithm for constructing suffix array. It requires -5.37N memory where N is the size of the database. IS is moderately fast, -but does not work with database larger than 2GB. IS is the default -algorithm due to its simplicity. The current codes for IS algorithm are -reimplemented by Yuta Mori. -.TP -.B bwtsw -Algorithm implemented in BWT-SW. This method works with the whole human -genome. -.RE +and +.BR bwtsw . +The first algorithm is a little faster for small database but requires large +RAM and does not work for databases with total length longer than 2GB. The +second algorithm is adapted from the BWT-SW source code. It in theory works +with database with trillions of bases. When this option is not specified, the +appropriate algorithm will be chosen automatically. .RE .TP @@ -220,10 +221,12 @@ deducted. [5] Penalty for an unpaired read pair. BWA-MEM scores an unpaired read pair as .RI scoreRead1+scoreRead2- INT and scores a paired as scoreRead1+scoreRead2-insertPenalty. It compares these -two scores to determine whether we should force pairing. [17] +two scores to determine whether we should force pairing. A larger value leads to +more aggressive read pair. [17] .TP .B -p -Assume the first input query file is interleaved paired-end FASTA/Q. See the command description for details. +Assume the first input query file is interleaved paired-end FASTA/Q. See the +command description for details. .TP .BI -R \ STR Complete read group header line. '\\t' can be used in diff --git a/main.c b/main.c index 2c1678e..816fa17 100644 --- a/main.c +++ b/main.c @@ -3,7 +3,7 @@ #include "utils.h" #ifndef PACKAGE_VERSION -#define PACKAGE_VERSION "0.7.3-r384-beta" +#define PACKAGE_VERSION "0.7.4-r385" #endif int bwa_fa2pac(int argc, char *argv[]);