diff --git a/planemo/shed/__init__.py b/planemo/shed/__init__.py
index 2e429cdb9..f74c1a147 100644
--- a/planemo/shed/__init__.py
+++ b/planemo/shed/__init__.py
@@ -315,7 +315,7 @@ def upload_repository(ctx, realized_repository, **kwds):
)
except Exception as e:
if isinstance(e, bioblend.ConnectionError) and e.status_code == 400 and \
- e.body == '{"content_alert": "", "err_msg": "No changes to repository."}':
+ '"No changes to repository."' in e.body:
warn("Repository %s was not updated because there were no changes" % realized_repository.name)
return 0
message = api_exception_to_message(e)
diff --git a/planemo/xml/xsd/tool/galaxy.xsd b/planemo/xml/xsd/tool/galaxy.xsd
index 3d7bc3ef7..54b54510f 100644
--- a/planemo/xml/xsd/tool/galaxy.xsd
+++ b/planemo/xml/xsd/tool/galaxy.xsd
@@ -44,7 +44,7 @@ A ``data_source`` tool contains a few more relevant attributes.
-
+
@@ -68,7 +68,7 @@ the tool menu immediately following the hyperlink for the tool (based on the
-
+
@@ -197,6 +197,22 @@ communicating with an external data source application (the default is ``get``).
+
+
+ Frequently, tools may require the same XML
+fragments be repeated in a file (for instance similar conditional branches,
+repeated options, etc...) or among tools in the same repository. Galaxy tools
+have a macro system to address this problem.
+
+For more information, see https://planemo.readthedocs.io/en/latest/writing_advanced.html#macros-reusable-elements
+
+
+
+
+
+
+
+
Describe the backend Python action to execute for this Galaxy tool.
@@ -376,10 +392,10 @@ associated with a tool's single input dataset. The 2 metadata elements we're
using look like this.
```python
-MetadataElement( name="field_names", default=[], desc="Field names", readonly=True, optional=True, visible=True, no_value=[] )
+MetadataElement(name="field_names", default=[], desc="Field names", readonly=True, optional=True, visible=True, no_value=[])
# The keys in the field_components map to the list of field_names in the above element
# which ensures order for select list options that are built from it.
-MetadataElement( name="field_components", default={}, desc="Field names and components", readonly=True, optional=True, visible=True, no_value={} )
+MetadataElement(name="field_components", default={}, desc="Field names and components", readonly=True, optional=True, visible=True, no_value={})
```
Our tool config includes a code file tag like this.
@@ -402,7 +418,7 @@ elements in the ``field_names`` metadata element associated with the selected
input dataset.
```xml
-
+
@@ -427,11 +443,11 @@ list, which is the behavior we want.
The ``get_field_components_options()`` method looks like this.
```python
-def get_field_components_options( dataset, field_name ):
+def get_field_components_options(dataset, field_name):
options = []
if dataset.metadata is None:
return options
- if not hasattr( dataset.metadata, 'field_names' ):
+ if not hasattr(dataset.metadata, 'field_names'):
return options
if dataset.metadata.field_names is None:
return options
@@ -439,12 +455,12 @@ def get_field_components_options( dataset, field_name ):
# The expression validator that helps populate the select list of input
# datsets in the icqsol_color_surface_field tool does not filter out
# datasets with no field field_names, so we need this check.
- if len( dataset.metadata.field_names ) == 0:
+ if len(dataset.metadata.field_names) == 0:
return options
field_name = dataset.metadata.field_names[0]
- field_components = dataset.metadata.field_components.get( field_name, [] )
- for i, field_component in enumerate( field_components ):
- options.append( ( field_component, field_component, i == 0 ) )
+ field_components = dataset.metadata.field_components.get(field_name, [])
+ for i, field_component in enumerate(field_components):
+ options.append((field_component, field_component, i == 0))
return options
```
@@ -1062,18 +1078,18 @@ of ``type`` ``data``.
- Define extra composite input files for test input.
+ Define extra composite input files for test
+input. The specified ``ftype`` on the parent ``param`` should specify a composite
+datatype with defined static composite files. The order of the defined composite
+files on the datatype must match the order specified with these elements and All
+non-optional composite inputs must be specified as part of the ``param``.
+Path relative to test-data of composite file.
-
-
- Optional datatype of composite file for test input.
-
-
@@ -1299,7 +1315,7 @@ provides a demonstration of using this tag.
- Name of the metdata element to check.
+ Name of the metadata element to check.
@@ -1376,7 +1392,7 @@ Define tests for extra files corresponding to an output collection.
``output_collection`` directives should specify a ``name`` and ``type``
attribute to describe the expected output collection as a whole.
-Expectations about collecton contents are described using child ``element``
+Expectations about collection contents are described using child ``element``
directives. For nested collections, these child ``element`` directives may
themselves contain children.
@@ -1486,7 +1502,7 @@ etc...).
`` tag set contained within the tool's ```` tag set.
+```` tag set contained within the tool's ```` tag set.
]]>
@@ -1515,7 +1531,7 @@ many of the default assertion tags that come with Galaxy and examples of each
can be found below.
The implementation of these tags are simply Python functions defined in the
-[galaxy.tools.verify.asserts](https://github.com/galaxyproject/galaxy/tree/dev/lib/galaxy/tools/verify/asserts)
+[/lib/galaxy/tools/verify/asserts](https://github.com/galaxyproject/galaxy/tree/dev/lib/galaxy/tools/verify/asserts)
module.
]]>
@@ -1612,9 +1628,9 @@ module.
- `` tag within the ```` tag set
-maps to a command line parameter within the [command](#tool-command) tag. Most
+
@@ -1687,13 +1703,13 @@ statement. A good example tool that demonstrates many conditional parameters is
```xml
-
+
-
+
@@ -1716,7 +1732,7 @@ shown above:
```
biom convert -i "${input_type.input_table}" -o "${output_table}"
-#if str( $input_type.input_type_selector ) == "tsv":
+#if str($input_type.input_type_selector) == "tsv":
#if $input_type.process_obs_metadata:
--process-obs-metadata "${input_type.process_obs_metadata}"
#end if
@@ -1854,7 +1870,7 @@ This Cheetah code can be used in the ```` tag set or the
```` tag set.
```xml
-#for $i, $s in enumerate( $series )
+#for $i, $s in enumerate($series)
rank_of_series=$i
input_path='${s.input}'
x_colom=${s.xcol}
@@ -1956,7 +1972,7 @@ The XML configuration is relatively trivial for sections:
```xml
-
+
@@ -2035,7 +2051,7 @@ The ``size`` parameter can be two dimensional, if it is the textbox will be
rendered on the tool form as a text area instead of a single line text box.
```xml
-
+
```
As of 17.01, ``text`` parameters can also supply a static list of preset
@@ -2418,7 +2434,7 @@ template if the parameter is ``false`` or not checked by the user. Only valid if
Used only if ``type`` attribute
-value is ``text``. To create a multi-line text box add an ``area="True"``
+value is ``text``. To create a multi-line text box add an ``area="true"``
attribute to the param tag. This can be one dimensional (e.g. ``size="40"``)
or two dimensional (e.g. ``size="5x25"``).
@@ -2541,9 +2557,9 @@ bedtools annotate
'${bed.inputName}'
#end for
#else:
- #set files = '" "'.join( [ str( $file ) for $file in $names.beds ] )
+ #set files = '" "'.join([str($file) for $file in $names.beds])
-files '${files}'
- #set names = '" "'.join( [ str( $name.display_name ) for $name in $names.beds ] )
+ #set names = '" "'.join([str($name.display_name) for $name in $names.beds])
-names '${names}'
#end if
$strand
@@ -2558,9 +2574,9 @@ uses an interpreted executable. In this case a Perl script is shipped with the
tool and the directory of the tool itself is referenced with ``$__tool_directory__``.
```xml
-
- perl $__tool_directory__/xpath -q -e '$expression' '$input' > '$output'
-
+ '$output'
+]]]]>
```
The following example demonstrates accessing metadata from datasets. Metadata values
@@ -2582,7 +2598,7 @@ according to the Metadata spec.
#set genome = $input.metadata.dbkey
#set datatype = $input.datatype
mkdir -p output_dir &&
- python $__tool_directory__/extract_genomic_dna.py
+ python '$__tool_directory__/extract_genomic_dna.py'
--input '$input'
--genome '$genome'
#if $input.is_of_type("gff"):
@@ -2768,12 +2784,12 @@ dataset for the contained input of the type specified using the ``type`` tag.
]]>
-
+
- Name of cheetah variable to create for converted dataset.
+ Name of Cheetah variable to create for converted dataset.
-
+ The short extension describing the datatype to convert to - Galaxy must have a datatype converter from the parent input's type to this.
@@ -3052,7 +3068,7 @@ ensures that a dbkey is present and that FASTA indices in the ``fasta_indexes``
tool data table are present.
```xml
-
+
@@ -3559,6 +3575,30 @@ the ```` documentation.
+
+
+
+
+
+
+
+
+
+
@@ -3693,6 +3733,12 @@ The valid values for format can be found in
This sets the data type of the output file to be the same format as that of a tool input dataset.
+
+
+ Sets the source of element identifier to the specified input.
+This only applies to collections that are mapped over a non-collection input and that have equivalent structures.
+
+ This copies the metadata information
@@ -3825,7 +3871,7 @@ conditionals are accessed using a hash named after the conditional.
-
+
@@ -3867,7 +3913,12 @@ More information can be found on Planemo's documentation for
[multiple output files](https://planemo.readthedocs.io/en/latest/writing_advanced.html#multiple-output-files).
]]>
-
+
+
+ Indicate that dataset filenames should simply be read from the provided metadata file (e.g. galaxy.json). If this is set - pattern and sort must not be set.
+
+
+ Regular expression used to find filenames and parse dynamic properties.
@@ -3915,7 +3966,12 @@ Galaxy, including:
]]>
-
+
+
+ Indicate that dataset filenames should simply be read from the provided metadata file (e.g. galaxy.json). If this is set - pattern and sort must not be set.
+
+
+ Regular expression used to find filenames and parse dynamic properties.
@@ -3977,7 +4033,7 @@ supplied file.
@@ -3999,7 +4055,7 @@ based on inputs, as shown below:
```xml
- ( library['type'] == "paired" or library['type'] == "paired_collection" ) and library['unaligned_file'] is True
+ (library['type'] == "paired" or library['type'] == "paired_collection") and library['unaligned_file'] is True
@@ -4060,7 +4116,7 @@ Or in case of multiple files:
-
+
@@ -4086,7 +4142,7 @@ column="1" />`` tag does), then it should be changed to ``equCab2`` (which is th
@@ -4405,27 +4461,27 @@ tool config.
## Setup R error handling to go to stderr
- options( show.error.messages=F, error = function () { cat( geterrmessage(), file=stderr() ); q( "no", 1, F ) } )
+ options(show.error.messages=F, error = function () { cat(geterrmessage(), file=stderr()); q("no", 1, F) })
## Determine range of all series in the plot
- xrange = c( NULL, NULL )
- yrange = c( NULL, NULL )
- #for $i, $s in enumerate( $series )
- s${i} = read.table( "${s.input.file_name}" )
+ xrange = c(NULL, NULL)
+ yrange = c(NULL, NULL)
+ #for $i, $s in enumerate($series)
+ s${i} = read.table("${s.input.file_name}")
x${i} = s${i}[,${s.xcol}]
y${i} = s${i}[,${s.ycol}]
- xrange = range( x${i}, xrange )
- yrange = range( y${i}, yrange )
+ xrange = range(x${i}, xrange)
+ yrange = range(y${i}, yrange)
#end for
## Open output PDF file
- pdf( "${out_file1}" )
+ pdf("${out_file1}")
## Dummy plot for axis / labels
- plot( NULL, type="n", xlim=xrange, ylim=yrange, main="${main}", xlab="${xlab}", ylab="${ylab}" )
+ plot(NULL, type="n", xlim=xrange, ylim=yrange, main="${main}", xlab="${xlab}", ylab="${ylab}")
## Plot each series
- #for $i, $s in enumerate( $series )
+ #for $i, $s in enumerate($series)
#if $s.series_type['type'] == "line"
- lines( x${i}, y${i}, lty=${s.series_type.lty}, lwd=${s.series_type.lwd}, col=${s.series_type.col} )
+ lines(x${i}, y${i}, lty=${s.series_type.lty}, lwd=${s.series_type.lwd}, col=${s.series_type.col})
#elif $s.series_type.type == "points"
- points( x${i}, y${i}, pch=${s.series_type.pch}, cex=${s.series_type.cex}, col=${s.series_type.col} )
+ points(x${i}, y${i}, pch=${s.series_type.pch}, cex=${s.series_type.cex}, col=${s.series_type.col})
#end if
#end for
## Close the PDF file
@@ -4437,7 +4493,7 @@ tool config.
This file is then used in the ``command`` block of the tool as follows:
```xml
-bash "$__tool_directory__/r_wrapper.sh" "$script_file"
+bash '$__tool_directory__/r_wrapper.sh' '$script_file'
```
]]>
@@ -4528,7 +4584,7 @@ An example that leverages a Python script (e.g. ``count_reads.py``) shipped with
the tool might be:
```xml
-python $__tool_directory__/count_reads.py
+python '$__tool_directory__/count_reads.py'
```
Examples are included in the test tools directory including:
@@ -4543,7 +4599,7 @@ Examples are included in the test tools directory including:
- $__tool_directory__/``.]]>
+ '$__tool_directory__/'``.]]>
@@ -4552,9 +4608,7 @@ Examples are included in the test tools directory including:
- tag set - it contains a set of tags.
- ]]>
+
@@ -4563,19 +4617,19 @@ Examples are included in the test tools directory including:
- tag set ( used only in "data_source" tools ) - the external data source application may send back parameter names like "GENOME" which must be translated to "dbkey" in Galaxy.]]>
+
-
+
- Each of these maps directly to a remote_name value
+ Each of these maps directly to a ``remote_name`` value
-
+
The string representing the name of the parameter in the remote data source
@@ -4585,7 +4639,7 @@ Examples are included in the test tools directory including:
- The default value to use for galaxy_name if the remote_name parameter is not included in the request
+ The default value to use for ``galaxy_name`` if the ``remote_name`` parameter is not included in the request
@@ -4597,6 +4651,7 @@ Examples are included in the test tools directory including:
+
@@ -4616,7 +4671,7 @@ Examples are included in the test tools directory including:
- tag set if galaxy_name="URL" - some remote data sources ( e.g., Gbrowse, Biomart ) send parameters back to Galaxy in the initial response that must be added to the value of "URL" prior to Galaxy sending the secondary request to the remote data source via URL.]]>
+
@@ -4631,7 +4686,7 @@ The text to use to join the requested parameters together (example ``separator="
@@ -4646,7 +4701,7 @@ The text to use to join the param name to its value (example ``join="="``).
- tag set - allows for appending a param name / value pair to the value of URL.
+
@@ -4677,7 +4732,7 @@ Any valid HTTP request parameter name. The name / value pair must be received fr
- tag set the parameter value received from a remote data source may be named differently in Galaxy, and this tag set allows for the value to be appropriately translated.]]>
+
@@ -4686,7 +4741,7 @@ Any valid HTTP request parameter name. The name / value pair must be received fr
- tag set - allows for changing the data type value to something supported by Galaxy.
+ `` tags.
A tool can have any number of EDAM topic references.
```xml
-
-
+
+topic_2269
-
+
```
]]>
@@ -5327,10 +5382,10 @@ Container tag set for the ```` tags.
A tool can have any number of EDAM operation references.
```xml
-
-
+
+operation_3434
-
+
```
]]>