feat(coverm/{contig,genome}): add bam output#11111
feat(coverm/{contig,genome}): add bam output#11111dialvarezs merged 18 commits intonf-core:masterfrom
Conversation
jfy133
left a comment
There was a problem hiding this comment.
Main concern is the the empty lists in the tests, but otherwise minor commetns
| ] | ||
| ], | ||
| "1": [ | ||
|
|
There was a problem hiding this comment.
Empty list is because the bam output is optional. If it's not enabled, then the list is empty
| ] | ||
| ], | ||
| [ | ||
|
|
| ] | ||
| ], | ||
| [ | ||
|
|
| ], | ||
| "1": [ | ||
|
|
||
| ], |
famosab
left a comment
There was a problem hiding this comment.
Thank you for your contribution to nf-core! We really appreciate it. I added a few comments to your PR.
famosab
left a comment
There was a problem hiding this comment.
Looks good I added a few more comments.
I am wondering whether there is even a better way to handle short vs long read bams in the way we structure the output. And if we are able to control the bam file naming.
| tuple val(meta), path(input) | ||
| tuple val(meta2), path(reference) | ||
| val bam_input | ||
| val interleaved | ||
| val enable_bam_output |
There was a problem hiding this comment.
Can we put all these inputs into one tuple? That will make sure you're sure that EVERY time everything comes together in the right combination.
There was a problem hiding this comment.
You mean this?
tuple val(meta), path(input), path(reference), val(bam_input), val(interleaved), val(enable_bam_output)
I'm not so sure about that. In my opinion that would introduce extra complexity in the workflows, because you will have to build the channel by joining/combinig all together.
And other similar modules use this pattern too: minimap2, bwa, bowtie. All of them separates the reads, the reference and additional flags as separate inputs.
There was a problem hiding this comment.
I get that, we just try to converge more on that because the combine statements make sure that the channels do not get mixed up, but its more of a goal and not something I would enforce here.
There was a problem hiding this comment.
I don't think it's a bad idea to put most of these as a single input, as they're sample-dependent vals - but presumably enable_bam_output is something you'd want to configure once as a single input?
|
Thanks @jfy133! |
This PR adds BAM output to coverm modules via the
enable_bam_outputinput flag that triggers the--bam-file-cache-directoryoption with a fixed directory. The contents of this directory are emited as an optional output.PR checklist
topic: versions- See version_topicslabelnf-core modules test <MODULE> --profile dockernf-core modules test <MODULE> --profile singularitynf-core modules test <MODULE> --profile condanf-core subworkflows test <SUBWORKFLOW> --profile dockernf-core subworkflows test <SUBWORKFLOW> --profile singularitynf-core subworkflows test <SUBWORKFLOW> --profile conda