diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c48d11e7c4..15fca38295 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -247,6 +247,7 @@ jobs: - tags: "gatk4spark/applybqsr" - tags: "gatk4spark/markduplicates" - tags: "gawk" + - tags: "lofreq/callparallel" - tags: "mosdepth" - tags: "multiqc" - tags: "ngscheckmate/ncm" diff --git a/CHANGELOG.md b/CHANGELOG.md index 540e4d9826..201cbd3079 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,54 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## dev + +### Added + +- [1640](https://github.com/nf-core/sarek/pull/1620) - Add `lofreq` as a tumor-only variant caller. +- [1642](https://github.com/nf-core/sarek/pull/1642) - Back to dev + +### Changed + +### Fixed + +### Removed + +### Dependencies + +| Dependency | Old version | New version | +| ---------- | ----------- | ----------- | +| `lofreq` | | 2.1.5 | + +### Parameters + +## [3.4.4](https://github.com/nf-core/sarek/releases/tag/3.4.4) - Ruopsokjåkhå + +Ruopsokjåkhå is another peak of the Pårte massif. + +### Added + +- [1614](https://github.com/nf-core/sarek/pull/1614) - Back to dev +- [1639](https://github.com/nf-core/sarek/pull/1639) - Bump version to prepare release + +### Changed + +- [1627](https://github.com/nf-core/sarek/pull/1627) - Correct tower reports/snpeff format + +### Fixed + +- [1623](https://github.com/nf-core/sarek/pull/1623) - Update docs to clarify vep cache folder organisation +- [1628](https://github.com/nf-core/sarek/pull/1628) - Fix dbsnp channel mapping in germline variant calling subworkflow + +### Removed + +### Dependencies + +| Dependency | Old version | New version | +| ---------- | ----------- | ----------- | + +### Parameters + ## [3.4.3](https://github.com/nf-core/sarek/releases/tag/3.4.3) - Loametjåhkkå Loametjåhkkå is another one of the main peaks of the Pårte massif. diff --git a/CITATIONS.md b/CITATIONS.md index f72966d98c..1c4a22cade 100644 --- a/CITATIONS.md +++ b/CITATIONS.md @@ -146,6 +146,10 @@ > Danecek P, Auton A, Abecasis G, et al.: The variant call format and VCFtools. Bioinformatics. 2011 Aug 1;27(15):2156-8. doi: 10.1093/bioinformatics/btr330. Epub 2011 Jun 7. PubMed PMID: 21653522; PubMed Central PMCID: PMC3137218. +- [Lofreq](https://pubmed.ncbi.nlm.nih.gov/23066108/) + + > Wilm et al. LoFreq: A sequence-quality aware, ultra-sensitive variant caller for uncovering cell-population heterogeneity from high-throughput sequencing datasets. Nucleic Acids Res. 2012; 40(22):11189-201. + ## R packages - [R](https://www.R-project.org/) diff --git a/README.md b/README.md index e36cafa38a..a508b7ceb2 100644 --- a/README.md +++ b/README.md @@ -61,6 +61,7 @@ Depending on the options and samples provided, the pipeline can currently perfor - `Sentieon Haplotyper` - `Strelka2` - `TIDDIT` + - `Lofreq` - Variant filtering and annotation (`SnpEff`, `Ensembl VEP`, `BCFtools annotate`) - Summarise and represent QC (`MultiQC`) @@ -132,6 +133,7 @@ We thank the following people for their extensive assistance in the development - [Abhinav Sharma](https://github.com/abhi18av) - [Adam Talbot](https://github.com/adamrtalbot) - [Adrian Lärkeryd](https://github.com/adrlar) +- [Àitor Olivares](https://github.com/AitorPeseta) - [Alexander Peltzer](https://github.com/apeltzer) - [Alison Meynert](https://github.com/ameynert) - [Anders Sune Pedersen](https://github.com/asp8200) @@ -145,6 +147,7 @@ We thank the following people for their extensive assistance in the development - [Edmund Miller](https://github.com/edmundmiller) - [Famke Bäuerle](https://github.com/famosab) - [Francesco Lescai](https://github.com/lescai) +- [Francisco Martínez](https://github.com/nevinwu) - [Gavin Mackenzie](https://github.com/GCJMackenzie) - [Gisela Gabernet](https://github.com/ggabernet) - [Grant Neilson](https://github.com/grantn5) diff --git a/assets/multiqc_config.yml b/assets/multiqc_config.yml index ea1fbb0aae..ce1a6e388e 100644 --- a/assets/multiqc_config.yml +++ b/assets/multiqc_config.yml @@ -3,9 +3,9 @@ custom_logo_url: https://github.com/nf-core/sarek/ custom_logo_title: "nf-core/sarek" report_comment: > - This report has been generated by the nf-core/sarek + This report has been generated by the nf-core/sarek analysis pipeline. For information about how to interpret these results, please see the - documentation. + documentation. report_section_order: "nf-core-sarek-methods-description": order: -1000 diff --git a/conf/modules/lofreq.config b/conf/modules/lofreq.config new file mode 100644 index 0000000000..253b252b3b --- /dev/null +++ b/conf/modules/lofreq.config @@ -0,0 +1,45 @@ +/* +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Config file for defining DSL2 per module options and publishing paths +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Available keys to override module options: + ext.args = Additional arguments appended to command in module. + ext.args2 = Second set of arguments appended to command in module (multi-tool modules). + ext.args3 = Third set of arguments appended to command in module (multi-tool modules). + ext.prefix = File name prefix for output files. + ext.when = When to run the module. +---------------------------------------------------------------------------------------- +*/ + +//LOFREQ + +process { + if (params.tools && params.tools.split(',').contains('lofreq')) { + + withName: "LOFREQ_CALLPARALLEL" { + ext.args = { "--call-indels" } + ext.prefix = { meta.num_intervals <= 1 ? "${meta.id}.lofreq" : "${meta.id}.lofreq.${intervals.baseName}" } + ext.when = { params.tools && params.tools.split(',').contains('lofreq') } + publishDir = [ + mode: params.publish_dir_mode, + path: { "${params.outdir}/variant_calling/" }, + pattern: "*{vcf.gz,vcf.gz.tbi}", + saveAs: { meta.num_intervals > 1 ? null : "lofreq/${meta.id}/${it}" } + ] + } + + withName:'VCFTOOLS_TSTV_COUNT'{ + errorStrategy = 'ignore' + } + + withName: 'MERGE_LOFREQ.*' { + ext.prefix = { "${meta.id}.lofreq" } + publishDir = [ + mode: params.publish_dir_mode, + path: { "${params.outdir}/variant_calling/lofreq/${meta.id}" }, + pattern: "*{vcf.gz,vcf.gz.tbi}" + ] + } + } + +} diff --git a/docs/images/sarek_workflow.png b/docs/images/sarek_workflow.png index 7fb4cd52c2..03709a89d6 100644 Binary files a/docs/images/sarek_workflow.png and b/docs/images/sarek_workflow.png differ diff --git a/docs/images/sarek_workflow.svg b/docs/images/sarek_workflow.svg index 5f4cbd2ddd..fc7e2a8f18 100644 --- a/docs/images/sarek_workflow.svg +++ b/docs/images/sarek_workflow.svg @@ -4,7 +4,7 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + +Preprocessing Preprocessing + + + + + + + +bcftools annotate, snpeff, vep bcftools annotate, snpeff, vep + + +Annotation Annotation + + + + + + + +Reports Reports + + + + + + + + + + + + + +Variant Calling Variant Calling + + + strelka2 strelka2, lofreq• msisensorpro • msisensorpro + + +Germline Germline + deepvariant, freebayes + deepvariant, freebayes GATK GATK haplotypecaller, haplotypecaller, + mpileup, strelka2, mpileup, strelka2, + Sentieon haplotyper Sentieon haplotyper +• manta, tiddit • manta, tiddit +• cnvkit• cnvkit