Skip to content

Releases: dnanexus/dxWDL

Minor fixes

15 Dec 21:06
7a2bcff
Compare
Choose a tag to compare
  • Improved support for conditionals and optional values
  • Automated tests for both locked and regular workflows
  • Various minor bug fixes

Regular workflows

07 Dec 17:28
Compare
Choose a tag to compare
  • More accurate detection of the IO classes in dx:applets.
  • Improved handling of WDL constants. For example, multi word
    constants such as ["1", "2", "4"], and 4 + 11 are recognized as
    such. When possible, they are evaluated at compile time.
  • Revert default compilation to a regular workflow. It is possible to
    compile to a locked-down workflow by specifying -locked on the
    command line. To specify command workflow inputs from the command line
    use:
dx run foo -i0.N=19

Minor fixes

30 Nov 23:33
Compare
Choose a tag to compare

Not closing dx:workflows. This turns out to be too restrictive. For example, you cannot add a description to a closed workflow.

Using DNAx workflow inputs and outputs

30 Nov 22:21
b7251c8
Compare
Choose a tag to compare
  • Uplift the code to use DNAnexus workflow inputs and outputs.
    Running a workflow now has slighly easier command line syntax.
    For example, if workflow foo takes an integer
    argument N, then running it through the CLI is done like
    this:
dx run foo -iN=19                                                                                                      
  • Revamp the conversions between dx:file and wdl:file. This allows
    specifying dx files in defaults.

  • Initial support for non-empty WDL array types, for example Array[String]+.

  • Improved handling of optional values

  • An experimental new syntax for specifying inputs where the workflow
    is underspecified. WDL allows leaving required call inputs unassigned, and
    specifying them from the input file. For example, workflow math
    calls task add, but does not specify argument b. It can then
    be specified from the input file as follows: { "math.add.b" : 3}.

task add {
    Int a
    Int b
    output {
        Int result = a + b
    }
}

workflow math {
    call add { input: a = 3 }                                                                                          
    output {                                                                                                           
       add.result                                                                                                      
    }                                                                                                                  
}

The dx:workflow that is compiled from math can set this variable from
the command line as follows:

dx run math -iadd___b=5                                                                                                

This command line syntax may change in the future.

Minor improvements

11 Nov 18:02
987b0da
Compare
Choose a tag to compare
  • Adding a -quiet flag to suppress warning and informational messages during compilation.
  • Minor fixes

Docker images and lazy download

09 Nov 21:58
9081973
Compare
Choose a tag to compare

Support docker images that reside on the platform.

Tasks that have an empty command section do not download files eagerly. For example, if a task only looks at size(file), it will not download the file at all.

task fileSize {
    File in_file

    command {}
    output {
        Float num_bytes = size(in_file)
    }
}

Type lookup and evaluation improvements

31 Oct 18:47
76ffbf7
Compare
Choose a tag to compare
  • Fixed several WDL typing issues
  • Removed limitation on maximal hourly price per instance. Some bioinformatics pipelines
    regularly require heavy weight instances.
  • Improved the internal representation of JSON objects given as input

Improving scatters

19 Oct 23:30
Compare
Choose a tag to compare
  • Handle scatters where the called tasks return file arrays, and non-native platform types. This is done by spawning a subjob to collect all the outputs and bundle them.
  • Support string interpolation in workflow expressions
  • Support Azure us-west region

0.47

12 Oct 03:00
Compare
Choose a tag to compare

Support calling native dx applets, and adds a tool for automatically creating WDL interfaces for native applets.

Allowing defaults for task/workflow inputs

02 Oct 19:43
Compare
Choose a tag to compare
  • Allow applet/workflow inputs that are optional, and have a default.
  • More friendly command line interface