Repository 'velvet'
hg clone https://toolshed.g2.bx.psu.edu/repos/devteam/velvet

Changeset 1:5da9a0e2fb2d (2020-02-12)
Previous changeset 0:08256557922f (2015-10-13) Next changeset 2:8d09f8be269e (2020-06-16)
Commit message:
"planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tools/velvet commit 8301d37348be25a038b3c63b049b1178d05f5003"
modified:
velvetg.xml
velveth.xml
removed:
tool_dependencies.xml
velvetg_wrapper.py
velveth_wrapper.py
b
diff -r 08256557922f -r 5da9a0e2fb2d tool_dependencies.xml
--- a/tool_dependencies.xml Tue Oct 13 16:38:28 2015 -0400
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
b
@@ -1,6 +0,0 @@
-<?xml version="1.0"?>
-<tool_dependency>
-    <package name="velvet" version="1.2.10">
-      <repository changeset_revision="93d32326537b" name="package_velvet_1_2_10" owner="devteam" toolshed="https://toolshed.g2.bx.psu.edu" />
-    </package>
-</tool_dependency>
b
diff -r 08256557922f -r 5da9a0e2fb2d velvetg.xml
--- a/velvetg.xml Tue Oct 13 16:38:28 2015 -0400
+++ b/velvetg.xml Wed Feb 12 11:16:32 2020 -0500
[
b'@@ -1,76 +1,79 @@\n-<tool id="velvetg" name="velvetg" version="@WRAPPER_VERSION@.0">\n+<tool id="velvetg" name="velvetg" version="@WRAPPER_VERSION@.1">\n   <description>Velvet sequence assembler for very short reads</description>\n-  <version_command>velvetg 2&gt;&amp;1 | grep "Version" | sed -e \'s/Version //\'</version_command>\n   <macros>\n     <import>macros.xml</import>\n   </macros>\n   <expand macro="requirements"/>\n   <expand macro="stdio"/>\n-  <command interpreter="python">\n-    velvetg_wrapper.py\n-           \'$input.extra_files_path\'\n-           #if $generate_amos.afg  == "yes":\n-               -amos_file $generate_amos.afg\n-           #end if\n-           #if $unused_reads.generate_unused  == "yes":\n-               -unused_reads $unused_reads.generate_unused\n-           #end if\n-           $read_trkg\n-           #if $coverage.cutoff == "auto":\n-               -cov_cutoff auto\n-           #elif $coverage.cutoff == "value":\n-               -cov_cutoff $coverage.cov_cutoff\n-           #end if\n-           #if $expected.coverage == "auto":\n-               -exp_cov auto\n-           #elif $expected.coverage == "value":\n-               -exp_cov $expected.exp_cov\n-           #end if\n-           #if $contig_lgth.use_contig_lgth == "yes":\n-               -min_contig_lgth $contig_lgth.min_contig_lgth\n-           #end if\n-           #if $reads.paired == "yes":\n-               #if int($reads.ins_length) > 0:\n-                   -ins_length $reads.ins_length\n-               #end if\n-               #if $reads.options.advanced == "yes":\n-                   #if int($reads.options.ins_length_sd) > 0:\n-                       -ins_length_sd $reads.options.ins_length_sd\n-                   #end if\n-                   #if int($reads.options.ins_length2) > 0:\n-                       -ins_length2 $reads.options.ins_length2\n-                   #end if\n-                   #if int($reads.options.ins_length2_sd) > 0:\n-                       -ins_length2_sd $reads.options.ins_length2_sd\n-                   #end if\n-                   #if int($reads.options.ins_length_long) > 0:\n-                       -ins_length_long $reads.options.ins_length_long\n-                   #end if\n-                   #if int($reads.options.ins_length_long_sd) > 0:\n-                       -ins_length_long_sd $reads.options.ins_length_long_sd\n-                   #end if\n-                   #if int($reads.options.max_branch_length) > 0:\n-                       -max_branch_length $reads.options.max_branch_length\n-                   #end if\n-                   #if int($reads.options.max_divergence) > 0:\n-                       -max_divergence $reads.options.max_divergence\n-                   #end if\n-                   #if int($reads.options.max_gap_count) > 0:\n-                       -max_gap_count $reads.options.max_gap_count\n-                   #end if\n-                   #if int($reads.options.min_pair_count) > 0:\n-                       -min_pair_count $reads.options.min_pair_count\n-                   #end if\n-                   #if int($reads.options.max_coverage) > 0:\n-                       -max_coverage $reads.options.max_coverage\n-                   #end if\n-                   #if int($reads.options.long_mult_cutoff) > 0:\n-                       -long_mult_cutoff $reads.options.long_mult_cutoff\n-                   #end if\n-                   $reads.options.scaffolding\n-               #end if\n-           #end if\n-  </command>\n+  <version_command><![CDATA[\n+    velvetg 2>&1 | grep "Version" | sed -e \'s/Version //\'\n+  ]]></version_command>\n+  <command><![CDATA[\n+ln -s \'$input.extra_files_path\'/Roadmaps &&\n+ln -s \'$input.extra_files_path\'/Sequences &&\n+velvetg .\n+#if $generate_amos.afg  == "yes":\n+    -amos_file $generate_amos.afg\n+#end if\n+#if $unused_reads.generate_unused  == "yes":\n+    -unused_reads $unused_reads.generate_unused\n+#end if\n+$read_trkg\n+#if $coverage.cutoff == "auto":\n+    -cov_cutoff auto\n+#elif $coverage.cutoff == "value":\n+    -cov_cutoff $coverage.cov_c'..b'_sd) > 0:\n+            -ins_length_long_sd $reads.options.ins_length_long_sd\n+        #end if\n+        #if int($reads.options.max_branch_length) > 0:\n+            -max_branch_length $reads.options.max_branch_length\n+        #end if\n+        #if int($reads.options.max_divergence) > 0:\n+            -max_divergence $reads.options.max_divergence\n+        #end if\n+        #if int($reads.options.max_gap_count) > 0:\n+            -max_gap_count $reads.options.max_gap_count\n+        #end if\n+        #if int($reads.options.min_pair_count) > 0:\n+            -min_pair_count $reads.options.min_pair_count\n+        #end if\n+        #if int($reads.options.max_coverage) > 0:\n+            -max_coverage $reads.options.max_coverage\n+        #end if\n+        #if int($reads.options.long_mult_cutoff) > 0:\n+            -long_mult_cutoff $reads.options.long_mult_cutoff\n+        #end if\n+        $reads.options.scaffolding\n+    #end if\n+#end if\n+  ]]></command>\n   <inputs>\n     <param name="input" type="data" format="velvet" label="Velvet Dataset" help="Prepared by velveth."/>\n     <conditional name="generate_amos">\n@@ -142,7 +145,7 @@\n     <conditional name="reads">\n       <param name="paired" type="select" label="Using Paired Reads">\n         <option value="no">No</option>\n-        <option value="yes" selected="${input.metadata.paired_end_reads}">Yes</option>\n+        <option value="yes">Yes</option>\n       </param>\n       <when value="no"/>\n       <when value="yes">\n@@ -188,15 +191,12 @@\n     <data format="tabular" name="stats" label="${tool.name} on ${on_string}: Stats" from_work_dir="stats.txt" />\n     <data format="fasta" name="contigs" label="${tool.name} on ${on_string}: Contigs" from_work_dir="contigs.fa" />\n   </outputs>\n-  <requirements>\n-    <requirement type="package">velvet</requirement>\n-  </requirements>\n   <tests>\n     <test>\n-      <param name="input" value="velveth_test1/output.html" ftype="velvet" >\n-        <composite_data value=\'velveth_test1/Sequences\' ftype="Sequences"/>\n-        <composite_data value=\'velveth_test1/Roadmaps\' ftype="Roadmaps"/>\n-        <composite_data value=\'velveth_test1/Log\'/>\n+      <param name="input" value="velveth_test1/output.html" ftype="velvet">\n+        <composite_data value="velveth_test1/Sequences" />\n+        <composite_data value="velveth_test1/Roadmaps" />\n+        <composite_data value="velveth_test1/Log"/>\n       </param>\n       <param name="afg" value="yes" />\n       <param name="generate_unused" value="yes" />\n@@ -207,15 +207,15 @@\n       <param name="use_contig_lgth" value="no" />\n       <param name="paired" value="no" />\n       <!--\n-      <output name="LastGraph" file="velvetg_test1/lastgraph.txt" compare="diff"/>\n+      <output name="LastGraph" file="velvetg_test1/lastgraph.txt"/>\n       -->\n-      <output name="velvet_asm" file="velvetg_test1/amos.afg" compare="diff"/>\n-      <output name="unused_reads_fasta" file="velvetg_test1/unusedreads.fa" compare="diff"/>\n-      <output name="stats" file="velvetg_test1/stats.csv" compare="diff"/>\n-      <output name="contigs" file="velvetg_test1/contigs.fa" compare="diff"/>\n+      <output name="velvet_asm" file="velvetg_test1/amos.afg" />\n+      <output name="unused_reads_fasta" file="velvetg_test1/unusedreads.fa" />\n+      <output name="stats" file="velvetg_test1/stats.csv" />\n+      <output name="contigs" file="velvetg_test1/contigs.fa" />\n     </test>\n   </tests>\n-  <help>\n+  <help><![CDATA[\n **What it does**\n \n Velvet_ is a de novo genomic assembler specially designed for short read sequencing technologies, such as Solexa or 454, developed by Daniel Zerbino and Ewan Birney at the European Bioinformatics Institute (EMBL-EBI), near Cambridge, in the United Kingdom.\n@@ -302,6 +302,6 @@\n         directory/LastGraph              : special formatted file with all the information on the final graph\n         directory/velvet_asm.afg         : (if requested) AMOS compatible assembly file\n \n-  </help>\n+  ]]></help>\n   <expand macro="citation"/>\n </tool>\n'
b
diff -r 08256557922f -r 5da9a0e2fb2d velvetg_wrapper.py
--- a/velvetg_wrapper.py Tue Oct 13 16:38:28 2015 -0400
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
[
@@ -1,46 +0,0 @@
-#!/usr/bin/env python
-
-"""
-Classes encapsulating decypher tool.
-James E Johnson - University of Minnesota
-"""
-import os
-import sys
-import subprocess
-
-assert sys.version_info[:2] >= ( 2, 4 )
-
-def stop_err( msg ):
-    sys.stderr.write( "%s\n" % msg )
-    sys.exit()
-
-
-def __main__():
-    #Parse Command Line
-    working_dir = sys.argv[1]
-    inputs = ' '.join(sys.argv[2:])
-    for _ in ('Roadmaps', 'Sequences'):
-        os.symlink(os.path.join(working_dir, _), _)
-    cmdline = 'velvetg . %s' % (inputs)
-    print "Command to be executed: %s" % cmdline
-    try:
-        proc = subprocess.Popen( args=cmdline, shell=True, stderr=subprocess.PIPE )
-        returncode = proc.wait()
-        # get stderr, allowing for case where it's very large
-        stderr = ''
-        buffsize = 1048576
-        try:
-            while True:
-                stderr += proc.stderr.read( buffsize )
-                if not stderr or len( stderr ) % buffsize != 0:
-                    break
-        except OverflowError:
-            pass
-        if returncode != 0:
-            raise Exception, stderr
-    except Exception, e:
-        stop_err( 'Error running velvetg ' + str( e ) )
-
-
-if __name__ == "__main__":
-    __main__()
b
diff -r 08256557922f -r 5da9a0e2fb2d velveth.xml
--- a/velveth.xml Tue Oct 13 16:38:28 2015 -0400
+++ b/velveth.xml Wed Feb 12 11:16:32 2020 -0500
[
@@ -1,24 +1,27 @@
-<tool id="velveth" name="velveth" version="@WRAPPER_VERSION@.0">
+<tool id="velveth" name="velveth" version="@WRAPPER_VERSION@.1">
   <description>Prepare a dataset for the Velvet velvetg Assembler</description>
-  <version_command>velveth 2&gt;&amp;1 | grep "Version" | sed -e 's/Version //'</version_command>
   <macros>
     <import>macros.xml</import>
   </macros>
   <expand macro="requirements"/>
   <expand macro="stdio"/>
-  <command interpreter="python">
-    velveth_wrapper.py
-           '$out_file1' '$out_file1.extra_files_path'
-           $hash_length
-           $strand_specific
-           #for $i in $inputs
-                ${i.file_format}
-                ${i.read_type}
-                ${i.input}
-           #end for
-  </command>
+  <version_command><![CDATA[
+    velveth 2>&1 | grep "Version" | sed -e 's/Version //'
+  ]]></version_command>
+  <command><![CDATA[
+mkdir -p '${out_file1.extra_files_path}' &&
+velveth
+'${out_file1.extra_files_path}'
+$hash_length
+$strand_specific
+#for $i in $inputs
+    ${i.file_format}
+    ${i.read_type}
+    '${i.input}'
+#end for
+  ]]></command>
   <inputs>
-    <param label="Hash Length" name="hash_length" type="select" help="k-mer length in base pairs of the words being hashed.">
+    <param name="hash_length" type="select" label="Hash length" help="k-mer length in base pairs of the words being hashed">
       <option value="11">11</option>
       <option value="13">13</option>
       <option value="15">15</option>
@@ -29,6 +32,87 @@
       <option value="25">25</option>
       <option value="27">27</option>
       <option value="29">29</option>
+      <option value="31">31</option>
+      <option value="33">33</option>
+      <option value="35">35</option>
+      <option value="37">37</option>
+      <option value="39">39</option>
+      <option value="41">41</option>
+      <option value="43">43</option>
+      <option value="45">45</option>
+      <option value="47">47</option>
+      <option value="49">49</option>
+      <option value="51">51</option>
+      <option value="53">53</option>
+      <option value="55">55</option>
+      <option value="57">57</option>
+      <option value="59">59</option>
+      <option value="61">61</option>
+      <option value="63">63</option>
+      <option value="65">65</option>
+      <option value="67">67</option>
+      <option value="69">69</option>
+      <option value="71">71</option>
+      <option value="73">73</option>
+      <option value="75">75</option>
+      <option value="77">77</option>
+      <option value="79">79</option>
+      <option value="81">81</option>
+      <option value="83">83</option>
+      <option value="85">85</option>
+      <option value="87">87</option>
+      <option value="89">89</option>
+      <option value="91">91</option>
+      <option value="93">93</option>
+      <option value="95">95</option>
+      <option value="97">97</option>
+      <option value="99">99</option>
+      <option value="101">101</option>
+      <option value="103">103</option>
+      <option value="105">105</option>
+      <option value="107">107</option>
+      <option value="109">109</option>
+      <option value="111">111</option>
+      <option value="113">113</option>
+      <option value="115">115</option>
+      <option value="117">117</option>
+      <option value="119">119</option>
+      <option value="121">121</option>
+      <option value="123">123</option>
+      <option value="125">125</option>
+      <option value="127">127</option>
+      <option value="129">129</option>
+      <option value="131">131</option>
+      <option value="133">133</option>
+      <option value="135">135</option>
+      <option value="137">137</option>
+      <option value="139">139</option>
+      <option value="141">141</option>
+      <option value="143">143</option>
+      <option value="145">145</option>
+      <option value="147">147</option>
+      <option value="149">149</option>
+      <option value="151">151</option>
+      <option value="153">153</option>
+      <option value="155">155</option>
+      <option value="157">157</option>
+      <option value="159">159</option>
+      <option value="161">161</option>
+      <option value="163">163</option>
+      <option value="165">165</option>
+      <option value="167">167</option>
+      <option value="169">169</option>
+      <option value="171">171</option>
+      <option value="173">173</option>
+      <option value="175">175</option>
+      <option value="177">177</option>
+      <option value="179">179</option>
+      <option value="181">181</option>
+      <option value="183">183</option>
+      <option value="185">185</option>
+      <option value="187">187</option>
+      <option value="189">189</option>
+      <option value="191">191</option>
     </param>
     <param name="strand_specific" type="boolean" checked="false" truevalue="-strand_specific" falsevalue="" label="Use strand specific transcriptome sequencing" help="If you are using a strand specific transcriptome sequencing protocol, you may wish to use this option for better results."/>
     <repeat name="inputs" title="Input Files">
@@ -51,11 +135,8 @@
     </repeat>
   </inputs>
   <outputs>
-    <data format="velvet" name="out_file1" />
+    <data name="out_file1" format="velvet" />
   </outputs>
-  <requirements>
-    <requirement type="package">velvet</requirement>
-  </requirements>
   <tests>
     <test>
       <param name="hash_length" value="21" />
@@ -67,13 +148,12 @@
       <!-- </repeat> -->
       <param name="strand_specific" value="" />
       <output name="out_file1" file="velveth_test1/output.html" lines_diff="4">
-        <extra_files type="file" name='Sequences' value="velveth_test1/Sequences" compare="diff" />
-        <extra_files type="file" name='Roadmaps' value="velveth_test1/Roadmaps" compare="diff" />
+        <extra_files type="file" name="Sequences" value="velveth_test1/Sequences" />
+        <extra_files type="file" name="Roadmaps" value="velveth_test1/Roadmaps" />
       </output>
     </test>
   </tests>
-  <help>
-
+  <help><![CDATA[
 **What it does**
 
 Velvet_ is a de novo genomic assembler specially designed for short read sequencing technologies, such as Solexa or 454, developed by Daniel Zerbino and Ewan Birney at the European Bioinformatics Institute (EMBL-EBI), near Cambridge, in the United Kingdom.
@@ -130,7 +210,6 @@
   shortPaired2 (see above)
   long (for Sanger, 454 or even reference sequences)
   longPaired
-
-  </help>
+  ]]></help>
   <expand macro="citation"/>
 </tool>
b
diff -r 08256557922f -r 5da9a0e2fb2d velveth_wrapper.py
--- a/velveth_wrapper.py Tue Oct 13 16:38:28 2015 -0400
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
[
@@ -1,65 +0,0 @@
-#!/usr/bin/env python
-
-"""
-Classes encapsulating decypher tool.
-James E Johnson - University of Minnesota
-"""
-import pkg_resources
-import logging, os, string, sys, tempfile, glob, shutil, types, urllib
-import shlex, subprocess
-from optparse import OptionParser, OptionGroup
-from stat import *
-
-
-log = logging.getLogger( __name__ )
-
-assert sys.version_info[:2] >= ( 2, 4 )
-
-def stop_err( msg ):
-    sys.stderr.write( "%s\n" % msg )
-    sys.exit()
-
-def __main__():
-    #Parse Command Line
-    s = 'velveth_wrapper.py:  argv = %s\n' % (sys.argv)
-    argcnt = len(sys.argv)
-    html_file = sys.argv[1]
-    working_dir = sys.argv[2]
-    try: # for test - needs this done
-        os.makedirs(working_dir)
-    except Exception, e:
-        stop_err( 'Error running velveth ' + str( e ) )
-    hash_length = sys.argv[3]
-    inputs = string.join(sys.argv[4:],' ')
-    cmdline = 'velveth %s %s %s > /dev/null' % (working_dir, hash_length, inputs)
-    try:
-        proc = subprocess.Popen( args=cmdline, shell=True, stderr=subprocess.PIPE )
-        returncode = proc.wait()
-        # get stderr, allowing for case where it's very large
-        stderr = ''
-        buffsize = 1048576
-        try:
-            while True:
-                stderr += proc.stderr.read( buffsize )
-                if not stderr or len( stderr ) % buffsize != 0:
-                    break
-        except OverflowError:
-            pass
-        if returncode != 0:
-            raise Exception, stderr
-    except Exception, e:
-        stop_err( 'Error running velveth ' + str( e ) )
-    sequences_path = os.path.join(working_dir,'Sequences')
-    roadmaps_path = os.path.join(working_dir,'Roadmaps')
-    rval = ['<html><head><title>Velvet Galaxy Composite Dataset </title></head><p/>']
-    rval.append('<div>%s<p/></div>' % (cmdline) )
-    rval.append('<div>This composite dataset is composed of the following files:<p/><ul>')
-    rval.append( '<li><a href="%s" type="text/plain">%s </a>%s</li>' % (sequences_path,'Sequences','Sequences' ) )
-    rval.append( '<li><a href="%s" type="text/plain">%s </a>%s</li>' % (roadmaps_path,'Roadmaps','Roadmaps' ) )
-    rval.append( '</ul></div></html>' )
-    f = file(html_file,'w')
-    f.write("\n".join( rval ))
-    f.write('\n')
-    f.close()
-
-if __name__ == "__main__": __main__()