changeset 4:05696474ee89 draft

planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tool_collections/gops/cluster commit cae3e05d02e60f595bb8b6d77a84f030e9bd1689
author devteam
date Thu, 22 Jun 2017 18:40:19 -0400
parents 765ceb06c3e2
children a126ec6ea0e4
files cluster.xml gops_cluster.py macros.xml operation_filter.py tool_dependencies.xml
diffstat 5 files changed, 96 insertions(+), 92 deletions(-) [+]
line wrap: on
line diff
--- a/cluster.xml	Wed Nov 11 12:47:24 2015 -0500
+++ b/cluster.xml	Thu Jun 22 18:40:19 2017 -0400
@@ -1,80 +1,72 @@
 <tool id="gops_cluster_1" name="Cluster" version="1.0.0">
-  <description>the intervals of a dataset</description>
-  <requirements>
-    <requirement type="package" version="0.7.1">bx-python</requirement>
-    <requirement type="package" version="1.0.0">galaxy-ops</requirement>
-  </requirements>
-  <trackster_conf/>
-  <command interpreter="python">gops_cluster.py $input1 $output -1 ${input1.metadata.chromCol},${input1.metadata.startCol},${input1.metadata.endCol},${input1.metadata.strandCol} -d $distance -m $minregions -o $returntype</command>
-  <inputs>
-    <param format="interval" name="input1" type="data">
-      <label>Cluster intervals of</label>
-    </param>
-    <param name="distance" type="integer" value="1" help="(bp)">
-      <label>max distance between intervals</label>
-    </param>
-    <param name="minregions" type="integer" value="2">
-      <label>min number of intervals per cluster</label>
-    </param>
-	<param name="returntype" type="select" label="Return type">
-		<option value="1">Merge clusters into single intervals</option>
-		<option value="2">Find cluster intervals; preserve comments and order</option>
-		<option value="3">Find cluster intervals; output grouped by clusters</option>
-		<option value="4">Find the smallest interval in each cluster</option>
-		<option value="5">Find the largest interval in each cluster</option>
-	</param>
-   </inputs>
-  <outputs>
-    <data format="input" name="output" metadata_source="input1" />
-  </outputs>
-  <code file="operation_filter.py">
-    <hook exec_after_process="exec_after_cluster" />
-  </code>
-  <tests>
-    <test>
-      <param name="input1" value="5.bed" />
-      <param name="distance" value="1" />
-      <param name="minregions" value="2" />
-      <param name="returntype" value="1" />
-      <output name="output" file="gops-cluster-1.bed" />     
-    </test>
-    <test>
-      <param name="input1" value="gops_cluster_bigint.bed" />
-      <param name="distance" value="1" />
-      <param name="minregions" value="2" />
-      <param name="returntype" value="1" />
-      <output name="output" file="gops-cluster-1.bed" />     
-    </test>
-    <test>
-      <param name="input1" value="5.bed" />
-      <param name="distance" value="1" />
-      <param name="minregions" value="2" />
-      <param name="returntype" value="2" />
-      <output name="output" file="gops-cluster-2.bed" />     
-    </test>    
-    <test>
-      <param name="input1" value="5.bed" />
-      <param name="distance" value="1" />
-      <param name="minregions" value="2" />
-      <param name="returntype" value="3" />
-      <output name="output" file="gops-cluster-3.bed" />     
-    </test>
-  </tests>
-  <help>
-
+    <description>the intervals of a dataset</description>
+    <macros>
+        <import>macros.xml</import>
+    </macros>
+    <expand macro="requirements" />
+    <code file="operation_filter.py">
+        <hook exec_after_process="exec_after_cluster" />
+    </code>
+    <command><![CDATA[
+python '$__tool_directory__/gops_cluster.py'
+'$input1'
+'$output'
+-1 ${input1.metadata.chromCol},${input1.metadata.startCol},${input1.metadata.endCol},${input1.metadata.strandCol}
+-d $distance
+-m $minregions
+-o $returntype
+    ]]></command>
+    <inputs>
+        <param name="input1" type="data" format="interval" label="Cluster intervals of" />
+        <param name="distance" type="integer" value="1" label="Max distance between intervals" help="(bp)" />
+        <param name="minregions" type="integer" value="2" label="Min number of intervals per cluster" />
+        <param name="returntype" type="select" label="Return type">
+            <option value="1">Merge clusters into single intervals</option>
+            <option value="2">Find cluster intervals; preserve comments and order</option>
+            <option value="3">Find cluster intervals; output grouped by clusters</option>
+            <option value="4">Find the smallest interval in each cluster</option>
+            <option value="5">Find the largest interval in each cluster</option>
+        </param>
+    </inputs>
+    <outputs>
+        <data name="output" format_source="input1" metadata_source="input1" />
+    </outputs>
+    <tests>
+        <test>
+            <param name="input1" value="5.bed" />
+            <param name="distance" value="1" />
+            <param name="minregions" value="2" />
+            <param name="returntype" value="1" />
+            <output name="output" file="gops-cluster-1.bed" />
+        </test>
+        <test>
+            <param name="input1" value="gops_cluster_bigint.bed" />
+            <param name="distance" value="1" />
+            <param name="minregions" value="2" />
+            <param name="returntype" value="1" />
+            <output name="output" file="gops-cluster-1.bed" />
+        </test>
+        <test>
+            <param name="input1" value="5.bed" />
+            <param name="distance" value="1" />
+            <param name="minregions" value="2" />
+            <param name="returntype" value="2" />
+            <output name="output" file="gops-cluster-2.bed" />
+        </test>
+        <test>
+            <param name="input1" value="5.bed" />
+            <param name="distance" value="1" />
+            <param name="minregions" value="2" />
+            <param name="returntype" value="3" />
+            <output name="output" file="gops-cluster-3.bed" />
+        </test>
+    </tests>
+    <help><![CDATA[
 .. class:: infomark
 
 **TIP:** If your dataset does not appear in the pulldown menu, it means that it is not in interval format. Use "edit attributes" to set chromosome, start, end, and strand columns.
 
------
-
-**Screencasts!**
-
-See Galaxy Interval Operation Screencasts_ (right click to open this link in another window).
-
-.. _Screencasts: http://wiki.g2.bx.psu.edu/Learn/Interval%20Operations
-
------
+@SCREENCASTS@
 
 **Syntax**
 
@@ -95,6 +87,5 @@
 Merge Clusters:
 
 .. image:: gops_clusterMerge.gif
-
-</help>
+    ]]></help>
 </tool>
--- a/gops_cluster.py	Wed Nov 11 12:47:24 2015 -0500
+++ b/gops_cluster.py	Thu Jun 22 18:40:19 2017 -0400
@@ -9,11 +9,14 @@
     -m, --minregions=N: Minimum regions per cluster
     -o, --output=N: 1)merged 2)filtered 3)clustered 4) minimum 5) maximum
 """
+from __future__ import print_function
+
 import fileinput
 import sys
+
+from bx.cookbook import doc_optparse
 from bx.intervals.io import GenomicInterval, NiceReaderWrapper
 from bx.intervals.operations.find_clusters import find_clusters
-from bx.cookbook import doc_optparse
 from bx.tabular.io import ParseError
 from galaxy.tools.util.galaxyops import fail, parse_cols_arg, skipped
 
@@ -50,7 +53,7 @@
     # Get the cluster tree
     try:
         clusters, extra = find_clusters( g1, mincols=distance, minregions=minregions)
-    except ParseError, exc:
+    except ParseError as exc:
         fail( "Invalid file format: %s" % str( exc ) )
 
     f1 = open( in_fname, "r" )
@@ -109,8 +112,8 @@
                                                             g1.strand_col,
                                                             g1.default_strand,
                                                             g1.fix_strand )
-                    except Exception, exc:
-                        print >> sys.stderr, str( exc )
+                    except Exception as exc:
+                        print(str( exc ), file=sys.stderr)
                         f1.close()
                         sys.exit()
                     interval_size = cluster_interval.end - cluster_interval.start
@@ -125,7 +128,8 @@
     out_file.close()
 
     if g1.skipped > 0:
-        print skipped( g1, filedesc="" )
+        print(skipped( g1, filedesc="" ))
+
 
 if __name__ == "__main__":
     main()
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/macros.xml	Thu Jun 22 18:40:19 2017 -0400
@@ -0,0 +1,20 @@
+<?xml version="1.0"?>
+<macros>
+    <xml name="requirements">
+        <requirements>
+            <requirement type="package" version="0.7.1">bx-python</requirement>
+            <requirement type="package" version="1.0.0">galaxy-ops</requirement>
+        </requirements>
+    </xml>
+    <token name="@SCREENCASTS@">
+-----
+
+**Screencasts!**
+
+See Galaxy Interval Operation Screencasts_ (right click to open this link in another window).
+
+.. _Screencasts: https://galaxyproject.org/learn/interval-operations/
+
+-----
+    </token>
+</macros>
--- a/operation_filter.py	Wed Nov 11 12:47:24 2015 -0500
+++ b/operation_filter.py	Thu Jun 22 18:40:19 2017 -0400
@@ -1,8 +1,7 @@
 # runs after the job (and after the default post-filter)
+from galaxy.jobs.handler import JOB_ERROR
 from galaxy.tools.parameters import DataToolParameter
 
-from galaxy.jobs.handler import JOB_ERROR
-
 # Older py compatibility
 try:
     set()
@@ -14,7 +13,7 @@
     dbkeys = set()
     data_param_names = set()
     data_params = 0
-    for name, param in page_param_map.iteritems():
+    for name, param in page_param_map.items():
         if isinstance( param, DataToolParameter ):
             # for each dataset parameter
             if param_values.get(name, None) is not None:
@@ -53,7 +52,6 @@
         try:
             if stderr and len( stderr ) > 0:
                 raise Exception( stderr )
-
         except Exception:
             data.blurb = JOB_ERROR
             data.state = JOB_ERROR
--- a/tool_dependencies.xml	Wed Nov 11 12:47:24 2015 -0500
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,9 +0,0 @@
-<?xml version="1.0"?>
-<tool_dependency>
-  <package name="bx-python" version="0.7.1">
-      <repository changeset_revision="2d0c08728bca" name="package_bx_python_0_7" owner="devteam" toolshed="https://toolshed.g2.bx.psu.edu" />
-    </package>
-    <package name="galaxy-ops" version="1.0.0">
-      <repository changeset_revision="9cbb20b85c01" name="package_galaxy_ops_1_0_0" owner="devteam" toolshed="https://toolshed.g2.bx.psu.edu" />
-    </package>
-</tool_dependency>