Previously, I had been using overlapsAny(query, subject, type="equal", maxgap=75) to match imprecise structural variant calls from different callers by allowing an error margin (in this 75bp) around the breakend call positions. After upgrading BioC packages, the same query now returns:
Warning message:
In IRanges:::min_overlap_score(maxgap, minoverlap, type) :
With the new findOverlaps/countOverlaps implementation based on Nested Containment Lists, 'maxgap' has no special meaning when 'type' is set to "within" or "equal". Note that
this is a change with respect to the old implementation based on Interval Trees. See ?NCList for more information about this change and other differences between the new and old
implementations. Use the 'algorithm' argument to switch between the 2 implementations.
Following the error, message adding algorithm="intervaltree"
to the call previously worked but now gives the following error message:
Error: IntervalTree objects and the "intervaltree" algorithm used in findOverlaps() and family are defunct. Please use the "nclist" algorithm instead. See the 'algorithm' argument in
?findOverlaps for more information.
Is there a way to find the overlaps without having to manually calculate from hits from findOverlaps(type="start", ...) and findOverlaps(type="end", ...)?
I just backported this to release and also restored special meaning of
maxgap
whentype
is set to"within"
. This is in IRanges 2.4.6 and GenomicRanges 1.22.2. Both should become available in BioC 3.2 (the current release) thrubiocLite()
in about 24 hours.H.