common-workflow-language / common-workflow-language/cwltool
Odd validation failures for valid document
- Dominant language
- Python
- Stars
- 376
- Forks
- 255
- Avg merge
- 2d 7h
- Merged PRs (30d)
- 12
Description
## Expected Behavior
Tool should pass validation.
## Actual Behavior
Tool fails validation.
## Workflow Code
```
class: CommandLineTool
cwlVersion: v1.0
doc: ''
inputs:
input:
type: string[]
inputBinding:
prefix: --dak
position: 0
outputs: []
baseCommand: 'echo'
hints: []
# requirements: []
```
## Full Traceback
```pytb
I'm sorry, I couldn't load this CWL file.
The error was:
Traceback (most recent call last):
File "/.../cwltool/lib/python3.7/site-packages/cwltool/main.py", line 658, in main
skip_schemas=args.skip_schemas)
File "/.../cwltool/lib/python3.7/site-packages/cwltool/load_tool.py", line 308, in resolve_and_validate_document
processobj, document_loader, fileuri, loadingContext.enable_dev, metadata)))
File "/.../cwltool/lib/python3.7/site-packages/schema_salad/sourceline.py", line 187, in cmap
d[k] = cmap(v, lc=d.lc.data[k], fn=fn)
File "/.../cwltool/lib/python3.7/site-packages/schema_salad/sourceline.py", line 194, in cmap
if k in d.lc.data:
TypeError: argument of type 'NoneType' is not iterable```
## Your Environment
`cwltool 1.0.20190228155703`
Contributor guide
Research direction
Start by reproducing the provided CWL document with cwltool 1.0.20190228155703 and trace validation through cwltool/load_tool.py at resolve_and_validate_document. Then inspect schema_salad/sourceline.py at cmap, using the traceback and workflow as the regression case; done means the document validates without the NoneType error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- cli
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100