common-workflow-language / common-workflow-language/cwltool

extraneous warning: optional input connected to step with required input that has a default value

Open
#759 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
376
Forks
255
Avg merge
2d 7h
Merged PRs (30d)
12

Description

dynresreq-workflow-stepdefault.cwl:
```
#!/usr/bin/env cwl-runner
class: Workflow
cwlVersion: v1.0

inputs:
special_file: File?
outputs:
cores:
type: File
outputSource: report/output

steps:
count:
in:
special_file:
source: special_file
default:
class: File
location: special_file
out: [output]
run: dynresreq.cwl

report:
in:
file1: count/output
out: [output]
run: cat-tool.cwl
```
(the remaining files are from the CWL v1.0 repo)

```
/home/mcrusoe/src/toil/venv/bin/cwltool 1.0.20180508202931
Resolved 'v1.0/dynresreq-workflow.cwl' to 'file:///home/mcrusoe/common-workflow-language/v1.0/v1.0/dynresreq-workflow.cwl'
Workflow checker warning:
v1.0/dynresreq-workflow.cwl:6:3: Source 'special_file' of type ["null", "File"] may be incompatible
v1.0/dynresreq-workflow.cwl:15:7: with sink 'special_file' of type "File"
```

Contributor guide

Open the contributing guide

Research direction

Start by running cwltool against dynresreq-workflow-stepdefault.cwl and comparing the reported workflow checker warning with the optional source and default shown in the issue. Trace the checker entry point that emits this warning; done means this valid workflow no longer produces the extraneous incompatibility warning while genuine type incompatibilities remain reported.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.