From 9fe1db20787c86d648a3281de477209b31bf09dd Mon Sep 17 00:00:00 2001 From: Edmund Miller Date: Mon, 23 Dec 2024 10:20:15 -0600 Subject: [PATCH] chore: Bump deeptools/bamcoverage --- conf/modules.config | 4 +- modules.json | 2 +- .../deeptools/bamcoverage/environment.yml | 6 +- modules/nf-core/deeptools/bamcoverage/main.nf | 25 ++-- .../nf-core/deeptools/bamcoverage/meta.yml | 92 ++++++++------ .../deeptools/bamcoverage/tests/main.nf.test | 118 ++++++++++++++++++ .../bamcoverage/tests/main.nf.test.snap | 94 ++++++++++++++ .../deeptools/bamcoverage/tests/tags.yml | 2 + workflows/tests/aligner/bowtie2.nf.test.snap | 4 +- workflows/tests/aligner/bwa.nf.test.snap | 4 +- workflows/tests/aligner/bwamem2.nf.test.snap | 4 +- workflows/tests/aligner/hisat2.nf.test.snap | 4 +- workflows/tests/aligner/star.nf.test.snap | 8 +- workflows/tests/inputs/gff/main.nf.test.snap | 4 +- .../inputs/gzipped_gff/main.nf.test.snap | 4 +- .../tests/inputs/only_gff/main.nf.test.snap | 4 +- .../tests/inputs/uniqmap/main.nf.test.snap | 4 +- .../grohmm/only_gff/main.nf.test.snap | 4 +- .../grohmm/tuning/main.nf.test.snap | 4 +- 19 files changed, 314 insertions(+), 77 deletions(-) create mode 100644 modules/nf-core/deeptools/bamcoverage/tests/main.nf.test create mode 100644 modules/nf-core/deeptools/bamcoverage/tests/main.nf.test.snap create mode 100644 modules/nf-core/deeptools/bamcoverage/tests/tags.yml diff --git a/conf/modules.config b/conf/modules.config index 68b3cb9b..512f9670 100644 --- a/conf/modules.config +++ b/conf/modules.config @@ -336,12 +336,12 @@ process { withName: DEEPTOOLS_BAMCOVERAGE_PLUS { ext.args = "--filterRNAstrand forward" - ext.prefix = { "${meta.id}.plus.bigWig" } + ext.prefix = { "${meta.id}.plus" } } withName: DEEPTOOLS_BAMCOVERAGE_MINUS { ext.args = "--filterRNAstrand reverse" - ext.prefix = { "${meta.id}.minus.bigWig" } + ext.prefix = { "${meta.id}.minus" } } withName:DREG_PREP { diff --git a/modules.json b/modules.json index cdce3c86..ba0fdf37 100644 --- a/modules.json +++ b/modules.json @@ -84,7 +84,7 @@ }, "deeptools/bamcoverage": { "branch": "master", - "git_sha": "3f5420aa22e00bd030a2556dfdffc9e164ec0ec5", + "git_sha": "666652151335353eef2fcd58880bcef5bc2928e1", "installed_by": ["modules"] }, "dragmap/align": { diff --git a/modules/nf-core/deeptools/bamcoverage/environment.yml b/modules/nf-core/deeptools/bamcoverage/environment.yml index 345ac703..d8e208ca 100644 --- a/modules/nf-core/deeptools/bamcoverage/environment.yml +++ b/modules/nf-core/deeptools/bamcoverage/environment.yml @@ -1,8 +1,6 @@ -name: deeptools_bamcoverage channels: - conda-forge - bioconda - - defaults dependencies: - - bioconda::deeptools=3.5.1 - - bioconda::samtools=1.16.1 + - bioconda::deeptools=3.5.5 + - bioconda::samtools=1.20 diff --git a/modules/nf-core/deeptools/bamcoverage/main.nf b/modules/nf-core/deeptools/bamcoverage/main.nf index 8aff5d6d..92041634 100644 --- a/modules/nf-core/deeptools/bamcoverage/main.nf +++ b/modules/nf-core/deeptools/bamcoverage/main.nf @@ -4,8 +4,8 @@ process DEEPTOOLS_BAMCOVERAGE { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/mulled-v2-eb9e7907c7a753917c1e4d7a64384c047429618a:62d1ebe2d3a2a9d1a7ad31e0b902983fa7c25fa7-0': - 'biocontainers/mulled-v2-eb9e7907c7a753917c1e4d7a64384c047429618a:62d1ebe2d3a2a9d1a7ad31e0b902983fa7c25fa7-0' }" + 'https://depot.galaxyproject.org/singularity/mulled-v2-eb9e7907c7a753917c1e4d7a64384c047429618a:41defd13a6f2ce014549fcc05d0b051f655777f9-0': + 'biocontainers/mulled-v2-eb9e7907c7a753917c1e4d7a64384c047429618a:41defd13a6f2ce014549fcc05d0b051f655777f9-0' }" input: tuple val(meta), path(input), path(input_index) @@ -21,8 +21,9 @@ process DEEPTOOLS_BAMCOVERAGE { task.ext.when == null || task.ext.when script: - def args = task.ext.args ?: '' - def prefix = task.ext.prefix ?: "${meta.id}.bigWig" + def args = task.ext.args ?: '' + def prefix = task.ext.prefix ?: "${meta.id}" + def extension = args.contains("--outFileFormat bedgraph") || args.contains("-of bedgraph") ? "bedgraph" : "bigWig" // cram_input is currently not working with deeptools // therefore it's required to convert cram to bam first @@ -39,7 +40,7 @@ process DEEPTOOLS_BAMCOVERAGE { --bam $input_out \\ $args \\ --numberOfProcessors ${task.cpus} \\ - --outFileName ${prefix} + --outFileName ${prefix}.${extension} cat <<-END_VERSIONS > versions.yml "${task.process}": @@ -47,7 +48,6 @@ process DEEPTOOLS_BAMCOVERAGE { deeptools: \$(bamCoverage --version | sed -e "s/bamCoverage //g") END_VERSIONS """ - } else { """ @@ -55,7 +55,7 @@ process DEEPTOOLS_BAMCOVERAGE { --bam $input_out \\ $args \\ --numberOfProcessors ${task.cpus} \\ - --outFileName ${prefix} + --outFileName ${prefix}.${extension} cat <<-END_VERSIONS > versions.yml "${task.process}": @@ -64,4 +64,15 @@ process DEEPTOOLS_BAMCOVERAGE { """ } + stub: + def prefix = task.ext.prefix ?: "${meta.id}" + def extension = args.contains("--outFileFormat bedgraph") || args.contains("-of bedgraph") ? ".bedgraph" : ".bigWig" + """ + touch ${prefix} + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + deeptools: \$(bamCoverage --version | sed -e "s/bamCoverage //g") + END_VERSIONS + """ } diff --git a/modules/nf-core/deeptools/bamcoverage/meta.yml b/modules/nf-core/deeptools/bamcoverage/meta.yml index e8043e99..c349bfb9 100644 --- a/modules/nf-core/deeptools/bamcoverage/meta.yml +++ b/modules/nf-core/deeptools/bamcoverage/meta.yml @@ -1,60 +1,74 @@ name: deeptools_bamcoverage -description: This tool takes an alignment of reads or fragments as input (BAM file) and generates a coverage track (bigWig or bedGraph) as output. +description: This tool takes an alignment of reads or fragments as input (BAM file) + and generates a coverage track (bigWig or bedGraph) as output. keywords: - coverage - depth - track tools: - deeptools: - description: A set of user-friendly tools for normalization and visualzation of deep-sequencing data + description: A set of user-friendly tools for normalization and visualzation of + deep-sequencing data homepage: https://deeptools.readthedocs.io/en/develop/content/tools/bamCoverage.html documentation: https://deeptools.readthedocs.io/en/develop/content/tools/bamCoverage.html tool_dev_url: https://github.com/deeptools/deepTools/ doi: "10.1093/nar/gkw257" licence: ["GPL v3"] + identifier: biotools:deeptools input: - - meta: - type: map - description: | - Groovy Map containing sample information - e.g. [ id:'test', single_end:false ] - - input: - type: file - description: BAM/CRAM file - pattern: "*.{bam,cram}" - - input_index: - type: file - description: BAM/CRAM index file - pattern: "*.{bai,crai}" - - fasta: - type: file - description: Reference file the CRAM file was created with (required with CRAM input) - pattern: "*.{fasta,fa}" - - fasta_fai: - type: file - description: Index of the reference file (optional, but recommended) - pattern: "*.{fai}" + - - meta: + type: map + description: | + Groovy Map containing sample information + e.g. [ id:'test', single_end:false ] + - input: + type: file + description: BAM/CRAM file + pattern: "*.{bam,cram}" + - input_index: + type: file + description: BAM/CRAM index file + pattern: "*.{bai,crai}" + - - fasta: + type: file + description: Reference file the CRAM file was created with (required with CRAM + input) + pattern: "*.{fasta,fa}" + - - fasta_fai: + type: file + description: Index of the reference file (optional, but recommended) + pattern: "*.{fai}" output: - - meta: - type: map - description: | - Groovy Map containing sample information - e.g. [ id:'test', single_end:false ] - - versions: - type: file - description: File containing software versions - pattern: "versions.yml" - - bigWig: - type: file - description: BigWig file - pattern: "*.bigWig" + - bigwig: + - meta: + type: map + description: | + Groovy Map containing sample information + e.g. [ id:'test', single_end:false ] + - "*.bigWig": + type: file + description: BigWig file + pattern: "*.bigWig" - bedgraph: - type: file - description: Bedgraph file - pattern: "*.bedgraph" + - meta: + type: map + description: | + Groovy Map containing sample information + e.g. [ id:'test', single_end:false ] + - "*.bedgraph": + type: file + description: Bedgraph file + pattern: "*.bedgraph" + - versions: + - versions.yml: + type: file + description: File containing software versions + pattern: "versions.yml" authors: - "@FriederikeHanssen" - "@SusiJo" + - "@JoseEspinosa" maintainers: - "@FriederikeHanssen" - "@SusiJo" + - "@JoseEspinosa" diff --git a/modules/nf-core/deeptools/bamcoverage/tests/main.nf.test b/modules/nf-core/deeptools/bamcoverage/tests/main.nf.test new file mode 100644 index 00000000..5d697803 --- /dev/null +++ b/modules/nf-core/deeptools/bamcoverage/tests/main.nf.test @@ -0,0 +1,118 @@ +nextflow_process { + + name "Test Process DEEPTOOLS_BAMCOVERAGE" + script "../main.nf" + process "DEEPTOOLS_BAMCOVERAGE" + + tag "modules" + tag "modules_nfcore" + tag "deeptools" + tag "deeptools/bamcoverage" + + test("homo_sampiens - bam") { + + when { + process { + """ + input[0] = [ + [ id:'test', single_end:false ], // meta map + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/illumina/bam/test.paired_end.sorted.bam', checkIfExists: true), + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/illumina/bam/test.paired_end.sorted.bam.bai', checkIfExists: true) + ] + input[1] = [] + input[2] = [] + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out.bigwig, + process.out.versions) + .match() + } + ) + } + } + + test("homo_sampiens - cram - fasta - fai ") { + + when { + process { + """ + input[0] = [ + [ id:'test', single_end:false ], // meta map + file(params.modules_testdata_base_path + '/genomics/homo_sapiens/illumina/cram/test.paired_end.sorted.cram', checkIfExists: true), + file(params.modules_testdata_base_path + '/genomics/homo_sapiens/illumina/cram/test.paired_end.sorted.cram.crai', checkIfExists: true) + ] + input[1] = [ file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/genome.fasta', checkIfExists: true) ] + input[2] = [ file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/genome.fasta.fai', checkIfExists: true) ] + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out.bigwig, + process.out.versions) + .match() + } + ) + } + } + + test("homo_sampiens - cram - fasta") { + + when { + process { + """ + input[0] = [ + [ id:'test', single_end:false ], // meta map + file(params.modules_testdata_base_path + '/genomics/homo_sapiens/illumina/cram/test.paired_end.sorted.cram', checkIfExists: true), + file(params.modules_testdata_base_path + '/genomics/homo_sapiens/illumina/cram/test.paired_end.sorted.cram.crai', checkIfExists: true) + ] + input[1] = [ file(params.modules_testdata_base_path + 'genomics/homo_sapiens/genome/genome.fasta', checkIfExists: true) ] + input[2] = [] + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out.bigwig, + process.out.versions) + .match() + } + ) + } + } + + test("homo_sampiens - bam - stub") { + + options "-stub" + + when { + process { + """ + input[0] = [ + [ id:'test', single_end:false ], // meta map + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/illumina/bam/test.paired_end.sorted.bam', checkIfExists: true), + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/illumina/bam/test.paired_end.sorted.bam.bai', checkIfExists: true) + ] + input[1] = [] + input[2] = [] + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/nf-core/deeptools/bamcoverage/tests/main.nf.test.snap b/modules/nf-core/deeptools/bamcoverage/tests/main.nf.test.snap new file mode 100644 index 00000000..62c75123 --- /dev/null +++ b/modules/nf-core/deeptools/bamcoverage/tests/main.nf.test.snap @@ -0,0 +1,94 @@ +{ + "homo_sampiens - bam": { + "content": [ + [ + [ + { + "id": "test", + "single_end": false + }, + "test.bigWig:md5,95fe9383a9e6c02aea6b785cf074274f" + ] + ], + [ + "versions.yml:md5,241ec68695b08434d2db71ad878ed162" + ] + ], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.04.3" + }, + "timestamp": "2024-08-06T10:07:55.827011705" + }, + "homo_sampiens - cram - fasta - fai ": { + "content": [ + [ + [ + { + "id": "test", + "single_end": false + }, + "test.bigWig:md5,95fe9383a9e6c02aea6b785cf074274f" + ] + ], + [ + "versions.yml:md5,e51ed2fa03466eba8e61cb5319a21ebc" + ] + ], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.04.3" + }, + "timestamp": "2024-08-06T10:08:01.46254825" + }, + "homo_sampiens - bam - stub": { + "content": [ + { + "0": [ + + ], + "1": [ + + ], + "2": [ + "versions.yml:md5,241ec68695b08434d2db71ad878ed162" + ], + "bedgraph": [ + + ], + "bigwig": [ + + ], + "versions": [ + "versions.yml:md5,241ec68695b08434d2db71ad878ed162" + ] + } + ], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.04.3" + }, + "timestamp": "2024-08-06T10:08:11.983872422" + }, + "homo_sampiens - cram - fasta": { + "content": [ + [ + [ + { + "id": "test", + "single_end": false + }, + "test.bigWig:md5,95fe9383a9e6c02aea6b785cf074274f" + ] + ], + [ + "versions.yml:md5,e51ed2fa03466eba8e61cb5319a21ebc" + ] + ], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.04.3" + }, + "timestamp": "2024-08-06T10:08:06.894864638" + } +} \ No newline at end of file diff --git a/modules/nf-core/deeptools/bamcoverage/tests/tags.yml b/modules/nf-core/deeptools/bamcoverage/tests/tags.yml new file mode 100644 index 00000000..372cefc9 --- /dev/null +++ b/modules/nf-core/deeptools/bamcoverage/tests/tags.yml @@ -0,0 +1,2 @@ +deeptools/bamcoverage: + - "modules/nf-core/deeptools/bamcoverage/**" diff --git a/workflows/tests/aligner/bowtie2.nf.test.snap b/workflows/tests/aligner/bowtie2.nf.test.snap index 632e62eb..ec8cef75 100644 --- a/workflows/tests/aligner/bowtie2.nf.test.snap +++ b/workflows/tests/aligner/bowtie2.nf.test.snap @@ -32,10 +32,10 @@ "getchromsizes": 1.2 }, "DEEPTOOLS_BAMCOVERAGE_MINUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "DEEPTOOLS_BAMCOVERAGE_PLUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "FASTP": { "fastp": "0.23.4" diff --git a/workflows/tests/aligner/bwa.nf.test.snap b/workflows/tests/aligner/bwa.nf.test.snap index 7c3c7359..341a9ac5 100644 --- a/workflows/tests/aligner/bwa.nf.test.snap +++ b/workflows/tests/aligner/bwa.nf.test.snap @@ -60,10 +60,10 @@ "getchromsizes": 1.2 }, "DEEPTOOLS_BAMCOVERAGE_MINUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "DEEPTOOLS_BAMCOVERAGE_PLUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "FASTP": { "fastp": "0.23.4" diff --git a/workflows/tests/aligner/bwamem2.nf.test.snap b/workflows/tests/aligner/bwamem2.nf.test.snap index bf3689a9..6b2aa18d 100644 --- a/workflows/tests/aligner/bwamem2.nf.test.snap +++ b/workflows/tests/aligner/bwamem2.nf.test.snap @@ -40,10 +40,10 @@ "getchromsizes": 1.2 }, "DEEPTOOLS_BAMCOVERAGE_MINUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "DEEPTOOLS_BAMCOVERAGE_PLUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "FASTP": { "fastp": "0.23.4" diff --git a/workflows/tests/aligner/hisat2.nf.test.snap b/workflows/tests/aligner/hisat2.nf.test.snap index a4b9d13c..92066a28 100644 --- a/workflows/tests/aligner/hisat2.nf.test.snap +++ b/workflows/tests/aligner/hisat2.nf.test.snap @@ -33,10 +33,10 @@ "getchromsizes": 1.2 }, "DEEPTOOLS_BAMCOVERAGE_MINUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "DEEPTOOLS_BAMCOVERAGE_PLUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "FASTP": { "fastp": "0.23.4" diff --git a/workflows/tests/aligner/star.nf.test.snap b/workflows/tests/aligner/star.nf.test.snap index 6b169b91..16ea4371 100644 --- a/workflows/tests/aligner/star.nf.test.snap +++ b/workflows/tests/aligner/star.nf.test.snap @@ -43,10 +43,10 @@ "getchromsizes": 1.2 }, "DEEPTOOLS_BAMCOVERAGE_MINUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "DEEPTOOLS_BAMCOVERAGE_PLUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "FASTP": { "fastp": "0.23.4" @@ -415,10 +415,10 @@ "getchromsizes": 1.2 }, "DEEPTOOLS_BAMCOVERAGE_MINUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "DEEPTOOLS_BAMCOVERAGE_PLUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "FASTP": { "fastp": "0.23.4" diff --git a/workflows/tests/inputs/gff/main.nf.test.snap b/workflows/tests/inputs/gff/main.nf.test.snap index 1ebece28..175bff41 100644 --- a/workflows/tests/inputs/gff/main.nf.test.snap +++ b/workflows/tests/inputs/gff/main.nf.test.snap @@ -40,10 +40,10 @@ "getchromsizes": 1.2 }, "DEEPTOOLS_BAMCOVERAGE_MINUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "DEEPTOOLS_BAMCOVERAGE_PLUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "FASTP": { "fastp": "0.23.4" diff --git a/workflows/tests/inputs/gzipped_gff/main.nf.test.snap b/workflows/tests/inputs/gzipped_gff/main.nf.test.snap index b18120b9..838ca32b 100644 --- a/workflows/tests/inputs/gzipped_gff/main.nf.test.snap +++ b/workflows/tests/inputs/gzipped_gff/main.nf.test.snap @@ -40,10 +40,10 @@ "getchromsizes": 1.2 }, "DEEPTOOLS_BAMCOVERAGE_MINUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "DEEPTOOLS_BAMCOVERAGE_PLUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "FASTP": { "fastp": "0.23.4" diff --git a/workflows/tests/inputs/only_gff/main.nf.test.snap b/workflows/tests/inputs/only_gff/main.nf.test.snap index 2e8f0e9f..c7093faf 100644 --- a/workflows/tests/inputs/only_gff/main.nf.test.snap +++ b/workflows/tests/inputs/only_gff/main.nf.test.snap @@ -40,10 +40,10 @@ "getchromsizes": 1.2 }, "DEEPTOOLS_BAMCOVERAGE_MINUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "DEEPTOOLS_BAMCOVERAGE_PLUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "FASTP": { "fastp": "0.23.4" diff --git a/workflows/tests/inputs/uniqmap/main.nf.test.snap b/workflows/tests/inputs/uniqmap/main.nf.test.snap index c6833f9e..465bd58a 100644 --- a/workflows/tests/inputs/uniqmap/main.nf.test.snap +++ b/workflows/tests/inputs/uniqmap/main.nf.test.snap @@ -57,10 +57,10 @@ "getchromsizes": 1.2 }, "DEEPTOOLS_BAMCOVERAGE_MINUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "DEEPTOOLS_BAMCOVERAGE_PLUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "FASTP": { "fastp": "0.23.4" diff --git a/workflows/tests/transcript_indentification/grohmm/only_gff/main.nf.test.snap b/workflows/tests/transcript_indentification/grohmm/only_gff/main.nf.test.snap index d2d0c511..a3fc8046 100644 --- a/workflows/tests/transcript_indentification/grohmm/only_gff/main.nf.test.snap +++ b/workflows/tests/transcript_indentification/grohmm/only_gff/main.nf.test.snap @@ -40,10 +40,10 @@ "getchromsizes": 1.2 }, "DEEPTOOLS_BAMCOVERAGE_MINUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "DEEPTOOLS_BAMCOVERAGE_PLUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "FASTP": { "fastp": "0.23.4" diff --git a/workflows/tests/transcript_indentification/grohmm/tuning/main.nf.test.snap b/workflows/tests/transcript_indentification/grohmm/tuning/main.nf.test.snap index b147f03e..6504c2ee 100644 --- a/workflows/tests/transcript_indentification/grohmm/tuning/main.nf.test.snap +++ b/workflows/tests/transcript_indentification/grohmm/tuning/main.nf.test.snap @@ -40,10 +40,10 @@ "getchromsizes": 1.2 }, "DEEPTOOLS_BAMCOVERAGE_MINUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "DEEPTOOLS_BAMCOVERAGE_PLUS": { - "deeptools": "3.5.1" + "deeptools": "3.5.5" }, "FASTP": { "fastp": "0.23.4"