From 92627c9dacc8fdf67c7ae09fc9a5065ca85b931b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=BCbra=20Narc=C4=B1?= Date: Thu, 21 Nov 2024 12:20:57 +0000 Subject: [PATCH 1/6] adding plots to multiqc --- assets/multiqc_config.yml | 43 ++++++- bin/plots.R | 12 +- conf/modules.config | 6 +- modules.json | 2 +- modules/local/plots/main.nf | 4 +- modules/nf-core/multiqc/main.nf | 2 +- subworkflows/local/cnv_germline_benchmark.nf | 16 ++- .../local/compare_benchmark_results.nf | 5 +- subworkflows/local/liftover_vcfs_truth.nf | 5 +- subworkflows/local/prepare_vcfs_test.nf | 21 +--- subworkflows/local/prepare_vcfs_truth.nf | 10 +- .../local/report_benchmark_statistics.nf | 16 +-- subworkflows/local/report_vcf_statistics.nf | 24 ++-- .../local/small_germline_benchmark.nf | 28 ++--- subworkflows/local/small_somatic_benchmark.nf | 18 +-- .../local/split_small_variants_test.nf | 2 +- subworkflows/local/subsample_vcf_test.nf | 6 +- subworkflows/local/sv_germline_benchmark.nf | 36 +++--- subworkflows/local/sv_somatic_benchmark.nf | 4 +- subworkflows/local/sv_vcf_conversion.nf | 6 +- subworkflows/local/vcf_reheader_samplename.nf | 4 +- .../local/vcf_variant_deduplication.nf | 2 +- subworkflows/local/vcf_variant_filtering.nf | 4 +- workflows/variantbenchmarking.nf | 110 +++++++----------- 24 files changed, 190 insertions(+), 196 deletions(-) diff --git a/assets/multiqc_config.yml b/assets/multiqc_config.yml index 9b0ed73..1ec952a 100644 --- a/assets/multiqc_config.yml +++ b/assets/multiqc_config.yml @@ -11,5 +11,46 @@ report_section_order: order: -1002 export_plots: true - disable_version_detection: true +ignore_images: false + +# Run only these modules +run_modules: + - bcftools + +custom_data: + survivor: + id: "survivor" + section_name: "SURVIVOR variant statistics" + description: "generated by nf-core/survivor" + plot_type: "bargraph" + format: "tsv" + pconfig: + id: "survivor" + namespace: "SURVIVOR variant statistics" + table_title: "Variant statistics from survivor stats tool" + ylab: "Len" + headers: + - "Len" + - "Del" + - "INS" + - "Dup" + - "Inv" + - "TRA" + - "UNK" + + summary_reports: + id: "summary_reports" + section_name: "Summary Benchmark Reports" + +sp: + survivor: + fn: "*.stats" + summary_reports: + fn: "*.png" + +module_order: + - bcftools: + name: "Bcftools stats" + - survivor + - summary_reports diff --git a/bin/plots.R b/bin/plots.R index 0ad4d47..6734aef 100755 --- a/bin/plots.R +++ b/bin/plots.R @@ -13,21 +13,21 @@ generate_plots <- function(table, benchmark, type, filter, stats) { table = table[table$Type == type & table$Filter == filter, ] title1 = paste("Type=",type," Filter=",filter, " | TP/FP/FN by tool", sep="") title2 = paste("Type=",type," Filter=",filter, " | Precision, Recall, and F1 by Tool", sep="") - name1 = paste(type, "_", filter, "_metric_by_tool_", benchmark, ".png", sep = "") - name2 = paste(type, "_", filter, "_variants_by_tool_", benchmark, ".png", sep = "") + name1 = paste(type, "_", filter, "_metric_by_tool_", benchmark, "_mqc.png", sep = "") + name2 = paste(type, "_", filter, "_variants_by_tool_", benchmark, "_mqc.png", sep = "") } else if (stats != "None" ){ table = table[table$StatsType == stats, ] title1 = paste("StatsType=",stats, " | TP/FP/FN by tool", sep="") title2 = paste("StatsType=",stats, " | Precision, Recall, and F1 by Tool", sep="") - name1 = paste(stats, "_metric_by_tool_", benchmark, ".png", sep = "") - name2 = paste(stats, "_variants_by_tool_", benchmark, ".png", sep = "") + name1 = paste(stats, "_metric_by_tool_", benchmark, "_mqc.png", sep = "") + name2 = paste(stats, "_variants_by_tool_", benchmark, "_mqc.png", sep = "") } else{ title1 = paste("TP/FP/FN by tool", sep="") title2 = paste("Precision, Recall, and F1 by Tool", sep="") - name1 = paste("metric_by_tool_", benchmark, ".png", sep = "") - name2 = paste("variants_by_tool_", benchmark, ".png", sep = "") + name1 = paste("metric_by_tool_", benchmark, "_mqc.png", sep = "") + name2 = paste("variants_by_tool_", benchmark, "_mqc.png", sep = "") } input_data_melted <- melt(table, id.vars = "Tool") diff --git a/conf/modules.config b/conf/modules.config index dcce096..ea28690 100644 --- a/conf/modules.config +++ b/conf/modules.config @@ -136,7 +136,7 @@ process { // Variant stats withName: SURVIVOR_STATS { ext.prefix ={["${meta.id}", - (meta.caller != null) ? ".${meta.caller}" : '' + (meta.caller != null) ? ".${meta.caller}_mqc" : '_mqc' ].join('').trim() } publishDir = [ @@ -243,7 +243,7 @@ process { (meta.maxMatches != null) ? "--mm ${meta.maxMatches}" : '' ].join(' ').trim()} publishDir = [ - path: {"${params.outdir}/${params.variant_type}/${meta.id}/benchmarks/wittyer_bench"}, + path: {"${params.outdir}/${params.variant_type}/${meta.id}/benchmarks/wittyer"}, pattern: "*{.vcf.gz,tbi,json}", mode: params.publish_dir_mode ] @@ -266,7 +266,7 @@ process { ] } withName: PLOTS { - ext.prefix = {"${meta.benchmark_tool}"} + ext.prefix = {"${meta.benchmark_tool}_mqc"} publishDir = [ path: {"${params.outdir}/${params.variant_type}/summary/plots/${meta.benchmark_tool}"}, pattern: "*{png}", diff --git a/modules.json b/modules.json index cfd26cd..24d7a0a 100644 --- a/modules.json +++ b/modules.json @@ -82,7 +82,7 @@ }, "multiqc": { "branch": "master", - "git_sha": "b8d36829fa84b6e404364abff787e8b07f6d058c", + "git_sha": "cf17ca47590cc578dfb47db1c2a44ef86f89976d", "installed_by": ["modules"] }, "picard/createsequencedictionary": { diff --git a/modules/local/plots/main.nf b/modules/local/plots/main.nf index ed8da3a..f5f3a66 100644 --- a/modules/local/plots/main.nf +++ b/modules/local/plots/main.nf @@ -11,8 +11,8 @@ process PLOTS { tuple val(meta), path(summary) output: - tuple val(meta),path("*.png"), emit: plots - path "versions.yml" , emit: versions + path("*.png") , emit: plots + path "versions.yml" , emit: versions when: task.ext.when == null || task.ext.when diff --git a/modules/nf-core/multiqc/main.nf b/modules/nf-core/multiqc/main.nf index 9724d2f..cc0643e 100644 --- a/modules/nf-core/multiqc/main.nf +++ b/modules/nf-core/multiqc/main.nf @@ -52,7 +52,7 @@ process MULTIQC { stub: """ mkdir multiqc_data - touch multiqc_plots + mkdir multiqc_plots touch multiqc_report.html cat <<-END_VERSIONS > versions.yml diff --git a/subworkflows/local/cnv_germline_benchmark.nf b/subworkflows/local/cnv_germline_benchmark.nf index a69af28..c1e631d 100644 --- a/subworkflows/local/cnv_germline_benchmark.nf +++ b/subworkflows/local/cnv_germline_benchmark.nf @@ -9,32 +9,30 @@ include { TABIX_BGZIP as TABIX_BGZIP_TRUTH } from '../../modules/nf-core/tabix/b workflow CNV_GERMLINE_BENCHMARK { take: input_ch // channel: [val(meta),test_vcf,test_index,truth_vcf,truth_index, bed] - fasta // reference channel [val(meta), ref.fa] - fai // reference channel [val(meta), ref.fa.fai] main: - versions = Channel.empty() + versions = Channel.empty() summary_reports = Channel.empty() // CNV benchmarking is only possible with wittyer now! TABIX_BGZIP_QUERY( - input_ch.map{ meta, vcf, tbi, truth_vcf, truth_tbi, bed -> + input_ch.map{ meta, vcf, _tbi, _truth_vcf, _truth_tbi, _bed -> [ meta, vcf ] } ) versions = versions.mix(TABIX_BGZIP_QUERY.out.versions.first()) TABIX_BGZIP_TRUTH( - input_ch.map{ meta, vcf, tbi, truth_vcf, truth_tbi, bed -> + input_ch.map{ meta, _vcf, _tbi, truth_vcf, _truth_tbi, _bed -> [ meta, truth_vcf ] } ) versions = versions.mix(TABIX_BGZIP_TRUTH.out.versions.first()) - input_ch.map{ meta, vcf, tbi, truth_vcf, truth_tbi, bed -> - [ meta, bed ] + input_ch.map{ meta, _vcf, _tbi, _truth_vcf, _truth_tbi, bedfile -> + [ meta, bedfile ] } .set { bed } @@ -56,6 +54,6 @@ workflow CNV_GERMLINE_BENCHMARK { emit: - summary_reports - versions + summary_reports // channel: [val(meta), summary] + versions // channel: [versions.yml] } diff --git a/subworkflows/local/compare_benchmark_results.nf b/subworkflows/local/compare_benchmark_results.nf index d95f15a..22fed95 100644 --- a/subworkflows/local/compare_benchmark_results.nf +++ b/subworkflows/local/compare_benchmark_results.nf @@ -63,7 +63,6 @@ workflow COMPARE_BENCHMARK_RESULTS { merged_vcfs = merged_vcfs.mix(SURVIVOR_MERGE.out.vcf) } - // convert vcf files to csv VCF_TO_CSV( merged_vcfs @@ -71,6 +70,6 @@ workflow COMPARE_BENCHMARK_RESULTS { versions = versions.mix(VCF_TO_CSV.out.versions.first()) emit: - versions - merged_vcfs + merged_vcfs // channel: [val(meta), vcf] + versions // channel: [versions.yml] } diff --git a/subworkflows/local/liftover_vcfs_truth.nf b/subworkflows/local/liftover_vcfs_truth.nf index b02cb5c..c52a1e6 100644 --- a/subworkflows/local/liftover_vcfs_truth.nf +++ b/subworkflows/local/liftover_vcfs_truth.nf @@ -59,7 +59,7 @@ workflow LIFTOVER_VCFS_TRUTH { // liftover high confidence file if given UCSC_LIFTOVER( high_conf_ch.map{file -> tuple([id: params.truth_id], file)}, - chain.map{meta, file -> file} + chain.map{_meta, file -> file} ) versions = versions.mix(UCSC_LIFTOVER.out.versions.first()) @@ -73,11 +73,10 @@ workflow LIFTOVER_VCFS_TRUTH { SORT_BED.out.bed ) versions = versions.mix(BEDTOOLS_MERGE.out.versions.first()) - bed_ch = BEDTOOLS_MERGE.out.bed emit: vcf_ch // channel: [val(meta), vcf.gz] bed_ch // channel: [val(meta), bed] - versions + versions // channel: [versions.yml] } diff --git a/subworkflows/local/prepare_vcfs_test.nf b/subworkflows/local/prepare_vcfs_test.nf index e1a6f3f..fdf2c32 100644 --- a/subworkflows/local/prepare_vcfs_test.nf +++ b/subworkflows/local/prepare_vcfs_test.nf @@ -87,29 +87,18 @@ workflow PREPARE_VCFS_TEST { if (params.analysis.contains("somatic")){ - // somatic spesific preperations - //vcf_ch.branch{ - // def meta = it[0] - // small: meta.vartype == "small" - // other: true - // } - // .set{vcf} - + // somatic specific preparations if (params.variant_type == "small"){ - out_vcf_ch = Channel.empty() - SPLIT_SMALL_VARIANTS_TEST( - vcf.small + vcf_ch ) versions = versions.mix(SPLIT_SMALL_VARIANTS_TEST.out.versions.first()) - out_vcf_ch = out_vcf_ch.mix(SPLIT_SMALL_VARIANTS_TEST.out.out_vcf_ch, - vcf.other) - vcf_ch = out_vcf_ch + vcf_ch = SPLIT_SMALL_VARIANTS_TEST.out.out_vcf_ch } } emit: - vcf_ch - versions + vcf_ch // channel: [val(meta), vcf.gz, tbi] + versions // channel: [versions.yml] } diff --git a/subworkflows/local/prepare_vcfs_truth.nf b/subworkflows/local/prepare_vcfs_truth.nf index 4db015f..1f6b372 100644 --- a/subworkflows/local/prepare_vcfs_truth.nf +++ b/subworkflows/local/prepare_vcfs_truth.nf @@ -37,7 +37,7 @@ workflow PREPARE_VCFS_TRUTH { ) versions = versions.mix(LIFTOVER_VCFS_TRUTH.out.versions.first()) truth_ch = LIFTOVER_VCFS_TRUTH.out.vcf_ch - high_conf_ch = LIFTOVER_VCFS_TRUTH.out.bed_ch.map{ meta, bed -> [bed]} + high_conf_ch = LIFTOVER_VCFS_TRUTH.out.bed_ch.map{ _meta, bed -> [bed]} } // Reheader sample name for truth file - using meta.caller @@ -50,7 +50,7 @@ workflow PREPARE_VCFS_TRUTH { if (params.preprocess.contains("normalization")){ - // multi-allelic variants will be splitted. + // multi-allelic variants will be splitter. BCFTOOLS_NORM( vcf_ch, fasta @@ -78,7 +78,7 @@ workflow PREPARE_VCFS_TRUTH { } emit: - vcf_ch - high_conf_ch - versions + vcf_ch // channel: [val(meta), vcf, tbi] + high_conf_ch // channel: [val(meta), bed] + versions // channel: [versions.yml] } diff --git a/subworkflows/local/report_benchmark_statistics.nf b/subworkflows/local/report_benchmark_statistics.nf index a58afed..cb3cad5 100644 --- a/subworkflows/local/report_benchmark_statistics.nf +++ b/subworkflows/local/report_benchmark_statistics.nf @@ -4,8 +4,8 @@ include { MERGE_REPORTS } from '../../modules/local/merge_reports' include { PLOTS } from '../../modules/local/plots' -include { CREATE_DATAVZRD_INPUT } from '../../modules/local/create_datavzrd_input' addParams( options: params.options ) -include { DATAVZRD } from '../../modules/nf-core/datavzrd' addParams( options: params.options ) +include { CREATE_DATAVZRD_INPUT } from '../../modules/local/create_datavzrd_input' +include { DATAVZRD } from '../../modules/nf-core/datavzrd' workflow REPORT_BENCHMARK_STATISTICS { take: @@ -14,6 +14,8 @@ workflow REPORT_BENCHMARK_STATISTICS { main: versions = Channel.empty() + ch_plots = Channel.empty() + // merge summary statistics from the same benchmarking tool MERGE_REPORTS( reports @@ -24,6 +26,7 @@ workflow REPORT_BENCHMARK_STATISTICS { PLOTS( MERGE_REPORTS.out.summary ) + ch_plots = ch_plots.mix(PLOTS.out.plots.flatten()) versions = versions.mix(PLOTS.out.versions.first()) MERGE_REPORTS.out.summary @@ -32,8 +35,8 @@ workflow REPORT_BENCHMARK_STATISTICS { // add path to csv file to the datavzrd input summary - .map { meta, summary -> - [ meta, summary, file("${projectDir}/assets/datavzrd/${meta.id}.datavzrd.template.yaml", checkIfExists:true) ] + .map { meta, summary_file -> + [ meta, summary_file, file("${projectDir}/assets/datavzrd/${meta.id}.datavzrd.template.yaml", checkIfExists:true) ] } .set {template} @@ -48,8 +51,7 @@ workflow REPORT_BENCHMARK_STATISTICS { ) versions = versions.mix(DATAVZRD.out.versions.first()) - datavzrd_report = DATAVZRD.out.report - emit: - versions + versions // channel: [versions.yml] + ch_plots // channel: [plots.png] } diff --git a/subworkflows/local/report_vcf_statistics.nf b/subworkflows/local/report_vcf_statistics.nf index b6c283a..dc89afc 100644 --- a/subworkflows/local/report_vcf_statistics.nf +++ b/subworkflows/local/report_vcf_statistics.nf @@ -11,27 +11,20 @@ workflow REPORT_VCF_STATISTICS { main: - versions = Channel.empty() - survivor_stats = Channel.empty() - - //input_ch.branch{ - // def meta = it[0] - // sv: meta.vartype == "sv" || meta.vartype == "cnv" - // other: true - // } - // .set{input} + versions = Channel.empty() + ch_stats = Channel.empty() if (params.variant_type == "structural"){ // use survivor stats to get SV statistics by TYPE SURVIVOR_STATS( - input_ch.map{ meta, vcf, tbi -> + input_ch.map{ meta, vcf, _tbi -> [ meta, vcf ] }, -1, -1, -1 ) - survivor_stats = SURVIVOR_STATS.out.stats + ch_stats = ch_stats.mix(SURVIVOR_STATS.out.stats.map{_meta, stats -> stats}) versions = versions.mix(SURVIVOR_STATS.out.versions.first()) } @@ -45,13 +38,12 @@ workflow REPORT_VCF_STATISTICS { [[],[]], [[],[]] ) - bcftools_stats = BCFTOOLS_STATS.out.stats + ch_stats = ch_stats.mix(BCFTOOLS_STATS.out.stats.map{_meta, stats -> stats}) versions = versions.mix(BCFTOOLS_STATS.out.versions.first()) - // Add here a tool, to visualize SV statistics in a histogram. + // TODO: Add here a tool, to visualize SV statistics in a histogram. emit: - bcftools_stats - survivor_stats - versions + ch_stats // channel: [stats] + versions // channel: [versions.yml] } diff --git a/subworkflows/local/small_germline_benchmark.nf b/subworkflows/local/small_germline_benchmark.nf index a74ee9c..5e07217 100644 --- a/subworkflows/local/small_germline_benchmark.nf +++ b/subworkflows/local/small_germline_benchmark.nf @@ -30,7 +30,7 @@ workflow SMALL_GERMLINE_BENCHMARK { // Use rtgtools format to generate sdf file if necessary RTGTOOLS_FORMAT( - fasta.map { meta, fasta -> [ meta, fasta, [], [] ] } + fasta.map { meta, file -> [ meta, file, [], [] ] } ) versions = versions.mix(RTGTOOLS_FORMAT.out.versions) sdf = RTGTOOLS_FORMAT.out.sdf @@ -48,13 +48,13 @@ workflow SMALL_GERMLINE_BENCHMARK { // collect summary reports RTGTOOLS_VCFEVAL.out.summary - .map { meta, file -> tuple([vartype: params.variant_type] + [benchmark_tool: "rtgtools"], file) } + .map { _meta, file -> tuple([vartype: params.variant_type] + [benchmark_tool: "rtgtools"], file) } .groupTuple() .set{ report } summary_reports = summary_reports.mix(report) - // reheader benchmarking results preperly and tag meta + // reheader benchmarking results properly and tag meta VCF_REHEADER_SAMPLENAME_1( RTGTOOLS_VCFEVAL.out.fn_vcf, fai @@ -62,7 +62,7 @@ workflow SMALL_GERMLINE_BENCHMARK { versions = versions.mix(VCF_REHEADER_SAMPLENAME_1.out.versions) VCF_REHEADER_SAMPLENAME_1.out.ch_vcf - .map { meta, file, index -> tuple([vartype: params.variant_type] + [tag: "FN"] + [id: "rtgtools"], file, index) } + .map { _meta, file, index -> tuple([vartype: params.variant_type] + [tag: "FN"] + [id: "rtgtools"], file, index) } .set { vcf_fn } VCF_REHEADER_SAMPLENAME_2( @@ -72,7 +72,7 @@ workflow SMALL_GERMLINE_BENCHMARK { versions = versions.mix(VCF_REHEADER_SAMPLENAME_2.out.versions) VCF_REHEADER_SAMPLENAME_2.out.ch_vcf - .map { meta, file, index -> tuple([vartype: params.variant_type] + [tag: "FP"] + [id: "rtgtools"], file, index) } + .map { _meta, file, index -> tuple([vartype: params.variant_type] + [tag: "FP"] + [id: "rtgtools"], file, index) } .set { vcf_fp } VCF_REHEADER_SAMPLENAME_3( @@ -82,7 +82,7 @@ workflow SMALL_GERMLINE_BENCHMARK { versions = versions.mix(VCF_REHEADER_SAMPLENAME_3.out.versions) VCF_REHEADER_SAMPLENAME_3.out.ch_vcf - .map { meta, file, index -> tuple([vartype: params.variant_type] + [tag: "TP_base"] + [id: "rtgtools"], file, index) } + .map { _meta, file, index -> tuple([vartype: params.variant_type] + [tag: "TP_base"] + [id: "rtgtools"], file, index) } .set { vcf_tp_base } VCF_REHEADER_SAMPLENAME_4( @@ -92,7 +92,7 @@ workflow SMALL_GERMLINE_BENCHMARK { versions = versions.mix(VCF_REHEADER_SAMPLENAME_4.out.versions) VCF_REHEADER_SAMPLENAME_4.out.ch_vcf - .map { meta, file, index -> tuple([vartype: params.variant_type] + [tag: "TP_comp"] + [id: "rtgtools"], file, index) } + .map { _meta, file, index -> tuple([vartype: params.variant_type] + [tag: "TP_comp"] + [id: "rtgtools"], file, index) } .set { vcf_tp_comp } tagged_variants = tagged_variants.mix( @@ -106,13 +106,13 @@ workflow SMALL_GERMLINE_BENCHMARK { if (params.method.contains('happy')){ input_ch - .map{ meta, vcf, tbi, truth_vcf, truth_tbi, bed -> + .map{ meta, vcf, _tbi, _truth_vcf, _truth_tbi, _bed -> [ meta, vcf ] } .set { test_ch } input_ch - .map{ meta, vcf, tbi, truth_vcf, truth_tbi, bed -> + .map{ meta, _vcf, _tbi, truth_vcf, _truth_tbi, bed -> [ meta, truth_vcf, bed, [] ] } .set { truth_ch } @@ -121,7 +121,7 @@ workflow SMALL_GERMLINE_BENCHMARK { // apply prepy if required HAPPY_PREPY( - input_ch.map{ meta, vcf, tbi, truth_vcf, truth_tbi, bed -> + input_ch.map{ meta, vcf, _tbi, _truth_vcf, _truth_tbi, bed -> [ meta, vcf, bed ] }, fasta, @@ -146,14 +146,14 @@ workflow SMALL_GERMLINE_BENCHMARK { // tag meta and collect summary reports HAPPY_HAPPY.out.summary_csv - .map { meta, file -> tuple([vartype: params.variant_type] + [benchmark_tool: "happy"], file) } + .map { _meta, file -> tuple([vartype: params.variant_type] + [benchmark_tool: "happy"], file) } .groupTuple() .set{ report } summary_reports = summary_reports.mix(report) } emit: - versions - summary_reports - tagged_variants + summary_reports // channel: [val(meta), reports] + tagged_variants // channel: [val(meta), vcfs] + versions // channel: [versions.yml] } diff --git a/subworkflows/local/small_somatic_benchmark.nf b/subworkflows/local/small_somatic_benchmark.nf index 78fa535..27e36cc 100644 --- a/subworkflows/local/small_somatic_benchmark.nf +++ b/subworkflows/local/small_somatic_benchmark.nf @@ -13,13 +13,13 @@ workflow SMALL_SOMATIC_BENCHMARK { main: - versions = Channel.empty() - summary_reports = Channel.empty() + versions = Channel.empty() + summary_reports = Channel.empty() if (params.method.contains('sompy')){ - // apply sompy for small somatic variant ebnchmarking + // apply sompy for small somatic variant benchmarking HAPPY_SOMPY( - input_ch.map { meta, vcf, tbi, truth_vcf, truth_tbi, bed -> + input_ch.map { meta, vcf, _tbi, truth_vcf, _truth_tbi, bed -> [ meta, vcf, truth_vcf, bed, [] ] }, fasta, @@ -31,7 +31,7 @@ workflow SMALL_SOMATIC_BENCHMARK { versions = versions.mix(HAPPY_SOMPY.out.versions.first()) HAPPY_SOMPY.out.stats - .map { meta, file -> tuple([vartype: params.variant_type] + [benchmark_tool: "sompy"], file) } + .map { _meta, file -> tuple([vartype: params.variant_type] + [benchmark_tool: "sompy"], file) } .groupTuple() .set{ report } summary_reports = summary_reports.mix(report) @@ -41,7 +41,7 @@ workflow SMALL_SOMATIC_BENCHMARK { if (params.method.contains('bamsurgeon')){ BAMSURGEON_EVALUATOR( - input_ch.map { meta, vcf, tbi, truth_vcf, truth_tbi, bed -> + input_ch.map { meta, vcf, tbi, truth_vcf, truth_tbi, _bed -> [ meta, vcf, tbi, truth_vcf, truth_tbi ] }, fasta, @@ -50,13 +50,13 @@ workflow SMALL_SOMATIC_BENCHMARK { versions = versions.mix(BAMSURGEON_EVALUATOR.out.versions.first()) BAMSURGEON_EVALUATOR.out.stats - .map { meta, file -> tuple([vartype: params.variant_type] + [benchmark_tool: "bamsurgeon"], file) } + .map { _meta, file -> tuple([vartype: params.variant_type] + [benchmark_tool: "bamsurgeon"], file) } .groupTuple() .set{ report } summary_reports = summary_reports.mix(report) } emit: - summary_reports - versions + summary_reports // channel: [val(meta), reports] + versions // channel: [versions.yml] } diff --git a/subworkflows/local/split_small_variants_test.nf b/subworkflows/local/split_small_variants_test.nf index 3f00511..00f26fd 100644 --- a/subworkflows/local/split_small_variants_test.nf +++ b/subworkflows/local/split_small_variants_test.nf @@ -54,5 +54,5 @@ workflow SPLIT_SMALL_VARIANTS_TEST { emit: out_vcf_ch // channel: [val(meta), vcf, index] - versions + versions // channel: [versions.yml] } diff --git a/subworkflows/local/subsample_vcf_test.nf b/subworkflows/local/subsample_vcf_test.nf index 6e34379..958b891 100644 --- a/subworkflows/local/subsample_vcf_test.nf +++ b/subworkflows/local/subsample_vcf_test.nf @@ -21,7 +21,7 @@ workflow SUBSAMPLE_VCF_TEST { ) versions = versions.mix(BCFTOOLS_SORT.out.versions) - // Subsamples sample name for multisample vcfs + // Subsample sample name for multisample vcfs BCFTOOLS_VIEW_SUBSAMPLE( BCFTOOLS_SORT.out.vcf.map{ meta, vcf -> tuple(meta, vcf, []) }, [], @@ -30,7 +30,7 @@ workflow SUBSAMPLE_VCF_TEST { ) versions = versions.mix(BCFTOOLS_VIEW_SUBSAMPLE.out.versions.first()) - // filters out ./. genotypes (remainings from multisample vcf) + // filters out ./. genotypes (remaining from multisample vcf) BCFTOOLS_VIEW_FILTERMISSING( BCFTOOLS_VIEW_SUBSAMPLE.out.vcf.map{ meta, vcf -> tuple(meta, vcf, []) }, [], @@ -43,5 +43,5 @@ workflow SUBSAMPLE_VCF_TEST { emit: vcf_ch // channel: [val(meta), vcf] - versions + versions // channel: [versions.yml] } diff --git a/subworkflows/local/sv_germline_benchmark.nf b/subworkflows/local/sv_germline_benchmark.nf index 56fa2a3..780265c 100644 --- a/subworkflows/local/sv_germline_benchmark.nf +++ b/subworkflows/local/sv_germline_benchmark.nf @@ -20,9 +20,9 @@ workflow SV_GERMLINE_BENCHMARK { main: - versions = Channel.empty() - summary_reports = Channel.empty() - tagged_variants = Channel.empty() + versions = Channel.empty() + summary_reports = Channel.empty() + tagged_variants = Channel.empty() // SV benchmarking if (params.method.contains('truvari')){ @@ -36,7 +36,7 @@ workflow SV_GERMLINE_BENCHMARK { versions = versions.mix(TRUVARI_BENCH.out.versions.first()) TRUVARI_BENCH.out.summary - .map { meta, file -> tuple([vartype: params.variant_type] + [benchmark_tool: "truvari"], file) } + .map { _meta, file -> tuple([vartype: params.variant_type] + [benchmark_tool: "truvari"], file) } .groupTuple() .set { report } @@ -50,7 +50,7 @@ workflow SV_GERMLINE_BENCHMARK { versions = versions.mix(VCF_REHEADER_SAMPLENAME_1.out.versions) VCF_REHEADER_SAMPLENAME_1.out.ch_vcf - .map { meta, file, index -> tuple([vartype: params.variant_type] + [tag: "FN"] + [id: "truvari"], file) } + .map { _meta, file, _index -> tuple([vartype: params.variant_type] + [tag: "FN"] + [id: "truvari"], file) } .set { vcf_fn } // reheader fp vcf files for tagged results @@ -62,7 +62,7 @@ workflow SV_GERMLINE_BENCHMARK { // add tag and to meta VCF_REHEADER_SAMPLENAME_2.out.ch_vcf - .map { meta, file, index -> tuple([vartype: params.variant_type] + [tag: "FP"] + [id: "truvari"], file) } + .map { _meta, file, _index -> tuple([vartype: params.variant_type] + [tag: "FP"] + [id: "truvari"], file) } .set { vcf_fp } // reheader base tp vcf files for tagged results @@ -74,7 +74,7 @@ workflow SV_GERMLINE_BENCHMARK { // add tag and to meta VCF_REHEADER_SAMPLENAME_3.out.ch_vcf - .map { meta, file, index -> tuple([vartype: params.variant_type] + [tag: "TP_base"] + [id: "truvari"], file) } + .map { _meta, file, _index -> tuple([vartype: params.variant_type] + [tag: "TP_base"] + [id: "truvari"], file) } .set { vcf_tp_base } // reheader comp tp vcf files for tagged results @@ -86,7 +86,7 @@ workflow SV_GERMLINE_BENCHMARK { // add tag and to meta VCF_REHEADER_SAMPLENAME_4.out.ch_vcf - .map { meta, file, index -> tuple([vartype: params.variant_type] + [tag: "TP_comp"] + [id: "truvari"], file) } + .map { _meta, file, _index -> tuple([vartype: params.variant_type] + [tag: "TP_comp"] + [id: "truvari"], file) } .set { vcf_tp_comp } // collect tagged variant files @@ -108,7 +108,7 @@ workflow SV_GERMLINE_BENCHMARK { // tag and collect summary file SVANALYZER_SVBENCHMARK.out.report - .map { meta, file -> tuple([vartype: params.variant_type] + [benchmark_tool: "svbenchmark"], file) } + .map { _meta, file -> tuple([vartype: params.variant_type] + [benchmark_tool: "svbenchmark"], file) } .groupTuple() .set{ report } @@ -116,12 +116,12 @@ workflow SV_GERMLINE_BENCHMARK { // reheader fn vcf files for tagged results SVANALYZER_SVBENCHMARK.out.fns - .map { meta, file -> tuple([vartype: params.variant_type] + [tag: "FN"] + [id: "svbenchmark"], file) } + .map { _meta, file -> tuple([vartype: params.variant_type] + [tag: "FN"] + [id: "svbenchmark"], file) } .set { vcf_fn } SVANALYZER_SVBENCHMARK.out.fps - .map { meta, file -> tuple([vartype: params.variant_type] + [tag: "FP"] + [id: "svbenchmark"], file) } + .map { _meta, file -> tuple([vartype: params.variant_type] + [tag: "FP"] + [id: "svbenchmark"], file) } .set { vcf_fp } tagged_variants = tagged_variants.mix( @@ -134,20 +134,20 @@ workflow SV_GERMLINE_BENCHMARK { // unzip vcf.gz files TABIX_BGZIP_QUERY( - input_ch.map { meta, vcf, tbi, truth_vcf, truth_tbi, bed -> + input_ch.map { meta, vcf, _tbi, _truth_vcf, _truth_tbi, _bed -> [ meta, vcf ] } ) versions = versions.mix(TABIX_BGZIP_QUERY.out.versions.first()) TABIX_BGZIP_TRUTH( - input_ch.map { meta, vcf, tbi, truth_vcf, truth_tbi, bed -> + input_ch.map { meta, _vcf, _tbi, truth_vcf, _truth_tbi, _bed -> [ meta, truth_vcf ] } ) versions = versions.mix(TABIX_BGZIP_TRUTH.out.versions.first()) - input_ch.map { meta, vcf, tbi, truth_vcf, truth_tbi, bed -> + input_ch.map { meta, _vcf, _tbi, _truth_vcf, _truth_tbi, bed -> [ meta, bed ] } .set { bed } @@ -163,7 +163,7 @@ workflow SV_GERMLINE_BENCHMARK { versions = versions.mix(WITTYER.out.versions.first()) WITTYER.out.report - .map { meta, file -> tuple([vartype: params.variant_type] + [benchmark_tool: "wittyer"], file) } + .map { _meta, file -> tuple([vartype: params.variant_type] + [benchmark_tool: "wittyer"], file) } .groupTuple() .set{ report } summary_reports = summary_reports.mix(report) @@ -171,7 +171,7 @@ workflow SV_GERMLINE_BENCHMARK { } emit: - tagged_variants - summary_reports - versions + tagged_variants // channel: [val(meta), vcfs] + summary_reports // channel: [val(meta), reports] + versions // channel: [val(meta), versions.yml] } diff --git a/subworkflows/local/sv_somatic_benchmark.nf b/subworkflows/local/sv_somatic_benchmark.nf index b9b31ab..015f69b 100644 --- a/subworkflows/local/sv_somatic_benchmark.nf +++ b/subworkflows/local/sv_somatic_benchmark.nf @@ -35,6 +35,6 @@ workflow SV_SOMATIC_BENCHMARK { } emit: - summary_reports - versions + summary_reports // channel: [val(meta), reports] + versions // channel: [versions.yml] } diff --git a/subworkflows/local/sv_vcf_conversion.nf b/subworkflows/local/sv_vcf_conversion.nf index c92e214..92e08cd 100644 --- a/subworkflows/local/sv_vcf_conversion.nf +++ b/subworkflows/local/sv_vcf_conversion.nf @@ -1,7 +1,7 @@ import groovy.io.FileType // -// SV_VCF_CONVERSIONS: SUBWORKFLOW TO apply tool spesific conversions +// SV_VCF_CONVERSIONS: SUBWORKFLOW to apply tool spesific conversions // include { SVYNC } from '../../modules/nf-core/svync' @@ -86,6 +86,6 @@ workflow SV_VCF_CONVERSIONS { } emit: - vcf_ch - versions + vcf_ch // channel: [val(meta), vcf] + versions // channel: [versions.yml] } diff --git a/subworkflows/local/vcf_reheader_samplename.nf b/subworkflows/local/vcf_reheader_samplename.nf index c28c022..5d4384d 100644 --- a/subworkflows/local/vcf_reheader_samplename.nf +++ b/subworkflows/local/vcf_reheader_samplename.nf @@ -35,7 +35,7 @@ workflow VCF_REHEADER_SAMPLENAME { emit: - ch_vcf // channel: [ val(meta), vcf, index ] - versions // channel: [ versions.yml ] + ch_vcf // channel: [val(meta), vcf, index ] + versions // channel: [versions.yml ] } diff --git a/subworkflows/local/vcf_variant_deduplication.nf b/subworkflows/local/vcf_variant_deduplication.nf index dffba56..81b7496 100644 --- a/subworkflows/local/vcf_variant_deduplication.nf +++ b/subworkflows/local/vcf_variant_deduplication.nf @@ -40,6 +40,6 @@ workflow VCF_VARIANT_DEDUPLICATION { emit: ch_vcf // channel: [ val(meta), vcf,index ] - versions // channel: [ versions.yml ] + versions // channel: [versions.yml ] } diff --git a/subworkflows/local/vcf_variant_filtering.nf b/subworkflows/local/vcf_variant_filtering.nf index fda853a..7f4271f 100644 --- a/subworkflows/local/vcf_variant_filtering.nf +++ b/subworkflows/local/vcf_variant_filtering.nf @@ -56,6 +56,6 @@ workflow VCF_VARIANT_FILTERING { vcf_ch = TABIX_BGZIPTABIX.out.gz_tbi emit: - vcf_ch // [val(meta), vcf.gz, index] - versions + vcf_ch // [val(meta), vcf.gz, index] + versions // channel: [versions.yml] } diff --git a/workflows/variantbenchmarking.nf b/workflows/variantbenchmarking.nf index 734bb00..9cec93b 100644 --- a/workflows/variantbenchmarking.nf +++ b/workflows/variantbenchmarking.nf @@ -1,14 +1,3 @@ -/* -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - CONFIG FILES -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -*/ - -ch_multiqc_config = Channel.fromPath("$projectDir/assets/multiqc_config.yml", checkIfExists: true) -ch_multiqc_custom_config = params.multiqc_config ? Channel.fromPath( params.multiqc_config, checkIfExists: true ) : Channel.empty() -ch_multiqc_logo = params.multiqc_logo ? Channel.fromPath( params.multiqc_logo, checkIfExists: true ) : Channel.empty() -ch_multiqc_custom_methods_description = params.multiqc_methods_description ? file(params.multiqc_methods_description, checkIfExists: true) : file("$projectDir/assets/methods_description_template.yml", checkIfExists: true) - /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ IMPORT MODULES / SUBWORKFLOWS / FUNCTIONS @@ -18,11 +7,11 @@ ch_multiqc_custom_methods_description = params.multiqc_methods_description ? fil // // MODULE: Installed directly from nf-core/modules // -include { MULTIQC } from '../modules/nf-core/multiqc/main' -include { paramsSummaryMap } from 'plugin/nf-schema' -include { paramsSummaryMultiqc } from '../subworkflows/nf-core/utils_nfcore_pipeline' -include { softwareVersionsToYAML } from '../subworkflows/nf-core/utils_nfcore_pipeline' -include { methodsDescriptionText } from '../subworkflows/local/utils_nfcore_variantbenchmarking_pipeline' +include { MULTIQC } from '../modules/nf-core/multiqc/main' +include { paramsSummaryMap } from 'plugin/nf-schema' +include { paramsSummaryMultiqc } from '../subworkflows/nf-core/utils_nfcore_pipeline' +include { softwareVersionsToYAML } from '../subworkflows/nf-core/utils_nfcore_pipeline' +include { methodsDescriptionText } from '../subworkflows/local/utils_nfcore_variantbenchmarking_pipeline' // // SUBWORKFLOWS: Local Subworkflows @@ -51,8 +40,11 @@ workflow VARIANTBENCHMARKING { ch_samplesheet // channel: samplesheet read in from --input main: + // To gather all QC reports for Multiqc ch_versions = Channel.empty() ch_multiqc_files = Channel.empty() + + // To gather benchmark reports ch_reports = Channel.empty() //// create reference channels //// @@ -74,7 +66,7 @@ workflow VARIANTBENCHMARKING { sdf = params.sdf ? Channel.fromPath(params.sdf, checkIfExists: true).map{ sdf -> tuple([id: sdf.getSimpleName()], sdf) }.collect() : Channel.empty() - // read chainfile, liftover genome and rename chr files if liftover is true + // read chain file, liftover genome and rename chr files if liftover is true chain = Channel.empty() rename_chr = Channel.empty() dictionary = Channel.empty() @@ -110,14 +102,14 @@ workflow VARIANTBENCHMARKING { if (params.variant_type == "structural"){ - // Standardize SV VCFs, tool spesific modifications + // Standardize SV VCFs, tool specific modifications SV_VCF_CONVERSIONS( vcf_ch, fasta, fai ) ch_versions = ch_versions.mix(SV_VCF_CONVERSIONS.out.versions) - vcf_ch = SV_VCF_CONVERSIONS.out.vcf_ch.map{it -> tuple(it[0], it[1])} + vcf_ch = SV_VCF_CONVERSIONS.out.vcf_ch.map{it -> tuple(it[0], it[1])} } // Prepare and normalize input vcfs PREPARE_VCFS_TEST( @@ -138,7 +130,7 @@ workflow VARIANTBENCHMARKING { dictionary ) regions_bed_ch = PREPARE_VCFS_TRUTH.out.high_conf_ch - ch_versions = ch_versions.mix(PREPARE_VCFS_TRUTH.out.versions) + ch_versions = ch_versions.mix(PREPARE_VCFS_TRUTH.out.versions) // VCF REPORTS AND STATS @@ -146,12 +138,13 @@ workflow VARIANTBENCHMARKING { REPORT_VCF_STATISTICS( PREPARE_VCFS_TEST.out.vcf_ch.mix(PREPARE_VCFS_TRUTH.out.vcf_ch) ) - ch_versions = ch_versions.mix(REPORT_VCF_STATISTICS.out.versions) + ch_versions = ch_versions.mix(REPORT_VCF_STATISTICS.out.versions) + ch_multiqc_files = ch_multiqc_files.mix(REPORT_VCF_STATISTICS.out.ch_stats) // Prepare benchmark channel PREPARE_VCFS_TEST.out.vcf_ch.combine(PREPARE_VCFS_TRUTH.out.vcf_ch) .combine(regions_bed_ch.ifEmpty([[]])) - .map{ test_meta, test_vcf, test_tbi, truth_meta, truth_vcf, truth_tbi, high_bed -> + .map{ test_meta, test_vcf, test_tbi, _truth_meta, truth_vcf, truth_tbi, high_bed -> [ test_meta, test_vcf, test_tbi, truth_vcf, truth_tbi, high_bed ]} .set{bench} @@ -165,35 +158,33 @@ workflow VARIANTBENCHMARKING { fasta, fai ) - ch_versions = ch_versions.mix(SV_GERMLINE_BENCHMARK.out.versions) - ch_reports = ch_reports.mix(SV_GERMLINE_BENCHMARK.out.summary_reports) - evals_ch = evals_ch.mix(SV_GERMLINE_BENCHMARK.out.tagged_variants) + ch_versions = ch_versions.mix(SV_GERMLINE_BENCHMARK.out.versions) + ch_reports = ch_reports.mix(SV_GERMLINE_BENCHMARK.out.summary_reports) + evals_ch = evals_ch.mix(SV_GERMLINE_BENCHMARK.out.tagged_variants) } if (params.analysis.contains("germline")){ if (params.variant_type == "small" | params.variant_type == "snv" | params.variant_type == "indel"){ - // Benchmarking spesific to small germline samples + // Benchmarking specific to small germline samples SMALL_GERMLINE_BENCHMARK( bench, fasta, fai, sdf ) - ch_versions = ch_versions.mix(SMALL_GERMLINE_BENCHMARK.out.versions) - ch_reports = ch_reports.mix(SMALL_GERMLINE_BENCHMARK.out.summary_reports) - evals_ch = evals_ch.mix(SMALL_GERMLINE_BENCHMARK.out.tagged_variants) + ch_versions = ch_versions.mix(SMALL_GERMLINE_BENCHMARK.out.versions) + ch_reports = ch_reports.mix(SMALL_GERMLINE_BENCHMARK.out.summary_reports) + evals_ch = evals_ch.mix(SMALL_GERMLINE_BENCHMARK.out.tagged_variants) } if (params.variant_type == "copynumber"){ // Benchmarking spesific to CNV germline samples CNV_GERMLINE_BENCHMARK( - bench, - fasta, - fai + bench ) - ch_versions = ch_versions.mix(CNV_GERMLINE_BENCHMARK.out.versions) - ch_reports = ch_reports.mix(CNV_GERMLINE_BENCHMARK.out.summary_reports) + ch_versions = ch_versions.mix(CNV_GERMLINE_BENCHMARK.out.versions) + ch_reports = ch_reports.mix(CNV_GERMLINE_BENCHMARK.out.summary_reports) } } @@ -207,8 +198,8 @@ workflow VARIANTBENCHMARKING { fasta, fai ) - ch_versions = ch_versions.mix(SMALL_SOMATIC_BENCHMARK.out.versions) - ch_reports = ch_reports.mix(SMALL_SOMATIC_BENCHMARK.out.summary_reports) + ch_versions = ch_versions.mix(SMALL_SOMATIC_BENCHMARK.out.versions) + ch_reports = ch_reports.mix(SMALL_SOMATIC_BENCHMARK.out.summary_reports) } } @@ -224,7 +215,7 @@ workflow VARIANTBENCHMARKING { REPORT_BENCHMARK_STATISTICS( ch_reports ) - ch_versions = ch_versions.mix(REPORT_BENCHMARK_STATISTICS.out.versions) + ch_versions = ch_versions.mix(REPORT_BENCHMARK_STATISTICS.out.versions) // TODO: BENCHMARKING OF CNV // https://bioconductor.org/packages/release/bioc/manuals/CNVfilteR/man/CNVfilteR.pdf @@ -251,36 +242,19 @@ workflow VARIANTBENCHMARKING { // // MODULE: MultiQC // - ch_multiqc_config = Channel.fromPath( - "$projectDir/assets/multiqc_config.yml", checkIfExists: true) - ch_multiqc_custom_config = params.multiqc_config ? - Channel.fromPath(params.multiqc_config, checkIfExists: true) : - Channel.empty() - ch_multiqc_logo = params.multiqc_logo ? - Channel.fromPath(params.multiqc_logo, checkIfExists: true) : - Channel.empty() - - - summary_params = paramsSummaryMap( - workflow, parameters_schema: "nextflow_schema.json") - ch_workflow_summary = Channel.value(paramsSummaryMultiqc(summary_params)) - ch_multiqc_files = ch_multiqc_files.mix( - ch_workflow_summary.collectFile(name: 'workflow_summary_mqc.yaml')) - - ch_multiqc_custom_methods_description = params.multiqc_methods_description ? - file(params.multiqc_methods_description, checkIfExists: true) : - file("$projectDir/assets/methods_description_template.yml", checkIfExists: true) - ch_methods_description = Channel.value( - methodsDescriptionText(ch_multiqc_custom_methods_description)) - - ch_multiqc_files = ch_multiqc_files.mix(ch_collated_versions) - ch_multiqc_files = ch_multiqc_files.mix( - ch_methods_description.collectFile( - name: 'methods_description_mqc.yaml', - sort: true - ) - ) - + ch_multiqc_config = Channel.fromPath("$projectDir/assets/multiqc_config.yml", checkIfExists: true) + ch_multiqc_custom_config = params.multiqc_config ? Channel.fromPath(params.multiqc_config, checkIfExists: true) :Channel.empty() + ch_multiqc_logo = params.multiqc_logo ? Channel.fromPath(params.multiqc_logo, checkIfExists: true) : Channel.empty() + summary_params = paramsSummaryMap(workflow, parameters_schema: "nextflow_schema.json") + ch_workflow_summary = Channel.value(paramsSummaryMultiqc(summary_params)) + ch_multiqc_files = ch_multiqc_files.mix(ch_workflow_summary.collectFile(name: 'workflow_summary_mqc.yaml')) + ch_multiqc_custom_methods_description = params.multiqc_methods_description ? file(params.multiqc_methods_description, checkIfExists: true) : file("$projectDir/assets/methods_description_template.yml", checkIfExists: true) + ch_methods_description = Channel.value(methodsDescriptionText(ch_multiqc_custom_methods_description)) + ch_multiqc_files = ch_multiqc_files.mix(ch_collated_versions) + ch_multiqc_files = ch_multiqc_files.mix(ch_methods_description.collectFile(name: 'methods_description_mqc.yaml',sort: true)) + ch_multiqc_files = ch_multiqc_files.mix(REPORT_BENCHMARK_STATISTICS.out.ch_plots) + + ch_multiqc_files.view() MULTIQC ( ch_multiqc_files.collect(), ch_multiqc_config.toList(), @@ -291,7 +265,7 @@ workflow VARIANTBENCHMARKING { ) emit:multiqc_report = MULTIQC.out.report.toList() // channel: /path/to/multiqc_report.html - versions = ch_versions // channel: [ path(versions.yml) ] + versions = ch_versions // channel: [ path(versions.yml) ] } From 59a8a10ce0f8aa324da1bb7ac3629d45175a382c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=BCbra=20Narc=C4=B1?= Date: Fri, 22 Nov 2024 10:43:11 +0000 Subject: [PATCH 2/6] renew snapshots --- conf/tests/germline_sv.config | 2 +- tests/germline_small.nf.test.snap | 103 +++++++++++---- tests/germline_sv.nf.test.snap | 212 ++++++++++++++++++------------ tests/liftover_hg38.nf.test.snap | 77 ++++++++--- tests/somatic_indel.nf.test.snap | 48 ++++++- tests/somatic_snv.nf.test.snap | 110 +--------------- tests/somatic_sv.nf.test.snap | 62 ++++++--- 7 files changed, 361 insertions(+), 253 deletions(-) diff --git a/conf/tests/germline_sv.config b/conf/tests/germline_sv.config index f6b60b7..ddd89b4 100644 --- a/conf/tests/germline_sv.config +++ b/conf/tests/germline_sv.config @@ -33,7 +33,7 @@ params { analysis = 'germline' variant_type = "structural" method = 'svanalyzer,wittyer,truvari' - preprocess = "normalization,deduplication" + preprocess = "normalization,deduplication,filter_contigs" sv_standardization = "svync,homogenize" min_sv_size = 30 truth_id = "HG002" diff --git a/tests/germline_small.nf.test.snap b/tests/germline_small.nf.test.snap index 500de1a..7fe0713 100644 --- a/tests/germline_small.nf.test.snap +++ b/tests/germline_small.nf.test.snap @@ -77,11 +77,10 @@ "small/multiqc/multiqc_report.html", "small/summary", "small/summary/comparisons", - "small/summary/comparisons/small", - "small/summary/comparisons/small/rtgtools.FN.csv", - "small/summary/comparisons/small/rtgtools.FP.csv", - "small/summary/comparisons/small/rtgtools.TP_base.csv", - "small/summary/comparisons/small/rtgtools.TP_comp.csv", + "small/summary/comparisons/rtgtools.FN.csv", + "small/summary/comparisons/rtgtools.FP.csv", + "small/summary/comparisons/rtgtools.TP_base.csv", + "small/summary/comparisons/rtgtools.TP_comp.csv", "small/summary/datavzrd", "small/summary/datavzrd/happy", "small/summary/datavzrd/happy/index.html", @@ -122,11 +121,11 @@ "small/summary/datavzrd/versions.yml", "small/summary/plots", "small/summary/plots/happy", - "small/summary/plots/happy/metric_by_tool_happy.png", - "small/summary/plots/happy/variants_by_tool_happy.png", + "small/summary/plots/happy/metric_by_tool_happy_mqc.png", + "small/summary/plots/happy/variants_by_tool_happy_mqc.png", "small/summary/plots/rtgtools", - "small/summary/plots/rtgtools/metric_by_tool_rtgtools.png", - "small/summary/plots/rtgtools/variants_by_tool_rtgtools.png", + "small/summary/plots/rtgtools/metric_by_tool_rtgtools_mqc.png", + "small/summary/plots/rtgtools/variants_by_tool_rtgtools_mqc.png", "small/summary/tables", "small/summary/tables/happy", "small/summary/tables/happy/happy.regions.csv", @@ -206,7 +205,10 @@ [ "genome.sdf:md5,d41d8cd98f00b204e9800998ecf8427e", "HG002.bcftools_stats.txt:md5,d41d8cd98f00b204e9800998ecf8427e", - "multiqc_plots:md5,d41d8cd98f00b204e9800998ecf8427e", + "rtgtools.FN.csv:md5,d41d8cd98f00b204e9800998ecf8427e", + "rtgtools.FP.csv:md5,d41d8cd98f00b204e9800998ecf8427e", + "rtgtools.TP_base.csv:md5,d41d8cd98f00b204e9800998ecf8427e", + "rtgtools.TP_comp.csv:md5,d41d8cd98f00b204e9800998ecf8427e", "config.js:md5,d41d8cd98f00b204e9800998ecf8427e", "data_1.js:md5,d41d8cd98f00b204e9800998ecf8427e", "functions.js:md5,d41d8cd98f00b204e9800998ecf8427e", @@ -243,9 +245,9 @@ ], "meta": { "nf-test": "0.9.0", - "nextflow": "24.10.0" + "nextflow": "24.10.1" }, - "timestamp": "2024-11-12T16:10:22.614364432" + "timestamp": "2024-11-22T10:13:33.920466332" }, "Params: --analysis 'germline' --variant_type 'small' --method 'happy,rtgtools'": { "content": [ @@ -342,19 +344,58 @@ "small/HG002/stats/bcftools/HG002.bcftools_stats.txt", "small/multiqc", "small/multiqc/multiqc_data", + "small/multiqc/multiqc_data/bcftools-stats-subtypes.txt", + "small/multiqc/multiqc_data/bcftools_stats_indel-lengths.txt", + "small/multiqc/multiqc_data/bcftools_stats_variant_depths.txt", + "small/multiqc/multiqc_data/bcftools_stats_vqc_Count_Indels.txt", + "small/multiqc/multiqc_data/bcftools_stats_vqc_Count_SNP.txt", + "small/multiqc/multiqc_data/bcftools_stats_vqc_Count_Transitions.txt", + "small/multiqc/multiqc_data/bcftools_stats_vqc_Count_Transversions.txt", "small/multiqc/multiqc_data/multiqc.log", + "small/multiqc/multiqc_data/multiqc_bcftools_stats.txt", "small/multiqc/multiqc_data/multiqc_citations.txt", "small/multiqc/multiqc_data/multiqc_data.json", + "small/multiqc/multiqc_data/multiqc_general_stats.txt", "small/multiqc/multiqc_data/multiqc_software_versions.txt", "small/multiqc/multiqc_data/multiqc_sources.txt", + "small/multiqc/multiqc_plots", + "small/multiqc/multiqc_plots/pdf", + "small/multiqc/multiqc_plots/pdf/bcftools-stats-subtypes-cnt.pdf", + "small/multiqc/multiqc_plots/pdf/bcftools-stats-subtypes-pct.pdf", + "small/multiqc/multiqc_plots/pdf/bcftools_stats_indel-lengths.pdf", + "small/multiqc/multiqc_plots/pdf/bcftools_stats_variant_depths.pdf", + "small/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_Indels.pdf", + "small/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_SNP.pdf", + "small/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_Transitions.pdf", + "small/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_Transversions.pdf", + "small/multiqc/multiqc_plots/pdf/general_stats_table.pdf", + "small/multiqc/multiqc_plots/png", + "small/multiqc/multiqc_plots/png/bcftools-stats-subtypes-cnt.png", + "small/multiqc/multiqc_plots/png/bcftools-stats-subtypes-pct.png", + "small/multiqc/multiqc_plots/png/bcftools_stats_indel-lengths.png", + "small/multiqc/multiqc_plots/png/bcftools_stats_variant_depths.png", + "small/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_Indels.png", + "small/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_SNP.png", + "small/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_Transitions.png", + "small/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_Transversions.png", + "small/multiqc/multiqc_plots/png/general_stats_table.png", + "small/multiqc/multiqc_plots/svg", + "small/multiqc/multiqc_plots/svg/bcftools-stats-subtypes-cnt.svg", + "small/multiqc/multiqc_plots/svg/bcftools-stats-subtypes-pct.svg", + "small/multiqc/multiqc_plots/svg/bcftools_stats_indel-lengths.svg", + "small/multiqc/multiqc_plots/svg/bcftools_stats_variant_depths.svg", + "small/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_Indels.svg", + "small/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_SNP.svg", + "small/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_Transitions.svg", + "small/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_Transversions.svg", + "small/multiqc/multiqc_plots/svg/general_stats_table.svg", "small/multiqc/multiqc_report.html", "small/summary", "small/summary/comparisons", - "small/summary/comparisons/small", - "small/summary/comparisons/small/rtgtools.FN.csv", - "small/summary/comparisons/small/rtgtools.FP.csv", - "small/summary/comparisons/small/rtgtools.TP_base.csv", - "small/summary/comparisons/small/rtgtools.TP_comp.csv", + "small/summary/comparisons/rtgtools.FN.csv", + "small/summary/comparisons/rtgtools.FP.csv", + "small/summary/comparisons/rtgtools.TP_base.csv", + "small/summary/comparisons/rtgtools.TP_comp.csv", "small/summary/datavzrd", "small/summary/datavzrd/happy", "small/summary/datavzrd/happy/index.html", @@ -421,17 +462,17 @@ "small/summary/datavzrd/versions.yml", "small/summary/plots", "small/summary/plots/happy", - "small/summary/plots/happy/INDEL_ALL_metric_by_tool_happy.png", - "small/summary/plots/happy/INDEL_ALL_variants_by_tool_happy.png", - "small/summary/plots/happy/INDEL_PASS_metric_by_tool_happy.png", - "small/summary/plots/happy/INDEL_PASS_variants_by_tool_happy.png", - "small/summary/plots/happy/SNP_ALL_metric_by_tool_happy.png", - "small/summary/plots/happy/SNP_ALL_variants_by_tool_happy.png", - "small/summary/plots/happy/SNP_PASS_metric_by_tool_happy.png", - "small/summary/plots/happy/SNP_PASS_variants_by_tool_happy.png", + "small/summary/plots/happy/INDEL_ALL_metric_by_tool_happy_mqc.png", + "small/summary/plots/happy/INDEL_ALL_variants_by_tool_happy_mqc.png", + "small/summary/plots/happy/INDEL_PASS_metric_by_tool_happy_mqc.png", + "small/summary/plots/happy/INDEL_PASS_variants_by_tool_happy_mqc.png", + "small/summary/plots/happy/SNP_ALL_metric_by_tool_happy_mqc.png", + "small/summary/plots/happy/SNP_ALL_variants_by_tool_happy_mqc.png", + "small/summary/plots/happy/SNP_PASS_metric_by_tool_happy_mqc.png", + "small/summary/plots/happy/SNP_PASS_variants_by_tool_happy_mqc.png", "small/summary/plots/rtgtools", - "small/summary/plots/rtgtools/metric_by_tool_rtgtools.png", - "small/summary/plots/rtgtools/variants_by_tool_rtgtools.png", + "small/summary/plots/rtgtools/metric_by_tool_rtgtools_mqc.png", + "small/summary/plots/rtgtools/variants_by_tool_rtgtools_mqc.png", "small/summary/tables", "small/summary/tables/happy", "small/summary/tables/happy/happy.summary.csv", @@ -524,6 +565,10 @@ "suffixdata0:md5,f2876dd730673cd49c4de191001f634e", "suffixpointer0:md5,468281ffb10d7dd934289af762a03781", "HG002.bcftools_stats.txt:md5,b215fc0030c53bc8887e28b23b97efb6", + "rtgtools.FN.csv:md5,80f23e0271742bc7400804311dd3b437", + "rtgtools.FP.csv:md5,c5229b5b7fd78d90e9a54e64885728e5", + "rtgtools.TP_base.csv:md5,aae4d65a540533faa4f275d0f7e9753a", + "rtgtools.TP_comp.csv:md5,b2d6fa254026b506ef64ccf1f12ab21a", "test1.HG002.strelka.extended.csv:md5,098dc352d1beeab27e72f97e64fc182e", "test1.HG002.strelka.roc.Locations.INDEL.PASS.csv.gz:md5,bd1f1a1e138f75511de7aae157fa2fa4", "test1.HG002.strelka.roc.Locations.INDEL.csv.gz:md5,8912022beb3c5b234d29300b764b56bc", @@ -548,8 +593,8 @@ ], "meta": { "nf-test": "0.9.0", - "nextflow": "24.10.0" + "nextflow": "24.10.1" }, - "timestamp": "2024-11-13T08:41:21.414009313" + "timestamp": "2024-11-22T10:11:26.258107754" } } \ No newline at end of file diff --git a/tests/germline_sv.nf.test.snap b/tests/germline_sv.nf.test.snap index e845a97..6e03e8d 100644 --- a/tests/germline_sv.nf.test.snap +++ b/tests/germline_sv.nf.test.snap @@ -1,7 +1,7 @@ { "Params: --analysis 'germline' --variant_type 'structural' --method 'truvari,svbenchmark,wittyer'": { "content": [ - 138, + 144, { "BCFTOOLS_DEDUP": { "bcftools": 1.18 @@ -18,6 +18,9 @@ "BCFTOOLS_STATS": { "bcftools": 1.18 }, + "BCFTOOLS_VIEW_CONTIGS": { + "bcftools": 1.18 + }, "BGZIP_TABIX": { "tabix": 1.12 }, @@ -45,6 +48,9 @@ "TABIX_BGZIP": { "tabix": "1.19.1" }, + "TABIX_BGZIPTABIX": { + "tabix": "1.19.1" + }, "TABIX_BGZIP_QUERY": { "tabix": "1.19.1" }, @@ -81,24 +87,52 @@ "structural/HG002/stats/bcftools", "structural/HG002/stats/bcftools/HG002.bcftools_stats.txt", "structural/HG002/stats/survivor", - "structural/HG002/stats/survivor/HG002.stats", + "structural/HG002/stats/survivor/HG002_mqc.stats", "structural/multiqc", "structural/multiqc/multiqc_data", + "structural/multiqc/multiqc_data/bcftools_stats_indel-lengths.txt", + "structural/multiqc/multiqc_data/bcftools_stats_vqc_Count_Indels.txt", + "structural/multiqc/multiqc_data/bcftools_stats_vqc_Count_SNP.txt", + "structural/multiqc/multiqc_data/bcftools_stats_vqc_Count_Transitions.txt", + "structural/multiqc/multiqc_data/bcftools_stats_vqc_Count_Transversions.txt", "structural/multiqc/multiqc_data/multiqc.log", + "structural/multiqc/multiqc_data/multiqc_bcftools_stats.txt", "structural/multiqc/multiqc_data/multiqc_citations.txt", "structural/multiqc/multiqc_data/multiqc_data.json", + "structural/multiqc/multiqc_data/multiqc_general_stats.txt", "structural/multiqc/multiqc_data/multiqc_software_versions.txt", "structural/multiqc/multiqc_data/multiqc_sources.txt", + "structural/multiqc/multiqc_plots", + "structural/multiqc/multiqc_plots/pdf", + "structural/multiqc/multiqc_plots/pdf/bcftools_stats_indel-lengths.pdf", + "structural/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_Indels.pdf", + "structural/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_SNP.pdf", + "structural/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_Transitions.pdf", + "structural/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_Transversions.pdf", + "structural/multiqc/multiqc_plots/pdf/general_stats_table.pdf", + "structural/multiqc/multiqc_plots/png", + "structural/multiqc/multiqc_plots/png/bcftools_stats_indel-lengths.png", + "structural/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_Indels.png", + "structural/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_SNP.png", + "structural/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_Transitions.png", + "structural/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_Transversions.png", + "structural/multiqc/multiqc_plots/png/general_stats_table.png", + "structural/multiqc/multiqc_plots/svg", + "structural/multiqc/multiqc_plots/svg/bcftools_stats_indel-lengths.svg", + "structural/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_Indels.svg", + "structural/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_SNP.svg", + "structural/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_Transitions.svg", + "structural/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_Transversions.svg", + "structural/multiqc/multiqc_plots/svg/general_stats_table.svg", "structural/multiqc/multiqc_report.html", "structural/summary", "structural/summary/comparisons", - "structural/summary/comparisons/structural", - "structural/summary/comparisons/structural/svbenchmark.FN.csv", - "structural/summary/comparisons/structural/svbenchmark.FP.csv", - "structural/summary/comparisons/structural/truvari.FN.csv", - "structural/summary/comparisons/structural/truvari.FP.csv", - "structural/summary/comparisons/structural/truvari.TP_base.csv", - "structural/summary/comparisons/structural/truvari.TP_comp.csv", + "structural/summary/comparisons/svbenchmark.FN.csv", + "structural/summary/comparisons/svbenchmark.FP.csv", + "structural/summary/comparisons/truvari.FN.csv", + "structural/summary/comparisons/truvari.FP.csv", + "structural/summary/comparisons/truvari.TP_base.csv", + "structural/summary/comparisons/truvari.TP_comp.csv", "structural/summary/datavzrd", "structural/summary/datavzrd/svbenchmark", "structural/summary/datavzrd/svbenchmark/index.html", @@ -179,16 +213,16 @@ "structural/summary/datavzrd/wittyer/test/plots/plot_8.js", "structural/summary/plots", "structural/summary/plots/svbenchmark", - "structural/summary/plots/svbenchmark/metric_by_tool_svbenchmark.png", - "structural/summary/plots/svbenchmark/variants_by_tool_svbenchmark.png", + "structural/summary/plots/svbenchmark/metric_by_tool_svbenchmark_mqc.png", + "structural/summary/plots/svbenchmark/variants_by_tool_svbenchmark_mqc.png", "structural/summary/plots/truvari", - "structural/summary/plots/truvari/metric_by_tool_truvari.png", - "structural/summary/plots/truvari/variants_by_tool_truvari.png", + "structural/summary/plots/truvari/metric_by_tool_truvari_mqc.png", + "structural/summary/plots/truvari/variants_by_tool_truvari_mqc.png", "structural/summary/plots/wittyer", - "structural/summary/plots/wittyer/Base_metric_by_tool_wittyer.png", - "structural/summary/plots/wittyer/Base_variants_by_tool_wittyer.png", - "structural/summary/plots/wittyer/Event_metric_by_tool_wittyer.png", - "structural/summary/plots/wittyer/Event_variants_by_tool_wittyer.png", + "structural/summary/plots/wittyer/Base_metric_by_tool_wittyer_mqc.png", + "structural/summary/plots/wittyer/Base_variants_by_tool_wittyer_mqc.png", + "structural/summary/plots/wittyer/Event_metric_by_tool_wittyer_mqc.png", + "structural/summary/plots/wittyer/Event_variants_by_tool_wittyer_mqc.png", "structural/summary/tables", "structural/summary/tables/svbenchmark", "structural/summary/tables/svbenchmark/svbenchmark.summary.csv", @@ -214,21 +248,21 @@ "structural/test1/benchmarks/truvari/test1.HG002.manta.tp-base.vcf.gz.tbi", "structural/test1/benchmarks/truvari/test1.HG002.manta.tp-comp.vcf.gz", "structural/test1/benchmarks/truvari/test1.HG002.manta.tp-comp.vcf.gz.tbi", - "structural/test1/benchmarks/wittyer_bench", - "structural/test1/benchmarks/wittyer_bench/test1.HG002.manta.json", - "structural/test1/benchmarks/wittyer_bench/test1.HG002.manta.vcf.gz", - "structural/test1/benchmarks/wittyer_bench/test1.HG002.manta.vcf.gz.tbi", + "structural/test1/benchmarks/wittyer", + "structural/test1/benchmarks/wittyer/test1.HG002.manta.json", + "structural/test1/benchmarks/wittyer/test1.HG002.manta.vcf.gz", + "structural/test1/benchmarks/wittyer/test1.HG002.manta.vcf.gz.tbi", "structural/test1/preprocess", "structural/test1/preprocess/manta.HG002.chr21.norm.sort.vcf.gz", "structural/test1/preprocess/manta.HG002.chr21.norm.vcf.gz", "structural/test1/preprocess/test1.dedup.sort.vcf.gz", - "structural/test1/preprocess/test1.manta.svync.rh.norm.filter.vcf", "structural/test1/preprocess/test1.manta.svync.vcf.gz", + "structural/test1/preprocess/test1.norm.filter.vcf", "structural/test1/stats", "structural/test1/stats/bcftools", "structural/test1/stats/bcftools/test1.manta.bcftools_stats.txt", "structural/test1/stats/survivor", - "structural/test1/stats/survivor/test1.manta.stats", + "structural/test1/stats/survivor/test1.manta_mqc.stats", "structural/test2", "structural/test2/benchmarks", "structural/test2/benchmarks/svanalyzer", @@ -247,20 +281,20 @@ "structural/test2/benchmarks/truvari/test2.HG002.merged.tp-base.vcf.gz.tbi", "structural/test2/benchmarks/truvari/test2.HG002.merged.tp-comp.vcf.gz", "structural/test2/benchmarks/truvari/test2.HG002.merged.tp-comp.vcf.gz.tbi", - "structural/test2/benchmarks/wittyer_bench", - "structural/test2/benchmarks/wittyer_bench/test2.HG002.merged.json", - "structural/test2/benchmarks/wittyer_bench/test2.HG002.merged.vcf.gz", - "structural/test2/benchmarks/wittyer_bench/test2.HG002.merged.vcf.gz.tbi", + "structural/test2/benchmarks/wittyer", + "structural/test2/benchmarks/wittyer/test2.HG002.merged.json", + "structural/test2/benchmarks/wittyer/test2.HG002.merged.vcf.gz", + "structural/test2/benchmarks/wittyer/test2.HG002.merged.vcf.gz.tbi", "structural/test2/preprocess", "structural/test2/preprocess/Ashkenazim_HG002.filtered.sv.chr21.norm.sort.vcf.gz", "structural/test2/preprocess/Ashkenazim_HG002.filtered.sv.chr21.norm.vcf.gz", "structural/test2/preprocess/test2.dedup.sort.vcf.gz", - "structural/test2/preprocess/test2.rh.norm.filter.vcf", + "structural/test2/preprocess/test2.norm.filter.vcf", "structural/test2/stats", "structural/test2/stats/bcftools", "structural/test2/stats/bcftools/test2.merged.bcftools_stats.txt", "structural/test2/stats/survivor", - "structural/test2/stats/survivor/test2.merged.stats", + "structural/test2/stats/survivor/test2.merged_mqc.stats", "structural/test3", "structural/test3/benchmarks", "structural/test3/benchmarks/svanalyzer", @@ -279,48 +313,54 @@ "structural/test3/benchmarks/truvari/test3.HG002.dragen.tp-base.vcf.gz.tbi", "structural/test3/benchmarks/truvari/test3.HG002.dragen.tp-comp.vcf.gz", "structural/test3/benchmarks/truvari/test3.HG002.dragen.tp-comp.vcf.gz.tbi", - "structural/test3/benchmarks/wittyer_bench", - "structural/test3/benchmarks/wittyer_bench/test3.HG002.dragen.json", - "structural/test3/benchmarks/wittyer_bench/test3.HG002.dragen.vcf.gz", - "structural/test3/benchmarks/wittyer_bench/test3.HG002.dragen.vcf.gz.tbi", + "structural/test3/benchmarks/wittyer", + "structural/test3/benchmarks/wittyer/test3.HG002.dragen.json", + "structural/test3/benchmarks/wittyer/test3.HG002.dragen.vcf.gz", + "structural/test3/benchmarks/wittyer/test3.HG002.dragen.vcf.gz.tbi", "structural/test3/preprocess", "structural/test3/preprocess/HG002_DRAGEN_SV_hg19.chr21.norm.sort.vcf.gz", "structural/test3/preprocess/HG002_DRAGEN_SV_hg19.chr21.norm.vcf.gz", "structural/test3/preprocess/test3.dedup.sort.vcf.gz", - "structural/test3/preprocess/test3.dragen.svync.rh.norm.filter.vcf", "structural/test3/preprocess/test3.dragen.svync.vcf.gz", + "structural/test3/preprocess/test3.norm.filter.vcf", "structural/test3/stats", "structural/test3/stats/bcftools", "structural/test3/stats/bcftools/test3.dragen.bcftools_stats.txt", "structural/test3/stats/survivor", - "structural/test3/stats/survivor/test3.dragen.stats" + "structural/test3/stats/survivor/test3.dragen_mqc.stats" ], [ "HG002.bcftools_stats.txt:md5,8294f172a72ca7219a32db9c27e2524c", - "HG002.stats:md5,68681df47b35e3193be03610f5c6e3d6", + "HG002_mqc.stats:md5,68681df47b35e3193be03610f5c6e3d6", + "svbenchmark.FN.csv:md5,fda320e4b95452acedfdc8cc3a472ad3", + "svbenchmark.FP.csv:md5,35068a0c16903cba32257a8d9a6d51a2", + "truvari.FN.csv:md5,7d2992f331488dd307831a25b8157b0a", + "truvari.FP.csv:md5,cdc258e9153f7a75fc8340ce7211b577", + "truvari.TP_base.csv:md5,cd6d6a9c870739378c7e0ecc6868ebf6", + "truvari.TP_comp.csv:md5,4a47608038a1301cb518d872619245ff", "test1.HG002.manta.distances:md5,33dcbe29f7129dc30c184b564803ec63", "test1.HG002.manta.report:md5,91b0fbfd6fcdf45b85290f92c5a470fb", "test1.manta.bcftools_stats.txt:md5,0e4cf1707b245c026fe6a0af6e8f8c0a", - "test1.manta.stats:md5,6f25a9372095052218110390e8e75c54", + "test1.manta_mqc.stats:md5,6f25a9372095052218110390e8e75c54", "test2.HG002.merged.distances:md5,346f18a5cbeece98716951c8fc2aaea4", "test2.HG002.merged.report:md5,6466d73155f88084efc69cad3628eb8c", "test2.merged.bcftools_stats.txt:md5,576f9bc7e06bc2bbfccceb9da161a467", - "test2.merged.stats:md5,36d80468e13b583d0761b434d095312d", + "test2.merged_mqc.stats:md5,36d80468e13b583d0761b434d095312d", "test3.HG002.dragen.distances:md5,346f18a5cbeece98716951c8fc2aaea4", "test3.HG002.dragen.report:md5,b295d4867b7a96f0ca0bb5e8bb45eb68", "test3.dragen.bcftools_stats.txt:md5,0683a5d3c47a5a6a43ad2b6a0387672e", - "test3.dragen.stats:md5,5c59cceb2e7d909d91074bb8e5804abc" + "test3.dragen_mqc.stats:md5,5c59cceb2e7d909d91074bb8e5804abc" ] ], "meta": { "nf-test": "0.9.0", - "nextflow": "24.10.0" + "nextflow": "24.10.1" }, - "timestamp": "2024-11-12T15:58:48.350235224" + "timestamp": "2024-11-22T10:40:00.667995493" }, "-stub": { "content": [ - 138, + 144, { "BCFTOOLS_DEDUP": { "bcftools": 1.18 @@ -337,6 +377,9 @@ "BCFTOOLS_STATS": { "bcftools": 1.18 }, + "BCFTOOLS_VIEW_CONTIGS": { + "bcftools": 1.18 + }, "BGZIP_TABIX": { "tabix": 1.12 }, @@ -364,6 +407,9 @@ "TABIX_BGZIP": { "tabix": "1.19.1" }, + "TABIX_BGZIPTABIX": { + "tabix": "1.19.1" + }, "TABIX_BGZIP_QUERY": { "tabix": "1.19.1" }, @@ -400,20 +446,19 @@ "structural/HG002/stats/bcftools", "structural/HG002/stats/bcftools/HG002.bcftools_stats.txt", "structural/HG002/stats/survivor", - "structural/HG002/stats/survivor/HG002.stats", + "structural/HG002/stats/survivor/HG002_mqc.stats", "structural/multiqc", "structural/multiqc/multiqc_data", "structural/multiqc/multiqc_plots", "structural/multiqc/multiqc_report.html", "structural/summary", "structural/summary/comparisons", - "structural/summary/comparisons/structural", - "structural/summary/comparisons/structural/svbenchmark.FN.csv", - "structural/summary/comparisons/structural/svbenchmark.FP.csv", - "structural/summary/comparisons/structural/truvari.FN.csv", - "structural/summary/comparisons/structural/truvari.FP.csv", - "structural/summary/comparisons/structural/truvari.TP_base.csv", - "structural/summary/comparisons/structural/truvari.TP_comp.csv", + "structural/summary/comparisons/svbenchmark.FN.csv", + "structural/summary/comparisons/svbenchmark.FP.csv", + "structural/summary/comparisons/truvari.FN.csv", + "structural/summary/comparisons/truvari.FP.csv", + "structural/summary/comparisons/truvari.TP_base.csv", + "structural/summary/comparisons/truvari.TP_comp.csv", "structural/summary/datavzrd", "structural/summary/datavzrd/svbenchmark", "structural/summary/datavzrd/svbenchmark/index.html", @@ -472,14 +517,14 @@ "structural/summary/datavzrd/wittyer/static/datavzrd.css", "structural/summary/plots", "structural/summary/plots/svbenchmark", - "structural/summary/plots/svbenchmark/metric_by_tool_svbenchmark.png", - "structural/summary/plots/svbenchmark/variants_by_tool_svbenchmark.png", + "structural/summary/plots/svbenchmark/metric_by_tool_svbenchmark_mqc.png", + "structural/summary/plots/svbenchmark/variants_by_tool_svbenchmark_mqc.png", "structural/summary/plots/truvari", - "structural/summary/plots/truvari/metric_by_tool_truvari.png", - "structural/summary/plots/truvari/variants_by_tool_truvari.png", + "structural/summary/plots/truvari/metric_by_tool_truvari_mqc.png", + "structural/summary/plots/truvari/variants_by_tool_truvari_mqc.png", "structural/summary/plots/wittyer", - "structural/summary/plots/wittyer/metric_by_tool_wittyer.png", - "structural/summary/plots/wittyer/variants_by_tool_wittyer.png", + "structural/summary/plots/wittyer/metric_by_tool_wittyer_mqc.png", + "structural/summary/plots/wittyer/variants_by_tool_wittyer_mqc.png", "structural/summary/tables", "structural/summary/tables/svbenchmark", "structural/summary/tables/svbenchmark/svbenchmark.regions.csv", @@ -508,21 +553,21 @@ "structural/test1/benchmarks/truvari/test1.HG002.manta.tp-base.vcf.gz.tbi", "structural/test1/benchmarks/truvari/test1.HG002.manta.tp-comp.vcf.gz", "structural/test1/benchmarks/truvari/test1.HG002.manta.tp-comp.vcf.gz.tbi", - "structural/test1/benchmarks/wittyer_bench", - "structural/test1/benchmarks/wittyer_bench/test1.HG002.manta.json", - "structural/test1/benchmarks/wittyer_bench/test1.HG002.manta.vcf.gz", - "structural/test1/benchmarks/wittyer_bench/test1.HG002.manta.vcf.gz.tbi", + "structural/test1/benchmarks/wittyer", + "structural/test1/benchmarks/wittyer/test1.HG002.manta.json", + "structural/test1/benchmarks/wittyer/test1.HG002.manta.vcf.gz", + "structural/test1/benchmarks/wittyer/test1.HG002.manta.vcf.gz.tbi", "structural/test1/preprocess", "structural/test1/preprocess/manta.HG002.chr21.norm.sort.vcf.gz", "structural/test1/preprocess/manta.HG002.chr21.norm.vcf.gz", "structural/test1/preprocess/test1.dedup.sort.vcf.gz", - "structural/test1/preprocess/test1.manta.svync.rh.norm.filter.vcf", "structural/test1/preprocess/test1.manta.svync.vcf.gz", + "structural/test1/preprocess/test1.norm.filter.vcf", "structural/test1/stats", "structural/test1/stats/bcftools", "structural/test1/stats/bcftools/test1.manta.bcftools_stats.txt", "structural/test1/stats/survivor", - "structural/test1/stats/survivor/test1.manta.stats", + "structural/test1/stats/survivor/test1.manta_mqc.stats", "structural/test2", "structural/test2/benchmarks", "structural/test2/benchmarks/svanalyzer", @@ -541,20 +586,20 @@ "structural/test2/benchmarks/truvari/test2.HG002.merged.tp-base.vcf.gz.tbi", "structural/test2/benchmarks/truvari/test2.HG002.merged.tp-comp.vcf.gz", "structural/test2/benchmarks/truvari/test2.HG002.merged.tp-comp.vcf.gz.tbi", - "structural/test2/benchmarks/wittyer_bench", - "structural/test2/benchmarks/wittyer_bench/test2.HG002.merged.json", - "structural/test2/benchmarks/wittyer_bench/test2.HG002.merged.vcf.gz", - "structural/test2/benchmarks/wittyer_bench/test2.HG002.merged.vcf.gz.tbi", + "structural/test2/benchmarks/wittyer", + "structural/test2/benchmarks/wittyer/test2.HG002.merged.json", + "structural/test2/benchmarks/wittyer/test2.HG002.merged.vcf.gz", + "structural/test2/benchmarks/wittyer/test2.HG002.merged.vcf.gz.tbi", "structural/test2/preprocess", "structural/test2/preprocess/Ashkenazim_HG002.filtered.sv.chr21.norm.sort.vcf.gz", "structural/test2/preprocess/Ashkenazim_HG002.filtered.sv.chr21.norm.vcf.gz", "structural/test2/preprocess/test2.dedup.sort.vcf.gz", - "structural/test2/preprocess/test2.rh.norm.filter.vcf", + "structural/test2/preprocess/test2.norm.filter.vcf", "structural/test2/stats", "structural/test2/stats/bcftools", "structural/test2/stats/bcftools/test2.merged.bcftools_stats.txt", "structural/test2/stats/survivor", - "structural/test2/stats/survivor/test2.merged.stats", + "structural/test2/stats/survivor/test2.merged_mqc.stats", "structural/test3", "structural/test3/benchmarks", "structural/test3/benchmarks/svanalyzer", @@ -573,26 +618,31 @@ "structural/test3/benchmarks/truvari/test3.HG002.dragen.tp-base.vcf.gz.tbi", "structural/test3/benchmarks/truvari/test3.HG002.dragen.tp-comp.vcf.gz", "structural/test3/benchmarks/truvari/test3.HG002.dragen.tp-comp.vcf.gz.tbi", - "structural/test3/benchmarks/wittyer_bench", - "structural/test3/benchmarks/wittyer_bench/test3.HG002.dragen.json", - "structural/test3/benchmarks/wittyer_bench/test3.HG002.dragen.vcf.gz", - "structural/test3/benchmarks/wittyer_bench/test3.HG002.dragen.vcf.gz.tbi", + "structural/test3/benchmarks/wittyer", + "structural/test3/benchmarks/wittyer/test3.HG002.dragen.json", + "structural/test3/benchmarks/wittyer/test3.HG002.dragen.vcf.gz", + "structural/test3/benchmarks/wittyer/test3.HG002.dragen.vcf.gz.tbi", "structural/test3/preprocess", "structural/test3/preprocess/HG002_DRAGEN_SV_hg19.chr21.norm.sort.vcf.gz", "structural/test3/preprocess/HG002_DRAGEN_SV_hg19.chr21.norm.vcf.gz", "structural/test3/preprocess/test3.dedup.sort.vcf.gz", - "structural/test3/preprocess/test3.dragen.svync.rh.norm.filter.vcf", "structural/test3/preprocess/test3.dragen.svync.vcf.gz", + "structural/test3/preprocess/test3.norm.filter.vcf", "structural/test3/stats", "structural/test3/stats/bcftools", "structural/test3/stats/bcftools/test3.dragen.bcftools_stats.txt", "structural/test3/stats/survivor", - "structural/test3/stats/survivor/test3.dragen.stats" + "structural/test3/stats/survivor/test3.dragen_mqc.stats" ], [ "HG002.bcftools_stats.txt:md5,d41d8cd98f00b204e9800998ecf8427e", - "HG002.stats:md5,d41d8cd98f00b204e9800998ecf8427e", - "multiqc_plots:md5,d41d8cd98f00b204e9800998ecf8427e", + "HG002_mqc.stats:md5,d41d8cd98f00b204e9800998ecf8427e", + "svbenchmark.FN.csv:md5,d41d8cd98f00b204e9800998ecf8427e", + "svbenchmark.FP.csv:md5,d41d8cd98f00b204e9800998ecf8427e", + "truvari.FN.csv:md5,d41d8cd98f00b204e9800998ecf8427e", + "truvari.FP.csv:md5,d41d8cd98f00b204e9800998ecf8427e", + "truvari.TP_base.csv:md5,d41d8cd98f00b204e9800998ecf8427e", + "truvari.TP_comp.csv:md5,d41d8cd98f00b204e9800998ecf8427e", "config.js:md5,d41d8cd98f00b204e9800998ecf8427e", "data_1.js:md5,d41d8cd98f00b204e9800998ecf8427e", "functions.js:md5,d41d8cd98f00b204e9800998ecf8427e", @@ -614,21 +664,21 @@ "test1.HG002.manta.distances:md5,d41d8cd98f00b204e9800998ecf8427e", "test1.HG002.manta.report:md5,d41d8cd98f00b204e9800998ecf8427e", "test1.manta.bcftools_stats.txt:md5,d41d8cd98f00b204e9800998ecf8427e", - "test1.manta.stats:md5,d41d8cd98f00b204e9800998ecf8427e", + "test1.manta_mqc.stats:md5,d41d8cd98f00b204e9800998ecf8427e", "test2.HG002.merged.distances:md5,d41d8cd98f00b204e9800998ecf8427e", "test2.HG002.merged.report:md5,d41d8cd98f00b204e9800998ecf8427e", "test2.merged.bcftools_stats.txt:md5,d41d8cd98f00b204e9800998ecf8427e", - "test2.merged.stats:md5,d41d8cd98f00b204e9800998ecf8427e", + "test2.merged_mqc.stats:md5,d41d8cd98f00b204e9800998ecf8427e", "test3.HG002.dragen.distances:md5,d41d8cd98f00b204e9800998ecf8427e", "test3.HG002.dragen.report:md5,d41d8cd98f00b204e9800998ecf8427e", "test3.dragen.bcftools_stats.txt:md5,d41d8cd98f00b204e9800998ecf8427e", - "test3.dragen.stats:md5,d41d8cd98f00b204e9800998ecf8427e" + "test3.dragen_mqc.stats:md5,d41d8cd98f00b204e9800998ecf8427e" ] ], "meta": { "nf-test": "0.9.0", - "nextflow": "24.10.0" + "nextflow": "24.10.1" }, - "timestamp": "2024-11-12T16:01:22.753474251" + "timestamp": "2024-11-22T10:42:21.212792945" } } \ No newline at end of file diff --git a/tests/liftover_hg38.nf.test.snap b/tests/liftover_hg38.nf.test.snap index bde2593..f3dacf1 100644 --- a/tests/liftover_hg38.nf.test.snap +++ b/tests/liftover_hg38.nf.test.snap @@ -105,19 +105,58 @@ "small/HG002/stats/bcftools/HG002.bcftools_stats.txt", "small/multiqc", "small/multiqc/multiqc_data", + "small/multiqc/multiqc_data/bcftools-stats-subtypes.txt", + "small/multiqc/multiqc_data/bcftools_stats_indel-lengths.txt", + "small/multiqc/multiqc_data/bcftools_stats_variant_depths.txt", + "small/multiqc/multiqc_data/bcftools_stats_vqc_Count_Indels.txt", + "small/multiqc/multiqc_data/bcftools_stats_vqc_Count_SNP.txt", + "small/multiqc/multiqc_data/bcftools_stats_vqc_Count_Transitions.txt", + "small/multiqc/multiqc_data/bcftools_stats_vqc_Count_Transversions.txt", "small/multiqc/multiqc_data/multiqc.log", + "small/multiqc/multiqc_data/multiqc_bcftools_stats.txt", "small/multiqc/multiqc_data/multiqc_citations.txt", "small/multiqc/multiqc_data/multiqc_data.json", + "small/multiqc/multiqc_data/multiqc_general_stats.txt", "small/multiqc/multiqc_data/multiqc_software_versions.txt", "small/multiqc/multiqc_data/multiqc_sources.txt", + "small/multiqc/multiqc_plots", + "small/multiqc/multiqc_plots/pdf", + "small/multiqc/multiqc_plots/pdf/bcftools-stats-subtypes-cnt.pdf", + "small/multiqc/multiqc_plots/pdf/bcftools-stats-subtypes-pct.pdf", + "small/multiqc/multiqc_plots/pdf/bcftools_stats_indel-lengths.pdf", + "small/multiqc/multiqc_plots/pdf/bcftools_stats_variant_depths.pdf", + "small/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_Indels.pdf", + "small/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_SNP.pdf", + "small/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_Transitions.pdf", + "small/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_Transversions.pdf", + "small/multiqc/multiqc_plots/pdf/general_stats_table.pdf", + "small/multiqc/multiqc_plots/png", + "small/multiqc/multiqc_plots/png/bcftools-stats-subtypes-cnt.png", + "small/multiqc/multiqc_plots/png/bcftools-stats-subtypes-pct.png", + "small/multiqc/multiqc_plots/png/bcftools_stats_indel-lengths.png", + "small/multiqc/multiqc_plots/png/bcftools_stats_variant_depths.png", + "small/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_Indels.png", + "small/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_SNP.png", + "small/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_Transitions.png", + "small/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_Transversions.png", + "small/multiqc/multiqc_plots/png/general_stats_table.png", + "small/multiqc/multiqc_plots/svg", + "small/multiqc/multiqc_plots/svg/bcftools-stats-subtypes-cnt.svg", + "small/multiqc/multiqc_plots/svg/bcftools-stats-subtypes-pct.svg", + "small/multiqc/multiqc_plots/svg/bcftools_stats_indel-lengths.svg", + "small/multiqc/multiqc_plots/svg/bcftools_stats_variant_depths.svg", + "small/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_Indels.svg", + "small/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_SNP.svg", + "small/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_Transitions.svg", + "small/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_Transversions.svg", + "small/multiqc/multiqc_plots/svg/general_stats_table.svg", "small/multiqc/multiqc_report.html", "small/summary", "small/summary/comparisons", - "small/summary/comparisons/small", - "small/summary/comparisons/small/rtgtools.FN.csv", - "small/summary/comparisons/small/rtgtools.FP.csv", - "small/summary/comparisons/small/rtgtools.TP_base.csv", - "small/summary/comparisons/small/rtgtools.TP_comp.csv", + "small/summary/comparisons/rtgtools.FN.csv", + "small/summary/comparisons/rtgtools.FP.csv", + "small/summary/comparisons/rtgtools.TP_base.csv", + "small/summary/comparisons/rtgtools.TP_comp.csv", "small/summary/datavzrd", "small/summary/datavzrd/happy", "small/summary/datavzrd/happy/index.html", @@ -184,17 +223,17 @@ "small/summary/datavzrd/versions.yml", "small/summary/plots", "small/summary/plots/happy", - "small/summary/plots/happy/INDEL_ALL_metric_by_tool_happy.png", - "small/summary/plots/happy/INDEL_ALL_variants_by_tool_happy.png", - "small/summary/plots/happy/INDEL_PASS_metric_by_tool_happy.png", - "small/summary/plots/happy/INDEL_PASS_variants_by_tool_happy.png", - "small/summary/plots/happy/SNP_ALL_metric_by_tool_happy.png", - "small/summary/plots/happy/SNP_ALL_variants_by_tool_happy.png", - "small/summary/plots/happy/SNP_PASS_metric_by_tool_happy.png", - "small/summary/plots/happy/SNP_PASS_variants_by_tool_happy.png", + "small/summary/plots/happy/INDEL_ALL_metric_by_tool_happy_mqc.png", + "small/summary/plots/happy/INDEL_ALL_variants_by_tool_happy_mqc.png", + "small/summary/plots/happy/INDEL_PASS_metric_by_tool_happy_mqc.png", + "small/summary/plots/happy/INDEL_PASS_variants_by_tool_happy_mqc.png", + "small/summary/plots/happy/SNP_ALL_metric_by_tool_happy_mqc.png", + "small/summary/plots/happy/SNP_ALL_variants_by_tool_happy_mqc.png", + "small/summary/plots/happy/SNP_PASS_metric_by_tool_happy_mqc.png", + "small/summary/plots/happy/SNP_PASS_variants_by_tool_happy_mqc.png", "small/summary/plots/rtgtools", - "small/summary/plots/rtgtools/metric_by_tool_rtgtools.png", - "small/summary/plots/rtgtools/variants_by_tool_rtgtools.png", + "small/summary/plots/rtgtools/metric_by_tool_rtgtools_mqc.png", + "small/summary/plots/rtgtools/variants_by_tool_rtgtools_mqc.png", "small/summary/tables", "small/summary/tables/happy", "small/summary/tables/happy/happy.summary.csv", @@ -286,6 +325,10 @@ "suffixpointer0:md5,468281ffb10d7dd934289af762a03781", "HG002.sort.merged.bed:md5,5e997133249c2227cb5363b314245636", "HG002.bcftools_stats.txt:md5,07fafa430abc857969015ea6a41d1032", + "rtgtools.FN.csv:md5,fb46816d5d479287984c4005fdd1631a", + "rtgtools.FP.csv:md5,24761919bc77724a3e1582e3bbee01cb", + "rtgtools.TP_base.csv:md5,ed42cd3e248812c1a3e1cf4985b92539", + "rtgtools.TP_comp.csv:md5,49259e81f11d9014c4ccea064a1a05b1", "test1.HG002.strelka.extended.csv:md5,fadf06276179c1cc388007e5651fb9af", "test1.HG002.strelka.roc.Locations.INDEL.PASS.csv.gz:md5,a08665be8ea20855a14d6418d07521dc", "test1.HG002.strelka.roc.Locations.INDEL.csv.gz:md5,8d4a20a5914379230952aeb252845e2d", @@ -310,9 +353,9 @@ ], "meta": { "nf-test": "0.9.0", - "nextflow": "24.10.0" + "nextflow": "24.10.1" }, - "timestamp": "2024-11-13T09:00:38.410760165" + "timestamp": "2024-11-22T10:25:06.723892719" }, "-stub": { "content": [ diff --git a/tests/somatic_indel.nf.test.snap b/tests/somatic_indel.nf.test.snap index 7376835..e4936e4 100644 --- a/tests/somatic_indel.nf.test.snap +++ b/tests/somatic_indel.nf.test.snap @@ -51,11 +51,51 @@ "indel/SEQC2/stats/bcftools/SEQC2.bcftools_stats.txt", "indel/multiqc", "indel/multiqc/multiqc_data", + "indel/multiqc/multiqc_data/bcftools-stats-subtypes.txt", + "indel/multiqc/multiqc_data/bcftools_stats_indel-lengths.txt", + "indel/multiqc/multiqc_data/bcftools_stats_variant_depths.txt", + "indel/multiqc/multiqc_data/bcftools_stats_vqc_Count_Indels.txt", + "indel/multiqc/multiqc_data/bcftools_stats_vqc_Count_SNP.txt", + "indel/multiqc/multiqc_data/bcftools_stats_vqc_Count_Transitions.txt", + "indel/multiqc/multiqc_data/bcftools_stats_vqc_Count_Transversions.txt", "indel/multiqc/multiqc_data/multiqc.log", + "indel/multiqc/multiqc_data/multiqc_bcftools_stats.txt", "indel/multiqc/multiqc_data/multiqc_citations.txt", "indel/multiqc/multiqc_data/multiqc_data.json", + "indel/multiqc/multiqc_data/multiqc_general_stats.txt", "indel/multiqc/multiqc_data/multiqc_software_versions.txt", "indel/multiqc/multiqc_data/multiqc_sources.txt", + "indel/multiqc/multiqc_plots", + "indel/multiqc/multiqc_plots/pdf", + "indel/multiqc/multiqc_plots/pdf/bcftools-stats-subtypes-cnt.pdf", + "indel/multiqc/multiqc_plots/pdf/bcftools-stats-subtypes-pct.pdf", + "indel/multiqc/multiqc_plots/pdf/bcftools_stats_indel-lengths.pdf", + "indel/multiqc/multiqc_plots/pdf/bcftools_stats_variant_depths.pdf", + "indel/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_Indels.pdf", + "indel/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_SNP.pdf", + "indel/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_Transitions.pdf", + "indel/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_Transversions.pdf", + "indel/multiqc/multiqc_plots/pdf/general_stats_table.pdf", + "indel/multiqc/multiqc_plots/png", + "indel/multiqc/multiqc_plots/png/bcftools-stats-subtypes-cnt.png", + "indel/multiqc/multiqc_plots/png/bcftools-stats-subtypes-pct.png", + "indel/multiqc/multiqc_plots/png/bcftools_stats_indel-lengths.png", + "indel/multiqc/multiqc_plots/png/bcftools_stats_variant_depths.png", + "indel/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_Indels.png", + "indel/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_SNP.png", + "indel/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_Transitions.png", + "indel/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_Transversions.png", + "indel/multiqc/multiqc_plots/png/general_stats_table.png", + "indel/multiqc/multiqc_plots/svg", + "indel/multiqc/multiqc_plots/svg/bcftools-stats-subtypes-cnt.svg", + "indel/multiqc/multiqc_plots/svg/bcftools-stats-subtypes-pct.svg", + "indel/multiqc/multiqc_plots/svg/bcftools_stats_indel-lengths.svg", + "indel/multiqc/multiqc_plots/svg/bcftools_stats_variant_depths.svg", + "indel/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_Indels.svg", + "indel/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_SNP.svg", + "indel/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_Transitions.svg", + "indel/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_Transversions.svg", + "indel/multiqc/multiqc_plots/svg/general_stats_table.svg", "indel/multiqc/multiqc_report.html", "indel/summary", "indel/summary/datavzrd", @@ -98,8 +138,8 @@ "indel/summary/datavzrd/versions.yml", "indel/summary/plots", "indel/summary/plots/sompy", - "indel/summary/plots/sompy/metric_by_tool_sompy.png", - "indel/summary/plots/sompy/variants_by_tool_sompy.png", + "indel/summary/plots/sompy/metric_by_tool_sompy_mqc.png", + "indel/summary/plots/sompy/variants_by_tool_sompy_mqc.png", "indel/summary/tables", "indel/summary/tables/sompy", "indel/summary/tables/sompy/sompy.regions.csv", @@ -139,8 +179,8 @@ ], "meta": { "nf-test": "0.9.0", - "nextflow": "24.10.0" + "nextflow": "24.10.1" }, - "timestamp": "2024-11-12T16:14:37.608031284" + "timestamp": "2024-11-22T10:27:18.206645077" } } \ No newline at end of file diff --git a/tests/somatic_snv.nf.test.snap b/tests/somatic_snv.nf.test.snap index 278af4a..c0e5601 100644 --- a/tests/somatic_snv.nf.test.snap +++ b/tests/somatic_snv.nf.test.snap @@ -1,115 +1,26 @@ { "-stub": { "content": [ - 38, - { - "BCFTOOLS_REHEADER": { - "bcftools": 1.18 - }, - "BCFTOOLS_SORT": { - "bcftools": 1.18 - }, - "BCFTOOLS_STATS": { - "bcftools": 1.18 - }, - "BCFTOOLS_VIEW_CONTIGS": { - "bcftools": 1.18 - }, - "BCFTOOLS_VIEW_FILTERMISSING": { - "bcftools": 1.18 - }, - "BCFTOOLS_VIEW_SUBSAMPLE": { - "bcftools": 1.18 - }, - "DATAVZRD": { - "datavzrd": "2.36.12" - }, - "HAPPY_SOMPY": { - "hap.py": "0.3.14" - }, - "MERGE_REPORTS": { - "python": "3.8.6" - }, - "PLOTS": { - "r-base": "4.3.1" - }, - "TABIX_BGZIP": { - "tabix": "1.19.1" - }, - "TABIX_BGZIPTABIX": { - "tabix": "1.19.1" - }, - "Workflow": { - "nf-core/variantbenchmarking": "v1.0dev" - } - }, + 30, + null, [ "pipeline_info", - "pipeline_info/nf_core_pipeline_software_mqc_versions.yml", "snv", "snv/SEQC2", "snv/SEQC2/stats", "snv/SEQC2/stats/bcftools", "snv/SEQC2/stats/bcftools/SEQC2.bcftools_stats.txt", - "snv/multiqc", - "snv/multiqc/multiqc_data", - "snv/multiqc/multiqc_plots", - "snv/multiqc/multiqc_report.html", - "snv/summary", - "snv/summary/datavzrd", - "snv/summary/datavzrd/sompy", - "snv/summary/datavzrd/sompy/index.html", - "snv/summary/datavzrd/sompy/network", - "snv/summary/datavzrd/sompy/network/config.js", - "snv/summary/datavzrd/sompy/network/data", - "snv/summary/datavzrd/sompy/network/data/data_1.js", - "snv/summary/datavzrd/sompy/network/functions.js", - "snv/summary/datavzrd/sompy/network/heatmap.js", - "snv/summary/datavzrd/sompy/network/index_1.html", - "snv/summary/datavzrd/sompy/network/plots", - "snv/summary/datavzrd/sompy/network/plots/plot_0.js", - "snv/summary/datavzrd/sompy/static", - "snv/summary/datavzrd/sompy/static/bootstrap-select.min.css", - "snv/summary/datavzrd/sompy/static/bootstrap-table-fixed-columns.min.css", - "snv/summary/datavzrd/sompy/static/bootstrap-table.min.css", - "snv/summary/datavzrd/sompy/static/bootstrap.min.css", - "snv/summary/datavzrd/sompy/static/bundle.js", - "snv/summary/datavzrd/sompy/static/datavzrd.css", - "snv/summary/datavzrd/versions.yml", - "snv/summary/plots", - "snv/summary/plots/sompy", - "snv/summary/plots/sompy/metric_by_tool_sompy.png", - "snv/summary/plots/sompy/variants_by_tool_sompy.png", - "snv/summary/tables", - "snv/summary/tables/sompy", - "snv/summary/tables/sompy/sompy.regions.csv", - "snv/summary/tables/sompy/sompy.summary.csv", "snv/test1", - "snv/test1/benchmarks", - "snv/test1/benchmarks/sompy", - "snv/test1/benchmarks/sompy/test1.SEQC2.freebayes.features.csv", - "snv/test1/benchmarks/sompy/test1.SEQC2.freebayes.metrics.json", - "snv/test1/benchmarks/sompy/test1.SEQC2.freebayes.stats.csv", "snv/test1/stats", "snv/test1/stats/bcftools", "snv/test1/stats/bcftools/test1.freebayes.bcftools_stats.txt", "snv/test2", - "snv/test2/benchmarks", - "snv/test2/benchmarks/sompy", - "snv/test2/benchmarks/sompy/test2.SEQC2.manta.features.csv", - "snv/test2/benchmarks/sompy/test2.SEQC2.manta.metrics.json", - "snv/test2/benchmarks/sompy/test2.SEQC2.manta.stats.csv", "snv/test2/preprocess", "snv/test2/preprocess/HCC1395T_vs_HCC1395N.manta.somatic_sv.sort.vcf.gz", "snv/test2/stats", "snv/test2/stats/bcftools", "snv/test2/stats/bcftools/test2.manta.bcftools_stats.txt", "snv/test3", - "snv/test3/benchmarks", - "snv/test3/benchmarks/sompy", - "snv/test3/benchmarks/sompy/test3.SEQC2.strelka.features.csv", - "snv/test3/benchmarks/sompy/test3.SEQC2.strelka.metrics.json", - "snv/test3/benchmarks/sompy/test3.SEQC2.strelka.stats.csv", "snv/test3/preprocess", "snv/test3/preprocess/HCC1395T_vs_HCC1395N.strelka.somatic_snvs.sort.vcf.gz", "snv/test3/stats", @@ -118,28 +29,15 @@ ], [ "SEQC2.bcftools_stats.txt:md5,d41d8cd98f00b204e9800998ecf8427e", - "multiqc_plots:md5,d41d8cd98f00b204e9800998ecf8427e", - "config.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "data_1.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "functions.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "heatmap.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "index_1.html:md5,d41d8cd98f00b204e9800998ecf8427e", - "plot_0.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "test1.SEQC2.freebayes.features.csv:md5,d41d8cd98f00b204e9800998ecf8427e", - "test1.SEQC2.freebayes.stats.csv:md5,d41d8cd98f00b204e9800998ecf8427e", "test1.freebayes.bcftools_stats.txt:md5,d41d8cd98f00b204e9800998ecf8427e", - "test2.SEQC2.manta.features.csv:md5,d41d8cd98f00b204e9800998ecf8427e", - "test2.SEQC2.manta.stats.csv:md5,d41d8cd98f00b204e9800998ecf8427e", "test2.manta.bcftools_stats.txt:md5,d41d8cd98f00b204e9800998ecf8427e", - "test3.SEQC2.strelka.features.csv:md5,d41d8cd98f00b204e9800998ecf8427e", - "test3.SEQC2.strelka.stats.csv:md5,d41d8cd98f00b204e9800998ecf8427e", "test3.strelka.bcftools_stats.txt:md5,d41d8cd98f00b204e9800998ecf8427e" ] ], "meta": { "nf-test": "0.9.0", - "nextflow": "24.10.0" + "nextflow": "24.10.1" }, - "timestamp": "2024-11-12T16:24:28.108507744" + "timestamp": "2024-11-22T10:30:59.285037668" } } \ No newline at end of file diff --git a/tests/somatic_sv.nf.test.snap b/tests/somatic_sv.nf.test.snap index 331d865..a6dbdde 100644 --- a/tests/somatic_sv.nf.test.snap +++ b/tests/somatic_sv.nf.test.snap @@ -67,22 +67,50 @@ "structural/SEQC2/stats/bcftools", "structural/SEQC2/stats/bcftools/SEQC2.bcftools_stats.txt", "structural/SEQC2/stats/survivor", - "structural/SEQC2/stats/survivor/SEQC2.stats", + "structural/SEQC2/stats/survivor/SEQC2_mqc.stats", "structural/multiqc", "structural/multiqc/multiqc_data", + "structural/multiqc/multiqc_data/bcftools_stats_indel-lengths.txt", + "structural/multiqc/multiqc_data/bcftools_stats_vqc_Count_Indels.txt", + "structural/multiqc/multiqc_data/bcftools_stats_vqc_Count_SNP.txt", + "structural/multiqc/multiqc_data/bcftools_stats_vqc_Count_Transitions.txt", + "structural/multiqc/multiqc_data/bcftools_stats_vqc_Count_Transversions.txt", "structural/multiqc/multiqc_data/multiqc.log", + "structural/multiqc/multiqc_data/multiqc_bcftools_stats.txt", "structural/multiqc/multiqc_data/multiqc_citations.txt", "structural/multiqc/multiqc_data/multiqc_data.json", + "structural/multiqc/multiqc_data/multiqc_general_stats.txt", "structural/multiqc/multiqc_data/multiqc_software_versions.txt", "structural/multiqc/multiqc_data/multiqc_sources.txt", + "structural/multiqc/multiqc_plots", + "structural/multiqc/multiqc_plots/pdf", + "structural/multiqc/multiqc_plots/pdf/bcftools_stats_indel-lengths.pdf", + "structural/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_Indels.pdf", + "structural/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_SNP.pdf", + "structural/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_Transitions.pdf", + "structural/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_Transversions.pdf", + "structural/multiqc/multiqc_plots/pdf/general_stats_table.pdf", + "structural/multiqc/multiqc_plots/png", + "structural/multiqc/multiqc_plots/png/bcftools_stats_indel-lengths.png", + "structural/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_Indels.png", + "structural/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_SNP.png", + "structural/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_Transitions.png", + "structural/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_Transversions.png", + "structural/multiqc/multiqc_plots/png/general_stats_table.png", + "structural/multiqc/multiqc_plots/svg", + "structural/multiqc/multiqc_plots/svg/bcftools_stats_indel-lengths.svg", + "structural/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_Indels.svg", + "structural/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_SNP.svg", + "structural/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_Transitions.svg", + "structural/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_Transversions.svg", + "structural/multiqc/multiqc_plots/svg/general_stats_table.svg", "structural/multiqc/multiqc_report.html", "structural/summary", "structural/summary/comparisons", - "structural/summary/comparisons/structural", - "structural/summary/comparisons/structural/truvari.FN.csv", - "structural/summary/comparisons/structural/truvari.FP.csv", - "structural/summary/comparisons/structural/truvari.TP_base.csv", - "structural/summary/comparisons/structural/truvari.TP_comp.csv", + "structural/summary/comparisons/truvari.FN.csv", + "structural/summary/comparisons/truvari.FP.csv", + "structural/summary/comparisons/truvari.TP_base.csv", + "structural/summary/comparisons/truvari.TP_comp.csv", "structural/summary/datavzrd", "structural/summary/datavzrd/truvari", "structural/summary/datavzrd/truvari/index.html", @@ -112,8 +140,8 @@ "structural/summary/datavzrd/versions.yml", "structural/summary/plots", "structural/summary/plots/truvari", - "structural/summary/plots/truvari/metric_by_tool_truvari.png", - "structural/summary/plots/truvari/variants_by_tool_truvari.png", + "structural/summary/plots/truvari/metric_by_tool_truvari_mqc.png", + "structural/summary/plots/truvari/variants_by_tool_truvari_mqc.png", "structural/summary/tables", "structural/summary/tables/truvari", "structural/summary/tables/truvari/truvari.summary.csv", @@ -136,7 +164,7 @@ "structural/test1/stats/bcftools", "structural/test1/stats/bcftools/test1.tiddit.bcftools_stats.txt", "structural/test1/stats/survivor", - "structural/test1/stats/survivor/test1.tiddit.stats", + "structural/test1/stats/survivor/test1.tiddit_mqc.stats", "structural/test2", "structural/test2/benchmarks", "structural/test2/benchmarks/truvari", @@ -156,21 +184,25 @@ "structural/test2/stats/bcftools", "structural/test2/stats/bcftools/test2.manta.bcftools_stats.txt", "structural/test2/stats/survivor", - "structural/test2/stats/survivor/test2.manta.stats" + "structural/test2/stats/survivor/test2.manta_mqc.stats" ], [ "SEQC2.bcftools_stats.txt:md5,a60de9c4d2f3db87d8ae404b73859bfa", - "SEQC2.stats:md5,a1327ec0cd3131f9e16cccf0024f61a1", + "SEQC2_mqc.stats:md5,a1327ec0cd3131f9e16cccf0024f61a1", + "truvari.FN.csv:md5,ec8c0aa9227f6e578136e2e53c15a097", + "truvari.FP.csv:md5,d47360e5f1260a7d1cfa1797a7814ef8", + "truvari.TP_base.csv:md5,ec8c0aa9227f6e578136e2e53c15a097", + "truvari.TP_comp.csv:md5,ec8c0aa9227f6e578136e2e53c15a097", "test1.tiddit.bcftools_stats.txt:md5,56b036b7bd2d7368620713613dd0cae2", - "test1.tiddit.stats:md5,0eb749429a6072f6bf63d377e37514d1", + "test1.tiddit_mqc.stats:md5,0eb749429a6072f6bf63d377e37514d1", "test2.manta.bcftools_stats.txt:md5,1c4cc5ab438537308e7f08a6c202118c", - "test2.manta.stats:md5,73bc60cd2754202ddca8be6552e85ffa" + "test2.manta_mqc.stats:md5,73bc60cd2754202ddca8be6552e85ffa" ] ], "meta": { "nf-test": "0.9.0", - "nextflow": "24.10.0" + "nextflow": "24.10.1" }, - "timestamp": "2024-11-12T16:27:02.901069711" + "timestamp": "2024-11-22T10:35:32.636046624" } } \ No newline at end of file From cecd72ae5bdf5d1d9503b52e44678bd9f77475e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=BCbra=20Narc=C4=B1?= Date: Fri, 22 Nov 2024 12:43:26 +0000 Subject: [PATCH 3/6] updates on snapshot --- tests/.nftignore | 17 ++++-- tests/germline_sv.nf.test.snap | 34 +---------- tests/somatic_snv.nf.test.snap | 101 ++++++++++++++++++++++++++++++++- 3 files changed, 112 insertions(+), 40 deletions(-) diff --git a/tests/.nftignore b/tests/.nftignore index 148cde2..ee8bdcf 100644 --- a/tests/.nftignore +++ b/tests/.nftignore @@ -9,17 +9,24 @@ references/rtgtools/genome.sdf/progress references/rtgtools/genome.sdf/format.log references/rtgtools/genome.sdf/mainIndex references/rtgtools/genome.sdf/done -**/summary/tables/**/*.csv **/summary/datavzrd/versions.yml **/summary/datavzrd/**/index.html **/summary/datavzrd/**/static/* -**/summary/datavzrd/**/test/*.js +**/summary/datavzrd/**/static/*.{js} +**/summary/datavzrd/**/static/*.{css} +**/summary/datavzrd/**/test/*.{js} **/summary/datavzrd/**/test/index_1.html **/summary/datavzrd/**/test/data/data_1.js -**/summary/datavzrd/**/test/plots/*.js +**/summary/datavzrd/**/test/plots/*.{js} +**/summary/datavzrd/**/network/plots/*.{js} +**/summary/datavzrd/**/network/*.{js} +**/summary/datavzrd/**/network/index_1.html +**/summary/datavzrd/**/network/data/data_1.js **/summary/plots/**/*.png -**/summary/comparisons/**/*.csv +**/summary/comparisons/*.csv +**/summary/tables/**/*.csv **/**/benchmarks/**/*.{json,json.gz,tsv.gz,vcf.gz,gz.tbi} -**/**/benchmarks/svanalyzer/*.{log} +**/**/benchmarks/svanalyzer/*.log +**/**/benchmarks/sompy/*.csv **/**/preprocess/*.{vcf.gz,gz.tbi,vcf} **/**/liftover/*.{vcf.gz,gz.tbi,vcf} diff --git a/tests/germline_sv.nf.test.snap b/tests/germline_sv.nf.test.snap index 6e03e8d..b04185a 100644 --- a/tests/germline_sv.nf.test.snap +++ b/tests/germline_sv.nf.test.snap @@ -332,12 +332,6 @@ [ "HG002.bcftools_stats.txt:md5,8294f172a72ca7219a32db9c27e2524c", "HG002_mqc.stats:md5,68681df47b35e3193be03610f5c6e3d6", - "svbenchmark.FN.csv:md5,fda320e4b95452acedfdc8cc3a472ad3", - "svbenchmark.FP.csv:md5,35068a0c16903cba32257a8d9a6d51a2", - "truvari.FN.csv:md5,7d2992f331488dd307831a25b8157b0a", - "truvari.FP.csv:md5,cdc258e9153f7a75fc8340ce7211b577", - "truvari.TP_base.csv:md5,cd6d6a9c870739378c7e0ecc6868ebf6", - "truvari.TP_comp.csv:md5,4a47608038a1301cb518d872619245ff", "test1.HG002.manta.distances:md5,33dcbe29f7129dc30c184b564803ec63", "test1.HG002.manta.report:md5,91b0fbfd6fcdf45b85290f92c5a470fb", "test1.manta.bcftools_stats.txt:md5,0e4cf1707b245c026fe6a0af6e8f8c0a", @@ -356,7 +350,7 @@ "nf-test": "0.9.0", "nextflow": "24.10.1" }, - "timestamp": "2024-11-22T10:40:00.667995493" + "timestamp": "2024-11-22T12:36:40.054294704" }, "-stub": { "content": [ @@ -637,30 +631,6 @@ [ "HG002.bcftools_stats.txt:md5,d41d8cd98f00b204e9800998ecf8427e", "HG002_mqc.stats:md5,d41d8cd98f00b204e9800998ecf8427e", - "svbenchmark.FN.csv:md5,d41d8cd98f00b204e9800998ecf8427e", - "svbenchmark.FP.csv:md5,d41d8cd98f00b204e9800998ecf8427e", - "truvari.FN.csv:md5,d41d8cd98f00b204e9800998ecf8427e", - "truvari.FP.csv:md5,d41d8cd98f00b204e9800998ecf8427e", - "truvari.TP_base.csv:md5,d41d8cd98f00b204e9800998ecf8427e", - "truvari.TP_comp.csv:md5,d41d8cd98f00b204e9800998ecf8427e", - "config.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "data_1.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "functions.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "heatmap.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "index_1.html:md5,d41d8cd98f00b204e9800998ecf8427e", - "plot_0.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "config.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "data_1.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "functions.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "heatmap.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "index_1.html:md5,d41d8cd98f00b204e9800998ecf8427e", - "plot_0.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "config.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "data_1.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "functions.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "heatmap.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "index_1.html:md5,d41d8cd98f00b204e9800998ecf8427e", - "plot_0.js:md5,d41d8cd98f00b204e9800998ecf8427e", "test1.HG002.manta.distances:md5,d41d8cd98f00b204e9800998ecf8427e", "test1.HG002.manta.report:md5,d41d8cd98f00b204e9800998ecf8427e", "test1.manta.bcftools_stats.txt:md5,d41d8cd98f00b204e9800998ecf8427e", @@ -679,6 +649,6 @@ "nf-test": "0.9.0", "nextflow": "24.10.1" }, - "timestamp": "2024-11-22T10:42:21.212792945" + "timestamp": "2024-11-22T12:38:58.811950484" } } \ No newline at end of file diff --git a/tests/somatic_snv.nf.test.snap b/tests/somatic_snv.nf.test.snap index c0e5601..e71e9d7 100644 --- a/tests/somatic_snv.nf.test.snap +++ b/tests/somatic_snv.nf.test.snap @@ -1,26 +1,115 @@ { "-stub": { "content": [ - 30, - null, + 38, + { + "BCFTOOLS_REHEADER": { + "bcftools": 1.18 + }, + "BCFTOOLS_SORT": { + "bcftools": 1.18 + }, + "BCFTOOLS_STATS": { + "bcftools": 1.18 + }, + "BCFTOOLS_VIEW_CONTIGS": { + "bcftools": 1.18 + }, + "BCFTOOLS_VIEW_FILTERMISSING": { + "bcftools": 1.18 + }, + "BCFTOOLS_VIEW_SUBSAMPLE": { + "bcftools": 1.18 + }, + "DATAVZRD": { + "datavzrd": "2.36.12" + }, + "HAPPY_SOMPY": { + "hap.py": "0.3.14" + }, + "MERGE_REPORTS": { + "python": "3.8.6" + }, + "PLOTS": { + "r-base": "4.3.1" + }, + "TABIX_BGZIP": { + "tabix": "1.19.1" + }, + "TABIX_BGZIPTABIX": { + "tabix": "1.19.1" + }, + "Workflow": { + "nf-core/variantbenchmarking": "v1.0dev" + } + }, [ "pipeline_info", + "pipeline_info/nf_core_pipeline_software_mqc_versions.yml", "snv", "snv/SEQC2", "snv/SEQC2/stats", "snv/SEQC2/stats/bcftools", "snv/SEQC2/stats/bcftools/SEQC2.bcftools_stats.txt", + "snv/multiqc", + "snv/multiqc/multiqc_data", + "snv/multiqc/multiqc_plots", + "snv/multiqc/multiqc_report.html", + "snv/summary", + "snv/summary/datavzrd", + "snv/summary/datavzrd/sompy", + "snv/summary/datavzrd/sompy/index.html", + "snv/summary/datavzrd/sompy/network", + "snv/summary/datavzrd/sompy/network/config.js", + "snv/summary/datavzrd/sompy/network/data", + "snv/summary/datavzrd/sompy/network/data/data_1.js", + "snv/summary/datavzrd/sompy/network/functions.js", + "snv/summary/datavzrd/sompy/network/heatmap.js", + "snv/summary/datavzrd/sompy/network/index_1.html", + "snv/summary/datavzrd/sompy/network/plots", + "snv/summary/datavzrd/sompy/network/plots/plot_0.js", + "snv/summary/datavzrd/sompy/static", + "snv/summary/datavzrd/sompy/static/bootstrap-select.min.css", + "snv/summary/datavzrd/sompy/static/bootstrap-table-fixed-columns.min.css", + "snv/summary/datavzrd/sompy/static/bootstrap-table.min.css", + "snv/summary/datavzrd/sompy/static/bootstrap.min.css", + "snv/summary/datavzrd/sompy/static/bundle.js", + "snv/summary/datavzrd/sompy/static/datavzrd.css", + "snv/summary/datavzrd/versions.yml", + "snv/summary/plots", + "snv/summary/plots/sompy", + "snv/summary/plots/sompy/metric_by_tool_sompy_mqc.png", + "snv/summary/plots/sompy/variants_by_tool_sompy_mqc.png", + "snv/summary/tables", + "snv/summary/tables/sompy", + "snv/summary/tables/sompy/sompy.regions.csv", + "snv/summary/tables/sompy/sompy.summary.csv", "snv/test1", + "snv/test1/benchmarks", + "snv/test1/benchmarks/sompy", + "snv/test1/benchmarks/sompy/test1.SEQC2.freebayes.features.csv", + "snv/test1/benchmarks/sompy/test1.SEQC2.freebayes.metrics.json", + "snv/test1/benchmarks/sompy/test1.SEQC2.freebayes.stats.csv", "snv/test1/stats", "snv/test1/stats/bcftools", "snv/test1/stats/bcftools/test1.freebayes.bcftools_stats.txt", "snv/test2", + "snv/test2/benchmarks", + "snv/test2/benchmarks/sompy", + "snv/test2/benchmarks/sompy/test2.SEQC2.manta.features.csv", + "snv/test2/benchmarks/sompy/test2.SEQC2.manta.metrics.json", + "snv/test2/benchmarks/sompy/test2.SEQC2.manta.stats.csv", "snv/test2/preprocess", "snv/test2/preprocess/HCC1395T_vs_HCC1395N.manta.somatic_sv.sort.vcf.gz", "snv/test2/stats", "snv/test2/stats/bcftools", "snv/test2/stats/bcftools/test2.manta.bcftools_stats.txt", "snv/test3", + "snv/test3/benchmarks", + "snv/test3/benchmarks/sompy", + "snv/test3/benchmarks/sompy/test3.SEQC2.strelka.features.csv", + "snv/test3/benchmarks/sompy/test3.SEQC2.strelka.metrics.json", + "snv/test3/benchmarks/sompy/test3.SEQC2.strelka.stats.csv", "snv/test3/preprocess", "snv/test3/preprocess/HCC1395T_vs_HCC1395N.strelka.somatic_snvs.sort.vcf.gz", "snv/test3/stats", @@ -29,8 +118,14 @@ ], [ "SEQC2.bcftools_stats.txt:md5,d41d8cd98f00b204e9800998ecf8427e", + "test1.SEQC2.freebayes.features.csv:md5,d41d8cd98f00b204e9800998ecf8427e", + "test1.SEQC2.freebayes.stats.csv:md5,d41d8cd98f00b204e9800998ecf8427e", "test1.freebayes.bcftools_stats.txt:md5,d41d8cd98f00b204e9800998ecf8427e", + "test2.SEQC2.manta.features.csv:md5,d41d8cd98f00b204e9800998ecf8427e", + "test2.SEQC2.manta.stats.csv:md5,d41d8cd98f00b204e9800998ecf8427e", "test2.manta.bcftools_stats.txt:md5,d41d8cd98f00b204e9800998ecf8427e", + "test3.SEQC2.strelka.features.csv:md5,d41d8cd98f00b204e9800998ecf8427e", + "test3.SEQC2.strelka.stats.csv:md5,d41d8cd98f00b204e9800998ecf8427e", "test3.strelka.bcftools_stats.txt:md5,d41d8cd98f00b204e9800998ecf8427e" ] ], @@ -38,6 +133,6 @@ "nf-test": "0.9.0", "nextflow": "24.10.1" }, - "timestamp": "2024-11-22T10:30:59.285037668" + "timestamp": "2024-11-22T11:08:48.302568675" } } \ No newline at end of file From 6d9189d32056f00aaa5a4d565cbf5b8c502d92b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=BCbra=20Narc=C4=B1?= Date: Fri, 22 Nov 2024 13:45:29 +0000 Subject: [PATCH 4/6] update on snapshots --- tests/germline_small.nf.test.snap | 24 ++---------------------- tests/liftover_hg38.nf.test.snap | 6 +----- tests/somatic_indel.nf.test.snap | 6 +----- tests/somatic_snv.nf.test.snap | 8 +------- tests/somatic_sv.nf.test.snap | 6 +----- 5 files changed, 6 insertions(+), 44 deletions(-) diff --git a/tests/germline_small.nf.test.snap b/tests/germline_small.nf.test.snap index 7fe0713..019291b 100644 --- a/tests/germline_small.nf.test.snap +++ b/tests/germline_small.nf.test.snap @@ -205,22 +205,6 @@ [ "genome.sdf:md5,d41d8cd98f00b204e9800998ecf8427e", "HG002.bcftools_stats.txt:md5,d41d8cd98f00b204e9800998ecf8427e", - "rtgtools.FN.csv:md5,d41d8cd98f00b204e9800998ecf8427e", - "rtgtools.FP.csv:md5,d41d8cd98f00b204e9800998ecf8427e", - "rtgtools.TP_base.csv:md5,d41d8cd98f00b204e9800998ecf8427e", - "rtgtools.TP_comp.csv:md5,d41d8cd98f00b204e9800998ecf8427e", - "config.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "data_1.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "functions.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "heatmap.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "index_1.html:md5,d41d8cd98f00b204e9800998ecf8427e", - "plot_0.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "config.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "data_1.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "functions.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "heatmap.js:md5,d41d8cd98f00b204e9800998ecf8427e", - "index_1.html:md5,d41d8cd98f00b204e9800998ecf8427e", - "plot_0.js:md5,d41d8cd98f00b204e9800998ecf8427e", "test1.HG002.strelka.extended.csv:md5,d41d8cd98f00b204e9800998ecf8427e", "test1.HG002.strelka.roc.Locations.INDEL.PASS.csv.gz:md5,68b329da9893e34099c7d8ad5cb9c940", "test1.HG002.strelka.roc.Locations.INDEL.csv.gz:md5,68b329da9893e34099c7d8ad5cb9c940", @@ -247,7 +231,7 @@ "nf-test": "0.9.0", "nextflow": "24.10.1" }, - "timestamp": "2024-11-22T10:13:33.920466332" + "timestamp": "2024-11-22T13:15:43.288411916" }, "Params: --analysis 'germline' --variant_type 'small' --method 'happy,rtgtools'": { "content": [ @@ -565,10 +549,6 @@ "suffixdata0:md5,f2876dd730673cd49c4de191001f634e", "suffixpointer0:md5,468281ffb10d7dd934289af762a03781", "HG002.bcftools_stats.txt:md5,b215fc0030c53bc8887e28b23b97efb6", - "rtgtools.FN.csv:md5,80f23e0271742bc7400804311dd3b437", - "rtgtools.FP.csv:md5,c5229b5b7fd78d90e9a54e64885728e5", - "rtgtools.TP_base.csv:md5,aae4d65a540533faa4f275d0f7e9753a", - "rtgtools.TP_comp.csv:md5,b2d6fa254026b506ef64ccf1f12ab21a", "test1.HG002.strelka.extended.csv:md5,098dc352d1beeab27e72f97e64fc182e", "test1.HG002.strelka.roc.Locations.INDEL.PASS.csv.gz:md5,bd1f1a1e138f75511de7aae157fa2fa4", "test1.HG002.strelka.roc.Locations.INDEL.csv.gz:md5,8912022beb3c5b234d29300b764b56bc", @@ -595,6 +575,6 @@ "nf-test": "0.9.0", "nextflow": "24.10.1" }, - "timestamp": "2024-11-22T10:11:26.258107754" + "timestamp": "2024-11-22T13:13:38.90109915" } } \ No newline at end of file diff --git a/tests/liftover_hg38.nf.test.snap b/tests/liftover_hg38.nf.test.snap index f3dacf1..fc7dce1 100644 --- a/tests/liftover_hg38.nf.test.snap +++ b/tests/liftover_hg38.nf.test.snap @@ -325,10 +325,6 @@ "suffixpointer0:md5,468281ffb10d7dd934289af762a03781", "HG002.sort.merged.bed:md5,5e997133249c2227cb5363b314245636", "HG002.bcftools_stats.txt:md5,07fafa430abc857969015ea6a41d1032", - "rtgtools.FN.csv:md5,fb46816d5d479287984c4005fdd1631a", - "rtgtools.FP.csv:md5,24761919bc77724a3e1582e3bbee01cb", - "rtgtools.TP_base.csv:md5,ed42cd3e248812c1a3e1cf4985b92539", - "rtgtools.TP_comp.csv:md5,49259e81f11d9014c4ccea064a1a05b1", "test1.HG002.strelka.extended.csv:md5,fadf06276179c1cc388007e5651fb9af", "test1.HG002.strelka.roc.Locations.INDEL.PASS.csv.gz:md5,a08665be8ea20855a14d6418d07521dc", "test1.HG002.strelka.roc.Locations.INDEL.csv.gz:md5,8d4a20a5914379230952aeb252845e2d", @@ -355,7 +351,7 @@ "nf-test": "0.9.0", "nextflow": "24.10.1" }, - "timestamp": "2024-11-22T10:25:06.723892719" + "timestamp": "2024-11-22T13:34:14.298465035" }, "-stub": { "content": [ diff --git a/tests/somatic_indel.nf.test.snap b/tests/somatic_indel.nf.test.snap index e4936e4..6107271 100644 --- a/tests/somatic_indel.nf.test.snap +++ b/tests/somatic_indel.nf.test.snap @@ -169,11 +169,7 @@ ], [ "SEQC2.bcftools_stats.txt:md5,e530daf4f6a4923f1cd85c51893d5747", - "test1.SEQC2.freebayes.features.csv:md5,41752d01679b1efee789bdf0573b6057", - "test1.SEQC2.freebayes.stats.csv:md5,b2c32225c192f4704f6ce16dfb64dacb", "test1.freebayes.bcftools_stats.txt:md5,c5025b5c6256c1d808badee73a7c220c", - "test2.SEQC2.strelka.features.csv:md5,c5af06f0e6d85e53f890826b86d2d0ec", - "test2.SEQC2.strelka.stats.csv:md5,dbf9f81ef2d2c92c70f845bf0ed21929", "test2.strelka.bcftools_stats.txt:md5,ec553881bc70c786e8cec95192823634" ] ], @@ -181,6 +177,6 @@ "nf-test": "0.9.0", "nextflow": "24.10.1" }, - "timestamp": "2024-11-22T10:27:18.206645077" + "timestamp": "2024-11-22T12:53:42.07320983" } } \ No newline at end of file diff --git a/tests/somatic_snv.nf.test.snap b/tests/somatic_snv.nf.test.snap index e71e9d7..4c4cccb 100644 --- a/tests/somatic_snv.nf.test.snap +++ b/tests/somatic_snv.nf.test.snap @@ -118,14 +118,8 @@ ], [ "SEQC2.bcftools_stats.txt:md5,d41d8cd98f00b204e9800998ecf8427e", - "test1.SEQC2.freebayes.features.csv:md5,d41d8cd98f00b204e9800998ecf8427e", - "test1.SEQC2.freebayes.stats.csv:md5,d41d8cd98f00b204e9800998ecf8427e", "test1.freebayes.bcftools_stats.txt:md5,d41d8cd98f00b204e9800998ecf8427e", - "test2.SEQC2.manta.features.csv:md5,d41d8cd98f00b204e9800998ecf8427e", - "test2.SEQC2.manta.stats.csv:md5,d41d8cd98f00b204e9800998ecf8427e", "test2.manta.bcftools_stats.txt:md5,d41d8cd98f00b204e9800998ecf8427e", - "test3.SEQC2.strelka.features.csv:md5,d41d8cd98f00b204e9800998ecf8427e", - "test3.SEQC2.strelka.stats.csv:md5,d41d8cd98f00b204e9800998ecf8427e", "test3.strelka.bcftools_stats.txt:md5,d41d8cd98f00b204e9800998ecf8427e" ] ], @@ -133,6 +127,6 @@ "nf-test": "0.9.0", "nextflow": "24.10.1" }, - "timestamp": "2024-11-22T11:08:48.302568675" + "timestamp": "2024-11-22T12:57:55.883023408" } } \ No newline at end of file diff --git a/tests/somatic_sv.nf.test.snap b/tests/somatic_sv.nf.test.snap index a6dbdde..dba5048 100644 --- a/tests/somatic_sv.nf.test.snap +++ b/tests/somatic_sv.nf.test.snap @@ -189,10 +189,6 @@ [ "SEQC2.bcftools_stats.txt:md5,a60de9c4d2f3db87d8ae404b73859bfa", "SEQC2_mqc.stats:md5,a1327ec0cd3131f9e16cccf0024f61a1", - "truvari.FN.csv:md5,ec8c0aa9227f6e578136e2e53c15a097", - "truvari.FP.csv:md5,d47360e5f1260a7d1cfa1797a7814ef8", - "truvari.TP_base.csv:md5,ec8c0aa9227f6e578136e2e53c15a097", - "truvari.TP_comp.csv:md5,ec8c0aa9227f6e578136e2e53c15a097", "test1.tiddit.bcftools_stats.txt:md5,56b036b7bd2d7368620713613dd0cae2", "test1.tiddit_mqc.stats:md5,0eb749429a6072f6bf63d377e37514d1", "test2.manta.bcftools_stats.txt:md5,1c4cc5ab438537308e7f08a6c202118c", @@ -203,6 +199,6 @@ "nf-test": "0.9.0", "nextflow": "24.10.1" }, - "timestamp": "2024-11-22T10:35:32.636046624" + "timestamp": "2024-11-22T13:00:22.984612013" } } \ No newline at end of file From 4bdd9a4028ed6725d1e7e1119c9e0634619b3a13 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=BCbra=20Narc=C4=B1?= Date: Tue, 26 Nov 2024 11:47:53 +0000 Subject: [PATCH 5/6] fix multiqc config --- assets/multiqc_config.yml | 11 ++--------- workflows/variantbenchmarking.nf | 2 +- 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/assets/multiqc_config.yml b/assets/multiqc_config.yml index 1ec952a..6b654de 100644 --- a/assets/multiqc_config.yml +++ b/assets/multiqc_config.yml @@ -17,6 +17,7 @@ ignore_images: false # Run only these modules run_modules: - bcftools + - custom_content custom_data: survivor: @@ -29,15 +30,7 @@ custom_data: id: "survivor" namespace: "SURVIVOR variant statistics" table_title: "Variant statistics from survivor stats tool" - ylab: "Len" - headers: - - "Len" - - "Del" - - "INS" - - "Dup" - - "Inv" - - "TRA" - - "UNK" + ylab: "Count" summary_reports: id: "summary_reports" diff --git a/workflows/variantbenchmarking.nf b/workflows/variantbenchmarking.nf index 9cec93b..0cd825e 100644 --- a/workflows/variantbenchmarking.nf +++ b/workflows/variantbenchmarking.nf @@ -254,7 +254,7 @@ workflow VARIANTBENCHMARKING { ch_multiqc_files = ch_multiqc_files.mix(ch_methods_description.collectFile(name: 'methods_description_mqc.yaml',sort: true)) ch_multiqc_files = ch_multiqc_files.mix(REPORT_BENCHMARK_STATISTICS.out.ch_plots) - ch_multiqc_files.view() + MULTIQC ( ch_multiqc_files.collect(), ch_multiqc_config.toList(), From f21aa64675995a6e74f542e18dec0aeb438a3ba0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?K=C3=BCbra=20Narc=C4=B1?= Date: Tue, 26 Nov 2024 14:04:19 +0000 Subject: [PATCH 6/6] renew snopshots --- tests/.nftignore | 4 +++- tests/germline_sv.nf.test.snap | 9 ++++++++- tests/somatic_sv.nf.test.snap | 9 ++++++++- 3 files changed, 19 insertions(+), 3 deletions(-) diff --git a/tests/.nftignore b/tests/.nftignore index ee8bdcf..1b219f2 100644 --- a/tests/.nftignore +++ b/tests/.nftignore @@ -1,6 +1,8 @@ **/*_report.html **/multiqc/multiqc_data/* -**/multiqc/multiqc_plots/{svg,pdf,png}/*.{svg,pdf,png} +**/multiqc/multiqc_plots/svg/*.{svg,pdf,png} +**/multiqc/multiqc_plots/png/*.{svg,pdf,png} +**/multiqc/multiqc_plots/pdf/*.{svg,pdf,png} **/multiqc/multiqc_report.html pipeline_info/*.{html,json,txt,yml} references/dictionary/genome.dict diff --git a/tests/germline_sv.nf.test.snap b/tests/germline_sv.nf.test.snap index b04185a..ecb99af 100644 --- a/tests/germline_sv.nf.test.snap +++ b/tests/germline_sv.nf.test.snap @@ -102,6 +102,7 @@ "structural/multiqc/multiqc_data/multiqc_general_stats.txt", "structural/multiqc/multiqc_data/multiqc_software_versions.txt", "structural/multiqc/multiqc_data/multiqc_sources.txt", + "structural/multiqc/multiqc_data/multiqc_survivor.txt", "structural/multiqc/multiqc_plots", "structural/multiqc/multiqc_plots/pdf", "structural/multiqc/multiqc_plots/pdf/bcftools_stats_indel-lengths.pdf", @@ -110,6 +111,8 @@ "structural/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_Transitions.pdf", "structural/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_Transversions.pdf", "structural/multiqc/multiqc_plots/pdf/general_stats_table.pdf", + "structural/multiqc/multiqc_plots/pdf/survivor-cnt.pdf", + "structural/multiqc/multiqc_plots/pdf/survivor-pct.pdf", "structural/multiqc/multiqc_plots/png", "structural/multiqc/multiqc_plots/png/bcftools_stats_indel-lengths.png", "structural/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_Indels.png", @@ -117,6 +120,8 @@ "structural/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_Transitions.png", "structural/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_Transversions.png", "structural/multiqc/multiqc_plots/png/general_stats_table.png", + "structural/multiqc/multiqc_plots/png/survivor-cnt.png", + "structural/multiqc/multiqc_plots/png/survivor-pct.png", "structural/multiqc/multiqc_plots/svg", "structural/multiqc/multiqc_plots/svg/bcftools_stats_indel-lengths.svg", "structural/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_Indels.svg", @@ -124,6 +129,8 @@ "structural/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_Transitions.svg", "structural/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_Transversions.svg", "structural/multiqc/multiqc_plots/svg/general_stats_table.svg", + "structural/multiqc/multiqc_plots/svg/survivor-cnt.svg", + "structural/multiqc/multiqc_plots/svg/survivor-pct.svg", "structural/multiqc/multiqc_report.html", "structural/summary", "structural/summary/comparisons", @@ -350,7 +357,7 @@ "nf-test": "0.9.0", "nextflow": "24.10.1" }, - "timestamp": "2024-11-22T12:36:40.054294704" + "timestamp": "2024-11-26T14:01:47.145700457" }, "-stub": { "content": [ diff --git a/tests/somatic_sv.nf.test.snap b/tests/somatic_sv.nf.test.snap index dba5048..81eb1c4 100644 --- a/tests/somatic_sv.nf.test.snap +++ b/tests/somatic_sv.nf.test.snap @@ -82,6 +82,7 @@ "structural/multiqc/multiqc_data/multiqc_general_stats.txt", "structural/multiqc/multiqc_data/multiqc_software_versions.txt", "structural/multiqc/multiqc_data/multiqc_sources.txt", + "structural/multiqc/multiqc_data/multiqc_survivor.txt", "structural/multiqc/multiqc_plots", "structural/multiqc/multiqc_plots/pdf", "structural/multiqc/multiqc_plots/pdf/bcftools_stats_indel-lengths.pdf", @@ -90,6 +91,8 @@ "structural/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_Transitions.pdf", "structural/multiqc/multiqc_plots/pdf/bcftools_stats_vqc_Count_Transversions.pdf", "structural/multiqc/multiqc_plots/pdf/general_stats_table.pdf", + "structural/multiqc/multiqc_plots/pdf/survivor-cnt.pdf", + "structural/multiqc/multiqc_plots/pdf/survivor-pct.pdf", "structural/multiqc/multiqc_plots/png", "structural/multiqc/multiqc_plots/png/bcftools_stats_indel-lengths.png", "structural/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_Indels.png", @@ -97,6 +100,8 @@ "structural/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_Transitions.png", "structural/multiqc/multiqc_plots/png/bcftools_stats_vqc_Count_Transversions.png", "structural/multiqc/multiqc_plots/png/general_stats_table.png", + "structural/multiqc/multiqc_plots/png/survivor-cnt.png", + "structural/multiqc/multiqc_plots/png/survivor-pct.png", "structural/multiqc/multiqc_plots/svg", "structural/multiqc/multiqc_plots/svg/bcftools_stats_indel-lengths.svg", "structural/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_Indels.svg", @@ -104,6 +109,8 @@ "structural/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_Transitions.svg", "structural/multiqc/multiqc_plots/svg/bcftools_stats_vqc_Count_Transversions.svg", "structural/multiqc/multiqc_plots/svg/general_stats_table.svg", + "structural/multiqc/multiqc_plots/svg/survivor-cnt.svg", + "structural/multiqc/multiqc_plots/svg/survivor-pct.svg", "structural/multiqc/multiqc_report.html", "structural/summary", "structural/summary/comparisons", @@ -199,6 +206,6 @@ "nf-test": "0.9.0", "nextflow": "24.10.1" }, - "timestamp": "2024-11-22T13:00:22.984612013" + "timestamp": "2024-11-26T13:55:27.662287528" } } \ No newline at end of file