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

Fix bugs due to merging TEMPLATE Sync PR #129

Merged
merged 11 commits into from
Feb 27, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,10 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) a
- [#110](https://github.com/nf-core/sarek/pull/110) - Fix `snpEff` report issue cf [#106](https://github.com/nf-core/sarek/issues/106)
- [#126](https://github.com/nf-core/sarek/pull/126) - Fix `iGenomes` paths
- [#127](https://github.com/nf-core/sarek/pull/127), [#128](https://github.com/nf-core/sarek/pull/128) - Fix `ASCAT`
- [#129](https://github.com/nf-core/sarek/pull/129)- Fix issue with Channel `channel ch_software_versions_yaml`
- [#129](https://github.com/nf-core/sarek/pull/129)- Apply @drpatelh fix for `mardown_to_html.py` compatibility with Python 2
- [#129](https://github.com/nf-core/sarek/pull/129)- Removed `Python` `3.7.3` from conda environment due to incompatibility
- [#129](https://github.com/nf-core/sarek/pull/129)- Change ascii characters that were not supported from the `output.md` docs

### `Deprecated`

Expand Down
3 changes: 2 additions & 1 deletion bin/markdown_to_html.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,10 @@
import markdown
import os
import sys
import io

def convert_markdown(in_fn):
input_md = open(in_fn, mode="r", encoding="utf-8").read()
input_md = io.open(in_fn, mode="r", encoding='utf-8').read()
html = markdown.markdown(
"[TOC]\n" + input_md,
extensions = [
Expand Down
2 changes: 1 addition & 1 deletion conf/base.config
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ process {
memory = {params.max_memory}
}

withName:get_software_versions {
withName:Get_software_versions {
cache = false
}

Expand Down
14 changes: 7 additions & 7 deletions docs/output.md
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,7 @@ For all samples:
- `duplicateMarked_[SAMPLE].tsv` and `recalibrated_[SAMPLE].tsv`
- TSV files to start Sarek from `recalibration` or `variantcalling` steps for a specific sample.

> :warning: Only with [`--sentieon`](usage.md#--sentieon)
> `/!\` Only with [`--sentieon`](usage.md#--sentieon)

For all samples:
**Output directory: `results/Preprocessing/TSV`**
Expand Down Expand Up @@ -242,9 +242,9 @@ Using [Strelka Best Practices](https://github.com/Illumina/strelka/blob/v2.9.x/d

#### Sentieon DNAseq

> :warning: Only with [`--sentieon`](usage.md#--sentieon)
> `/!\` Only with [`--sentieon`](usage.md#--sentieon)

[Sentieon DNAseq](https://www.sentieon.com/products/#dnaseq) implements the same mathematics used in the Broad Institutes BWA-GATK HaplotypeCaller 3.3-4.1 Best Practices Workflow pipeline.
[Sentieon DNAseq](https://www.sentieon.com/products/#dnaseq) implements the same mathematics used in the Broad Institute's BWA-GATK HaplotypeCaller 3.3-4.1 Best Practices Workflow pipeline.

For further reading and documentation see the [Sentieon DNAseq user guide](https://support.sentieon.com/manual/DNAseq_usage/dnaseq/).

Expand All @@ -256,7 +256,7 @@ For all samples:

#### Sentieon DNAscope

> :warning: Only with [`--sentieon`](usage.md#--sentieon)
> `/!\` Only with [`--sentieon`](usage.md#--sentieon)

[Sentieon DNAscope](https://www.sentieon.com/products) calls SNPs and small indels.

Expand All @@ -270,7 +270,7 @@ For all samples:

#### Sentieon TNscope

> :warning: Only with [`--sentieon`](usage.md#--sentieon)
> `/!\` Only with [`--sentieon`](usage.md#--sentieon)

[Sentieon TNscope](https://www.sentieon.com/products/#tnscope) calls SNPs and small indels on an Tumor/Normal pair.

Expand Down Expand Up @@ -339,7 +339,7 @@ For all samples:
- `TIDDIT_[SAMPLE].signals.tab`
- tab file describing coverage across the genome, binned per 50 bp
- `TIDDIT_[SAMPLE].ploidy.tab`
- tab file describing the estimated ploïdy and coverage across each contig
- tab file describing the estimated ploidy and coverage across each contig
- `TIDDIT_[SAMPLE].old.vcf`
- VCF including the low qualiy calls
- `TIDDIT_[SAMPLE].wig`
Expand All @@ -349,7 +349,7 @@ For all samples:

#### Sentieon DNAscope SV

> :warning: Only with [`--sentieon`](usage.md#--sentieon)
> `/!\` Only with [`--sentieon`](usage.md#--sentieon)

[Sentieon DNAscope](https://www.sentieon.com/products) can perform structural variant calling in addition to calling SNPs and small indels.

Expand Down
2 changes: 1 addition & 1 deletion docs/usage.md
Original file line number Diff line number Diff line change
Expand Up @@ -292,7 +292,7 @@ Use this to disable g.vcf from `HaplotypeCaller`.
### --skip_qc

Use this to disable specific QC and Reporting tools.
Available: `all`, `bamQC`, `BCFtools`, `FastQC`, `MultiQC`, `samtools`, `vcftools`, `versions`
Available: `all`, `bamQC`, `BaseRecalibrator`, `BCFtools`, `Documentation`, `FastQC`, `MultiQC`, `samtools`, `vcftools`, `versions`
Default: `None`

### --skipQC
Expand Down
1 change: 0 additions & 1 deletion environment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ channels:
- bioconda
- defaults
dependencies:
- conda-forge::python=3.7.3
ggabernet marked this conversation as resolved.
Show resolved Hide resolved
- conda-forge::markdown=3.1.1
- conda-forge::pymdown-extensions=6.0
- conda-forge::pygments=2.5.2
Expand Down
28 changes: 16 additions & 12 deletions main.nf
Original file line number Diff line number Diff line change
Expand Up @@ -30,14 +30,14 @@ def helpMessage() {
nextflow run nf-core/sarek --input sample.tsv -profile docker

Mandatory arguments:
--input [file] Path to input TSV file on mapping, recalibrate and variantcalling steps
Multiple TSV files can be specified with quotes
Works also with the path to a directory on mapping step with a single germline sample only
Alternatively, path to VCF input file on annotate step
Multiple VCF files can be specified with quotes
-profile [str] Configuration profile to use
Can use multiple (comma separated)
Available: conda, docker, singularity, test and more
--input [file] Path to input TSV file on mapping, recalibrate and variantcalling steps
Multiple TSV files can be specified with quotes
Works also with the path to a directory on mapping step with a single germline sample only
Alternatively, path to VCF input file on annotate step
Multiple VCF files can be specified with quotes
-profile [str] Configuration profile to use
Can use multiple (comma separated)
Available: conda, docker, singularity, test and more
--genome [str] Name of iGenomes reference
--step [str] Specify starting step
Available: Mapping, Recalibrate, VariantCalling, Annotate
Expand All @@ -57,7 +57,7 @@ def helpMessage() {
snpEff, VEP, merge
Default: None
--skip_qc [str] Specify which QC tools to skip when running Sarek
Available: all, bamQC, BCFtools, FastQC, MultiQC, samtools, vcftools, versions
Available: all, bamQC, BaseRecalibrator, BCFtools, Documentation, FastQC, MultiQC, samtools, vcftools, versions
Default: None
--annotate_tools [str] Specify from which tools Sarek will look for VCF files to annotate, only for step annotate
Available: HaplotypeCaller, Manta, Mutect2, Strelka, TIDDIT
Expand Down Expand Up @@ -622,7 +622,7 @@ process Get_software_versions {
"""
}

yamlSoftwareVersion = yamlSoftwareVersion.dump(tag:'SOFTWARE VERSIONS')
ch_software_versions_yaml = ch_software_versions_yaml.dump(tag:'SOFTWARE VERSIONS')

/*
================================================================================
Expand Down Expand Up @@ -1399,6 +1399,8 @@ process GatherBQSRReports {
"""
}

if ('baserecalibrator' in skipQC) baseRecalibratorReport.close()

recalTable = recalTable.dump(tag:'RECAL TABLE')

(recalTableTSV, recalTableSampleTSV) = recalTableTSV.mix(recalTableTSVnoInt).into(2)
Expand Down Expand Up @@ -3309,6 +3311,8 @@ process Output_documentation {
output:
file "results_description.html"

when: !('documentation' in skipQC)

script:
"""
markdown_to_html.py $output_docs -o results_description.html
Expand Down Expand Up @@ -3346,8 +3350,6 @@ workflow.onComplete {
email_fields['summary']['Nextflow Build'] = workflow.nextflow.build
email_fields['summary']['Nextflow Compile Timestamp'] = workflow.nextflow.timestamp

// TODO nf-core: If not using MultiQC, strip out this code (including params.max_multiqc_email_size)
// On success try attach the multiqc report
def mqc_report = null
try {
if (workflow.success) {
Expand Down Expand Up @@ -3541,7 +3543,9 @@ def defineAnnoList() {
def defineSkipQClist() {
return [
'bamqc',
'baserecalibrator',
'bcftools',
'documentation',
'fastqc',
'markduplicates',
'multiqc',
Expand Down