1 new commit in galaxy-central:
https://bitbucket.org/galaxy/galaxy-central/changeset/94dc7288f81f/
changeset: 94dc7288f81f
user: dan
date: 2011-12-05 18:32:02
summary: Update tool data tables for GATK.
affected #: 1 file
diff -r 46e455a590e5923db81cda0034d6192503ce29a6 -r 94dc7288f81f61553467e283e2646755312d8a38 tool_data_table_conf.xml.sample
--- a/tool_data_table_conf.xml.sample
+++ b/tool_data_table_conf.xml.sample
@@ -77,8 +77,13 @@
</table><!-- Location of Picard dict files valid for GATK --><table name="gatk_picard_indexes" comment_char="#">
- <columns>value, dbkey, name, path, tools_valid_for</columns>
- <file path="tool-data/picard_index.loc" />
+ <columns>value, dbkey, name, path</columns>
+ <file path="tool-data/gatk_sorted_picard_index.loc" />
+ </table>
+ <!-- Available of GATK references -->
+ <table name="gatk_annotations" comment_char="#">
+ <columns>value, name, gatk_value, tools_valid_for</columns>
+ <file path="tool-data/gatk_annotations.txt" /></table><!-- Location of SRMA dict file and other files --><table name="srma_indexes" comment_char="#">
Repository URL: https://bitbucket.org/galaxy/galaxy-central/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
1 new commit in galaxy-central:
https://bitbucket.org/galaxy/galaxy-central/changeset/943855e11c85/
changeset: 943855e11c85
user: jgoecks
date: 2011-12-05 18:19:48
summary: Look for datasets/indices in metadata and use if found rather than doing conversion.
affected #: 2 files
diff -r 5e67b3ddbda241bf8a24969ac6caa47e9cbe5d9b -r 943855e11c853ec7c8ab7a64ee07a65daefe4374 lib/galaxy/model/__init__.py
--- a/lib/galaxy/model/__init__.py
+++ b/lib/galaxy/model/__init__.py
@@ -928,7 +928,10 @@
depends_list = trans.app.datatypes_registry.converter_deps[self.extension][target_ext]
except KeyError:
depends_list = []
- # See if converted dataset already exists
+ # See if converted dataset already exists, either in metadata in conversions.
+ converted_dataset = self.get_metadata_dataset( trans, target_ext )
+ if converted_dataset:
+ return converted_dataset
converted_dataset = self.get_converted_files_by_type( target_ext )
if converted_dataset:
return converted_dataset
@@ -958,6 +961,21 @@
session.add( assoc )
session.flush()
return None
+ def get_metadata_dataset( self, trans, dataset_ext ):
+ """
+ Returns an HDA that points to a metadata file which contains a
+ converted data with the requested extension.
+ """
+ for name, value in self.metadata.items():
+ # HACK: MetadataFile objects do not have a type/ext, so need to use metadata name
+ # to determine type.
+ if dataset_ext == 'bai' and name == 'bam_index' and isinstance( value, trans.app.model.MetadataFile ):
+ # HACK: MetadataFile objects cannot be used by tools, so return
+ # a fake HDA that points to metadata file.
+ fake_dataset = trans.app.model.Dataset( state=trans.app.model.Dataset.states.OK,
+ external_filename=value.file_name )
+ fake_hda = trans.app.model.HistoryDatasetAssociation( dataset=fake_dataset )
+ return fake_hda
def clear_associated_files( self, metadata_safe = False, purge = False ):
raise 'Unimplemented'
def get_child_by_designation(self, designation):
diff -r 5e67b3ddbda241bf8a24969ac6caa47e9cbe5d9b -r 943855e11c853ec7c8ab7a64ee07a65daefe4374 lib/galaxy/web/controllers/tracks.py
--- a/lib/galaxy/web/controllers/tracks.py
+++ b/lib/galaxy/web/controllers/tracks.py
@@ -546,7 +546,7 @@
valid_chroms = indexer.valid_chroms()
else:
# Standalone data provider
- standalone_provider = get_data_provider(data_sources['data_standalone']['name'])( dataset )
+ standalone_provider = get_data_provider( data_sources['data_standalone']['name'] )( dataset )
kwargs = {"stats": True}
if not standalone_provider.has_data( chrom ):
return messages.NO_DATA
@@ -609,16 +609,8 @@
else:
tracks_dataset_type = data_sources['data']['name']
data_provider_class = get_data_provider( name=tracks_dataset_type, original_dataset=dataset )
- # HACK: Use bai from bam HDA's metadata if available. This saves
- # the client from waiting a long time to generate a duplicate
- # bam via a converted dataset.
- if dataset.ext == "bam" and dataset.metadata.get( "bam_index", None ) is not None:
- converted_dataset = dataset.metadata.bam_index
- deps = None
- else:
- # Default behavior.
- converted_dataset = dataset.get_converted_dataset( trans, tracks_dataset_type )
- deps = dataset.get_converted_dataset_deps( trans, tracks_dataset_type )
+ converted_dataset = dataset.get_converted_dataset( trans, tracks_dataset_type )
+ deps = dataset.get_converted_dataset_deps( trans, tracks_dataset_type )
data_provider = data_provider_class( converted_dataset=converted_dataset, original_dataset=dataset, dependencies=deps )
# Get and return data from data_provider.
@@ -1037,16 +1029,15 @@
data_sources_dict[ source_type ] = { "name" : data_source, "message": msg }
return data_sources_dict
-
+
def _convert_dataset( self, trans, dataset, target_type ):
"""
Converts a dataset to the target_type and returns a message indicating
status of the conversion. None is returned to indicate that dataset
was converted successfully.
"""
-
- # Get converted dataset; this will start the conversion if
- # necessary.
+
+ # Get converted dataset; this will start the conversion if necessary.
try:
converted_dataset = dataset.get_converted_dataset( trans, target_type )
except NoConverterException:
@@ -1063,7 +1054,7 @@
msg = { 'kind': messages.ERROR, 'message': job.stderr }
elif not converted_dataset or converted_dataset.state != model.Dataset.states.OK:
msg = messages.PENDING
-
+
return msg
def _get_highest_priority_msg( message_list ):
Repository URL: https://bitbucket.org/galaxy/galaxy-central/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
1 new commit in galaxy-central:
https://bitbucket.org/galaxy/galaxy-central/changeset/5e67b3ddbda2/
changeset: 5e67b3ddbda2
user: dan
date: 2011-12-05 17:37:46
summary: Allow select_param.fields.name method of accessing additional attributes from dynamic options work for multiple selects.
affected #: 2 files
diff -r 52de9815a7c4438c03daaa478df29c037e18f2a1 -r 5e67b3ddbda241bf8a24969ac6caa47e9cbe5d9b lib/galaxy/tools/__init__.py
--- a/lib/galaxy/tools/__init__.py
+++ b/lib/galaxy/tools/__init__.py
@@ -2190,11 +2190,14 @@
Only applicable for dynamic_options selects, which have more than simple 'options' defined (name, value, selected).
"""
def __init__( self, input, value, other_values ):
- self.input = input
- self.value = value
- self.other_values = other_values
+ self._input = input
+ self._value = value
+ self._other_values = other_values
+ self._fields = {}
def __getattr__( self, name ):
- return self.input.options.get_field_by_name_for_value( name, self.value, None, self.other_values )
+ if name not in self._fields:
+ self._fields[ name ] = self._input.options.get_field_by_name_for_value( name, self._value, None, self._other_values )
+ return self._input.separator.join( map( str, self._fields[ name ] ) )
def __init__( self, input, value, app, other_values={} ):
self.input = input
diff -r 52de9815a7c4438c03daaa478df29c037e18f2a1 -r 5e67b3ddbda241bf8a24969ac6caa47e9cbe5d9b lib/galaxy/tools/parameters/dynamic_options.py
--- a/lib/galaxy/tools/parameters/dynamic_options.py
+++ b/lib/galaxy/tools/parameters/dynamic_options.py
@@ -525,13 +525,18 @@
"""
Get contents of field by name for specified value.
"""
+ rval = []
if isinstance( field_name, int ):
field_index = field_name
else:
assert field_name in self.columns, "Requested '%s' column missing from column def" % field_name
field_index = self.columns[ field_name ]
- for fields in self.get_fields_by_value( value, trans, other_values ):
- return fields[ field_index ]
+ if not isinstance( value, list ):
+ value = [value]
+ for val in value:
+ for fields in self.get_fields_by_value( val, trans, other_values ):
+ rval.append( fields[ field_index ] )
+ return rval
def get_options( self, trans, other_values ):
rval = []
Repository URL: https://bitbucket.org/galaxy/galaxy-central/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
1 new commit in galaxy-central:
https://bitbucket.org/galaxy/galaxy-central/changeset/52de9815a7c4/
changeset: 52de9815a7c4
user: dannon
date: 2011-12-05 17:29:31
summary: Fix for workflow multiple input regression from 6185:07f3f601d645.
affected #: 1 file
diff -r e69c868b6891ccf6deabcba8a767cdf31593d1be -r 52de9815a7c4438c03daaa478df29c037e18f2a1 lib/galaxy/web/controllers/workflow.py
--- a/lib/galaxy/web/controllers/workflow.py
+++ b/lib/galaxy/web/controllers/workflow.py
@@ -1432,7 +1432,7 @@
step.upgrade_messages = {}
# Connections by input name
step.input_connections_by_name = \
- dict( ( conn.input_name, conn ) for conn in step.input_connections )
+ dict( ( conn.input_name, conn ) for conn in step.input_connections )
# Extract just the arguments for this step by prefix
p = "%s|" % step.id
l = len(p)
@@ -1446,7 +1446,7 @@
has_upgrade_messages = True
# Any connected input needs to have value DummyDataset (these
# are not persisted so we need to do it every time)
- module.add_dummy_datasets( connections=step.input_connections )
+ module.add_dummy_datasets( connections=step.input_connections )
# Get the tool
tool = module.tool
# Get the state
@@ -1462,7 +1462,7 @@
state = step.state = module.decode_runtime_state( trans, step_args.pop( "tool_state" ) )
step_errors = module.update_runtime_state( trans, state, step_args )
if step_errors:
- errors[step.id] = state.inputs["__errors__"] = step_errors
+ errors[step.id] = state.inputs["__errors__"] = step_errors
if 'run_workflow' in kwargs and not errors:
new_history = None
if 'new_history' in kwargs:
@@ -1486,7 +1486,7 @@
tool = trans.app.toolbox.tools_by_id[ step.tool_id ]
except KeyError, e:
# Handle the case where the workflow requires a tool not available in the local Galaxy instance.
- # The id value of tools installed from a Galaxy tool shed is a guid, but these tool's old_id
+ # The id value of tools installed from a Galaxy tool shed is a guid, but these tool's old_id
# attribute should contain what we're looking for.
for available_tool_id, available_tool in trans.app.toolbox.tools_by_id.items():
if step.tool_id == available_tool.old_id:
@@ -1528,7 +1528,8 @@
invocations.append({'outputs': outputs,
'new_history': new_history})
trans.sa_session.flush()
- return trans.fill_template( "workflow/run_complete.mako",
+ if invocations:
+ return trans.fill_template( "workflow/run_complete.mako",
workflow=stored,
invocations=invocations )
else:
@@ -1549,7 +1550,7 @@
has_upgrade_messages = True
# Any connected input needs to have value DummyDataset (these
# are not persisted so we need to do it every time)
- step.module.add_dummy_datasets( connections=step.input_connections )
+ step.module.add_dummy_datasets( connections=step.input_connections )
# Store state with the step
step.state = step.module.state
# Error dict
@@ -1568,7 +1569,7 @@
# Render the form
stored.annotation = self.get_item_annotation_str( trans.sa_session, trans.user, stored )
return trans.fill_template(
- "workflow/run.mako",
+ "workflow/run.mako",
steps=workflow.steps,
workflow=stored,
has_upgrade_messages=has_upgrade_messages,
@@ -1580,8 +1581,8 @@
finally:
# restore the active history
if saved_history is not None:
- trans.set_history(saved_history)
-
+ trans.set_history(saved_history)
+
def get_item( self, trans, id ):
return self.get_stored_workflow( trans, id )
Repository URL: https://bitbucket.org/galaxy/galaxy-central/
--
This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.