1 new commit in galaxy-central:
https://bitbucket.org/galaxy/galaxy-central/commits/1528410bbe97/
Changeset: 1528410bbe97
User: natefoo
Date: 2013-05-02 21:50:00
Summary: Delete/stop jobs when a history is deleted.
Affected #: 1 file
diff -r 3044a594eef9868f41d90b43f1c993def91abe9e -r 1528410bbe976f425df16de8ee81c49c5a0432da lib/galaxy/webapps/galaxy/controllers/history.py
--- a/lib/galaxy/webapps/galaxy/controllers/history.py
+++ b/lib/galaxy/webapps/galaxy/controllers/history.py
@@ -562,6 +562,12 @@
history.purged = True
self.sa_session.add( history )
self.sa_session.flush()
+ for hda in history.datasets:
+ job = hda.creating_job_associations[0].job
+ if job.history_id == history.id and job.state in [ trans.app.model.Job.states.QUEUED, trans.app.model.Job.states.RUNNING, trans.app.model.Job.states.NEW ]:
+ # No need to check other outputs since the job's parent history is this history
+ job.mark_deleted( trans.app.config.track_jobs_in_database )
+ trans.app.job_manager.job_stop_queue.put( job.id )
# Regardless of whether it was previously deleted, we make a new history active
trans.new_history()
return trans.show_ok_message( "History deleted, a new history is active", refresh_frames=['history'] )
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/commits/3044a594eef9/
Changeset: 3044a594eef9
User: dan
Date: 2013-05-02 21:46:06
Summary: Display error to user when genomespace file browser tool is used with no imported datasets.
Affected #: 1 file
diff -r 8d8368ab03ff95c2aa88861ed0284cf48ca73631 -r 3044a594eef9868f41d90b43f1c993def91abe9e tools/genomespace/genomespace_file_browser.py
--- a/tools/genomespace/genomespace_file_browser.py
+++ b/tools/genomespace/genomespace_file_browser.py
@@ -113,6 +113,10 @@
if name.startswith( file_url_prefix ):
name = name[len( file_url_prefix ):]
file_numbers.append( int( name ) )
+ if not file_numbers:
+ if output_filename:
+ open( output_filename, 'wb' ) #erase contents of file
+ raise Exception( "You must select at least one file to import into Galaxy." )
file_numbers.sort()
used_filenames = []
for file_num in file_numbers:
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/commits/8d8368ab03ff/
Changeset: 8d8368ab03ff
User: greg
Date: 2013-05-02 21:44:05
Summary: Re-add the ability to preview and install repositories from the Valid repositories grid in the tool shed.
Affected #: 1 file
diff -r d2a4a4e4165058439ad0ffb09003f8d57a19233e -r 8d8368ab03ff95c2aa88861ed0284cf48ca73631 lib/tool_shed/grids/repository_grids.py
--- a/lib/tool_shed/grids/repository_grids.py
+++ b/lib/tool_shed/grids/repository_grids.py
@@ -1424,7 +1424,7 @@
columns = [
RepositoryGrid.NameColumn( "Name",
key="name",
- attach_popup=False ),
+ attach_popup=True ),
RepositoryGrid.DescriptionColumn( "Synopsis",
key="description",
attach_popup=False ),
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/commits/ae52981af216/
Changeset: ae52981af216
User: jgoecks
Date: 2013-05-02 21:14:50
Summary: Trackster: add editable min, max labels to tracks.
Affected #: 1 file
diff -r 262842a3689a77687ed3310ce180f5323e32b1b5 -r ae52981af216ff749092ccf16f254e77e8c096fa static/scripts/viz/trackster/tracks.js
--- a/static/scripts/viz/trackster/tracks.js
+++ b/static/scripts/viz/trackster/tracks.js
@@ -2853,7 +2853,10 @@
/**
* Actions to be taken before drawing.
*/
- before_draw: function() {},
+ before_draw: function() {
+ // Clear because this is set when drawing.
+ this.max_height_px = 0;
+ },
/**
* Draw track. It is possible to force a redraw rather than use cached tiles and/or clear old
@@ -2930,11 +2933,15 @@
/**
* Add a maximum/minimum label to track.
*/
- _add_yaxis_label: function(type, val, pref_name) {
- var css_class = (type === 'max' ? 'top' : 'bottom'),
- text = (type === 'max' ? 'max' : 'min');
-
- var label = this.container_div.find(".yaxislabel." + css_class);
+ _add_yaxis_label: function(type, val, pref_name, on_change) {
+ var track = this,
+ css_class = (type === 'max' ? 'top' : 'bottom'),
+ text = (type === 'max' ? 'max' : 'min'),
+ // Default action for on_change is to redraw track.
+ on_change = on_change || function() {
+ track.request_draw(true);
+ },
+ label = this.container_div.find(".yaxislabel." + css_class);
if (label.length !== 0) {
// Label already exists, so update value.
@@ -2942,14 +2949,13 @@
}
else {
// Add label.
- var track = this;
label = $("<div/>").text(val).make_text_editable({
num_cols: 12,
on_finish: function(new_val) {
$(".bs-tooltip").remove();
var new_val = parseFloat(new_val);
track.prefs[ pref_name ] = (!isNaN(new_val) ? new_val : null);
- track.request_draw(true);
+ on_change();
},
help_text: "Set " + text + " value"
}).addClass('yaxislabel ' + css_class).css("color", this.prefs.label_color);
@@ -3337,6 +3343,9 @@
unpack_drawables: DrawableCollection.prototype.unpack_drawables,
+ /**
+ * Change mode for all tracks.
+ */
change_mode: function(new_mode) {
TiledTrack.prototype.change_mode.call(this, new_mode);
for (var i = 0; i < this.drawables.length; i++) {
@@ -3426,8 +3435,6 @@
// Set up and draw tile.
extend(tile_data, kwargs[ 'more_tile_data' ] );
- this.tile_predraw_init();
-
var canvas = track.view.canvas_manager.new_canvas(),
tile_low = region.get('start'),
tile_high = region.get('end'),
@@ -3518,9 +3525,11 @@
},
/**
- * Actions taken before drawing a tile.
+ * Actions taken before drawing.
*/
- tile_predraw_init: function() {
+ before_draw: function() {
+ TiledTrack.prototype.before_draw.call(this);
+
//
// Set min, max for LineTracks to be largest min, max.
//
@@ -3541,6 +3550,8 @@
}
}
}
+ this.prefs.min_value = min;
+ this.prefs.max_value = max;
// Set all tracks to smallest min, biggest max.
for (var i = 0; i < this.drawables.length; i++) {
@@ -3551,6 +3562,18 @@
},
/**
+ * Update minimum, maximum for component tracks.
+ */
+ update_all_min_max: function() {
+ var track = this;
+ _.each(this.drawables, function(d) {
+ d.prefs.min_value = track.prefs.min_value;
+ d.prefs.max_value = track.prefs.max_value;
+ });
+ this.request_draw(true);
+ },
+
+ /**
* Actions to be taken after draw has been completed. Draw is completed when all tiles have been
* drawn/fetched and shown.
*/
@@ -3572,7 +3595,15 @@
this.draw_helper(true, tile.region, tile.resolution, tile.html_elt.parent(), w_scale, { height: max_height } );
tile.html_elt.remove();
}
- }
+ }
+
+ // Wrap function so that it can be called without object reference.
+ var track = this,
+ t = function() { track.update_all_min_max(); };
+
+ // Add min, max labels.
+ this._add_yaxis_label('min', this.drawables[0].prefs.min_value, 'min_value', t);
+ this._add_yaxis_label('max', this.drawables[0].prefs.max_value, 'max_value', t);
}
});
@@ -3701,6 +3732,12 @@
},
/**
+ * Actions to be taken before drawing.
+ */
+ // FIXME: can the default behavior be used; right now it breaks during resize.
+ before_draw: function() {},
+
+ /**
* Draw LineTrack tile.
*/
draw_tile: function(result, ctx, mode, resolution, region, w_scale) {
@@ -3843,14 +3880,6 @@
},
/**
- * Actions to be taken before drawing.
- */
- before_draw: function() {
- // Clear because this is set when drawing.
- this.max_height_px = 0;
- },
-
- /**
* Actions to be taken after draw has been completed. Draw is completed when all tiles have been
* drawn/fetched and shown.
*/
@@ -4211,14 +4240,6 @@
},
/**
- * Actions to be taken before drawing.
- */
- before_draw: function() {
- // Clear because this is set when drawing.
- this.max_height_px = 0;
- },
-
- /**
* Additional initialization required before drawing track for the first time.
*/
predraw_init: function() {
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/commits/f7a2d117ad02/
Changeset: f7a2d117ad02
User: greg
Date: 2013-05-02 17:57:42
Summary: Fix for generating a repository dependency key when prior installation required is true.
Affected #: 2 files
diff -r a26ec089b62fc2eb4824e738b7cc668b481de184 -r f7a2d117ad02430426fef338f991f063853c377e lib/tool_shed/util/repository_dependency_util.py
--- a/lib/tool_shed/util/repository_dependency_util.py
+++ b/lib/tool_shed/util/repository_dependency_util.py
@@ -256,12 +256,34 @@
message = '%s ' % str( error )
return message
-def get_key_for_repository_changeset_revision( toolshed_base_url, repository, repository_metadata ):
- return container_util.generate_repository_dependencies_key_for_repository( toolshed_base_url=toolshed_base_url,
- repository_name=repository.name,
- repository_owner=repository.user.username,
- changeset_revision=repository_metadata.changeset_revision,
- prior_installation_required=False )
+def get_key_for_repository_changeset_revision( toolshed_base_url, repository, repository_metadata, all_repository_dependencies ):
+ prior_installation_required = get_prior_installation_required_for_key( toolshed_base_url, repository, repository_metadata, all_repository_dependencies )
+ # Create a key with the value of prior_installation_required defaulted to False.
+ key = container_util.generate_repository_dependencies_key_for_repository( toolshed_base_url=toolshed_base_url,
+ repository_name=repository.name,
+ repository_owner=repository.user.username,
+ changeset_revision=repository_metadata.changeset_revision,
+ prior_installation_required=prior_installation_required )
+ return key
+
+def get_prior_installation_required_for_key( toolshed_base_url, repository, repository_metadata, all_repository_dependencies ):
+ """
+ If all_repository_dependencies contains a repository dependency tuple that is associated with the received repository, return the
+ value of the tuple's prior_installation_required component.
+ """
+ rd_tuple = ( toolshed_base_url, repository.name, repository.user.username, repository_metadata.changeset_revision )
+ for rd_key, rd_tups in all_repository_dependencies.items():
+ if rd_key in [ 'root_key', 'description' ]:
+ continue
+ for rd_tup in rd_tups:
+ rd_toolshed, rd_name, rd_owner, rd_changeset_revision, rd_prior_installation_required = suc.parse_repository_dependency_tuple( rd_tup )
+ if rd_toolshed == toolshed_base_url and \
+ rd_name == repository.name and \
+ rd_owner == repository.user.username and \
+ rd_changeset_revision == repository_metadata.changeset_revision:
+ return rd_prior_installation_required
+ # Default prior_installation_required to False.
+ return False
def get_repository_dependencies_for_changeset_revision( trans, repository, repository_metadata, toolshed_base_url,
key_rd_dicts_to_be_processed=None, all_repository_dependencies=None,
@@ -285,7 +307,7 @@
metadata = repository_metadata.metadata
if metadata:
if 'repository_dependencies' in metadata:
- current_repository_key = get_key_for_repository_changeset_revision( toolshed_base_url, repository, repository_metadata )
+ current_repository_key = get_key_for_repository_changeset_revision( toolshed_base_url, repository, repository_metadata, all_repository_dependencies )
repository_dependencies_dict = metadata[ 'repository_dependencies' ]
if not all_repository_dependencies:
all_repository_dependencies = initialize_all_repository_dependencies( current_repository_key,
@@ -554,7 +576,7 @@
# Change the folder label from 'Missing repository dependencies' to be 'Repository dependencies' for display.
root_container = containers_dict[ 'missing_repository_dependencies' ]
for sub_container in root_container.folders:
- # There should only be 1 subfolder.
+ # There should only be 1 sub-folder.
sub_container.label = 'Repository dependencies'
containers_dict[ 'repository_dependencies' ] = root_container
containers_dict[ 'missing_repository_dependencies' ] = None
@@ -608,8 +630,8 @@
def prune_invalid_repository_dependencies( repository_dependencies ):
"""
- Eliminate all invalid entries in the received repository_dependencies dictionary. An entry is invalid if if the value_list of the key/value pair is
- empty. This occurs when an invalid combination of tool shed, name , owner, changeset_revision is used and a repository_metadata reocrd is not found.
+ Eliminate all invalid entries in the received repository_dependencies dictionary. An entry is invalid if the value_list of the key/value pair is
+ empty. This occurs when an invalid combination of tool shed, name , owner, changeset_revision is used and a repository_metadata record is not found.
"""
valid_repository_dependencies = {}
description = repository_dependencies.get( 'description', None )
diff -r a26ec089b62fc2eb4824e738b7cc668b481de184 -r f7a2d117ad02430426fef338f991f063853c377e templates/webapps/tool_shed/repository/common.mako
--- a/templates/webapps/tool_shed/repository/common.mako
+++ b/templates/webapps/tool_shed/repository/common.mako
@@ -980,6 +980,7 @@
</div>
%endif
%if tool_test_results_root_folder:
+ <p/><div class="toolForm"><div class="toolFormTitle">Automated tool test results</div><div class="toolFormBody">
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.