Repository 'trimmomatic'
hg clone https://toolshed.g2.bx.psu.edu/repos/pjbriggs/trimmomatic

Changeset 6:141bba0e9a77 (2017-02-24)
Previous changeset 5:f80107cdc406 (2016-12-16) Next changeset 7:6eeacf19a38e (2017-03-21)
Commit message:
Uploaded v0.36.2 (adds support for compressed fastq inputs)
modified:
README.rst
trimmomatic.xml
added:
test-data/Illumina_SG_R1.fastq.gz
test-data/Illumina_SG_R2.fastq.gz
test-data/trimmomatic_pe_r1_paired_out1.fastq.gz
test-data/trimmomatic_pe_r1_unpaired_out1.fastq.gz
test-data/trimmomatic_pe_r2_paired_out1.fastq.gz
test-data/trimmomatic_pe_r2_unpaired_out1.fastq.gz
test-data/trimmomatic_se_out1.fastq.gz
b
diff -r f80107cdc406 -r 141bba0e9a77 README.rst
--- a/README.rst Fri Dec 16 11:31:55 2016 -0500
+++ b/README.rst Fri Feb 24 05:12:32 2017 -0500
b
@@ -58,6 +58,9 @@
 ========== ======================================================================
 Version    Changes
 ---------- ----------------------------------------------------------------------
+0.36.2     - Support fastqsanger.gz datatype. If fastqsanger.gz is used as input
+             the output will also be fastqsanger.gz.
+           - Use $_JAVA_OPTIONS to customize memory requirements.
 0.36.1     - Reimplement to work with bioconda Trimmomatic 0.36 (toolshed version
              is still supported for now).
 0.36.0     - Update to Trimmomatic 0.36.
@@ -82,6 +85,14 @@
 ========== ======================================================================
 
 
+Credits
+=======
+
+This wrapper has been developed and is maintained by Peter Briggs (@pjbriggs).
+Peter van Heusden (@pvanheus) and Marius van den Beek (@mvdbeek) contributed
+support for gz compressed FastQ files.
+
+
 Developers
 ==========
 
b
diff -r f80107cdc406 -r 141bba0e9a77 test-data/Illumina_SG_R1.fastq.gz
b
Binary file test-data/Illumina_SG_R1.fastq.gz has changed
b
diff -r f80107cdc406 -r 141bba0e9a77 test-data/Illumina_SG_R2.fastq.gz
b
Binary file test-data/Illumina_SG_R2.fastq.gz has changed
b
diff -r f80107cdc406 -r 141bba0e9a77 test-data/trimmomatic_pe_r1_paired_out1.fastq.gz
b
Binary file test-data/trimmomatic_pe_r1_paired_out1.fastq.gz has changed
b
diff -r f80107cdc406 -r 141bba0e9a77 test-data/trimmomatic_pe_r1_unpaired_out1.fastq.gz
b
Binary file test-data/trimmomatic_pe_r1_unpaired_out1.fastq.gz has changed
b
diff -r f80107cdc406 -r 141bba0e9a77 test-data/trimmomatic_pe_r2_paired_out1.fastq.gz
b
Binary file test-data/trimmomatic_pe_r2_paired_out1.fastq.gz has changed
b
diff -r f80107cdc406 -r 141bba0e9a77 test-data/trimmomatic_pe_r2_unpaired_out1.fastq.gz
b
Binary file test-data/trimmomatic_pe_r2_unpaired_out1.fastq.gz has changed
b
diff -r f80107cdc406 -r 141bba0e9a77 test-data/trimmomatic_se_out1.fastq.gz
b
Binary file test-data/trimmomatic_se_out1.fastq.gz has changed
b
diff -r f80107cdc406 -r 141bba0e9a77 trimmomatic.xml
--- a/trimmomatic.xml Fri Dec 16 11:31:55 2016 -0500
+++ b/trimmomatic.xml Fri Feb 24 05:12:32 2017 -0500
[
b'@@ -1,4 +1,4 @@\n-<tool id="trimmomatic" name="Trimmomatic" version="0.36.1">\n+<tool id="trimmomatic" name="Trimmomatic" version="0.36.2">\n   <description>flexible read trimming tool for Illumina NGS data</description>\n   <macros>\n     <import>trimmomatic_macros.xml</import>\n@@ -6,29 +6,30 @@\n   <requirements>\n     <requirement type="package" version="0.36">trimmomatic</requirement>\n   </requirements>\n-  <stdio>\n-    <exit_code range="1:" />\n-  </stdio>\n-  <command><![CDATA[\n+  <command detect_errors="aggressive"><![CDATA[\n   @CONDA_TRIMMOMATIC_JAR_PATH@ &&\n   @CONDA_TRIMMOMATIC_ADAPTERS_PATH@ &&\n-  java -mx8G -jar \\$TRIMMOMATIC_JAR_PATH/trimmomatic.jar\n-  #if $paired_end.is_paired_end\n+  #if $readtype.single_or_paired == "pair_of_files"\n+    #set r1_ext = $readtype.fastq_r1_in.extension\n+    #set r2_ext = $readtype.fastq_r2_in.extension\n+    ln -s \'$readtype.fastq_r1_in\' fastq_r1.\'$r1_ext\' &&\n+    ln -s \'$readtype.fastq_r2_in\' fastq_r2.\'$r2_ext\' &&\n+  #elif $readtype.single_or_paired == "collection"\n+    #set r1_ext = $readtype.fastq_pair.forward.extension\n+    #set r2_ext = $readtype.fastq_pair.reverse.extension\n+    ln -s \'$readtype.fastq_pair.forward\' fastq_r1.\'$r1_ext\' &&\n+    ln -s \'$readtype.fastq_pair.reverse\' fastq_r2.\'$r2_ext\' &&\n+  #else\n+    ln -s \'$fastq_in\' fastq_in.\'$fastq_in.extension\' &&\n+  #end if\n+  java \\${_JAVA_OPTIONS:--Xmx8G} -jar \\$TRIMMOMATIC_JAR_PATH/trimmomatic.jar\n+  #if $readtype.single_or_paired in ["pair_of_files","collection"]\n     PE -threads \\${GALAXY_SLOTS:-6} -phred33\n-    #set $paired_input_type = $paired_end.paired_input_type_conditional.paired_input_type\n-    #if $paired_input_type == "pair_of_files"\n-      "${paired_end.paired_input_type_conditional.fastq_r1_in}"\n-      "${paired_end.paired_input_type_conditional.fastq_r2_in}"\n-      "${fastq_out_r1_paired}" "${fastq_out_r1_unpaired}"\n-      "${fastq_out_r2_paired}" "${fastq_out_r2_unpaired}"\n-    #else\n-      "${paired_end.paired_input_type_conditional.fastq_pair.forward}"\n-      "${paired_end.paired_input_type_conditional.fastq_pair.reverse}"\n-      "${fastq_out_paired.forward}" "${fastq_out_unpaired.forward}"\n-      "${fastq_out_paired.reverse}" "${fastq_out_unpaired.reverse}"\n-    #end if\n+      fastq_r1.\'$r1_ext\' fastq_r2.\'$r2_ext\'\n+      fastq_out_r1_paired.\'$r1_ext\' fastq_out_r1_unpaired.\'$r1_ext\'\n+      fastq_out_r2_paired.\'$r2_ext\' fastq_out_r2_unpaired.\'$r2_ext\'\n   #else\n-    SE -threads \\${GALAXY_SLOTS:-6} -phred33 "$fastq_in" "$fastq_out"\n+    SE -threads \\${GALAXY_SLOTS:-6} -phred33 fastq_in.\'$fastq_in.extension\' fastq_out.\'$fastq_in.extension\'\n   #end if\n   ## ILLUMINACLIP option\n   #if $illuminaclip.do_illuminaclip\n@@ -65,148 +66,159 @@\n   #end for\n   2>&1 | tee trimmomatic.log &&\n   if [ -z "\\$(tail -1 trimmomatic.log | grep "Completed successfully")" ]; then echo "Trimmomatic did not finish successfully" >&2 ; exit 1 ; fi\n+  &&\n+  #if $readtype.single_or_paired  == "pair_of_files"\n+    mv fastq_out_r1_paired.\'$r1_ext\' \'${fastq_out_r1_paired}\' &&\n+    mv fastq_out_r1_unpaired.\'$r1_ext\' \'${fastq_out_r1_unpaired}\' &&\n+    mv fastq_out_r2_paired.\'$r2_ext\' \'${fastq_out_r2_paired}\' &&\n+    mv fastq_out_r2_unpaired.\'$r2_ext\' \'${fastq_out_r2_unpaired}\'\n+  #elif $readtype.single_or_paired  == "collection"\n+    mv fastq_out_r1_paired.\'$r1_ext\' \'${fastq_out_paired.forward}\' &&\n+    mv fastq_out_r1_unpaired.\'$r1_ext\' \'${fastq_out_unpaired.forward}\' &&\n+    mv fastq_out_r2_paired.\'$r2_ext\' \'${fastq_out_paired.reverse}\' &&\n+    mv fastq_out_r2_unpaired.\'$r2_ext\' \'${fastq_out_unpaired.reverse}\'\n+  #else\n+    mv fastq_out.\'$fastq_in.extension\' \'${fastq_out}\'\n+  #end if\n   ]]></command>\n   <inputs>\n-    <conditional name="paired_end">\n-    <param name="is_paired_end" type="boolean" label="Paired end data?" truevalue="yes" falsevalue="no" checked="on" />\n-    <when value="no">\n-      <param name="fastq_in" type="data" format="fastqsanger" label="Input FASTQ file" />\n+    <conditional name="readtype">\n+      <param name="single_or_paired" '..b'        <collection type="paired">\n           <element name="forward" value="Illumina_SG_R1.fastq" ftype="fastqsanger" />\n@@ -237,17 +243,36 @@\n       </param>\n       <param name="operations_0|operation|name" value="SLIDINGWINDOW" />\n       <output_collection name="fastq_out_paired" type="paired">\n-\t<element name="forward" file="trimmomatic_pe_r1_paired_out1.fastq" />\n-\t<element name="reverse" file="trimmomatic_pe_r2_paired_out1.fastq" />\n+        <element name="forward" file="trimmomatic_pe_r1_paired_out1.fastq" />\n+        <element name="reverse" file="trimmomatic_pe_r2_paired_out1.fastq" />\n       </output_collection>\n       <output_collection name="fastq_out_unpaired" type="paired">\n-\t<element name="forward" file="trimmomatic_pe_r1_unpaired_out1.fastq" />\n-\t<element name="reverse" file="trimmomatic_pe_r2_unpaired_out1.fastq" />\n+        <element name="forward" file="trimmomatic_pe_r1_unpaired_out1.fastq" />\n+        <element name="reverse" file="trimmomatic_pe_r2_unpaired_out1.fastq" />\n+      </output_collection>\n+    </test>\n+    <test>\n+      <!-- Paired-end with dataset collection - gzipped -->\n+      <param name="single_or_paired" value="collection" />\n+      <param name="fastq_pair">\n+        <collection type="paired">\n+          <element name="forward" value="Illumina_SG_R1.fastq.gz" ftype="fastqsanger.gz" />\n+          <element name="reverse" value="Illumina_SG_R2.fastq.gz" ftype="fastqsanger.gz"/>\n+        </collection>\n+      </param>\n+      <param name="operations_0|operation|name" value="SLIDINGWINDOW" />\n+      <output_collection name="fastq_out_paired" type="paired">\n+        <element name="forward" file="trimmomatic_pe_r1_paired_out1.fastq.gz" />\n+        <element name="reverse" file="trimmomatic_pe_r2_paired_out1.fastq.gz" />\n+      </output_collection>\n+      <output_collection name="fastq_out_unpaired" type="paired">\n+        <element name="forward" file="trimmomatic_pe_r1_unpaired_out1.fastq.gz" />\n+        <element name="reverse" file="trimmomatic_pe_r2_unpaired_out1.fastq.gz" />\n       </output_collection>\n     </test>\n     <test>\n       <!-- Single-end using AVGQUAL -->\n-      <param name="is_paired_end" value="no" />\n+      <param name="single_or_paired" value="se" />\n       <param name="fastq_in" value="Illumina_SG_R1.fastq" ftype="fastqsanger" />\n       <param name="operations_0|operation|name" value="AVGQUAL" />\n       <param name="operations_0|operation|avgqual" value="30" />\n@@ -255,7 +280,7 @@\n     </test>\n     <test>\n       <!-- Single-end using MAXINFO -->\n-      <param name="is_paired_end" value="no" />\n+      <param name="single_or_paired" value="se" />\n       <param name="fastq_in" value="Illumina_SG_R1.fastq" ftype="fastqsanger" />\n       <param name="operations_0|operation|name" value="MAXINFO" />\n       <param name="operations_0|operation|target_length" value="75" />\n@@ -282,7 +307,7 @@\n  * **CROP:** Cut the read to a specified length\n  * **HEADCROP:** Cut the specified number of bases from the start of the read\n  * **AVGQUAL:** Drop the read if the average quality is below a specified value\n- * **MAXINFO:** Trim reads adaptively, balancing read length and error rate to \n+ * **MAXINFO:** Trim reads adaptively, balancing read length and error rate to\n    maximise the value of each read\n \n If ILLUMINACLIP is requested then it is always performed first; subsequent options\n@@ -334,12 +359,15 @@\n **Credits**\n \n This Galaxy tool has been developed within the Bioinformatics Core Facility at the\n-University of Manchester. It runs the Trimmomatic program which has been developed\n+University of Manchester, with contributions from Peter van Heusden and Marius\n+van den Beek.\n+\n+It runs the Trimmomatic program which has been developed\n within Bjorn Usadel\'s group at RWTH Aachen university.\n \n Trimmomatic website (including documentation):\n \n- * http://www.usadellab.org/cms/index.php?page=trimmomatic \n+ * http://www.usadellab.org/cms/index.php?page=trimmomatic\n \n The reference for Trimmomatic is:\n \n'