Repository 'kmc'
hg clone https://toolshed.g2.bx.psu.edu/repos/galaxy-australia/kmc

Changeset 1:c7fda6e88567 (2024-10-01)
Previous changeset 0:ca2743037241 (2022-09-27) Next changeset 2:c97f8a687258 (2024-10-02)
Commit message:
planemo upload for repository https://github.com/usegalaxy-au/tools-au/tree/master/tools/kmc commit 3be367228b531c346c10700f07d57ae44394be36-dirty
modified:
kmc.xml
kmc_tools_filter.xml
kmc_tools_simple.xml
kmc_tools_transform.xml
macros.xml
added:
test-data/Illumina.1.fastq.gz
test-data/Illumina.2.fastq.gz
test-data/kmer_27.kmc_pre
test-data/kmer_27.kmc_suf
test-data/statistic_27.json_bk
test-data/test.fasta.gz
removed:
test-data/db.kmc_pre
test-data/db.kmc_suf
b
diff -r ca2743037241 -r c7fda6e88567 kmc.xml
--- a/kmc.xml Tue Sep 27 05:20:06 2022 +0000
+++ b/kmc.xml Tue Oct 01 04:06:26 2024 +0000
[
b'@@ -1,91 +1,233 @@\n-<tool id="kmc" name="KMC Counter" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" >\n+<tool id="kmc" name="KMC Counter" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@">\n     <description>K-mer counting and filtering of reads</description>\n+    <macros>\n+          <import>macros.xml</import>\n+    </macros>\n     <xrefs>\n         <xref type=\'bio.tools\'>kmc</xref>\n     </xrefs> \n-    <macros>\n-\t  <import>macros.xml</import>\n-    </macros>\n     <expand macro="requirements" />\n     <expand macro="stdio" />\n     <expand macro="version_command" /> \n     <command><![CDATA[\n-\t    kmc\n+          mkdir output &&\n+\t  #if $data_type.select == \'individual\'\n+\t    #for $input_file in $data_type.individual_file\n+\t     #if $input_file.is_of_type("fastq","fastq.gz","fastqsanger.gz"):\n+                #if $input_file.ext.endswith(".gz")\n+                    #set $ext=\'.fastq.gz\'\n+                #else\n+                    #set $ext=\'.fastq\'\n+                #end if\n+                ln -s \'$input_file\' \'in$ext\' &&\n+            #elif $input_file.is_of_type("fasta","fasta.gz"):\n+                #if $input_file.ext.endswith(".gz")\n+                   #set $ext=\'.fasta.gz\'\n+                #else\n+                   #set $ext=\'.fasta\'\n+                #end if\n+                ln -s \'$input_file\' \'in$ext\' &&\n+            #elif $input_file.is_of_type("bam"):\n+                ln -s \'$input_file\' in.bam &&\n+            #elif $input_file.is_of_type("kmc_suf"):\n+                #if $input_file.ext.endswith(".kmc_suf")\n+                    #set $suf_ext=\'.kmc_suf\'\n+                #end if\n+                #if $input_file.ext.endswith(".kmc_pre")\n+                    #set $pre_ext=\'.kmc_pre\'\n+                #end if\n+                ln -s \'$input_file\' \'in$suf_ext\' &&\n+                ln -s \'$input_file\' \'in$pre_ext\' &&\n+\t    #end if\n+\t    #end for\n+\t  #else    \n+\t    \tmkdir input_dir &&\n+\t\t#import re\n+\t    \t#for $input_file in $data_type.collection_file\n+\t\t  #if $input_file.is_of_type("fastq","fastq.gz","fastqsanger.gz"):\n+                     #if $input_file.ext.endswith(".gz")\n+                        #set $ext=\'.fastq.gz\'\n+                     #else\n+                        #set $ext=\'.fastq\'\n+                     #end if\n+        \t     #set $identifier = re.sub(\'[^\\s\\w\\-\\\\.]\', \'_\', str($input_file.element_identifier))\n+\t    \t     ln -s \'$input_file\' \'input_dir/${identifier}\' &&\n+\t\t  #elif $input_file.is_of_type("fasta","fasta.gz"):\n+\t    \t     #if $input_file.ext.endswith(".gz")\n+\t    \t     \t#set $ext=\'.fasta.gz\'\n+\t    \t     #else\n+\t    \t\t#set $ext=\'.fasta\'\n+\t    \t     #end if\n+\t    \t     #set $identifier = re.sub(\'[^\\s\\w\\-\\\\.]\', \'_\', str($input_file.element_identifier))\n+\t    \t     ln -s \'$input_file\' \'input_dir/${identifier}\' &&\n+\t    \t  #elif $input_file.is_of_type("bam"):\n+\t    \t     #set $identifier = re.sub(\'[^\\s\\w\\-\\\\.]\', \'_\', str($input_file.element_identifier))\n+\t    \t     ln -s \'$input_file\' \'input_dir/${identifier}\' &&\n+\t\t  #elif $input_file.is_of_type("kmc_suf"):\n+\t    \t     #if $input_file.ext.endswith(".kmc_suf")\n+\t    \t\t#set $suf_ext=\'.kmc_suf\'\n+\t    \t     #end if\n+\t    \t     #if $input_file.ext.endswith(".kmc_pre")\n+\t    \t\t#set $pre_ext=\'.kmc_pre\'\n+\t    \t     #end if\n+\t    \t     #set $identifier = re.sub(\'[^\\s\\w\\-\\\\.]\', \'_\', str($input_file.element_identifier))\n+\t    \t     ln -s \'$input_file\' \'input_dir/${identifier}\' &&\n+\t    \t     ln -s \'$input_file\' \'input_dir/${identifier}\' &&\n+\t\t  #end if\n+\t    \t#end for\n+\t    \tls -ld input_dir/* | awk \'{print $9}\' >> files.list &&\n+\t   #end if\n+\n+\t   kmc\n \t    -t\\${GALAXY_SLOTS:-4}\n \t    #if $params.k:\n \t    \t-k\'$params.k\'\t\t\n \t    #end if\n-\t    #if $params.m:\n-\t        -m\'$params.m\'\n-\t    #end if\n+\t    -m\\${GALAXY_MEMORY_GB:-4}\n \t    #if $params.j:\n \t       -j\'$statistic\'\n \t    #end if\n-\t    #if $params.exclude_length:\n-\t       -ci\'$params.exclude_length\'\n+\t    #if $params.p:\n+\t       -p\'$params.p\'\n+\t    #end if\n+\t    #if $params.ci:\n+\t       -ci\'$params.ci\'\n+\t '..b'le" value="test.fasta.gz" ftype="fasta.gz"/>\n+            <param name="k" value="27" />\n+            <param name="ci" value="2" />\n+            <param name="cs" value="255" />\n+            <output_collection name="kmc_db" type="list">\n+                <element name="kmer_27.kmc_pre" file="kmer_27.kmc_pre" ftype="binary" />\n+                <element name="kmer_27.kmc_suf" file="kmer_27.kmc_suf" ftype="binary" />\n+            </output_collection>\n+            <output name="statistic" ftype="json">\n+                    <assert_contents>\n+                        <has_text text="1st_stage"/>\n+                        <has_text text="2nd_stage"/>\n+                        <has_text text="Stats"/>\n+                    </assert_contents>\n+            </output>\n+        </test>\n+\t <!-- output file is too large for testing; comment out to test on local machine with update_test_data option -->   \n+\t <!--  <test expect_num_outputs="2"> -->\n+            <!-- #2 test individual fastq file -->\n+\t <!--   <param name="individual_file" value="filtered_1.fastq" ftype="fastq"/>\n             <param name="k" value="25" />\n-            <param name="m" value="12" />\n \t    <param name="p" value="9" />\n \t    <param name="ci" value="2" />\n-            <param name="cs" value="255" />\n-\t    <output name="db.kmc_suf" file="db.kmc_suf" ftype="binary" />\n-\t    <output name="db.kmc_pre" file="db.kmc_pre" ftype="binary" />\n-        </test>\n-        <test>\n-            <!-- #2 test fasta with common parameters -->\n-            <param name="input_file" value="contigs.fa" ftype="fasta"/> \n-            <param name="k" value="27" />\n-            <param name="m" value="24" />\n+\t    <param name="cs" value="255" />\n+\t    <output_collection name="kmc_db" type="list">\n+\t    \t<element name="kmer_25.kmc_pre" file="kmer_25.kmc_pre" ftype="binary" />\n+\t    \t<element name="kmer_25.kmc_suf" file="kmer_25.kmc_suf" ftype="binary" />\n+\t    </output_collection>\n+\t     <output name="statistic" ftype="json">\n+\t\t <assert_contents>\n+                      <has_text text="1st_stage"/>\n+                      <has_text text="2nd_stage"/>\n+                      <has_text text="Stats"/>\n+\t\t </assert_contents>\t\t\t\t \n+\t    </output>\n+    \t</test> -->\n+\t<!-- output file is too large for testing; comment out to test on local machine -->\n+        <!-- <test expect_num_outputs="2"> -->\n+            <!-- #3 test collection fastq with common parameters -->\n+        <!--    <param name="k" value="29" />\n+            <param name="m" value="12" />\n+            <param name="p" value="9" />\n             <param name="ci" value="2" />\n             <param name="cs" value="255" />\n-            <param name="fm" value="-fm" />\n-            <output name="contig_kmer27.kmc_suf" file="contig_kmer27.kmc_suf" ftype="binary" />\n-            <output name="contig_kmer27.kmc_pre" file="contig_kmer27.kmc_pre" ftype="binary" />\n-        </test>\n+            <conditional name="data_type">\n+              <param name="select" value="collection"/>\n+                <param name="collection_file">\n+                 <collection type="list">\n+                     <element name="filtered_1.fastq" value="filtered_1.fastq" ftype="fastq"/>\n+                     <element name="filtered_2.fastq" value="filtered_2.fastq" ftype="fastq"/>\n+                 </collection>\n+                </param>\n+            </conditional>\n+            <output_collection name="kmc_db">\n+                <element name="kmer_29.kmc_suf" file="kmer_29.kmc_suf" ftype="binary" />\n+                <element name="kmer_29.kmc_pre" file="kmer_29.kmc_pre" ftype="binary" />\n+            </output_collection>\n+\t    <output name="statistic" ftype="json">\n+                    <assert_contents>\n+                        <has_text text="1st_stage"/>\n+                        <has_text text="2nd_stage"/>\n+                        <has_text text="Stats"/>\n+                    </assert_contents>\n+            </output>\n+    \t</test>\n+\t-->\n    </tests>\n     <help><![CDATA[\n \t    \n'
b
diff -r ca2743037241 -r c7fda6e88567 kmc_tools_filter.xml
--- a/kmc_tools_filter.xml Tue Sep 27 05:20:06 2022 +0000
+++ b/kmc_tools_filter.xml Tue Oct 01 04:06:26 2024 +0000
b
@@ -1,4 +1,4 @@
-<tool id="kmc_filter" name="KMC filter" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" >
+<tool id="kmc_filter" name="KMC filter" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@">
     <description>filtering KMC's database</description>
     <xrefs>
         <xref type='bio.tools'>kmc</xref>
b
diff -r ca2743037241 -r c7fda6e88567 kmc_tools_simple.xml
--- a/kmc_tools_simple.xml Tue Sep 27 05:20:06 2022 +0000
+++ b/kmc_tools_simple.xml Tue Oct 01 04:06:26 2024 +0000
b
@@ -1,4 +1,4 @@
-<tool id="kmc_simple" name="KMC simple" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" >
+<tool id="kmc_simple" name="KMC simple" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@">
     <description>simple operations for two input kmer sets</description>
     <xrefs>
         <xref type='bio.tools'>kmc</xref>
b
diff -r ca2743037241 -r c7fda6e88567 kmc_tools_transform.xml
--- a/kmc_tools_transform.xml Tue Sep 27 05:20:06 2022 +0000
+++ b/kmc_tools_transform.xml Tue Oct 01 04:06:26 2024 +0000
b
@@ -1,4 +1,4 @@
-<tool id="kmc_transform" name="KMC transform" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" >
+<tool id="kmc_transform" name="KMC transform" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@">
     <description>single KMC's database</description>
     <xrefs>
         <xref type='bio.tools'>kmc</xref>
b
diff -r ca2743037241 -r c7fda6e88567 macros.xml
--- a/macros.xml Tue Sep 27 05:20:06 2022 +0000
+++ b/macros.xml Tue Oct 01 04:06:26 2024 +0000
[
@@ -1,6 +1,7 @@
 <macros>
     <token name="@TOOL_VERSION@">3.2.1</token>
-    <token name="@VERSION_SUFFIX@">0</token>
+    <token name="@VERSION_SUFFIX@">1</token>
+    <token name="@PROFILE@">22.05</token>
     <xml name="requirements">
     <requirements>
  <requirement type="package" version="@TOOL_VERSION@">kmc</requirement>
@@ -18,7 +19,18 @@
       ]]></version_command>
   </xml>
   <xml name="macro_input">
-       <param name="input_file" type="data" format="fasta,fastq,fasta.gz,fastqsanger,fastq.gz,bam" label="Sequence file"/>
+     <conditional name="data_type">
+            <param name="select" type="select" label="File input type for KMC">
+ <option value="individual">In individual datasets</option>    
+ <option value="collection">In collection</option>
+     </param>
+            <when value="individual">
+ <param name="individual_file" type="data" format="fasta,fastq,fasta.gz,fastqsanger,fastqsanger.gz,fastq.gz,bam" multiple="true" label="FASTQ/A file"/>
+            </when>
+            <when value="collection">
+ <param name="collection_file" type="data_collection" collection_type="list" format="fasta,fastq,fasta.gz,fastqsanger,fastqsanger.gz,fastq.gz,bam" label="A list of FASTQ/A files"/>
+            </when>
+      </conditional>
   </xml>
   <xml name="general_option">
        <param argument="exclude_length" type="integer" value="2" label="exclude k-mers occurring less than [value] times (default: 2)"/>
b
diff -r ca2743037241 -r c7fda6e88567 test-data/Illumina.1.fastq.gz
b
Binary file test-data/Illumina.1.fastq.gz has changed
b
diff -r ca2743037241 -r c7fda6e88567 test-data/Illumina.2.fastq.gz
b
Binary file test-data/Illumina.2.fastq.gz has changed
b
diff -r ca2743037241 -r c7fda6e88567 test-data/db.kmc_pre
b
Binary file test-data/db.kmc_pre has changed
b
diff -r ca2743037241 -r c7fda6e88567 test-data/db.kmc_suf
b
Binary file test-data/db.kmc_suf has changed
b
diff -r ca2743037241 -r c7fda6e88567 test-data/kmer_27.kmc_pre
b
Binary file test-data/kmer_27.kmc_pre has changed
b
diff -r ca2743037241 -r c7fda6e88567 test-data/kmer_27.kmc_suf
b
Binary file test-data/kmer_27.kmc_suf has changed
b
diff -r ca2743037241 -r c7fda6e88567 test-data/statistic_27.json_bk
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/statistic_27.json_bk Tue Oct 01 04:06:26 2024 +0000
b
@@ -0,0 +1,15 @@
+{
+ "1st_stage": "0.077217s",
+ "2nd_stage": "1.20559s",
+ "Total": "1.28281s",
+ "Tmp_size": "0MB",
+ "Stats": {
+ "#k-mers_below_min_threshold": 124352,
+ "#k-mers_above_max_threshold": 0,
+ "#Unique_k-mers": 186071,
+ "#Unique_counted_k-mers": 61719,
+ "#Total no. of k-mers": 283537,
+ "#Total_reads": 2,
+ "#Total_super-k-mers": 26721
+ }
+}
b
diff -r ca2743037241 -r c7fda6e88567 test-data/test.fasta.gz
b
Binary file test-data/test.fasta.gz has changed