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

cwltool allows underscores in parameter reference symbols

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

Description

cwltool [currently](https://github.com/common-workflow-language/cwltool/blob/1a839255795882894b4bbfea6d909a74cacb1d6a/cwltool/expression.py#L28) allows symbols in parameter references to contain any character that matches `\w`, which includes underscores as well as alphanumerics, but the spec only allows symbols to contain "Unicode alphanumerics".

Several of our own workflows as well as at least one workflow in the [common-workflow-language/workflows](https://github.com/common-workflow-language/workflows) repo (`tools/kallisto-index.cwl`) use underscores in parameter references – either the spec needs to be updated to allow underscores in symbols, or cwltool should be modified to disallow underscores in symbols (presumably other runners may need to be updated as well in that case).

## Workflow Code

```cwl
cwlVersion: v1.0
class: CommandLineTool
baseCommand: echo
inputs:
- id: a_b_c
type: string
default: "123"
outputs: []
arguments:
- $(inputs.a_b_c)
```

## Your Environment

* cwltool version: 1.0.20180808165120

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.