Mercurial > repos > devteam > coverage
changeset 4:ad25eb2c422d draft default tip
planemo upload for repository https://github.com/galaxyproject/tools-devteam/tree/master/tool_collections/gops/coverage commit cae3e05d02e60f595bb8b6d77a84f030e9bd1689
author | devteam |
---|---|
date | Thu, 22 Jun 2017 18:39:05 -0400 |
parents | 1cefc6012ffd |
children | |
files | coverage.xml gops_coverage.py macros.xml operation_filter.py tool_dependencies.xml |
diffstat | 5 files changed, 72 insertions(+), 67 deletions(-) [+] |
line wrap: on
line diff
--- a/coverage.xml Fri Dec 18 19:37:38 2015 -0500 +++ b/coverage.xml Thu Jun 22 18:39:05 2017 -0400 @@ -1,60 +1,53 @@ <tool id="gops_coverage_1" name="Coverage" version="1.0.0"> - <description>of a set of intervals on second set of intervals</description> - <requirements> - <requirement type="package" version="0.7.1">bx-python</requirement> - <requirement type="package" version="1.0.0">galaxy-ops</requirement> - </requirements> - <command interpreter="python">gops_coverage.py $input1 $input2 $output -1 ${input1.metadata.chromCol},${input1.metadata.startCol},${input1.metadata.endCol},${input1.metadata.strandCol} -2 ${input2.metadata.chromCol},${input2.metadata.startCol},${input2.metadata.endCol},${input2.metadata.strandCol}</command> - <inputs> - <param format="interval" name="input1" type="data" help="First dataset"> - <label>What portion of</label> - </param> - <param format="interval" name="input2" type="data" help="Second dataset"> - <label>is covered by</label> - </param> - </inputs> - <outputs> - <data format="interval" name="output" metadata_source="input1" /> - </outputs> - <code file="operation_filter.py"/> - <tests> - <test> - <param name="input1" value="1.bed" /> - <param name="input2" value="2.bed" /> - <output name="output" file="gops_coverage_out.interval" /> - </test> - <test> - <param name="input1" value="1.bed" /> - <param name="input2" value="2_mod.bed" ftype="interval"/> - <output name="output" file="gops_coverage_out_diffCols.interval" /> - </test> - <test> - <param name="input1" value="gops_bigint.interval" /> - <param name="input2" value="gops_bigint2.interval" /> - <output name="output" file="gops_coverage_out2.interval" /> - </test> - </tests> - <help> - + <description>of a set of intervals on second set of intervals</description> + <macros> + <import>macros.xml</import> + </macros> + <expand macro="requirements" /> + <code file="operation_filter.py"/> + <command><![CDATA[ +python '$__tool_directory__/gops_coverage.py' +'$input1' +'$input2' +'$output' +-1 ${input1.metadata.chromCol},${input1.metadata.startCol},${input1.metadata.endCol},${input1.metadata.strandCol} +-2 ${input2.metadata.chromCol},${input2.metadata.startCol},${input2.metadata.endCol},${input2.metadata.strandCol} + ]]></command> + <inputs> + <param name="input1" type="data" format="interval" label="What portion of" help="First dataset" /> + <param name="input2" type="data" format="interval" label="Is covered by" help="Second dataset" /> + </inputs> + <outputs> + <data name="output" format_source="input1" metadata_source="input1" /> + </outputs> + <tests> + <test> + <param name="input1" value="1.bed" /> + <param name="input2" value="2.bed" /> + <output name="output" file="gops_coverage_out.interval" /> + </test> + <test> + <param name="input1" value="1.bed" /> + <param name="input2" value="2_mod.bed" ftype="interval"/> + <output name="output" file="gops_coverage_out_diffCols.interval" /> + </test> + <test> + <param name="input1" value="gops_bigint.interval" /> + <param name="input2" value="gops_bigint2.interval" /> + <output name="output" file="gops_coverage_out2.interval" /> + </test> + </tests> + <help><![CDATA[ .. class:: infomark **TIP:** If your dataset does not appear in the pulldown menu -> it is not in interval format. Use "edit attributes" to set chromosome, start, end, and strand columns. Find the coverage of intervals in the first dataset on intervals in the second dataset. The coverage is added as two columns, the first being bases covered, and the second being the fraction of bases covered by that interval. ------ - -**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@ **Example** - if **First dataset** are genes :: chr11 5203271 5204877 NM_000518 0 - @@ -90,6 +83,5 @@ chr11 5203271 5204877 NM_000518 0 - 172 0.107098 implies that 172 nucleotides accounting for 10.7% of the this interval (chr11:5203271-5204877) overlap with repetitive elements. - -</help> -</tool> \ No newline at end of file + ]]></help> +</tool>
--- a/gops_coverage.py Fri Dec 18 19:37:38 2015 -0500 +++ b/gops_coverage.py Thu Jun 22 18:39:05 2017 -0400 @@ -7,11 +7,14 @@ -1, --cols1=N,N,N,N: Columns for start, end, strand in first file -2, --cols2=N,N,N,N: Columns for start, end, strand in second file """ +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.coverage import coverage -from bx.cookbook import doc_optparse from bx.tabular.io import ParseError from galaxy.tools.util.galaxyops import fail, parse_cols_arg, skipped @@ -48,16 +51,17 @@ out_file.write( "%s\n" % "\t".join( line.fields ) ) else: out_file.write( "%s\n" % line ) - except ParseError, exc: + except ParseError as exc: out_file.close() fail( "Invalid file format: %s" % str( exc ) ) out_file.close() if g1.skipped > 0: - print skipped( g1, filedesc=" of 1st dataset" ) + print(skipped( g1, filedesc=" of 1st dataset" )) if g2.skipped > 0: - print skipped( g2, filedesc=" of 2nd dataset" ) + print(skipped( g2, filedesc=" of 2nd dataset" )) + if __name__ == "__main__": main()
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/macros.xml Thu Jun 22 18:39:05 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 Fri Dec 18 19:37:38 2015 -0500 +++ b/operation_filter.py Thu Jun 22 18:39:05 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 Fri Dec 18 19:37:38 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="35e2457234ef" name="package_bx_python_0_7" owner="devteam" toolshed="https://testtoolshed.g2.bx.psu.edu" /> - </package> - <package name="galaxy-ops" version="1.0.0"> - <repository changeset_revision="60c9a7af1345" name="package_galaxy_ops_1_0_0" owner="devteam" toolshed="https://testtoolshed.g2.bx.psu.edu" /> - </package> -</tool_dependency>