2.9.0 2022-02-08
- Command file is now echoed to stderr rather than stdout
- Fixes a bug where directory support was broken for WDL; directories in WDL are represented as strings
- Switches from using cwltool to cwlpack
- Fix an issue with default values in CWL
- Adds support for publishing global workflows from dxCompiler-generated WDL workflows; see documentation
- Fix an error message detecting unsupported CWL version
- Update sbt to 1.6.1
Dependency updates
cwlScala 0.8.0
- Breaking
- Parser API has changed substantially, with parameters added, removed, and rearranged
Parser.parse
method is now private - useparseString
orparseFile
instead- Removes all options to modify IDs during parsing
- Handles workflows packed by cwlpack
- Adds
Process.simpleName
method to return simplified process name from ID automatically generated bycwlpack --add-ids
- Adds
Identifiable.copySimplifyIds
method to deep-copy objects with simplified IDs - Adds
CwlEnum.symbolNames
function for getting enum symbols without any namespace prefixes - Adds
coerce
option toEvaluator.evaluate
to actually perform type coercion, rather than just checking that the result is coercible to the specified type - Trims
StringValue
when coercing to primitive types - Fixes
Evaluator.finalizeInputValue
for compound and optional types Evaluator.finalizeInputValue
loads file contents from remote file source if file does not exist locallyCwlType.coerceTo
now returns both the coerced-to type and value- Added
CwlType.CwlGenericRecord
, which is coercible to eitherCwlInputRecord
orCwlOutputRecord
- Fixes evaluation of values with multiple possible types