Disallow expressions in metadata blocks #73

Open
geoffjentry opened this Issue Nov 29, 2016 · 2 comments

Comments

Projects
None yet
2 participants
Member

geoffjentry commented Nov 29, 2016

The WDL spec specifies that the values in the KV pairs of meta and parameter_meta blocks are strings but the grammar allows for expressions. This leads to a confusing use of RuntimeAttribute as part of the AST, as evidenced by the discussion around the comment in wdls4s #53

There doesn't appear to be a reason to use an expression in these blocks (paging @kcibul - do you disagree?), let's remove that capability which will also allow us to clean up wdl4s.

This ticket requires both updates to the spec/grammar here as well as cleaning up wdl4s.

Contributor

kcibul commented Nov 29, 2016

Hey Jeff -- can you clarify, do you mean that expressions are disallowed in metadata blocks (ie the WDL will be rejected as invalid) or that expressions won't be evaluated in the metadata blocks (ie you'll still see the text $foo or whatever).

I think the second is preferable, similar to how in programming languages comments can contain any text. I could see the use case of a meta block describing the purpose behind some expression and it would be odd to have to refer to it as the 'expression that shall not be named'

Member

geoffjentry commented Nov 29, 2016

I don't know that we could easily do the former even if we wanted to. I just meant that they're handled as strings and never evaluated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment