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

Refactor mitochondrial analysis workflow #419

Merged
merged 29 commits into from
Sep 18, 2023

Conversation

ramprasadn
Copy link
Collaborator

PR checklist

This PR,

  • Breaks down mitochondrial analysis workflow into smaller subworkflows that are more modular.
  • replaces the parameter skip_mt_analysis which was used to turn on/off the mitochondrial workflow
  • adds a new parameter skip_mt_annotation which can be used to turn on/off annotation and ranking for mitochondrial SNVs

With changes in this PR, mitochondrial SNVs will no longer be called by deepvariant, and they will come from the GATKs best practices workflow for mitochondria.

  • This comment contains a description of changes (with reason).
  • If you've fixed a bug or added code that should be tested, add tests!
  • If you've added a new tool - have you followed the pipeline conventions in the contribution docs
  • If necessary, also make a PR on the nf-core/raredisease branch on the nf-core/test-datasets repository.
  • Make sure your code lints (nf-core lint).
  • Ensure the test suite passes (nextflow run . -profile test,docker --outdir <OUTDIR>).
  • Ensure the test suite passes (nextflow run . -profile test_one_sample,docker --outdir <OUTDIR>).
  • Usage Documentation in docs/usage.md is updated.
  • Output Documentation in docs/output.md is updated.
  • CHANGELOG.md is updated.
  • README.md is updated (including new tool citations and authors/contributors).

@github-actions
Copy link

github-actions bot commented Aug 31, 2023

nf-core lint overall result: Passed ✅ ⚠️

Posted for pipeline commit dbb8c38

+| ✅ 151 tests passed       |+
#| ❔   4 tests were ignored |#
!| ❗   1 tests had warnings |!

❗ Test warnings:

  • pipeline_todos - TODO string in awsfulltest.yml: You can customise AWS full pipeline tests as required

❔ Tests ignored:

  • files_exist - File is ignored: conf/modules.config
  • files_unchanged - File ignored due to lint config: .github/PULL_REQUEST_TEMPLATE.md
  • files_unchanged - File ignored due to lint config: .github/workflows/linting.yml
  • files_unchanged - File ignored due to lint config: .gitignore or .prettierignore or pyproject.toml

✅ Tests passed:

Run details

  • nf-core/tools version 2.9
  • Run at 2023-09-15 21:39:30

@ramprasadn ramprasadn marked this pull request as ready for review September 1, 2023 07:23
Copy link
Contributor

@Lucpen Lucpen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Found one tiny thing, I will take another look before approving

docs/usage.md Outdated
Comment on lines 133 to 137
5. Variant calling - Structural variants (SV) (Tiddit & Manta)
6. SNV annotation & ranking (rohcall, vcfanno, ensembl VEP, GENMOD)
7. SV annotation & ranking (SVDB query, ensembl VEP, GENMOD)
8. Mitochondrial analysis
8. Mitochondrial annotation

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mitochondrial annotation is 8 here, but was 9 before (line 23) and is 9 later on (line 245), check if it's correct

Copy link
Collaborator

@jemten jemten left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Massive work Ram. Some small comments and questions

subworkflows/local/call_snv.nf Outdated Show resolved Hide resolved
.genotyped_intervals_vcf
.collect{it[1]}
.set { gcnvcaller_vcf }

CALL_SV_MT (ch_mt_bam_bai, ch_genome_fasta)

// CALL_SV_MT_SHIFT (ch_mtshift_bam_bai, ch_mtshift_fasta)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

remove?

@@ -0,0 +1,111 @@
//
// Merge and annotate MT
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
// Merge and annotate MT
// Merge MT variants

subworkflows/local/variant_calling/postprocess_MT_calls.nf Outdated Show resolved Hide resolved
Comment on lines 38 to 47
ch_mt_vcf
.combine(ANNOTATE_CADD.out.vcf.ifEmpty("null"))
.branch { it ->
merged: it[2].equals("null")
return [it[0], it[1]]
cadd: !(it[2].equals("null"))
return [it[2], it[3]]
}
.set { ch_for_mix }
ch_vep_in = ch_for_mix.merged.mix(ch_for_mix.cadd)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there reason to use the same type of channel combinations as in #421 ?

@ramprasadn ramprasadn requested review from jemten and Lucpen September 18, 2023 06:57
Copy link
Collaborator

@jemten jemten left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good

@ramprasadn ramprasadn merged commit a4cfbb0 into nf-core:dev Sep 18, 2023
8 checks passed
@ramprasadn ramprasadn deleted the mtrefactor branch September 18, 2023 07:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants