Repository 'spades_metaplasmidspades'
hg clone https://toolshed.g2.bx.psu.edu/repos/iuc/spades_metaplasmidspades

Changeset 0:32ab23671cc1 (2022-01-23)
Next changeset 1:0ec2f2969a3a (2022-01-24)
Commit message:
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/spades commit 8734db131db6f76697b500b30f18ee7723d61813"
added:
macros.xml
metaplasmidspades.xml
test-data/A_R1.fastq.gz
test-data/A_R2.fastq.gz
test-data/B_R1.fastq.gz
test-data/B_R2.fastq.gz
test-data/corona_scaffold.fasta
test-data/covid.fastq.gz
test-data/ecoli_1K.fasta.gz
test-data/ecoli_1K.fastq.gz
test-data/ecoli_1K_1.fasta.gz
test-data/ecoli_1K_1.fastq.gz
test-data/ecoli_1K_2.fasta.gz
test-data/ecoli_1K_2.fastq.gz
test-data/pl1.fq.gz
test-data/pl2.fq.gz
b
diff -r 000000000000 -r 32ab23671cc1 macros.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/macros.xml Sun Jan 23 21:34:23 2022 +0000
[
b'@@ -0,0 +1,749 @@\n+<macros>\n+    <token name="@TOOL_VERSION@">3.15.3</token>\n+    <token name="@VERSION_SUFFIX@">0</token>\n+    <xml name="requirements">\n+        <requirements>\n+            <requirement type="package" version="@TOOL_VERSION@">spades</requirement>\n+            <requirement type="package" version="3.0">zip</requirement>\n+            <yield/>\n+        </requirements>\n+    </xml>\n+    <xml name="stdio">\n+        <stdio>\n+            <exit_code range="1:"/>\n+            <regex match="Cannot allocate memory"\n+               source="stdout"\n+               level="fatal_oom"\n+               description="Out of memory error occurred"/>\n+            <regex match="The reads contain too many k-mers to fit into available memory"\n+               source="stdout"\n+               level="fatal_oom"\n+               description="Out of memory error occurred"/>\n+        </stdio>\n+    </xml>\n+    <xml name="version_command">\n+        <version_command><![CDATA[spades.py --version 2>&1 | awk -F \'v\' \'{print $2}\']]></version_command>\n+    </xml>\n+    <token name="@INTYPES@">\n+        \n+    </token>\n+    <xml name="citations">\n+        <citations>\n+            <citation type="doi">10.1093/bioinformatics/btv688</citation>\n+            <citation type="doi">10.1093/bioinformatics/btu266</citation>\n+            <citation type="doi">10.1093/bioinformatics/btv337</citation>\n+            <yield/>\n+          </citations>\n+    </xml>\n+    <xml name="operation_mode" token_help="">\n+        <param name="operation_mode" type="select" label="Operation mode" help="@HELP@">\n+            <option value="">Assembly and error correction</option>\n+            <option value="--only-assembler">Only assembler (--only-assembler)</option>\n+            <option value="--only-error-correction">Only error correction (--only-error-correction)</option>\n+        </param>\n+    </xml>\n+    \n+\n+<!-- PREPARE INPUT FILES-->\n+\n+<token name="@PREPROCESS_INPUT_FILES_MAIN@"><![CDATA[\n+#if $singlePaired.sPaired == "single" or $singlePaired.sPaired == "paired_interlaced"\n+    mkdir -p reads1 &&\n+    #set file_paths1 = []\n+    #for $input_file in $singlePaired.input1\n+        #set $ext = $input_file.ext.replace(\'fastqsanger\', \'fastq\')\n+        #set $fname = $input_file.element_identifier.replace(" ","_") + \'.\' + $ext\n+        #set $file_path = \'reads1/\' + $fname\n+        ln -s \'$input_file\' $file_path &&\n+        $file_paths1.append($file_path)\n+    #end for\n+#else if $singlePaired.sPaired == "paired"\n+    mkdir -p paired_reads1 &&\n+    #set fw_reads1 = []\n+    #for $input_file in $singlePaired.input1\n+        #set $ext = $input_file.ext.replace(\'fastqsanger\', \'fastq\')\n+        #set $fname = $input_file.element_identifier.replace(" ","_") + \'.\' + $ext\n+        #set $file_path = \'paired_reads1/\' + str($fname)\n+        ln -s \'$input_file\' $file_path &&\n+        $fw_reads1.append($file_path)\n+    #end for\n+    #set rv_reads1 = []\n+    #for $input_file in $singlePaired.input2\n+        #set $ext = $input_file.ext.replace(\'fastqsanger\', \'fastq\')\n+        #set $fname = $input_file.element_identifier.replace(" ","_") + \'.\' + $ext\n+        #set $file_path = \'paired_reads1/\' + str($fname)\n+        ln -s \'$input_file\' $file_path &&\n+        $rv_reads1.append($file_path)\n+    #end for\n+    #silent $fw_reads1.sort()\n+    #silent $rv_reads1.sort()\n+#else\n+    mkdir -p paired_reads1 &&\n+    #set fw_reads1 = []\n+    #set rv_reads1 = []\n+    #for $i, $input_file in enumerate($singlePaired.input)\n+        #set $ext = $input_file.forward.ext.replace(\'fastqsanger\', \'fastq\')\n+        #set $file_path = \'paired_reads1/fw\' + str($i) + \'.\' + $ext\n+        ln -s \'$input_file.forward\' $file_path &&\n+        $fw_reads1.append($file_path)\n+        #set $file_path = \'paired_reads1/rv\' + str($i) + \'.\' + $ext\n+        ln -s \'$input_file.reverse\' $file_path &&\n+        $rv_reads1.append($file_path)\n+    #end for\n+#end if\n+]]></token>\n+\n+<token name="@PREPROCESS_INPUT_FILES_ADDITIONAL@"><![CDATA[\n+#if $addition'..b'</filter>\n+        </data>\n+    </xml>\n+    <!--\n+      help\n+    -->\n+\n+    <token name="@HELP_IN@"><![CDATA[\n+\n+SPAdes takes as input paired-end reads, mate-pairs and single (unpaired) reads in FASTA and FASTQ. For IonTorrent data SPAdes also supports unpaired reads in unmapped BAM format (like the one produced by Torrent Server). However, in order to run read error correction, reads should be in FASTQ or BAM format. Sanger, Oxford Nanopore and PacBio CLR reads can be provided in both formats since SPAdes does not run error correction for these types of data.\n+\n+To run SPAdes 3.15.3 you need at least one library of the following types:\n+\n+- Illumina paired-end/high-quality mate-pairs/unpaired reads\n+- IonTorrent paired-end/high-quality mate-pairs/unpaired reads\n+- PacBio CCS reads\n+- Illumina and IonTorrent libraries should not be assembled together. All other types of input data are compatible. SPAdes should not be used if only PacBio CLR, Oxford Nanopore, Sanger reads or additional contigs are available.\n+\n+SPAdes supports mate-pair only assembly. However, we recommend to use only high-quality mate-pair libraries in this case (e.g. that do not have a paired-end part). We tested mate-pair only pipeline using Illumina Nextera mate-pairs. \n+\n+Notes:\n+\n+- It is strongly suggested to provide multiple paired-end and mate-pair libraries according to their insert size (from smallest to longest).\n+- It is not recommended to run SPAdes on PacBio reads with low coverage (less than 5).\n+- We suggest not to run SPAdes on PacBio reads for large genomes.\n+- SPAdes accepts gzip-compressed files.\n+\n+A detailed description can be found in the `input section <https://github.com/ablab/spades/#sec3.1>`_ of the manual.\n+    ]]></token>\n+    <token name="@HELP_OUT_AG@">\n+- Assembly graph\n+    </token>\n+    <token name="@HELP_OUT_AGS@">\n+- Assembly graph with scaffolds\n+    </token>\n+    <token name="@HELP_OUT_C@">\n+- Contigs\n+    </token>\n+    <token name="@HELP_OUT_CP@">\n+- Contigs paths in the assembly graph\n+    </token>\n+    <token name="@HELP_OUT_CS@">\n+- Contigs stats\n+    </token>\n+    <token name="@HELP_OUT_CR@">   \n+- Corrected reads by BayesHammer\n+    </token>\n+    <token name="@HELP_OUT_L@">\n+- Log file\n+    </token>\n+    <token name="@HELP_OUT_S@">\n+- Scaffolds (recommended for use as resulting sequences)\n+    </token>\n+    <token name="@HELP_OUT_SP@">\n+- Scaffolds paths in the assembly graph\n+    </token>\n+    <token name="@HELP_OUT_SS@">\n+- Scaffolds stats\n+    </token>\n+    <token name="@HELP_WID@">\n+SPAdes - St. Petersburg genome assembler - is an assembly toolkit containing various assembly pipelines.\n+    </token>\n+    <token name="@IONTORRENT@"><![CDATA[\n+The selection of k-mer length is non-trivial for IonTorrent. If the dataset is more or less conventional (good coverage, not high GC, etc), then use our `recommendation for long reads <https://cab.spbu.ru/files/release3.12.0/manual.html#sec3.4>`_ (e.g. assemble using k-mer lengths 21,33,55,77,99,127). However, due to increased error rate some changes of k-mer lengths (e.g. selection of shorter ones) may be required. For example, if you ran SPAdes with k-mer lengths 21,33,55,77 and then decided to assemble the same data set using more iterations and larger values of K, you can run SPAdes once again specifying the same output folder and the following options: --restart-from k77 -k 21,33,55,77,99,127 --mismatch-correction -o <previous_output_dir>. Do not forget to copy contigs and scaffolds from the previous run. We\'re planning to tackle issue of selecting k-mer lengths for IonTorrent reads in next versions.\n+\n+You may need no error correction for Hi-Q enzyme at all. However, we suggest trying to assemble your data with and without error correction and select the best variant.\n+\n+For non-trivial datasets (e.g. with high GC, low or uneven coverage) we suggest to enable single-cell mode (setting --sc option) and use k-mer lengths of 21,33,55.\n+\n+    ]]></token>    \n+\n+</macros>\n'
b
diff -r 000000000000 -r 32ab23671cc1 metaplasmidspades.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/metaplasmidspades.xml Sun Jan 23 21:34:23 2022 +0000
[
b'@@ -0,0 +1,239 @@\n+<tool id="spades_metaplasmidspades" name="metaplasmidSPAdes" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="20.01">\n+    <description>extract and assembly plasmids from metagenomic data</description>\n+    <macros>\n+        <import>macros.xml</import>\n+    </macros>\n+    <expand macro="requirements"/>\n+    <expand macro="stdio"/>\n+    <expand macro="version_command"/>\n+    <command detect_errors="exit_code"><![CDATA[\n+\n+#set $library = 1\n+\n+@PREPROCESS_INPUT_FILES_MAIN@\n+#if $additional_reads.selector == \'true\'\n+    @PREPROCESS_INPUT_FILES_ADDITIONAL@\n+#end if\n+@PREPROCESS_NANOPORE_PACBIO_FILES@\n+@PREPROCESS_SANGER_FILES@\n+@PREPROCESS_CONTIGS_FILES@\n+@PREPROCESS_ASSEMBLY_GRAPH_FILES@\n+\n+## run\n+spades.py --meta --plasmid\n+    -o \'output\'\n+    @RESOURCES@\n+    @INPUT_READS_MAIN@\n+    #if $additional_reads.selector == \'true\'\n+        @INPUT_READS_ADDITIONAL@\n+    #end if\n+    ## reads\n+    @NANOPORE_PACBIO@\n+    @SANGER@\n+    @CONTIGS@\n+    @ASSEMBLY_GRAPH@\n+    ## parameter\n+    @KMER@\n+    @PHREDOFFSET@\n+    @PIPELINE_OPTIONS@\n+    ## postprocessing\n+    @STATS@\n+    @CORRECTED@\n+    ]]></command>\n+    <inputs>\n+        <expand macro="input_files_paired" format="fastq, fastq.gz,fastqsanger.gz" label="FASTQ file(s)"/>\n+        <expand macro="input_additional_files_paired" format="fastq,fastq.gz,fastqsanger.gz" label="FASTQ file(s)"/>\n+        <section name="arf" title="Additional read files">\n+            <expand macro="nanopore_pacbio"/>\n+            <expand macro="sanger"/>\n+            <expand macro="contigs"/>\n+            <expand macro="assembly_graph"/>\n+        </section>\n+        <expand macro="kmer"/>\n+        <expand macro="phred"/>\n+        <expand macro="pipeline_options">\n+            <option value="--careful">Careful: ties to reduce the number of mismatches and short indels. Only recommended for small genomes (--careful)</option>\n+            <option value="--iontorrent">Iontorrent: required when assembling IonTorrent data (--iontorrent)</option>\n+        </expand>\n+        <param name="optional_output" type="select" multiple="true" optional="false" label="Select optional output file(s)" help="Only shown in history if selected here and generated by the specific run.">\n+            <option value="cn" selected="true">Contigs</option>\n+            <option value="cs">Contigs stats</option>\n+            <option value="cr">Corrected reads</option>\n+            <option value="sc" selected="true">Scaffolds</option>\n+            <option value="ss">Scaffolds stats</option>\n+            <option value="l">Log</option>\n+        </param>\n+    </inputs>\n+    <outputs>\n+        <expand macro="out_cn"/>\n+        <expand macro="out_cr"/>\n+        <expand macro="out_cs"/>\n+        <expand macro="out_l"/>\n+        <expand macro="out_sc"/>\n+        <expand macro="out_ss"/>\n+   </outputs>\n+    <tests>\n+        <!--\n+        used in a test:\n+            multiple libraries: s, pe#-12, pe#-1, pe#-2, pe#-<or>\n+            k, phred-offset, disablerr, iontorrent, only-assembler, only-error-correction\n+        -->\n+\n+        <!-- #1 single, separate, fastq.gz, default parameters -->\n+         <test expect_num_outputs="2">\n+            <conditional name="singlePaired">\n+                <param name="sPaired" value="paired"/>\n+                <param name="input1" value="pl1.fq.gz"/>\n+                <param name="input2" value="pl2.fq.gz"/>\n+            </conditional>\n+            <output name="out_cn">\n+                <assert_contents>\n+                    <has_n_lines n="163"/>\n+                    <has_text_matching expression=">NODE\\_1\\_length\\_9689\\_cov\\_.+"/>\n+                </assert_contents>\n+            </output>\n+            <output name="out_sc">\n+                <assert_contents>\n+                    <has_n_lines n="163"/>\n+                    <has_text_matching expression=">NODE\\_1\\_length\\_9689.+"/>\n+                </assert_contents>\n+            </output>\n+        </test>\n+        <!-- #2 single, sep'..b'ent name="pl2.fq.gz.fastq.00.0_0.cor">\n+                    <assert_contents>\n+                        <has_size value="71752" delta="1000"/>\n+                    </assert_contents>\n+                </element>\n+                <element name="pl_unpaired.00.0_0.cor">\n+                    <assert_contents>\n+                        <has_size value="423" delta="100"/>\n+                    </assert_contents>\n+                </element>\n+            </output_collection>\n+            <output name="out_sc">\n+                <assert_contents>\n+                    <has_n_lines n="162"/>\n+                    <has_text_matching expression=">NODE\\_1\\_length\\_9645\\_cov\\_.+"/>\n+                </assert_contents>\n+            </output>\n+            <output name="out_ss">\n+                <assert_contents>\n+                    <has_n_lines n="1"/>\n+                    <has_text_matching expression="#name&#009;length&#009;coverage"/>\n+                </assert_contents>\n+            </output>\n+            <output name="out_l">\n+                <assert_contents>\n+                    <has_text_matching expression="Thank you for using SPAdes!"/>\n+                </assert_contents>\n+            </output>\n+        </test>\n+        <!-- #3 -->\n+        <test expect_num_outputs="1">\n+            <conditional name="singlePaired">\n+                <param name="sPaired" value="paired"/>\n+                <param name="input1" value="pl1.fq.gz"/>\n+                <param name="input2" value="pl2.fq.gz"/>\n+            </conditional>\n+            <param name="operation_mode" value="--only-assembler"/>\n+            <param name="optional_output" value="l"/>\n+            <output name="out_l">\n+                <assert_contents>\n+                    <has_text_matching expression="Thank you for using SPAdes!"/>\n+                </assert_contents>\n+            </output>\n+        </test>\n+        <!-- #4, only corrected reads are created as an output -->\n+        <test expect_num_outputs="2">\n+            <conditional name="singlePaired">\n+                <param name="sPaired" value="paired"/>\n+                <param name="input1" value="pl1.fq.gz"/>\n+                <param name="input2" value="pl2.fq.gz"/>\n+            </conditional>\n+            <param name="operation_mode" value="--only-error-correction"/>\n+            <param name="optional_output" value="cr,l"/>\n+            <output_collection name="out_cr" type="list" count="3">\n+                <element name="pl1.fq.gz.fastq.00.0_0.cor">\n+                    <assert_contents>\n+                        <has_size value="71752" delta="1000"/>\n+                    </assert_contents>\n+                </element>\n+                <element name="pl2.fq.gz.fastq.00.0_0.cor">\n+                    <assert_contents>\n+                        <has_size value="71752" delta="1000"/>\n+                    </assert_contents>\n+                </element>\n+                <element name="pl_unpaired.00.0_0.cor">\n+                    <assert_contents>\n+                        <has_size value="423" delta="100"/>\n+                    </assert_contents>\n+                </element>\n+            </output_collection>\n+            <output name="out_l">\n+                <assert_contents>\n+                    <has_text_matching expression="Thank you for using SPAdes!"/>\n+                </assert_contents>\n+            </output>\n+        </test>\n+    </tests>\n+    <help><![CDATA[\n+.. class:: infomark\n+\n+**What it does**\n+\n+@HELP_WID@\n+\n+metaplasmidSPAdes is a subtool for assembling plasmids from metagenomic data sets.\n+\n+**Input**\n+\n+@HELP_IN@\n+\n+**Output**\n+\n+@HELP_OUT_C@\n+@HELP_OUT_CS@\n+@HELP_OUT_CR@\n+@HELP_OUT_L@\n+@HELP_OUT_S@\n+@HELP_OUT_SS@\n+\n+**References**\n+\n+More information can be found on `github <https://github.com/ablab/spades>`_  and on the `project website <http://cab.spbu.ru/software/spades>`_.\n+    ]]></help>\n+    <expand macro="citations">\n+        <citation type="doi">10.1101/gr.241299.118</citation>\n+    </expand>\n+</tool>    \t\n'
b
diff -r 000000000000 -r 32ab23671cc1 test-data/A_R1.fastq.gz
b
Binary file test-data/A_R1.fastq.gz has changed
b
diff -r 000000000000 -r 32ab23671cc1 test-data/A_R2.fastq.gz
b
Binary file test-data/A_R2.fastq.gz has changed
b
diff -r 000000000000 -r 32ab23671cc1 test-data/B_R1.fastq.gz
b
Binary file test-data/B_R1.fastq.gz has changed
b
diff -r 000000000000 -r 32ab23671cc1 test-data/B_R2.fastq.gz
b
Binary file test-data/B_R2.fastq.gz has changed
b
diff -r 000000000000 -r 32ab23671cc1 test-data/corona_scaffold.fasta
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/corona_scaffold.fasta Sun Jan 23 21:34:23 2022 +0000
b
@@ -0,0 +1,18 @@
+>NODE_1_length_1009_cluster_1_candidate_1_domains_2
+GTTCAAGCTGAGGCAAAACGCCTTTTTCAACTTCTACTAAGCCACAAGTGCCATCTTTAG
+GATGTTGACGTGCCTCTGATAAGACCGCCTCCACTGGAGGATACACAGGTTTAAAGGTTT
+ATACCTTCCCAGGTAACAAACCAACCAACTTTCGATCTCTTGTAGATCTGTTCTCTAAAC
+GAACTTTAAAATCTGTGTGGCTGTCACTCGGCTGCATGCTTAGTGCACTCACGCAGTATA
+ATTAATAACTAATTACTGTCGTTGACAGGACACGAGTAACTCGTCTATCTTCTGCAGGCT
+GCTTACGGTTTCGTCCGTGTTGCAGCCGATCATCAGCACATCTAGGTTTCGTCCGGGTGT
+GACCGAAAGGTAAGATGGAGAGCCTTGTCCCTGGTTTCAACGAGAAAACACACGTCCAAC
+TCAGTTTGCCTGTTTTACAGGTTCGCGACGTGCTCGTACGTGGCTTTGGAGACTCCGTGG
+AGGAGGTCTTATCAGAGGCACGTCAACATCTTAAAGATGGCACTTGTGGCTTAGTAGAAG
+TTGAAAAAGGCGTTTTGCCTCAACTTGAACAGCCCTATGTGTTCATCAAACGTTCGGATG
+CTCGAACTGCACCTCATGGTCATGTTATGGTTGAGCTGGTAGCAGAACTCGAAGGCATTC
+AGTACGGTCGTAGTGGTGAGACACTTGGTGTCCTTGTCCCTCATGTGGGCGAAATACCAG
+TGGCTTACCGCAAGGTTCTTCTTCGTAAGAACGGTAATAAAGGAGCTGGTGGCCATAGTT
+ACGGCGCCGATCTAAAGTCATTTGACTTAGGCGACGAGCTTGGCACTGATCCTTATGAAG
+ATTTAAGATGGCACTTGTGGCTTAGTAGAAGTTGAAAAAGGCGTTTTGCCTCAACTTGAA
+CAGCCCTATGTGTTCATCAAACGTTCGGATGCTCGAACTGCACCTCCTGGTCATGTTGAG
+CTGGTAGCAGAACTCGAAGGCATTCAGTACGGTCGTAGTGGTGAGACAC
b
diff -r 000000000000 -r 32ab23671cc1 test-data/covid.fastq.gz
b
Binary file test-data/covid.fastq.gz has changed
b
diff -r 000000000000 -r 32ab23671cc1 test-data/ecoli_1K.fasta.gz
b
Binary file test-data/ecoli_1K.fasta.gz has changed
b
diff -r 000000000000 -r 32ab23671cc1 test-data/ecoli_1K.fastq.gz
b
Binary file test-data/ecoli_1K.fastq.gz has changed
b
diff -r 000000000000 -r 32ab23671cc1 test-data/ecoli_1K_1.fasta.gz
b
Binary file test-data/ecoli_1K_1.fasta.gz has changed
b
diff -r 000000000000 -r 32ab23671cc1 test-data/ecoli_1K_1.fastq.gz
b
Binary file test-data/ecoli_1K_1.fastq.gz has changed
b
diff -r 000000000000 -r 32ab23671cc1 test-data/ecoli_1K_2.fasta.gz
b
Binary file test-data/ecoli_1K_2.fasta.gz has changed
b
diff -r 000000000000 -r 32ab23671cc1 test-data/ecoli_1K_2.fastq.gz
b
Binary file test-data/ecoli_1K_2.fastq.gz has changed
b
diff -r 000000000000 -r 32ab23671cc1 test-data/pl1.fq.gz
b
Binary file test-data/pl1.fq.gz has changed
b
diff -r 000000000000 -r 32ab23671cc1 test-data/pl2.fq.gz
b
Binary file test-data/pl2.fq.gz has changed