nf-core / nf-core/tools

Add native support for multiple `org_path` in modules and subworkflows directories

Open
#2,996 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

  • #5673 by @AlexVCaron — closed without merging
enhancement
Dominant language
Python
Stars
322
Forks
255
Avg merge
2d 3h
Merged PRs (30d)
5

Description

Description of feature

As discussed with @edmundmiller and the infrastructure team at the Boston Hackathon 2024. Neuroimaging modules and subworkflows in nf-core will live aside of the nf-core directories, in modules/neuroimaging and subworkflows/neuroimaging. However, the current framework doesn't support it, tools need to be adapted for modules and subworkflows.

Here is a (non-exhaustive yet) list of potential problems :

  • Linting and testing locally is not possible without changing org_path in .nf-core.yml
  • Installation in pipelines is not possible without changing org_path in .nf-core.yml
  • Lint and test checks fail since they cannot discover the modules and subworkflows correctly (names are not mangled correctly since they don't contain nf-core)

A good use-case of this is the first neuroimaging PR nf-core/modules#5673 . An equivalent of the modules in that PR are also in nf-scil. There the tests and linting passes (we did many changes on our end to do so); they are a good reference.

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.

Research direction

The issue names .nf-core.yml, local lint and test checks, installation, and the nf-core/modules#5673 and nf-scil references. Start by tracing how org_path is read and used by module and subworkflow discovery, naming, linting, testing, and installation. Done means multiple org_path values work without editing .nf-core.yml and the neuroimaging layouts pass those checks.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
bioinformatics, tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.