nf-core / nf-core/tools

Linting incorrectly parses the output path if it has options (like arity)

Open
#3,530 3 comments 0 reactions 1 assignee View on GitHub

@toniher is already working on this.

Since Apr 11, 2025.

bug
Dominant language
Python
Stars
322
Forks
255
Avg merge
2d 3h
Merged PRs (30d)
5

Description

Description of the bug

I am defining a process output like:

    output:
    tuple val(meta), path("*.bin", arity: 1), emit: db

My meta.yaml output section:

output:
  - db:
      - meta:
          # ...
      - "*.bin":
          # ...

Then the linting fails, telling me that my meta.yaml output section is incorrect (see output below).

It works fine if I remove the arity option. Could the output parsing be updated?

Best,

Command used and terminal output
$ nf-core modules lint sometool/somecommand

...

[✗] 1 Module Test Failed

... | Test message
──────────────────────────────────────────────────────────────────────────────────────
... | Module meta.yml does not match main.nf. Outputs should contain: {'db': ['meta', ".bin', arity: 1", '.cache*'], 'versions': ['versions.yml']} Run nf-core modules lint --fix to update the meta.yml file.
System information
  • nf-core/tools version 3.2.0
  • Nextflow 24.10.4 build 5934

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.