changeset 3:7b6a748e438f draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tool_collections/fastx_toolkit/fastq_quality_filter commit bbb2e6b6769b03602a8ab97001f88fbec52080a1
author iuc
date Tue, 08 May 2018 12:50:05 -0400
parents 5b15d54348ed
children a55430a1c754
files fastq_quality_filter.xml macros.xml tool_dependencies.xml
diffstat 3 files changed, 75 insertions(+), 28 deletions(-) [+]
line wrap: on
line diff
--- a/fastq_quality_filter.xml	Tue Oct 13 12:39:56 2015 -0400
+++ b/fastq_quality_filter.xml	Tue May 08 12:50:05 2018 -0400
@@ -1,30 +1,28 @@
-<tool id="cshl_fastq_quality_filter" version="1.0.0" name="Filter by quality">
+<tool id="cshl_fastq_quality_filter" version="1.0.1" name="Filter by quality">
     <description></description>
-    <requirements>
-        <requirement type="package" version="0.0.13">fastx_toolkit</requirement>
-    </requirements>
-    <command>
-<![CDATA[
-zcat -f < '$input' | fastq_quality_filter -q $quality -p $percent -v -o '$output'
-#if $input.ext == "fastqsanger":
-    -Q 33
-#end if
-]]>
-    </command>
+    <macros>
+        <import>macros.xml</import>
+    </macros>
+    <expand macro="requirements" />
+    <command detect_errors="exit_code"><![CDATA[
+@CATS@ fastq_quality_filter
+-q $quality
+-p $percent
+-v
+-o '$output'
+@FQQUAL@
+    ]]></command>
 
     <inputs>
-        <param format="fastqsolexa,fastqsanger" name="input" type="data" label="Library to filter" />
+        <expand macro="fastq_input" />
 
-        <param name="quality" type="integer" value="20">
-            <label>Quality cut-off value</label>
-        </param>
+        <param name="quality" type="integer" value="20" label="Quality cut-off value"/>
 
-        <param name="percent" type="integer" value="90">
-            <label>Percent of bases in sequence that must have quality equal to / higher than cut-off value</label>
-        </param>
+        <param name="percent" type="integer" value="90"
+            label="Percent of bases in sequence that must have quality equal to / higher than cut-off value" />
     </inputs>
     <outputs>
-        <data format_source="input" name="output" metadata_source="input" />
+        <data name="output" format_source="input" metadata_source="input" />
     </outputs>
     <tests>
         <test>
@@ -42,7 +40,7 @@
             <output name="output" ftype="fastqsolexa" file="fastq_qual_filter1b.out" />
         </test>
     </tests>
-    <help>
+    <help><![CDATA[
 **What it does**
 
 This tool filters reads based on quality scores.
@@ -78,6 +76,7 @@
 This tool is based on `FASTX-toolkit`__ by Assaf Gordon.
 
  .. __: http://hannonlab.cshl.edu/fastx_toolkit/
-    </help>
+    ]]></help>
+    <expand macro="citations" />
 <!-- FASTQ-Quality-Filter is part of the FASTX-toolkit, by A.Gordon (gordon@cshl.edu) -->
 </tool>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/macros.xml	Tue May 08 12:50:05 2018 -0400
@@ -0,0 +1,54 @@
+<?xml version="1.0"?>
+<macros>
+    <token name="@CATS@">
+        #if $input.is_of_type('fasta.gz', 'fastqsanger.gz', 'fastqsolexa.gz', 'fastqillumina.gz'):
+            zcat -f '$input' |
+        #elif $input.is_of_type('fastqsanger.bz2', 'fastqsolexa.bz2', 'fastqillumina.bz2'):
+            bzcat -f '$input' |
+        #else:
+            cat '$input' |
+        #end if
+    </token>
+    <token name="@FQQUAL@">
+        <![CDATA[
+            #if $input.is_of_type('fastqsanger', 'fastqsanger.gz', 'fastqsanger.bz2'):
+                -Q 33
+            #elif $input.is_of_type('fastqsolexa', 'fastqsolexa.gz', 'fastqsolexa.bz2', 'fastqillumina', 'fastqillumina.gz', 'fastqillumina.bz2'):
+                -Q 64
+            #end if
+        ]]>
+    </token>
+    <xml name="requirements">
+        <requirements>
+            <requirement type="package" version="@VERSION@">fastx_toolkit</requirement>
+            <yield />
+        </requirements>
+    </xml>
+    <token name="@VERSION@">0.0.14</token>
+    <token name="@SANGER@">fastqsanger,fastqsanger.gz,fastqsanger.bz2</token>
+    <token name="@SOLEXA@">fastqsolexa,fastqsolexa.gz,fastqsolexa.bz2</token>
+    <token name="@ILLUMINA@">fastqillumina,fastqillumina.gz,fastqillumina.bz2</token>
+    <token name="@FASTQS@">@SANGER@,@SOLEXA@,@ILLUMINA@</token>
+    <token name="@FASTAS@">fasta,fasta.gz</token>
+    <xml name="citations">
+        <citations>
+            <citation type="bibtex">
+                @UNPUBLISHED{agordon,
+                    author = "Assaf Gordon",
+                    title = "FASTQ/A short-reads pre-processing tools",
+                    year = "2010",
+                    note = "http://hannonlab.cshl.edu/fastx_toolkit/",
+                    url = "http://hannonlab.cshl.edu/fastx_toolkit/"}
+            </citation>
+        </citations>
+    </xml>
+    <xml name="fasta_input">
+        <param name="input" type="data" format="@FASTAS@" label="Input FASTA file" />
+    </xml>
+    <xml name="fastq_input">
+        <param name="input" type="data" format="@FASTQS@" label="Input FASTQ file" />
+    </xml>
+    <xml name="fastx_input">
+        <param name="input" type="data" format="@FASTAS@,@FASTQS@" label="Input file in FASTA or FASTQ format" />
+    </xml>
+</macros>
--- a/tool_dependencies.xml	Tue Oct 13 12:39:56 2015 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,6 +0,0 @@
-<?xml version="1.0"?>
-<tool_dependency>
-    <package name="fastx_toolkit" version="0.0.13">
-        <repository changeset_revision="e76e81b3eccf" name="package_fastx_toolkit_0_0_13" owner="devteam" toolshed="https://testtoolshed.g2.bx.psu.edu" />
-    </package>
-</tool_dependency>