[med-svn] [Git][med-team/q2-demux][upstream] New upstream version 2022.2.0+dfsg

Andreas Tille (@tille) gitlab at salsa.debian.org
Tue Jul 19 16:33:07 BST 2022



Andreas Tille pushed to branch upstream at Debian Med / q2-demux


Commits:
8b9773ff by Andreas Tille at 2022-07-19T17:22:40+02:00
New upstream version 2022.2.0+dfsg
- - - - -


27 changed files:

- LICENSE
- ci/recipe/meta.yaml
- q2_demux/__init__.py
- q2_demux/_demux.py
- q2_demux/_ecc.py
- q2_demux/_filter.py
- q2_demux/_format.py
- q2_demux/_subsample.py
- q2_demux/_summarize/__init__.py
- q2_demux/_summarize/_visualizer.py
- q2_demux/_summarize/assets/src/box.js
- q2_demux/_summarize/assets/src/brush.js
- q2_demux/_summarize/assets/src/main.js
- q2_demux/_summarize/assets/src/plot.js
- q2_demux/_summarize/assets/webpack.config.js
- q2_demux/_transformer.py
- q2_demux/_type.py
- q2_demux/_version.py
- q2_demux/plugin_setup.py
- q2_demux/tests/__init__.py
- q2_demux/tests/test_demux.py
- q2_demux/tests/test_ecc.py
- q2_demux/tests/test_filter.py
- q2_demux/tests/test_format.py
- q2_demux/tests/test_subsample.py
- q2_demux/tests/test_transformer.py
- setup.py


Changes:

=====================================
LICENSE
=====================================
@@ -1,6 +1,6 @@
 BSD 3-Clause License
 
-Copyright (c) 2016-2021, QIIME 2 development team.
+Copyright (c) 2016-2022, QIIME 2 development team.
 All rights reserved.
 
 Redistribution and use in source and binary forms, with or without


=====================================
ci/recipe/meta.yaml
=====================================
@@ -11,10 +11,15 @@ build:
   script: make install
 
 requirements:
+  build:
+    # nodejs is only necessary in the build phase - our build script needs it
+    # in order to render out transpiled js assets for various visualizations.
+    # once rendered, node is no longer necessary. don't set this in host reqs.
+    - nodejs
+
   host:
     - python {{ python }}
     - setuptools
-    - nodejs
 
   run:
     - python {{ python }}


=====================================
q2_demux/__init__.py
=====================================
@@ -1,5 +1,5 @@
 # ----------------------------------------------------------------------------
-# Copyright (c) 2016-2021, QIIME 2 development team.
+# Copyright (c) 2016-2022, QIIME 2 development team.
 #
 # Distributed under the terms of the Modified BSD License.
 #


=====================================
q2_demux/_demux.py
=====================================
@@ -1,5 +1,5 @@
 # ----------------------------------------------------------------------------
-# Copyright (c) 2016-2021, QIIME 2 development team.
+# Copyright (c) 2016-2022, QIIME 2 development team.
 #
 # Distributed under the terms of the Modified BSD License.
 #
@@ -296,10 +296,10 @@ def emp_single(seqs: BarcodeSequenceFastqIterator,
     ec_details = ECDetails(ec_details_fmt)
 
     for i, (barcode_record, sequence_record) in enumerate(seqs, start=1):
-        barcode_read = barcode_record[1]
+        raw_barcode_read = barcode_record[1][:barcode_len]
         if rev_comp_barcodes:
-            barcode_read = str(skbio.DNA(barcode_read).reverse_complement())
-        raw_barcode_read = barcode_read[:barcode_len]
+            barcode_as_DNA = skbio.DNA(raw_barcode_read)
+            raw_barcode_read = str(barcode_as_DNA.reverse_complement())
 
         if golay_error_correction:
             # A three bit filter is implicitly used by the decoder. See Hamady
@@ -398,10 +398,10 @@ def emp_paired(seqs: BarcodePairedSequenceFastqIterator,
 
     for i, record in enumerate(seqs, start=1):
         barcode_record, forward_record, reverse_record = record
-        barcode_read = barcode_record[1]
+        raw_barcode_read = barcode_record[1][:barcode_len]
         if rev_comp_barcodes:
-            barcode_read = str(skbio.DNA(barcode_read).reverse_complement())
-        raw_barcode_read = barcode_read[:barcode_len]
+            barcode_as_DNA = skbio.DNA(raw_barcode_read)
+            raw_barcode_read = str(barcode_as_DNA.reverse_complement())
 
         if golay_error_correction:
             # A three bit filter is implicitly used by the decoder. See Hamady


=====================================
q2_demux/_ecc.py
=====================================
@@ -1,5 +1,5 @@
 # ----------------------------------------------------------------------------
-# Copyright (c) 2016-2021, QIIME 2 development team.
+# Copyright (c) 2016-2022, QIIME 2 development team.
 #
 # Distributed under the terms of the Modified BSD License.
 #


=====================================
q2_demux/_filter.py
=====================================
@@ -1,5 +1,5 @@
 # ----------------------------------------------------------------------------
-# Copyright (c) 2016-2021, QIIME 2 development team.
+# Copyright (c) 2016-2022, QIIME 2 development team.
 #
 # Distributed under the terms of the Modified BSD License.
 #


=====================================
q2_demux/_format.py
=====================================
@@ -1,5 +1,5 @@
 # ----------------------------------------------------------------------------
-# Copyright (c) 2016-2021, QIIME 2 development team.
+# Copyright (c) 2016-2022, QIIME 2 development team.
 #
 # Distributed under the terms of the Modified BSD License.
 #


=====================================
q2_demux/_subsample.py
=====================================
@@ -1,5 +1,5 @@
 # ----------------------------------------------------------------------------
-# Copyright (c) 2016-2021, QIIME 2 development team.
+# Copyright (c) 2016-2022, QIIME 2 development team.
 #
 # Distributed under the terms of the Modified BSD License.
 #


=====================================
q2_demux/_summarize/__init__.py
=====================================
@@ -1,5 +1,5 @@
 # ----------------------------------------------------------------------------
-# Copyright (c) 2016-2021, QIIME 2 development team.
+# Copyright (c) 2016-2022, QIIME 2 development team.
 #
 # Distributed under the terms of the Modified BSD License.
 #


=====================================
q2_demux/_summarize/_visualizer.py
=====================================
@@ -1,5 +1,5 @@
 # ----------------------------------------------------------------------------
-# Copyright (c) 2016-2021, QIIME 2 development team.
+# Copyright (c) 2016-2022, QIIME 2 development team.
 #
 # Distributed under the terms of the Modified BSD License.
 #


=====================================
q2_demux/_summarize/assets/src/box.js
=====================================
@@ -1,5 +1,5 @@
 // ----------------------------------------------------------------------------
-// Copyright (c) 2016-2021, QIIME 2 development team.
+// Copyright (c) 2016-2022, QIIME 2 development team.
 //
 // Distributed under the terms of the Modified BSD License.
 //


=====================================
q2_demux/_summarize/assets/src/brush.js
=====================================
@@ -1,5 +1,5 @@
 // ----------------------------------------------------------------------------
-// Copyright (c) 2016-2021, QIIME 2 development team.
+// Copyright (c) 2016-2022, QIIME 2 development team.
 //
 // Distributed under the terms of the Modified BSD License.
 //


=====================================
q2_demux/_summarize/assets/src/main.js
=====================================
@@ -1,5 +1,5 @@
 // ----------------------------------------------------------------------------
-// Copyright (c) 2016-2021, QIIME 2 development team.
+// Copyright (c) 2016-2022, QIIME 2 development team.
 //
 // Distributed under the terms of the Modified BSD License.
 //


=====================================
q2_demux/_summarize/assets/src/plot.js
=====================================
@@ -1,5 +1,5 @@
 // ----------------------------------------------------------------------------
-// Copyright (c) 2016-2021, QIIME 2 development team.
+// Copyright (c) 2016-2022, QIIME 2 development team.
 //
 // Distributed under the terms of the Modified BSD License.
 //


=====================================
q2_demux/_summarize/assets/webpack.config.js
=====================================
@@ -1,5 +1,5 @@
 // ----------------------------------------------------------------------------
-// Copyright (c) 2016-2021, QIIME 2 development team.
+// Copyright (c) 2016-2022, QIIME 2 development team.
 //
 // Distributed under the terms of the Modified BSD License.
 //


=====================================
q2_demux/_transformer.py
=====================================
@@ -1,5 +1,5 @@
 # ----------------------------------------------------------------------------
-# Copyright (c) 2016-2021, QIIME 2 development team.
+# Copyright (c) 2016-2022, QIIME 2 development team.
 #
 # Distributed under the terms of the Modified BSD License.
 #


=====================================
q2_demux/_type.py
=====================================
@@ -1,5 +1,5 @@
 # ----------------------------------------------------------------------------
-# Copyright (c) 2016-2021, QIIME 2 development team.
+# Copyright (c) 2016-2022, QIIME 2 development team.
 #
 # Distributed under the terms of the Modified BSD License.
 #


=====================================
q2_demux/_version.py
=====================================
@@ -23,9 +23,9 @@ def get_keywords():
     # setup.py/versioneer.py will grep for the variable names, so they must
     # each be defined on a line of their own. _version.py will just call
     # get_keywords().
-    git_refnames = " (tag: 2021.8.0)"
-    git_full = "698ef5d055238d7e40ddd73cdddfd574cf10b9a3"
-    git_date = "2021-09-09 18:35:30 +0000"
+    git_refnames = " (tag: 2022.2.0)"
+    git_full = "1ae11e79bdf2199c230c59d8425476f84e941c48"
+    git_date = "2022-02-18 19:08:10 +0000"
     keywords = {"refnames": git_refnames, "full": git_full, "date": git_date}
     return keywords
 


=====================================
q2_demux/plugin_setup.py
=====================================
@@ -1,5 +1,5 @@
 # ----------------------------------------------------------------------------
-# Copyright (c) 2016-2021, QIIME 2 development team.
+# Copyright (c) 2016-2022, QIIME 2 development team.
 #
 # Distributed under the terms of the Modified BSD License.
 #


=====================================
q2_demux/tests/__init__.py
=====================================
@@ -1,5 +1,5 @@
 # ----------------------------------------------------------------------------
-# Copyright (c) 2016-2021, QIIME 2 development team.
+# Copyright (c) 2016-2022, QIIME 2 development team.
 #
 # Distributed under the terms of the Modified BSD License.
 #


=====================================
q2_demux/tests/test_demux.py
=====================================
@@ -1,5 +1,5 @@
 # ----------------------------------------------------------------------------
-# Copyright (c) 2016-2021, QIIME 2 development team.
+# Copyright (c) 2016-2022, QIIME 2 development team.
 #
 # Distributed under the terms of the Modified BSD License.
 #
@@ -523,8 +523,27 @@ class EmpSingleTests(unittest.TestCase, EmpTestingUtils):
                     ('@s9/2 abc/2', 'CGGCG', '+', 'PPPP'),
                     ('@s10/2 abc/2', 'CGGCG', '+', 'PPPP'),
                     ('@s11/2 abc/2', 'GGAAG', '+', 'PPPP')]
+        self._barcode_trimming(barcodes, False)
+
+    def test_barcode_trimming_rev_comp_barcodes(self):
+        # NOTE: the 5th nucleotide in these barcodes should be trimmed off
+        barcodes = [('@s1/2 abc/2', 'TTTTG', '+', 'YYYY'),
+                    ('@s2/2 abc/2', 'TTAAG', '+', 'PPPP'),
+                    ('@s3/2 abc/2', 'GGTTG', '+', 'PPPP'),
+                    ('@s4/2 abc/2', 'TTAAG', '+', 'PPPP'),
+                    ('@s5/2 abc/2', 'GGTTG', '+', 'PPPP'),
+                    ('@s6/2 abc/2', 'TTTTN', '+', 'PPPP'),
+                    ('@s7/2 abc/2', 'GCCGG', '+', 'PPPP'),
+                    ('@s8/2 abc/2', 'TTCCG', '+', 'PPPP'),
+                    ('@s9/2 abc/2', 'GCCGG', '+', 'PPPP'),
+                    ('@s10/2 abc/2', 'GCCGG', '+', 'PPPP'),
+                    ('@s11/2 abc/2', 'TTCCG', '+', 'PPPP')]
+        self._barcode_trimming(barcodes, True)
+
+    def _barcode_trimming(self, barcodes, rev_comp_barcodes):
         bsi = BarcodeSequenceFastqIterator(barcodes, self.sequences)
         actual, ecc = emp_single(bsi, self.barcode_map,
+                                 rev_comp_barcodes=rev_comp_barcodes,
                                  golay_error_correction=False)
         output_fastq = list(actual.sequences.iter_views(FastqGzFormat))
         # five per-sample files were written
@@ -889,6 +908,26 @@ class EmpPairedTests(unittest.TestCase, EmpTestingUtils):
             barcodes, self.forward, self.reverse)
         self.check_valid(bpsi, self.barcode_map, golay_error_correction=False)
 
+    def test_barcode_trimming_rev_comp(self):
+        # these barcodes are longer then the ones in the mapping file.
+        # only the first barcode_length bases should be used when
+        # when reverse complementing
+        barcodes = [('@s1/2 abc/2', 'TTTTT', '+', 'YYYY'),
+                    ('@s2/2 abc/2', 'TTAAT', '+', 'PPPP'),
+                    ('@s3/2 abc/2', 'GGTTT', '+', 'PPPP'),
+                    ('@s4/2 abc/2', 'TTAAT', '+', 'PPPP'),
+                    ('@s5/2 abc/2', 'GGTTT', '+', 'PPPP'),
+                    ('@s6/2 abc/2', 'TTTTT', '+', 'PPPP'),
+                    ('@s7/2 abc/2', 'GCCGT', '+', 'PPPP'),
+                    ('@s8/2 abc/2', 'TTCCT', '+', 'PPPP'),
+                    ('@s9/2 abc/2', 'GCCGT', '+', 'PPPP'),
+                    ('@s10/2 abc/2', 'GCCGT', '+', 'PPPP'),
+                    ('@s11/2 abc/2', 'TTCCT', '+', 'PPPP')]
+        bpsi = BarcodePairedSequenceFastqIterator(
+            barcodes, self.forward, self.reverse)
+        self.check_valid(bpsi, self.barcode_map, golay_error_correction=False,
+                         rev_comp_barcodes=True)
+
 
 class SummarizeTests(TestPluginBase):
     package = 'q2_demux.tests'


=====================================
q2_demux/tests/test_ecc.py
=====================================
@@ -1,5 +1,5 @@
 # ----------------------------------------------------------------------------
-# Copyright (c) 2016-2021, QIIME 2 development team.
+# Copyright (c) 2016-2022, QIIME 2 development team.
 #
 # Distributed under the terms of the Modified BSD License.
 #


=====================================
q2_demux/tests/test_filter.py
=====================================
@@ -1,5 +1,5 @@
 # ----------------------------------------------------------------------------
-# Copyright (c) 2016-2021, QIIME 2 development team.
+# Copyright (c) 2016-2022, QIIME 2 development team.
 #
 # Distributed under the terms of the Modified BSD License.
 #


=====================================
q2_demux/tests/test_format.py
=====================================
@@ -1,5 +1,5 @@
 # ----------------------------------------------------------------------------
-# Copyright (c) 2016-2021, QIIME 2 development team.
+# Copyright (c) 2016-2022, QIIME 2 development team.
 #
 # Distributed under the terms of the Modified BSD License.
 #


=====================================
q2_demux/tests/test_subsample.py
=====================================
@@ -1,5 +1,5 @@
 # ----------------------------------------------------------------------------
-# Copyright (c) 2016-2021, QIIME 2 development team.
+# Copyright (c) 2016-2022, QIIME 2 development team.
 #
 # Distributed under the terms of the Modified BSD License.
 #


=====================================
q2_demux/tests/test_transformer.py
=====================================
@@ -1,5 +1,5 @@
 # ----------------------------------------------------------------------------
-# Copyright (c) 2016-2021, QIIME 2 development team.
+# Copyright (c) 2016-2022, QIIME 2 development team.
 #
 # Distributed under the terms of the Modified BSD License.
 #


=====================================
setup.py
=====================================
@@ -1,5 +1,5 @@
 # ----------------------------------------------------------------------------
-# Copyright (c) 2016-2021, QIIME 2 development team.
+# Copyright (c) 2016-2022, QIIME 2 development team.
 #
 # Distributed under the terms of the Modified BSD License.
 #



View it on GitLab: https://salsa.debian.org/med-team/q2-demux/-/commit/8b9773ff4a8327c1681852b6ffcda3c96abd0d80

-- 
View it on GitLab: https://salsa.debian.org/med-team/q2-demux/-/commit/8b9773ff4a8327c1681852b6ffcda3c96abd0d80
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/20220719/a1e3bdcf/attachment-0001.htm>


More information about the debian-med-commit mailing list