mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-10-13 08:51:38 +08:00
#) An "xy_plot" tool and a new "build_ucsc_custom_track" tool that
demonstrate the various features added here.
#) Grouping constructs for tool parameters:
- "repeat" element allows for a set of parameters to be repeated an
arbitrary number of times
- "conditional" element allows choosing a set of parameters to display
based on the value of another parameter
These constructs can be arbitrarily nested. Their values are structured
and can be used in hooks, validation, et cetera
#) Support for generating arbitrary config files to pass to a tool
#) Command lines are now full Cheetah templates
#) Better job error reporting, includes tracebacks for internal errors
preparing the job (database change required, see below!)
#) Preparation of command line, config files, exec_before_job hook moved
into job execution stage
#) Parameter values now jsonified before storing in database (this is much
more rigorous that before, and restoring from the database now works
properly)
DATABASE CHANGE:
alter table job add column traceback text;
17 lines
686 B
Python
17 lines
686 B
Python
# runs after the job (and after the default post-filter)
|
|
|
|
from sets import Set as set
|
|
|
|
def validate_input( trans, error_map, param_values, page_param_map ):
|
|
dbkeys = set()
|
|
tracks = param_values['tracks']
|
|
for track in tracks:
|
|
if track['input'] is not None:
|
|
dbkeys.add( track['input'].dbkey )
|
|
if len( dbkeys ) > 1:
|
|
# FIXME: Should be able to assume error map structure is created
|
|
if 'tracks' not in error_map:
|
|
error_map['tracks'] = [ dict() for t in tracks ]
|
|
for i in range( len( tracks ) ):
|
|
error_map['tracks'][i]['input'] = \
|
|
"All datasets must belong to same genomic build" |