Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
318 changes: 318 additions & 0 deletions docs/_writing_dependencies_conda.rst

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions docs/_writing_dependencies_docker.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
Dependencies and Docker
===========================================

4 changes: 1 addition & 3 deletions docs/_writing_using_seqtk.rst
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,7 @@ install Seqtk - but however you obtain it should be fine.

::

$ conda config --add channels r
$ conda config --add channels bioconda
$ conda install seqtk
$ conda install -c bioconda seqtk=1.2
... seqtk installation ...
$ seqtk seq
Usage: seqtk seq [options] <in.fq>|<in.fa>
Expand Down
30 changes: 30 additions & 0 deletions docs/commands/conda_search.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@

``conda_search`` command
======================================

This section is auto-generated from the help text for the planemo command
``conda_search``. This help message can be generated with ``planemo conda_search
--help``.

**Usage**::

planemo conda_search [OPTIONS] TERM

**Help**

Perform conda search with Planemo's conda.

Implicitly adds channels Planemo is configured with.

**Options**::


--conda_prefix DIRECTORY Conda prefix to use for conda dependency
commands.
--conda_exec PATH Location of conda executable.
--conda_debug Enable more verbose conda logging.
--conda_channels, --conda_ensure_channels TEXT
Ensure conda is configured with specified
comma separated list of channels.
--help Show this message and exit.

16 changes: 16 additions & 0 deletions docs/planemo.commands.rst
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,14 @@ planemo.commands.cmd_conda_lint module
:undoc-members:
:show-inheritance:

planemo.commands.cmd_conda_search module
----------------------------------------

.. automodule:: planemo.commands.cmd_conda_search
:members:
:undoc-members:
:show-inheritance:

planemo.commands.cmd_config_init module
---------------------------------------

Expand Down Expand Up @@ -204,6 +212,14 @@ planemo.commands.cmd_normalize module
:undoc-members:
:show-inheritance:

planemo.commands.cmd_open module
--------------------------------

.. automodule:: planemo.commands.cmd_open
:members:
:undoc-members:
:show-inheritance:

planemo.commands.cmd_profile_create module
------------------------------------------

Expand Down
8 changes: 8 additions & 0 deletions docs/planemo.reports.rst
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,14 @@ planemo.reports.build_report module
:undoc-members:
:show-inheritance:

planemo.reports.xunit_handler module
------------------------------------

.. automodule:: planemo.reports.xunit_handler
:members:
:undoc-members:
:show-inheritance:


Module contents
---------------
Expand Down
1 change: 1 addition & 0 deletions docs/writing_advanced.rst
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ available - check out tutorial_ if you have never developed a Galaxy tool.
.. include:: _writing_macros.rst
.. include:: _writing_tool_metadata.rst
.. include:: _writing_clusters.rst
.. include:: _writing_dependencies_conda.rst

.. _Galaxy: http://galaxyproject.org/
.. _Docker: https://www.docker.com/
Expand Down
26 changes: 26 additions & 0 deletions planemo/commands/cmd_conda_search.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
"""Module describing the planemo ``conda_search`` command."""
from __future__ import print_function

import click

from planemo import options
from planemo.cli import command_function
from planemo.conda import build_conda_context


@click.command('conda_search')
@options.conda_target_options()
@click.argument(
"term",
metavar="TERM",
type=str,
nargs=1,
)
@command_function
def cli(ctx, term, **kwds):
"""Perform conda search with Planemo's conda.

Implicitly adds channels Planemo is configured with.
"""
conda_context = build_conda_context(ctx, use_planemo_shell_exec=False, **kwds)
conda_context.exec_command("search", [term])
10 changes: 10 additions & 0 deletions project_templates/conda_exercise/exercise_1/.shed.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# repository published to https://toolshed.g2.bx.psu.edu/repos/iuc/pear
owner: planemo
name: pear
description: PEAR evaluates all possible paired-end read overlaps
long_description: |
PEAR evaluates all possible paired-end read overlaps and without requiring the target fragment size as input. In addition, it implements a statistical test for
minimizing false-positive results. Together with a highly optimized implementation, it can merge millions of paired end reads within a couple of minutes on a
standard desktop computer. Repository-Maintainer: Björn Grüning
remote_repository_url: https://github.com/galaxyproject/planemo/tree/master/project_templates/conda_exercise/exercise_1

165 changes: 165 additions & 0 deletions project_templates/conda_exercise/exercise_1/pear.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,165 @@
<tool id="iuc_pear" name="Pear" version="0.9.6.1">
<description>Paired-End read merger</description>
<stdio>
<exit_code range="1:" />
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think that in the IUC we would probably advocate the use of <command detect_errors="exit_code"> or "aggressive"

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is an IUC tool 😜 - I'll collect your advice and open a PR against tools-iuc.

<exit_code range=":-1" />
<regex match="Error:" />
<regex match="Exception:" />
</stdio>
<command>
<![CDATA[
pear
#if str( $library.type ) == "paired":
-f "$library.forward"
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

And we're advocating single quotes for paths. But I guess it's not so straightforward to implement this in planemo, right?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also that has nothing to do with this PR, just mentioning it.

-r "$library.reverse"
#if $library.forward.is_of_type( 'fastqillumina' ):
--phred-base 64
#else:
--phred-base 33
#end if
#else
## prepare collection
-f "$library.input_collection.forward"
-r "$library.input_collection.reverse"
#if $library.input_collection.forward.is_of_type( 'fastqillumina' ):
--phred-base 64
#else:
--phred-base 33
#end if
#end if

--output pear
--p-value $pvalue
--min-overlap $min_overlap
#if int($max_assembly_length) > 0:
--max-asm-length $max_assembly_length
#end if
--min-asm-length $min_assembly_length
--min-trim-length $min_trim_length
--quality-theshold $quality_threshold
--max-uncalled-base $max_uncalled_base
--test-method $test_method
--empirical-freqs $empirical_freqs
-j "\${GALAXY_SLOTS:-8}"
--score-method $score_method
--cap $cap
$nbase
]]>
</command>
<inputs>
<conditional name="library">
<param name="type" type="select" label="Dataset type">
<option value="paired">Paired-end</option>
<option value="paired_collection">Paired-end Dataset Collection</option>
</param>
<when value="paired">
<param name="forward" type="data" format="fastqillumina,fastqsanger"
label="Name of file that contains the forward paired-end reads" help="-f" />
<param name="reverse" type="data" format="fastqillumina,fastqsanger"
label="Name of file that contains the reverse paired-end reads" help="-r" />
</when>
<when value="paired_collection">
<param name="input_collection" format="fastqillumina,fastqsanger"
type="data_collection" collection_type="paired"
label="FASTQ Paired Dataset" help="Nucleotide-space: Must have PHRED-scaled quality values. (-f and -r)" />
</when>
</conditional>

<!-- optional -->
<param name="pvalue" type="float" value="0.01" min="0" optional="True" max="1" label="Specify a p-value for the statistical test"
help="If the computed p-value of a possible assembly exceeds the specified p-value then the paired-end read will not be assembled. Setting 1.0 disables the test. (--p-value)" />

<param name="min_overlap" type="integer" value="10" optional="True" label="Minimum overlap size"
help="The minimum overlap may be set to 1 when the statistical test is used. However, further restricting the minimum overlap size to a proper value may reduce false-positive assembles. (--min-overlap)" />

<param name="max_assembly_length" type="integer" value="0" optional="True" label="Maximum possible length of the assembled sequences"
help="Setting this value to 0 disables the restriction and assembled sequences may be arbitrary long. (--max-assembly-length)" />

<param name="min_assembly_length" type="integer" value="50" optional="True" label="Minimum possible length of the assembled sequences"
help="Setting this value to 0 disables the restriction and assembled sequences may be arbitrary short. (--min-assembly-length)" />

<param name="min_trim_length" type="integer" value="1" optional="True" label="Minimum length of reads after trimming the low quality part"
help="See option -q. (--min-trim-length)" />

<param name="quality_threshold" type="integer" value="0" optional="True" label="Quality score threshold for trimming the low quality part of a read"
help="If the quality scores of two consecutive bases are strictly less than the specified threshold, the rest of the read will be trimmed. (--quality-threshold)" />

<param name="max_uncalled_base" type="float" value="1.0" min="0" optional="True" max="1" label="Maximal proportion of uncalled bases in a read"
help="Setting this value to 0 will cause PEAR to discard all reads containing uncalled bases. The other extreme setting is 1 which causes PEAR to process all reads independent on the number of uncalled bases. (--max-uncalled-base)" />

<param name="cap" type="integer" value="40" optional="True" label="Specify the upper bound for the resulting quality score"
help="If set to zero, capping is disabled. (--cap)" />

<param name="test_method" type="select" label="Type of statistical test" help="(--test-method)">
<option value="1" selected="True">Given the minimum allowed overlap, test using the highest OES (1)</option>
<option value="2">Use the acceptance probability (2)</option>
</param>

<param name="empirical_freqs" type="boolean" truevalue="-e" falsevalue="" checked="false"
label="Disable empirical base frequencies" help="(--empirical-freqs)" />
<param name="nbase" type="boolean" truevalue="--nbase" falsevalue="" checked="false"
label="Use N base if uncertain" help="When merging a base-pair that consists of two non-equal bases out of which none is degenerate, set the merged base to N and use the highest quality score of the two bases. (--nbase)" />

<param name="score_method" type="select" label="Scoring method" help="(--score-method)">
<option value="1">OES with +1 for match and -1 for mismatch</option>
<option value="2" selected="True">Assembly score (AS) use +1 for match and -1 for mismatch multiplied by base quality scores</option>
<option value="3">Ignore quality scores and use +1 for a match and -1 for a mismatch</option>
</param>

<param name="outputs" type="select" display="checkboxes" optional="False" multiple="True" label="Output files">
<option value="assembled" selected="True">Assembled reads</option>
<option value="forward">Forward unassembled reads</option>
<option value="reverse">Reverse unassembled reads</option>
<option value="discarded">Discarded reads</option>
</param>
</inputs>
<outputs>
<data format="input" name="assembled_reads" from_work_dir="pear.assembled.fastq" label="${tool.name} on ${on_string}: Assembled reads">
<filter>'assembled' in outputs</filter>
</data>
<data format="input" name="unassembled_forward_reads" from_work_dir="pear.unassembled.forward.fastq" label="${tool.name} on ${on_string}: Unassembled forward reads">
<filter>'forward' in outputs</filter>
</data>
<data format="input" name="unassembled_reverse_reads" from_work_dir="pear.unassembled.reverse.fastq" label="${tool.name} on ${on_string}: Unassembled reverse reads">
<filter>'reverse' in outputs</filter>
</data>
<data format="input" name="discarded_reads" from_work_dir="pear.discarded.fastq" label="${tool.name} on ${on_string}: Discarded reads">
<filter>'discarded' in outputs</filter>
</data>
</outputs>
<tests>
<test>
<param name="forward" value="forward.fastq" ftype="fastqsanger" />
<param name="reverse" value="reverse.fastq" ftype="fastqsanger" />
<param name="min_overlap" value="10" />
<param name="min_assembly_length" value="50" />
<param name="cap" value="0" />
<param name="outputs" value="assembled,forward" />
<output name="assembled_reads" file="pear_assembled_results1.fastq" ftype="fastqsanger"/>
<output name="unassembled_forward_reads" file="pear_unassembled_forward_results1.fastq" ftype="fastqsanger"/>
</test>
</tests>
<help>
<![CDATA[

**What it does**

PEAR_ is an ultrafast, memory-efficient and highly accurate pair-end read merger.
PEAR evaluates all possible paired-end read overlaps and without requiring the target fragment
size as input. In addition, it implements a statistical test for minimizing false-positive results.
Together with a highly optimized implementation, it can merge millions of paired end reads within a couple of minutes
on a standard desktop computer.

For more information please look at the documentation_ and `github repository`_.

.. _PEAR: http://sco.h-its.org/exelixis/web/software/pear/
.. _documentation: http://sco.h-its.org/exelixis/web/software/pear/doc.html
.. _github repository: https://github.com/xflouris/PEAR


]]>
</help>
<citations>
<citation type="doi">10.1093/bioinformatics/btt593</citation>
</citations>
</tool>
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
@EU861894-140/1
CAACCATTCCACTCGCCTCTGCCGCACTCGAGGCCCCCAGTATGAGAGGCAGTTACGAGGTTGAACCTCAGAATCTCACCCCACACTTAAGGGCGCGCCT
+
@#CAAF4FHFG;DIJJI?JG#GIIIDECD#4H*1IBIIIH#?IDID*DFIIF?C#HGBJICJBC#JEGEA>ECH#=7#DDF@##D#D<@C#CC@#C?D@,
@EU861894-138/1
TCCGAGGTTGAGCCTCAGAATTTCACCCCCCACTTAACGGCCCGACTCCGCGCTCCTTACGCCCAGTAAGTTCGGACAACGCTGGCCCCCTACGTACTAC
+
@CCFFFBFFDHFHJJJ+<HJJGIGGBJJIDJ?JIJII#I5D*GB#EJ#FEJEIEI#GG#AIIDIEAD?@#AD3HG3;E;D7##FCDH0?#A,DD#A#ADA
@EU861894-136/1
GCTGATCGTCCTCTCAGACCACCTACCCGTCAAAGCCTTGGTGCGACGTAACTCCCCCAACTAGACGATAGGCCAAGGGCCTATCCCGAAGTGCCCGAAG
+
@@C?F;FF#HGHGJC<JJJC<#CJG61GHIE#?J:JJHJJHFJ#?#1JJ#<J(DHFEIJJD=JF##DIECH)GD(#D<HC>#C@B9DEFDD@ED#EDBD>
@EU861894-134/1
TTGTGCAAGAGTCCTAATTGCTGCCCCCCGTAGGAGTCTGGGCCGTATCTCAGTCCCAATCCGGCTGTTCGTCCCCTCAGACCATGTACCCGTAGATGCC
+
=CCFDFFFA?#BHIJJJCIJ<JIJIGHJ8JHCI9JJIDJIGIJEFI9@JIJ#FFI5J>JJJD;EEJB#@2GFIE#>A;C@FCA@##BD>AD=D#D?##A,
@EU861894-132/1
CGGAACACCCATGGCGAAGGCAGCTCGCTGGCCTGCAACTGACCCTGAGGCGCAAAAGCCGGGGGATCAAACAGGTTTATATACCCTGGTAGTCCCGAGC
+
CCC4FFDFFFHH#AIJ<EJJJGGJJJJJIHEGE@GIIIBJ#JJ##GJ8IG#IJFHICFH#JJC?8I#HD;GD#ED#<B;##>DEDBC#H;#E8A(?>##D
@EU861894-130/1
TCGTCACTAACCGAAGAACCTTACCAGGGTTTGACATCCCCGGCCAGCACGAGAGATCGGGTGGTGCCCGCAAGGGGACCGGGTGACAGGTGTTGACTAG
+
:B@FDFDFH<HAFIGFJJJ7JHJHJGFJHJJHHD?JBHIII1J#IAEI#7IIGFAEJGBCEAI#E#IHECC>CA@:CDFDEDAA#DDF:-<DA#D##CDD
@EU861894-128/1
CGGCTAACTACGTGCCAGCAGCCGCGGTTATACGTAGGGGGCCAGCGTTGTCCGTAGTTACCGGGAGTTAAGAGCGCGTAGCCAGGCCATTAAGTGGGGG
+
@C?BFFFD#9HAHHHIJDJIJ<IJJJAB#GHFJJHGG*JG=IHI9#FJBDGBE8#B)@E7G#DFH##6#HD<D8IC;ACCD#D#;DA?#DACDE<CE>D,
@EU861894-126/1
GGAATGGTCGGTGTAGCGGTGAAATGCGTAGATATCGATCGGAACACCCATGGCTAAGGTAGCTTGCTGGCGTGCAACAGACGCTCAGGCGCAAAAGCCG
+
BC?#FF=FBFHHHFGIGEIJ@IJJIFI@HJI9IJ;GHBGIIJG<CJIH8AEBI@#DGHF#G;)A#>HDC<>#9E7@CG#D(BHED#=;CD:;#>C#C?B,
@EU861894-124/1
CTGTGCCGCAGCTAACCCAAAAAGTATTCCGCCTGGGGAGTACGGCCGCAAGGTTGAAACTCAACGGAATTGACGGGGAACCGCACAAGCGGTGGACCAT
+
CCCFFFFD,GB<CEI@#<I##JJG<HG<IBGFJ#DHI3IIHJII@GJAGGBGD#JEGBG'EJDB!HIEHE@AD#.DC###C<CF?C@DDFF?D@CD#BB,
@EU861894-122/1
TACACCGACCATTCCACTCGCCTCTCCCGCACTCAAGGCCCCCAGTATGATAGGCAGTTCCGAGGTTGAGCCTCAGAATTTCACCCCCCACTTAAGTGTC
+
B@@D=F2FHDFHFJJJIJ#JI@JHJGJJJEIHI0JIJJHG3JAGHJ@BIA!FDIJA#H2J#HDFH?@G)H;;EBD=@FC3#CCB>BD@8D>:BDD<###,
@EU861894-120/1
CTGTCACCCGGTCCGCTTGCGGGGAACACCCGATCTCTCGCGCTGTCCGGGGATGTCAAACCCTGGTAATGTTCTTCCGTTAGTGACGAATTAATGCAGA
+
@C@FAFFFAHHHFA#JJ#J:IJ?H:HJJH9IJ#9I?IG:J#*IEBIC;I?AEJDIJJHHCICCHDJJ;C##C2EF?B#C>?DD6(B+#(D@E:DCDCC#,
@EU861894-118/1
CGAGCGCAACCCTGACCCAATGTTGGCAGCGTAAAGTCGGCAACTCTTTGGGAACTGCCCGTGGAAGCGGGAGGAAGGTGGGGATGACGTCAAATAGGCA
+
@?;FF?EFFHHHH#HEAIGJ@J1JIJIJJGDGIF7GGH=J#JGIJJ#:GFJID#FJJ#JID4?#DBDJHEFID;EA5EDD;C?CCDCBDA>:CB>#DD#C
@EU861894-116/1
GAGGCAGTTCCGAGGTTGAGCCTCAGAATTTCACCCCCCACTTAAGGGCCCGCCTACGCCCTATTTACGCCCATTAAATTCGGACAACGCTGGCCGCCTA
+
C@@FFFD2GHHFFICFAGJJI3JJIIII8II#<*JJH#JJIID(EGEGJ;GE@D7IJHF#B;#C?H@GH;FCI#D<C#EA(>D@DE6CCDCDDC<#ACD4
@EU861894-114/1
TTACTAGGGATTCCGGCTTCATGCAGGCGAGTTGCAGCCTGCAATCCGAACTGAGACCATATTTGTGCGATTGGCTCCTCTACGCGGCATAGCGTCGCGC
+
@C:FFDD#BHHAAIJ(GIFGIJGHBHDI9ICHGE7JHEJI4IJBBIDIAHJIBCBFIF#J=BDFFDD8HCHJ8E:@@C#D##BA@DD5=E#A5B#D#B#F
Loading