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

anonymous directory are allowed to only have a listing

Open
#226 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

According to my reading of http://www.commonwl.org/v1.0/Workflow.html#Directory

```
if d["class"] == "Directory" and ("listing" not in d or "basename" not in d):
raise validate.ValidationException("Anonymous directory object must have 'listing' and 'basename' fields.")
```

is incorrect

https://github.com/common-workflow-language/cwltool/blob/master/cwltool/pathmapper.py#L59

@tetron Am I reading the spec wrong? Seems that if there is a listing and nothing else then "[t]he implementation must assign a unique identifier for the location field.", then the basename follows "If not provided, the implementation must set [the basename] based on the location field by taking the final path component after parsing location as an IRI."

This came up while debugging https://www.biostars.org/p/216220/ -- so perhaps the issue is that the reference implementation thinks this directory is anonymous when in fact it will have a real path in the output directory.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.