[med-svn] [Git][med-team/obitools][master] 8 commits: Install the shared library to the correct directory and remove the rpath.

Michael R. Crusoe (@crusoe) gitlab at salsa.debian.org
Thu Nov 21 15:45:25 GMT 2024



Michael R. Crusoe pushed to branch master at Debian Med / obitools


Commits:
f692e61f by Michael R. Crusoe at 2024-11-21T15:27:01+01:00
Install the shared library to the correct directory and remove the rpath.

Add a basic smoke autopkgtest

- - - - -
902434b7 by Michael R. Crusoe at 2024-11-21T15:27:01+01:00
Improve cross-building

- - - - -
751098dd by Michael R. Crusoe at 2024-11-21T15:27:01+01:00
Add another smoke test

- - - - -
cdc08c20 by Michael R. Crusoe at 2024-11-21T15:27:01+01:00
Add tutorial data and autopkgtest using it

- - - - -
11530e75 by Michael R. Crusoe at 2024-11-21T15:27:01+01:00
d/control: new upstream doesn't have any docs to build. Remove remaining sphinx parts.

- - - - -
3f8ec71c by Michael R. Crusoe at 2024-11-21T15:27:01+01:00
Added patch to fix running on Python3.12+

- - - - -
810fa0c1 by Michael R. Crusoe at 2024-11-21T16:36:36+01:00
fixup wolf tutorial

- - - - -
6a4d6a74 by Michael R. Crusoe at 2024-11-21T16:40:55+01:00
routine-update: Ready to upload to unstable

- - - - -


15 changed files:

- debian/changelog
- debian/control
- + debian/examples/wolf_tutorial/README.txt
- + debian/examples/wolf_tutorial/wolf_F.fastq
- + debian/examples/wolf_tutorial/wolf_R.fastq
- + debian/examples/wolf_tutorial/wolf_diet_ngsfilter.txt
- + debian/obitools.examples
- debian/obitools.install
- + debian/patches/no-rpath
- + debian/patches/python3.12
- debian/patches/series
- debian/rules
- + debian/tests/autopkgtests-pkg-python.conf
- + debian/tests/control
- + debian/tests/wolf-tutorial


Changes:

=====================================
debian/changelog
=====================================
@@ -1,3 +1,18 @@
+obitools (3.0.1~b26+dfsg-3) unstable; urgency=medium
+
+  * Team upload.
+  * Install the shared library to the correct directory and remove the
+    rpath.
+  * Add a basic smoke autopkgtest
+  * Improve cross-building
+  * Add another smoke test
+  * Add tutorial data and an autopkgtest using it.
+  * d/control: new upstream doesn't have any docs to build. Remove
+    remaining sphinx parts.
+  * Added patch to fix running on Python3.12+.
+
+ -- Michael R. Crusoe <crusoe at debian.org>  Thu, 21 Nov 2024 16:40:55 +0100
+
 obitools (3.0.1~b26+dfsg-2) unstable; urgency=medium
 
   * Team upload.


=====================================
debian/control
=====================================
@@ -5,25 +5,24 @@ Uploaders: Olivier Sallou <osallou at debian.org>,
 Section: science
 Priority: optional
 Build-Depends: debhelper-compat (= 13),
-               dh-python,
-               python3-dev,
-               python3-sphinx,
+               dh-sequence-python3,
+               python3-dev:native,
+               libpython3-dev,
+               python3-setuptools,
                cython3,
-               ipython3,
                cmake
 Standards-Version: 4.7.0
 Vcs-Browser: https://salsa.debian.org/med-team/obitools
 Vcs-Git: https://salsa.debian.org/med-team/obitools.git
 Homepage: https://metabarcoding.org/obitools3
 Rules-Requires-Root: no
+Testsuite: autopkgtest-pkg-python
 
 Package: obitools
 Architecture: any
 Depends: ${misc:Depends},
          ${python3:Depends},
-         ${shlibs:Depends},
-         ${sphinxdoc:Depends},
-         libjs-sphinxdoc
+         ${shlibs:Depends}
 Description: programs to analyze NGS data in a DNA metabarcoding context
  The OBITools programs aims to help you to manipulate various data and
  sequence files in a convenient way using the Unix command line interface.


=====================================
debian/examples/wolf_tutorial/README.txt
=====================================
@@ -0,0 +1,5 @@
+Original source: https://git.metabarcoding.org/obitools/obitools3/uploads/9b86f67ad05815ddee14526640d81137/wolf_tutorial.tar.gz
+
+Which was derived from https://pythonhosted.org/OBITools/wolves.html ( https://pythonhosted.org/OBITools/_downloads/wolf_tutorial.zip )
+
+Which is a subset from: https://doi.org/10.5061/dryad.443t4m1q


=====================================
debian/examples/wolf_tutorial/wolf_F.fastq
=====================================
The diff for this file was not included because it is too large.

=====================================
debian/examples/wolf_tutorial/wolf_R.fastq
=====================================
The diff for this file was not included because it is too large.

=====================================
debian/examples/wolf_tutorial/wolf_diet_ngsfilter.txt
=====================================
@@ -0,0 +1,4 @@
+wolf_diet    13a_F730603      aattaac  TTAGATACCCCACTATGC    TAGAACAGGCTCCTCTAG     F       @
+wolf_diet    15a_F730814      gaagtag  TTAGATACCCCACTATGC    TAGAACAGGCTCCTCTAG     F       @
+wolf_diet    26a_F040644      gaatatc  TTAGATACCCCACTATGC    TAGAACAGGCTCCTCTAG     F       @
+wolf_diet    29a_F260619      gcctcct  TTAGATACCCCACTATGC    TAGAACAGGCTCCTCTAG     F       @


=====================================
debian/obitools.examples
=====================================
@@ -0,0 +1 @@
+debian/examples/wolf_tutorial


=====================================
debian/obitools.install
=====================================
@@ -1,2 +1 @@
-#build/sphinx/html  usr/share/doc/obitools
-libcobitools3.so usr/lib/python3/dist-packages
+libcobitools3.so usr/lib/${DEB_HOST_MULTIARCH}


=====================================
debian/patches/no-rpath
=====================================
@@ -0,0 +1,20 @@
+--- obitools.orig/setup.py
++++ obitools/setup.py
+@@ -125,16 +125,12 @@
+ cython_ext  = [Extension('.'.join([os.path.dirname(x).replace("python/",""),
+                                    os.path.splitext(os.path.basename(x))[0]]).replace('/','.'),
+                          [x],
+-                         library_dirs=[get_python_lib()],
++                         library_dirs=[get_python_lib(), os.getcwd()],
+                          include_dirs=["src","src/libecoPCR","src/libjson"],
+                          libraries=["cobitools3"],
+-                         runtime_library_dirs=[get_python_lib()],
+                          extra_compile_args=['-w',
+                                           '-fPIC'
+                                          ],
+-                         extra_link_args=["-Wl,-rpath,"+get_python_lib(), 
+-                                          "-L"+os.getcwd()
+-                                         ]
+                         )
+                 for x in cython_src
+               ]              


=====================================
debian/patches/python3.12
=====================================
@@ -0,0 +1,16 @@
+From: Michael R. Crusoe <crusoe at debian.org>
+Description: Enable running on Python 3.12
+
+find_spec is from Python 3.4
+find_module was deprecated in Python 3.10 and removed in 3.12
+--- obitools.orig/python/obitools3/apps/command.pyx
++++ obitools/python/obitools3/apps/command.pyx
+@@ -25,7 +25,7 @@
+     @rtype: module 
+     '''
+     
+-    module = loader.find_module(name).load_module(name)
++    module = loader.find_spec(name).loader.load_module(name)
+     return module
+ 
+ def getCommandsList():


=====================================
debian/patches/series
=====================================
@@ -1,3 +1,5 @@
 cmake_debian_options
 no_cython_in_binary_package.patch
 any_arch
+no-rpath
+python3.12


=====================================
debian/rules
=====================================
@@ -8,12 +8,11 @@ include /usr/share/dpkg/default.mk
 # see FEATURE AREAS in dpkg-buildflags(1)
 export DEB_BUILD_MAINT_OPTIONS = hardening=+all
 
-
-export PYBUILD_NAME=obitools
+export PYBUILD_NAME=obitools3
 export PYBUILD_DISABLE=test
 
 %:
-	dh $@  --with python3 --buildsystem=pybuild
+	dh $@  --buildsystem=pybuild
 
 override_dh_auto_clean:
 	# skip it


=====================================
debian/tests/autopkgtests-pkg-python.conf
=====================================
@@ -0,0 +1 @@
+import_name = obitools3


=====================================
debian/tests/control
=====================================
@@ -0,0 +1,7 @@
+Test-Command: obi --help
+Depends: @
+Restrictions: superficial
+
+Tests: wolf-tutorial
+Depends: @, less
+Restrictions: allow-stderr


=====================================
debian/tests/wolf-tutorial
=====================================
@@ -0,0 +1,36 @@
+#!/bin/bash                                                                     
+# Adapted from https://git.metabarcoding.org/obitools/obitools3/-/wikis/Wolf-tutorial-with-the-OBITools3
+set -ex
+
+pkg=obitools
+
+export LC_ALL=C.UTF-8
+if [ "${AUTOPKGTEST_TMP}" = "" ] ; then
+  AUTOPKGTEST_TMP=$(mktemp -d /tmp/${pkg}-test.XXXXXX)
+  # shellcheck disable=SC2064
+  trap "rm -rf ${AUTOPKGTEST_TMP}" 0 INT QUIT ABRT PIPE TERM
+fi
+
+cp -a /usr/share/doc/${pkg}/examples/* "${AUTOPKGTEST_TMP}"
+
+cd "${AUTOPKGTEST_TMP}"
+
+obi import --quality-solexa wolf_tutorial/wolf_F.fastq wolf/reads1
+obi import --quality-solexa wolf_tutorial/wolf_R.fastq wolf/reads2
+obi import --ngsfilter-input wolf_tutorial/wolf_diet_ngsfilter.txt wolf/ngsfile
+obi ls wolf
+obi ls -l wolf
+obi ls wolf/reads1
+obi ls wolf/ngsfile/sample
+obi less wolf/reads1 > /dev/null
+obi alignpairedend -R wolf/reads2 wolf/reads1 wolf/aligned_reads
+obi alignpairedend -R wolf/reads2 wolf/reads1 - > aligned_reads.fastq
+obi stats -a score_norm wolf/aligned_reads
+obi grep -p "sequence['score_norm'] > 0.8" wolf/aligned_reads wolf/good_sequences
+obi ngsfilter -t wolf/ngsfile -u wolf/unidentified_sequences wolf/good_sequences wolf/identified_sequences
+obi uniq -m sample wolf/identified_sequences wolf/dereplicated_sequences
+obi annotate -k COUNT -k MERGED_sample wolf/dereplicated_sequences wolf/cleaned_metadata_sequences
+obi grep -p "len(sequence)>=80 and sequence['COUNT']>=10" wolf/cleaned_metadata_sequences wolf/denoised_sequences
+obi clean -s MERGED_sample -r 0.05 -H wolf/denoised_sequences wolf/cleaned_sequences
+
+tar cJf "${AUTOPKGTEST_ARTIFACTS:-.}/wolf.obidms.tar.xz" wolf.obidms



View it on GitLab: https://salsa.debian.org/med-team/obitools/-/compare/1eeed8e7693dccbf9e8a53d44e024ab974674652...6a4d6a742782074455460027e04bd1572a81ccad

-- 
View it on GitLab: https://salsa.debian.org/med-team/obitools/-/compare/1eeed8e7693dccbf9e8a53d44e024ab974674652...6a4d6a742782074455460027e04bd1572a81ccad
You're receiving this email because of your account on salsa.debian.org.


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


More information about the debian-med-commit mailing list