From 470ac76fb4fbba2a9284c8b65191119c8bfe5a69 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marius=20Bj=C3=B8rnstad?= Date: Wed, 26 Feb 2025 13:31:20 +0100 Subject: [PATCH 1/3] Update subworkflow for deepvariant to version 1.8.0 (#7473) * Update subworkflow for deepvariant to version 1.8.0 and add comparison test * Fix postprocessvariants test * Fix formatting, one argument per line Co-authored-by: Felix Lenner <52530259+fellen31@users.noreply.github.com> * Remove unnecessary workaround * Skip comparison test in automated tests. It is heavy and not really necessary. --------- Co-authored-by: Felix Lenner <52530259+fellen31@users.noreply.github.com> --- .github/skip_nf_test.json | 8 +- modules/nf-core/deepvariant/README.md | 15 +- .../nf-core/deepvariant/callvariants/main.nf | 2 +- .../callvariants/tests/main.nf.test.snap | 14 +- .../callvariants/tests/nextflow.config | 2 +- modules/nf-core/deepvariant/main.nf | 2 +- .../nf-core/deepvariant/makeexamples/main.nf | 3 +- .../nf-core/deepvariant/makeexamples/meta.yml | 9 + .../makeexamples/tests/main.nf.test | 14 +- .../makeexamples/tests/main.nf.test.snap | 80 +++--- .../makeexamples/tests/nextflow.config | 2 +- .../deepvariant/postprocessvariants/main.nf | 22 +- .../deepvariant/postprocessvariants/meta.yml | 9 + .../postprocessvariants/tests/main.nf.test | 11 +- .../tests/main.nf.test.snap | 34 +-- .../postprocessvariants/tests/nextflow.config | 2 +- .../deepvariant/rundeepvariant/main.nf | 1 + subworkflows/nf-core/deepvariant/main.nf | 9 + subworkflows/nf-core/deepvariant/meta.yml | 1 + ...nt-workflow-and-process-equality-tester.nf | 22 ++ .../tests/disable-small-model.conf | 8 + .../deepvariant/tests/equality.nf.test | 63 +++++ .../nf-core/deepvariant/tests/main.nf.test | 47 ++++ .../deepvariant/tests/main.nf.test.snap | 249 ++++++++++++++---- .../nf-core/deepvariant/tests/nextflow.config | 8 +- 25 files changed, 488 insertions(+), 149 deletions(-) create mode 100644 subworkflows/nf-core/deepvariant/tests/deepvariant-workflow-and-process-equality-tester.nf create mode 100644 subworkflows/nf-core/deepvariant/tests/disable-small-model.conf create mode 100644 subworkflows/nf-core/deepvariant/tests/equality.nf.test diff --git a/.github/skip_nf_test.json b/.github/skip_nf_test.json index 01e2c6712bc..bd9ba48e798 100644 --- a/.github/skip_nf_test.json +++ b/.github/skip_nf_test.json @@ -83,13 +83,17 @@ "subworkflows/nf-core/fastq_align_bwa", "subworkflows/nf-core/vcf_annotate_ensemblvep" ], - "docker_self_hosted": ["modules/nf-core/parabricks"], + "docker_self_hosted": [ + "modules/nf-core/parabricks", + "subworkflows/nf-core/deepvariant/tests/equality" + ], "singularity": [ "modules/nf-core/bases2fastq", "modules/nf-core/deepvariant/rundeepvariant", "modules/nf-core/deepvariant/vcfstatsreport", "modules/nf-core/deepsomatic", "modules/nf-core/parabricks", - "modules/nf-core/universc" + "modules/nf-core/universc", + "subworkflows/nf-core/deepvariant/tests/equality" ] } diff --git a/modules/nf-core/deepvariant/README.md b/modules/nf-core/deepvariant/README.md index 4b3ed086899..9f6358236e9 100644 --- a/modules/nf-core/deepvariant/README.md +++ b/modules/nf-core/deepvariant/README.md @@ -32,20 +32,7 @@ These module subcommands incorporate the individual steps of the DeepVariant pip ## makeexamples This process imports the data used for calling, and thus decides what information is available to the -deep neural network. It's important to import the correct channels for the model you want to use. - -The script `run_deepvariant` (not used in the subworkflow) does this automatically. You can refer to -the implementation in the DeepVariant repo: - -https://github.com/google/deepvariant/blob/bf9ed7e6de97cf6c8381694cb996317a740625ad/scripts/run_deepvariant.py#L367 - -For WGS and WES models you need to enable the `insert_size` channel. Specify the following in the config: - -``` -withName: "DEEPVARIANT_MAKEEXAMPLES" { - ext.args = '--channels "insert_size"' -} -``` +deep neural network. It's important to use the correct settings for the model you want to use for each step. The script [`run_deepvariant.py`](https://github.com/google/deepvariant/blob/r1.8/scripts/run_deepvariant.py) does this automatically. To figure out the flags needed for each model, you can run `run_deepvariant.py` while adding `dry_run=true`, to print out the command used for each step, as described [here](https://github.com/google/deepvariant/blob/r1.8/docs/deepvariant-pacbio-model-case-study.md). ## callvariants diff --git a/modules/nf-core/deepvariant/callvariants/main.nf b/modules/nf-core/deepvariant/callvariants/main.nf index 668b51ae4cc..f3c54dd17e8 100644 --- a/modules/nf-core/deepvariant/callvariants/main.nf +++ b/modules/nf-core/deepvariant/callvariants/main.nf @@ -4,7 +4,7 @@ process DEEPVARIANT_CALLVARIANTS { label 'process_high' //Conda is not supported at the moment - container "nf-core/deepvariant:1.6.1" + container "docker.io/google/deepvariant:1.8.0" input: tuple val(meta), path(make_examples_tfrecords) diff --git a/modules/nf-core/deepvariant/callvariants/tests/main.nf.test.snap b/modules/nf-core/deepvariant/callvariants/tests/main.nf.test.snap index 8f04ede70eb..7bb2156bcd8 100644 --- a/modules/nf-core/deepvariant/callvariants/tests/main.nf.test.snap +++ b/modules/nf-core/deepvariant/callvariants/tests/main.nf.test.snap @@ -2,14 +2,14 @@ "versions": { "content": [ [ - "versions.yml:md5,5ff99ffba1e56e4e919d3dfc2d0f3cbb" + "versions.yml:md5,384f8c54b3d1b03f7bdb583cb3c93e5c" ] ], "meta": { "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nextflow": "24.10.3" }, - "timestamp": "2024-08-09T16:38:47.927241" + "timestamp": "2025-01-08T10:33:45.081424542" }, "homo_sapiens-wgs-call_variants_tfrecords-filenames": { "content": [ @@ -34,7 +34,7 @@ ] ], "1": [ - "versions.yml:md5,5ff99ffba1e56e4e919d3dfc2d0f3cbb" + "versions.yml:md5,384f8c54b3d1b03f7bdb583cb3c93e5c" ], "call_variants_tfrecords": [ [ @@ -46,14 +46,14 @@ ] ], "versions": [ - "versions.yml:md5,5ff99ffba1e56e4e919d3dfc2d0f3cbb" + "versions.yml:md5,384f8c54b3d1b03f7bdb583cb3c93e5c" ] } ], "meta": { "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nextflow": "24.10.3" }, - "timestamp": "2024-08-13T21:07:17.335788301" + "timestamp": "2025-01-08T10:07:27.993998742" } } \ No newline at end of file diff --git a/modules/nf-core/deepvariant/callvariants/tests/nextflow.config b/modules/nf-core/deepvariant/callvariants/tests/nextflow.config index 590aa060237..68aec144553 100644 --- a/modules/nf-core/deepvariant/callvariants/tests/nextflow.config +++ b/modules/nf-core/deepvariant/callvariants/tests/nextflow.config @@ -6,6 +6,6 @@ process { } process { withName: "DEEPVARIANT_MAKEEXAMPLES" { - ext.args = '--channels "insert_size"' + ext.args = '--checkpoint "/opt/models/wgs" --call_small_model_examples --small_model_indel_gq_threshold "30" --small_model_snp_gq_threshold "25" --small_model_vaf_context_window_size "51" --trained_small_model_path "/opt/smallmodels/wgs"' } } diff --git a/modules/nf-core/deepvariant/main.nf b/modules/nf-core/deepvariant/main.nf index 12c9366bb7b..427de3c9cd5 100644 --- a/modules/nf-core/deepvariant/main.nf +++ b/modules/nf-core/deepvariant/main.nf @@ -16,7 +16,7 @@ process DEEPVARIANT { tag "$meta.id" label 'process_high' - container "nf-core/deepvariant:1.6.1" + container "docker.io/google/deepvariant:1.8.0" input: tuple val(meta), path(input), path(index), path(intervals) diff --git a/modules/nf-core/deepvariant/makeexamples/main.nf b/modules/nf-core/deepvariant/makeexamples/main.nf index 022d0bf2808..f31f275c39c 100644 --- a/modules/nf-core/deepvariant/makeexamples/main.nf +++ b/modules/nf-core/deepvariant/makeexamples/main.nf @@ -3,7 +3,7 @@ process DEEPVARIANT_MAKEEXAMPLES { label 'process_high' //Conda is not supported at the moment - container "nf-core/deepvariant:1.6.1" + container "docker.io/google/deepvariant:1.8.0" input: tuple val(meta), path(input), path(index), path(intervals) @@ -15,6 +15,7 @@ process DEEPVARIANT_MAKEEXAMPLES { output: tuple val(meta), path("${prefix}.examples.tfrecord-*-of-*.gz{,.example_info.json}"), emit: examples tuple val(meta), path("${prefix}.gvcf.tfrecord-*-of-*.gz"), emit: gvcf + tuple val(meta), path("${prefix}_call_variant_outputs.examples.tfrecord-*-of-*.gz", arity: "0..*"), emit: small_model_calls path "versions.yml", emit: versions when: diff --git a/modules/nf-core/deepvariant/makeexamples/meta.yml b/modules/nf-core/deepvariant/makeexamples/meta.yml index 6fb9f1b8143..6ae792f6ea8 100644 --- a/modules/nf-core/deepvariant/makeexamples/meta.yml +++ b/modules/nf-core/deepvariant/makeexamples/meta.yml @@ -88,6 +88,15 @@ output: type: list description: | Tuple containing sample metadata and the GVCF data in tfrecord format + - small_model_calls: + - meta: + type: list + description: | + Tuple containing sample metadata + - '${prefix}_call_variant_outputs.examples.tfrecord-*-of-*.gz", arity: "0..*': + type: list + description: | + Optional variant calls from the small model, if enabled, in tfrecord format - versions: - versions.yml: type: file diff --git a/modules/nf-core/deepvariant/makeexamples/tests/main.nf.test b/modules/nf-core/deepvariant/makeexamples/tests/main.nf.test index d46dbe6d57c..3b303217c04 100644 --- a/modules/nf-core/deepvariant/makeexamples/tests/main.nf.test +++ b/modules/nf-core/deepvariant/makeexamples/tests/main.nf.test @@ -46,13 +46,13 @@ nextflow_process { { assert process.out.examples.get(0).get(0) == [ id:'test', single_end:false ] }, { assert process.out.gvcf.get(0).get(0) == [ id:'test', single_end:false ] }, { assert process.out.examples.get(0).get(1).size() == 4 }, - { assert snapshot( // Check examples (tfrecord / json) file name list + { assert snapshot( // Check examples (tfrecord / json) file name list file(process.out.examples.get(0).get(1).get(0)).name, file(process.out.examples.get(0).get(1).get(1)).name, file(process.out.examples.get(0).get(1).get(2)).name, file(process.out.examples.get(0).get(1).get(3)).name, ).match("test1-exaamples-filenames")}, - + { assert process.out.gvcf.get(0).get(0) == [ id:'test', single_end:false ] }, { assert process.out.gvcf.get(0).get(1).size() == 2 }, { assert snapshot( // Check gvcf file name list @@ -154,7 +154,7 @@ nextflow_process { { assert process.out.examples.get(0).get(0) == [ id:'test', single_end:false ] }, // The test is always run with 2 cpus { assert process.out.examples.get(0).get(1).size() == 4 }, - { assert snapshot( // Check examples (tfrecord / json) file name list + { assert snapshot( // Check examples (tfrecord / json) file name list file(process.out.examples.get(0).get(1).get(0)).name, file(process.out.examples.get(0).get(1).get(1)).name, file(process.out.examples.get(0).get(1).get(2)).name, @@ -173,7 +173,7 @@ nextflow_process { } test("stub") { - + options "-stub" when { @@ -208,13 +208,13 @@ nextflow_process { assertAll( { assert process.success }, { assert process.out.examples.get(0).get(1).size() == 4 }, - { assert snapshot( // Check examples (tfrecord / json) file name list + { assert snapshot( // Check examples (tfrecord / json) file name list file(process.out.examples.get(0).get(1).get(0)).name, file(process.out.examples.get(0).get(1).get(1)).name, file(process.out.examples.get(0).get(1).get(2)).name, file(process.out.examples.get(0).get(1).get(3)).name, ).match("test4-examples-filenames")}, - + { assert process.out.gvcf.get(0).get(0) == [ id:'test', single_end:false ] }, { assert process.out.gvcf.get(0).get(1).size() == 2 }, { assert snapshot( // Check gvcf file name list @@ -225,4 +225,4 @@ nextflow_process { } } -} +} \ No newline at end of file diff --git a/modules/nf-core/deepvariant/makeexamples/tests/main.nf.test.snap b/modules/nf-core/deepvariant/makeexamples/tests/main.nf.test.snap index 24182c54a0b..ee5659c3964 100644 --- a/modules/nf-core/deepvariant/makeexamples/tests/main.nf.test.snap +++ b/modules/nf-core/deepvariant/makeexamples/tests/main.nf.test.snap @@ -10,6 +10,18 @@ }, "timestamp": "2024-09-04T16:09:47.885995" }, + "test3-versions": { + "content": [ + [ + "versions.yml:md5,2bfe7f3902fb3d9e2dc1d97dc6347c9c" + ] + ], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-08T10:34:31.031697972" + }, "test2-examples-filenames": { "content": [ "test.examples.tfrecord-00000-of-00002.gz", @@ -26,14 +38,27 @@ "test2-versions": { "content": [ [ - "versions.yml:md5,842dca9323f25aa3cfd67789d18e7e33" + "versions.yml:md5,2bfe7f3902fb3d9e2dc1d97dc6347c9c" ] ], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-08T10:34:17.998740352" + }, + "test1-exaamples-filenames": { + "content": [ + "test.examples.tfrecord-00000-of-00002.gz", + "test.examples.tfrecord-00000-of-00002.gz.example_info.json", + "test.examples.tfrecord-00001-of-00002.gz", + "test.examples.tfrecord-00001-of-00002.gz.example_info.json" + ], "meta": { "nf-test": "0.9.0", "nextflow": "24.04.4" }, - "timestamp": "2024-08-09T16:39:28.960959" + "timestamp": "2024-09-04T16:09:47.874585" }, "test4-examples-filenames": { "content": [ @@ -51,14 +76,25 @@ "test1-versions": { "content": [ [ - "versions.yml:md5,842dca9323f25aa3cfd67789d18e7e33" + "versions.yml:md5,2bfe7f3902fb3d9e2dc1d97dc6347c9c" ] ], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-08T10:34:04.940271042" + }, + "test3-gvcf-filenames": { + "content": [ + "test.gvcf.tfrecord-00000-of-00002.gz", + "test.gvcf.tfrecord-00001-of-00002.gz" + ], "meta": { "nf-test": "0.9.0", "nextflow": "24.04.4" }, - "timestamp": "2024-08-09T16:39:13.57526" + "timestamp": "2024-09-04T16:10:17.714443" }, "test3-examples-filenames": { "content": [ @@ -94,41 +130,5 @@ "nextflow": "24.04.4" }, "timestamp": "2024-09-04T16:10:27.423442" - }, - "test3-versions": { - "content": [ - [ - "versions.yml:md5,842dca9323f25aa3cfd67789d18e7e33" - ] - ], - "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" - }, - "timestamp": "2024-08-09T16:39:44.83616" - }, - "test1-exaamples-filenames": { - "content": [ - "test.examples.tfrecord-00000-of-00002.gz", - "test.examples.tfrecord-00000-of-00002.gz.example_info.json", - "test.examples.tfrecord-00001-of-00002.gz", - "test.examples.tfrecord-00001-of-00002.gz.example_info.json" - ], - "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" - }, - "timestamp": "2024-09-04T16:09:47.874585" - }, - "test3-gvcf-filenames": { - "content": [ - "test.gvcf.tfrecord-00000-of-00002.gz", - "test.gvcf.tfrecord-00001-of-00002.gz" - ], - "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" - }, - "timestamp": "2024-09-04T16:10:17.714443" } } \ No newline at end of file diff --git a/modules/nf-core/deepvariant/makeexamples/tests/nextflow.config b/modules/nf-core/deepvariant/makeexamples/tests/nextflow.config index 5f071fcb34b..6811fe48d9b 100644 --- a/modules/nf-core/deepvariant/makeexamples/tests/nextflow.config +++ b/modules/nf-core/deepvariant/makeexamples/tests/nextflow.config @@ -1,6 +1,6 @@ process { withName: "DEEPVARIANT_MAKEEXAMPLES" { - ext.args = '--channels "insert_size"' cpus = 2 // The number of output files is determined by cpus - keep it the same for tests + ext.args = '--checkpoint "/opt/models/wgs" --call_small_model_examples --small_model_indel_gq_threshold "30" --small_model_snp_gq_threshold "25" --small_model_vaf_context_window_size "51" --trained_small_model_path "/opt/smallmodels/wgs"' } } diff --git a/modules/nf-core/deepvariant/postprocessvariants/main.nf b/modules/nf-core/deepvariant/postprocessvariants/main.nf index 90e8563deb6..41f6f28bb89 100644 --- a/modules/nf-core/deepvariant/postprocessvariants/main.nf +++ b/modules/nf-core/deepvariant/postprocessvariants/main.nf @@ -3,10 +3,10 @@ process DEEPVARIANT_POSTPROCESSVARIANTS { label 'process_medium' //Conda is not supported at the moment - container "nf-core/deepvariant:1.6.1" + container "docker.io/google/deepvariant:1.8.0" input: - tuple val(meta), path(variant_calls_tfrecord_files), path(gvcf_tfrecords) + tuple val(meta), path(variant_calls_tfrecord_files), path(gvcf_tfrecords), path(small_model_calls), path(intervals) tuple val(meta2), path(fasta) tuple val(meta3), path(fai) tuple val(meta4), path(gzi) @@ -30,6 +30,7 @@ process DEEPVARIANT_POSTPROCESSVARIANTS { def args = task.ext.args ?: '' prefix = task.ext.prefix ?: "${meta.id}" + def regions = intervals ? "--regions ${intervals}" : "" def variant_calls_tfrecord_name = variant_calls_tfrecord_files[0].name.replaceFirst(/-\d{5}-of-\d{5}/, "") def gvcf_matcher = gvcf_tfrecords[0].baseName =~ /^(.+)-\d{5}-of-(\d{5})$/ @@ -41,6 +42,21 @@ process DEEPVARIANT_POSTPROCESSVARIANTS { // Reconstruct the logical name - ${tfrecord_name}.examples.tfrecord@${task.cpus}.gz def gvcf_tfrecords_logical_name = "${gvcf_tfrecord_name}@${gvcf_shardCount}.gz" + // The following block determines whether the small model was used, and if so, adds the variant calls from it + // to the argument --small_model_cvo_records. + def small_model_arg = "" + if (small_model_calls) { + small_model_matcher = (small_model_calls[0].baseName =~ /^(.+)-\d{5}-of-(\d{5})$/) + if (!small_model_matcher.matches()) { + throw new IllegalArgumentException("tfrecord baseName '" + small_model_calls[0].baseName + "' doesn't match the expected pattern") + } + small_model_tfrecord_name = small_model_matcher[0][1] + small_model_shardCount = small_model_matcher[0][2] + // Reconstruct the logical name. Example: test_call_variant_outputs.examples.tfrecord@12.gz + small_model_tfrecords_logical_name = "${small_model_tfrecord_name}@${small_model_shardCount}.gz" + small_model_arg = "--small_model_cvo_records ${small_model_tfrecords_logical_name}" + } + """ /opt/deepvariant/bin/postprocess_variants \\ ${args} \\ @@ -49,6 +65,8 @@ process DEEPVARIANT_POSTPROCESSVARIANTS { --outfile "${prefix}.vcf.gz" \\ --nonvariant_site_tfrecord_path "${gvcf_tfrecords_logical_name}" \\ --gvcf_outfile "${prefix}.g.vcf.gz" \\ + ${regions} \\ + ${small_model_arg} \\ --cpus $task.cpus cat <<-END_VERSIONS > versions.yml diff --git a/modules/nf-core/deepvariant/postprocessvariants/meta.yml b/modules/nf-core/deepvariant/postprocessvariants/meta.yml index 132a5263226..caee500fc96 100644 --- a/modules/nf-core/deepvariant/postprocessvariants/meta.yml +++ b/modules/nf-core/deepvariant/postprocessvariants/meta.yml @@ -31,6 +31,15 @@ input: description: | Sharded tfrecord file from DEEPVARIANT_MAKEEXAMPLES with the coverage information used for GVCF output pattern: "*.gz" + - small_model_calls: + type: file + description: | + Sharded tfrecord file from DEEPVARIANT_MAKEEXAMPLES with variant calls from the small model + pattern: "*.gz" + - intervals: + type: file + description: Interval file for targeted regions + pattern: "*.bed" - - meta2: type: map description: | diff --git a/modules/nf-core/deepvariant/postprocessvariants/tests/main.nf.test b/modules/nf-core/deepvariant/postprocessvariants/tests/main.nf.test index e4e9b5570c2..ef9110b0e06 100644 --- a/modules/nf-core/deepvariant/postprocessvariants/tests/main.nf.test +++ b/modules/nf-core/deepvariant/postprocessvariants/tests/main.nf.test @@ -22,7 +22,8 @@ nextflow_process { [ 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] = [ [ id:'genome'], @@ -56,7 +57,10 @@ nextflow_process { input[0] = DEEPVARIANT_CALLVARIANTS.out.call_variants_tfrecords.join( DEEPVARIANT_MAKEEXAMPLES.out.gvcf, failOnMismatch: true - ) + ).join( + DEEPVARIANT_MAKEEXAMPLES.out.small_model_calls, + failOnMismatch: true + ).map { meta, tf, gvcf, small_model_calls -> [ meta, tf, gvcf, small_model_calls, [] ] } input[1] = [ [ id:'genome'], file(params.modules_testdata_base_path + '/genomics/homo_sapiens/genome/genome.fasta', checkIfExists: true) @@ -82,7 +86,7 @@ nextflow_process { test("homo_sapiens - wgs - stub") { options "-stub" - + when { process { """ @@ -91,6 +95,7 @@ nextflow_process { [], [], [], + [], ] input[1] = [ [ id:'genome'], diff --git a/modules/nf-core/deepvariant/postprocessvariants/tests/main.nf.test.snap b/modules/nf-core/deepvariant/postprocessvariants/tests/main.nf.test.snap index 5a29c624e50..25f8c77cc1d 100644 --- a/modules/nf-core/deepvariant/postprocessvariants/tests/main.nf.test.snap +++ b/modules/nf-core/deepvariant/postprocessvariants/tests/main.nf.test.snap @@ -39,7 +39,7 @@ ] ], "4": [ - "versions.yml:md5,37f0e454a6983de82f7a93eb39849985" + "versions.yml:md5,50b8f9cdd2072594c18345c57aa0c81d" ], "gvcf": [ [ @@ -78,15 +78,15 @@ ] ], "versions": [ - "versions.yml:md5,37f0e454a6983de82f7a93eb39849985" + "versions.yml:md5,50b8f9cdd2072594c18345c57aa0c81d" ] } ], "meta": { "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nextflow": "24.10.3" }, - "timestamp": "2024-08-09T16:40:38.231189" + "timestamp": "2025-01-08T10:08:20.388765647" }, "homo_sapiens - wgs": { "content": [ @@ -97,7 +97,7 @@ "id": "test", "single_end": false }, - "test.vcf.gz:md5,8b8ab4a675f01e437aa72e1438a717d0" + "test.vcf.gz:md5,cf14200d683c17a6e433bb076d487fee" ] ], "1": [ @@ -106,7 +106,7 @@ "id": "test", "single_end": false }, - "test.vcf.gz.tbi:md5,0000833138104e87b05eaa906821eb21" + "test.vcf.gz.tbi:md5,e9bcd1d1f5280e0d76ed8fd31f27bd59" ] ], "2": [ @@ -115,7 +115,7 @@ "id": "test", "single_end": false }, - "test.g.vcf.gz:md5,0a629e1745926cfcedf4b169046a921a" + "test.g.vcf.gz:md5,6251a87945e530ca61a989d7187d89dc" ] ], "3": [ @@ -124,11 +124,11 @@ "id": "test", "single_end": false }, - "test.g.vcf.gz.tbi:md5,49503913c28ec70a6f4aa52f6b357b4d" + "test.g.vcf.gz.tbi:md5,32ca0d6713b96ed4ce07c79421bb04a9" ] ], "4": [ - "versions.yml:md5,b1d5ddb90c4a59a1a3fdace9dcc8445c" + "versions.yml:md5,a5f0cf2f9a03036ffdd389c5e24f3865" ], "gvcf": [ [ @@ -136,7 +136,7 @@ "id": "test", "single_end": false }, - "test.g.vcf.gz:md5,0a629e1745926cfcedf4b169046a921a" + "test.g.vcf.gz:md5,6251a87945e530ca61a989d7187d89dc" ] ], "gvcf_tbi": [ @@ -145,7 +145,7 @@ "id": "test", "single_end": false }, - "test.g.vcf.gz.tbi:md5,49503913c28ec70a6f4aa52f6b357b4d" + "test.g.vcf.gz.tbi:md5,32ca0d6713b96ed4ce07c79421bb04a9" ] ], "vcf": [ @@ -154,7 +154,7 @@ "id": "test", "single_end": false }, - "test.vcf.gz:md5,8b8ab4a675f01e437aa72e1438a717d0" + "test.vcf.gz:md5,cf14200d683c17a6e433bb076d487fee" ] ], "vcf_tbi": [ @@ -163,18 +163,18 @@ "id": "test", "single_end": false }, - "test.vcf.gz.tbi:md5,0000833138104e87b05eaa906821eb21" + "test.vcf.gz.tbi:md5,e9bcd1d1f5280e0d76ed8fd31f27bd59" ] ], "versions": [ - "versions.yml:md5,b1d5ddb90c4a59a1a3fdace9dcc8445c" + "versions.yml:md5,a5f0cf2f9a03036ffdd389c5e24f3865" ] } ], "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-08-09T16:46:15.793662" + "timestamp": "2025-02-19T13:32:50.529983365" } } \ No newline at end of file diff --git a/modules/nf-core/deepvariant/postprocessvariants/tests/nextflow.config b/modules/nf-core/deepvariant/postprocessvariants/tests/nextflow.config index 070b4892f86..b8f3f47abe0 100644 --- a/modules/nf-core/deepvariant/postprocessvariants/tests/nextflow.config +++ b/modules/nf-core/deepvariant/postprocessvariants/tests/nextflow.config @@ -5,6 +5,6 @@ process { } process { withName: "DEEPVARIANT_MAKEEXAMPLES" { - ext.args = '--channels "insert_size"' + ext.args = '--checkpoint "/opt/models/wgs" --call_small_model_examples --small_model_indel_gq_threshold "30" --small_model_snp_gq_threshold "25" --small_model_vaf_context_window_size "51" --trained_small_model_path "/opt/smallmodels/wgs"' } } diff --git a/modules/nf-core/deepvariant/rundeepvariant/main.nf b/modules/nf-core/deepvariant/rundeepvariant/main.nf index aec18907646..41338f28cf0 100644 --- a/modules/nf-core/deepvariant/rundeepvariant/main.nf +++ b/modules/nf-core/deepvariant/rundeepvariant/main.nf @@ -3,6 +3,7 @@ process DEEPVARIANT_RUNDEEPVARIANT { label 'process_high' // FIXME Conda is not supported at the moment + // https://github.com/bioconda/bioconda-recipes/pull/45214#issuecomment-1890937836 // BUG https://github.com/nf-core/modules/issues/1754 // BUG https://github.com/bioconda/bioconda-recipes/issues/30310 container "docker.io/google/deepvariant:1.8.0" diff --git a/subworkflows/nf-core/deepvariant/main.nf b/subworkflows/nf-core/deepvariant/main.nf index f383770819a..23d739ec9cf 100644 --- a/subworkflows/nf-core/deepvariant/main.nf +++ b/subworkflows/nf-core/deepvariant/main.nf @@ -22,10 +22,19 @@ workflow DEEPVARIANT { // Input to postprocessing step needs both the gvcfs from MAKEEXAMPLES and the variant // calls from CALLVARIANTS. Joining on meta, which is assumed to be unique. + ch_intervals = ch_input.map { meta, input, index, intervals -> [ meta, intervals ] } + ch_postproc_input = DEEPVARIANT_CALLVARIANTS.out.call_variants_tfrecords.join( DEEPVARIANT_MAKEEXAMPLES.out.gvcf, failOnMismatch: true + ).join( + DEEPVARIANT_MAKEEXAMPLES.out.small_model_calls, + failOnMismatch: true + ).join( + ch_intervals, + failOnMismatch: true ) + DEEPVARIANT_POSTPROCESSVARIANTS( ch_postproc_input, ch_fasta, diff --git a/subworkflows/nf-core/deepvariant/meta.yml b/subworkflows/nf-core/deepvariant/meta.yml index 6321fc24c66..bd459a629da 100644 --- a/subworkflows/nf-core/deepvariant/meta.yml +++ b/subworkflows/nf-core/deepvariant/meta.yml @@ -74,3 +74,4 @@ authors: maintainers: - "@abhi18av" - "@ramprasadn" + - "@fa2k" diff --git a/subworkflows/nf-core/deepvariant/tests/deepvariant-workflow-and-process-equality-tester.nf b/subworkflows/nf-core/deepvariant/tests/deepvariant-workflow-and-process-equality-tester.nf new file mode 100644 index 00000000000..83a16d553d9 --- /dev/null +++ b/subworkflows/nf-core/deepvariant/tests/deepvariant-workflow-and-process-equality-tester.nf @@ -0,0 +1,22 @@ +include { DEEPVARIANT_RUNDEEPVARIANT } from '../../../../modules/nf-core/deepvariant/rundeepvariant/main' +include { DEEPVARIANT } from '../main' + +workflow DEEPVARIANT_WORKFLOW_AND_PROCESS_EQUALITY_TESTER { + take: + ch_input // channel: [ val(meta), path(input), path(index), path(intervals)] + ch_fasta // channel: [ val(meta2), path(fasta) ] + ch_fai // channel: [ val(meta3), path(fail) ] + ch_gzi // channel: [ val(meta4), path(gzi) ] + ch_par_bed // channel: [ val(meta5), path(par_bed) ] + + main: + + DEEPVARIANT(ch_input, ch_fasta, ch_fai, ch_gzi, ch_par_bed) + DEEPVARIANT_RUNDEEPVARIANT(ch_input, ch_fasta, ch_fai, ch_gzi, ch_par_bed) + + emit: + wf_vcf = DEEPVARIANT.out.vcf + pc_vcf = DEEPVARIANT_RUNDEEPVARIANT.out.vcf + wf_gvcf = DEEPVARIANT.out.gvcf + pc_gvcf = DEEPVARIANT_RUNDEEPVARIANT.out.gvcf +} diff --git a/subworkflows/nf-core/deepvariant/tests/disable-small-model.conf b/subworkflows/nf-core/deepvariant/tests/disable-small-model.conf new file mode 100644 index 00000000000..eb1b53bcf80 --- /dev/null +++ b/subworkflows/nf-core/deepvariant/tests/disable-small-model.conf @@ -0,0 +1,8 @@ +process { + withName: "DEEPVARIANT_MAKEEXAMPLES" { + ext.args = '--checkpoint "/opt/models/wgs"' + } + withName: "DEEPVARIANT_CALLVARIANTS" { + ext.args = '--checkpoint "/opt/models/wgs"' + } +} diff --git a/subworkflows/nf-core/deepvariant/tests/equality.nf.test b/subworkflows/nf-core/deepvariant/tests/equality.nf.test new file mode 100644 index 00000000000..bb5c964534e --- /dev/null +++ b/subworkflows/nf-core/deepvariant/tests/equality.nf.test @@ -0,0 +1,63 @@ + +nextflow_workflow { + + name "Compare subworkflow DEEPVARIANT to the process DEEPVARIANT_RUNDEEPVARIANT" + script "./deepvariant-workflow-and-process-equality-tester.nf" + config "./nextflow.config" + workflow "DEEPVARIANT_WORKFLOW_AND_PROCESS_EQUALITY_TESTER" + + tag "subworkflows" + tag "subworkflows_nfcore" + tag "subworkflows/deepvariant" + + tag "deepvariant" + tag "deepvariant/makeexamples" + tag "deepvariant/callvariants" + tag "deepvariant/postprocessvariants" + tag "deepvariant/rundeepvariant" + + test("ensure that the subworkflow and DEEPVARIANT_RUNDEEPVARIANT have the same output") { + when { + workflow { + """ + input[0] = Channel.of( + [ + [ 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), + file(params.modules_testdata_base_path + '/genomics/homo_sapiens/genome/genome.bed', checkIfExists: true) + ], + [ + [ id:'test2', single_end:false ], // meta map + file(params.modules_testdata_base_path + '/genomics/homo_sapiens/illumina/bam/test2.paired_end.sorted.bam', checkIfExists: true), + file(params.modules_testdata_base_path + '/genomics/homo_sapiens/illumina/bam/test2.paired_end.sorted.bam.bai', checkIfExists: true), + file(params.modules_testdata_base_path + '/genomics/homo_sapiens/genome/genome.bed', checkIfExists: true) + ] + ) + input[1] = [ + [ id:'genome'], + file(params.modules_testdata_base_path + '/genomics/homo_sapiens/genome/genome.fasta', checkIfExists: true) + ] + input[2] = [ + [ id:'genome'], + file(params.modules_testdata_base_path + '/genomics/homo_sapiens/genome/genome.fasta.fai', checkIfExists: true) + ] + input[3] = [ + [],[] + ] + input[4] = [ + [],[] + ] + """ + } + } + + then { + assertAll( + { assert workflow.success }, + { assert path(workflow.out.wf_vcf.get(0).get(1)).md5 == path(workflow.out.pc_vcf.get(0).get(1)).md5 }, + { assert path(workflow.out.wf_gvcf.get(0).get(1)).md5 == path(workflow.out.pc_gvcf.get(0).get(1)).md5 }, + ) + } + } +} diff --git a/subworkflows/nf-core/deepvariant/tests/main.nf.test b/subworkflows/nf-core/deepvariant/tests/main.nf.test index 4195d4730e7..d6a0aeba51b 100644 --- a/subworkflows/nf-core/deepvariant/tests/main.nf.test +++ b/subworkflows/nf-core/deepvariant/tests/main.nf.test @@ -102,4 +102,51 @@ nextflow_workflow { } } + test("homo_sapiens - disable small model - cram - fasta - fai") { + + config "./disable-small-model.conf" + + when { + workflow { + """ + input[0] = Channel.of( + [ + [ 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), + file(params.modules_testdata_base_path + '/genomics/homo_sapiens/genome/genome.bed', checkIfExists: true) + ], + [ + [ id:'test2', single_end:false ], // meta map + file(params.modules_testdata_base_path + '/genomics/homo_sapiens/illumina/bam/test2.paired_end.sorted.bam', checkIfExists: true), + file(params.modules_testdata_base_path + '/genomics/homo_sapiens/illumina/bam/test2.paired_end.sorted.bam.bai', checkIfExists: true), + file(params.modules_testdata_base_path + '/genomics/homo_sapiens/genome/genome.bed', checkIfExists: true) + ] + ) + input[1] = [ + [ id:'genome'], + file(params.modules_testdata_base_path + '/genomics/homo_sapiens/genome/genome.fasta', checkIfExists: true) + ] + input[2] = [ + [ id:'genome'], + file(params.modules_testdata_base_path + '/genomics/homo_sapiens/genome/genome.fasta.fai', checkIfExists: true) + ] + input[3] = [ + [],[] + ] + input[4] = [ + [],[] + ] + """ + } + } + + + then { + assertAll( + { assert workflow.success }, + { assert snapshot(workflow.out).match() } + ) + } + } } diff --git a/subworkflows/nf-core/deepvariant/tests/main.nf.test.snap b/subworkflows/nf-core/deepvariant/tests/main.nf.test.snap index 08105c1b0f0..6de2ffcfa2a 100644 --- a/subworkflows/nf-core/deepvariant/tests/main.nf.test.snap +++ b/subworkflows/nf-core/deepvariant/tests/main.nf.test.snap @@ -1,4 +1,153 @@ { + "homo_sapiens - disable small model - cram - fasta - fai": { + "content": [ + { + "0": [ + [ + { + "id": "test", + "single_end": false + }, + "test.vcf.gz:md5,c624820a37cc7261d233099311e1b6fd" + ], + [ + { + "id": "test2", + "single_end": false + }, + "test2.vcf.gz:md5,3d416ba29f0c1402bffb8d9cdf349454" + ] + ], + "1": [ + [ + { + "id": "test", + "single_end": false + }, + "test.vcf.gz.tbi:md5,a2edf6cfe771bb8c3683eba30a469538" + ], + [ + { + "id": "test2", + "single_end": false + }, + "test2.vcf.gz.tbi:md5,d62c78e1bde3752cc2ba70bfab3b1565" + ] + ], + "2": [ + [ + { + "id": "test", + "single_end": false + }, + "test.g.vcf.gz:md5,28b76b57ed2c9798394c7a6faf5806b0" + ], + [ + { + "id": "test2", + "single_end": false + }, + "test2.g.vcf.gz:md5,8345bef1b2885ac80bf5fdbb4b493ee7" + ] + ], + "3": [ + [ + { + "id": "test", + "single_end": false + }, + "test.g.vcf.gz.tbi:md5,3259f930681559bbc022ddb986d00a26" + ], + [ + { + "id": "test2", + "single_end": false + }, + "test2.g.vcf.gz.tbi:md5,b63959a8fb4513273e3e53e3a8864614" + ] + ], + "4": [ + "versions.yml:md5,328e2f6462a2b9a5b4c291d2ea2acbae", + "versions.yml:md5,3ee8fb91cc070d641058839976671aa3", + "versions.yml:md5,c4510740784482ca098220df79ba3f3e" + ], + "gvcf": [ + [ + { + "id": "test", + "single_end": false + }, + "test.g.vcf.gz:md5,28b76b57ed2c9798394c7a6faf5806b0" + ], + [ + { + "id": "test2", + "single_end": false + }, + "test2.g.vcf.gz:md5,8345bef1b2885ac80bf5fdbb4b493ee7" + ] + ], + "gvcf_tbi": [ + [ + { + "id": "test", + "single_end": false + }, + "test.g.vcf.gz.tbi:md5,3259f930681559bbc022ddb986d00a26" + ], + [ + { + "id": "test2", + "single_end": false + }, + "test2.g.vcf.gz.tbi:md5,b63959a8fb4513273e3e53e3a8864614" + ] + ], + "vcf": [ + [ + { + "id": "test", + "single_end": false + }, + "test.vcf.gz:md5,c624820a37cc7261d233099311e1b6fd" + ], + [ + { + "id": "test2", + "single_end": false + }, + "test2.vcf.gz:md5,3d416ba29f0c1402bffb8d9cdf349454" + ] + ], + "vcf_tbi": [ + [ + { + "id": "test", + "single_end": false + }, + "test.vcf.gz.tbi:md5,a2edf6cfe771bb8c3683eba30a469538" + ], + [ + { + "id": "test2", + "single_end": false + }, + "test2.vcf.gz.tbi:md5,d62c78e1bde3752cc2ba70bfab3b1565" + ] + ], + "versions": [ + "versions.yml:md5,328e2f6462a2b9a5b4c291d2ea2acbae", + "versions.yml:md5,3ee8fb91cc070d641058839976671aa3", + "versions.yml:md5,c4510740784482ca098220df79ba3f3e" + ] + } + ], + "meta": { + "nf-test": "0.9.2", + "nextflow": "24.10.3" + }, + "timestamp": "2025-01-14T11:39:48.642006757" + }, "homo_sapiens - different samples and regions - cram - fasta - fai": { "content": [ { @@ -8,14 +157,14 @@ "id": "test", "single_end": false }, - "test.vcf.gz:md5,8b8ab4a675f01e437aa72e1438a717d0" + "test.vcf.gz:md5,cf14200d683c17a6e433bb076d487fee" ], [ { "id": "test2", "single_end": false }, - "test2.vcf.gz:md5,5c36d104b2eb6e410788990928667b93" + "test2.vcf.gz:md5,f5a97576e312c3b8351db9c0bfba3e1e" ] ], "1": [ @@ -24,14 +173,14 @@ "id": "test", "single_end": false }, - "test.vcf.gz.tbi:md5,0000833138104e87b05eaa906821eb21" + "test.vcf.gz.tbi:md5,e9bcd1d1f5280e0d76ed8fd31f27bd59" ], [ { "id": "test2", "single_end": false }, - "test2.vcf.gz.tbi:md5,5451379c05fa59498b2b8aafcb18c9eb" + "test2.vcf.gz.tbi:md5,d642d6b583407c0f373b451907dba52d" ] ], "2": [ @@ -40,14 +189,14 @@ "id": "test", "single_end": false }, - "test.g.vcf.gz:md5,0a629e1745926cfcedf4b169046a921a" + "test.g.vcf.gz:md5,6251a87945e530ca61a989d7187d89dc" ], [ { "id": "test2", "single_end": false }, - "test2.g.vcf.gz:md5,2aefd9545ffefe9af0730dc4ffc5f638" + "test2.g.vcf.gz:md5,c01c7d5565ca73141c3d085f120a27d0" ] ], "3": [ @@ -56,20 +205,20 @@ "id": "test", "single_end": false }, - "test.g.vcf.gz.tbi:md5,49503913c28ec70a6f4aa52f6b357b4d" + "test.g.vcf.gz.tbi:md5,32ca0d6713b96ed4ce07c79421bb04a9" ], [ { "id": "test2", "single_end": false }, - "test2.g.vcf.gz.tbi:md5,58d2e7fa7cf98d56fd734db6d59f8489" + "test2.g.vcf.gz.tbi:md5,d7e823b70c58ef3d02bfcf1706bf36a6" ] ], "4": [ - "versions.yml:md5,5e6e7451f9819e2e0c33ad0d1b22d3b3", - "versions.yml:md5,c9c9c7000dc16bcb7e3107e7333481de", - "versions.yml:md5,cb2f0f2fe645633ed7d6528999bde458" + "versions.yml:md5,328e2f6462a2b9a5b4c291d2ea2acbae", + "versions.yml:md5,3ee8fb91cc070d641058839976671aa3", + "versions.yml:md5,c4510740784482ca098220df79ba3f3e" ], "gvcf": [ [ @@ -77,14 +226,14 @@ "id": "test", "single_end": false }, - "test.g.vcf.gz:md5,0a629e1745926cfcedf4b169046a921a" + "test.g.vcf.gz:md5,6251a87945e530ca61a989d7187d89dc" ], [ { "id": "test2", "single_end": false }, - "test2.g.vcf.gz:md5,2aefd9545ffefe9af0730dc4ffc5f638" + "test2.g.vcf.gz:md5,c01c7d5565ca73141c3d085f120a27d0" ] ], "gvcf_tbi": [ @@ -93,14 +242,14 @@ "id": "test", "single_end": false }, - "test.g.vcf.gz.tbi:md5,49503913c28ec70a6f4aa52f6b357b4d" + "test.g.vcf.gz.tbi:md5,32ca0d6713b96ed4ce07c79421bb04a9" ], [ { "id": "test2", "single_end": false }, - "test2.g.vcf.gz.tbi:md5,58d2e7fa7cf98d56fd734db6d59f8489" + "test2.g.vcf.gz.tbi:md5,d7e823b70c58ef3d02bfcf1706bf36a6" ] ], "vcf": [ @@ -109,14 +258,14 @@ "id": "test", "single_end": false }, - "test.vcf.gz:md5,8b8ab4a675f01e437aa72e1438a717d0" + "test.vcf.gz:md5,cf14200d683c17a6e433bb076d487fee" ], [ { "id": "test2", "single_end": false }, - "test2.vcf.gz:md5,5c36d104b2eb6e410788990928667b93" + "test2.vcf.gz:md5,f5a97576e312c3b8351db9c0bfba3e1e" ] ], "vcf_tbi": [ @@ -125,28 +274,28 @@ "id": "test", "single_end": false }, - "test.vcf.gz.tbi:md5,0000833138104e87b05eaa906821eb21" + "test.vcf.gz.tbi:md5,e9bcd1d1f5280e0d76ed8fd31f27bd59" ], [ { "id": "test2", "single_end": false }, - "test2.vcf.gz.tbi:md5,5451379c05fa59498b2b8aafcb18c9eb" + "test2.vcf.gz.tbi:md5,d642d6b583407c0f373b451907dba52d" ] ], "versions": [ - "versions.yml:md5,5e6e7451f9819e2e0c33ad0d1b22d3b3", - "versions.yml:md5,c9c9c7000dc16bcb7e3107e7333481de", - "versions.yml:md5,cb2f0f2fe645633ed7d6528999bde458" + "versions.yml:md5,328e2f6462a2b9a5b4c291d2ea2acbae", + "versions.yml:md5,3ee8fb91cc070d641058839976671aa3", + "versions.yml:md5,c4510740784482ca098220df79ba3f3e" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "24.04.3" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-08-16T16:20:06.112232952" + "timestamp": "2025-01-14T11:25:55.004429932" }, "homo_sapiens - two inputs - bam - fasta - fai": { "content": [ @@ -157,14 +306,14 @@ "id": "test", "single_end": false }, - "test.vcf.gz:md5,8b8ab4a675f01e437aa72e1438a717d0" + "test.vcf.gz:md5,cf14200d683c17a6e433bb076d487fee" ], [ { "id": "test2", "single_end": false }, - "test2.vcf.gz:md5,8b8ab4a675f01e437aa72e1438a717d0" + "test2.vcf.gz:md5,cf14200d683c17a6e433bb076d487fee" ] ], "1": [ @@ -173,14 +322,14 @@ "id": "test", "single_end": false }, - "test.vcf.gz.tbi:md5,0000833138104e87b05eaa906821eb21" + "test.vcf.gz.tbi:md5,e9bcd1d1f5280e0d76ed8fd31f27bd59" ], [ { "id": "test2", "single_end": false }, - "test2.vcf.gz.tbi:md5,0000833138104e87b05eaa906821eb21" + "test2.vcf.gz.tbi:md5,e9bcd1d1f5280e0d76ed8fd31f27bd59" ] ], "2": [ @@ -189,14 +338,14 @@ "id": "test", "single_end": false }, - "test.g.vcf.gz:md5,0a629e1745926cfcedf4b169046a921a" + "test.g.vcf.gz:md5,6251a87945e530ca61a989d7187d89dc" ], [ { "id": "test2", "single_end": false }, - "test2.g.vcf.gz:md5,0a629e1745926cfcedf4b169046a921a" + "test2.g.vcf.gz:md5,6251a87945e530ca61a989d7187d89dc" ] ], "3": [ @@ -205,20 +354,20 @@ "id": "test", "single_end": false }, - "test.g.vcf.gz.tbi:md5,49503913c28ec70a6f4aa52f6b357b4d" + "test.g.vcf.gz.tbi:md5,32ca0d6713b96ed4ce07c79421bb04a9" ], [ { "id": "test2", "single_end": false }, - "test2.g.vcf.gz.tbi:md5,49503913c28ec70a6f4aa52f6b357b4d" + "test2.g.vcf.gz.tbi:md5,32ca0d6713b96ed4ce07c79421bb04a9" ] ], "4": [ - "versions.yml:md5,5e6e7451f9819e2e0c33ad0d1b22d3b3", - "versions.yml:md5,c9c9c7000dc16bcb7e3107e7333481de", - "versions.yml:md5,cb2f0f2fe645633ed7d6528999bde458" + "versions.yml:md5,328e2f6462a2b9a5b4c291d2ea2acbae", + "versions.yml:md5,3ee8fb91cc070d641058839976671aa3", + "versions.yml:md5,c4510740784482ca098220df79ba3f3e" ], "gvcf": [ [ @@ -226,14 +375,14 @@ "id": "test", "single_end": false }, - "test.g.vcf.gz:md5,0a629e1745926cfcedf4b169046a921a" + "test.g.vcf.gz:md5,6251a87945e530ca61a989d7187d89dc" ], [ { "id": "test2", "single_end": false }, - "test2.g.vcf.gz:md5,0a629e1745926cfcedf4b169046a921a" + "test2.g.vcf.gz:md5,6251a87945e530ca61a989d7187d89dc" ] ], "gvcf_tbi": [ @@ -242,14 +391,14 @@ "id": "test", "single_end": false }, - "test.g.vcf.gz.tbi:md5,49503913c28ec70a6f4aa52f6b357b4d" + "test.g.vcf.gz.tbi:md5,32ca0d6713b96ed4ce07c79421bb04a9" ], [ { "id": "test2", "single_end": false }, - "test2.g.vcf.gz.tbi:md5,49503913c28ec70a6f4aa52f6b357b4d" + "test2.g.vcf.gz.tbi:md5,32ca0d6713b96ed4ce07c79421bb04a9" ] ], "vcf": [ @@ -258,14 +407,14 @@ "id": "test", "single_end": false }, - "test.vcf.gz:md5,8b8ab4a675f01e437aa72e1438a717d0" + "test.vcf.gz:md5,cf14200d683c17a6e433bb076d487fee" ], [ { "id": "test2", "single_end": false }, - "test2.vcf.gz:md5,8b8ab4a675f01e437aa72e1438a717d0" + "test2.vcf.gz:md5,cf14200d683c17a6e433bb076d487fee" ] ], "vcf_tbi": [ @@ -274,27 +423,27 @@ "id": "test", "single_end": false }, - "test.vcf.gz.tbi:md5,0000833138104e87b05eaa906821eb21" + "test.vcf.gz.tbi:md5,e9bcd1d1f5280e0d76ed8fd31f27bd59" ], [ { "id": "test2", "single_end": false }, - "test2.vcf.gz.tbi:md5,0000833138104e87b05eaa906821eb21" + "test2.vcf.gz.tbi:md5,e9bcd1d1f5280e0d76ed8fd31f27bd59" ] ], "versions": [ - "versions.yml:md5,5e6e7451f9819e2e0c33ad0d1b22d3b3", - "versions.yml:md5,c9c9c7000dc16bcb7e3107e7333481de", - "versions.yml:md5,cb2f0f2fe645633ed7d6528999bde458" + "versions.yml:md5,328e2f6462a2b9a5b4c291d2ea2acbae", + "versions.yml:md5,3ee8fb91cc070d641058839976671aa3", + "versions.yml:md5,c4510740784482ca098220df79ba3f3e" ] } ], "meta": { - "nf-test": "0.8.4", - "nextflow": "24.04.3" + "nf-test": "0.9.2", + "nextflow": "24.10.3" }, - "timestamp": "2024-08-16T16:18:03.021031138" + "timestamp": "2025-01-14T11:25:18.166014632" } } \ No newline at end of file diff --git a/subworkflows/nf-core/deepvariant/tests/nextflow.config b/subworkflows/nf-core/deepvariant/tests/nextflow.config index be9854791fb..ad76d4ec4fd 100644 --- a/subworkflows/nf-core/deepvariant/tests/nextflow.config +++ b/subworkflows/nf-core/deepvariant/tests/nextflow.config @@ -1,8 +1,14 @@ process { withName: "DEEPVARIANT_MAKEEXAMPLES" { - ext.args = '--channels "insert_size"' + ext.args = '--checkpoint "/opt/models/wgs" --call_small_model_examples --small_model_indel_gq_threshold "30" --small_model_snp_gq_threshold "25" --small_model_vaf_context_window_size "51" --trained_small_model_path "/opt/smallmodels/wgs"' } withName: "DEEPVARIANT_CALLVARIANTS" { ext.args = '--checkpoint "/opt/models/wgs"' } + + // This configures RUNDEEPVARIANT, which is used as a reference for the correct test output + withName: DEEPVARIANT_RUNDEEPVARIANT { + ext.args = '--model_type=WGS ' + ext.prefix = { "${meta.id}_out" } + } } From f1139432f654e4bd1ebd674861039ddb16150e9d Mon Sep 17 00:00:00 2001 From: Alexander Peltzer Date: Thu, 27 Feb 2025 10:34:39 +0100 Subject: [PATCH 2/3] Update blat to use ucsc-blat recipe(s) (#7519) * Update blat to use ucsc-blat recipe(s) * Adjust snapshots --- modules/nf-core/blat/environment.yml | 2 +- modules/nf-core/blat/main.nf | 4 ++-- modules/nf-core/blat/tests/main.nf.test.snap | 10 +++++----- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/modules/nf-core/blat/environment.yml b/modules/nf-core/blat/environment.yml index 03e1d42248d..be5a8d7d14c 100644 --- a/modules/nf-core/blat/environment.yml +++ b/modules/nf-core/blat/environment.yml @@ -4,4 +4,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::blat=36 + - bioconda::ucsc-blat=472 diff --git a/modules/nf-core/blat/main.nf b/modules/nf-core/blat/main.nf index ad7b7207045..9b9773a0f23 100644 --- a/modules/nf-core/blat/main.nf +++ b/modules/nf-core/blat/main.nf @@ -4,8 +4,8 @@ process BLAT { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/blat:36--0': - 'biocontainers/blat:36--0' }" + 'https://depot.galaxyproject.org/singularity/ucsc-blat:472--h9b8f530_0': + 'biocontainers/ucsc-blat:472--h664eb37_1' }" input: tuple val(meta) , path(query) diff --git a/modules/nf-core/blat/tests/main.nf.test.snap b/modules/nf-core/blat/tests/main.nf.test.snap index d46a3320a6e..2ed984f1daa 100644 --- a/modules/nf-core/blat/tests/main.nf.test.snap +++ b/modules/nf-core/blat/tests/main.nf.test.snap @@ -12,7 +12,7 @@ ] ], "1": [ - "versions.yml:md5,d9cde833b3f9cf6d359ef0f8a119380a" + "versions.yml:md5,966f3e3f6584821f0394b815a2b42d84" ], "psl": [ [ @@ -24,7 +24,7 @@ ] ], "versions": [ - "versions.yml:md5,d9cde833b3f9cf6d359ef0f8a119380a" + "versions.yml:md5,966f3e3f6584821f0394b815a2b42d84" ] } ], @@ -47,7 +47,7 @@ ] ], "1": [ - "versions.yml:md5,d9cde833b3f9cf6d359ef0f8a119380a" + "versions.yml:md5,966f3e3f6584821f0394b815a2b42d84" ], "psl": [ [ @@ -59,7 +59,7 @@ ] ], "versions": [ - "versions.yml:md5,d9cde833b3f9cf6d359ef0f8a119380a" + "versions.yml:md5,966f3e3f6584821f0394b815a2b42d84" ] } ], @@ -69,4 +69,4 @@ }, "timestamp": "2024-09-06T20:38:09.736595" } -} \ No newline at end of file +} From dd32ce5a1e5e16d56510768d027c36f0660ee2b8 Mon Sep 17 00:00:00 2001 From: Alexander Peltzer Date: Thu, 27 Feb 2025 11:44:01 +0100 Subject: [PATCH 3/3] Update all bbmap modules: Seqera Containers + latest version + snapshots (#7520) * BBMAP updates * Make the container urls correct * Four tests more * Some more snapshots updated * Fix tests * Fix singularity uris --- modules/nf-core/bbmap/align/environment.yml | 6 +-- modules/nf-core/bbmap/align/main.nf | 4 +- .../bbmap/align/tests/main.nf.test.snap | 12 +++--- modules/nf-core/bbmap/bbduk/environment.yml | 2 +- modules/nf-core/bbmap/bbduk/main.nf | 4 +- .../bbmap/bbduk/tests/main.nf.test.snap | 18 ++++----- modules/nf-core/bbmap/bbmerge/environment.yml | 2 +- modules/nf-core/bbmap/bbmerge/main.nf | 4 +- .../bbmap/bbmerge/tests/main.nf.test.snap | 14 +++---- modules/nf-core/bbmap/bbnorm/environment.yml | 4 +- modules/nf-core/bbmap/bbnorm/main.nf | 5 +-- .../bbmap/bbnorm/tests/main.nf.test.snap | 12 +++--- modules/nf-core/bbmap/bbsplit/environment.yml | 2 +- modules/nf-core/bbmap/bbsplit/main.nf | 4 +- .../bbmap/bbsplit/tests/main.nf.test.snap | 38 +++++++++---------- .../nf-core/bbmap/clumpify/environment.yml | 2 +- modules/nf-core/bbmap/clumpify/main.nf | 4 +- .../bbmap/clumpify/tests/main.nf.test.snap | 6 +-- .../bbmap/filterbyname/environment.yml | 2 +- modules/nf-core/bbmap/filterbyname/main.nf | 4 +- .../filterbyname/tests/main.nf.test.snap | 20 +++++----- modules/nf-core/bbmap/index/environment.yml | 2 +- modules/nf-core/bbmap/index/main.nf | 4 +- .../bbmap/index/tests/main.nf.test.snap | 4 +- modules/nf-core/bbmap/pileup/environment.yml | 6 +-- modules/nf-core/bbmap/pileup/main.nf | 4 +- .../bbmap/pileup/tests/main.nf.test.snap | 6 +-- modules/nf-core/bbmap/repair/environment.yml | 2 +- modules/nf-core/bbmap/repair/main.nf | 4 +- .../bbmap/repair/tests/main.nf.test.snap | 14 +++---- .../nf-core/bbmap/sendsketch/environment.yml | 2 +- modules/nf-core/bbmap/sendsketch/main.nf | 4 +- .../bbmap/sendsketch/tests/main.nf.test.snap | 6 +-- 33 files changed, 113 insertions(+), 114 deletions(-) diff --git a/modules/nf-core/bbmap/align/environment.yml b/modules/nf-core/bbmap/align/environment.yml index 977fb4ba4a4..3a85a9f417c 100644 --- a/modules/nf-core/bbmap/align/environment.yml +++ b/modules/nf-core/bbmap/align/environment.yml @@ -4,6 +4,6 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::bbmap=39.01 - - bioconda::samtools=1.16.1 - - pigz=2.6 + - bioconda::bbmap=39.17 + - bioconda::samtools=1.21 + - pigz=2.8 diff --git a/modules/nf-core/bbmap/align/main.nf b/modules/nf-core/bbmap/align/main.nf index c4e7acf7bde..2191d307325 100644 --- a/modules/nf-core/bbmap/align/main.nf +++ b/modules/nf-core/bbmap/align/main.nf @@ -4,8 +4,8 @@ process BBMAP_ALIGN { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/mulled-v2-008daec56b7aaf3f162d7866758142b9f889d690:e8a286b2e789c091bac0a57302cdc78aa0112353-0' : - 'biocontainers/mulled-v2-008daec56b7aaf3f162d7866758142b9f889d690:e8a286b2e789c091bac0a57302cdc78aa0112353-0' }" + 'oras://community.wave.seqera.io/library/bbmap_samtools_pigz:2a066f0214cc5eb0' : + 'community.wave.seqera.io/library/bbmap_samtools_pigz:79703e935236b43b' }" input: tuple val(meta), path(fastq) diff --git a/modules/nf-core/bbmap/align/tests/main.nf.test.snap b/modules/nf-core/bbmap/align/tests/main.nf.test.snap index 2423ad444e3..9580cbc484d 100644 --- a/modules/nf-core/bbmap/align/tests/main.nf.test.snap +++ b/modules/nf-core/bbmap/align/tests/main.nf.test.snap @@ -6,7 +6,7 @@ "c17efa4ccc4e9018090792c71af92660" ], [ - "versions.yml:md5,7c9a1c72ae9ea9c54b7518e96f8f89bb" + "versions.yml:md5,87adfd2a4838916a43a45f15b30df5e7" ] ], "meta": { @@ -22,7 +22,7 @@ "88d78879c34214288644aec7ec3cb270" ], [ - "versions.yml:md5,7c9a1c72ae9ea9c54b7518e96f8f89bb" + "versions.yml:md5,87adfd2a4838916a43a45f15b30df5e7" ] ], "meta": { @@ -38,7 +38,7 @@ "88d78879c34214288644aec7ec3cb270" ], [ - "versions.yml:md5,7c9a1c72ae9ea9c54b7518e96f8f89bb" + "versions.yml:md5,87adfd2a4838916a43a45f15b30df5e7" ] ], "meta": { @@ -54,7 +54,7 @@ "88d78879c34214288644aec7ec3cb270" ], [ - "versions.yml:md5,7c9a1c72ae9ea9c54b7518e96f8f89bb" + "versions.yml:md5,87adfd2a4838916a43a45f15b30df5e7" ] ], "meta": { @@ -70,7 +70,7 @@ "d41d8cd98f00b204e9800998ecf8427e" ], [ - "versions.yml:md5,7c9a1c72ae9ea9c54b7518e96f8f89bb" + "versions.yml:md5,87adfd2a4838916a43a45f15b30df5e7" ] ], "meta": { @@ -79,4 +79,4 @@ }, "timestamp": "2025-01-08T21:06:47.377762689" } -} \ No newline at end of file +} diff --git a/modules/nf-core/bbmap/bbduk/environment.yml b/modules/nf-core/bbmap/bbduk/environment.yml index f76f417a31b..fcb70a806cb 100644 --- a/modules/nf-core/bbmap/bbduk/environment.yml +++ b/modules/nf-core/bbmap/bbduk/environment.yml @@ -4,4 +4,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::bbmap=39.10 + - bioconda::bbmap=39.17 diff --git a/modules/nf-core/bbmap/bbduk/main.nf b/modules/nf-core/bbmap/bbduk/main.nf index 00bbdedad0e..5a945a3c10c 100644 --- a/modules/nf-core/bbmap/bbduk/main.nf +++ b/modules/nf-core/bbmap/bbduk/main.nf @@ -4,8 +4,8 @@ process BBMAP_BBDUK { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/bbmap:39.10--h92535d8_0': - 'biocontainers/bbmap:39.10--h92535d8_0' }" + 'https://depot.galaxyproject.org/singularity/bbmap:39.17--he5f24ec_0': + 'biocontainers/bbmap:39.17--he5f24ec_0' }" input: tuple val(meta), path(reads) diff --git a/modules/nf-core/bbmap/bbduk/tests/main.nf.test.snap b/modules/nf-core/bbmap/bbduk/tests/main.nf.test.snap index 258593ee872..a610ffa3701 100644 --- a/modules/nf-core/bbmap/bbduk/tests/main.nf.test.snap +++ b/modules/nf-core/bbmap/bbduk/tests/main.nf.test.snap @@ -14,7 +14,7 @@ ] ], [ - "versions.yml:md5,6d196411d38a3c3011a38e1a87c9203c" + "versions.yml:md5,9be1a40778615e00c3d8c615ced9f78e" ] ], "meta": { @@ -26,7 +26,7 @@ "sarscov2 - single end w/ contams [fastq,fasta] - fastq": { "content": [ [ - "versions.yml:md5,6d196411d38a3c3011a38e1a87c9203c" + "versions.yml:md5,9be1a40778615e00c3d8c615ced9f78e" ] ], "meta": { @@ -38,7 +38,7 @@ "sarscov2 - paired end w/ contams [fastq,fasta] - fastq": { "content": [ [ - "versions.yml:md5,6d196411d38a3c3011a38e1a87c9203c" + "versions.yml:md5,9be1a40778615e00c3d8c615ced9f78e" ] ], "meta": { @@ -72,7 +72,7 @@ ] ], "2": [ - "versions.yml:md5,6d196411d38a3c3011a38e1a87c9203c" + "versions.yml:md5,9be1a40778615e00c3d8c615ced9f78e" ], "log": [ [ @@ -96,7 +96,7 @@ ] ], "versions": [ - "versions.yml:md5,6d196411d38a3c3011a38e1a87c9203c" + "versions.yml:md5,9be1a40778615e00c3d8c615ced9f78e" ] } ], @@ -128,7 +128,7 @@ ] ], "2": [ - "versions.yml:md5,6d196411d38a3c3011a38e1a87c9203c" + "versions.yml:md5,9be1a40778615e00c3d8c615ced9f78e" ], "log": [ [ @@ -149,7 +149,7 @@ ] ], "versions": [ - "versions.yml:md5,6d196411d38a3c3011a38e1a87c9203c" + "versions.yml:md5,9be1a40778615e00c3d8c615ced9f78e" ] } ], @@ -171,7 +171,7 @@ ] ], [ - "versions.yml:md5,6d196411d38a3c3011a38e1a87c9203c" + "versions.yml:md5,9be1a40778615e00c3d8c615ced9f78e" ] ], "meta": { @@ -180,4 +180,4 @@ }, "timestamp": "2024-10-19T15:58:00.420305019" } -} \ No newline at end of file +} diff --git a/modules/nf-core/bbmap/bbmerge/environment.yml b/modules/nf-core/bbmap/bbmerge/environment.yml index f76f417a31b..fcb70a806cb 100644 --- a/modules/nf-core/bbmap/bbmerge/environment.yml +++ b/modules/nf-core/bbmap/bbmerge/environment.yml @@ -4,4 +4,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::bbmap=39.10 + - bioconda::bbmap=39.17 diff --git a/modules/nf-core/bbmap/bbmerge/main.nf b/modules/nf-core/bbmap/bbmerge/main.nf index 12cdd456805..b815e76552a 100644 --- a/modules/nf-core/bbmap/bbmerge/main.nf +++ b/modules/nf-core/bbmap/bbmerge/main.nf @@ -3,8 +3,8 @@ process BBMAP_BBMERGE { label 'process_single' conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/bbmap:39.10--h92535d8_0': - 'biocontainers/bbmap:39.10--h92535d8_0' }" + 'https://depot.galaxyproject.org/singularity/bbmap:39.17--he5f24ec_0': + 'biocontainers/bbmap:39.17--he5f24ec_0' }" input: tuple val(meta), path(reads) diff --git a/modules/nf-core/bbmap/bbmerge/tests/main.nf.test.snap b/modules/nf-core/bbmap/bbmerge/tests/main.nf.test.snap index d1b87f25824..3ae12f13996 100644 --- a/modules/nf-core/bbmap/bbmerge/tests/main.nf.test.snap +++ b/modules/nf-core/bbmap/bbmerge/tests/main.nf.test.snap @@ -2,7 +2,7 @@ "sarscov2_illumina_paired - fastq_gz": { "content": [ [ - "versions.yml:md5,d1f2c86a17024502b3f189ffc0f9dca2" + "versions.yml:md5,028b993458a013e6c60a5bba4a0a3be5" ] ], "meta": { @@ -42,7 +42,7 @@ ] ], "3": [ - "versions.yml:md5,d1f2c86a17024502b3f189ffc0f9dca2" + "versions.yml:md5,028b993458a013e6c60a5bba4a0a3be5" ], "4": [ "test.bbmerge.log:md5,d41d8cd98f00b204e9800998ecf8427e" @@ -78,7 +78,7 @@ ] ], "versions": [ - "versions.yml:md5,d1f2c86a17024502b3f189ffc0f9dca2" + "versions.yml:md5,028b993458a013e6c60a5bba4a0a3be5" ] } ], @@ -91,7 +91,7 @@ "sarscov2_illumina_interleaved - fastq_gz": { "content": [ [ - "versions.yml:md5,d1f2c86a17024502b3f189ffc0f9dca2" + "versions.yml:md5,028b993458a013e6c60a5bba4a0a3be5" ] ], "meta": { @@ -134,7 +134,7 @@ ] ], "3": [ - "versions.yml:md5,d1f2c86a17024502b3f189ffc0f9dca2" + "versions.yml:md5,028b993458a013e6c60a5bba4a0a3be5" ], "4": [ "test.bbmerge.log:md5,d41d8cd98f00b204e9800998ecf8427e" @@ -173,7 +173,7 @@ ] ], "versions": [ - "versions.yml:md5,d1f2c86a17024502b3f189ffc0f9dca2" + "versions.yml:md5,028b993458a013e6c60a5bba4a0a3be5" ] } ], @@ -183,4 +183,4 @@ }, "timestamp": "2024-10-19T16:01:24.272511838" } -} \ No newline at end of file +} diff --git a/modules/nf-core/bbmap/bbnorm/environment.yml b/modules/nf-core/bbmap/bbnorm/environment.yml index 5dfe793f98e..3f77ff21af7 100644 --- a/modules/nf-core/bbmap/bbnorm/environment.yml +++ b/modules/nf-core/bbmap/bbnorm/environment.yml @@ -4,5 +4,5 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::bbmap=39.01 - - pigz=2.6 + - bioconda::bbmap=39.17 + - pigz=2.8 diff --git a/modules/nf-core/bbmap/bbnorm/main.nf b/modules/nf-core/bbmap/bbnorm/main.nf index 1cac93de0b7..d56e5c46168 100644 --- a/modules/nf-core/bbmap/bbnorm/main.nf +++ b/modules/nf-core/bbmap/bbnorm/main.nf @@ -4,9 +4,8 @@ process BBMAP_BBNORM { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/mulled-v2-008daec56b7aaf3f162d7866758142b9f889d690:e8a286b2e789c091bac0a57302cdc78aa0112353-0': - 'biocontainers/mulled-v2-008daec56b7aaf3f162d7866758142b9f889d690:e8a286b2e789c091bac0a57302cdc78aa0112353-0' }" - + 'oras://community.wave.seqera.io/library/bbmap_samtools_pigz:2a066f0214cc5eb0' : + 'community.wave.seqera.io/library/bbmap_samtools_pigz:79703e935236b43b' }" input: tuple val(meta), path(fastq) diff --git a/modules/nf-core/bbmap/bbnorm/tests/main.nf.test.snap b/modules/nf-core/bbmap/bbnorm/tests/main.nf.test.snap index 1d7b2438abd..f124e7fc51c 100644 --- a/modules/nf-core/bbmap/bbnorm/tests/main.nf.test.snap +++ b/modules/nf-core/bbmap/bbnorm/tests/main.nf.test.snap @@ -10,7 +10,7 @@ ], "test.bbnorm.log", [ - "versions.yml:md5,90b331a3702d052d61e0a14189e3fc01" + "versions.yml:md5,1aee8175e324cb47f12450f2fae2b7c2" ] ], "meta": { @@ -30,7 +30,7 @@ ], "test.bbnorm.log", [ - "versions.yml:md5,90b331a3702d052d61e0a14189e3fc01" + "versions.yml:md5,1aee8175e324cb47f12450f2fae2b7c2" ] ], "meta": { @@ -53,7 +53,7 @@ ], "test.bbnorm.log", [ - "versions.yml:md5,90b331a3702d052d61e0a14189e3fc01" + "versions.yml:md5,1aee8175e324cb47f12450f2fae2b7c2" ] ], "meta": { @@ -65,11 +65,11 @@ "test-bbmap-bbnorm-se": { "content": [ [ - + ], "test.bbnorm.log", [ - "versions.yml:md5,90b331a3702d052d61e0a14189e3fc01" + "versions.yml:md5,1aee8175e324cb47f12450f2fae2b7c2" ] ], "meta": { @@ -78,4 +78,4 @@ }, "timestamp": "2024-08-26T14:59:16.676091" } -} \ No newline at end of file +} diff --git a/modules/nf-core/bbmap/bbsplit/environment.yml b/modules/nf-core/bbmap/bbsplit/environment.yml index f76f417a31b..fcb70a806cb 100644 --- a/modules/nf-core/bbmap/bbsplit/environment.yml +++ b/modules/nf-core/bbmap/bbsplit/environment.yml @@ -4,4 +4,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::bbmap=39.10 + - bioconda::bbmap=39.17 diff --git a/modules/nf-core/bbmap/bbsplit/main.nf b/modules/nf-core/bbmap/bbsplit/main.nf index 9eb53208c4d..99c18eaa539 100644 --- a/modules/nf-core/bbmap/bbsplit/main.nf +++ b/modules/nf-core/bbmap/bbsplit/main.nf @@ -5,8 +5,8 @@ process BBMAP_BBSPLIT { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/bbmap:39.10--h92535d8_0': - 'biocontainers/bbmap:39.10--h92535d8_0' }" + 'https://depot.galaxyproject.org/singularity/bbmap:39.17--he5f24ec_0': + 'biocontainers/bbmap:39.17--he5f24ec_0' }" input: tuple val(meta), path(reads) diff --git a/modules/nf-core/bbmap/bbsplit/tests/main.nf.test.snap b/modules/nf-core/bbmap/bbsplit/tests/main.nf.test.snap index 6bdc3c0d1e9..4df7b69b7a9 100644 --- a/modules/nf-core/bbmap/bbsplit/tests/main.nf.test.snap +++ b/modules/nf-core/bbmap/bbsplit/tests/main.nf.test.snap @@ -9,7 +9,7 @@ "namelist.txt:md5,45e7a4cdc7a11a39ada56844ca3a1e30" ], [ - "versions.yml:md5,97dfea8bc38fdb0ec800ee936e0c6e27" + "versions.yml:md5,0eaa29e412ac44532bebff0f4f4235f9" ] ], "meta": { @@ -21,7 +21,7 @@ "sarscov2_se_fastq_fasta_chr22_fasta - index": { "content": [ [ - "versions.yml:md5,97dfea8bc38fdb0ec800ee936e0c6e27" + "versions.yml:md5,0eaa29e412ac44532bebff0f4f4235f9" ] ], "meta": { @@ -35,53 +35,53 @@ { "0": [ [ - + ] ], "1": [ - + ], "2": [ - + ], "3": [ - + ], "4": [ [ { - + }, "null.log:md5,d41d8cd98f00b204e9800998ecf8427e" ] ], "5": [ - "versions.yml:md5,97dfea8bc38fdb0ec800ee936e0c6e27" + "versions.yml:md5,0eaa29e412ac44532bebff0f4f4235f9" ], "all_fastq": [ - + ], "index": [ [ - + ] ], "log": [ [ { - + }, "null.log:md5,d41d8cd98f00b204e9800998ecf8427e" ] ], "primary_fastq": [ - + ], "stats": [ - + ], "versions": [ - "versions.yml:md5,97dfea8bc38fdb0ec800ee936e0c6e27" + "versions.yml:md5,0eaa29e412ac44532bebff0f4f4235f9" ] } ], @@ -96,7 +96,7 @@ { "0": [ [ - + ] ], "1": [ @@ -139,7 +139,7 @@ ] ], "5": [ - "versions.yml:md5,97dfea8bc38fdb0ec800ee936e0c6e27" + "versions.yml:md5,0eaa29e412ac44532bebff0f4f4235f9" ], "all_fastq": [ [ @@ -155,7 +155,7 @@ ], "index": [ [ - + ] ], "log": [ @@ -186,7 +186,7 @@ ] ], "versions": [ - "versions.yml:md5,97dfea8bc38fdb0ec800ee936e0c6e27" + "versions.yml:md5,0eaa29e412ac44532bebff0f4f4235f9" ] } ], @@ -196,4 +196,4 @@ }, "timestamp": "2024-10-19T16:04:18.416324262" } -} \ No newline at end of file +} diff --git a/modules/nf-core/bbmap/clumpify/environment.yml b/modules/nf-core/bbmap/clumpify/environment.yml index f76f417a31b..fcb70a806cb 100644 --- a/modules/nf-core/bbmap/clumpify/environment.yml +++ b/modules/nf-core/bbmap/clumpify/environment.yml @@ -4,4 +4,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::bbmap=39.10 + - bioconda::bbmap=39.17 diff --git a/modules/nf-core/bbmap/clumpify/main.nf b/modules/nf-core/bbmap/clumpify/main.nf index fc6a85ad635..a11a82ab059 100644 --- a/modules/nf-core/bbmap/clumpify/main.nf +++ b/modules/nf-core/bbmap/clumpify/main.nf @@ -5,8 +5,8 @@ process BBMAP_CLUMPIFY { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/bbmap:39.10--h92535d8_0': - 'biocontainers/bbmap:39.10--h92535d8_0' }" + 'https://depot.galaxyproject.org/singularity/bbmap:39.17--he5f24ec_0': + 'biocontainers/bbmap:39.17--he5f24ec_0' }" input: tuple val(meta), path(reads) diff --git a/modules/nf-core/bbmap/clumpify/tests/main.nf.test.snap b/modules/nf-core/bbmap/clumpify/tests/main.nf.test.snap index e84c345f4b2..a5c8ae59a10 100644 --- a/modules/nf-core/bbmap/clumpify/tests/main.nf.test.snap +++ b/modules/nf-core/bbmap/clumpify/tests/main.nf.test.snap @@ -15,7 +15,7 @@ ], "test.clumpify.log", [ - "versions.yml:md5,fdf0404f694fca43bcf9be6458d927cd" + "versions.yml:md5,91b47f212a43c3b0072ed764c5292ebd" ] ], "meta": { @@ -37,7 +37,7 @@ ], "test.clumpify.log", [ - "versions.yml:md5,fdf0404f694fca43bcf9be6458d927cd" + "versions.yml:md5,91b47f212a43c3b0072ed764c5292ebd" ] ], "meta": { @@ -46,4 +46,4 @@ }, "timestamp": "2024-10-19T16:16:36.9005326" } -} \ No newline at end of file +} diff --git a/modules/nf-core/bbmap/filterbyname/environment.yml b/modules/nf-core/bbmap/filterbyname/environment.yml index f76f417a31b..fcb70a806cb 100644 --- a/modules/nf-core/bbmap/filterbyname/environment.yml +++ b/modules/nf-core/bbmap/filterbyname/environment.yml @@ -4,4 +4,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::bbmap=39.10 + - bioconda::bbmap=39.17 diff --git a/modules/nf-core/bbmap/filterbyname/main.nf b/modules/nf-core/bbmap/filterbyname/main.nf index 4c6af276ceb..301fe36f706 100644 --- a/modules/nf-core/bbmap/filterbyname/main.nf +++ b/modules/nf-core/bbmap/filterbyname/main.nf @@ -4,8 +4,8 @@ process BBMAP_FILTERBYNAME { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/bbmap:39.10--h92535d8_0': - 'biocontainers/bbmap:39.10--h92535d8_0' }" + 'https://depot.galaxyproject.org/singularity/bbmap:39.17--he5f24ec_0': + 'biocontainers/bbmap:39.17--he5f24ec_0' }" input: tuple val(meta), path(reads) diff --git a/modules/nf-core/bbmap/filterbyname/tests/main.nf.test.snap b/modules/nf-core/bbmap/filterbyname/tests/main.nf.test.snap index 112727a5954..96ed0c028b1 100644 --- a/modules/nf-core/bbmap/filterbyname/tests/main.nf.test.snap +++ b/modules/nf-core/bbmap/filterbyname/tests/main.nf.test.snap @@ -2,7 +2,7 @@ "single end fasta": { "content": [ [ - "versions.yml:md5,4f45a3a8235bcc917fb8da60c3b537ea" + "versions.yml:md5,a5fb79be6b0878f2c78c4b4717ab3021" ] ], "meta": { @@ -14,7 +14,7 @@ "paired end fastq.bz2": { "content": [ [ - "versions.yml:md5,4f45a3a8235bcc917fb8da60c3b537ea" + "versions.yml:md5,a5fb79be6b0878f2c78c4b4717ab3021" ] ], "meta": { @@ -48,7 +48,7 @@ ] ], "2": [ - "versions.yml:md5,4f45a3a8235bcc917fb8da60c3b537ea" + "versions.yml:md5,a5fb79be6b0878f2c78c4b4717ab3021" ], "log": [ [ @@ -72,7 +72,7 @@ ] ], "versions": [ - "versions.yml:md5,4f45a3a8235bcc917fb8da60c3b537ea" + "versions.yml:md5,a5fb79be6b0878f2c78c4b4717ab3021" ] } ], @@ -85,7 +85,7 @@ "single end fastq.gz filter": { "content": [ [ - "versions.yml:md5,4f45a3a8235bcc917fb8da60c3b537ea" + "versions.yml:md5,a5fb79be6b0878f2c78c4b4717ab3021" ] ], "meta": { @@ -97,7 +97,7 @@ "single end fastq.gz - stub": { "content": [ [ - "versions.yml:md5,4f45a3a8235bcc917fb8da60c3b537ea" + "versions.yml:md5,a5fb79be6b0878f2c78c4b4717ab3021" ] ], "meta": { @@ -109,7 +109,7 @@ "paired end fastq.gz filter interleaved - stub": { "content": [ [ - "versions.yml:md5,4f45a3a8235bcc917fb8da60c3b537ea" + "versions.yml:md5,a5fb79be6b0878f2c78c4b4717ab3021" ] ], "meta": { @@ -121,7 +121,7 @@ "single end fasta - stub": { "content": [ [ - "versions.yml:md5,4f45a3a8235bcc917fb8da60c3b537ea" + "versions.yml:md5,a5fb79be6b0878f2c78c4b4717ab3021" ] ], "meta": { @@ -133,7 +133,7 @@ "paired end fastq.gz filter interleaved": { "content": [ [ - "versions.yml:md5,4f45a3a8235bcc917fb8da60c3b537ea" + "versions.yml:md5,a5fb79be6b0878f2c78c4b4717ab3021" ] ], "meta": { @@ -142,4 +142,4 @@ }, "timestamp": "2024-10-19T16:09:12.559280858" } -} \ No newline at end of file +} diff --git a/modules/nf-core/bbmap/index/environment.yml b/modules/nf-core/bbmap/index/environment.yml index f76f417a31b..fcb70a806cb 100644 --- a/modules/nf-core/bbmap/index/environment.yml +++ b/modules/nf-core/bbmap/index/environment.yml @@ -4,4 +4,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::bbmap=39.10 + - bioconda::bbmap=39.17 diff --git a/modules/nf-core/bbmap/index/main.nf b/modules/nf-core/bbmap/index/main.nf index e7b3eb113e5..e90ac824579 100644 --- a/modules/nf-core/bbmap/index/main.nf +++ b/modules/nf-core/bbmap/index/main.nf @@ -4,8 +4,8 @@ process BBMAP_INDEX { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/bbmap:39.10--h92535d8_0': - 'biocontainers/bbmap:39.10--h92535d8_0' }" + 'https://depot.galaxyproject.org/singularity/bbmap:39.17--he5f24ec_0': + 'biocontainers/bbmap:39.17--he5f24ec_0' }" input: path fasta diff --git a/modules/nf-core/bbmap/index/tests/main.nf.test.snap b/modules/nf-core/bbmap/index/tests/main.nf.test.snap index 3edd5b39563..a48ed628c19 100644 --- a/modules/nf-core/bbmap/index/tests/main.nf.test.snap +++ b/modules/nf-core/bbmap/index/tests/main.nf.test.snap @@ -12,7 +12,7 @@ [ "chr1_index_k13_c15_b1.block:md5,9f0d9a7413c1d2c16cc24555b2381163" ], - "versions.yml:md5,27981a0e7a64f63d28c9d7e27f5fde1b" + "versions.yml:md5,9caf6412abfedfdd66efd55e8f9eacc2" ], "meta": { "nf-test": "0.9.0", @@ -20,4 +20,4 @@ }, "timestamp": "2024-10-19T16:10:24.122799573" } -} \ No newline at end of file +} diff --git a/modules/nf-core/bbmap/pileup/environment.yml b/modules/nf-core/bbmap/pileup/environment.yml index 977fb4ba4a4..3a85a9f417c 100644 --- a/modules/nf-core/bbmap/pileup/environment.yml +++ b/modules/nf-core/bbmap/pileup/environment.yml @@ -4,6 +4,6 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::bbmap=39.01 - - bioconda::samtools=1.16.1 - - pigz=2.6 + - bioconda::bbmap=39.17 + - bioconda::samtools=1.21 + - pigz=2.8 diff --git a/modules/nf-core/bbmap/pileup/main.nf b/modules/nf-core/bbmap/pileup/main.nf index 6f3b1aa7a60..f498805dc1b 100644 --- a/modules/nf-core/bbmap/pileup/main.nf +++ b/modules/nf-core/bbmap/pileup/main.nf @@ -4,8 +4,8 @@ process BBMAP_PILEUP { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/mulled-v2-008daec56b7aaf3f162d7866758142b9f889d690:e8a286b2e789c091bac0a57302cdc78aa0112353-0' : - 'biocontainers/mulled-v2-008daec56b7aaf3f162d7866758142b9f889d690:e8a286b2e789c091bac0a57302cdc78aa0112353-0' }" + 'oras://community.wave.seqera.io/library/bbmap_samtools_pigz:2a066f0214cc5eb0' : + 'community.wave.seqera.io/library/bbmap_samtools_pigz:79703e935236b43b' }" input: tuple val(meta), path(bam) diff --git a/modules/nf-core/bbmap/pileup/tests/main.nf.test.snap b/modules/nf-core/bbmap/pileup/tests/main.nf.test.snap index f5e7e720d02..0e0d9467465 100644 --- a/modules/nf-core/bbmap/pileup/tests/main.nf.test.snap +++ b/modules/nf-core/bbmap/pileup/tests/main.nf.test.snap @@ -21,7 +21,7 @@ ] ], "2": [ - "versions.yml:md5,e293e3ed6387ce89f3443050f36fb079" + "versions.yml:md5,7daa294edab33a8ed9355c9eabda91c0" ], "covstats": [ [ @@ -42,7 +42,7 @@ ] ], "versions": [ - "versions.yml:md5,e293e3ed6387ce89f3443050f36fb079" + "versions.yml:md5,7daa294edab33a8ed9355c9eabda91c0" ] } ], @@ -52,4 +52,4 @@ }, "timestamp": "2024-08-26T14:33:48.464105" } -} \ No newline at end of file +} diff --git a/modules/nf-core/bbmap/repair/environment.yml b/modules/nf-core/bbmap/repair/environment.yml index b609e090138..fcb70a806cb 100644 --- a/modules/nf-core/bbmap/repair/environment.yml +++ b/modules/nf-core/bbmap/repair/environment.yml @@ -4,4 +4,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::bbmap=39.13 + - bioconda::bbmap=39.17 diff --git a/modules/nf-core/bbmap/repair/main.nf b/modules/nf-core/bbmap/repair/main.nf index ec868fa7270..d97474b3965 100644 --- a/modules/nf-core/bbmap/repair/main.nf +++ b/modules/nf-core/bbmap/repair/main.nf @@ -3,8 +3,8 @@ process BBMAP_REPAIR { label 'process_single' conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/bbmap:39.13--he5f24ec_1': - 'biocontainers/bbmap:39.13--he5f24ec_1' }" + 'https://depot.galaxyproject.org/singularity/bbmap:39.17--he5f24ec_0': + 'biocontainers/bbmap:39.17--he5f24ec_0' }" input: tuple val(meta), path(reads) diff --git a/modules/nf-core/bbmap/repair/tests/main.nf.test.snap b/modules/nf-core/bbmap/repair/tests/main.nf.test.snap index d10edaf13aa..961d2a125fc 100644 --- a/modules/nf-core/bbmap/repair/tests/main.nf.test.snap +++ b/modules/nf-core/bbmap/repair/tests/main.nf.test.snap @@ -2,7 +2,7 @@ "sarscov2_illumina_paired - fastq_gz": { "content": [ [ - "versions.yml:md5,71de954cc3b49c64d7bd86ed82d3e892" + "versions.yml:md5,5c3df6c301609fdd4c9bc4330697bce8" ] ], "meta": { @@ -36,7 +36,7 @@ ] ], "2": [ - "versions.yml:md5,71de954cc3b49c64d7bd86ed82d3e892" + "versions.yml:md5,5c3df6c301609fdd4c9bc4330697bce8" ], "3": [ "test.repair.sh.log:md5,d41d8cd98f00b204e9800998ecf8427e" @@ -66,7 +66,7 @@ ] ], "versions": [ - "versions.yml:md5,71de954cc3b49c64d7bd86ed82d3e892" + "versions.yml:md5,5c3df6c301609fdd4c9bc4330697bce8" ] } ], @@ -79,7 +79,7 @@ "sarscov2_illumina_interleaved - fastq_gz": { "content": [ [ - "versions.yml:md5,71de954cc3b49c64d7bd86ed82d3e892" + "versions.yml:md5,5c3df6c301609fdd4c9bc4330697bce8" ] ], "meta": { @@ -113,7 +113,7 @@ ] ], "2": [ - "versions.yml:md5,71de954cc3b49c64d7bd86ed82d3e892" + "versions.yml:md5,5c3df6c301609fdd4c9bc4330697bce8" ], "3": [ "test.repair.sh.log:md5,d41d8cd98f00b204e9800998ecf8427e" @@ -143,7 +143,7 @@ ] ], "versions": [ - "versions.yml:md5,71de954cc3b49c64d7bd86ed82d3e892" + "versions.yml:md5,5c3df6c301609fdd4c9bc4330697bce8" ] } ], @@ -153,4 +153,4 @@ }, "timestamp": "2025-01-18T18:32:28.275703" } -} \ No newline at end of file +} diff --git a/modules/nf-core/bbmap/sendsketch/environment.yml b/modules/nf-core/bbmap/sendsketch/environment.yml index f76f417a31b..fcb70a806cb 100644 --- a/modules/nf-core/bbmap/sendsketch/environment.yml +++ b/modules/nf-core/bbmap/sendsketch/environment.yml @@ -4,4 +4,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::bbmap=39.10 + - bioconda::bbmap=39.17 diff --git a/modules/nf-core/bbmap/sendsketch/main.nf b/modules/nf-core/bbmap/sendsketch/main.nf index 5b3a2668a72..0cb1bddb197 100644 --- a/modules/nf-core/bbmap/sendsketch/main.nf +++ b/modules/nf-core/bbmap/sendsketch/main.nf @@ -4,8 +4,8 @@ process BBMAP_SENDSKETCH { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/bbmap:39.10--h92535d8_0': - 'biocontainers/bbmap:39.10--h92535d8_0' }" + 'https://depot.galaxyproject.org/singularity/bbmap:39.17--he5f24ec_0': + 'biocontainers/bbmap:39.17--he5f24ec_0' }" input: tuple val(meta), path(file) diff --git a/modules/nf-core/bbmap/sendsketch/tests/main.nf.test.snap b/modules/nf-core/bbmap/sendsketch/tests/main.nf.test.snap index a8d2d31d78b..7bfdb04adab 100644 --- a/modules/nf-core/bbmap/sendsketch/tests/main.nf.test.snap +++ b/modules/nf-core/bbmap/sendsketch/tests/main.nf.test.snap @@ -9,7 +9,7 @@ "6.70%\t0.02%\t90.53%\t.\t0.34%\t4.10%\t36\t0\t9595\t2355M\t5730\tGorilla gorilla gorilla" ], [ - "versions.yml:md5,b590a08d261d92fd52e75600c1df0447" + "versions.yml:md5,d70158bc20448fb2181f0363f5dd3d3d" ] ], "meta": { @@ -28,7 +28,7 @@ "5.56%\t0.01%\t89.72%\t.\t0.12%\t5.56%\t3\t0\t9523\t29749K\t44\tPlecturocebus moloch" ], [ - "versions.yml:md5,b590a08d261d92fd52e75600c1df0447" + "versions.yml:md5,d70158bc20448fb2181f0363f5dd3d3d" ] ], "meta": { @@ -37,4 +37,4 @@ }, "timestamp": "2024-10-19T16:11:25.091320593" } -} \ No newline at end of file +}