Viash

Latest version: v0.1.dev0

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

Scan your dependencies

Page 5 of 5

0.2.1

* NEW FEATURE `NXF`: Data references in Map form can now have values being lists. In other words, we can have multiple options which have one or more values.
* NEW FEATURE `viash ns build`: Added --parallel and --setup flag.
* NEW FEATURE `viash build`: Added --setup flag.
* NEW FEATURE: Allow changing the order of setup commands using the `setup:` variable.
* NEW (HIDDEN) FEATURE: Do not escape `${VIASH_...}` elements in default values and descriptions!
* MINOR CHANGE: Remove `---chown` flag, move to `platform.docker.chown`; is set to true by default.
* MINOR CHANGE: Perform chown during both run and test using a Docker platform.
* BUG FIX: Issue trying to parse positional arguments even when none is provided.

0.2.0

NEW FEATURES

* Allow (optional) version attributes in `functionality.yaml` and `platform.yaml`.
* Allow testing a component with the `viash test` functionality. Tests are executed in a temporary directory on the specified platform. The temporary directory contains all the resource and test files.
* `viash --version`: Add flag for printing the version of viash.
* Allow fetching resources from URL (http:// and https://)
* Allow retrieving functionality and platform YAMLs from URL.
* For docker containers, autoresolve path names of files. Use `---v path:path` or `---volume path:path` to manually mount a specific folder.
* Implement parameter multiplicity.
Set `multiple: true` to denote an argument to have higher multiplicity.
Run `./cmd --foo one --foo two --foo three:four` in order for multiple values to be added to the same parameter list.
* Added a new format for defining functionality in which the user passes the script in which the functionality and platforms are listed as yaml headers.
* A `---chown` flag has been added to Docker executables to automatically change the ownership of output files to the current user.
* `viash ns build`: A command for building a whole namespace.
* `NXF`: Join operations are now fully supported by means of `multiple`.
* `NXF`: Modules that perform joins can take either arrays (multiple input files or the same type to be joined) or hashes (multiple input files passed using different options on the CLI). Please refer to the docs for more info.

MAJOR CHANGES
* Remove passthrough parameters.
* Since CLI generation is now performed in the outer script, `viash pimp` has been deprecated.
* Write out meta.yaml containing viash run information as well as the original `functionality.yaml` and `platform.yaml` content.
* Renamed `viash export` to `viash build`.

MINOR CHANGES
* `viash run` and `viash test`: Allow changing the temporary directory by defining `VIASH_TEMP` as a environment variable. Temporary directories are cleaned up after successful executions.
* `viash run` and `viash test`: Exit(1) when execution or test fails.
* `viash build`: Add -m flag for outputting metadata after build.
* `viash run`: Required parameters can have a default value now. Produce error when a required parameter is not passed, even when a default is provided.
* `NXF`: _Modules_ are now stored under `target/nextflow` by default

BUG FIXES
* `NXF`: Correctly escape path variable when running NXF command.
* `NXF`: Surround parameters with quotes when running NXF command.

INTERNAL CHANGES
* Move CLI from inner script to outer script.
* Renamed Target to Platform
* Renamed Environment to Requirements

0.1.0

* MAJOR CHANGES: Refactoring of the Functionality class as discussed in VIP1 (1). This has resulted in a lot of internal changes, but the changes with regard to the yaml definitions are relatively minor. See the section below for more info.
* MINOR CHANGES: Updated the functionality.yamls under `atoms/` and `src/test/` to reflect these aforementioned changes.
* BUG FIX: Do not quote passthrough flags.
* BUG FIX: Allow for spaces inside of Docker volume paths.
* DOCUMENTATION: Updated the README.md.
* DOCUMENTATION: Provide some small examples at `doc/examples`.
* MINOR CHANGES: Allow for bioconductor and other repositories in the R environment.
* MINOR CHANGES: Add support for pip versioning syntax.

Changes to functionality.yaml
* ftype has been renamed to function_type. The value for this field is also being checked.
* platform has been removed.
* Instead, the first resource listed is expected to have `type: r_script`, `type: bash_script`, `type: python_script`, or `type: executable`. The other resources are expected to have `type: file` by default, and are left untouched by Viash.
* in the arguments, field `flagValue` has been removed. Instead, use `type: boolean_true` and `type: boolean_false` to achieve the same effect.

Changes to platform_(docker/native).yaml
* The `r: packages:` field has been renamed to `r: cran:`.

0.0.1

* Initial proof of concept.

Page 5 of 5

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.