Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add nf-test for FUSIONCATCHER subworkflow #591

Merged
merged 12 commits into from
Jan 7, 2025

Conversation

alanmmobbs93
Copy link

PR checklist

  • This comment contains a description of changes (with reason).
  • If you've fixed a bug or added code that should be tested, add tests!
  • If you've added a new tool - have you followed the pipeline conventions in the contribution docs
  • If necessary, also make a PR on the nf-core/rnafusion branch on the nf-core/test-datasets repository.
  • Make sure your code lints (nf-core lint).
  • Check for unexpected warnings in debug mode (nextflow run . -profile debug,test,docker --outdir <OUTDIR>).
  • Usage Documentation in docs/usage.md is updated.
  • Output Documentation in docs/output.md is updated.
  • CHANGELOG.md is updated.
  • README.md is updated (including new tool citations and authors/contributors).

It's important to know that it takes almost and hour to download the references.

Added

  • nf-test for local subworkflow FUSIONCATCHER. Note: fusioncatcher reference files are large for testing purposes. After this it would be ideal to dedicate some time to create or obtain a reduced reference, as explained in Create small reference for fusioncatcher (chr4) #580.

Changed

  • Refactored subworkflow inputs.
  • Improve fusioncatcher detect module's input, adding meta components.

Perspectives

  • It's necessary to improve how modules are skipped and the use of the dummy file.

@nf-core-bot
Copy link
Member

Warning

Newer version of the nf-core template is available.

Your pipeline is using an old version of the nf-core template: 3.0.2.
Please update your pipeline to the latest version.

For more documentation on how to update your pipeline, please see the nf-core documentation and Synchronisation documentation.

Copy link

github-actions bot commented Dec 18, 2024

nf-core pipelines lint overall result: Passed ✅

Posted for pipeline commit 557a0ed

+| ✅ 220 tests passed       |+
#| ❔   2 tests were ignored |#

❔ Tests ignored:

  • files_unchanged - File ignored due to lint config: .github/CONTRIBUTING.md
  • files_unchanged - File ignored due to lint config: .github/PULL_REQUEST_TEMPLATE.md

✅ Tests passed:

Run details

  • nf-core/tools version 3.0.2
  • Run at 2025-01-03 19:05:59

@alanmmobbs93 alanmmobbs93 requested a review from atrigila January 2, 2025 20:48
Copy link

@atrigila atrigila left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Excellent job! Let's wait for @rannick's feedback before merging just to make sure this does not disrupt anything.

conda "${projectDir}/environment.yml"
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/d5/d53f36e9e01d14a0ae8e15f8046f52b2883c970c27fe43fdfbd9440a55f5403f/data' :
'community.wave.seqera.io/library/fusioncatcher:1.33--4733482b637ef92f' }"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It works with 1.33 now because ensembl 113 directory does not contain 37 and 38 which was confusing the build. It is not compatible with ensembl 112 and we can't force to use a certain version. Conclusion: use 113/gencode 47 as default

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

And keep 1.33. Add in documentation where to find the references for ensembl 112


input:
tuple val(meta), path(fasta)
path reference
tuple val(meta), path(fastqs, stageAs: "input/*")
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice!


// TODO: Remove fusioncatcher_fusions as parameter.
// TODO: remove dummy file. Work with Channel.empty()
// TODO: if the files were already produced and the user want to skip the module because of this, they should be taken them from the sample sheet
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Open issues?
Using fusioncatcher_fusions is practical if you want to run the last part of rnafusion: fusionreport and fusioninspector

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@rannick thanks for looking into this! Let me understand this correctly, the fusioncatcher_fusions parameter can be used to feed one single file and hence skip the FUSIONCATCHER_DETECT process, am I right? I was wondering whether this single file should contain the data for all the samples that the user want to analyze with fusionreport and fusioninspector, or if the user has to supply one file per sample.
If the second scenario is the correct one, then I got it wrong and this approach is almost ok, just a little bit of fine tunning. But if the first scenario is the correct, then we should change more things

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes fusioncatcher_fusions allows to skip FUSIONCATCHER_DETECT.
That is a good point about the samples, the files probably have to be fed per sample

Copy link
Collaborator

@rannick rannick left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, just have a look at my comments

@alanmmobbs93 alanmmobbs93 merged commit 54350d1 into nf-core:dev Jan 7, 2025
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants