Hello everyone,
On behalf of everyone who has contributed, I am pleased to announce that v1.1 of the CWL specification been approved by the CWL leadership team. This comes after two years of work collecting feedback, handling issues and feature requests, and establishing community processes that will ensure sustainable development and maintenance of the CWL standard for a long time to come.
CWL v1.0 documents can be trivially updated to CWL v1.1 simply by changing to 'cwlVersion: v1.1'.
Major new features of CWL v1.1 include:
* secondaryFiles
can now be explicitly marked as required
or not.
* Parameters on tools declared directly in a workflow no longer conflict with the enclosing workflow
*
Added ToolTimeLimit
feature, allows setting
an upper limit on the execution time of a CommandLineTool.
*
Added WorkReuse
feature, allowing to enable or disable the reuse
behavior for a particular tool or step for implementations that
support reusing output from past work.
*
Added NetworkAccess
feature, allowing to indicate whether a
process requires outgoing network access.
- * The position field of the CommandLineBinding can
now be calculated from a CWL Expression.
- * The exit code of a CommandLineTool invocation is now
available to expressions in
outputEval
as runtime.exitCode
In addition, CWL v1.1 documents have following two important changes in default behavior compared to v1.0:
* The CWL runtime no longer loads listings of Directory objects by default. This was changed after feedback that enumerating very large/deep directory trees could be very expensive in time and memory. If you need the contents of the directory to manipulate in an expression, read about the 'loadListing' field.
* CWL command line tools running inside containers now must have network access disabled by default. This was done to improve security and reproducibility. Use the new process requirement NetworkAccess to explicitly enable
Detailed changes in CWL v1.1 are covered in the following changelogs:
CWL v1.1 support is available today in the reference runner, cwltool. CWL v1.1 support will also be available in the next release of Arvados. Other platforms have plans to support CWL v1.1, contact the developers to find out their roadmap.
Thank for your support,
Peter