commit:     f22bb3be4e8f283831edc5f4c38a839442355644
Author:     Martin Mokrejs <mmokrejs <AT> gmail <DOT> com>
AuthorDate: Wed Apr 14 13:07:12 2021 +0000
Commit:     Martin Mokrejs <mmokrejs <AT> fold <DOT> natur <DOT> cuni <DOT> cz>
CommitDate: Wed Apr 14 13:07:12 2021 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=f22bb3be

sci-biology/abyss: fix PathConsensus crashes

Fixes: https://github.com/bcgsc/abyss/issues/267
Fix crashes of PathConsensus during long-scaffolding
step per @sjackman suggestions.

Add back 2.2.5 version which does not have yet the
RResolver which addition broke the paired de Bruijn
graph assembly approach and since that only the
Bloom filter-based approach works in 2.3.0.

Package-Manager: Portage-3.0.18, Repoman-3.0.3
Signed-off-by: Martin Mokrejs <mmokrejs <AT> gmail.com>

 .../abyss/{abyss-2.3.0.ebuild => abyss-2.2.5-r1.ebuild}       |  4 ++++
 .../abyss/{abyss-2.3.0.ebuild => abyss-2.3.0-r1.ebuild}       |  4 ++++
 sci-biology/abyss/files/abyss-2.2.5-ContigProperties.h.patch  | 11 +++++++++++
 .../abyss/files/abyss-2.2.5-PathConsensus-assert.patch        | 11 +++++++++++
 4 files changed, 30 insertions(+)

diff --git a/sci-biology/abyss/abyss-2.3.0.ebuild 
b/sci-biology/abyss/abyss-2.2.5-r1.ebuild
similarity index 91%
copy from sci-biology/abyss/abyss-2.3.0.ebuild
copy to sci-biology/abyss/abyss-2.2.5-r1.ebuild
index 95438d3b4..d9134813b 100644
--- a/sci-biology/abyss/abyss-2.3.0.ebuild
+++ b/sci-biology/abyss/abyss-2.2.5-r1.ebuild
@@ -27,6 +27,10 @@ DEPEND="${RDEPEND}
                dev-lang/ghc
        )"
 
+PATCHES=( "${FILESDIR}"/${PN}-2.2.5-PathConsensus-assert.patch
+               "${FILESDIR}"/${PN}-2.2.5-ContigProperties.h.patch
+       )
+
 # todo: --enable-maxk=N configure option
 # todo: fix automagic mpi toggling
 

diff --git a/sci-biology/abyss/abyss-2.3.0.ebuild 
b/sci-biology/abyss/abyss-2.3.0-r1.ebuild
similarity index 91%
rename from sci-biology/abyss/abyss-2.3.0.ebuild
rename to sci-biology/abyss/abyss-2.3.0-r1.ebuild
index 95438d3b4..d9134813b 100644
--- a/sci-biology/abyss/abyss-2.3.0.ebuild
+++ b/sci-biology/abyss/abyss-2.3.0-r1.ebuild
@@ -27,6 +27,10 @@ DEPEND="${RDEPEND}
                dev-lang/ghc
        )"
 
+PATCHES=( "${FILESDIR}"/${PN}-2.2.5-PathConsensus-assert.patch
+               "${FILESDIR}"/${PN}-2.2.5-ContigProperties.h.patch
+       )
+
 # todo: --enable-maxk=N configure option
 # todo: fix automagic mpi toggling
 

diff --git a/sci-biology/abyss/files/abyss-2.2.5-ContigProperties.h.patch 
b/sci-biology/abyss/files/abyss-2.2.5-ContigProperties.h.patch
new file mode 100644
index 000000000..95181f082
--- /dev/null
+++ b/sci-biology/abyss/files/abyss-2.2.5-ContigProperties.h.patch
@@ -0,0 +1,11 @@
+--- abyss-2.2.5/Common/ContigProperties.h.ori  2020-09-18 20:42:12.000000000 
+0200
++++ abyss-2.2.5/Common/ContigProperties.h      2021-04-14 12:31:23.682158000 
+0200
+@@ -171,7 +171,7 @@
+ template <typename T>
+ ContigProperties& operator+=(ContigProperties& a, const T& b)
+ {
+-      assert((int)a.length + (int)b.distance > 0);
++      assert((int)a.length + (int)b.distance >= 0);
+       a.length += b.distance;
+       return a;
+ }

diff --git a/sci-biology/abyss/files/abyss-2.2.5-PathConsensus-assert.patch 
b/sci-biology/abyss/files/abyss-2.2.5-PathConsensus-assert.patch
new file mode 100644
index 000000000..754e25acc
--- /dev/null
+++ b/sci-biology/abyss/files/abyss-2.2.5-PathConsensus-assert.patch
@@ -0,0 +1,11 @@
+--- abyss-2.2.5/MergePaths/PathConsensus.cpp   2020-09-18 20:42:12.000000000 
+0200
++++ abyss-2.2.5/MergePaths/PathConsensus.cpp   2021-04-12 22:26:28.780547000 
+0200
+@@ -379,7 +379,7 @@
+               unsigned overlap, Sequence& seq,
+               const Sequence& s, const ContigNode& node, const Path& path)
+ {
+-      assert(s.length() > overlap);
++      assert(s.length() >= overlap);
+       Sequence ao;
+       Sequence bo(s, 0, overlap);
+       Sequence o;

Reply via email to