Skip to content

Commit

Permalink
Improve relabel identifiers message when number of columns is not 2
Browse files Browse the repository at this point in the history
Fixes #18633:
```
ValueError: dictionary update sequence element #4 has length 1; 2 is required
  File "galaxy/tools/__init__.py", line 1969, in handle_single_execution
    rval = self.execute(
  File "galaxy/tools/__init__.py", line 2066, in execute
    return self.tool_action.execute(
  File "galaxy/tools/actions/model_operations.py", line 89, in execute
    self._produce_outputs(
  File "galaxy/tools/actions/model_operations.py", line 120, in _produce_outputs
    tool.produce_outputs(
  File "galaxy/tools/__init__.py", line 3816, in produce_outputs
    new_labels_dict = dict(source_new_label)

Exception caught while attempting to execute tool with id '__RELABEL_FROM_FILE__':
```
  • Loading branch information
mvdbeek committed Aug 1, 2024
1 parent fe6d2e3 commit 2ae80c9
Showing 1 changed file with 7 additions and 1 deletion.
8 changes: 7 additions & 1 deletion lib/galaxy/tools/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -3812,8 +3812,14 @@ def add_copied_value_to_new_elements(new_label, dce_object):
if how_type == "tabular":
# We have a tabular file, where the first column is an existing element identifier,
# and the second column is the new element identifier.
new_labels_dict = {}
source_new_label = (line.strip().split("\t") for line in new_labels)
new_labels_dict = dict(source_new_label)
for i, label_pair in enumerate(source_new_label):
if not len(label_pair) == 2:
raise exceptions.MessageException(
f"Relabel mapping file line {i + 1} contains {len(label_pair)} columns, but 2 are required"
)
new_labels_dict[label_pair[0]] = label_pair[1]
for dce in hdca.collection.elements:
dce_object = dce.element_object
element_identifier = dce.element_identifier
Expand Down

0 comments on commit 2ae80c9

Please sign in to comment.