Matthias Zepper
09/29/2026, 3:24 PMpixi.toml on Debian Linux 13:
[workspace]
authors = ["Matthias Zepper <MatthiasZepper@users.noreply.github.com>"]
channels = ["conda-forge", "bioconda"]
name = "nf-core-tools"
platforms = ["linux-64"]
version = "0.1.0"
[tasks]
[activation.env]
NXF_APPTAINER_CACHEDIR = "${PIXI_PROJECT_ROOT}/.apptainer-cache"
NXF_SINGULARITY_CACHEDIR = "${PIXI_PROJECT_ROOT}/.apptainer-cache"
[dependencies]
python = ">=3.14.7,<3.15"
nextflow = ">=26.04.6"
nf-core = ">=4.1.0,<5"
apptainer = ">=1.5.4,<2"
When I try downloading with pixi run nf-core pipelines download rnaseq -r "3.27.0" -r "3.26.0" -o "rnaseq" -s "singularity" -x "none"
I get:
,--./,-.
___ __ __ __ ___ /,-._.--~\
|\ | |__ __ / ` / \ |__) |__ } {
| \| | \__, \__/ | \ |___ \`-._,-`-,
`._,._,'
nf-core/tools version 4.1.0 - <https://nf-co.re>
WARNING Could not find GitHub authentication token. Some API requests may fail.
INFO Detected Nextflow version 26.04.6
WARNING Deleting existing output directory: 'rnaseq'
INFO Saving 'nf-core/rnaseq'
Pipeline revision: '3.27.0, 3.26.0'
Use containers: 'singularity'
Container library: '<http://quay.io|quay.io>'
Using NXF_SINGULARITY_CACHEDIR': /home/matthias/Coding/Bioinfo/nf-core-tools/.apptainer-cache'
Output directory: 'rnaseq'
Include default institutional configuration: 'False'
INFO Downloading workflow
INFO Downloading workflow files from GitHub
INFO Fetching container names for workflow revision 3.27.0 using nextflow inspect. This might take a while.
INFO Processing workflow revision 3.27.0, found 49 container images in total.
ERROR Could not parse Nextflow config for 'rnaseq/3_27_0'. Possibly because of a Nextflow version mismatch?
Command 'nextflow config -o json rnaseq/3_27_0' failed with exit code 1
WARN: Unrecognized config option 'manifest.diagram'
ERROR ~ No such variable: task
Indeed, running nextflow config manually gives the same error pixi run nextflow config -o json rnaseq/3_27_0 :
WARN: Unrecognized config option 'manifest.diagram'
ERROR ~ No such variable: task
This does not happen when I am running it directly against the GitHub version pixi run nextflow config -o json nf-core/rnaseq -r "3.27.0" , which prints a nicely formatted JSON output.
For pipeline version 3.26.0, the warnings differ, but the issue persists:
ERROR Could not parse Nextflow config for 'rnaseq/3_26_0'. Possibly because of a Nextflow version mismatch?
Command 'nextflow config -o json rnaseq/3_26_0' failed with exit code 1
WARN: Unrecognized config option 'validation.defaultIgnoreParams'
WARN: Unrecognized config option 'validation.monochromeLogs'
ERROR ~ No such variable: task
Strangely, the CI test didn't catch this problem, even though the Nextflow version 26.04.6 is the same. nf-core tools is admittedly still 4.0.3 in the test, but since it seems to be an issue of nextflow config, I reckon the tools version is irrelevant here. Pinning Nextflow at 25.10.04 resolves the issue, but gives other issues with recent pipelines such as plugins that require more recent versions.
Any idea what the underlying reason could be?Maxime Garcia
09/30/2026, 7:51 AMMaxime Garcia
09/30/2026, 7:51 AMJonathan Manning
10/01/2026, 9:45 AMJonathan Manning
10/01/2026, 9:56 AMnf-core pipelines download failure on rnaseq 3.26/3.27 (nextflow config -o json -> No such variable: task). It's a Nextflow bug, not an rnaseq or nf-core/tools one.
Cause: Nextflow 26.04.0 to 26.04.6 evaluates closures nested inside a list of maps when rendering config -o json. Our modules configs use publishDir = [ [ path: { ...task... } ] ], so it blows up. A single flat map is fine, and so are -flat and plain nextflow config. Tracked upstream in:
- github.com/nextflow-io/nextflow/issues/7341
- github.com/nextflow-io/nextflow/issues/7474
Fix status: Fixed in github.com/nextflow-io/nextflow/pull/7375 (merged to master Jul 22) and backported to the STABLE-26.04.x branch on Aug 27, but there's no 26.04.7 release yet. 26.04.6 (Jul 9) predates it: github.com/nextflow-io/nextflow/…/…. I tested the full 3.27.0 config: 25.10.4 passes, 26.04.6 and 26.07.0-edge fail, 26.09.1-edge passes (github.com/nextflow-io/nextflow/…/…).
Workaround: Use 26.09.1-edge for the download, or wait for 26.04.7. Pinning 25.10.4 also works but causes the plugin version problems.
Why tools CI missed it: CI only tests Nextflow 25.10.4 on PRs. The tests that run Nextflow mock out the config fetch (fetch_wf_config returns {}). The one test that calls it for real uses a fresh template pipeline, which has a single-map publishDir. The real-pipeline download tests only fetch methylseq 1.6 and never parse its config.
- github.com/nf-core/tools/blob/…/test_download.py
- github.com/nf-core/tools/blob/…/pytest.yml
Suggested tools follow-ups:
- Add a fixture with list-form publishDir and a task closure, run through the real fetch_wf_config.
- Include the Nextflow version in the config cache key (it currently hashes only nextflow.config and <http://main.nf|main.nf>).
- Add 26.04.x and edge to the download test matrix.
Open: I couldn't explain why the reporter's direct nextflow config -o json nf-core/rnaseq -r 3.27.0 worked.
No change needed in rnaseq.Matthias Zepper
10/01/2026, 10:01 AM