diff --git a/lib/galaxy/tools/__init__.py b/lib/galaxy/tools/__init__.py index 6be6568578d1..4e081232dbea 100644 --- a/lib/galaxy/tools/__init__.py +++ b/lib/galaxy/tools/__init__.py @@ -214,6 +214,7 @@ if TYPE_CHECKING: from galaxy.app import UniverseApplication + from galaxy.managers.context import ProvidesUserContext from galaxy.managers.jobs import JobSearch from galaxy.tools.actions.metadata import SetMetadataToolAction @@ -3396,7 +3397,7 @@ def _add_datasets_to_history(self, history, elements, datasets_visible=False): element_object.visible = datasets_visible history.stage_addition(element_object) - def produce_outputs(self, trans, out_data, output_collections, incoming, history, **kwds): + def produce_outputs(self, trans: "ProvidesUserContext", out_data, output_collections, incoming, history, **kwds): return self._outputs_dict() def _outputs_dict(self): @@ -3573,7 +3574,7 @@ class ExtractDatasetCollectionTool(DatabaseOperationTool): require_terminal_states = False require_dataset_ok = False - def produce_outputs(self, trans, out_data, output_collections, incoming, history, tags=None, **kwds): + def produce_outputs(self, trans, out_data, output_collections, incoming, history, **kwds): has_collection = incoming["input"] if hasattr(has_collection, "element_type"): # It is a DCE @@ -3986,7 +3987,7 @@ def add_copied_value_to_new_elements(new_label, dce_object): class ApplyRulesTool(DatabaseOperationTool): tool_type = "apply_rules" - def produce_outputs(self, trans, out_data, output_collections, incoming, history, tag_handler, **kwds): + def produce_outputs(self, trans, out_data, output_collections, incoming, history, **kwds): hdca = incoming["input"] rule_set = RuleSet(incoming["rules"]) copied_datasets = [] @@ -3994,7 +3995,7 @@ def produce_outputs(self, trans, out_data, output_collections, incoming, history def copy_dataset(dataset, tags): copied_dataset = dataset.copy(copy_tags=dataset.tags, flush=False) if tags is not None: - tag_handler.set_tags_from_list( + trans.tag_handler.set_tags_from_list( trans.get_user(), copied_dataset, tags, @@ -4023,7 +4024,7 @@ class TagFromFileTool(DatabaseOperationTool): # require_terminal_states = True # require_dataset_ok = False - def produce_outputs(self, trans, out_data, output_collections, incoming, history, tag_handler, **kwds): + def produce_outputs(self, trans, out_data, output_collections, incoming, history, **kwds): hdca = incoming["input"] how = incoming["how"] new_tags_dataset_assoc = incoming["tags"] @@ -4031,6 +4032,7 @@ def produce_outputs(self, trans, out_data, output_collections, incoming, history new_datasets = [] def add_copied_value_to_new_elements(new_tags_dict, dce): + tag_handler = trans.tag_handler if getattr(dce.element_object, "history_content_type", None) == "dataset": copied_value = dce.element_object.copy(copy_tags=dce.element_object.tags, flush=False) # copy should never be visible, since part of a collection diff --git a/lib/galaxy/tools/actions/model_operations.py b/lib/galaxy/tools/actions/model_operations.py index fdfecfb9c65e..9e78e122fc81 100644 --- a/lib/galaxy/tools/actions/model_operations.py +++ b/lib/galaxy/tools/actions/model_operations.py @@ -139,7 +139,6 @@ def execute( def _produce_outputs( self, trans: "ProvidesUserContext", tool, out_data, output_collections, incoming, history, tags, hdca_tags, skip ): - tag_handler = trans.tag_handler tool.produce_outputs( trans, out_data, @@ -148,7 +147,6 @@ def _produce_outputs( history=history, tags=tags, hdca_tags=hdca_tags, - tag_handler=tag_handler, ) if mapped_over_elements := output_collections.dataset_collection_elements: for name, value in out_data.items():