Not completely sure I'm in love with it? In the bw...
# team-maintainers
j
Not completely sure I'm in love with it? In the bwa example I don't see why we can't go
${prefix}/${fasta.getBaseName()}
- I don't really see the value in being able to manipulate both parts of that output. For the bamcmp example, I don't really see why you wouldn't just hard-code
_contaminant
and
_primary
and just have
${prefix}
?
m
There are some case very minor I admit in which hardcoded values aren't working
this whole replacing fasta.getBaseName by a suffix started with this
s
For something like fastqscreen, you might have a whole bunch of input genomes. These may well be in folders like:
GENOMENAME/genome.fa
(I have seen plenty of
genome.fasta
files)
party this 1
The bamcmp example, in my previous workplace we hardcoded
_human
and
_mouse
via the prefix.
party this 1
(because that is more informative than the generic
contaminant
)
m
As much as possible I would avoid hardcoding anything that can be setup via ext.whatever
but we can have a sensible default if no ext.whatever is found
j
The bamcmp example, in my previous workplace we hardcoded
_human
and
_mouse
via the prefix.
So in this module, you provide two BAMs - the same sample ID mapped to two references? Musing on it - there seem to be three options: 1. `prefix`/`prefix2` - not necessarily very programmatic, but quite functional 2.
meta.id
,
meta.ref1_id
,
meta.ref2_id
- someone will murder me if I propose more meta keys. 3. reference names are also process inputs. Perhaps a bit annoying to set up. With record types, functionally the same as the
meta
option. I think that this is possibly a situation where I could acquiesce to a
prefix2
- but I think the process inputs option would be the most "technically correct" here.
s
Yes, this tool takes the same reads mapped to two references, and finds reads which are "better" mapped to one than the other
Yeah, we don't want more meta keys, so prefix/prefix2 works nicely here
j
Basically I feel in terms of provenance - the metadata for a BAM file needs to include both the sample metadata and the reference metadata. So that should all be available as part of the process inputs in one way or another. But OK, that might be a job for "the onus is on you to make sure that's in
meta
and shove it in the
prefix
".
s
If we had free for all on the meta, you could do that
(within the nf-core/modules)
currently the way we can is via setting prefix
For this tool, I don't really care myself, I'm no longer using it (and I would use different tools if I had to do the same job in the future), and would accept hardcoding the output if that is really what is necessary. fastqscreen is more important to be honest.
j
For the aligners, I definitely think we can find a simpler solution that works with fastqscreen with a single prefix.
s
I don't understand the need to be honest