Skip to content

List type parameters are incompatible with the CLI #7099

@DriesSchaumont

Description

@DriesSchaumont

Bug report

The following main.nf

params {
    foo: List<Path>
}

workflow {
}

will not allow to set the foo argument on the cli. e.g. using --foo "<path>" or something like --foo '["<path>"]'

However, the documentation says that

All [standard types](https://docs.seqera.io/nextflow/reference/stdlib-types) except for the dataflow types (Channel and Value) can be used for parameters.

and

Parameters specified on the command line are converted to the appropriate type based on the corresponding type annotation.

Expected behavior and actual behavior

I could have overlooked something, but I was not able to find and example in the documentation that demonstrates what I'm trying to do (if this is supported at all). If this is not supported, I would like to suggest to add a note to the documentation and/or a more appropriate error message is provided.

Steps to reproduce the problem

params {
    foo: List<Path>
}

workflow {
}
touch /tmp/bar.txt && nextflow run . -main-script main.nf --foo "/tmp/bar.txt"

Program output

 N E X T F L O W   ~  version 26.04.0

Launching `main.nf` [focused_boyd] revision: 1e790e4ea2

Parameter `foo` with type List<Path> cannot be assigned to /tmp/bar.txt [String]

Environment

  • Nextflow version: 26.04.0
  • Java version: openjdk 21.0.11 2026-04-21
  • Operating system: Linux 7.0.0-3-pve #1 SMP PREEMPT_DYNAMIC PMX 7.0.0-3 (2026-04-21T22:56Z) x86_64 GNU/Linux
  • Bash version: GNU bash, version 5.2.37(1)-release (x86_64-pc-linux-gnu)

Additional context

(Add any other context about the problem here)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions