Skip to content

Commit 743ac15

Browse files
authored
Merge pull request #2045 from common-workflow-language/main
Sync Updates to prov_data_input_output branch
2 parents 52b256b + 55ccde7 commit 743ac15

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+260
-107
lines changed

.github/workflows/ci-tests.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ jobs:
3232
strategy:
3333
matrix:
3434
py-ver-major: [3]
35-
py-ver-minor: [8, 9, 10, 11, 12]
35+
py-ver-minor: [8, 9, 10, 11, 12, 13]
3636
step: [lint, unit, bandit, mypy]
3737

3838
env:

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
# Generated during tests
22
pytestdebug.log
33
tmp/
4+
*.sif
5+
involucro
46

57
# Python temps
68
__pycache__/
@@ -59,4 +61,3 @@ cwltool/_version.py
5961
cwltool_deps
6062
docs/_build/
6163
docs/autoapi/
62-

README.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#############################################################################################
2-
``cwltool``: The reference reference implementation of the Common Workflow Language standards
2+
``cwltool``: The reference implementation of the Common Workflow Language standards
33
#############################################################################################
44

55
|Linux Status| |Coverage Status| |Docs Status|

cwltool/argparser.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -921,6 +921,11 @@ def add_argument(
921921
action = DirectoryAppendAction
922922
else:
923923
action = AppendAction
924+
items = inptype["items"]
925+
if items == "int" or items == "long":
926+
atype = int
927+
elif items == "double" or items == "float":
928+
atype = float
924929
elif isinstance(inptype, MutableMapping) and inptype["type"] == "enum":
925930
atype = str
926931
elif isinstance(inptype, MutableMapping) and inptype["type"] == "record":

cwltool/builder.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -282,7 +282,7 @@ def bind_input(
282282
and "itemSeparator" not in binding
283283
):
284284
st["inputBinding"] = {}
285-
for k in ("secondaryFiles", "format", "streamable"):
285+
for k in ("secondaryFiles", "format", "streamable", "loadContents"):
286286
if k in schema:
287287
st[k] = schema[k]
288288
if value_from_expression:
@@ -349,7 +349,7 @@ def bind_input(
349349
"type": schema["items"],
350350
"inputBinding": b2,
351351
}
352-
for k in ("secondaryFiles", "format", "streamable"):
352+
for k in ("secondaryFiles", "format", "streamable", "loadContents"):
353353
if k in schema:
354354
itemschema[k] = schema[k]
355355
bindings.extend(

cwltool/checker.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -517,10 +517,13 @@ def is_conditional_step(param_to_step: Dict[str, CWLObjectType], parm_id: str) -
517517

518518

519519
def is_all_output_method_loop_step(param_to_step: Dict[str, CWLObjectType], parm_id: str) -> bool:
520-
"""Check if a step contains a `loop` directive with `all` outputMethod."""
520+
"""Check if a step contains a `loop` directive with `all_iterations` outputMethod."""
521521
source_step: Optional[MutableMapping[str, Any]] = param_to_step.get(parm_id)
522522
if source_step is not None:
523-
if source_step.get("loop") is not None and source_step.get("outputMethod") == "all":
523+
if (
524+
source_step.get("loop") is not None
525+
and source_step.get("outputMethod") == "all_iterations"
526+
):
524527
return True
525528
return False
526529

cwltool/command_line_tool.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -806,7 +806,7 @@ def remove_dirname(d: CWLObjectType) -> None:
806806
def job(
807807
self,
808808
job_order: CWLObjectType,
809-
output_callbacks: Optional[OutputCallbackType],
809+
output_callbacks: OutputCallbackType,
810810
runtimeContext: RuntimeContext,
811811
) -> Generator[Union[JobBase, CallbackJob], None, None]:
812812
workReuse, _ = self.get_requirement("WorkReuse")

cwltool/errors.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,8 @@
88

99
# flake8: noqa: F401
1010

11-
from cwl_utils.errors import WorkflowException as WorkflowException
12-
13-
1411
from cwl_utils.errors import GraphTargetMissingException as GraphTargetMissingException
12+
from cwl_utils.errors import WorkflowException as WorkflowException
1513

1614

1715
class UnsupportedRequirement(WorkflowException):

cwltool/process.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1075,7 +1075,7 @@ def visit(self, op: Callable[[CommentedMap], None]) -> None:
10751075
def job(
10761076
self,
10771077
job_order: CWLObjectType,
1078-
output_callbacks: Optional[OutputCallbackType],
1078+
output_callbacks: OutputCallbackType,
10791079
runtimeContext: RuntimeContext,
10801080
) -> JobsGeneratorType:
10811081
pass

cwltool/procgenerator.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ def receive_output(self, jobout: Optional[CWLObjectType], processStatus: str) ->
3030
def job(
3131
self,
3232
job_order: CWLObjectType,
33-
output_callbacks: Optional[OutputCallbackType],
33+
output_callbacks: OutputCallbackType,
3434
runtimeContext: RuntimeContext,
3535
) -> JobsGeneratorType:
3636
try:
@@ -41,7 +41,7 @@ def job(
4141
while self.processStatus is None:
4242
yield None
4343

44-
if self.processStatus != "success" and output_callbacks:
44+
if self.processStatus != "success":
4545
output_callbacks(self.jobout, self.processStatus)
4646
return
4747

@@ -89,7 +89,7 @@ def __init__(
8989
def job(
9090
self,
9191
job_order: CWLObjectType,
92-
output_callbacks: Optional[OutputCallbackType],
92+
output_callbacks: OutputCallbackType,
9393
runtimeContext: RuntimeContext,
9494
) -> JobsGeneratorType:
9595
return ProcessGeneratorJob(self).job(job_order, output_callbacks, runtimeContext)

0 commit comments

Comments
 (0)