[med-svn] [Git][med-team/spades][master] More packaging updates (assisted by deepseek-v4.1-flash-free 4.1)

Andreas Tille (@tille) gitlab at salsa.debian.org
Wed Oct 21 08:00:05 BST 2026



Andreas Tille pushed to branch master at Debian Med / spades


Commits:
d05e3541 by Andreas Tille at 2026-10-21T08:58:17+02:00
More packaging updates (assisted by deepseek-v4.1-flash-free 4.1)

- - - - -


25 changed files:

- − debian/clean
- debian/control
- debian/copyright
- debian/links
- − debian/man_src/truspades.1.adoc
- − debian/patches/0002_use_debian_packaged_python-joblib.patch
- − debian/patches/0003_accept-system-bwa.patch
- − debian/patches/0101_cmake_ignore_removed_python-yaml.patch
- − debian/patches/0102_cmake_ignore_removed_python-joblib.patch
- − debian/patches/0103_use-debian-packaged-bwa.patch
- − debian/patches/0116_stable_link_order.patch
- − debian/patches/Try_to_unbreak.patch
- − debian/patches/bamtools-cmake.patch
- − debian/patches/debian_bwa_zlib.patch
- − debian/patches/disable_local_convertutf.patch
- − debian/patches/fix-gcc13.patch
- − debian/patches/fix-privacy-breaches.patch
- − debian/patches/fix-sigill-on-non-popcnt-cpus.patch
- − debian/patches/gcc-15.patch
- − debian/patches/python3.12.patch
- − debian/patches/python3.patch
- − debian/patches/raw_regex_pattern.patch
- − debian/patches/use-debian-packaged-samtools.patch
- − debian/patches/use-debian-packaged-yaml-cpp.patch
- debian/rules


Changes:

=====================================
debian/clean deleted
=====================================
@@ -1 +0,0 @@
-assembler/src/test/debruijn/graph_fragments/saves/test_save.*


=====================================
debian/control
=====================================
@@ -19,13 +19,17 @@ Build-Depends:
  cmake,
  libbam-dev,
  libbamtools-dev,
- libbwa-dev,
+ libboost-thread-dev,
  libbz2-dev,
  libc++-dev,
+ libgtest-dev,
  libhts-dev,
  libnlopt-cxx-dev,
  libnlopt-dev,
+ libparallel-hashmap-dev,
+ libspoa-dev,
  libssw-dev,
+ libxxhash-dev,
  libzstd-dev,
  llvm-dev,
  lynx,
@@ -64,7 +68,8 @@ Description: genome assembler for single-cell and isolates data sets
   * metaplasmidSPAdes – a pipeline for extracting and assembling
     plasmids from metagenomic data sets
   * rnaSPAdes – a de novo transcriptome assembler from RNA-Seq data
-  * truSPAdes – a module for TruSeq barcode assembly
+  * metaviralSPAdes – a pipeline for viral assembly from metagenomic data
+  * rnaViralSPAdes – a pipeline for viral transcriptome assembly
   * biosyntheticSPAdes – a module for biosynthetic gene cluster
     assembly with paired-end reads
  .


=====================================
debian/copyright
=====================================
@@ -7,8 +7,6 @@ Files-Excluded:
     **/nlopt
     **/ssw
     ext/include/boost
-    ext/include/cuckoo
-    ext/include/llvm/Support/ConvertUTF.h
     ext/include/parallel_hashmap
     ext/include/samtools/misc/ace2sam
     ext/include/samtools/misc/maq2sam-long
@@ -24,7 +22,6 @@ Files-Excluded:
     ext/src/samtools/misc/wgsim
     ext/include/xxh
     ext/src/googletest
-    ext/src/llvm/ConvertUTF.cpp
     ext/src/ncbi
     ext/src/python_libs
     ext/src/spoa
@@ -61,6 +58,10 @@ Files: ext/include/cppformat/*
 Copyright: 2012-2014 Victor Zverovich
 License: BSD-2-clause
 
+Files: ext/include/cuckoo/*
+Copyright: 2013, Carnegie Mellon University and Intel Corporation
+License: Apache-2.0
+
 Files: ext/include/csv/*
 Copyright: 2012-2015 Ben Strasser <code at ben-strasser.net>
 License: BSD-3-clause


=====================================
debian/links
=====================================
@@ -1,17 +1,19 @@
 usr/bin/spades  usr/bin/spades.py
-usr/bin/spades  usr/bin/truspades.py
-usr/bin/spades  usr/bin/truspades
 usr/bin/spades  usr/bin/metaspades.py
 usr/bin/spades  usr/bin/metaspades
+usr/bin/spades  usr/bin/metaplasmidspades.py
+usr/bin/spades  usr/bin/metaplasmidspades
+usr/bin/spades  usr/bin/metaviralspades.py
+usr/bin/spades  usr/bin/metaviralspades
 usr/bin/spades  usr/bin/plasmidspades.py
 usr/bin/spades  usr/bin/plasmidspades
 usr/bin/spades  usr/bin/rnaspades.py
 usr/bin/spades  usr/bin/rnaspades
+usr/bin/spades  usr/bin/rnaviralspades.py
+usr/bin/spades  usr/bin/rnaviralspades
 usr/bin/spades  usr/bin/coronaspades.py
 usr/bin/spades  usr/bin/coronaspades
-usr/bin/bwa     usr/libexec/spades/spades-bwa
 usr/share/man/man1/spades.1.gz /usr/share/man/man1/spades.py.1.gz
-usr/share/man/man1/truspades.1.gz /usr/share/man/man1/truspades.py.1.gz
 usr/share/man/man1/metaspades.1.gz /usr/share/man/man1/metaspades.py.1.gz
 usr/share/man/man1/plasmidspades.1.gz /usr/share/man/man1/plasmidspades.py.1.gz
 usr/share/man/man1/rnaspades.1.gz /usr/share/man/man1/rnaspades.py.1.gz


=====================================
debian/man_src/truspades.1.adoc deleted
=====================================
@@ -1,45 +0,0 @@
-= truspades(1)
-
-## NAME
-
-truspades - truSPAdes genome assembler
-
-## SYNOPSIS
-
-*truspades* [options] -o <output_dir>
-
-## DESCRIPTION
-
-*truspades* is the main executable for the **truSPAdes** software. It
-assembles genomic reads given to it and places the resulting assembly in
-<output_dir>.
-
-## OPTIONS
-
-### Basic options
-
-*-o* <output_dir>::
-   directory to store all the resulting files (required)
-
-*--test*::
-   runs truSPAdes on toy dataset
-
-*-h*/*--help*::
-   prints this usage message
-
-*-t*/*--threads* <int>::
-   number of threads
-
-*--continue*::
-   continue interrupted launch
-
-*--construct-dataset*::
-   parse dataset from input folder
-
-### Input options
-
-*--input-dir* <directory>::
-   directory with input data. Note that the directory should contain only files with reads. This option can be used several times to provide several input directories.
-
-*--dataset* <file>:w:
-    file with dataset description


=====================================
debian/patches/0002_use_debian_packaged_python-joblib.patch deleted
=====================================
@@ -1,34 +0,0 @@
-Author: Andreas Tille <tille at debian.org>
-Last-Changed: Tue, 03 Mar 2015 20:55:53 +0100
-Forwarded: not-needed
-Description: We are using Debian packaged python-joblib
- Debian has its own way to distinguish Python versions and there is no point
- in doing this inside the code.
- .
- The patch is non-intrusive since it conserves the original code and uses
- Debian pyyaml only if the original method fails.
-
---- a/assembler/src/spades_pipeline/scripts/compress_all.py
-+++ b/assembler/src/spades_pipeline/scripts/compress_all.py
-@@ -28,12 +28,15 @@ def remove_not_corrected_reads(output_di
- def compress_dataset_files(input_file, ext_python_modules_home, max_threads, log, not_used_yaml_file, output_dir,
-                            gzip_output):
-     addsitedir(ext_python_modules_home)
--    if sys.version.startswith("2."):
--        import pyyaml2 as pyyaml
--        from joblib2 import Parallel, delayed
--    elif sys.version.startswith("3."):
--        import pyyaml3 as pyyaml
--        from joblib3 import Parallel, delayed
-+    try:
-+        if sys.version.startswith("2."):
-+            import pyyaml2 as pyyaml
-+            from joblib2 import Parallel, delayed
-+        elif sys.version.startswith("3."):
-+            import pyyaml3 as pyyaml
-+            from joblib3 import Parallel, delayed
-+    except:
-+        from joblib import Parallel, delayed
- 
-     dataset_data = pyyaml.load(open(input_file))
-     remove_not_corrected_reads(output_dir)


=====================================
debian/patches/0003_accept-system-bwa.patch deleted
=====================================
@@ -1,94 +0,0 @@
-Author: Andreas Tille <tille at debian.org>
-Last-Changed: Tue, 03 Mar 2015 20:55:53 +0100
-Forwarded: not-needed
-Description: Enable using Debian packaged bwa instead of bwa-spades
- Users might have installed a local version of bwa which is used independently
- from SPAdes.  This is specifically true on Debian systems where the
- dependency system ensures the installation of bwa.  This patch uses the
- local installed bwa as fallback if bwa-spades is not found.
- .
- The patch is non-intrusive since it conserves the original code and uses
- Debian bwa only if bwa-spades is not available.
- .
- Note: The duplicated which() in two files is for sure not the best solution.
- In case you consider taking over the patch I'd suggest to take it over into
- some common import file.
-
---- spades.orig/assembler/src/spades_pipeline/support.py
-+++ spades/assembler/src/spades_pipeline/support.py
-@@ -70,6 +70,22 @@
-         sys.stdout.write("\n\n%s %s\n\n\n" % (prefix, warn_str))
-         sys.stdout.flush()
- 
-+def which(program):
-+    def is_exe(fpath):
-+        return os.path.isfile(fpath) and os.access(fpath, os.X_OK)
-+
-+    fpath, fname = os.path.split(program)
-+    if fpath:
-+        if is_exe(program):
-+            return program
-+    else:
-+        for path in os.environ["PATH"].split(os.pathsep):
-+            path = path.strip('"')
-+            exe_file = os.path.join(path, program)
-+            if is_exe(exe_file):
-+                return exe_file
-+
-+    return None
- 
- def wsl_check():
-     def in_wsl():
-@@ -131,7 +147,14 @@
-     for binary in ["spades-hammer", "spades-ionhammer", "spades-core", "spades-bwa"]:
-         binary_path = os.path.join(binary_dir, binary)
-         if not os.path.isfile(binary_path):
--            error("SPAdes binaries not found: %s\n%s" % (binary_path, get_spades_binaries_info_message()), log)
-+            if binary == "bwa-spades":
-+                localbwa = which('bwa')
-+                if localbwa:
-+                    warning("Spades is using local bwa at %s." % localbwa, log)
-+                else:
-+                    error("SPAdes binaries not found: " + binary_path + "\nThere is also no local bwa installation available\n" + get_spades_binaries_info_message(), log)
-+            else:
-+                error("SPAdes binaries not found: %s\n%s" % (binary_path, get_spades_binaries_info_message()), log)
- 
- 
- def check_file_existence(input_filename, message="", log=None):
---- spades.orig/assembler/src/spades_pipeline/options_parser.py
-+++ spades/assembler/src/spades_pipeline/options_parser.py
-@@ -994,7 +994,10 @@
-     if (not args.only_error_correction) and args.mismatch_corrector:
-         cfg["mismatch_corrector"] = empty_config()
-         cfg["mismatch_corrector"].__dict__["skip-masked"] = None
--        cfg["mismatch_corrector"].__dict__["bwa"] = os.path.join(bin_home, "spades-bwa")
-+        if support.which("bwa-spades"):
-+            cfg["mismatch_corrector"].__dict__["bwa"] = os.path.join(bin_home, "bwa-spades")
-+        else:
-+            cfg["mismatch_corrector"].__dict__["bwa"] = support.which("bwa")
-         cfg["mismatch_corrector"].__dict__["threads"] = args.threads
-         cfg["mismatch_corrector"].__dict__["output-dir"] = args.output_dir
-     cfg["run_truseq_postprocessing"] = options_storage.run_truseq_postprocessing
---- spades.orig/assembler/src/spades_pipeline/scripts/postprocessing_script.py
-+++ spades/assembler/src/spades_pipeline/scripts/postprocessing_script.py
-@@ -15,6 +15,8 @@
- from os.path import abspath, dirname, realpath, join, isfile
- from site import addsitedir
- 
-+sys.path += [("/usr/share/spades/spades_pipeline")]
-+import support
- 
- def parse_args():
-     parser = argparse.ArgumentParser()
-@@ -78,7 +80,10 @@
-     #  run command
-     if isfile(args.result_scaffolds_filename):
-         shutil.move(args.result_scaffolds_filename, args.assembled_scaffolds_filename)
--    alignment_bin = os.path.join(args.bin_home, "spades-bwa")
-+    if support.which("bwa-spades"):
-+        alignment_bin = support.which("bwa-spades")
-+    else:
-+        alignment_bin = support.which("bwa")
-     alignment_dir = os.path.join(args.output_dir, "alignment")
-     sam_files = alignment.align_bwa(alignment_bin, args.assembled_scaffolds_filename,
-                                     dataset_data, alignment_dir, log, args.threads)


=====================================
debian/patches/0101_cmake_ignore_removed_python-yaml.patch deleted
=====================================
@@ -1,18 +0,0 @@
-Author: Andreas Tille <tille at debian.org>
-Last-Changed: Tue, 03 Mar 2015 20:55:53 +0100
-Forwarded: not-needed
-Description: Since we are using Debian packaged python-yaml
- (see 0001_use_debian_packaged_python-yaml.patch) the dir needs to be
- excluded
-
---- a/assembler/ext/src/CMakeLists.txt
-+++ b/assembler/ext/src/CMakeLists.txt
-@@ -9,8 +9,6 @@ endif()
- add_subdirectory(nlopt)
- add_subdirectory(python_libs/joblib2)
- add_subdirectory(python_libs/joblib3)
--add_subdirectory(python_libs/pyyaml2)
--add_subdirectory(python_libs/pyyaml3)
- add_subdirectory(ConsensusCore)
- add_subdirectory(bamtools)
- add_subdirectory(samtools)


=====================================
debian/patches/0102_cmake_ignore_removed_python-joblib.patch deleted
=====================================
@@ -1,18 +0,0 @@
-Author: Andreas Tille <tille at debian.org>
-Last-Changed: Tue, 03 Mar 2015 20:55:53 +0100
-Forwarded: not-needed
-Description: Since we are using Debian packaged python-joblib
- (see 0002_use_debian_packaged_python-joblib.patch) the dir needs to be
- excluded
-
---- a/assembler/ext/src/CMakeLists.txt
-+++ b/assembler/ext/src/CMakeLists.txt
-@@ -7,8 +7,6 @@ if (SPADES_USE_MIMALLOC)
-   add_subdirectory(mimalloc EXCLUDE_FROM_ALL)
- endif()
- add_subdirectory(nlopt)
--add_subdirectory(python_libs/joblib2)
--add_subdirectory(python_libs/joblib3)
- add_subdirectory(ConsensusCore)
- add_subdirectory(bamtools)
- add_subdirectory(samtools)


=====================================
debian/patches/0103_use-debian-packaged-bwa.patch deleted
=====================================
@@ -1,26 +0,0 @@
-Author: Andreas Tille <tille at debian.org>
-Last-Changed: Tue, 18 Feb 2014 15:48:55 +0100
-Forwarded: not-needed
-Description: SPAdes originally contained a code copy of bwa since the version
- of bwa which was current of the time of release did not builded with recent
- gcc versions.  Since this is not the case with Debian shipped bwa this code
- copy is skipped.
- .
- See https://lists.debian.org/debian-med/2014/02/msg00192.html
- .
- Note: I tried to patch the Python scripts which were calling bwa-spades to
- rather call /usr/bin/bwa but the test suite failed.  So as an alternative
- the package contains a symlink
-    ln -s /usr/bin/bwa /usr/libexec/spades/bwa-spades
- which enables successful run of the test suite
-
---- a/assembler/ext/src/CMakeLists.txt
-+++ b/assembler/ext/src/CMakeLists.txt
-@@ -14,7 +14,6 @@ add_subdirectory(cppformat)
- add_subdirectory(ssw)
- add_subdirectory(getopt_pp)
- add_subdirectory(llvm)
--add_subdirectory(bwa)
- add_subdirectory(gqf)
- add_subdirectory(edlib)
- add_subdirectory(gfa1)


=====================================
debian/patches/0116_stable_link_order.patch deleted
=====================================
@@ -1,12 +0,0 @@
-Description: use stable sort order for file globbing
-Author: Sascha Steinbiss <satta at debian.org>
---- a/assembler/ext/src/llvm/CMakeLists.txt
-+++ b/assembler/ext/src/llvm/CMakeLists.txt
-@@ -75,6 +75,7 @@ configure_file(${EXT_DIR}/include/llvm/C
-                ${SPADES_BUILT_INCLUDE_DIR}/llvm/Config.h)
- 
- file(GLOB sources "[a-zA-Z]*.cpp" "[a-zA-Z]*.c")
-+list(SORT sources)
- 
- add_library(llvm-support STATIC
-   ${sources})


=====================================
debian/patches/Try_to_unbreak.patch deleted
=====================================
@@ -1,58 +0,0 @@
-Description: Try to unbreak
-Origin: upstream, https://github.com/ablab/spades/commit/26067c33cda386b61dba0455985a9d0bc7c263f3
-Author: Anton Korobeynikov <anton at korobeynikov.info>
-Date: Tue, 16 Nov 2021 00:28:59 +0300
-
-Index: spades/assembler/ext/include/bamtools/api/algorithms/Sort.h
-===================================================================
---- spades.orig/assembler/ext/include/bamtools/api/algorithms/Sort.h
-+++ spades/assembler/ext/include/bamtools/api/algorithms/Sort.h
-@@ -76,7 +76,7 @@ struct API_EXPORT Sort {
-         { }
- 
-         // comparison function
--        bool operator()(const BamTools::BamAlignment& lhs, const BamTools::BamAlignment& rhs) {
-+        bool operator()(const BamTools::BamAlignment& lhs, const BamTools::BamAlignment& rhs) const {
-             return sort_helper(m_order, lhs.Name, rhs.Name);
-         }
- 
-@@ -112,7 +112,7 @@ struct API_EXPORT Sort {
-         { }
- 
-         // comparison function
--        bool operator()(const BamTools::BamAlignment& lhs, const BamTools::BamAlignment& rhs) {
-+        bool operator()(const BamTools::BamAlignment& lhs, const BamTools::BamAlignment& rhs) const {
- 
-             // force unmapped aligmnents to end
-             if ( lhs.RefID == -1 ) return false;
-@@ -161,7 +161,7 @@ struct API_EXPORT Sort {
-         { }
- 
-         // comparison function
--        bool operator()(const BamTools::BamAlignment& lhs, const BamTools::BamAlignment& rhs) {
-+        bool operator()(const BamTools::BamAlignment& lhs, const BamTools::BamAlignment& rhs) const {
- 
-             // force alignments without tag to end
-             T lhsTagValue;
-@@ -196,7 +196,7 @@ struct API_EXPORT Sort {
-     struct Unsorted : public AlignmentSortBase {
- 
-         // comparison function
--        inline bool operator()(const BamTools::BamAlignment&, const BamTools::BamAlignment&) {
-+        inline bool operator()(const BamTools::BamAlignment&, const BamTools::BamAlignment&) const {
-             return false;   // returning false tends to retain insertion order
-         }
- 
-Index: spades/assembler/ext/src/bamtools/api/internal/bam/BamMultiMerger_p.h
-===================================================================
---- spades.orig/assembler/ext/src/bamtools/api/internal/bam/BamMultiMerger_p.h
-+++ spades/assembler/ext/src/bamtools/api/internal/bam/BamMultiMerger_p.h
-@@ -61,7 +61,7 @@ struct MergeItemSorter : public std::bin
-             : m_comp(comp)
-         { }
- 
--        bool operator()(const MergeItem& lhs, const MergeItem& rhs) {
-+        bool operator()(const MergeItem& lhs, const MergeItem& rhs) const {
-             const BamAlignment& l = *lhs.Alignment;
-             const BamAlignment& r = *rhs.Alignment;
-             return m_comp(l,r);


=====================================
debian/patches/bamtools-cmake.patch deleted
=====================================
@@ -1,40 +0,0 @@
-Author: Andreas Tille <tille at debian.org>
-Forwarded: not-needed
---- /dev/null
-+++ b/assembler/src/cmake/bamtools-config.cmake
-@@ -0,0 +1,35 @@
-+# - Config file for the BamTools package
-+#  Found at
-+#    https://bitbucket.org/lunacab/ccdeep/raw/229ad7adb3700eec272a6cce36966b458bdaaa7a/bamtools-config.cmake
-+# It defines the following variables
-+#  bamtools_FOUND - System has bamtols
-+#  bamtools_INCLUDE_DIRS - include directories for BamTools
-+#  bamtools_LIBRARIES    - libraries to link against
-+#  bamtools_EXECUTABLE   - the bar executable
-+ 
-+
-+include(FindPackageHandleStandardArgs)
-+find_path(bamtools_INCLUDE_DIR api/BamReader.h 
-+                  HINTS ENV BAMTOOLS_INC
-+		  PATH_SUFFIXES bamtools
-+		  )
-+
-+find_library(bamtools_LIBRARY NAMES bamtools
-+             HINTS ${CMAKE_SYSTEM_LIB_PATH}
-+             PATH_SUFFIXES bamtools
-+             )
-+
-+get_filename_component(bamtools_LIB_DIR ${bamtools_LIBRARY}
-+                       PATH)
-+                       
-+set(bamtools_LIBRARIES ${bamtools_LIB_DIR})
-+set(bamtools_INCLUDE_DIRS ${bamtools_INCLUDE_DIR})
-+get_filename_component(bamtools_REAL_LIBRARY ${bamtools_LIBRARY} REALPATH)
-+get_filename_component(bamtools_LIB_FILE ${bamtools_REAL_LIBRARY} NAME)
-+
-+find_package_handle_standard_args(bamtools  DEFAULT_MSG
-+                                  bamtools_LIBRARY bamtools_INCLUDE_DIR)
-+
-+mark_as_advanced(bamtools_LIBRARY bamtools_INCLUDE_DIR )
-+
-+


=====================================
debian/patches/debian_bwa_zlib.patch deleted
=====================================
@@ -1,13 +0,0 @@
-Author: Juhani Numminen <juhaninumminen0 at gmail.com>
-Last-Changed: Thu, 25 Feb 2021 19:34:46 +0200
-Description: due to debian changes, bwa now refers to a system-wide libbwa.a
- and we need to manually link with zlib
-Forwarded: no
---- a/assembler/src/common/modules/CMakeLists.txt
-+++ b/assembler/src/common/modules/CMakeLists.txt
-@@ -20,4 +20,4 @@ add_library(modules STATIC
-             alignment/pacbio/g_aligner.cpp 
-             alignment/pacbio/g_aligner.cpp)
- 
--target_link_libraries(modules sequence bwa assembly_graph)
-+target_link_libraries(modules sequence bwa ${ZLIB_LIBRARIES} assembly_graph)


=====================================
debian/patches/disable_local_convertutf.patch deleted
=====================================
@@ -1,15 +0,0 @@
-Author: Juhani Numminen <juhaninumminen0 at gmail.com>
-Last-Changed: Fri, 26 Feb 2021 11:32:36 +0200
-Description: removal of ConvertUTF.cpp makes it necessary to link spades's
- LLVM with system-provided LLVMSupport.a
-Forwarded: not-needed
---- a/assembler/ext/src/llvm/CMakeLists.txt
-+++ b/assembler/ext/src/llvm/CMakeLists.txt
-@@ -81,3 +81,7 @@
- if (DL_LIB)
-   target_link_libraries(llvm-support ${DL_LIB})
- endif()
-+
-+find_package(LLVM REQUIRED CONFIG)
-+llvm_map_components_to_libnames(llvm_libs support)
-+target_link_libraries(llvm-support ${llvm_libs})


=====================================
debian/patches/fix-gcc13.patch deleted
=====================================
@@ -1,38 +0,0 @@
-Description: fix gcc-13 build issue 
-Author: Bo YU <tsu.yubo at gmail.com> 
-Bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1037863 
-Forwarded: https://github.com/ablab/spades/pull/1157 
-Last-Update: 2023-07-19
----
-This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
---- a/assembler/ext/include/llvm/Support/Signals.h
-+++ b/assembler/ext/include/llvm/Support/Signals.h
-@@ -15,6 +15,7 @@
- #define LLVM_SUPPORT_SIGNALS_H
- 
- #include <string>
-+#include <cstdint>
- 
- namespace llvm {
- class StringRef;
---- a/assembler/src/common/pipeline/library_data.hpp
-+++ b/assembler/src/common/pipeline/library_data.hpp
-@@ -8,6 +8,7 @@
- 
- #include <map>
- #include <string>
-+#include <cstdint>
- 
- // Forward decls for LLVM YAML API
- namespace llvm { namespace yaml { class IO; template<typename T> struct MappingTraits; } }
---- a/assembler/src/common/sequence/nucl.hpp
-+++ b/assembler/src/common/sequence/nucl.hpp
-@@ -8,6 +8,8 @@
- #ifndef NUCL_HPP_
- #define NUCL_HPP_
- 
-+#include <cstdint>
-+
- #include "utils/verify.hpp"
- 
- /**


=====================================
debian/patches/fix-privacy-breaches.patch deleted
=====================================
@@ -1,20 +0,0 @@
-Description: fix privacy breaches identified by lintian.
- These breaches are caused by various badges, they may be safely remove.
-Author: Étienne Mollier <emollier at debian.org>
-Forwarded: not-needed
-Last-Update: 2022-06-25
----
-This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
---- spades.orig/assembler/manual.html
-+++ spades/assembler/manual.html
-@@ -1,9 +1,4 @@
--<html>     <head>         <title>SPAdes 3.15.5 Manual</title>         <style type="text/css">             .highlight  pre {               background-color: #f0f2f4;               border-radius: 2px;               font-size: 100%;               line-height: 1.45;               overflow: auto;               padding: 16px;             }         </style>     </head>     <body><p dir="auto"><a href="http://chihua.cab.spbu.ru:3000/buildConfiguration/SPAdesBasicTests_RunAll?mode=builds" rel="nofollow"><img src="https://camo.githubusercontent.com/21b928ad15b5735360cb555da4951c8dee2ef5633fd61c3fce22bb157f9dc1c5/687474703a2f2f6368696875612e6361622e737062752e72753a333030302f6170702f726573742f6275696c64732f6275696c64547970653a2869643a535041646573426173696354657374735f52756e416c6c292f73746174757349636f6e" alt="TeamCity Simple Build Status" data-canonical-src="http://chihua.cab.spbu.ru:3000/app/rest/builds/buildType:(id:SPAdesBasicTests_RunAll)/statusIcon" style="max-width: 100%;"></a><br>
--<a href="https://www.gnu.org/licenses/old-licenses/gpl-2.0" rel="nofollow"><img src="https://camo.githubusercontent.com/c76156a44047d8a6b64fc1fa16118996c422cff2959c1ae82127260b29e990ef/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e63652d47504c76322d626c7565" alt="License" data-canonical-src="https://img.shields.io/badge/licence-GPLv2-blue" style="max-width: 100%;"></a><br>
--<a href="https://github.com/ablab/spades/releases/"><img src="https://camo.githubusercontent.com/b67a7145a28ab5560f54b811c18353c4771fa5ae62a344f4d5e53a4c0a9da5b4/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f61626c61622f737061646573" alt="GitHub release (latest by date)" data-canonical-src="https://img.shields.io/github/v/release/ablab/spades" style="max-width: 100%;"></a><br>
--<a href="https://github.com/ablab/spades/releases"><img src="https://camo.githubusercontent.com/a8ba4fbdefabcc61b7a4d41a40fb19c92e96d49717bd24414252a4f460a34f09/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f646f776e6c6f6164732f61626c61622f7370616465732f746f74616c2e7376673f7374796c653d736f6369616c266c6f676f3d676974687562266c6162656c3d446f776e6c6f6164" alt="GitHub Downloads" data-canonical-src="https://img.shields.io/github/downloads/ablab/spades/total.svg?style=social&logo=github&label=Download" style="max-width: 100%;"></a><br>
--<a href="https://anaconda.org/bioconda/spades" rel="nofollow"><img src="https://camo.githubusercontent.com/24a3286de783bcb188f9e010b910a26db4026ecf4b05f184fb3f71f4892f6c77/68747470733a2f2f616e61636f6e64612e6f72672f62696f636f6e64612f7370616465732f6261646765732f646f776e6c6f6164732e737667" alt="BioConda Downloads" data-canonical-src="https://anaconda.org/bioconda/spades/badges/downloads.svg" style="max-width: 100%;"></a><br>
--<a href="code_of_conduct.md"><img src="https://camo.githubusercontent.com/9a5e1f5558bc77986d831a81a6f80819da5a94c13d3aca339a0993119f535a06/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f436f6e7472696275746f72253230436f76656e616e742d322e302d3462616161612e737667" alt="Contributor Covenant" data-canonical-src="https://img.shields.io/badge/Contributor%20Covenant-2.0-4baaaa.svg" style="max-width: 100%;"></a></p>
-+<html>     <head>         <title>SPAdes 3.15.5 Manual</title>         <style type="text/css">             .highlight  pre {               background-color: #f0f2f4;               border-radius: 2px;               font-size: 100%;               line-height: 1.45;               overflow: auto;               padding: 16px;             }         </style>     </head>     <body><p dir="auto"></p>
- <p dir="auto"><strong>SPAdes 3.15.5 Manual</strong></p>
- <ol dir="auto">
- <li><a href="#sec1">About SPAdes</a> <br>


=====================================
debian/patches/fix-sigill-on-non-popcnt-cpus.patch deleted
=====================================
@@ -1,21 +0,0 @@
-Description: fix baseline violation caused by asm calling popcnt
-Author: Étienne Mollier <etienne.mollier at mailoo.org>
-Forwarded: https://github.com/ablab/spades/issues/872
-Last-Update: 2021-02-27
----
-This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
---- spades.orig/assembler/ext/src/gqf/gqf.c
-+++ spades/assembler/ext/src/gqf/gqf.c
-@@ -174,11 +174,7 @@
- 
- 
- static inline int popcnt(uint64_t val) {
--       asm("popcnt %[val], %[val]"
--                       : [val] "+r" (val)
--                       :
--                       : "cc");
--       return val;
-+       return __builtin_popcountl(val);
- }
- 
- static inline int popcntv(const uint64_t val, int ignore)


=====================================
debian/patches/gcc-15.patch deleted
=====================================
@@ -1,76 +0,0 @@
-Description: Fix compilation with gcc 15
-Author: Nilesh Patra <nilesh at iki.fi>
-Last-Update: 2025-09-20
---- a/assembler/src/common/io/binary/binary.hpp
-+++ b/assembler/src/common/io/binary/binary.hpp
-@@ -11,6 +11,7 @@
- #include <map>
- #include <unordered_map>
- #include <memory>
-+#include <cstdint>
- 
- #include "utils/verify.hpp"
- #include "io/binary/access.hpp"
---- a/assembler/src/common/utils/ph_map/key_with_hash.hpp
-+++ b/assembler/src/common/utils/ph_map/key_with_hash.hpp
-@@ -61,7 +61,7 @@
-     bool operator==(const SimpleKeyWithHash &that) const {
-         VERIFY_DEV(&this->hash_ == &that.hash_);
-         if (this->ready_ && that.ready_)
--            return this->idx_ == that.idx_ && this->is_minimal_ == that.is_minimal_;
-+            return this->idx_ == that.idx_;
-         return this->key_ == that.key_;
-     }
- 
---- a/assembler/src/common/adt/flat_map.hpp
-+++ b/assembler/src/common/adt/flat_map.hpp
-@@ -173,7 +173,7 @@
-     }
- 
-     void swap(flat_map &other) {
--        data_.swap(other.data);
-+        data_.swap(other.data_);
-     }
- 
-     void clear() {
---- a/assembler/src/common/adt/flat_set.hpp
-+++ b/assembler/src/common/adt/flat_set.hpp
-@@ -124,7 +124,7 @@
-         return data_.erase(iterator_const_cast(first), iterator_const_cast(last));
-     }
- 
--    void swap(flat_set &other) { data_.swap(other.data); }
-+    void swap(flat_set &other) { data_.swap(other.data_); }
- 
-     void clear() { data_.clear(); }
- 
---- a/assembler/src/common/hmm/hmmmatcher.hpp
-+++ b/assembler/src/common/hmm/hmmmatcher.hpp
-@@ -11,6 +11,7 @@
- 
- #include <memory>
- #include "hmmer_fwd.h"
-+#include <cstdint>
- 
- namespace hmmer {
- 
---- a/assembler/src/common/io/reads/read_stream.hpp
-+++ b/assembler/src/common/io/reads/read_stream.hpp
-@@ -13,6 +13,7 @@
- #include <memory>
- #include <typeinfo>
- #include <typeindex>
-+#include <cstdint>
- 
- namespace io {
- 
---- a/assembler/ext/include/btree/btree.h
-+++ b/assembler/ext/include/btree/btree.h
-@@ -114,6 +114,7 @@
- #include <ostream>
- #include <string>
- #include <utility>
-+#include <cstdint>
- 
- #ifndef NDEBUG
- #define BTREE_NDEBUG 0


=====================================
debian/patches/python3.12.patch deleted
=====================================
@@ -1,16 +0,0 @@
-Description: Replace distutils which is removed in Python3.12
-Bug-Debian: https://bugs.debian.org/1061846
-Author: Andreas Tille <tille at debian.org>
-Last-Update: 2024-02-02
-
---- a/assembler/src/spades_pipeline/support.py
-+++ b/assembler/src/spades_pipeline/support.py
-@@ -20,7 +20,7 @@ import sys
- import tempfile
- import traceback
- from platform import uname
--from distutils.version import LooseVersion
-+from packaging.version import Version as LooseVersion
- from os.path import abspath, expanduser, join
- 
- import options_storage


=====================================
debian/patches/python3.patch deleted
=====================================
@@ -1,2058 +0,0 @@
-Author: Andreas Tille <tille at debian.org>
-Last-Update: 2019-11-12
-Forwarded: not-needed
-Description: Make sure Python3 interpreter is used in scripts
-
---- spades.orig/assembler/changer_of_K.py
-+++ spades/assembler/changer_of_K.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- import os
- import shutil
---- spades.orig/assembler/ext/src/samtools/misc/varfilter.py
-+++ spades/assembler/ext/src/samtools/misc/varfilter.py
-@@ -1,4 +1,4 @@
--#!/software/bin/python
-+#!/usr/bin/python3
- 
- # Author: lh3, converted to python and modified to add -C option by Aylwyn Scally
- #
---- spades.orig/assembler/show_saves.py
-+++ spades/assembler/show_saves.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python3
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2018 Saint Petersburg State University
---- spades.orig/assembler/spades.py
-+++ spades/assembler/spades.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2019 Saint Petersburg State University
---- spades.orig/assembler/spades_dev.sh
-+++ spades/assembler/spades_dev.sh
-@@ -8,5 +8,5 @@
- rm bin/*;
- cp build/release/debruijn/spades bin/spades;
- cp build/release/hammer/hammer bin/hammer;
--python spades.py "$@";
-+python3 spades.py "$@";
- 
---- spades.orig/assembler/spades_init.py
-+++ spades/assembler/spades_init.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2019 Saint Petersburg State University
---- spades.orig/assembler/src/projects/ionhammer/comparator.py
-+++ spades/assembler/src/projects/ionhammer/comparator.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python3
-+#!/usr/bin/python3
- # -*- coding: UTF-8 -*-
- import subprocess
- import os
---- spades.orig/assembler/src/projects/kmercount/kmerbin_converter.py
-+++ spades/assembler/src/projects/kmercount/kmerbin_converter.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2019 Saint Petersburg State University
-@@ -50,4 +50,4 @@
- 
- 
- if __name__ == "__main__":
--    main()
-\ No newline at end of file
-+    main()
---- spades.orig/assembler/src/projects/mts/binners/gattaca.snake
-+++ spades/assembler/src/projects/mts/binners/gattaca.snake
-@@ -32,8 +32,8 @@
-     threads: THREADS
-     log:     "binning/gattaca.log"
-     message: "Running GATTACA clustering"
--    shell:   "set +u; source activate py27; set -u\n"
--             "python {SOFT}/gattaca/src/python/gattaca.py cluster --contigs {input.contigs}"
-+    shell:   "set +u; source activate py37; set -u\n"
-+             "python3 {SOFT}/gattaca/src/python/gattaca.py cluster --contigs {input.contigs}"
-              " --coverage {input.profiles} --algorithm dirichlet --clusters {output} >{log} 2>&1\n"
-              "rm -f assembly/splits/all_filtered.fasta.fai"
- 
---- spades.orig/assembler/src/projects/mts/mts.py
-+++ spades/assembler/src/projects/mts/mts.py
-@@ -1,5 +1,4 @@
--#!/usr/bin/env python
--from __future__ import (print_function)
-+#!/usr/bin/python3
- 
- import argparse
- import subprocess
---- spades.orig/assembler/src/projects/mts/multirun.py
-+++ spades/assembler/src/projects/mts/multirun.py
-@@ -1,5 +1,4 @@
--#!/usr/bin/env python
--from __future__ import (print_function)
-+#!/usr/bin/python3
- 
- import argparse
- import os
---- spades.orig/assembler/src/projects/mts/scripts/bhtsne.py
-+++ spades/assembler/src/projects/mts/scripts/bhtsne.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- '''
- A simple Python wrapper for the bh_tsne binary that makes it easier to use it
-@@ -15,7 +15,7 @@
- 
- The output will not be normalised, maybe the below one-liner is of interest?:
- 
--    python -c 'import numpy;  from sys import stdin, stdout;
-+    python3 -c 'import numpy;  from sys import stdin, stdout;
-         d = numpy.loadtxt(stdin); d -= d.min(axis=0); d /= d.max(axis=0);
-         numpy.savetxt(stdout, d, fmt="%.8f", delimiter="\t")'
- 
-@@ -207,7 +207,7 @@
-         try:
-             os.waitpid(child_pid, 0)
-         except KeyboardInterrupt:
--            print("Please run this program directly from python and not from ipython or jupyter.")
-+            print("Please run this program directly from python3 and not from ipython3 or jupyter.")
-             print("This is an issue due to asynchronous error handling.")
- 
-         res = []
---- spades.orig/assembler/src/projects/mts/scripts/bin_profiles.py
-+++ spades/assembler/src/projects/mts/scripts/bin_profiles.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- from __future__ import (print_function)
- 
- import pandas
---- spades.orig/assembler/src/projects/mts/scripts/choose_bins.py
-+++ spades/assembler/src/projects/mts/scripts/choose_bins.py
-@@ -1,5 +1,4 @@
--#!/usr/bin/env python
--from __future__ import (print_function)
-+#!/usr/bin/python3
- 
- import re
- import sys
---- spades.orig/assembler/src/projects/mts/scripts/choose_samples.py
-+++ spades/assembler/src/projects/mts/scripts/choose_samples.py
-@@ -1,5 +1,4 @@
--#!/usr/bin/env python
--from __future__ import (print_function)
-+#!/usr/bin/python3
- 
- import argparse
- from operator import itemgetter
---- spades.orig/assembler/src/projects/mts/scripts/clusters2csv.py
-+++ spades/assembler/src/projects/mts/scripts/clusters2csv.py
-@@ -1,5 +1,4 @@
--#!/usr/bin/env python
--from __future__ import print_function
-+#!/usr/bin/python3
- import sys
- 
- from Bio import SeqIO
---- spades.orig/assembler/src/projects/mts/scripts/combine_contigs.py
-+++ spades/assembler/src/projects/mts/scripts/combine_contigs.py
-@@ -1,5 +1,4 @@
--#!/usr/bin/env python
--from __future__ import print_function
-+#!/usr/bin/python3
- import sys
- import os
- import os.path
---- spades.orig/assembler/src/projects/mts/scripts/contig_name_filter.py
-+++ spades/assembler/src/projects/mts/scripts/contig_name_filter.py
-@@ -1,5 +1,4 @@
--#!/usr/bin/env python
--from __future__ import print_function
-+#!/usr/bin/python3
- 
- import sys
- from Bio import SeqIO
---- spades.orig/assembler/src/projects/mts/scripts/cut_fasta.py
-+++ spades/assembler/src/projects/mts/scripts/cut_fasta.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- """Cut up fasta file in non-overlapping or overlapping parts of equal length.
- """
- from __future__ import print_function
---- spades.orig/assembler/src/projects/mts/scripts/filter_nucmer.py
-+++ spades/assembler/src/projects/mts/scripts/filter_nucmer.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- from __future__ import print_function
- 
- import re
---- spades.orig/assembler/src/projects/mts/scripts/gather_stats.py
-+++ spades/assembler/src/projects/mts/scripts/gather_stats.py
-@@ -1,5 +1,4 @@
--#!/usr/bin/env python
--from __future__ import (print_function)
-+#!/usr/bin/python3
- 
- import argparse
- from collections import OrderedDict
---- spades.orig/assembler/src/projects/mts/scripts/gen_samples.py
-+++ spades/assembler/src/projects/mts/scripts/gen_samples.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python3
-+#!/usr/bin/python3
- from __future__ import print_function
- 
- import argparse
---- spades.orig/assembler/src/projects/mts/scripts/multi_stats.py
-+++ spades/assembler/src/projects/mts/scripts/multi_stats.py
-@@ -1,5 +1,4 @@
--#!/usr/bin/env python
--from __future__ import (print_function)
-+#!/usr/bin/python3
- 
- import argparse
- import os
---- spades.orig/assembler/src/projects/mts/scripts/split_bins.py
-+++ spades/assembler/src/projects/mts/scripts/split_bins.py
-@@ -1,5 +1,4 @@
--#!/usr/bin/env python
--from __future__ import print_function
-+#!/usr/bin/python3
- 
- from operator import itemgetter
- import os
---- spades.orig/assembler/src/projects/mts/scripts/subsample.py
-+++ spades/assembler/src/projects/mts/scripts/subsample.py
-@@ -1,5 +1,4 @@
--#!/usr/bin/env python
--from __future__ import (print_function)
-+#!/usr/bin/python3
- 
- import argparse
- import gzip
---- spades.orig/assembler/src/projects/mts/test.py
-+++ spades/assembler/src/projects/mts/test.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- from __future__ import print_function
- 
- import argparse
---- spades.orig/assembler/src/projects/spaligner/benchmarking/GraphAligner.snake
-+++ spades/assembler/src/projects/spaligner/benchmarking/GraphAligner.snake
-@@ -43,7 +43,7 @@
-         "{org}/GraphAligner/tmp/graph_idfix.gfa",
-         "{org}/GraphAligner/tmp/graph_nodemapping.txt"
-     shell:
--        "python {SCRIPTPATH}/gfa_string_to_int.py {input} {output}"
-+        "python3 {SCRIPTPATH}/gfa_string_to_int.py {input} {output}"
- 
- rule make_graphreference:
-     input:
-@@ -52,7 +52,7 @@
-         "{org}/GraphAligner/tmp/{graph}_refnodes.txt",
-         "{org}/GraphAligner/tmp/{graph}_gfareference.fa"
-     shell:
--        "python {SCRIPTPATH}/makegfareference.py {input} {output}"
-+        "python3 {SCRIPTPATH}/makegfareference.py {input} {output}"
- 
- rule reverse_reads:
-     input:
-@@ -158,4 +158,4 @@
-         selected_alns = "{org}/GraphAligner/output/aln_{reads}_selected.json",
-         full_len_alns = "{org}/GraphAligner/output/aln_{reads}_full_length.json",
-     shell:
--        "{VGPATH}/vg view -aj {input.all_alns} > {output.all_alns} && {VGPATH}/vg view -aj {input.selected_alns} > {output.selected_alns} && {VGPATH}/vg view -aj {input.full_len_alns} > {output.full_len_alns}"
-\ No newline at end of file
-+        "{VGPATH}/vg view -aj {input.all_alns} > {output.all_alns} && {VGPATH}/vg view -aj {input.selected_alns} > {output.selected_alns} && {VGPATH}/vg view -aj {input.full_len_alns} > {output.full_len_alns}"
---- spades.orig/assembler/src/projects/spaligner/benchmarking/benchmarking_stats.py
-+++ spades/assembler/src/projects/spaligner/benchmarking/benchmarking_stats.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- import sys
- import json
- import unicodedata
---- spades.orig/assembler/src/projects/spaligner/benchmarking/test_spaligner.py
-+++ spades/assembler/src/projects/spaligner/benchmarking/test_spaligner.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- import sys
- import json
- import unicodedata
---- spades.orig/assembler/src/spades_pipeline/commands_parser.py
-+++ spades/assembler/src/spades_pipeline/commands_parser.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/executors/executor_local.py
-+++ spades/assembler/src/spades_pipeline/executors/executor_local.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2019 Saint Petersburg State University
-@@ -75,4 +75,4 @@
-         path = options_storage.get_stage_filename(num, command.short_name)
-         if not os.path.exists(os.path.dirname(path)):
-             os.makedirs(os.path.dirname(path))
--        open(path, 'a').close()
-\ No newline at end of file
-+        open(path, 'a').close()
---- spades.orig/assembler/src/spades_pipeline/executors/executor_save_yaml.py
-+++ spades/assembler/src/spades_pipeline/executors/executor_save_yaml.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/executors/executors.py
-+++ spades/assembler/src/spades_pipeline/executors/executors.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/options_parser.py
-+++ spades/assembler/src/spades_pipeline/options_parser.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/options_storage.py
-+++ spades/assembler/src/spades_pipeline/options_storage.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/process_cfg.py
-+++ spades/assembler/src/spades_pipeline/process_cfg.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/run_contig_breaker.py
-+++ spades/assembler/src/spades_pipeline/run_contig_breaker.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/scripts/breaking_scaffolds_script.py
-+++ spades/assembler/src/spades_pipeline/scripts/breaking_scaffolds_script.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/scripts/check_test_script.py
-+++ spades/assembler/src/spades_pipeline/scripts/check_test_script.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/scripts/compress_all.py
-+++ spades/assembler/src/spades_pipeline/scripts/compress_all.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/scripts/copy_files.py
-+++ spades/assembler/src/spades_pipeline/scripts/copy_files.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/scripts/correction_iteration_script.py
-+++ spades/assembler/src/spades_pipeline/scripts/correction_iteration_script.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/scripts/plasmid_glue.py
-+++ spades/assembler/src/spades_pipeline/scripts/plasmid_glue.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- import os
- import sys
---- spades.orig/assembler/src/spades_pipeline/scripts/postprocessing_script.py
-+++ spades/assembler/src/spades_pipeline/scripts/postprocessing_script.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/scripts/preprocess_contigs.py
-+++ spades/assembler/src/spades_pipeline/scripts/preprocess_contigs.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/scripts/preprocess_interlaced_reads.py
-+++ spades/assembler/src/spades_pipeline/scripts/preprocess_interlaced_reads.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/stages/before_start_stage.py
-+++ spades/assembler/src/spades_pipeline/stages/before_start_stage.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2019 Saint Petersburg State University
-@@ -44,4 +44,4 @@
- def add_to_pipeline(pipeline, cfg, output_files, tmp_configs_dir, dataset_data, log,
-                     bin_home, ext_python_modules_home, python_modules_home):
-     pipeline.add(BeforeStartStage(cfg, "before_start", output_files, tmp_configs_dir,
--                                  dataset_data, log, bin_home, ext_python_modules_home, python_modules_home))
-\ No newline at end of file
-+                                  dataset_data, log, bin_home, ext_python_modules_home, python_modules_home))
---- spades.orig/assembler/src/spades_pipeline/stages/breaking_scaffolds_stage.py
-+++ spades/assembler/src/spades_pipeline/stages/breaking_scaffolds_stage.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/stages/check_test_stage.py
-+++ spades/assembler/src/spades_pipeline/stages/check_test_stage.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/stages/correction_stage.py
-+++ spades/assembler/src/spades_pipeline/stages/correction_stage.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/stages/error_correction_stage.py
-+++ spades/assembler/src/spades_pipeline/stages/error_correction_stage.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/stages/pipeline.py
-+++ spades/assembler/src/spades_pipeline/stages/pipeline.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/stages/postprocessing_stage.py
-+++ spades/assembler/src/spades_pipeline/stages/postprocessing_stage.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/stages/preprocess_reads_stage.py
-+++ spades/assembler/src/spades_pipeline/stages/preprocess_reads_stage.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/stages/spades_iteration_stage.py
-+++ spades/assembler/src/spades_pipeline/stages/spades_iteration_stage.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/stages/spades_stage.py
-+++ spades/assembler/src/spades_pipeline/stages/spades_stage.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/stages/stage.py
-+++ spades/assembler/src/spades_pipeline/stages/stage.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/stages/terminating_stage.py
-+++ spades/assembler/src/spades_pipeline/stages/terminating_stage.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2019 Saint Petersburg State University
-@@ -33,4 +33,4 @@
-                     ext_python_modules_home, python_modules_home):
-     pipeline.add(TerminatingStage("terminate", output_files, tmp_configs_dir,
-                                   dataset_data, log, bin_home,
--                                  ext_python_modules_home, python_modules_home))
-\ No newline at end of file
-+                                  ext_python_modules_home, python_modules_home))
---- spades.orig/assembler/src/spades_pipeline/support.py
-+++ spades/assembler/src/spades_pipeline/support.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2019 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/truspades/break_by_coverage.py
-+++ spades/assembler/src/spades_pipeline/truspades/break_by_coverage.py
-@@ -1,4 +1,4 @@
--#! /usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/truspades/moleculo_filter_contigs.py
-+++ spades/assembler/src/spades_pipeline/truspades/moleculo_filter_contigs.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/spades_pipeline/truspades/reference_construction.py
-+++ spades/assembler/src/spades_pipeline/truspades/reference_construction.py
-@@ -1,4 +1,4 @@
--#! /usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/test/teamcity/assess.py
-+++ spades/assembler/src/test/teamcity/assess.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/test/teamcity/assess_reads.py
-+++ spades/assembler/src/test/teamcity/assess_reads.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
-@@ -34,4 +34,4 @@
-     print 'Not enough genome mapped, less than', mapped_limit
-     lvl += 2
- f.close()
--sys.exit(lvl)
-\ No newline at end of file
-+sys.exit(lvl)
---- spades.orig/assembler/src/test/teamcity/clean_old_contigs.py
-+++ spades/assembler/src/test/teamcity/clean_old_contigs.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/test/teamcity/compare_w_master.py
-+++ spades/assembler/src/test/teamcity/compare_w_master.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/test/teamcity/deprecated/bh_ecoli_1k.sh
-+++ spades/assembler/src/test/teamcity/deprecated/bh_ecoli_1k.sh
-@@ -11,6 +11,6 @@
- pushd ../../../
- rm -rf spades_output/ECOLI_1K_TEAMCITY_BH
- ./spades.py --only-error-correction -1 ./data/input/E.coli/is220/cropped/s_6.first1000_1.fastq.gz -2 ./data/input/E.coli/is220/cropped/s_6.first1000_2.fastq.gz -o spades_output/ECOLI_1K_TEAMCITY_BH
--python src/tools/reads_utils/reads_quality.py -r test_dataset/reference_1K.fa.gz -o spades_output/ECOLI_1K_TEAMCITY_BH/reads_quality_results spades_output/ECOLI_1K_TEAMCITY_BH/corrected/dataset.info
--python src/test/teamcity/assess_reads.py spades_output/ECOLI_1K_TEAMCITY_BH/reads_quality_results/report.horizontal.tsv 100 100
-+python3 src/tools/reads_utils/reads_quality.py -r test_dataset/reference_1K.fa.gz -o spades_output/ECOLI_1K_TEAMCITY_BH/reads_quality_results spades_output/ECOLI_1K_TEAMCITY_BH/corrected/dataset.info
-+python3 src/test/teamcity/assess_reads.py spades_output/ECOLI_1K_TEAMCITY_BH/reads_quality_results/report.horizontal.tsv 100 100
- popd
---- spades.orig/assembler/src/test/teamcity/deprecated/bh_ecoli_mda_lane1.sh
-+++ spades/assembler/src/test/teamcity/deprecated/bh_ecoli_mda_lane1.sh
-@@ -11,6 +11,6 @@
- pushd ../../../
- rm -rf /tmp/data/output/spades_output/ECOLI_MDA_LANE1_TEAMCITY_BH
- ./spades.py --sc --only-error-correction --12 ./data/input/E.coli/sc_lane_1/ecoli_mda_lane1.fastq.gz -m 160 -o /tmp/data/output/spades_output/ECOLI_MDA_LANE1_TEAMCITY_BH
--python src/tools/reads_utils/reads_quality.py -r data/input/E.coli/MG1655-K12.fasta.gz -o /tmp/data/output/spades_output/ECOLI_MDA_LANE1_TEAMCITY_BH/reads_quality_results /tmp/data/output/spades_output/ECOLI_MDA_LANE1_TEAMCITY_BH/corrected/dataset.info
--python src/test/teamcity/assess_reads.py /tmp/data/output/spades_output/ECOLI_MDA_LANE1_TEAMCITY_BH/reads_quality_results/report.horizontal.tsv 90 97 # 97 97
-+python3 src/tools/reads_utils/reads_quality.py -r data/input/E.coli/MG1655-K12.fasta.gz -o /tmp/data/output/spades_output/ECOLI_MDA_LANE1_TEAMCITY_BH/reads_quality_results /tmp/data/output/spades_output/ECOLI_MDA_LANE1_TEAMCITY_BH/corrected/dataset.info
-+python3 src/test/teamcity/assess_reads.py /tmp/data/output/spades_output/ECOLI_MDA_LANE1_TEAMCITY_BH/reads_quality_results/report.horizontal.tsv 90 97 # 97 97
- popd
---- spades.orig/assembler/src/test/teamcity/deprecated/full_run.sh
-+++ spades/assembler/src/test/teamcity/deprecated/full_run.sh
-@@ -1,10 +1,3 @@
--
--
--
--
--
--
--
- #!/bin/bash
- 
- ############################################################################
-@@ -26,7 +19,7 @@
- read line < $options_dir"spades.options"
- echo $line
- ./cpcfg
--python2.6 ./spades.py $line -o $project_dir --disable-gzip-output --mismatch-correction
-+python3 ./spades.py $line -o $project_dir --disable-gzip-output --mismatch-correction
- 
- read line < $options_dir"quast.options"
- echo $line
-@@ -45,7 +38,7 @@
- cp $project_dir"/scaffolds.fasta" $dir$(date +%Y%m%d_%H%M%S)_scaf".fasta"
- 
- 
--python2.6 ~/quast-1.3/quast.py $work_contigs $line -o $project_dir"/quality_results/"
-+python3 ~/quast-1.3/quast.py $work_contigs $line -o $project_dir"/quality_results/"
- rm $dir"/quast_all" -rf
- #echo $dir"*.fasta" $line -o $dir"/quast_all"
- dirtmp=$dir"tmp/"
-@@ -60,7 +53,7 @@
- #    echo $j
-     if [ -f $j ] ;
-     then
--      compare_res=$(python2.6 ~/algorithmic-biology/assembler/src/tools/contig_analysis/compare_fasta.py $i $j)
-+      compare_res=$(python3 ~/algorithmic-biology/assembler/src/tools/contig_analysis/compare_fasta.py $i $j)
- #      echo $compare_res
-       if [ $compare_res = "True" ]; 
-       then
-@@ -79,8 +72,8 @@
- quast1_2_line="$output_pref/quast-1.2/quast.py -M 500 $dirtmp* $line -o $dir/quast1_2_all/"
- 
- echo "$quast_line"
--python2.6 $quast_line >null
--python2.6 $quast1_2_line >null
-+python3 $quast_line >null
-+python3 $quast1_2_line >null
- 
- ssh -n antipov at 194.85.238.21 mkdir -p "/var/www/teamcity_runs/$1$2" &
- 
-@@ -98,7 +91,7 @@
-   splitted_opts=$splitted_opts" "${opts[$i *  2 + 1]}
- done
- echo $splitted_opts
--python src/test/teamcity/assess.py $project_dir"quality_results/transposed_report.tsv" $splitted_opts
-+python3 src/test/teamcity/assess.py $project_dir"quality_results/transposed_report.tsv" $splitted_opts
- rm $project_dir"/corrected/" -rf
- 
- 
---- spades.orig/assembler/src/test/teamcity/deprecated/spades_mc_bfaecium_ant.sh
-+++ spades/assembler/src/test/teamcity/deprecated/spades_mc_bfaecium_ant.sh
-@@ -12,6 +12,6 @@
- rm -rf /tmp/data/output/spades_output/BFAECIUM_QUAKE
- ./spades.py -k 21,33,55 -m 16 --only-assembler -1 data/input/B.faecium/std_left.cor.fastq.gz -2 data/input/B.faecium/std_right.cor.fastq.gz -s data/input/B.faecium/std_right.cor_single.fastq.gz -s data/input/B.faecium/std_left.cor_single.fastq.gz -o /tmp/data/output/spades_output/BFAECIUM_QUAKE
- rm -rf ~/quast-1.3/BFAECIUM_QUAKE/
--python ~/quast-1.3/quast.py -R /tmp/data/input/B.faecium/ref.fasta.gz -o ~/quast-1.3/BFAECIUM_QUAKE/ /tmp/data/output/spades_output/BFAECIUM_QUAKE/contigs.fasta
--python src/test/teamcity/assess.py ~/quast-1.3/BFAECIUM_QUAKE/transposed_report.tsv 330000 0
-+python3 ~/quast-1.3/quast.py -R /tmp/data/input/B.faecium/ref.fasta.gz -o ~/quast-1.3/BFAECIUM_QUAKE/ /tmp/data/output/spades_output/BFAECIUM_QUAKE/contigs.fasta
-+python3 src/test/teamcity/assess.py ~/quast-1.3/BFAECIUM_QUAKE/transposed_report.tsv 330000 0
- popd
---- spades.orig/assembler/src/test/teamcity/deprecated/spades_mc_is220.sh
-+++ spades/assembler/src/test/teamcity/deprecated/spades_mc_is220.sh
-@@ -1,4 +1,3 @@
--
- #!/bin/bash
- 
- ############################################################################
-@@ -13,6 +12,6 @@
- rm -rf /tmp/data/output/spades_output/ECOLI_IS220_QUAKE
- ./spades.py --generate-sam-file --only-assembler -m 12 -k 21,33,55 -1 data/input/E.coli/is220/s_6_1.cor.fastq.gz -2 data/input/E.coli/is220/s_6_2.cor.fastq.gz -s data/input/E.coli/is220/s_6_1.cor_single.fastq.gz -s data/input/E.coli/is220/s_6_2.cor_single.fastq.gz -o /tmp/data/output/spades_output/ECOLI_IS220_QUAKE
- rm -rf ~/quast-1.3/ECOLI_IS220_QUAKE/
--python ~/quast-1.3/quast.py -R data/input/E.coli/MG1655-K12.fasta.gz -G data/input/E.coli/genes/genes.gff -O data/input/E.coli/genes/operons.gff -o ~/quast-1.3/ECOLI_IS220_QUAKE/  /tmp/data/output/spades_output/ECOLI_IS220_QUAKE/contigs.fasta
--python src/test/teamcity/assess.py ~/quast-1.3/ECOLI_IS220_QUAKE/transposed_report.tsv 80000 3
-+python3 ~/quast-1.3/quast.py -R data/input/E.coli/MG1655-K12.fasta.gz -G data/input/E.coli/genes/genes.gff -O data/input/E.coli/genes/operons.gff -o ~/quast-1.3/ECOLI_IS220_QUAKE/  /tmp/data/output/spades_output/ECOLI_IS220_QUAKE/contigs.fasta
-+python3 src/test/teamcity/assess.py ~/quast-1.3/ECOLI_IS220_QUAKE/transposed_report.tsv 80000 3
- popd
---- spades.orig/assembler/src/test/teamcity/deprecated/spades_mc_is220_1k.sh
-+++ spades/assembler/src/test/teamcity/deprecated/spades_mc_is220_1k.sh
-@@ -12,6 +12,6 @@
- rm -rf spades_output/ECOLI_IS220_QUAKE_1K
- ./spades.py --only-assembler --generate-sam-file -k 21,55 -1 ./data/input/E.coli/is220/cropped/s_6.first1000_1.fastq.gz -2 ./data/input/E.coli/is220/cropped/s_6.first1000_2.fastq.gz -o spades_output/ECOLI_IS220_QUAKE_1K
- rm -rf ~/quast-1.3/ECOLI_IS220_QUAKE_1K/
--python ~/quast-1.3/quast.py -R data/input/E.coli/MG1655-K12.fasta.gz -G data/input/E.coli/genes/genes.gff -O data/input/E.coli/genes/operons.gff -o ~/quast-1.3/ECOLI_IS220_QUAKE_1K/ spades_output/ECOLI_IS220_QUAKE_1K/contigs.fasta
--python src/test/teamcity/assess.py ~/quast-1.3/ECOLI_IS220_QUAKE_1K/transposed_report.tsv 1000 0
-+python3 ~/quast-1.3/quast.py -R data/input/E.coli/MG1655-K12.fasta.gz -G data/input/E.coli/genes/genes.gff -O data/input/E.coli/genes/operons.gff -o ~/quast-1.3/ECOLI_IS220_QUAKE_1K/ spades_output/ECOLI_IS220_QUAKE_1K/contigs.fasta
-+python3 src/test/teamcity/assess.py ~/quast-1.3/ECOLI_IS220_QUAKE_1K/transposed_report.tsv 1000 0
- popd
---- spades.orig/assembler/src/test/teamcity/deprecated/spades_mc_is220_1k_ant.sh
-+++ spades/assembler/src/test/teamcity/deprecated/spades_mc_is220_1k_ant.sh
-@@ -12,6 +12,6 @@
- rm -rf spades_output/ECOLI_IS220_QUAKE_1K
- ./spades.py -k 21,55 --only-assembler -1 /tmp/data/input/E.coli/is220/cropped/s_6.first1000_1.fastq.gz -2 /tmp/data/input/E.coli/is220/cropped/s_6.first1000_2.fastq.gz -o spades_output/ECOLI_IS220_QUAKE_1K
- rm -rf ~/quast-1.3/ECOLI_IS220_QUAKE_1K/
--python ~/quast-1.3/quast.py -R /tmp/data/input/E.coli/MG1655-K12.fasta.gz -G /tmp/data/input/E.coli/genes/genes.gff -O /tmp/data/input/E.coli/genes/operons.gff -o ~/quast-1.3/ECOLI_IS220_QUAKE_1K/ spades_output/ECOLI_IS220_QUAKE_1K/contigs.fasta
--python src/test/teamcity/assess.py ~/quast-1.3/ECOLI_IS220_QUAKE_1K/transposed_report.tsv 1000 0
-+python3 ~/quast-1.3/quast.py -R /tmp/data/input/E.coli/MG1655-K12.fasta.gz -G /tmp/data/input/E.coli/genes/genes.gff -O /tmp/data/input/E.coli/genes/operons.gff -o ~/quast-1.3/ECOLI_IS220_QUAKE_1K/ spades_output/ECOLI_IS220_QUAKE_1K/contigs.fasta
-+python3 src/test/teamcity/assess.py ~/quast-1.3/ECOLI_IS220_QUAKE_1K/transposed_report.tsv 1000 0
- popd
---- spades.orig/assembler/src/test/teamcity/deprecated/spades_mc_is480.sh
-+++ spades/assembler/src/test/teamcity/deprecated/spades_mc_is480.sh
-@@ -1,4 +1,3 @@
--
- #!/bin/bash
- 
- ############################################################################
-@@ -13,6 +12,6 @@
- rm -rf /tmp/data/output/spades_output/ECOLI_IS480_QUAKE
- ./spades.py --only-assembler -k 21,33,55 -m 12 -1 data/input/E.coli/is480/ERR022075_1.cor.fastq.gz -2 data/input/E.coli/is480/ERR022075_2.cor.fastq.gz -s data/input/E.coli/is480/ERR022075_1.cor_single.fastq.gz -s data/input/E.coli/is480/ERR022075_2.cor_single.fastq.gz -o /tmp/data/output/spades_output/ECOLI_IS480_QUAKE
- rm -rf ~/quast-1.3/ECOLI_IS480_QUAKE/
--python ~/quast-1.3/quast.py -R data/input/E.coli/MG1655-K12.fasta.gz -G data/input/E.coli/genes/genes.gff -O data/input/E.coli/genes/operons.gff -o ~/quast-1.3/ECOLI_IS480_QUAKE/  /tmp/data/output/spades_output/ECOLI_IS480_QUAKE/contigs.fasta
--python src/test/teamcity/assess.py ~/quast-1.3/ECOLI_IS480_QUAKE/transposed_report.tsv 133000 4
-+python3 ~/quast-1.3/quast.py -R data/input/E.coli/MG1655-K12.fasta.gz -G data/input/E.coli/genes/genes.gff -O data/input/E.coli/genes/operons.gff -o ~/quast-1.3/ECOLI_IS480_QUAKE/  /tmp/data/output/spades_output/ECOLI_IS480_QUAKE/contigs.fasta
-+python3 src/test/teamcity/assess.py ~/quast-1.3/ECOLI_IS480_QUAKE/transposed_report.tsv 133000 4
- popd
---- spades.orig/assembler/src/test/teamcity/deprecated/spades_sc_jgi_lane7.sh
-+++ spades/assembler/src/test/teamcity/deprecated/spades_sc_jgi_lane7.sh
-@@ -17,9 +17,9 @@
- 
- rm -rf ~/quast-1.3/ECOLI_SC_JGI_LANE_7/
- 
--python ~/quast-1.3/quast.py -R data/input/E.coli/MG1655-K12.fasta.gz -G data/input/E.coli/genes/genes.gff -O data/input/E.coli/genes/operons.gff -o ~/quast-1.3/ECOLI_SC_JGI_LANE_7/ /tmp/data/output/spades_output/ECOLI_SC_JGI_LANE_7/contigs.fasta
-+python3 ~/quast-1.3/quast.py -R data/input/E.coli/MG1655-K12.fasta.gz -G data/input/E.coli/genes/genes.gff -O data/input/E.coli/genes/operons.gff -o ~/quast-1.3/ECOLI_SC_JGI_LANE_7/ /tmp/data/output/spades_output/ECOLI_SC_JGI_LANE_7/contigs.fasta
- 
--python src/test/teamcity/assess.py ~/quast-1.3/ECOLI_SC_JGI_LANE_7/transposed_report.tsv 115000 4 4260 99.8 3.2 0.7
-+python3 src/test/teamcity/assess.py ~/quast-1.3/ECOLI_SC_JGI_LANE_7/transposed_report.tsv 115000 4 4260 99.8 3.2 0.7
- exitlvl=$?
- popd
- 
---- spades.orig/assembler/src/test/teamcity/deprecated/spades_sc_jgi_lane7_pre.sh
-+++ spades/assembler/src/test/teamcity/deprecated/spades_sc_jgi_lane7_pre.sh
-@@ -17,9 +17,9 @@
- 
- rm -rf ~/quast-1.3/ECOLI_SC_JGI_LANE_7_PRENORM/
- 
--python ~/quast-1.3/quast.py -R data/input/E.coli/MG1655-K12.fasta.gz -G data/input/E.coli/genes/genes.gff -O data/input/E.coli/genes/operons.gff -o ~/quast-1.3/ECOLI_SC_JGI_LANE_7_PRENORM/ /tmp/data/output/spades_output/ECOLI_SC_JGI_LANE_7_PRENORM/contigs.fasta
-+python3 ~/quast-1.3/quast.py -R data/input/E.coli/MG1655-K12.fasta.gz -G data/input/E.coli/genes/genes.gff -O data/input/E.coli/genes/operons.gff -o ~/quast-1.3/ECOLI_SC_JGI_LANE_7_PRENORM/ /tmp/data/output/spades_output/ECOLI_SC_JGI_LANE_7_PRENORM/contigs.fasta
- 
--python src/test/teamcity/assess.py ~/quast-1.3/ECOLI_SC_JGI_LANE_7_PRENORM/transposed_report.tsv 115000 4 4240 99.8 4 0.8
-+python3 src/test/teamcity/assess.py ~/quast-1.3/ECOLI_SC_JGI_LANE_7_PRENORM/transposed_report.tsv 115000 4 4240 99.8 4 0.8
- exitlvl=$?
- popd
- 
---- spades.orig/assembler/src/test/teamcity/deprecated/spades_sc_lane1.sh
-+++ spades/assembler/src/test/teamcity/deprecated/spades_sc_lane1.sh
-@@ -17,9 +17,9 @@
- 
- rm -rf ~/quast-1.3/ECOLI_SC_LANE_1_BH_woHUMAN/
- 
--python ~/quast-1.3/quast.py -R data/input/E.coli/MG1655-K12.fasta.gz -G data/input/E.coli/genes/genes.gff -O data/input/E.coli/genes/operons.gff -o ~/quast-1.3/ECOLI_SC_LANE_1_BH_woHUMAN/ /tmp/data/output/spades_output/ECOLI_SC_LANE_1_BH_woHUMAN/contigs.fasta
-+python3 ~/quast-1.3/quast.py -R data/input/E.coli/MG1655-K12.fasta.gz -G data/input/E.coli/genes/genes.gff -O data/input/E.coli/genes/operons.gff -o ~/quast-1.3/ECOLI_SC_LANE_1_BH_woHUMAN/ /tmp/data/output/spades_output/ECOLI_SC_LANE_1_BH_woHUMAN/contigs.fasta
- 
--python src/test/teamcity/assess.py ~/quast-1.3/ECOLI_SC_LANE_1_BH_woHUMAN/transposed_report.tsv 85000 7
-+python3 src/test/teamcity/assess.py ~/quast-1.3/ECOLI_SC_LANE_1_BH_woHUMAN/transposed_report.tsv 85000 7
- exitlvl=$?
- popd
- 
---- spades.orig/assembler/src/test/teamcity/deprecated/spades_sc_lane1_full.sh
-+++ spades/assembler/src/test/teamcity/deprecated/spades_sc_lane1_full.sh
-@@ -17,9 +17,9 @@
- 
- rm -rf ~/quast-1.3/ECOLI_SC_LANE_1/
- 
--python ~/quast-1.3/quast.py -R data/input/E.coli/MG1655-K12.fasta.gz -G data/input/E.coli/genes/genes.gff -O data/input/E.coli/genes/operons.gff -o ~/quast-1.3/ECOLI_SC_LANE_1/ /tmp/data/output/spades_output/ECOLI_SC_LANE_1/contigs.fasta
-+python3 ~/quast-1.3/quast.py -R data/input/E.coli/MG1655-K12.fasta.gz -G data/input/E.coli/genes/genes.gff -O data/input/E.coli/genes/operons.gff -o ~/quast-1.3/ECOLI_SC_LANE_1/ /tmp/data/output/spades_output/ECOLI_SC_LANE_1/contigs.fasta
- 
--python src/test/teamcity/assess.py ~/quast-1.3/ECOLI_SC_LANE_1/transposed_report.tsv 108000 2 4080 96.4 4 0.7
-+python3 src/test/teamcity/assess.py ~/quast-1.3/ECOLI_SC_LANE_1/transposed_report.tsv 108000 2 4080 96.4 4 0.7
- exitlvl=$?
- popd
- 
---- spades.orig/assembler/src/test/teamcity/deprecated/spades_sc_mruber.sh
-+++ spades/assembler/src/test/teamcity/deprecated/spades_sc_mruber.sh
-@@ -17,9 +17,9 @@
- 
- rm -rf ~/quast-1.3/MRUBER/
- 
--python ~/quast-1.3/quast.py -R data/input/M.ruber/ref.fasta -G data/input/M.ruber/MRU_genes.txt -o ~/quast-1.3/MRUBER/ /tmp/data/output/spades_output/MRUBER/contigs.fasta
-+python3 ~/quast-1.3/quast.py -R data/input/M.ruber/ref.fasta -G data/input/M.ruber/MRU_genes.txt -o ~/quast-1.3/MRUBER/ /tmp/data/output/spades_output/MRUBER/contigs.fasta
- 
--python src/test/teamcity/assess.py ~/quast-1.3/MRUBER/transposed_report.tsv 20000 20 1500 50.0 30 10
-+python3 src/test/teamcity/assess.py ~/quast-1.3/MRUBER/transposed_report.tsv 20000 20 1500 50.0 30 10
- exitlvl=$?
- popd
- 
---- spades.orig/assembler/src/test/teamcity/deprecated/spades_sc_mruber_pre.sh
-+++ spades/assembler/src/test/teamcity/deprecated/spades_sc_mruber_pre.sh
-@@ -17,9 +17,9 @@
- 
- rm -rf ~/quast-1.3/MRUBER_PRENORM/
- 
--python ~/quast-1.3/quast.py -R data/input/M.ruber/ref.fasta -G data/input/M.ruber/MRU_genes.txt -o ~/quast-1.3/MRUBER_PRENORM/ /tmp/data/output/spades_output/MRUBER_PRENORM/contigs.fasta
-+python3 ~/quast-1.3/quast.py -R data/input/M.ruber/ref.fasta -G data/input/M.ruber/MRU_genes.txt -o ~/quast-1.3/MRUBER_PRENORM/ /tmp/data/output/spades_output/MRUBER_PRENORM/contigs.fasta
- 
--python src/test/teamcity/assess.py ~/quast-1.3/MRUBER_PRENORM/transposed_report.tsv 49100 16 2152 75.6 65 21
-+python3 src/test/teamcity/assess.py ~/quast-1.3/MRUBER_PRENORM/transposed_report.tsv 49100 16 2152 75.6 65 21
- exitlvl=$?
- popd
- 
---- spades.orig/assembler/src/test/teamcity/deprecated/spades_sc_phepa.sh
-+++ spades/assembler/src/test/teamcity/deprecated/spades_sc_phepa.sh
-@@ -17,8 +17,8 @@
- 
- rm -rf ~/quast-1.3/PHEPARINUS/
- 
--python ~/quast-1.3/quast.py -R data/input/P.heparinus/ref.fasta -G data/input/P.heparinus/PHE_genes.txt -o ~/quast-1.3/PHEPARINUS/ /tmp/data/output/spades_output/PHEPARINUS/contigs.fasta
--python src/test/teamcity/assess.py ~/quast-1.3/PHEPARINUS/transposed_report.tsv 140000 6 4140 98.0 8.0 2.0
-+python3 ~/quast-1.3/quast.py -R data/input/P.heparinus/ref.fasta -G data/input/P.heparinus/PHE_genes.txt -o ~/quast-1.3/PHEPARINUS/ /tmp/data/output/spades_output/PHEPARINUS/contigs.fasta
-+python3 src/test/teamcity/assess.py ~/quast-1.3/PHEPARINUS/transposed_report.tsv 140000 6 4140 98.0 8.0 2.0
- exitlvl=$?
- popd
- 
---- spades.orig/assembler/src/test/teamcity/deprecated/spades_sc_phepa_pre.sh
-+++ spades/assembler/src/test/teamcity/deprecated/spades_sc_phepa_pre.sh
-@@ -17,9 +17,9 @@
- 
- rm -rf ~/quast-1.3/PHEPARINUS_PRENORM/
- 
--python ~/quast-1.3/quast.py -R data/input/P.heparinus/ref.fasta -G data/input/P.heparinus/PHE_genes.txt -o ~/quast-1.3/PHEPARINUS_PRENORM/ /tmp/data/output/spades_output/PHEPARINUS_PRENORM/contigs.fasta
-+python3 ~/quast-1.3/quast.py -R data/input/P.heparinus/ref.fasta -G data/input/P.heparinus/PHE_genes.txt -o ~/quast-1.3/PHEPARINUS_PRENORM/ /tmp/data/output/spades_output/PHEPARINUS_PRENORM/contigs.fasta
- 
--python src/test/teamcity/assess.py ~/quast-1.3/PHEPARINUS_PRENORM/transposed_report.tsv 160000 9 3900 95.5 10.0 1.0
-+python3 src/test/teamcity/assess.py ~/quast-1.3/PHEPARINUS_PRENORM/transposed_report.tsv 160000 9 3900 95.5 10.0 1.0
- exitlvl=$?
- popd
- 
---- spades.orig/assembler/src/test/teamcity/deprecated/spades_sc_pmarinus.sh
-+++ spades/assembler/src/test/teamcity/deprecated/spades_sc_pmarinus.sh
-@@ -17,9 +17,9 @@
- 
- rm -rf ~/quast-1.3/PMARINUS/
- 
--python ~/quast-1.3/quast.py -R data/input/P.marinus/ref.fasta -o ~/quast-1.3/PMARINUS/ /tmp/data/output/spades_output/PMARINUS/contigs.fasta
-+python3 ~/quast-1.3/quast.py -R data/input/P.marinus/ref.fasta -o ~/quast-1.3/PMARINUS/ /tmp/data/output/spades_output/PMARINUS/contigs.fasta
- 
--python src/test/teamcity/assess.py ~/quast-1.3/PMARINUS/transposed_report.tsv 292000 0 1612 95.3 3.4 1.5
-+python3 src/test/teamcity/assess.py ~/quast-1.3/PMARINUS/transposed_report.tsv 292000 0 1612 95.3 3.4 1.5
- exitlvl=$?
- popd
- 
---- spades.orig/assembler/src/test/teamcity/deprecated/spades_sc_saureus_lane7.sh
-+++ spades/assembler/src/test/teamcity/deprecated/spades_sc_saureus_lane7.sh
-@@ -17,9 +17,9 @@
- 
- rm -rf ~/quast-1.3/SAUREUS_LANE_7/
- 
--python ~/quast-1.3/quast.py -R data/input/S.aureus/USA300_FPR3757.fasta -G data/input/S.aureus/genes/bacteria_genes.txt -o ~/quast-1.3/SAUREUS_LANE_7/ /tmp/data/output/spades_output/SAUREUS_LANE_7/contigs.fasta
-+python3 ~/quast-1.3/quast.py -R data/input/S.aureus/USA300_FPR3757.fasta -G data/input/S.aureus/genes/bacteria_genes.txt -o ~/quast-1.3/SAUREUS_LANE_7/ /tmp/data/output/spades_output/SAUREUS_LANE_7/contigs.fasta
- 
--python src/test/teamcity/assess.py ~/quast-1.3/SAUREUS_LANE_7/transposed_report.tsv 85000 7 2500 99.8 6 6
-+python3 src/test/teamcity/assess.py ~/quast-1.3/SAUREUS_LANE_7/transposed_report.tsv 85000 7 2500 99.8 6 6
- exitlvl=$?
- popd
- 
---- spades.orig/assembler/src/test/teamcity/force_update_symlinks.py
-+++ spades/assembler/src/test/teamcity/force_update_symlinks.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/test/teamcity/teamcity.py
-+++ spades/assembler/src/test/teamcity/teamcity.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2017 Saint Petersburg State University
-@@ -27,7 +27,7 @@
- ### main ###
- try:
-     if len(sys.argv) == 1:
--        command = 'python {} -h'.format(sys.argv[0])
-+        command = 'python3 {} -h'.format(sys.argv[0])
-         subprocess.call(command, shell=True)
-         sys.exit(1)
- 
---- spades.orig/assembler/src/test/teamcity/teamcity_kmertools/teamcity_gbuilder.py
-+++ spades/assembler/src/test/teamcity/teamcity_kmertools/teamcity_gbuilder.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2019 Saint Petersburg State University
-@@ -156,7 +156,7 @@
- ### main ###
- try:
-     if len(sys.argv) == 1:
--        command = 'python {} -h'.format(sys.argv[0])
-+        command = 'python3 {} -h'.format(sys.argv[0])
-         subprocess.call(command, shell=True)
-         sys.exit(1)
- 
---- spades.orig/assembler/src/test/teamcity/teamcity_kmertools/teamcity_kmercount.py
-+++ spades/assembler/src/test/teamcity/teamcity_kmertools/teamcity_kmercount.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2019 Saint Petersburg State University
-@@ -157,7 +157,7 @@
- ### main ###
- try:
-     if len(sys.argv) == 1:
--        command = 'python {} -h'.format(sys.argv[0])
-+        command = 'python3 {} -h'.format(sys.argv[0])
-         subprocess.call(command, shell=True)
-         sys.exit(1)
- 
---- spades.orig/assembler/src/test/teamcity/teamcity_kmertools/teamcity_kmerestimating.py
-+++ spades/assembler/src/test/teamcity/teamcity_kmertools/teamcity_kmerestimating.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2019 Saint Petersburg State University
-@@ -163,7 +163,7 @@
- ### main ###
- try:
-     if len(sys.argv) == 1:
--        command = 'python {} -h'.format(sys.argv[0])
-+        command = 'python3 {} -h'.format(sys.argv[0])
-         subprocess.call(command, shell=True)
-         sys.exit(1)
- 
---- spades.orig/assembler/src/test/teamcity/teamcity_support.py
-+++ spades/assembler/src/test/teamcity/teamcity_support.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2020 Saint Petersburg State University
---- spades.orig/assembler/src/test/teamcity/teamcity_truspades_test.py
-+++ spades/assembler/src/test/teamcity/teamcity_truspades_test.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/test/teamcity/update_threshold.py
-+++ spades/assembler/src/test/teamcity/update_threshold.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015-2020 Saint Petersburg State University
-@@ -262,7 +262,7 @@
- ### main ###
- try:
-     if len(sys.argv) == 1:
--        command = 'python {} -h'.format(sys.argv[0])
-+        command = 'python3 {} -h'.format(sys.argv[0])
-         subprocess.call(command, shell=True)
-         sys.exit(1)
- 
---- spades.orig/assembler/src/tools/IlluminaTech/tru_quast.py
-+++ spades/assembler/src/tools/IlluminaTech/tru_quast.py
-@@ -93,6 +93,6 @@
- 
- if __name__ == "__main__":
-     if len(sys.argv) != 5:
--        sys.stderr.write("Usage: python src/tools/IlluminaTech/tru_quast.py <input_dir> <references_dir> <output_dir> <threads>\n")
-+        sys.stderr.write("Usage: python3 src/tools/IlluminaTech/tru_quast.py <input_dir> <references_dir> <output_dir> <threads>\n")
-     else:
-         RunTruQuast(sys.argv[1], sys.argv[2], sys.argv[3], int(sys.argv[4]))
---- spades.orig/assembler/src/tools/blast-fasta/blast_fasta.py
-+++ spades/assembler/src/tools/blast-fasta/blast_fasta.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/clean_contaminations/16SrRNA/parse_tax_from_bowtie.py
-+++ spades/assembler/src/tools/clean_contaminations/16SrRNA/parse_tax_from_bowtie.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/clean_contaminations/16SrRNA/preprocessing.py
-+++ spades/assembler/src/tools/clean_contaminations/16SrRNA/preprocessing.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/clean_contaminations/16SrRNA/preprocessing.sh
-+++ spades/assembler/src/tools/clean_contaminations/16SrRNA/preprocessing.sh
-@@ -23,8 +23,8 @@
- echo Temporary file: $tempfile
- echo Index prefix: $indxfile
- 
--python preprocessing.py < $1 > $tempfile
-+python3 preprocessing.py < $1 > $tempfile
- 
- bowtie-build $tempfile $indxfile
- 
--rm $tempfile
-\ No newline at end of file
-+rm $tempfile
---- spades.orig/assembler/src/tools/clean_contaminations/16SrRNA/taxonomy.sh
-+++ spades/assembler/src/tools/clean_contaminations/16SrRNA/taxonomy.sh
-@@ -24,4 +24,4 @@
- 
- echo Analyzing taxonomy for $1 ...
- 
--bowtie --threads $threads -k 10 --best --chunkmbs 1024 SSURef_108_NR_tax_silva_v2.fasta $1 | python parse_tax_from_bowtie.py
-+bowtie --threads $threads -k 10 --best --chunkmbs 1024 SSURef_108_NR_tax_silva_v2.fasta $1 | python3 parse_tax_from_bowtie.py
---- spades.orig/assembler/src/tools/clean_contaminations/build_index_for_multifasta.py
-+++ spades/assembler/src/tools/clean_contaminations/build_index_for_multifasta.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/clean_contaminations/clean_contam_by_index_id.sh
-+++ spades/assembler/src/tools/clean_contaminations/clean_contam_by_index_id.sh
-@@ -111,7 +111,7 @@
-         bowtie -c -q -p 16 --suppress 6,7,8 $i $cleanedleft > "${output_folder}/paired_log1_${timestamp}.tmp" 2> /dev/null
-         bowtie -c -q -p 16 --suppress 6,7,8 $i $cleanedright > "${output_folder}/paired_log2_${timestamp}.tmp" 2> /dev/null
-         echo "running filter_reads.py"
--        python ${path_to_script}/../reads_utils/filter/filter_reads.py $cleanedleft $cleanedright "${output_folder}/paired_log1_${timestamp}.tmp" "${output_folder}/paired_log2_${timestamp}.tmp"
-+        python3 ${path_to_script}/../reads_utils/filter/filter_reads.py $cleanedleft $cleanedright "${output_folder}/paired_log1_${timestamp}.tmp" "${output_folder}/paired_log2_${timestamp}.tmp"
-         mv $filteredleft $cleanedleft
-         mv $filteredright $cleanedright
-     done
-@@ -199,7 +199,7 @@
- 	then
- 		echo "building index for sequence $i"
- 		mkdir -p "${path_to_db}/index/${i:0:2}"
--		python ${path_to_script}/read_fasta_using_index.py $i "${blast_database}.fasta" > "${i}.fasta.tmp"
-+		python3 ${path_to_script}/read_fasta_using_index.py $i "${blast_database}.fasta" > "${i}.fasta.tmp"
- 		bowtie-build "${i}.fasta.tmp" "${path_to_db}/index/${i:0:2}/${i}"
- 		rm "${i}.fasta.tmp"
- 	fi
-@@ -220,7 +220,7 @@
-     else
-       ln -s $all_reads "${output_folder}/${filename}"
-     fi
--    python ${path_to_script}/../reads_utils/conversion/split_any_fastq.py "${output_folder}/${filename}"
-+    python3 ${path_to_script}/../reads_utils/conversion/split_any_fastq.py "${output_folder}/${filename}"
-     filename=${filename%.*}
-     left="${output_folder}/${filename}_left.${extension}"
-     right="${output_folder}/${filename}_right.${extension}"
---- spades.orig/assembler/src/tools/clean_contaminations/process_blast_output.py
-+++ spades/assembler/src/tools/clean_contaminations/process_blast_output.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/clean_contaminations/read_fasta_using_index.py
-+++ spades/assembler/src/tools/clean_contaminations/read_fasta_using_index.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/cleancontigs/cleancontigs.py
-+++ spades/assembler/src/tools/cleancontigs/cleancontigs.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/cleancontigs/sort_contigs.py
-+++ spades/assembler/src/tools/cleancontigs/sort_contigs.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/contig_analysis/analyze_sinks.py
-+++ spades/assembler/src/tools/contig_analysis/analyze_sinks.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/contig_analysis/break_scaffolds_into_contigs.py
-+++ spades/assembler/src/tools/contig_analysis/break_scaffolds_into_contigs.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/contig_analysis/compare_fasta.py
-+++ spades/assembler/src/tools/contig_analysis/compare_fasta.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/contig_analysis/compare_gaps.py
-+++ spades/assembler/src/tools/contig_analysis/compare_gaps.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/contig_analysis/compare_gaps_pos.py
-+++ spades/assembler/src/tools/contig_analysis/compare_gaps_pos.py
-@@ -1,5 +1,4 @@
--
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/contig_analysis/compare_runs.sh
-+++ spades/assembler/src/tools/contig_analysis/compare_runs.sh
-@@ -11,5 +11,5 @@
- for file in $(ls $1/saves/*.sqn)
- do
- 	echo $(basename $file)
--	python compare_fasta.py $1/saves/$(basename $file)  $2/saves/$(basename $file)
-+	python3 compare_fasta.py $1/saves/$(basename $file)  $2/saves/$(basename $file)
- done
---- spades.orig/assembler/src/tools/contig_analysis/compare_used_snps.py
-+++ spades/assembler/src/tools/contig_analysis/compare_used_snps.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/contig_analysis/contigs_concatenator.py
-+++ spades/assembler/src/tools/contig_analysis/contigs_concatenator.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/contig_analysis/gap_finder.py
-+++ spades/assembler/src/tools/contig_analysis/gap_finder.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/contig_analysis/get_misassembled_contigs.py
-+++ spades/assembler/src/tools/contig_analysis/get_misassembled_contigs.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/contig_analysis/real_misassembly_counter.py
-+++ spades/assembler/src/tools/contig_analysis/real_misassembly_counter.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/contig_analysis/texify_results.py
-+++ spades/assembler/src/tools/contig_analysis/texify_results.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/contig_analysis/visualizer/arcs.py
-+++ spades/assembler/src/tools/contig_analysis/visualizer/arcs.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/contig_analysis/visualizer/main.py
-+++ spades/assembler/src/tools/contig_analysis/visualizer/main.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/contig_analysis/visualizer/mis_parser.py
-+++ spades/assembler/src/tools/contig_analysis/visualizer/mis_parser.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/contig_analysis/visualizer/misassemblies.py
-+++ spades/assembler/src/tools/contig_analysis/visualizer/misassemblies.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/contig_analysis/visualizer/misassemblies_old.py
-+++ spades/assembler/src/tools/contig_analysis/visualizer/misassemblies_old.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/contig_analysis/visualizer/miss_nocov.py
-+++ spades/assembler/src/tools/contig_analysis/visualizer/miss_nocov.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/contig_analysis/visualizer/parser.py
-+++ spades/assembler/src/tools/contig_analysis/visualizer/parser.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/contig_analysis/visualizer/run_parser.sh
-+++ spades/assembler/src/tools/contig_analysis/visualizer/run_parser.sh
-@@ -10,5 +10,5 @@
- 
- for file in $(ls *.stdout)
- do
--	python parser.py $file >> list.txt
-+	python3 parser.py $file >> list.txt
- done
---- spades.orig/assembler/src/tools/contig_analysis/visualizer/run_viz.sh
-+++ spades/assembler/src/tools/contig_analysis/visualizer/run_viz.sh
-@@ -13,9 +13,9 @@
- 
- for file in $(ls *.stdout)
- do
--	python parser.py $file >> list.txt
-+	python3 parser.py $file >> list.txt
- done
- 
--python misassemblies.py -o plot -a list.txt --arcs
-+python3 misassemblies.py -o plot -a list.txt --arcs
- 
- rm list.txt
---- spades.orig/assembler/src/tools/correctionEvaluator/bowtieOutputTranslator.py
-+++ spades/assembler/src/tools/correctionEvaluator/bowtieOutputTranslator.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -OO
-+#!/usr/bin/python3 -OO
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
-@@ -100,4 +100,4 @@
- bowtieTranslator = BowtieOutputTranslator(args.bowtieOutputFile, args.alignedReadsFile)
- bowtieTranslator.translate(args.useRegExp, args.useRam)
- print("Translation finished. Took: %s." % (time.clock() - startTime))
--print("Done.")
-\ No newline at end of file
-+print("Done.")
---- spades.orig/assembler/src/tools/correctionEvaluator/comparator.py
-+++ spades/assembler/src/tools/correctionEvaluator/comparator.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
-@@ -352,4 +352,4 @@
- print("Beginning comparison...")
- comparator = Comparator(args.originalReadsFile, args.alignedReadsFile, args.correctedReadsFile, args.failedToAlignReadsFile, args.reportDir, args.reportTotals, args.noSmartGraphics)
- comparator.compare()
--print("Comparison finished. Took: %s." % (time.clock() - t0))
-\ No newline at end of file
-+print("Comparison finished. Took: %s." % (time.clock() - t0))
---- spades.orig/assembler/src/tools/coverage_based_rr/coverage.py
-+++ spades/assembler/src/tools/coverage_based_rr/coverage.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/dataset.py
-+++ spades/assembler/src/tools/dataset.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/dataset_check
-+++ spades/assembler/src/tools/dataset_check
-@@ -3,4 +3,4 @@
- DIR="$( cd "$( dirname "$0" )" && pwd )"
- BASE="$( cd "$( dirname "$0" )" && cd ../.. && pwd )"
- pushd $BASE/data/input > /dev/null
--python $BASE/src/tools/dataset.py check $BASE/configs/debruijn/datasets.info
-+python3 $BASE/src/tools/dataset.py check $BASE/configs/debruijn/datasets.info
---- spades.orig/assembler/src/tools/dataset_hammer
-+++ spades/assembler/src/tools/dataset_hammer
-@@ -3,7 +3,7 @@
- DIR="$( cd "$( dirname "$0" )" && pwd )"
- BASE="$( cd "$( dirname "$0" )" && cd ../.. && pwd )"
- #pushd $BASE/data/input > /dev/null
--python $BASE/src/tools/dataset.py hammer $1
-+python3 $BASE/src/tools/dataset.py hammer $1
- #src/tools/dataset_hammer /mnt/ace/acestorage/snikolenko/090408_ultrashort/09
- #src/tools/dataset_hammer /mnt/ace/acestorage/data/input/x5/makarich.fbb.msu.ru/run1_fca/Quaked/
- #src/tools/dataset_hammer ~/temp/02
---- spades.orig/assembler/src/tools/dataset_md5
-+++ spades/assembler/src/tools/dataset_md5
-@@ -3,4 +3,4 @@
- DIR="$( cd "$( dirname "$0" )" && pwd )"
- BASE="$( cd "$( dirname "$0" )" && cd ../.. && pwd )"
- pushd $BASE/data/input > /dev/null
--python $BASE/src/tools/dataset.py md5 $BASE/configs/debruijn/datasets.info $1
-+python3 $BASE/src/tools/dataset.py md5 $BASE/configs/debruijn/datasets.info $1
---- spades.orig/assembler/src/tools/dataset_tar
-+++ spades/assembler/src/tools/dataset_tar
-@@ -3,4 +3,4 @@
- DIR="$( cd "$( dirname "$0" )" && pwd )"
- BASE="$( cd "$( dirname "$0" )" && cd ../.. && pwd )"
- pushd $BASE/data/input > /dev/null
--python $BASE/src/tools/dataset.py tar $BASE/configs/debruijn/datasets.info $1
-+python3 $BASE/src/tools/dataset.py tar $BASE/configs/debruijn/datasets.info $1
---- spades.orig/assembler/src/tools/estimation/run_real.sh
-+++ spades/assembler/src/tools/estimation/run_real.sh
-@@ -1,3 +1,4 @@
-+#!/bin/sh
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
- # Copyright (c) 2011-2014 Saint Petersburg Academic University
-@@ -5,4 +6,4 @@
- # See file LICENSE for details.
- ############################################################################
- 
--python real_cumulative.py ~/algorithmic-biology/assembler/data/debruijn/latest/contigs_before_enlarge.fasta 0.5 ~/algorithmic-biology/assembler/data/debruijn/latest/contigs_final.fasta 0.5 ../quality/velvet_paired55.fa 1 ../quality/velvet_unpaired55.fa 
-+python3 real_cumulative.py ~/algorithmic-biology/assembler/data/debruijn/latest/contigs_before_enlarge.fasta 0.5 ~/algorithmic-biology/assembler/data/debruijn/latest/contigs_final.fasta 0.5 ../quality/velvet_paired55.fa 1 ../quality/velvet_unpaired55.fa
---- spades.orig/assembler/src/tools/estimation_deprecated/Nx_plot.py
-+++ spades/assembler/src/tools/estimation_deprecated/Nx_plot.py
-@@ -1,3 +1,4 @@
-+#!/usr/bin/python3
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
- # Copyright (c) 2011-2014 Saint Petersburg Academic University
-@@ -18,9 +19,9 @@
- if len(sys.argv) < 2:
- 	print "Draws Nx plot (from N00 through N50 to N100)"
- 	print
--	print "Usage: python", sys.argv[0], "FASTA1 [FASTA2 [FASTA3 ..."
-+	print "Usage: python3", sys.argv[0], "FASTA1 [FASTA2 [FASTA3 ..."
- 	print
--	print "Example: python", sys.argv[0], "../../data/debruijn/we_contigs.fasta ../../data/debruijn/velvet_contigs.fa"
-+	print "Example: python3", sys.argv[0], "../../data/debruijn/we_contigs.fasta ../../data/debruijn/velvet_contigs.fa"
- 	exit(0)
- 
- for filename in sys.argv[1:]:
---- spades.orig/assembler/src/tools/estimation_deprecated/README
-+++ spades/assembler/src/tools/estimation_deprecated/README
-@@ -1,3 +1,3 @@
- Prerequisites:
- 
--  sudo apt-get install python python-matplotlib python-numpy
-+  sudo apt-get install python3 python3-matplotlib python3-numpy
---- spades.orig/assembler/src/tools/fastafix/fastafix.py
-+++ spades/assembler/src/tools/fastafix/fastafix.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/loc_pic.py
-+++ spades/assembler/src/tools/loc_pic.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/mapreads/mapreads.py
-+++ spades/assembler/src/tools/mapreads/mapreads.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/misc/assembler_runner/runner.py
-+++ spades/assembler/src/tools/misc/assembler_runner/runner.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/misc/copyrighter.py
-+++ spades/assembler/src/tools/misc/copyrighter.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/misc/datasets_converter.py
-+++ spades/assembler/src/tools/misc/datasets_converter.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/misc/datasets_info2yaml_converter.py
-+++ spades/assembler/src/tools/misc/datasets_info2yaml_converter.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/misc/datasets_info_cleaner.py
-+++ spades/assembler/src/tools/misc/datasets_info_cleaner.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/misc/gcc_version_check.py
-+++ spades/assembler/src/tools/misc/gcc_version_check.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/misc/sam_analysis_sorter.py
-+++ spades/assembler/src/tools/misc/sam_analysis_sorter.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/misc/sam_analyzer.py
-+++ spades/assembler/src/tools/misc/sam_analyzer.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/misc/sam_analyzer_2.py
-+++ spades/assembler/src/tools/misc/sam_analyzer_2.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/misc/sv_simulator.py
-+++ spades/assembler/src/tools/misc/sv_simulator.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/misc/txt2gff.py
-+++ spades/assembler/src/tools/misc/txt2gff.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/conversion/broken_fastq_filter.py
-+++ spades/assembler/src/tools/reads_utils/conversion/broken_fastq_filter.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/conversion/fasta_merge_repeated_nucleotides.py
-+++ spades/assembler/src/tools/reads_utils/conversion/fasta_merge_repeated_nucleotides.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/conversion/fasta_to_fastq.py
-+++ spades/assembler/src/tools/reads_utils/conversion/fasta_to_fastq.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/conversion/fastq_crop_read_length.py
-+++ spades/assembler/src/tools/reads_utils/conversion/fastq_crop_read_length.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/conversion/fastq_merge_repeated_nucleotides.py
-+++ spades/assembler/src/tools/reads_utils/conversion/fastq_merge_repeated_nucleotides.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/conversion/join.py
-+++ spades/assembler/src/tools/reads_utils/conversion/join.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/conversion/meraculus_to_fastq.py
-+++ spades/assembler/src/tools/reads_utils/conversion/meraculus_to_fastq.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/conversion/multiline_to_oneline_reads.py
-+++ spades/assembler/src/tools/reads_utils/conversion/multiline_to_oneline_reads.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/conversion/rf_to_fr.py
-+++ spades/assembler/src/tools/reads_utils/conversion/rf_to_fr.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/conversion/single_fastq_to_paired.py
-+++ spades/assembler/src/tools/reads_utils/conversion/single_fastq_to_paired.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/conversion/split_2_fasts_any_format.py
-+++ spades/assembler/src/tools/reads_utils/conversion/split_2_fasts_any_format.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/conversion/split_any_fasta_or_fastq.py
-+++ spades/assembler/src/tools/reads_utils/conversion/split_any_fasta_or_fastq.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/conversion/split_fastq.py
-+++ spades/assembler/src/tools/reads_utils/conversion/split_fastq.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/conversion/to_meraculus.py
-+++ spades/assembler/src/tools/reads_utils/conversion/to_meraculus.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/conversion/trim_ns.py
-+++ spades/assembler/src/tools/reads_utils/conversion/trim_ns.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/crop/crop_bfaecium.py
-+++ spades/assembler/src/tools/reads_utils/crop/crop_bfaecium.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/crop/crop_genome.py
-+++ spades/assembler/src/tools/reads_utils/crop/crop_genome.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/crop/crop_reads.py
-+++ spades/assembler/src/tools/reads_utils/crop/crop_reads.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/crop/paired_crop.py
-+++ spades/assembler/src/tools/reads_utils/crop/paired_crop.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/crop/single_crop.py
-+++ spades/assembler/src/tools/reads_utils/crop/single_crop.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/filter/filter_contigs.py
-+++ spades/assembler/src/tools/reads_utils/filter/filter_contigs.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/filter/filter_reads.py
-+++ spades/assembler/src/tools/reads_utils/filter/filter_reads.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/filter/filter_reads_by_fastq.py
-+++ spades/assembler/src/tools/reads_utils/filter/filter_reads_by_fastq.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/filter/filter_reads_by_paired.py
-+++ spades/assembler/src/tools/reads_utils/filter/filter_reads_by_paired.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/filter/filter_single_reads.py
-+++ spades/assembler/src/tools/reads_utils/filter/filter_single_reads.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/ideal_by_fasta.py
-+++ spades/assembler/src/tools/reads_utils/ideal_by_fasta.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/ideal_sim.py
-+++ spades/assembler/src/tools/reads_utils/ideal_sim.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/identical_contigs_stats.py
-+++ spades/assembler/src/tools/reads_utils/identical_contigs_stats.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/meta/mixin_contamination.py
-+++ spades/assembler/src/tools/reads_utils/meta/mixin_contamination.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/paired_reads_quality.py
-+++ spades/assembler/src/tools/reads_utils/paired_reads_quality.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/read_stat.py
-+++ spades/assembler/src/tools/reads_utils/read_stat.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/reads_quality.py
-+++ spades/assembler/src/tools/reads_utils/reads_quality.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/simulate_ideal_by_dataset.py
-+++ spades/assembler/src/tools/reads_utils/simulate_ideal_by_dataset.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/simulate_ideal_by_fasta.py
-+++ spades/assembler/src/tools/reads_utils/simulate_ideal_by_fasta.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/stat/coverage_hist.py
-+++ spades/assembler/src/tools/reads_utils/stat/coverage_hist.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/stat/gc.py
-+++ spades/assembler/src/tools/reads_utils/stat/gc.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/stat/is.py
-+++ spades/assembler/src/tools/reads_utils/stat/is.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/stat/is_from_single_log.py
-+++ spades/assembler/src/tools/reads_utils/stat/is_from_single_log.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/stat/is_genome.py
-+++ spades/assembler/src/tools/reads_utils/stat/is_genome.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/stat/mean_is.py
-+++ spades/assembler/src/tools/reads_utils/stat/mean_is.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/stat/overlaps.py
-+++ spades/assembler/src/tools/reads_utils/stat/overlaps.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/stat/raw.py
-+++ spades/assembler/src/tools/reads_utils/stat/raw.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/stat/raw_single.py
-+++ spades/assembler/src/tools/reads_utils/stat/raw_single.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/stat/raw_w_gc.py
-+++ spades/assembler/src/tools/reads_utils/stat/raw_w_gc.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/stat/raws_w_orientation.py
-+++ spades/assembler/src/tools/reads_utils/stat/raws_w_orientation.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/stat/reads_length.py
-+++ spades/assembler/src/tools/reads_utils/stat/reads_length.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/stat/rf_to_fr.py
-+++ spades/assembler/src/tools/reads_utils/stat/rf_to_fr.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/stat/shift.py
-+++ spades/assembler/src/tools/reads_utils/stat/shift.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/stat/single_log_to_paired.py
-+++ spades/assembler/src/tools/reads_utils/stat/single_log_to_paired.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/reads_utils/stat/trim.py
-+++ spades/assembler/src/tools/reads_utils/stat/trim.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -O
-+#!/usr/bin/python3 -O
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/res_counter/mem_checker.py
-+++ spades/assembler/src/tools/res_counter/mem_checker.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/res_counter/run.pl
-+++ spades/assembler/src/tools/res_counter/run.pl
-@@ -14,7 +14,7 @@
- 
- my $stat_proc = fork;
- if ($stat_proc == 0) {
--  exec "python $script_dir/stats_counter.py $child 1>>rc_stats.txt 2>>rc_stats.txt";
-+  exec "python3 $script_dir/stats_counter.py $child 1>>rc_stats.txt 2>>rc_stats.txt";
- }
- 
- waitpid($child, 0);
---- spades.orig/assembler/src/tools/res_counter/stats_counter.py
-+++ spades/assembler/src/tools/res_counter/stats_counter.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/sequenceDistanceMeter/main.py
-+++ spades/assembler/src/tools/sequenceDistanceMeter/main.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python -OO
-+#!/usr/bin/python3 -OO
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
- # Copyright (c) 2011-2014 Saint Petersburg Academic University
---- spades.orig/assembler/src/tools/spades_download_stats/filter.py
-+++ spades/assembler/src/tools/spades_download_stats/filter.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- #***************************************************************************
- ##* Copyright (c) 2011-2014 Saint-Petersburg Academic University
---- spades.orig/assembler/src/tools/spades_pipeline/spades_download_binary.py
-+++ spades/assembler/src/tools/spades_pipeline/spades_download_binary.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/truseq/quast_all.py
-+++ spades/assembler/src/tools/truseq/quast_all.py
-@@ -1,4 +1,4 @@
--#! /usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
---- spades.orig/assembler/src/tools/truseq/quast_all.sh
-+++ spades/assembler/src/tools/truseq/quast_all.sh
-@@ -14,7 +14,7 @@
- mkdir $3/all_reports
- ls $1 | xargs -P $4 -I {} -t quast --min-contig 1000 --contig-thresholds 5000,8000,12000 -e -R $2/{}.fasta $1/{}/scaffolds.fasta -o $3/tmp/{}
- ls $1 | xargs -P $4 -I {} -t cp $3/tmp/{}/report.tsv $3/all_reports/{}.tsv
--python quast_all.py $3/all_reports $3
-+python3 quast_all.py $3/all_reports $3
- grep "( inversion )" $3/tmp/*/contigs_reports/contigs_report_*.stdout > $3/inversions.txt
- grep "( translocation )" $3/tmp/*/contigs_reports/contigs_report_*.stdout > $3/translocations.txt
- grep "( relocation," $3/tmp/*/contigs_reports/contigs_report_*.stdout > $3/relocations.txt
---- spades.orig/assembler/src/tools/ukonnen/ukonnen.py
-+++ spades/assembler/src/tools/ukonnen/ukonnen.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
-@@ -14,7 +14,7 @@
- 
- if len(sys.argv) < 5:
- 	print 'Prepare reads for Ukonnen\'s scaffolder'
--	print 'Usage: python', sys.argv[0], 'INFILE1 INFILE2 OUTFILE1 OUTFILE2'
-+	print 'Usage: python3', sys.argv[0], 'INFILE1 INFILE2 OUTFILE1 OUTFILE2'
- 	exit()
- 
- inf1 = open(sys.argv[1]);
---- spades.orig/assembler/truspades.py
-+++ spades/assembler/truspades.py
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/python3
- 
- ############################################################################
- # Copyright (c) 2015 Saint Petersburg State University
-@@ -53,9 +53,9 @@
- def command_line(barcode, output_dir, params, continue_launch):
- #    logfile = os.path.join(output_dir, "logs", barcode.id + ".out")
-     if continue_launch and os.path.exists(os.path.join(output_dir, barcode.id,  "params.txt")):
--        result = ["python " + os.path.join(spades_home, "spades.py"), "--truseq", "-o", os.path.join(output_dir, barcode.id), "--continue", params]
-+        result = ["python3 " + os.path.join(spades_home, "spades.py"), "--truseq", "-o", os.path.join(output_dir, barcode.id), "--continue", params]
-     else:
--       result = ["python " + os.path.join(spades_home, "spades.py"), "--truseq", "-t", "1", "-o", os.path.join(output_dir, barcode.id), reads_line(barcode.libs), params]
-+       result = ["python3 " + os.path.join(spades_home, "spades.py"), "--truseq", "-t", "1", "-o", os.path.join(output_dir, barcode.id), reads_line(barcode.libs), params]
- #    result = ["./truspades.py", "-o", os.path.join(output_dir, barcode.id), reads_line(barcode.libs), " ".join(params), "\n"]
-     return " ".join(result)
- 


=====================================
debian/patches/raw_regex_pattern.patch deleted
=====================================
@@ -1,108 +0,0 @@
-Description: passing regex patterns as raw strings to avoid SyntaxWarnings with
- Python 3
-Author: Pierre Gruet <pgt at debian.org>
-Bug-Debian: https://bugs.debian.org/1087093
-Forwarded: no
-Last-Update: 2024-12-14
-
---- a/assembler/ext/src/googletest/googletest/test/googletest-output-test.py
-+++ b/assembler/ext/src/googletest/googletest/test/googletest-output-test.py
-@@ -144,7 +144,7 @@
- 
-   if IS_WINDOWS:
-     # Removes the color information that is not present on Windows.
--    test_output = re.sub('\x1b\\[(0;3\d)?m', '', test_output)
-+    test_output = re.sub(r'\x1b\\[(0;3\d)?m', '', test_output)
-     # Changes failure message headers into the Windows format.
-     test_output = re.sub(r': Failure\n', r': error: ', test_output)
-     # Changes file(line_number) to file:line_number.
---- a/assembler/src/projects/mts/scripts/common.py
-+++ b/assembler/src/projects/mts/scripts/common.py
-@@ -77,7 +77,7 @@
-     return sample + "-" + res
- 
- id_re = re.compile("\\d+")
--split_format = re.compile("^([\w.-]+)_\(\d+_\d+\)$")
-+split_format = re.compile(r"^([\w.-]+)_\(\d+_\d+\)$")
- 
- def extract_id(name):
-     bin_id = None
-@@ -107,7 +107,7 @@
- 
- def contig_length(name):
-     # Length of contig split
--    split = re.search("\((\d+)_(\d+)\)", name)
-+    split = re.search(r"\((\d+)_(\d+)\)", name)
-     if split:
-         return int(split.group(2)) - int(split.group(1))
-     #Default format
---- a/assembler/src/projects/mts/scripts/converters.py
-+++ b/assembler/src/projects/mts/scripts/converters.py
-@@ -34,7 +34,7 @@
-                 self.header(params[1:])
-             self.format(params[0], params[1:])
- 
--extract_num = re.compile("\d+")
-+extract_num = re.compile(r"\d+")
- 
- class BinningParser:
-     def __init__(self, sep=",", filter=None):
---- a/assembler/src/projects/mts/scripts/filter_nucmer.py
-+++ b/assembler/src/projects/mts/scripts/filter_nucmer.py
-@@ -25,9 +25,9 @@
-     sys.exit(2)
- 
- with open(nucmer_output_fn, "r") as nucmer_output:
--    contig_data = re.compile("CONTIG: ([\w.-]+) \((\d+)bp\)")
--    align_data = re.compile("Best alignment score: ([\d.]+)")
--    split_format = re.compile("^([\w.-]+_)_(\d+_\d+)_$") #Replace brackets back
-+    contig_data = re.compile(r"CONTIG: ([\w.-]+) \((\d+)bp\)")
-+    align_data = re.compile(r"Best alignment score: ([\d.]+)")
-+    split_format = re.compile(r"^([\w.-]+_)_(\d+_\d+)_$") #Replace brackets back
-     while True:
-         line = nucmer_output.readline()
-         if not line or line.startswith("Analyzing coverage"):
---- a/assembler/src/projects/mts/scripts/run_tsne.py
-+++ b/assembler/src/projects/mts/scripts/run_tsne.py
-@@ -76,7 +76,7 @@
-     return points, names
- 
- import re
--extract_num = re.compile("\d+")
-+extract_num = re.compile(r"\d+")
- 
- def run_tsne(features_file, colors_file, output_prefix
-              , filter_sample=[]
---- a/assembler/src/projects/mts/test.py
-+++ b/assembler/src/projects/mts/test.py
-@@ -116,7 +116,7 @@
-     class mut:
-         res = 0
- 
--    re_num = re.compile("-?\d+(?:\.\d+)?")
-+    re_num = re.compile(r"-?\d+(?:\.\d+)?")
-     def read_cell(str):
-         maybe_num = re_num.search(str)
-         if not maybe_num:
---- a/assembler/src/spades_pipeline/support.py
-+++ b/assembler/src/spades_pipeline/support.py
-@@ -528,7 +528,7 @@
-         return text
- 
-     def natural_keys(text):
--        return [atoi(c) for c in re.split("(\d+)", text)]
-+        return [atoi(c) for c in re.split(r"(\d+)", text)]
- 
-     latest_dir = None
-     for dir_to_test in sorted(glob.glob(pattern), key=natural_keys, reverse=True):
---- a/assembler/src/tools/correctionEvaluator/bowtieOutputTranslator.py
-+++ b/assembler/src/tools/correctionEvaluator/bowtieOutputTranslator.py
-@@ -17,7 +17,7 @@
- 
- class BowtieOutputTranslator:
-     def __init__(self, bowtieOutputFile, alignedReadsFile):
--        self.numberRegularExpression = re.compile("\d+")
-+        self.numberRegularExpression = re.compile(r"\d+")
-         self.bowtieOutputFile = safeOpenFile(bowtieOutputFile, "r", "Error: no bowtie output file for translation found. Terminated.")
-         self.alignedReadsFile = safeOpenFile(alignedReadsFile, "w", "Error: file can not be created. Terminated.")
- 


=====================================
debian/patches/use-debian-packaged-samtools.patch deleted
=====================================
@@ -1,15 +0,0 @@
-Author: Andreas Tille <tille at debian.org>
-Last-Changed: Mon, 23 Feb 2015 21:24:39 +0100
-Forwarded: not-needed
-Description: SPAdes originally contained a code copy of samtools
- Rather use the Debian packaged version
- .
- Problem:  spades try to *link* against lsamtools which does not exist
-
---- a/assembler/ext/src/CMakeLists.txt
-+++ b/assembler/ext/src/CMakeLists.txt
-@@ -5,4 +5,3 @@ add_subdirectory(nlopt)
- add_subdirectory(yaml-cpp)
- add_subdirectory(ConsensusCore)
- add_subdirectory(bamtools)
--add_subdirectory(samtools)


=====================================
debian/patches/use-debian-packaged-yaml-cpp.patch deleted
=====================================
@@ -1,23 +0,0 @@
-Author: Andreas Tille <tille at debian.org>
-Last-Changed: Wed, 05 Feb 2014 15:12:36 +0100
-Forwarded: not-needed
-Description: Try to replace code copy of yaml-cpp
- FIXME: This does not work.  If you run
-    /usr/bin/spades.py --test
- this ends up in
- .
- ===== Assembling started.
- == Running assembler: K21
- Exception caught /home/andreas/debian-maintain/repack/spades/orig/SPAdes-3.5.0/spades_test/K21/configs/config.info(3): cannot open include file simplification.info
- == Error ==  system call for: "['/usr/bin/spades', '/home/andreas/debian-maintain/repack/spades/orig/SPAdes-3.5.0/spades_test/K21/configs/config.info']" finished abnormally, err code: 4
-
---- a/assembler/ext/src/CMakeLists.txt
-+++ b/assembler/ext/src/CMakeLists.txt
-@@ -2,7 +2,6 @@
- 
- add_subdirectory(jemalloc)
- add_subdirectory(nlopt)
--add_subdirectory(yaml-cpp)
- add_subdirectory(ConsensusCore)
- add_subdirectory(bamtools)
- add_subdirectory(samtools)


=====================================
debian/rules
=====================================
@@ -11,7 +11,7 @@ export DEB_BUILD_MAINT_OPTIONS = hardening=+all optimize=-lto
 export LC_ALL = C
 
 %:
-	dh $@ --sourcedirectory=assembler/src --buildsystem=cmake
+	dh $@ --sourcedirectory=src --buildsystem=cmake
 
 override_dh_clean:
 	dh_clean -X.orig
@@ -23,10 +23,10 @@ override_dh_auto_clean:
 	rm -rf $(mandir)
 
 override_dh_auto_configure:
-	dh_auto_configure -- -DBoost_NO_BOOST_CMAKE=TRUE -DCMAKE_POLICY_VERSION_MINIMUM=3.5
+	dh_auto_configure -- -DBoost_NO_BOOST_CMAKE=TRUE -DSPADES_BOOST_ROOT:PATH=/usr -DCMAKE_POLICY_VERSION_MINIMUM=3.5
 
 override_dh_auto_build:
-	dh_auto_build -- all debruijn_test include_test
+	dh_auto_build -- all debruijn_test include_test utils_test
 
 execute_after_dh_auto_install:
 	# Use Debian-packaged yaml module
@@ -43,13 +43,15 @@ execute_after_dh_auto_install:
 	rm -f debian/$(DEB_SOURCE)/usr/share/spades/README.md
 	rm -f debian/$(DEB_SOURCE)/usr/share/spades/LICENSE
 
+	# Drop development files from the bundled lexy headers/library
+	rm -rf debian/$(DEB_SOURCE)/usr/include/lexy debian/$(DEB_SOURCE)/usr/include/lexy_ext
+	rm -f debian/$(DEB_SOURCE)/usr/lib/*/liblexy_file.a
+	rm -rf debian/$(DEB_SOURCE)/usr/lib/*/cmake/lexy
+	find debian/$(DEB_SOURCE)/usr/include debian/$(DEB_SOURCE)/usr/lib -depth -type d -empty -delete 2>/dev/null || true
+
 override_dh_installman:
 	mkdir -p $(mandir)
 	asciidoctor -a docdate='' -b manpage $(debfolder)/man_src/*.adoc
 	cp $(debfolder)/man_src/*.? $(mandir)
 	dh_installman
 
-override_dh_installchangelogs:
-	LANG="C" LANGUAGE="en_US:en" LC_ALL=C.UTF-8 lynx -dump assembler/changelog.html > changelog
-	dh_installchangelogs changelog
-	rm changelog



View it on GitLab: https://salsa.debian.org/med-team/spades/-/commit/d05e3541599e1cf53bcaed923bec3bfe56fb78fc

-- 
View it on GitLab: https://salsa.debian.org/med-team/spades/-/commit/d05e3541599e1cf53bcaed923bec3bfe56fb78fc
You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-med-commit/attachments/20261021/2c633d28/attachment-0001.htm>


More information about the debian-med-commit mailing list