[med-svn] [Git][med-team/abyss][master] 8 commits: New upstream version
Michael R. Crusoe
gitlab at salsa.debian.org
Sat Sep 28 11:06:38 BST 2019
Michael R. Crusoe pushed to branch master at Debian Med / abyss
Commits:
5665d586 by Michael R. Crusoe at 2019-09-28T08:22:24Z
New upstream version
- - - - -
2fd2fcae by Michael R. Crusoe at 2019-09-28T08:22:25Z
New upstream version 2.2.3
- - - - -
40cef023 by Michael R. Crusoe at 2019-09-28T08:22:27Z
Update upstream source from tag 'upstream/2.2.3'
Update to upstream version '2.2.3'
with Debian dir aa97618ff0085c98603f3de5b5cfbcca5423a3a4
- - - - -
37037f50 by Michael R. Crusoe at 2019-09-28T08:33:35Z
Remove strict-alignment patch as per upstream
- - - - -
da98c1f8 by Michael R. Crusoe at 2019-09-28T08:33:49Z
spelling patch has been forwarded to upstream
- - - - -
3e835742 by Michael R. Crusoe at 2019-09-28T08:39:28Z
upstream has fixed the g++9 warnings problem
- - - - -
c3087b6a by Michael R. Crusoe at 2019-09-28T08:39:28Z
try without 32bit patch
- - - - -
a3f928f9 by Michael R. Crusoe at 2019-09-28T10:05:16Z
release 2.2.3-1
- - - - -
19 changed files:
- BloomDBG/bloom-dbg.cc
- ChangeLog
- Common/ContigNode.h
- Graph/ContigGraph.h
- Graph/DirectedGraph.h
- Misc/samtobreak.hs
- README.md
- Unittest/BloomDBG/CountingBloomFilterTest.cpp
- azure-pipelines.yml
- bin/abyss-pe
- configure.ac
- debian/changelog
- debian/patches/series
- debian/patches/spelling
- − debian/patches/strict_alignment.patch
- debian/rules
- doc/ABYSS.1
- doc/abyss-pe.1
- doc/abyss-tofastq.1
Changes:
=====================================
BloomDBG/bloom-dbg.cc
=====================================
@@ -357,11 +357,14 @@ countingBloomAssembly(int argc, char** argv, const BloomDBG::AssemblyParams& par
cerr << params;
/* Initialize a counting Bloom filter:
- Divide the requested memory in bytes by the byte-size of each counter to determine the number
- of counters, and then round up that count to the next multiple of 64.*/
+ Divide the requested memory in bytes by 1.125 to account for the memory used
+ in building the visitedKmer BloomFilter. Then further divide the byte-size
+ of each counter to determine the number of counters, and then round up that
+ count to the next multiple of 64.*/
+ double countingBloomFilterSize = params.bloomSize / 1.125 / sizeof(BloomCounterType);
size_t counters =
- BloomDBG::roundUpToMultiple(params.bloomSize / sizeof(BloomCounterType), (size_t)64);
+ BloomDBG::roundUpToMultiple((size_t) round(countingBloomFilterSize), (size_t)64);
CountingBloomFilterType bloom(counters, params.numHashes, params.k, params.minCov);
=====================================
ChangeLog
=====================================
@@ -1,3 +1,11 @@
+2019-09-20 Johnathan Wong <jowong at bcgsc.ca>
+
+ * Release version 2.2.3
+ * Revert memory consumption of Bloom filters to pre 2.2.0 behaviour
+ ABySS will now share the specified memory among all Bloom filters
+ instead of just the counting Bloom filter.
+ * Fix gcc-9 compilation warnings
+
2019-08-16 Johnathan Wong <jowong at bcgsc.ca>
* Release version 2.2.2
@@ -11,7 +19,7 @@
2019-08-01 Johnathan Wong <jowong at bcgsc.ca>
* Release version 2.2.0
- * Construct a counting bloom filter instead of a cascading bloom filter.
+ * Construct a counting Bloom filter instead of a cascading Bloom filter.
abyss-bloom:
* Add 'counting' as valid argument to '-t' option to build a counting
=====================================
Common/ContigNode.h
=====================================
@@ -69,6 +69,11 @@ ContigNode operator^(bool sense) const
return ContigNode(m_index ^ sense);
}
+/** Copy constructors */
+ContigNode(ContigNode&&) = default;
+ContigNode& operator=(const ContigNode&) = default;
+ContigNode& operator=(ContigNode&&) = default;
+
/** Return whether this ContigNode is ambiguous. */
bool ambiguous() const
{
=====================================
Graph/ContigGraph.h
=====================================
@@ -15,6 +15,13 @@ using boost::graph_traits;
template <typename G>
class ContigGraph : public G {
public:
+
+ /** Copy constructors */
+ ContigGraph(const ContigGraph&) = default;
+ ContigGraph(ContigGraph&&) = default;
+ ContigGraph& operator=(const ContigGraph&) = default;
+ ContigGraph& operator=(ContigGraph&&) = default;
+
typedef G base_type;
// Graph
=====================================
Graph/DirectedGraph.h
=====================================
@@ -545,8 +545,15 @@ class Edge
return ui < m_removed.size() ? m_removed[ui] : false;
}
+ protected:
+
+ /** Copy constructors */
+ DirectedGraph(const DirectedGraph& d) = default;
+ DirectedGraph(DirectedGraph&&) = default;
+ DirectedGraph& operator=(const DirectedGraph&) = default;
+ DirectedGraph& operator=(DirectedGraph&&) = default;
+
private:
- DirectedGraph& operator =(const DirectedGraph& x);
/** The set of vertices. */
Vertices m_vertices;
=====================================
Misc/samtobreak.hs
=====================================
@@ -279,7 +279,7 @@ parseArgs = do
where
help = putStr (usageInfo usage options) >> exitSuccess
tryHelp = "Try 'abyss-samtobreak --help' for more information."
- version = "abyss-samtobreak (ABySS) 2.2.2\n"
+ version = "abyss-samtobreak (ABySS) 2.2.3\n"
usage = "Usage: samtobreak [OPTION]... [FILE]...\n\
\Calculate contig and scaffold contiguity and correctness metrics.\n"
=====================================
README.md
=====================================
@@ -330,8 +330,8 @@ verbose logging enabled:
At the current time, the user must calculate suitable values for `B` and `H` on
their own, and finding the best value for `kc` may require experimentation
(optimal values are typically in the range of 2-4). Internally, the Bloom filter
-assembler allocates the entire memory budget (`B`) to a Counting Bloom filter,
-and an additional (`B/8`) memory to another Bloom filter that is used to track
+assembler allocates the entire memory budget (`B * 8/9`) to a Counting Bloom filter,
+and an additional (`B/9`) memory to another Bloom filter that is used to track
k-mers that have previously been included in contigs. Users are recommended to
target a Bloom filter false positive rate (FPR) that is less than 5%, as reported
by the assembly log when using the `v=-v` option (verbose level 1).
=====================================
Unittest/BloomDBG/CountingBloomFilterTest.cpp
=====================================
@@ -19,16 +19,17 @@ TEST(CountingBloomFilter, base) {
const char *b = "TGGACAGCGTTACCTC";
const char *c = "TAATAACAGTCCCTAT";
const char *d = "GATCGTGGCGGGCGAT";
+ const char *e = "TTTTTTTTTTTTTTTT";
RollingHashIterator itA(a, numHashes, k);
RollingHashIterator itB(b, numHashes, k);
RollingHashIterator itC(c, numHashes, k);
RollingHashIterator itD(d, numHashes, k);
- size_t hash = 0;
+ RollingHashIterator itE(e, numHashes, k);
x.insert(*itA);
EXPECT_EQ(x.filtered_popcount(), 0U);
- EXPECT_FALSE(x.contains(&hash));
+ EXPECT_FALSE(x.contains(*itE));
x.insert(*itA);
EXPECT_EQ(x.filtered_popcount(), 1U);
EXPECT_TRUE(x.contains(*itA));
=====================================
azure-pipelines.yml
=====================================
@@ -152,10 +152,30 @@ jobs:
steps:
- script: |
brew update
- brew install automake boost at 1.70 openmpi google-sparsehash make pandoc ghc
+ brew install automake boost openmpi google-sparsehash make pandoc ghc
displayName: Install common
- script: |
./autogen.sh
- ./configure --with-boost=/usr/local/Cellar/boost/1.70.0/include/ --with-mpi=/usr/local/Cellar/open-mpi/4.0.1_2/ CPPFLAGS=-I/usr/local/Cellar/google-sparsehash/2.0.3/include/
+ ./configure --with-boost=/usr/local/opt/boost/include --with-mpi=/usr/local/Cellar/open-mpi/4.0.1_2 CPPFLAGS=-I/usr/local/Cellar/google-sparsehash/2.0.3/include
make -j12 distcheck
displayName: Compiling ABySS with default gcc
+
+- job: linux_gcc9
+ pool:
+ vmImage: Ubuntu 16.04
+ steps:
+ - script: |
+ sudo apt-get update -qq
+ sudo apt-get install -qq software-properties-common
+ sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
+ sudo apt-get update -qq
+ sudo apt-get install -qq autoconf automake gcc g++ libboost-dev libgtest-dev libopenmpi-dev libsparsehash-dev make pandoc
+ displayName: Install common
+ - script: sudo apt-get install -qq gcc-9 g++-9
+ displayName: Install gcc-9
+ - script: |
+ ./autogen.sh
+ export DISTCHECK_CONFIGURE_FLAGS="CC=gcc-9 CXX=g++-9"
+ ./configure CC=gcc-9 CXX=g++-9 --with-mpi=/usr/lib/openmpi
+ make -j12 distcheck
+ displayName: Compiling ABySS with gcc-9
=====================================
bin/abyss-pe
=====================================
@@ -398,7 +398,7 @@ help:
@echo 'Report bugs to https://github.com/bcgsc/abyss/issues or abyss-users at bcgsc.ca.'
version:
- @echo "abyss-pe (ABySS) 2.2.2"
+ @echo "abyss-pe (ABySS) 2.2.3"
@echo "Written by Shaun Jackman and Anthony Raymond."
@echo
@echo "Copyright 2012 Canada's Michael Smith Genome Science Centre"
=====================================
configure.ac
=====================================
@@ -1,5 +1,5 @@
AC_PREREQ(2.62)
-AC_INIT(ABySS, 2.2.2, abyss-users at bcgsc.ca, abyss,
+AC_INIT(ABySS, 2.2.3, abyss-users at bcgsc.ca, abyss,
http://www.bcgsc.ca/platform/bioinfo/software/abyss)
AC_CONFIG_MACRO_DIR([m4])
=====================================
debian/changelog
=====================================
@@ -1,3 +1,16 @@
+abyss (2.2.3-1) unstable; urgency=medium
+
+ * New upstream version
+ * Remove strict-alignment patch as per upstream:
+ "Adding an additionally memcpy would slow down these inner-loop functions.
+ Architectures without hardware support for unaligned memory access are
+ currently unsupported by ABySS."
+ https://github.com/bcgsc/abyss/pull/279#issuecomment-468079889
+ * Turn off the 32-bit patch for now. Local testing with i386 shows that it
+ may not be needed as suggested by upstream.
+
+ -- Michael R. Crusoe <michael.crusoe at gmail.com> Sat, 28 Sep 2019 12:04:53 +0200
+
abyss (2.2.2-1) unstable; urgency=medium
* New upstream version
=====================================
debian/patches/series
=====================================
@@ -1,5 +1,4 @@
abyss-pe.patch
# gtest.patch
-abyss-32-bit.patch
-strict_alignment.patch
+#abyss-32-bit.patch
spelling
=====================================
debian/patches/spelling
=====================================
@@ -1,5 +1,6 @@
From: Michael R. Crusoe <michael.crusoe at gmail.com>
Subject: typo fixes, courtesy lintian
+Forwarded: https://github.com/bcgsc/abyss/pull/301
--- abyss.orig/Sealer/README.md
+++ abyss/Sealer/README.md
@@ -24,7 +24,7 @@
=====================================
debian/patches/strict_alignment.patch deleted
=====================================
@@ -1,30 +0,0 @@
-Author: David Matthew Mattli <dmm at mattli.us>
-Last-Change: Fri, 2 Feb 2018 15:28:32 +0000 (by James Clarke <jrtc27 at debian.org>)
-Bug-Debian: https://bugs.debian.org/889147
-Forwarded: https://github.com/bcgsc/abyss/pull/279
-Description: Fix strict alignment violation on sparc64
-
---- a/Common/Kmer.cpp
-+++ b/Common/Kmer.cpp
-@@ -188,7 +188,8 @@ static Seq load(const uint8_t *src)
- Seq seq;
- #if MAX_KMER > 96
- # if WORDS_BIGENDIAN
-- const size_t *s = reinterpret_cast<const size_t*>(src);
-+ size_t s[Kmer::NUM_BYTES / sizeof(size_t)];
-+ memcpy(s, src, Kmer::NUM_BYTES);
- size_t *d = reinterpret_cast<size_t*>(&seq + 1);
- copy(s, s + Kmer::NUM_BYTES/sizeof(size_t), reverse_iterator<size_t*>(d));
- # else
-@@ -235,9 +236,10 @@ static void storeReverse(uint8_t *dest,
- #if MAX_KMER > 96
- # if WORDS_BIGENDIAN
- const size_t *s = reinterpret_cast<const size_t*>(&seq);
-- size_t *d = reinterpret_cast<size_t*>(dest);
-+ size_t d[Kmer::NUM_BYTES / sizeof(size_t)];
- copy(s, s + Kmer::NUM_BYTES/sizeof(size_t),
- reverse_iterator<size_t*>(d + Kmer::NUM_BYTES/sizeof(size_t)));
-+ memcpy(dest, d, Kmer::NUM_BYTES);
- reverse(dest, dest + Kmer::NUM_BYTES);
- # else
- memcpy(dest, &seq, Kmer::NUM_BYTES);
=====================================
debian/rules
=====================================
@@ -1,6 +1,6 @@
#!/usr/bin/make -f
-export DEB_CXXFLAGS_MAINT_APPEND = -DGTEST_USE_OWN_TR1_TUPLE=0 -Wno-error=deprecated-copy -Wno-error=array-bounds
+export DEB_CXXFLAGS_MAINT_APPEND = -DGTEST_USE_OWN_TR1_TUPLE=0
export DEB_BUILD_MAINT_OPTIONS = hardening=+all
=====================================
doc/ABYSS.1
=====================================
@@ -1,4 +1,4 @@
-.TH ABYSS "1" "2015-May" "ABYSS (ABySS) 2.2.2" "User Commands"
+.TH ABYSS "1" "2015-May" "ABYSS (ABySS) 2.2.3" "User Commands"
.SH NAME
ABYSS \- assemble short reads into contigs
.SH SYNOPSIS
=====================================
doc/abyss-pe.1
=====================================
@@ -1,4 +1,4 @@
-.TH abyss-pe "1" "2015-May" "abyss-pe (ABySS) 2.2.2" "User Commands"
+.TH abyss-pe "1" "2015-May" "abyss-pe (ABySS) 2.2.3" "User Commands"
.SH NAME
abyss-pe - assemble reads into contigs
.SH SYNOPSIS
=====================================
doc/abyss-tofastq.1
=====================================
@@ -1,4 +1,4 @@
-.TH abyss-tofastq "1" "2015-May" "ABySS 2.2.2" "User Commands"
+.TH abyss-tofastq "1" "2015-May" "ABySS 2.2.3" "User Commands"
.SH NAME
abyss-tofastq \- convert various file formats to FASTQ format
.br
View it on GitLab: https://salsa.debian.org/med-team/abyss/compare/c7f5402a4a10b145c64d73e3e8f15c65247dc62a...a3f928f99577bb66c920920def6528fb74faf572
--
View it on GitLab: https://salsa.debian.org/med-team/abyss/compare/c7f5402a4a10b145c64d73e3e8f15c65247dc62a...a3f928f99577bb66c920920def6528fb74faf572
You're receiving this email because of your account on salsa.debian.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-med-commit/attachments/20190928/5effaa3c/attachment-0001.html>
More information about the debian-med-commit
mailing list