Skip to content

topic channel output breaks storeDir #5785

@CormacKinsella

Description

@CormacKinsella

Bug report

Expected behavior and actual behavior

Expected

  • including a storeDir directive in a process will catch only file outputs. I expected it to ignore topic channels since they are collected elsewhere.

Actual

  • storeDir doesn't ignore topic channels and fails to store any files:

Steps to reproduce the problem

  • Run script below - no files stored, warning and error thrown
  • Comment out the topic channel line - works fine

nextflow.preview.topic = true

process FOO {

	storeDir 'output'

	output:
	path "output.txt"
	tuple val(task.process), val('grep'), eval('grep --version | head -n 1'), topic: versions

	script:
	"""
	touch output.txt
	"""
}

workflow {
	FOO()
}

Program output

WARN: [FOO] StoreDir can only be used when using 'file' outputs

ERROR ~ No such file or directory: /home/cormac/sandbox/output/.command.env

Environment

  • Nextflow version: 24.10.4.5934
  • Java version: openjdk version "21.0.6" 2025-01-21
  • Operating system: Linux
  • Bash version: GNU bash, version 5.1.16(1)-release (x86_64-pc-linux-gnu)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions