-
Notifications
You must be signed in to change notification settings - Fork 1
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
Pre-qc V1 Refactor #11
Conversation
this is looking great - thank you! |
most of the work is actually in the pre_qc file which I'm going to push later today :) |
dd6eecd
to
3950a18
Compare
…ple items to a channel (for SEPARATE_FMX). We also need to be explicit about the values we add to SEPARATE_FMX()
@erflynn the refactor in terms of code is complete - all other improvements will be punted to future PR's (this PR has already creeped in scope). Feel free to add any comments if you like :) Tomorrow I'll be doing some regression testing as a final check (this will not change the structure of the code). |
… do not want to merge (instead of single libraries in a pool)
…(with slightly different input) for pre_qc pipeline (to unify later)
// We de-multiplex if we have merged libraries | ||
ch_sample_map = Channel.empty() | ||
|
||
if ( params.settings.demux_method == "freemuxlet"){ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
there was a small bug that I caught via my tests that made this a bit more bloated then I would like. But def would like to simplify this logic and make it more readable.
@@ -441,10 +441,29 @@ process UNMERGE_FMX { | |||
process SEPARATE_FMX { | |||
publishDir "${params.project_dir}/data/single_cell_GEX/processed/${library}/freemuxlet", mode: 'copy', pattern: "${library}*" | |||
publishDir "${params.project_dir}/data/single_cell_GEX/logs/${library}/", mode: 'copy', pattern: ".command.log", saveAs: { filename -> "separate_fmx.log" } | |||
input: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this visual diff is strangely represented here. But all I've done is added a copied the original SEPARATE_FMX
and added a specific version for the pre-qc pipeline. I didn't want to modify the original SEPARATE_FMX
since it is used by other pipelines and haven't tested it yet.
This looks fantastic! Awesome work. Really excited about the refactor and addition of tests, also the README updates are very helpful. I'll be trying this when I'm back, and can also help set up some test cases then. I think good to merge, but worth flagging this to folks in the lab who might be using it that there is a major update in this version for "pre_qc" step. |
What
The original intention of this PR is to refactor the param parsing at the beginning of the workflow (pre-qc). However in order to do this - the scope of this work has been extended to a general refactor of the entire pipeline. The goal here is to ultimately improve readability and extensibility of this pipeline. However, before we can tackle extensibility, it is often helpful to abstract away and group together complicated functionality. This is the central focus of this PR.
TODO
nf-test
nf-test
from source.There is a parsing bug that affects parameter loading: AddNow fixed with the regular release$launchDir
and change directory where Nextflow processes are executed askimed/nf-test#117 forv.0.7.3
. Thus we must use an unreleased versionnf-tests
CODE PATHS
Note:
demuxlet
punted to future PR'sdemux
, merge files:true
, run doublet finder:true
(ERRORS - see below)demux
, merge files:true
, run doublet finder:false
demux
, merge files:false
, run doublet finder:true
(ERRORS - see below)demux
, merge files:false
, run doublet finder:false
freemuxlet
, merge files:true
, run doublet finder:true
freemuxlet
, merge files:true
, run doublet finder:false
freemuxlet
, merge files:false
, run doublet finder:true
freemuxlet
, merge files:false
, run doublet finder:false
REGRESSION testing
freemuxlet
, merge files:true
, run doublet finder:true
freemuxlet
, merge files:true
, run doublet finder:false
freemuxlet
, merge files:false
, run doublet finder:true
freemuxlet
, merge files:false
, run doublet finder:false
DEMUXLET ERRORS
Pre-refactor I am getting these errors when
doublet_finder = true
.To scope down this PR, we will punt this to the future.
FUTURE TODO's
BONUS
What testing looks like