Viash 0.9.0-RC1
Pre-releaseViash 0.9.0-RC1 (2024-01-26): Restructure platforms into runners and engines
This release restructures the platforms
field into runners
and engines
.
Additionally changes are made to sanitize the built config output and include additional relevant meta data.
BREAKING CHANGES
-
runners
andengines
: The usage ofplatforms
is deprecated and instead these are split intorunners
andengines
(PR #510).
Theplatforms
field is still supported but will be removed in a future release.
In brief, thenative platform
became anative engine
anddocker platform
became adocker engine
.
Additionally, thenative platform
anddocker platform
became aexecutable runner
,nextflow platform
became anextflow runner
.
The fields ofdocker platform
is split betweendocker engine
anddocker runner
:port
,workdir
,setup_strategy
, andrun_args
are captured by therunner
as they define how the component is run. The other fields are captured by theengine
as they define the environment in which the component is run. One exception ischown
which is rarely set to false and is now always enabled. -
arguments
: Merge arguments into argument_groups during a json decode prepare step (PR #574). The--parse_argument_groups
option fromns list
andconfig view
is deprecated as it is now always enabled.
NEW FUNCTIONALITY
-
export json_schema
: Add a--strict
option to output a subset of the schema representing the internal structure of the Viash config (PR #564). -
config view
andns list
: Do not output internal functionality fields (#564). Additionally, add a validation that no internal fields are present when reading a Viash config file. -
project config
: Add fields in the project config to specify default values for component config fields (PR #612). This allows for a more DRY approach to defining the same values for multiple components.
MINOR CHANGES
-
testbenches
: Add testbenches for local dependencies (PR #565). -
testbenches
: Refactor testbenches helper functions to uniformize them (PR #565). -
logging
: Preserve log order of StdOut and StdErr messages during reading configs in namespaces (PR #571). -
Java 21 support
: Update Scala to 2.13.12 and update dependencies (PR #602). -
project config
: Output the project config under the default nameProjectConfig
instead ofProject
during schema export (PR #631). This is now important as the project config is now part of the component config. Previously this was overridden as the class name wasViashProject
which was less descriptive.