From 0687784c571ab3ed05a43a43af1abf5cb5b14013 Mon Sep 17 00:00:00 2001 From: "Michael R. Crusoe" Date: Mon, 17 Aug 2026 17:11:53 +0300 Subject: [PATCH 1/2] Revert "expression refactor: always set the ID for ExpressionTools" This reverts commit 910f114cf812995c53c4efab138607dc0dc7e5c5. --- src/cwl_utils/cwl_v1_0_expression_refactor.py | 2 -- src/cwl_utils/cwl_v1_1_expression_refactor.py | 3 --- src/cwl_utils/cwl_v1_2_expression_refactor.py | 3 --- 3 files changed, 8 deletions(-) diff --git a/src/cwl_utils/cwl_v1_0_expression_refactor.py b/src/cwl_utils/cwl_v1_0_expression_refactor.py index d584224e..320dc7e7 100755 --- a/src/cwl_utils/cwl_v1_0_expression_refactor.py +++ b/src/cwl_utils/cwl_v1_0_expression_refactor.py @@ -409,7 +409,6 @@ def generate_etool_from_expr( else None ) return cwl.ExpressionTool( - id="_:" + str(uuid.uuid4()), inputs=inputs, outputs=outputs, expression=expression, @@ -1732,7 +1731,6 @@ def generate_etool_from_expr2( }""" ) return cwl.ExpressionTool( - id="_:" + str(uuid.uuid4()), inputs=inputs, outputs=outputs, expression=expression, diff --git a/src/cwl_utils/cwl_v1_1_expression_refactor.py b/src/cwl_utils/cwl_v1_1_expression_refactor.py index 685520e7..c890bc46 100755 --- a/src/cwl_utils/cwl_v1_1_expression_refactor.py +++ b/src/cwl_utils/cwl_v1_1_expression_refactor.py @@ -5,7 +5,6 @@ import copy import hashlib -import uuid from collections.abc import MutableSequence, Sequence from contextlib import suppress from typing import Any, cast, Final @@ -407,7 +406,6 @@ def generate_etool_from_expr( else None ) return cwl.ExpressionTool( - id="_:" + str(uuid.uuid4()), inputs=inputs, outputs=outputs, expression=expression, @@ -1738,7 +1736,6 @@ def generate_etool_from_expr2( }""" ) return cwl.ExpressionTool( - id="_:" + str(uuid.uuid4()), inputs=inputs, outputs=outputs, expression=expression, diff --git a/src/cwl_utils/cwl_v1_2_expression_refactor.py b/src/cwl_utils/cwl_v1_2_expression_refactor.py index eca589a6..4087743b 100755 --- a/src/cwl_utils/cwl_v1_2_expression_refactor.py +++ b/src/cwl_utils/cwl_v1_2_expression_refactor.py @@ -5,7 +5,6 @@ import copy import hashlib -import uuid from collections.abc import Mapping, MutableSequence, Sequence from contextlib import suppress from typing import Any, cast, Final @@ -408,7 +407,6 @@ def generate_etool_from_expr( else None ) return cwl.ExpressionTool( - id="_:" + str(uuid.uuid4()), inputs=inputs, outputs=outputs, expression=expression, @@ -1851,7 +1849,6 @@ def generate_etool_from_expr2( }""" ) return cwl.ExpressionTool( - id="_:" + str(uuid.uuid4()), inputs=inputs, outputs=outputs, expression=expression, From b00b1d20517e527911dea317a831484cade400f8 Mon Sep 17 00:00:00 2001 From: "Michael R. Crusoe" Date: Mon, 17 Aug 2026 18:24:31 +0300 Subject: [PATCH 2/2] expr refactor: set ID for created workflows TODO: test using src/cwl_utils/testdata/wc3-tool_v1_0.cwl --- src/cwl_utils/cwl_v1_0_expression_refactor.py | 2 +- src/cwl_utils/cwl_v1_1_expression_refactor.py | 1 + src/cwl_utils/cwl_v1_2_expression_refactor.py | 1 + 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/cwl_utils/cwl_v1_0_expression_refactor.py b/src/cwl_utils/cwl_v1_0_expression_refactor.py index 320dc7e7..854a9f21 100755 --- a/src/cwl_utils/cwl_v1_0_expression_refactor.py +++ b/src/cwl_utils/cwl_v1_0_expression_refactor.py @@ -5,7 +5,6 @@ import copy import hashlib -import uuid from collections.abc import MutableSequence, Sequence from contextlib import suppress from typing import Any, cast, Final @@ -294,6 +293,7 @@ def traverse( run=copy.deepcopy(process), ) workflow = cwl.Workflow( + id=process.id, inputs=wf_inputs, outputs=wf_outputs, steps=[step], diff --git a/src/cwl_utils/cwl_v1_1_expression_refactor.py b/src/cwl_utils/cwl_v1_1_expression_refactor.py index c890bc46..fba3babe 100755 --- a/src/cwl_utils/cwl_v1_1_expression_refactor.py +++ b/src/cwl_utils/cwl_v1_1_expression_refactor.py @@ -293,6 +293,7 @@ def traverse( run=copy.deepcopy(process), ) workflow = cwl.Workflow( + id=process.id, inputs=wf_inputs, outputs=wf_outputs, steps=[step], diff --git a/src/cwl_utils/cwl_v1_2_expression_refactor.py b/src/cwl_utils/cwl_v1_2_expression_refactor.py index 4087743b..2a4ca6da 100755 --- a/src/cwl_utils/cwl_v1_2_expression_refactor.py +++ b/src/cwl_utils/cwl_v1_2_expression_refactor.py @@ -294,6 +294,7 @@ def traverse( run=copy.deepcopy(process), ) workflow = cwl.Workflow( + id=process.id, inputs=wf_inputs, outputs=wf_outputs, steps=[step],