This release includes a number of backwards compatible fixes and improvements to the WDL specification.
Some highlights include:
else if/elseclauses for conditionals.- This allows you to more concisely and elegantly express conditional clauses.
- Enumeration types (
enum) for defining closed sets of named choices.- This prevents silent failures from typos by catching invalid values at validation time rather than runtime.
- The
split()standard library function.- This eliminates the need for shell workarounds when parsing delimited strings.
- Access to
task.previousfor runtime access to the previous attempt's computed requirements.- This enables dynamic resource allocation patterns like doubling memory on retry.
- Relaxed version imports allowing any WDL v1.x document to import v1.x or lower.
- This enables better package management and dependency handling across the ecosystem.
See the blog post for an overview or the CHANGELOG.md for more details on what's changed.