flowcraft
flowcraft copied to clipboard
Update processes directives to use selectors.
As of version 0.31.0, nextflow throws a warning when using the process.$<process_name>.<directive> = <value> notation:
WARN: Process configuration syntax $processName has been deprecated -- Replace `process.$trimmomatic_1_3 = <value>` with a process selector
And this syntax will be replaced with process selectors. Eventually, we'll need to update this, but doing so now would break pipelines running with nextflow <0.31.0.
The idea would be to replace the current syntax:
process.$fastqc.cpus = 4
process.$fastqc.memory = 4.GB
with something like:
process {
withName: fastqc {
cpus = 4
memory = 8.GB
}
}
Additionally, with the newest version of Nextflow (version 19.07.0 build 5106) the following warning is emitted:
WARN: The channel create method is deprecated -- it will be removed in a future release
I still don't know what can be used as an alternative. Additionally, the nextflow version requirement needs to be updated because these changes will break compatibility with previous versions.
So i did a little digging and what is causing this last warning are the Channel.create() methods. Stuff like ch = Channel.create() should therefore be removed. I still haven't checked if they are solely used in some templates or if they are in the engine, but it's a start.
This issue persists in version 1.4.1, and I haven't figured out any way to manually get around it.