-
Notifications
You must be signed in to change notification settings - Fork 307
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Undefined behavior for string to file coercion when file does not exist #667
Comments
As of now there is no requirement in the spec for a file declaration to actually exist. You can declare any string as a file, it will simply fail when the engine tries to localize it or read it. This behaviour is consistent with other programming languages which allow files to be declared without enforcing their existence |
Agree w @patmagee. The question is whether we want to make this explicit in the spec. I think we should. |
It's unclear if a string being coerced to a file should error or not depending on if the file exists and that the file is not outputted in the WDL.
For example:
It's unclear whether this workflow should error on
File f
if the file does not exist.MiniWDL seems to not error on these cases, but only errors if the file is to be outputted, for example:
A lot of the SPEC tests also depend on this behavior, for example:
wdl/SPEC.md
Lines 1190 to 1208 in 664adc3
In particular, this section about type coercion talks about string to file coercion, but doesn't mention whether the file must exist at the coercion step.
Should execution engines ensure that files must exist at coercion or only at a workflow/task output?
The text was updated successfully, but these errors were encountered: