Miniwdl

Latest version: v1.12.0

Safety actively analyzes 629564 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 11 of 12

0.3.0

`miniwdl run`

:checkered_flag: This is the first release with a credible built-in capability to execute workflows on the local host. It's in early testing, but please try it out and let us know about any interoperability problems via [Issues](https://github.com/chanzuckerberg/miniwdl/issues)!

**Salient limitations:**

* Calls run sequentially (202, 203)
* Task input files are mounted read-only; commands to rename or remove them will fail (210)
* Task output files must reside in or under the initial working directory (214)
* Library functions that involve file I/O (e.g. `read_string()`, `write_lines()`) are available in tasks but not workflows (204)
* Namespace discrepancies may interfere with specifying optional inputs to sub-workflow calls (193)

`miniwdl check`

* detects cyclic dependencies involving scatter & conditional expressions

`miniwdl cromwell`

* accept --options with Cromwell workflow options JSON file (206 prihoda)
* fix CLI arg completer regression
* Cromwell 44

`WDL`

* Refactor workflow AST to facilitate runtime dependency analysis, with `WorkflowNode` and `WorkflowSection` base classes exposing dependency ID strings, and explicit `Gather` nodes
* Refactor `WDL.load()` to permit overriding file-reading logic (177 dinvlad)
* Rename `WDL.{Workflow,Scatter,Conditional}.elements` to `.body`
* Rename `WDL.Expr.Ident.ctx` to `WDL.Expr.Ident.referee`

Housekeeping

* Replace wget subprocess calls with Python standard library functionality (191 nh13)
* Make all of package's internal imports relative & clean up naming for readability

0.2.2

`miniwdl cromwell`

* disable `--path` since it doesn't work with Cromwell (see 131, 118)

`WDL`

* clean up & [document](https://miniwdl.readthedocs.io/en/latest/#module-WDL.Lint) programmatic access to `miniwdl check` lint warnings
* parser: allow comma after last element of map and object literals, as well as arrays

`miniwdl run`

* new subcommand shares `miniwdl cromwell`'s command-line interface, instead invoking the work-in-progress internal runner. Currently, it can be used to run individual tasks (WDL documents with one task) on the local host.

0.2.1

`miniwdl check`

* `UnknownRuntimeKey` for task runtime entries not on a list of known keys (150 pshapiro4broad)

`miniwdl cromwell`

* accept `--input INPUTS.json` with a Cromwell-style input JSON file, merging in any additional inputs from the command line (165 prihoda)
* allow override of Cromwell JAR and config file through arguments and env vars (171 cmarkello)
* Cromwell 42

`WDL` package

* struct initialization from map literal (where the key type is `String`-coercible and the value type is coercible to each respective struct member type)
* struct literals (object/map) may omit optional struct members
* parser: remove remaining constraints on the order of workflow elements/sections (173 patmagee)

meta

* Add [biowdl/aligning](https://github.com/biowdl/aligning) and [biowdl/expression-quantification](https://github.com/biowdl/expression-quantification) test corpi
* miniwdl package is available through conda-forge (rhpvorderman)

0.2.0

`miniwdl check`

- detect call name collisions even if callee has no outputs (133)
- `UnusedDeclaration` ignore likely secondary files based on name suffix *case-insensitively*

`miniwdl cromwell`

- adds support for shell tab-completion of the available input names, using [argcomplete](https://github.com/kislyuk/argcomplete)

`WDL`
- add `WDL.values_to_json` and `WDL.values_from_json` for conversion between `WDL.Env.Values` and Cromwell-style JSON
- `WDL.load` can take `source_text : str` of the source code instead of reading it from disk/URI (154)
- provide `pos : SourcePosition` for `SyntaxError` and `ImportError` (153 dinvlad)
- task 'non-input' declarations may interleave anywhere among other task sections (156)
- workflow output expressions can reference previous workflow outputs (155 rhpvorderman)
- exclude output declarations from Workflow.available_inputs (135 patmagee)
- StdLib refactoring and several additional function implementations
- Address value coercion loose ends: enforcing optional/nonempty quantifiers, recursive coercions in compound types, refined error objects & messages
- Errors no longer embed source line/column in the textual message; the `pos : SourcePosition` attribute remains available

meta

* Add [biowdl/tasks](https://github.com/biowdl/tasks) test corpus
* Improving test suite Mac OS X compatibility although some issues remain

Starting from this release, work-in-progress WDL runner functionality is included in the code base & test suite; but it's still far from usable for general purposes.

0.1.7

miniwdl

* improved implementation of `miniwdl --version` (125 jtratner)

`WDL`

* major internal refactoring of `StdLib`, prepares for runner implementation
* allow input/output sections anywhere in task body (126 mwalker174)
* fix resolution of struct types within compound-type struct members (127 patmagee)

API changes

* `WDL.Expr.{infer_type,eval}` and `WDL.Tree.*.typecheck` can take a specialized `StdLib` implementation with context-specific functions/types

0.1.6

miniwdl check

* Fix suppression of UnusedDeclaration on dxWDL task stubs for 'native' applets (120 jtratner)

miniwdl cromwell

* Bump to Cromwell 40
* Add `--version` flag to display miniwdl & Cromwell versions (121)

`WDL`

* Add JSON codec for all `WDL.Value` classes
* Add `WDL.Error.RuntimeError`

API changes

* rename `WDL.StructType` to `WDL.StructTypeDef` to reduce confusion with `WDL.Type.StructInstance`
* change internal representation of `meta` and `parameter_meta` values from `string` to `string_literal` (also fix parsing of escaped single-quotes in `string_literal`)

Page 11 of 12

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.