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 to STARFUSION_BUILD and refactor module #583

Merged
merged 27 commits into from
Dec 19, 2024

Conversation

atrigila
Copy link

@atrigila atrigila commented Dec 10, 2024

This PR addresses:

  • The generation of an nf-test for STARFUSION_BUILD Create nf-test for STARFUSION_BUILD #579
  • Since the original container was not working in the tests, I updated starfusion version to 1.14.
  • The code allowed for refactoring as the databases (pfam, dfam, AnnotFilterRule.pm) are downloaded automatically in the script call.
  • The fusion_annot_lib is now an external parameter that allows for easier integration with smaller datasets. Removed several lines which were hardcoded to download databases.

If this design is OK, then we will have to simply add the desired fusion_annot_lib (e.g. path to the full fusion_lib.Mar2021.dat.gz) as an input channel in the --build_references workflow (I can do that in this same PR).

Summary

Closes #579
Closes #549

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).

@atrigila atrigila self-assigned this Dec 10, 2024
Copy link

github-actions bot commented Dec 10, 2024

nf-core pipelines lint overall result: Passed ✅

Posted for pipeline commit 4d9b7c8

+| ✅ 222 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 2024-12-19 16:47:36

@atrigila
Copy link
Author

We can wait until #505 is merged to add these changes, but I'll be happy to have your feedback in the meanwhile @rannick.

modules/local/starfusion/build/main.nf Outdated Show resolved Hide resolved
modules/local/starfusion/build/environment.yml Outdated Show resolved Hide resolved
modules/local/starfusion/build/main.nf Show resolved Hide resolved
modules/local/starfusion/build/main.nf Outdated Show resolved Hide resolved
@rannick
Copy link
Collaborator

rannick commented Dec 11, 2024

Nice work!
I forgot one more question: what let you to adapt the environment.yml file with minimap2?

@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.

@atrigila
Copy link
Author

Thank you so much for your feedback @rannick! I updated the module with your suggestions and here is some extra information:

  • You can try testing it with: nextflow run . -profile test_build,docker --fusion_annot_lib <YOUR-LIB> --starfusion_build true . I am using the small .dat.gz library provided in the starfusion tutorial.
  • I added minimap2 because in one of the tests preparing the container, it said that it needed that library and it wasn't available.
  • This is the reference folder structure now: /outdir/references/starfusion/ctat_genome_lib_build_dir (which I think is the same as before).

@atrigila atrigila marked this pull request as ready for review December 12, 2024 15:06
@atrigila atrigila requested a review from rannick December 12, 2024 15:06
@atrigila atrigila mentioned this pull request Dec 18, 2024
10 tasks
@rannick
Copy link
Collaborator

rannick commented Dec 18, 2024

Here one issue is that the download of the necessary dependencies is not included any more outside of the test set

@atrigila
Copy link
Author

Here one issue is that the download of the necessary dependencies is not included any more outside of the test set

Sorry, I am not sure I follow. Which dependencies? Are you referring to the databases pfam, dfam, AnnotFilterRule.pm? The script call downloads those same files automatically. As I understand, there is no need to pre-download them as the behaviour is the same.

modules/local/starfusion/build/environment.yml Outdated Show resolved Hide resolved
@rannick
Copy link
Collaborator

rannick commented Dec 19, 2024

Please do not merge as if will break the logic of self contained references in the pipeline, we need to provide an alternative: ADDRESSED

nextflow.config Outdated Show resolved Hide resolved
conf/modules.config Outdated Show resolved Hide resolved
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.

I think we are ready to go!

@atrigila atrigila merged commit 34121d1 into nf-core:dev Dec 19, 2024
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants