Releases: arunisaac/ccwl
Releases · arunisaac/ccwl
ccwl 0.3.0
Changes in 0.3.0 (since 0.2.0)
Features
- New
array
construct to specify array types - Allow specification of array input item separators
- New pass-through
identity
construct - New scattering
scatter
,scatter-cross
andscatter-nested-cross
constructs - New
#:stdout
and#:stderr
parameters in commands
Support staging input files
- Support returning command objects, not just workflow objects, from ccwl files
- Allow literal values as arguments
- Add message requesting users report uncaught exceptions as bugs
- Allow steps with expressions that evaluate to commands
- Allow steps with unspecified default arguments
- Support specifying command requirements
- Tolerate prefixed strings in
#:run
parameters of commands - Allow calling workflows inside other workflows
- Deprecate auto-connection of single-input commands
Compiler error messages
ccwl now comes with significantly better error messages that highlight the exact context of errors in workflow descriptions.
- Error out if arguments have been supplied more than once
- Error out when ccwl file does not return supported object
- Error out when unknown keys were passed to rename
- Error out when workflow syntax is not recognized
- Error out when body of workflow has multiple expressions
- Error out on unrecognized keyword arguments to
command
,input
oroutput
- Error out on unexpected extra argument to unary keyword argument of
command
,input
oroutput
- Error out on unexpected positional argument to
command
,input
oroutput
- Error out when external CWL workflow files do not exist
- Error out when undefined inputs are used in the
#:run
parameter of a command - Error out when command is not defined
- Error out on argument prefixes that are not strings
- Error out when
#:other
and#:binding
parameters are not YAML serializable trees - Error out when workflow step is missing required parameters
- Error out when workflow step does not accept input key
- Error out when workflow step is supplied with unknown key
- Error out when
#:run
argument to command is invalid - Error out when rename mappings are not an alternating sequence of keywords and symbols
Noteworthy bug fixes
- Escape all indicator characters when serializing YAML
- Do not escape backslashes when serializing graphviz dot
- When key is renamed, rename the corresponding CWL output ID too
- Rename final workflow output correctly
Other
- Serialize atomic YAML dictionary values on the same line
- Serialize YAML arrays with a single atomic value on the same line
- New guile-lib dependency for
(term ansi-color)
ccwl 0.2.0
Changes in 0.2.0 (since 0.1.0)
Documentation
- New "Let's write a spell check workflow" section in the manual
- New "Reuse external CWL workflows" section in the manual
Features
- Make workflow inputs global to all steps
- Support renaming intermediate inputs and outputs
- Support external CWL workflows
- Support compiling workflows to graphviz dot language for rendering as a graph
Other
- New guile-libyaml dependency
ccwl 0.1.0
First release