[med-svn] [Git][med-team/unicycler][debian/experimental] 2 commits: Added patch for the explicit seqan2 namespace.

Michael R. Crusoe (@crusoe) gitlab at salsa.debian.org
Mon Nov 25 14:08:40 GMT 2024



Michael R. Crusoe pushed to branch debian/experimental at Debian Med / unicycler


Commits:
32e0a20c by Michael R. Crusoe at 2024-11-25T15:08:32+01:00
Added patch for the explicit seqan2 namespace.

- - - - -
c543fb70 by Michael R. Crusoe at 2024-11-25T15:08:32+01:00
ready for uploading to experimental

- - - - -


6 changed files:

- debian/changelog
- + debian/patches/0004-Upgrade-to-SeqAn-2.5.0.patch
- debian/patches/append_flags
- debian/patches/install_wo_extra_steps.patch
- debian/patches/series
- debian/patches/spades.patch


Changes:

=====================================
debian/changelog
=====================================
@@ -1,10 +1,11 @@
-unicycler (0.5.1+dfsg-2) UNRELEASED; urgency=medium
+unicycler (0.5.1+dfsg-2) experimental; urgency=medium
 
   * Team upload.
   * d/control: Experimental rebuild using the 3rd release candidate of
     SeqAn 2.5.0
+  * Added patch for the explicit seqan2 namespace.
 
- -- Michael R. Crusoe <crusoe at debian.org>  Mon, 25 Nov 2024 14:19:02 +0100
+ -- Michael R. Crusoe <crusoe at debian.org>  Mon, 25 Nov 2024 14:27:41 +0100
 
 unicycler (0.5.1+dfsg-1) unstable; urgency=medium
 


=====================================
debian/patches/0004-Upgrade-to-SeqAn-2.5.0.patch
=====================================
@@ -0,0 +1,161 @@
+From: "Michael R. Crusoe" <crusoe at debian.org>
+Date: Mon, 25 Nov 2024 14:22:44 +0100
+Subject: Upgrade to SeqAn 2.5.0
+
+---
+ Makefile                                         | 2 +-
+ unicycler/include/consensus_align.h              | 2 +-
+ unicycler/include/global_align.h                 | 2 +-
+ unicycler/include/overlap_align.h                | 2 +-
+ unicycler/include/path_align.h                   | 2 +-
+ unicycler/include/random_alignments.h            | 2 +-
+ unicycler/include/scoredalignment.h              | 2 +-
+ unicycler/include/semi_global_align.h            | 2 +-
+ unicycler/include/semi_global_align_exhaustive.h | 2 +-
+ unicycler/include/start_end_align.h              | 2 +-
+ unicycler/src/consensus_align.cpp                | 2 +-
+ 11 files changed, 11 insertions(+), 11 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 1e294f3..3f111de 100644
+--- a/Makefile
++++ b/Makefile
+@@ -67,7 +67,7 @@ CXXFLAGS    ?= -Wall -Wextra -pedantic -mtune=native
+ 
+ 
+ # These flags are required for the build to work.
+-FLAGS        = -std=c++14 -Iunicycler/include -fPIC
++FLAGS        = -std=c++17 -Iunicycler/include -fPIC
+ LDFLAGS      += -shared -lz
+ 
+ 
+diff --git a/unicycler/include/consensus_align.h b/unicycler/include/consensus_align.h
+index 224487b..423fa32 100644
+--- a/unicycler/include/consensus_align.h
++++ b/unicycler/include/consensus_align.h
+@@ -16,7 +16,7 @@
+ #include <seqan/score.h>
+ #include <seqan/consensus.h>
+ 
+-using namespace seqan;
++using namespace seqan2;
+ 
+ // Functions that are called by the Python script must have C linkage, not C++ linkage.
+ extern "C" {
+diff --git a/unicycler/include/global_align.h b/unicycler/include/global_align.h
+index 580efe6..90a071a 100644
+--- a/unicycler/include/global_align.h
++++ b/unicycler/include/global_align.h
+@@ -17,7 +17,7 @@
+ #include "scoredalignment.h"
+ 
+ 
+-using namespace seqan;
++using namespace seqan2;
+ 
+ // Functions that are called by the Python script must have C linkage, not C++ linkage.
+ extern "C" {
+diff --git a/unicycler/include/overlap_align.h b/unicycler/include/overlap_align.h
+index 15b151b..00b7b70 100644
+--- a/unicycler/include/overlap_align.h
++++ b/unicycler/include/overlap_align.h
+@@ -15,7 +15,7 @@
+ 
+ #include <seqan/sequence.h>
+ 
+-using namespace seqan;
++using namespace seqan2;
+ 
+ // Functions that are called by the Python script must have C linkage, not C++ linkage.
+ extern "C" {
+diff --git a/unicycler/include/path_align.h b/unicycler/include/path_align.h
+index 06392dc..641f58e 100644
+--- a/unicycler/include/path_align.h
++++ b/unicycler/include/path_align.h
+@@ -17,7 +17,7 @@
+ #include "scoredalignment.h"
+ 
+ 
+-using namespace seqan;
++using namespace seqan2;
+ 
+ // Functions that are called by the Python script must have C linkage, not C++ linkage.
+ extern "C" {
+diff --git a/unicycler/include/random_alignments.h b/unicycler/include/random_alignments.h
+index 1fea9f6..29f5081 100644
+--- a/unicycler/include/random_alignments.h
++++ b/unicycler/include/random_alignments.h
+@@ -18,7 +18,7 @@
+ #include "scoredalignment.h"
+ #include <mutex>
+ 
+-using namespace seqan;
++using namespace seqan2;
+ 
+ // Functions that are called by the Python script must have C linkage, not C++ linkage.
+ extern "C" {
+diff --git a/unicycler/include/scoredalignment.h b/unicycler/include/scoredalignment.h
+index f6bd13b..a1ef902 100644
+--- a/unicycler/include/scoredalignment.h
++++ b/unicycler/include/scoredalignment.h
+@@ -17,7 +17,7 @@
+ #include <seqan/basic.h>
+ #include <seqan/align.h>
+ 
+-using namespace seqan;
++using namespace seqan2;
+ 
+ enum CigarType {MATCH, INSERTION, DELETION, CLIP, NOTHING};
+ 
+diff --git a/unicycler/include/semi_global_align.h b/unicycler/include/semi_global_align.h
+index 4f558ab..35b5d63 100644
+--- a/unicycler/include/semi_global_align.h
++++ b/unicycler/include/semi_global_align.h
+@@ -26,7 +26,7 @@
+ #include "ref_seqs.h"
+ #include "nanoflann.hpp"
+ 
+-using namespace seqan;
++using namespace seqan2;
+ using namespace nanoflann;
+ 
+ typedef std::pair<int, int> StartEndRange;
+diff --git a/unicycler/include/semi_global_align_exhaustive.h b/unicycler/include/semi_global_align_exhaustive.h
+index 38f96e5..abde7d6 100644
+--- a/unicycler/include/semi_global_align_exhaustive.h
++++ b/unicycler/include/semi_global_align_exhaustive.h
+@@ -17,7 +17,7 @@
+ #include "scoredalignment.h"
+ 
+ 
+-using namespace seqan;
++using namespace seqan2;
+ 
+ // Functions that are called by the Python script must have C linkage, not C++ linkage.
+ extern "C" {
+diff --git a/unicycler/include/start_end_align.h b/unicycler/include/start_end_align.h
+index 9668abe..28cbd30 100644
+--- a/unicycler/include/start_end_align.h
++++ b/unicycler/include/start_end_align.h
+@@ -15,7 +15,7 @@
+ 
+ #include <seqan/sequence.h>
+ 
+-using namespace seqan;
++using namespace seqan2;
+ 
+ // Functions that are called by the Python script must have C linkage, not C++ linkage.
+ extern "C" {
+diff --git a/unicycler/src/consensus_align.cpp b/unicycler/src/consensus_align.cpp
+index 2194061..7197d3e 100644
+--- a/unicycler/src/consensus_align.cpp
++++ b/unicycler/src/consensus_align.cpp
+@@ -21,7 +21,7 @@
+ #include "semi_global_align.h"
+ #include "string_functions.h"
+ 
+-using namespace seqan;
++using namespace seqan2;
+ 
+ char * multipleSequenceAlignment(char * sequences[], char * qualities[], unsigned long count,
+                                  unsigned int bandwidth, int matchScore, int mismatchScore,


=====================================
debian/patches/append_flags
=====================================
@@ -1,9 +1,17 @@
-From: Michael R. Crusoe <michael.crusoe at gmail.com>
+From: "Michael R. Crusoe" <michael.crusoe at gmail.com>
+Date: Fri, 18 Jan 2019 02:35:16 -0800
 Subject: Inherit and use LDFLAGS and CPPFLAGS
+
 Forwarded: https://github.com/rrwick/Unicycler/pull/343
+---
+ Makefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 8390be5..1e294f3 100644
 --- a/Makefile
 +++ b/Makefile
-@@ -68,7 +68,7 @@ CXXFLAGS    ?= -Wall -Wextra -pedantic -
+@@ -68,7 +68,7 @@ CXXFLAGS    ?= -Wall -Wextra -pedantic -mtune=native
  
  # These flags are required for the build to work.
  FLAGS        = -std=c++14 -Iunicycler/include -fPIC


=====================================
debian/patches/install_wo_extra_steps.patch
=====================================
@@ -1,8 +1,16 @@
-Author: Liubov Chuprikova <chuprikovalv at gmail.com>
+From: Liubov Chuprikova <chuprikovalv at gmail.com>
+Date: Fri, 7 Sep 2018 19:06:57 +0200
+Subject: Skip extra steps (make distclean and make) while installing as they
+ were done earlier
+
 Last-Update: Fri, 7 September 2018 18:46:31 +0200
-Description: Skip extra steps (make distclean and make) while installing as they were done earlier
 Forwarded: not-needed
+---
+ setup.py | 30 +++++++++++++++---------------
+ 1 file changed, 15 insertions(+), 15 deletions(-)
 
+diff --git a/setup.py b/setup.py
+index aad27d7..8470b46 100755
 --- a/setup.py
 +++ b/setup.py
 @@ -96,21 +96,21 @@ class UnicyclerInstall(install):


=====================================
debian/patches/series
=====================================
@@ -1,4 +1,4 @@
 spades.patch
-# bowtie.patch 
 install_wo_extra_steps.patch
 append_flags
+0004-Upgrade-to-SeqAn-2.5.0.patch


=====================================
debian/patches/spades.patch
=====================================
@@ -1,10 +1,72 @@
-Author: Andreas Tille <tille at debian.org>
+From: Andreas Tille <tille at debian.org>
+Date: Fri, 8 Jun 2018 13:06:23 +0200
+Subject: SPAdes is in Debian at /usr/bin/spades
+
 Last-Update: Fri, 25 May 2018 10:59:36 +0200
-Description: SPAdes is in Debian at /usr/bin/spades
 Forwarded: not-needed
+---
+ README.md                    | 4 ++--
+ setup.py                     | 2 +-
+ test/overlap_removal_test.py | 2 +-
+ test/test_dependencies.py    | 8 ++++----
+ test/test_misc.py            | 4 ++--
+ unicycler/misc.py            | 4 ++--
+ unicycler/unicycler.py       | 6 +++---
+ 7 files changed, 15 insertions(+), 15 deletions(-)
+
+diff --git a/README.md b/README.md
+index 1130bdf..78f3d75 100644
+--- a/README.md
++++ b/README.md
+@@ -107,7 +107,7 @@ Reasons to __not__ use Unicycler:
+     * [ICC](https://software.intel.com/en-us/c-compilers) also works (though I don't know the minimum required version number)
+ * [setuptools](https://packaging.python.org/installing/#install-pip-setuptools-and-wheel) (only required for installation of Unicycler)
+ * For short-read or hybrid assembly:
+-  * [SPAdes](http://bioinf.spbau.ru/spades) v3.14.0 or later (`spades.py`)
++  * [SPAdes](http://bioinf.spbau.ru/spades) v3.14.0 or later (`spades`)
+ * For long-read or hybrid assembly:
+   * [Racon](https://github.com/lbcb-sci/racon) (`racon`)
+ * For rotating circular contigs:
+@@ -488,7 +488,7 @@ Other:
+ SPAdes assembly:
+   These options control the short-read SPAdes assembly at the beginning of the Unicycler pipeline.
+ 
+-  --spades_path SPADES_PATH       Path to the SPAdes executable (default: spades.py)
++  --spades_path SPADES_PATH       Path to the SPAdes executable (default: spades)
+   --min_kmer_frac MIN_KMER_FRAC   Lowest k-mer size for SPAdes assembly, expressed as a fraction of
+                                   the read length (default: 0.2)
+   --max_kmer_frac MAX_KMER_FRAC   Highest k-mer size for SPAdes assembly, expressed as a fraction of
+diff --git a/setup.py b/setup.py
+index ab98b5d..aad27d7 100755
+--- a/setup.py
++++ b/setup.py
+@@ -61,7 +61,7 @@ def missing_tool(tool_name):
+ 
+ def tool_check():
+     # Check for required programs.
+-    tools = ['spades.py', 'makeblastdb', 'tblastn']
++    tools = ['spades', 'makeblastdb', 'tblastn']
+     missing_tools = []
+     for tool in tools:
+         missing_tools += missing_tool(tool)
+diff --git a/test/overlap_removal_test.py b/test/overlap_removal_test.py
+index ed1b849..32c15a6 100644
+--- a/test/overlap_removal_test.py
++++ b/test/overlap_removal_test.py
+@@ -94,7 +94,7 @@ def run_spades(out_dir):
+     reads_2 = os.path.join(out_dir, 'reads_2.fastq')
+     reads_unpaired = os.path.join(out_dir, 'reads_unpaired.fastq')
+ 
+-    spades_cmd = ['spades.py', '-o', out_dir, '--only-assembler', '-k', '21,41,61,81']
++    spades_cmd = ['spades', '-o', out_dir, '--only-assembler', '-k', '21,41,61,81']
+ 
+     if os.path.isfile(reads_1):
+         spades_cmd += ['-1', reads_1, '-2', reads_2]
+diff --git a/test/test_dependencies.py b/test/test_dependencies.py
+index 2f3c744..cec6412 100644
 --- a/test/test_dependencies.py
 +++ b/test/test_dependencies.py
-@@ -42,7 +42,7 @@ class TestDependencies(unittest.TestCase
+@@ -42,7 +42,7 @@ class TestDependencies(unittest.TestCase):
  
      def test_spades_not_found(self):
          stdout, stderr, ret_code = self.run_unicycler(['--spades_path', 'not_a_real_path'])
@@ -13,7 +75,7 @@ Forwarded: not-needed
          self.assertTrue('could not find SPAdes' in stderr)
          self.assertEqual(ret_code, 1)
  
-@@ -61,19 +61,19 @@ class TestDependencies(unittest.TestCase
+@@ -61,19 +61,19 @@ class TestDependencies(unittest.TestCase):
      def test_no_rotate(self):
          stdout, stderr, ret_code = self.run_unicycler(['--spades_path', 'not_a_real_path',
                                                         '--no_rotate'])
@@ -36,20 +98,11 @@ Forwarded: not-needed
 -        self.assertTrue(bool(re.search(r'spades.py\s+not found', stdout)))
 +        self.assertTrue(bool(re.search(r'spades\s+not found', stdout)))
          self.assertTrue(bool(re.search(r'Program\s+Version\s+Status\s+Path', stdout)))
---- a/test/overlap_removal_test.py
-+++ b/test/overlap_removal_test.py
-@@ -94,7 +94,7 @@ def run_spades(out_dir):
-     reads_2 = os.path.join(out_dir, 'reads_2.fastq')
-     reads_unpaired = os.path.join(out_dir, 'reads_unpaired.fastq')
- 
--    spades_cmd = ['spades.py', '-o', out_dir, '--only-assembler', '-k', '21,41,61,81']
-+    spades_cmd = ['spades', '-o', out_dir, '--only-assembler', '-k', '21,41,61,81']
- 
-     if os.path.isfile(reads_1):
-         spades_cmd += ['-1', reads_1, '-2', reads_2]
+diff --git a/test/test_misc.py b/test/test_misc.py
+index ccee4fc..f2f1c03 100644
 --- a/test/test_misc.py
 +++ b/test/test_misc.py
-@@ -332,14 +332,14 @@ class TestMiscFunctions(unittest.TestCas
+@@ -332,14 +332,14 @@ class TestMiscFunctions(unittest.TestCase):
  
      def test_spades_version_parsing_3(self):
          spades_version_output = 'option -v not recognized\nSPAdes genome assembler v.3.5.0\n\n' \
@@ -66,6 +119,8 @@ Forwarded: not-needed
                                  '-o <output_dir>\n\nBasic options:'
          version = unicycler.misc.spades_version_from_spades_output(spades_version_output)
          self.assertEqual(version, '2.4.0')
+diff --git a/unicycler/misc.py b/unicycler/misc.py
+index 577b0bc..7d677d6 100644
 --- a/unicycler/misc.py
 +++ b/unicycler/misc.py
 @@ -124,7 +124,7 @@ def check_spades(spades_path):
@@ -77,7 +132,7 @@ Forwarded: not-needed
  
  
  def get_nice_header(header):
-@@ -823,7 +823,7 @@ def spades_path_and_version(spades_path)
+@@ -823,7 +823,7 @@ def spades_path_and_version(spades_path):
  
  def spades_version_from_spades_output(spades_output):
      """
@@ -86,6 +141,8 @@ Forwarded: not-needed
      """
      try:
          return re.search(r'v(\d+\.\d+\.\d+)', spades_output).group(1)
+diff --git a/unicycler/unicycler.py b/unicycler/unicycler.py
+index 88d0050..d5af4f7 100755
 --- a/unicycler/unicycler.py
 +++ b/unicycler/unicycler.py
 @@ -274,7 +274,7 @@ def get_arguments():
@@ -97,7 +154,7 @@ Forwarded: not-needed
                                help='Path to the SPAdes executable'
                                     if show_all_args else argparse.SUPPRESS)
      spades_group.add_argument('--min_kmer_frac', type=float, default=0.2,
-@@ -671,7 +671,7 @@ def check_dependencies(args, short_reads
+@@ -671,7 +671,7 @@ def check_dependencies(args, short_reads_available, long_reads_available):
          spades_path, spades_version, spades_status = '', '', 'not used'
      else:
          spades_path, spades_version, spades_status = spades_path_and_version(args.spades_path)
@@ -106,7 +163,7 @@ Forwarded: not-needed
      if args.verbosity > 1:
          spades_row.append(spades_path)
      program_table.append(spades_row)
-@@ -732,7 +732,7 @@ def quit_if_dependency_problem(spades_st
+@@ -733,7 +733,7 @@ def quit_if_dependency_problem(spades_status, racon_status, makeblastdb_status,
          quit_with_error('SPAdes cannot run due to an incompatible Python version')
      if spades_status == 'bad':
          quit_with_error('SPAdes was found but does not produce output (make sure to use '
@@ -115,34 +172,3 @@ Forwarded: not-needed
      if makeblastdb_status == 'not found':
          quit_with_error('could not find makeblastdb - either specify its location using '
                          '--makeblastdb_path or use --no_rotate to remove BLAST dependency')
---- a/README.md
-+++ b/README.md
-@@ -107,7 +107,7 @@ Reasons to __not__ use Unicycler:
-     * [ICC](https://software.intel.com/en-us/c-compilers) also works (though I don't know the minimum required version number)
- * [setuptools](https://packaging.python.org/installing/#install-pip-setuptools-and-wheel) (only required for installation of Unicycler)
- * For short-read or hybrid assembly:
--  * [SPAdes](http://bioinf.spbau.ru/spades) v3.14.0 or later (`spades.py`)
-+  * [SPAdes](http://bioinf.spbau.ru/spades) v3.14.0 or later (`spades`)
- * For long-read or hybrid assembly:
-   * [Racon](https://github.com/lbcb-sci/racon) (`racon`)
- * For rotating circular contigs:
-@@ -488,7 +488,7 @@ Other:
- SPAdes assembly:
-   These options control the short-read SPAdes assembly at the beginning of the Unicycler pipeline.
- 
--  --spades_path SPADES_PATH       Path to the SPAdes executable (default: spades.py)
-+  --spades_path SPADES_PATH       Path to the SPAdes executable (default: spades)
-   --min_kmer_frac MIN_KMER_FRAC   Lowest k-mer size for SPAdes assembly, expressed as a fraction of
-                                   the read length (default: 0.2)
-   --max_kmer_frac MAX_KMER_FRAC   Highest k-mer size for SPAdes assembly, expressed as a fraction of
---- a/setup.py
-+++ b/setup.py
-@@ -61,7 +61,7 @@ def missing_tool(tool_name):
- 
- def tool_check():
-     # Check for required programs.
--    tools = ['spades.py', 'makeblastdb', 'tblastn']
-+    tools = ['spades', 'makeblastdb', 'tblastn']
-     missing_tools = []
-     for tool in tools:
-         missing_tools += missing_tool(tool)



View it on GitLab: https://salsa.debian.org/med-team/unicycler/-/compare/9b08a8bfd349e5ba523b645474629f944bdd825e...c543fb70090ee1681c52044140b27461bf0cbbcc

-- 
View it on GitLab: https://salsa.debian.org/med-team/unicycler/-/compare/9b08a8bfd349e5ba523b645474629f944bdd825e...c543fb70090ee1681c52044140b27461bf0cbbcc
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/20241125/88da4045/attachment-0001.htm>


More information about the debian-med-commit mailing list