What’s new?
Argument groups allow for grouping arguments together by function or category, making the --help
output a lot more clear for components with a lot of arguments.
Full changelog
NEW FUNCTIONALITY
Functionality
: Allow specifying argument groups. Example:functionality: ... argument_groups: - name: First group arguments: [foo, bar] description: Description
Addition of the
viash_nxf_schema
component for converting a Viash config (for a workflow) into a nextflow schema file.NextflowVdsl3Platform
: Use--param_list
to initialise a Nextflow channel with multiple parameter sets. Possible formats are csv, json, yaml, or simply a yaml_blob. A csv should have column names which correspond to the different arguments of this pipeline. A json or a yaml file should be a list of maps, each of which has keys corresponding to the arguments of the pipeline. A yaml blob can also be passed directly as a parameter. Inside the Nextflow pipeline code, params.param_list can also be used to directly a list of parameter sets. When passing a csv, json or yaml, relative path names are relativized to the location of the parameter file.Examples:
nextflow run "target/foo/bar/main.nf" --param_list '[{"id": "foo", "input": "/path/to/bar"}]' nextflow run "target/foo/bar/main.nf" --param_list "params.csv" --reference "/path/to/ref"
MAJOR CHANGES
NextflowVdsl3Platform
: The functionality is now slurped from a json instead of manually taking care of the formatting in Groovy.NextflowVdsl3Platform
: The--help
is auto-generated from the config.
MINOR CHANGES
NextflowVdsl3Platform
: Allow both--publish_dir
and--publishDir
whenauto.publish = true
.NextflowVdsl3Platform
: Allow passing parameters with multiplicity > 1 from Nextflow CLI.Main
: Addedviash --cli_export
which outputs the internal cli construction information to console. This is to be used to automate populating the documentation website.viash ns
: Display success and failure summary statistics, printed to stderr.DataObject
:.alternatives
is now aOneOrMore[String]
instead ofList[String]
, meaning you can now specify{ type: string, name: "--foo", alternatives: "-f" }
instead of{ type: string, name: "--foo", alternatives: [ "-f" ] }
BashWrapper
: Added metadata fieldmeta_executable
, which is a shorthand notation formeta_executable="$meta_resources_dir/$meta_functionality_name"
INTERNAL CHANGES
Arguments
: Internal naming of functionality.arguments is changed from DataObject to Arguments. Change is also applied to child classes, e.g. StringObject -> StringArgument.Script
: Allow more control over where injected code ends up.Restructure type system to allow type-specific arguments.
BUG FIXES
DockerPlatform
: Changeorg.opencontainers.image.version
annotation tofunctionality.version
when set. Additionally fixed retrieving the git tag possibly returningfatal: No names found, cannot describe anything.
or similar.viash config inject
: Fix config inject when.functionality.inputs
or.functionality.outputs
is used.BashWrapper
: Don’t addbc
as dependency. Only perform integer/float min/max checks when bc is available, otherwise ignore.DockerPlatform
: Fix inputs & outputs arguments being present twice.viash ns test
: Silently skip Nextflow platforms as these don’t support tests and will always fail.Testbenches
: Better capture expected error messages while running testbenches. Having these show on the console could be confusing.NextflowVdsl3Platform
: Fix issue when running multiple VDSL3 modules concurrently on the same channel.