Adding ONT read support for ampliseq#1026
Conversation
I suppose 2 and 3 would be ideal, but 1 is of course easiest to implement. If we -- following my suggestion below -- go to version 3.0 of the pipeline, raising the Nextflow version would make some sense.
[...]
Fine for me. I think I had performance problems earlier, but should be fine now.
I think This would imply going to version 3.0 IMO since we're breaking the interface.
I agree with that too. Here, I do think a default for the
I don't see a problem with including a process many times and would keep it as it is as long as there aren't large performance gains to be had or bugs that could be fixed. "Don't fix if it ain't broken".
[...] |
erikrikarddaniel
left a comment
There was a problem hiding this comment.
Finally -- great work!
See my comments to your questions.
I'm certainly not requiring any changes for this, but I think having tests also for local modules can be quite helpful. At least for key steps. They can, I believe, build on each other, so one doesn't have to prepare so much test data instead relying on calling the other modules in the test for a downstream module.
|
Thanks for the review! |
Yes, that would be cleaner. |
|
Great, thanks again! |
Addresses #741.
Generally, we are running with workflows/ampliseq.nf into nextflow 25.10.4 compilation limits, nextflow 26.04.x seems fine. Essentially, the file gets too large to parse with nextflow 25.10.4. There are a couple of solutions: (1) raise minimal nextflow version, (2) reduce file size by outsourcing code to subworkflows, (3) be more code efficient.
Add path for nanopore data analysis:
With 3x Zymo D6305 & 3x Zymo D6311 the generated sequences are (22 expected):

Nf-core test data now includes ONT data & CI tests were added.
Relevant parameters:
--nanoporeinitiates Savont ASV generation instead of DADA2--sample_inference pooled&--sample_inference independentwork also with Savont,--sample_inference pseudoremains DADA2-specific--savont_optionsallows to forward additional options to Savont--skip_*params:--skip_porechop_abi,--skip_chopperPotential considerations:
--sample_inference pooledmight be desirable overindependentfor Savont (and imho also for DADA2), consider changing default--pacbio,--iontorrent,--nanopore; consider instead param--sequencing_type pacbio|iontorrent|nanopore|illumina. If we splitilluminaintoillumina_se|illumina_peto distinguish SE and PE data, we can even omit--single_end, I think. Either makeillumina(illumina_pe) default or make it a required param without default?--sequencing_type pacbiowith a new parameter to choose the ASV inferrence method, e.g.--asv_calling dada2|savontMERGE_STATS(that produces fileoverall_summary.tsvwith read numbers per sample) is included now 8 times intoampliseq.nf. Maybe instead of merging always 2 tables, the process could be changed so that at accepts an arbitrary number of tables and merges them all in one process execution, i.e. execute process once instead of many times.PR checklist
nf-core pipelines lint).nextflow run . -profile test,docker --outdir <OUTDIR>).nextflow run . -profile debug,test,docker --outdir <OUTDIR>).docs/usage.mdis updated.docs/output.mdis updated.CHANGELOG.mdis updated.README.mdis updated (including new tool citations and authors/contributors).