Add native support for multiple `org_path` in modules and subworkflows directories
Nobody has claimed this yet.
- #5673 by @AlexVCaron — closed without merging
- 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_pathin.nf-core.yml - Installation in pipelines is not possible without changing
org_pathin.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
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- 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