Download

  1. Title 0.9.9.2 Release
  2. Release 0.9.9.2
  3. Link bpipe-0.9.9.2.tar.gz


  4. Changes for Bpipe Version 0.9.9.2 
    ===================================
    
    This release has focused primarily on performance, especially
    for pipelines involving high concurrency and large numbers
    of inputs and outputs. To achieve this, Bpipe now depends
    on new Java APIs available in Java 1.7. This means that
    Bpipe now requires Java 1.7 and will not work any longer
    with Java 1.6.
    
    Additionally, a range of small bugs have been fixed and 
    smaller features added. 
    
    ## Backwards Compatibility
    
    Of note, there is one change that can
    affect backwards compatibility. This relates to use of the 
    'transform' construct when multiple files of the same type are
    transformed to multiple files of a different type. In the past
    you could write a single transform such as:
    
    ```
    transform('.txt') to('.csv') {
        ...
    }
    ```
    
    Previously this would transform every text file in the inputs
    to a corresponding CSV file as output. From 0.9.9.2 forward
    this will only transform a single input file. For multiple files, the
    transform must now be specified as:
    
    ```
    transform('*.txt') to('.csv') {
        ...
    }
    ```
    
    This change has been made to resolve ambiguity, since there was no 
    way previously to specify that a stage transforms exactly 1 input file
    of a given type.
    
    ## Change list
    
       - Large scale refactoring for performance with
         large numbers of inputs / outputs.
         Bpipe now requires Java 1.7!
    
       - Issue #180: bpipe doesn't allow empty branch list 
    
       - Issue #184: chr not passed to nested parallel pipeline 
    
       - fix wrong output referenced for 2nd double ext in
         produce eg: $output.bar.txt 
    
       - support for modules in TorqueCommandExecutor 
    
       - fix potential failure to cleanup files on error 
    
       - Issue #175: Check state can be confused b/w branches 
    
       - Handle errors in log init so that log fail doesn't prevent
         ability to run Bpipe (java logging tries to obtain exclusive 
         locks which aren't supported on some file systems. 
    
       - Update to groovy 2.4.6 (helps performance)
    
       - Fix ambiguous behavior of transform() when multiple inputs
         match transform pattern. New behavior requires transform('*.ext') to
         match upstream multiple files ending with .ext (minor possibilty for 
         backwards incompatibility)
    
       - Fix output resolved as input for produce+double ext + numbered input 
    
       - Fix exception  when check saved without pass/fail set 
    
       - Fix leak of tail / sed processes under OSX in some
         situations
    
       - Fix bootstrap theme for docs not recognised 
    
       - Support to open a debugger Groovy console at any point 
         in a pipeline using debug() function
    
       - Add settings.gradle to stop build failing if
         checked out to directory other than 'bpipe' 
    
       - Fix possible hang when multi command used inside
         produce(...) 
    
       - support for "mem_param" for torque executor
         this allows to choose which parameter Bpipe should use
         between "mem", "pvmem", etc.  by setting mem_param="mem"
         in a command config 
    
       - Issue #176: support multiple commands per config in multi 
    
       - Various documentation fixes and cleanups
    
       - fix double file extension on input not resolving second and
         later input (eg: when referenced in form $input2.foo.bar)