Newer
Older
Version 2.5.4 (Mar-3-2010)
1. Fixed an insidious bug that caused malformed BAM output from intersectBed and pairToBed. The previous BAM files worked fine with samtools as BAM input, but when piped in as SAM, there was an extra tab that thwarted conversion from SAM back to BAM. Many thanks to Ivan Gregoretti for reporting this bug. I had never used the BAM output in this way and thus never caught the bug!
Version 2.5.3 (Feb-19-2010)
1. Fixed bug to "re-allow" track and "browser" lines.
2. Fixed bug in reporting BEDPE overlaps.
3. Fixed bug when using type "notboth" with BAM files in pairToBed.
4. When comparing BAM files to BED/GFF annotations with intersectBed or pairToBed, the __aligned__ sequence is used, rather than the __original__ sequence.
5. Greatly increased the speed of pairToBed when using BAM alignments.
6. Fixed a bug in bamToBed when reporting edit distance from certain aligners.
Version 2.5.2 (Feb-2-2010)
1. The start and end coordinates for BED and BEDPE entries created by bamToBed are now based on the __aligned__ sequence, rather than the original sequence. It's obvious, but I missed it originally...sorry.
2. Added an error message to mergeBed preventing one from using "-n" and "-nms" together.
3. Fixed a bug in pairToBed that caused neither -type "notispan" nor "notospan" to behave as described.
1. Fixed a bug in the new GFF/BED determinator that caused a segfault when start = 0.
1. Added support for custom BED fields after the 6th column.
2. Fixed a command line parsing bug in pairToBed.
3. Improved sanity checking.
1. Fixed a minor bug in mergeBed when -nms and -s were used together.
2. Improved the command line parsing to prevent the occasional segfault.
1. Updated BamTools libraries to remove some compilation issues on some systems/compilers.
1. Added BAM support to intersectBed and pairToBed
2. New bamToBed feature.
3. Added support for GFF features
4. Added support for "blocked" BED format (BED12)
6. Wrote complete manual and included it in distribution.
7. Fixed several minor bugs.
8. Cleaned up code and improved documentation.
Version 2.3.3 (12/17/2009)
Rewrote complementBed to use a slower but much simpler approach. This resolves several bugs with the previous logic.
Version 2.3.2 (11/25/2009)
Fixed a bug in subtractBed that prevent a file from subtracting itself when the following is used:
$ subtractBed -a test.bed -b test.bed
Version 2.3.1 (11/19/2009)
Fixed a typo in closestBed that caused all nearby features to be returned instead of just the closest one.
Version 2.3.0 (11/18/2009)
1. Added four new tools:
- shuffleBed. Randomly permutes the locations of a BED file among a genome. Useful for testing for significant overlap enrichments.
- slopBed. Adds a requested number of base pairs to each end of a BED feature. Constrained by the size of each chromosome.
- maskFastaFromBed. Masks a FASTA file based on BED coordinates. Useful making custom genome files from targeted capture experiment, etc.
- pairToPair. Returns overlaps between two paired-end BED files. This is great for finding structural variants that are private or shared among samples.
2. Increased the speed of intersectBed by nearly 50%.
4. Improved sanity checking for BED entries.
Version 2.2.4 (10/27/2009)
1. Updated the mergeBed documentation to describe the -names option which allows one to report the names of the
features that were merged (separated by semicolons).
Version 2.2.3 (10/23/2009)
1. Changed windowBed to optionally define "left" and "right" windows based on strand. For example by default, -l 100 and -r 500 will
add 100 bases to the left (lower coordinates) of a feature in A when scanning for hits in B and 500 bases to the right (higher coordinates).
However if one chooses the -sw option (windows bases on strandedness), the behavior changes. Assume the above example except that a feature in A
is on the negative strand ("-"). In this case, -l 100, -r 500 and -sw will add 100 bases to the right (higher coordinates) and 500 bases to the left (lower coordinates).
In addition, there is a separate option (-sm) that can optionally force hits in B to only be tracked if they are on the same strand as A.
***NOTE: This replaces the previous -s option and may affect existing pipelines***.
Version 2.2.2 (10/20/2009)
1. Improved the speed of genomeCoverageBed by roughly 100 fold. The memory usage is now less than 2.0 Gb.
Version 2.2.1
1. Fixed a very obvious bug in subtractBed that caused improper behavior when a feature in A was overlapped by more than one feature in B.
Many thanks to folks in the Hannon lab at CSHL for pointing this out.
Version 2.2.0
=== Notable changes in this release ===
1. coverageBed will optionally only count features in BED file A (e.g. sequencing reads) that overlap with
the intervals/windows in BED file B on the same strand. This has been requested several times recently
and facilitates CHiP-Seq and RNA-Seq experiments.
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
2. intersectBed can now require a minimum __reciprocal__ overlap between intervals in BED A and BED B. For example,
previously, if one used -f 0.90, it required that a feature in B overlap 90% of the feature in A for the "hit"
to be reported. If one adds the -r (reciprocal) option, the hit must also cover 90% of the feature in B. This helps
to exclude overlaps between say small features in A and large features in B:
A ==========
B **********************************************************
-f 0.50 (Reported), whereas -f 0.50 -r (Not reported)
3. The score field has been changed to be a string. While this deviates from the UCSC definition, it allows one to track
much more meaningful information about a feature/interval. For example, score could now be:
7.31E-05 (a p-value)
0.334577 (mean enrichment)
2:2.2:40:2 (several values encoded in a string)
4. closestBed now, by default, reports __all__ intervals in B that overlap equally with an interval in A. Previously, it
merely reported the first such feature that appeared in B. Here's a cartoon explaining the difference.
**Prior behavior**
A ==============
B.1 ++++++++++++++
B.2 ++++++++++++++
B.3 +++++++++
-----------------------------------------
Result = B.1 ++++++++++++++
**Current behavior**
A ==============
B.1 ++++++++++++++
B.2 ++++++++++++++
B.3 +++++++++
-----------------------------------------
Result = B.1 ++++++++++++++
B.2 ++++++++++++++
Using the -t option, one can also choose to report either the first or the last entry in B in the event of a tie.
5. Several other minor changes to the algorithms have been made to increase speed a bit.
VERSION 2.1.2
1. Fixed yet another bug in the parsing of "track" or "browser" lines. Sigh...
2. Change the "score" column (i.e. column 5) to b stored as a string. While this deviates
from the UCSC convention, it allows significantly more information to be packed into the column.
VERSION 2.1.1
1. Added limits.h to bedFile.h to fix compilation issues on some systems.
VERSION 2.1.0
1. Fixed a bug in peIntersectBed that prevented -a from being correctly handled when passed via stdin.
2. Added new functionality to coverageBed that calculates the density of coverage.
3. Fixed bug in geneomCoverageBed.
VERSION 2.0.1
1. Added the ability to retain UCSC browser track/browser headers in BED files.
VERSION 2.0
1. Sped up the file parsing. ~10-20% increase in speed.
2. Created reportBed() as a common method in the bedFile class. Cleans up the code quite nicely.
3. Added the ability to compare BED files accounting for strandedness.
4. Paired-end intersect.
5. Fixed bug that prevented overlaps from being reported when the overlap fraction requested is 1.0
VERSION 1.2, 04/27/2009. (1eb06115bdf3c49e75793f764a70c3501bb53f33)
1. Added subtractBed.
A. Fixed bug that prevented "split" overlaps from being reported.
B. Prevented A from being reported if >=1 feature in B completely spans it.
2. Added linksBed.
3. Added the ability to define separate windows for upstream and downstream to windowBed.
VERSION 1.1, 04/23/2009. (b74eb1afddca9b70bfa90ba763d4f2981a56f432)