# HG changeset patch
# User yhoogstrate
# Date 1456332414 18000
# Node ID 37198dc9311c43903ad7c8862380e3553ab46018
# Parent bf022d3751fa8ecd02942a85d94159f10165379a
planemo upload for repository https://github.com/ErasmusMC-Bioinformatics/unafold_galaxy_wrapper commit 3d01452f19416679047a05e4c0a05c15d11f34ea
diff -r bf022d3751fa -r 37198dc9311c README.rst
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/README.rst Wed Feb 24 11:46:54 2016 -0500
@@ -0,0 +1,78 @@
+# UNAFold Galaxy wrapper #
+
+# License #
+
+UNAFold 3.x ACADEMIC NON-COMMERCIAL USE LICENSE AGREEMENT
+
+1. UNAFold 3.x is the work of Drs. Nicholas R. Markham and Michael Zuker. The
+ copyright in UNAFold 3.x is owned by RENSSELAER POLYTECHNIC INSTITUTE.
+
+2. This is a legal agreement between you, RECIPIENT, and RENSSELAER POLYTECHNIC
+ INSTITUTE. By accepting, receiving, and using UNAFold 3.x, you agree to be
+ bound by all of its terms. If you do not agree to all of the terms of this
+ Agreement, please DO NOT download the software; or, if you have already done
+ so, please delete all of the source code, documentation and compiled programs
+ associated with UNAFold 3.x.
+
+3. UNAFold 3.x is provided to RECIPIENT as source code. RENSSELAER POLYTECHNIC
+ INSTITUTE grants to RECIPIENT a royalty free, non-exclusive, and non-
+ transferable license to compile, install, use UNAFold for internal research
+ only. RECIPIENT acknowledges that UNAFold 3.x is a research tool that is
+ provided free of charge and only provided "as is." RENSSELAER POLYTECHNIC
+ INSTITUTE, its faculty, employees, or students, or former employees who have
+ developed UNAFold 3.x, have no obligation to assist RECIPIENT in its use,
+ correction, modification, or enhancement and are without any obligation to
+ provide any updates. RECIPIENT may also offer UNAFold 3.x to the public over
+ a web server provided the program resides on a server at RECIPIENT's
+ institution and users are not able to download or modify the program.
+
+4. The title and copyright to UNAFold 3.x and any associated programs and
+ documentation shall remain with RENSSELAER POLYTECHNIC INSTITUTE. RECIPIENT
+ agrees to preserve same. RECIPIENT agrees not to make any copies of UNAFold
+ except for use in RECIPIENT's laboratory without RENSSELAER POLYTECHNIC
+ INSTITUTE's prior written permission. Written permission can be obtained by
+ contacting Rensselaer Polytechnic Institute's Office of Technology
+ Commercialization by e-mail at burtok2@rpi.edu, or by telephone at 518-276-
+ 3675. RECIPIENT agrees to place the appropriate copyright notice on any such
+ copies.
+
+5. RECIPIENT may not modify UNAFold 3.x, except to fix minor errors, or create
+ derivative works without RENSSELAER POLYTECHNIC INSTITUTE's permission.
+ Please send all requests for modification to markhn@rpi.edu and
+ zukerm@rpi.edu. Errors and bugs that are found should be reported to Nick
+ Markham and Michael Zuker, whether or not they are corrected.
+
+6. RECIPIENT shall not distribute UNAFold 3.x to other laboratories within
+ RECIPIENT's institution. RECIPIENT shall not transfer UNAFold 3.x to another
+ location or person outside of RECIPIENT's institution without RENSSELAER
+ POLYTECHNIC INSTITUTE's prior written permission. Please send all requests
+ for distribution to markhn@rpi.edu and zukerm@rpi.edu.
+
+7. If RENSSELAER POLYTECHNIC INSTITUTE grants RECIPIENT permission to distribute
+ UNAFold 3.x, under Paragraph 6, RECIPIENT shall only export UNAFold 3.x or
+ any part thereof, directly or indirectly, to any country where such export or
+ reexport is authorized in full compliance with the laws of the United States
+ of America.
+
+8. RECIPENT shall cite the following publications in any abstract, paper, or
+ presentation referencing UNAFold:
+
+a. N. Markham & M. Zuker. (2003) DINAMelt web server for nucleic acid melting
+ prediction. Nucleic Acids Res. 33:W577-W581.
+
+9. RECIPIENT acknowledges that as UNAFold 3.x is a research tool and provided
+ free of charge, it is only provided "as is." RENSSELAER POLYTECHNIC
+ INSTITUTE, its faculty, employees, or students, have no obligation to assist
+ RECIPIENT in its use, correction, modification, or enhancement and are
+ without any obligation to provide any updates.
+
+10. RENSSELAER POLYTECHNIC INSTITUTE MAKES NO REPRESENTATIONS AND EXTENDS NO
+ WARRANTIES OF ANY KIND, EITHER EXPRESS OR IMPLIED. THERE ARE NO EXPRESS OR
+ IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS OF UNAFold 3.x FOR A
+ PARTICULAR PURPOSE, OR THAT THE USE OF UNAFold 3.x WILL NOT INFRINGE ANY
+ PATENT, COPYRIGHT, TRADEMARK, TRADE SECRET, OR OTHER INTELLECTUAL PROPERTY
+ RIGHTS OF ANOTHER PARTY, OR ANY OTHER EXPRESS OR IMPLIED WARRANTIES.
+ RENSSELAER POLYTECHNIC INSTITUTE WILL NOT BE LIABLE TO RECIPIENT FOR ANY
+ CLAIMS OR DAMAGES ARISING FROM YOUR RECIPIENT'S OF UNAFold 3.x, ANY CLAIM
+ FOR ANY LOSS OR INTERRUPTION OF BUSINESS, OR FOR ANY INDIRECT, SPECIAL, OR
+ CONSEQUENTIAL DAMAGES OF ANY KIND.
\ No newline at end of file
diff -r bf022d3751fa -r 37198dc9311c datatypes_conf.xml
--- a/datatypes_conf.xml Tue Jun 16 11:21:12 2015 -0400
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,25 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff -r bf022d3751fa -r 37198dc9311c lib/galaxy/datatypes/RNAStructure.py
--- a/lib/galaxy/datatypes/RNAStructure.py Tue Jun 16 11:21:12 2015 -0400
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,132 +0,0 @@
-import logging
-log = logging.getLogger(__name__)
-
-from galaxy import util
-import galaxy
-import galaxy.model
-import galaxy.datatypes
-import galaxy.datatypes.data
-
-from galaxy.datatypes.metadata import MetadataElement
-
-from galaxy.datatypes.sequence import Sequence
-from galaxy.datatypes.tabular import Tabular
-from galaxy.datatypes.xml import GenericXml
-
-from galaxy.datatypes.data import Data
-
-
-import re
-
-class DotBracket ( Sequence ):
- edam_format = "format_1457"
- file_ext = "dbn"
-
- sequence_regexp = re.compile( "^[ACGTURYKMSWBDHVN]*" )
- structure_regexp = re.compile( "^[\(\)\.]*" )
-
- def set_meta( self, dataset, **kwd ):
- """
- Set the number of sequences and the number of data lines
- in dataset.
- """
- if self.max_optional_metadata_filesize >= 0 and dataset.get_size() > self.max_optional_metadata_filesize:
- dataset.metadata.data_lines = None
- dataset.metadata.sequences = None
- dataset.metadata.seconday_structures = None
- return
-
- data_lines = 0
- sequences = 0
-
- for line in file( dataset.file_name ):
- line = line.strip()
- data_lines += 1
-
- if line and line.startswith( '>' ):
- sequences += 1
-
- dataset.metadata.data_lines = data_lines
- dataset.metadata.sequences = sequences
-
- def sniff(self, filename):
- """
- The format is as follows, although it remains unclear whether
- the Dot-Bracket format may contain multiple sequences per file:
-
- >sequenceName1
- CCCaaaGGG
- (((...)))
- >sequenceName2
- GGGuuuCCC
- (((...)))
- """
-
- i = 0
- pairs = False
-
- with open( filename ) as handle:
- for line in handle:
- line = line.strip()
-
- state = i % 3
-
- if state == 0:#header line
- if(line[0] != '>'):
- return False
- elif state == 1:#sequence line
- if not sequence_regexp.match(line.upper()):
- return False
- else:
- sequence_size = len(line)
- elif state == 2:#dot-bracket structure line
- if (sequence_size != len(line)) or (not structure_regexp.match(line)):
- return False
-
- i += 1
- return True
-
-class ConnectivityTable( Tabular ):
- edam_format = "format_3309"
- file_ext = "ct"
-
- header_regexp = re.compile( "^[0-9]+" + "(?:\t|[ ]+)" + "[^ \t]+")
- structure_regexp = re.compile( "^[0-9]+" + "(?:\t|[ ]+)" + "[ACGTURYKMSWBDHVN]+" + "(?:\t|[ ]+)" + "[^\t]+" + "(?:\t|[ ]+)" + "[^\t]+" + "(?:\t|[ ]+)" + "[^\t]+" + "(?:\t|[ ]+)" + "[^\t]+")
-
- def __init__(self, **kwd):
- Tabular.__init__( self, **kwd )
-
- self.columns = 6
- self.column_names = ['base_index', 'base', 'neighbor_left', 'neighbor_right', 'partner', 'natural_numbering']
- self.column_types = ['int', 'str', 'int', 'int', 'int', 'int']
-
- def set_meta( self, dataset, **kwd ):
- data_lines = 0
-
- for line in file( dataset.file_name ):
- data_lines += 1
-
- dataset.metadata.data_lines = data_lines
-
- def sniff(self, filename):
-
- filename = filename.file_name
-
- i = 0
- with open( filename ) as handle:
- for line in handle:
- line = line.strip()
-
- if(i == 0):
- if not self.header_regexp.match(line):
- return False
- else:
- if not self.structure_regexp.match(line.upper()):
- return False
- i += 1
- return True
-
-
-class RNAML( GenericXml ):
- edam_format = "format_3311"
- file_ext = "rnaml"
diff -r bf022d3751fa -r 37198dc9311c unafold.xml
--- a/unafold.xml Tue Jun 16 11:21:12 2015 -0400
+++ b/unafold.xml Wed Feb 24 11:46:54 2016 -0500
@@ -1,34 +1,54 @@
-
+
UNAFold RNA and DNA structure prediction
-
+
unafold
-
+
-
+
UNAFold.pl --version
-
-
+
+ Sequence" > "input.fasta" &&
+ echo "${input_source.input_sequence}" >> "input.fasta" &&
+ #end if
+
UNAFold.pl
-n $n.a
-t $temp
-
#if $n.a == "DNA"
-N $sodium
-M $magnesium
#end if
+
+ #if str($input_source.select_fasta) == "false"
+ "input.fasta"
+ #else
+ "${input_source.input_file}"
+ #end if
+ &&
- $input_file &&
- output=\$(ls | grep \.ct | sort -r | head -n 1) &&
+ output=\$(ls | grep \.ct | sort -r | head -n 1) &&
+
mv "\$output" "$output_ct"
-
-
+ ]]>
+
-
+
+
+
+
+
+
+
+
+
+
@@ -46,55 +66,87 @@
-
+
-
+
-
+
+
+
+
+
+
+
+
+
-
- Usage: UNAFold.pl [options] file [file]
+ (defaults to 37)``
+
+``-N, --sodium=<[Na+] in M> (defaults to 1)``
+
+``-M, --magnesium=<[Mg++] in M> (defaults to 0)``
+
+``-p, --polymer``
+
+``-C, --Ct=``
+
+``-I, --noisolate``
+
+``-m, --maxbp=``
+
+``-c, --constraints= (defaults to prefix.aux)``
+
+``-P, --percent= (defaults to 5)``
+
+``-W, --window= (default set by sequence length)``
- Options:
- -V, --version
- -h, --help
- -n, --NA=(RNA | DNA) (defaults to RNA)
- -t, --temp=<temperature> (defaults to 37)
- -N, --sodium=<[Na+] in M> (defaults to 1)
- -M, --magnesium=<[Mg++] in M> (defaults to 0)
- -p, --polymer
- -C, --Ct=<total strand concentration>
- -I, --noisolate
- -m, --maxbp=<maximum basepair distance>
- -c, --constraints=<name of constraints file> (defaults to prefix.aux)
- -P, --percent=<energy increment percent> (defaults to 5)
- -W, --window=<window size> (default set by sequence length)
- -X, --max=<maximum number of foldings> (defaults to 100)
- --ann=(none | p-num | ss-count) (defaults to none)
- --mode=(auto | bases | lines) (defaults to auto)
- --label=<base numbering frequency>
- --rotate=<structure rotation angle>
- --run-type=(text | html) (defaults to text)
- --model=(EM | PF) (defaults to EM)
- --circular
- Obscure options:
- --allpairs
- --maxloop=<maximum bulge/interior loop size> (defaults to 30)
- --nodangle
- --simple
- --prefilter=<filter value>
+``-X, --max= (defaults to 100)``
+
+``--ann=(none | p-num | ss-count) (defaults to none)``
+
+``--mode=(auto | bases | lines) (defaults to auto)``
+
+``--label=``
+
+``--rotate=``
+
+``--run-type=(text | html) (defaults to text)``
+
+``--model=(EM | PF) (defaults to EM)``
- Report bugs to markhn@rpi.edu
-
-
+``--circular``
+
+``Obscure options:``
+
+``--allpairs``
+
+``--maxloop= (defaults to 30)``
+
+``--nodangle``
+
+``--simple``
+
+``--prefilter=``
+ ]]>
+
10.1007/978-1-60327-429-6_1