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 support for more aligners #17

Open
matthdsm opened this issue Dec 21, 2022 · 4 comments
Open

Add support for more aligners #17

matthdsm opened this issue Dec 21, 2022 · 4 comments
Labels
enhancement New feature or request good first issue Good for newcomers

Comments

@matthdsm
Copy link

Description of feature

If and when possible, can you add support for other aligners next to bwa?

Thanks
M

@matthdsm matthdsm added the enhancement New feature or request label Dec 21, 2022
@matthdsm matthdsm changed the title Add support for more aligner Add support for more aligners Dec 21, 2022
@nh13
Copy link
Member

nh13 commented Dec 21, 2022

@matthdsm can you provide a justification for other aligners, and perhaps some examples of why(IGV screenshots welcome)? I personally prefer the simplicity of one supported aligner here, versus the overwhelming options that other pipelines have. Also, this pipeline is meant to follow the fgbio best practices so I’d be also curious about needing a different aligner in case we should update the best practice.

@matthdsm
Copy link
Author

Hi,

Thanks for the reply.
I can see the need for a robust consensus calling pipeline coming in the near future in our lab, but we are standardising all our pipelines to use snap-aligner. This has shown way better performance during alignment and downstream variant calling.

I think by using existing subworkflows for alignment this could added with relative ease. The biggest downside I see is that you won't be able to profit from the speed gains by piping data through the tools. Other than that, I should only come down to swapping out the aligner.

I can see the need to adhere to the fgbio best practices though, hence the "if and when". It's just that bwa, while still being industry standard, is starting to show its age with the advent of "next gen" aligners such as snap and dragmap.

Matthias

@nh13
Copy link
Member

nh13 commented Feb 15, 2023

@matthdsm I think that makes a lot of sense to use different aligners. I am leery of adding a lot of conditional logic, as it gets very complicated to maintain, and opens the flood gates about supporting/implementing everybody's favorite method ("why not mine?"). I have just seen how difficult it has been for some of our clients to modify other very popular nf-core pipelines given all the logic therein.

Nonetheless, I think having a concise proposal about which method you'd like added, as well as a reasonably polished PR, would go along way to having it integrated.

@nh13 nh13 added the good first issue Good for newcomers label Feb 15, 2023
@matthdsm
Copy link
Author

Hi Nils

I'd propose adding the fastq_dna_align subworkflow. This way you minimize the logic you need to maintain (this is done on the subworkflow side) and get support for the most popular aligners. People who want something else should first add it to the relevant subworkflow.
Barring any breaking changes, this would allow a plug and play upgrade each time the subworkflow is updated.

so TL;DR: implement subworkflow, get free aligner support from upstream.

Sadly, I'm currently working on other stuff, so I won't be able to provide a decent PR in the short term. To be honest, with this issue I was hoping someone else with the same need would pick it up so it's ready when we need it 😅
Of course, if it comes down to it I'm very willing to do some work on this, time allowing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers
Projects
None yet
Development

No branches or pull requests

2 participants