From 20093da6d6b79857e66276e04329ec123f34a73e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Famke=20Ba=CC=88uerle?= Date: Thu, 5 Sep 2024 12:32:49 +0200 Subject: [PATCH 01/17] add crabs module --- .../nf-core/crabs/insilicopcr/environment.yml | 7 ++ modules/nf-core/crabs/insilicopcr/main.nf | 48 +++++++++++++ modules/nf-core/crabs/insilicopcr/meta.yml | 49 +++++++++++++ .../crabs/insilicopcr/tests/main.nf.test | 59 ++++++++++++++++ .../crabs/insilicopcr/tests/main.nf.test.snap | 68 +++++++++++++++++++ .../crabs/insilicopcr/tests/nextflow.config | 7 ++ .../nf-core/crabs/insilicopcr/tests/tags.yml | 2 + 7 files changed, 240 insertions(+) create mode 100644 modules/nf-core/crabs/insilicopcr/environment.yml create mode 100644 modules/nf-core/crabs/insilicopcr/main.nf create mode 100644 modules/nf-core/crabs/insilicopcr/meta.yml create mode 100644 modules/nf-core/crabs/insilicopcr/tests/main.nf.test create mode 100644 modules/nf-core/crabs/insilicopcr/tests/main.nf.test.snap create mode 100644 modules/nf-core/crabs/insilicopcr/tests/nextflow.config create mode 100644 modules/nf-core/crabs/insilicopcr/tests/tags.yml diff --git a/modules/nf-core/crabs/insilicopcr/environment.yml b/modules/nf-core/crabs/insilicopcr/environment.yml new file mode 100644 index 00000000000..7e3f76355b9 --- /dev/null +++ b/modules/nf-core/crabs/insilicopcr/environment.yml @@ -0,0 +1,7 @@ +name: crabs_insilicopcr +channels: + - conda-forge + - bioconda + - defaults +dependencies: + - "bioconda::crabs=0.1.1" diff --git a/modules/nf-core/crabs/insilicopcr/main.nf b/modules/nf-core/crabs/insilicopcr/main.nf new file mode 100644 index 00000000000..58e9115c2bd --- /dev/null +++ b/modules/nf-core/crabs/insilicopcr/main.nf @@ -0,0 +1,48 @@ +process CRABS_INSILICOPCR { + tag "$meta.id" + label 'process_medium' + + // WARN: Version information not provided by tool on CLI. Please update version string below when bumping container versions. + conda "${moduleDir}/environment.yml" + container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? + 'https://depot.galaxyproject.org/singularity/crabs:0.1.1--pyhb7b1952_0': + 'biocontainers/crabs:0.1.1--pyhb7b1952_0' }" + + input: + tuple val(meta), path(fasta) + + output: + tuple val(meta), path("*.{fa,fasta}"), emit: fasta + path "versions.yml" , emit: versions + + when: + task.ext.when == null || task.ext.when + + script: + def args = task.ext.args ?: '' + def prefix = task.ext.prefix ?: "${meta.id}" + def VERSION = '0.1.1' // WARN: Version information not provided by tool on CLI. Please update this string when bumping container versions. + """ + crabs insilico_pcr \\ + --input $fasta \\ + --output ${prefix}.crabs.fa \\ + $args + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + crabs: $VERSION + END_VERSIONS + """ + + stub: + def prefix = task.ext.prefix ?: "${meta.id}" + def VERSION = '0.1.1' // WARN: Version information not provided by tool on CLI. Please update this string when bumping container versions. + """ + touch ${prefix}.fa + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + crabs: $VERSION + END_VERSIONS + """ +} diff --git a/modules/nf-core/crabs/insilicopcr/meta.yml b/modules/nf-core/crabs/insilicopcr/meta.yml new file mode 100644 index 00000000000..2bc55970f7f --- /dev/null +++ b/modules/nf-core/crabs/insilicopcr/meta.yml @@ -0,0 +1,49 @@ +name: crabs_insilicopcr +description: CRABS extracts the amplicon region of the primer set by conducting an in silico PCR. +keywords: + - insilico + - PCR +tools: + - crabs: + description: | + Crabs (Creating Reference databases for Amplicon-Based Sequencing) + is a program to download and curate reference databases + for eDNA metabarcoding analyses + homepage: https://github.com/gjeunen/reference_database_creator + documentation: https://github.com/gjeunen/reference_database_creator?tab=readme-ov-file#running-crabs + tool_dev_url: https://github.com/gjeunen/reference_database_creator + doi: https://doi.org/10.1111/1755-0998.13741 + licence: ['MIT License'] + +input: + - meta: + type: map + description: | + Groovy Map containing sample information + e.g. `[ id:'sample1' ]` + - fasta: + type: file + description: Sequence to conduct in silico PCR on + pattern: "*.{fa,fasta}" + +output: + - meta: + type: map + description: | + Groovy Map containing sample information + e.g. `[ id:'sample1' ]` + - versions: + type: file + description: File containing software versions + pattern: "versions.yml" + - fasta: + type: file + description: Reverse complemented amplified Sequence + pattern: "*.{fa,fasta}" + +authors: + - "@famosab" + - "@a4000" +maintainers: + - "@famosab" + - "@a4000" diff --git a/modules/nf-core/crabs/insilicopcr/tests/main.nf.test b/modules/nf-core/crabs/insilicopcr/tests/main.nf.test new file mode 100644 index 00000000000..a5dbbea5d91 --- /dev/null +++ b/modules/nf-core/crabs/insilicopcr/tests/main.nf.test @@ -0,0 +1,59 @@ +nextflow_process { + + name "Test Process CRABS_INSILICOPCR" + script "../main.nf" + process "CRABS_INSILICOPCR" + config "./nextflow.config" + + tag "modules" + tag "modules_nfcore" + tag "crabs" + tag "crabs/insilicopcr" + + test("sarscov2 - fasta") { + + when { + process { + """ + input[0] = [ + [ id:'test' ], // meta map + file(params.modules_testdata_base_path +'genomics/sarscov2/genome/genome.fasta', checkIfExists: true) + ] + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + + } + + test("sarscov2 - fasta - stub") { + + options "-stub" + + when { + process { + """ + input[0] = [ + [ id:'test' ], // meta map + file(params.modules_testdata_base_path +'genomics/sarscov2/genome/genome.fasta', checkIfExists: true) + ] + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + + } + +} diff --git a/modules/nf-core/crabs/insilicopcr/tests/main.nf.test.snap b/modules/nf-core/crabs/insilicopcr/tests/main.nf.test.snap new file mode 100644 index 00000000000..4882f9d8d00 --- /dev/null +++ b/modules/nf-core/crabs/insilicopcr/tests/main.nf.test.snap @@ -0,0 +1,68 @@ +{ + "sarscov2 - fasta - stub": { + "content": [ + { + "0": [ + [ + { + "id": "test" + }, + "test.fa:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + "versions.yml:md5,d334dbe811797a5944b67d096b125b7c" + ], + "fasta": [ + [ + { + "id": "test" + }, + "test.fa:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,d334dbe811797a5944b67d096b125b7c" + ] + } + ], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.04.4" + }, + "timestamp": "2024-09-05T12:28:13.221768" + }, + "sarscov2 - fasta": { + "content": [ + { + "0": [ + [ + { + "id": "test" + }, + "test.crabs.fa:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + "versions.yml:md5,d334dbe811797a5944b67d096b125b7c" + ], + "fasta": [ + [ + { + "id": "test" + }, + "test.crabs.fa:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,d334dbe811797a5944b67d096b125b7c" + ] + } + ], + "meta": { + "nf-test": "0.9.0", + "nextflow": "24.04.4" + }, + "timestamp": "2024-09-05T12:28:03.538411" + } +} \ No newline at end of file diff --git a/modules/nf-core/crabs/insilicopcr/tests/nextflow.config b/modules/nf-core/crabs/insilicopcr/tests/nextflow.config new file mode 100644 index 00000000000..2c4957ee8bc --- /dev/null +++ b/modules/nf-core/crabs/insilicopcr/tests/nextflow.config @@ -0,0 +1,7 @@ +process { + + withName: CRABS_INSILICOPCR { + ext.args = '--fwd "GTCGGTAAAACTCGTGCCAGC" --rev "CATAGTGGGGTATCTAATCCCAGTTTG" --error 4.5' + } + +} diff --git a/modules/nf-core/crabs/insilicopcr/tests/tags.yml b/modules/nf-core/crabs/insilicopcr/tests/tags.yml new file mode 100644 index 00000000000..6681558e3c9 --- /dev/null +++ b/modules/nf-core/crabs/insilicopcr/tests/tags.yml @@ -0,0 +1,2 @@ +crabs/insilicopcr: + - "modules/nf-core/crabs/insilicopcr/**" From 058cd2a3695ac07d5a23b003200c595fcb1bde2b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Famke=20Ba=CC=88uerle?= Date: Thu, 5 Sep 2024 12:47:06 +0200 Subject: [PATCH 02/17] threads prettier --- modules/nf-core/crabs/insilicopcr/main.nf | 1 + modules/nf-core/crabs/insilicopcr/meta.yml | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/modules/nf-core/crabs/insilicopcr/main.nf b/modules/nf-core/crabs/insilicopcr/main.nf index 58e9115c2bd..f2b6c79fc29 100644 --- a/modules/nf-core/crabs/insilicopcr/main.nf +++ b/modules/nf-core/crabs/insilicopcr/main.nf @@ -26,6 +26,7 @@ process CRABS_INSILICOPCR { crabs insilico_pcr \\ --input $fasta \\ --output ${prefix}.crabs.fa \\ + -t ${task.cpus} \\ $args cat <<-END_VERSIONS > versions.yml diff --git a/modules/nf-core/crabs/insilicopcr/meta.yml b/modules/nf-core/crabs/insilicopcr/meta.yml index 2bc55970f7f..3fb6734472c 100644 --- a/modules/nf-core/crabs/insilicopcr/meta.yml +++ b/modules/nf-core/crabs/insilicopcr/meta.yml @@ -13,7 +13,7 @@ tools: documentation: https://github.com/gjeunen/reference_database_creator?tab=readme-ov-file#running-crabs tool_dev_url: https://github.com/gjeunen/reference_database_creator doi: https://doi.org/10.1111/1755-0998.13741 - licence: ['MIT License'] + licence: ["MIT License"] input: - meta: From d40695a2a2bc8a0d32fa8b27b6d204d479361560 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Famke=20Ba=CC=88uerle?= Date: Thu, 5 Sep 2024 14:48:03 +0200 Subject: [PATCH 03/17] fix test and linting --- modules/nf-core/crabs/insilicopcr/main.nf | 2 +- modules/nf-core/crabs/insilicopcr/meta.yml | 2 ++ .../crabs/insilicopcr/tests/main.nf.test | 6 +++- .../crabs/insilicopcr/tests/main.nf.test.snap | 30 ++++--------------- 4 files changed, 13 insertions(+), 27 deletions(-) diff --git a/modules/nf-core/crabs/insilicopcr/main.nf b/modules/nf-core/crabs/insilicopcr/main.nf index f2b6c79fc29..f4edad275e6 100644 --- a/modules/nf-core/crabs/insilicopcr/main.nf +++ b/modules/nf-core/crabs/insilicopcr/main.nf @@ -26,7 +26,7 @@ process CRABS_INSILICOPCR { crabs insilico_pcr \\ --input $fasta \\ --output ${prefix}.crabs.fa \\ - -t ${task.cpus} \\ + --threads ${task.cpus} \\ $args cat <<-END_VERSIONS > versions.yml diff --git a/modules/nf-core/crabs/insilicopcr/meta.yml b/modules/nf-core/crabs/insilicopcr/meta.yml index 3fb6734472c..ce362940d3a 100644 --- a/modules/nf-core/crabs/insilicopcr/meta.yml +++ b/modules/nf-core/crabs/insilicopcr/meta.yml @@ -3,6 +3,8 @@ description: CRABS extracts the amplicon region of the primer set by conducting keywords: - insilico - PCR + - amplicon + - sequencing tools: - crabs: description: | diff --git a/modules/nf-core/crabs/insilicopcr/tests/main.nf.test b/modules/nf-core/crabs/insilicopcr/tests/main.nf.test index a5dbbea5d91..5296b0e7aba 100644 --- a/modules/nf-core/crabs/insilicopcr/tests/main.nf.test +++ b/modules/nf-core/crabs/insilicopcr/tests/main.nf.test @@ -26,7 +26,11 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot(process.out).match() } + { assert snapshot( + process.out.versions, + file(process.out.fasta[0][1]).name, + ).match() + } ) } diff --git a/modules/nf-core/crabs/insilicopcr/tests/main.nf.test.snap b/modules/nf-core/crabs/insilicopcr/tests/main.nf.test.snap index 4882f9d8d00..a7a3ff6a32d 100644 --- a/modules/nf-core/crabs/insilicopcr/tests/main.nf.test.snap +++ b/modules/nf-core/crabs/insilicopcr/tests/main.nf.test.snap @@ -34,35 +34,15 @@ }, "sarscov2 - fasta": { "content": [ - { - "0": [ - [ - { - "id": "test" - }, - "test.crabs.fa:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], - "1": [ - "versions.yml:md5,d334dbe811797a5944b67d096b125b7c" - ], - "fasta": [ - [ - { - "id": "test" - }, - "test.crabs.fa:md5,d41d8cd98f00b204e9800998ecf8427e" - ] - ], - "versions": [ - "versions.yml:md5,d334dbe811797a5944b67d096b125b7c" - ] - } + [ + "versions.yml:md5,d334dbe811797a5944b67d096b125b7c" + ], + "test.crabs.fa" ], "meta": { "nf-test": "0.9.0", "nextflow": "24.04.4" }, - "timestamp": "2024-09-05T12:28:03.538411" + "timestamp": "2024-09-05T14:46:51.816788" } } \ No newline at end of file From 5b9e4d5530560809fc5e8ec7176ad6bc011e470d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Famke=20Ba=CC=88uerle?= Date: Thu, 5 Sep 2024 14:57:40 +0200 Subject: [PATCH 04/17] remove defaults --- modules/nf-core/crabs/insilicopcr/environment.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/modules/nf-core/crabs/insilicopcr/environment.yml b/modules/nf-core/crabs/insilicopcr/environment.yml index 7e3f76355b9..1533ca9a8b7 100644 --- a/modules/nf-core/crabs/insilicopcr/environment.yml +++ b/modules/nf-core/crabs/insilicopcr/environment.yml @@ -2,6 +2,5 @@ name: crabs_insilicopcr channels: - conda-forge - bioconda - - defaults dependencies: - "bioconda::crabs=0.1.1" From f53f85a89d80d48ce8345d0596061bba94549f46 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Famke=20Ba=CC=88uerle?= Date: Thu, 5 Sep 2024 15:23:29 +0200 Subject: [PATCH 05/17] update crabs with wave containers --- modules/nf-core/crabs/insilicopcr/environment.yml | 7 ++++++- modules/nf-core/crabs/insilicopcr/main.nf | 11 ++++------- .../nf-core/crabs/insilicopcr/tests/main.nf.test.snap | 10 +++++----- 3 files changed, 15 insertions(+), 13 deletions(-) diff --git a/modules/nf-core/crabs/insilicopcr/environment.yml b/modules/nf-core/crabs/insilicopcr/environment.yml index 1533ca9a8b7..62dbe07d2bc 100644 --- a/modules/nf-core/crabs/insilicopcr/environment.yml +++ b/modules/nf-core/crabs/insilicopcr/environment.yml @@ -3,4 +3,9 @@ channels: - conda-forge - bioconda dependencies: - - "bioconda::crabs=0.1.1" + - wget=1.21.3 + - muscle=3.8.31 + - cutadapt>=4.0 + - vsearch>=2.13.3 + - pip: + - crabs==0.2 diff --git a/modules/nf-core/crabs/insilicopcr/main.nf b/modules/nf-core/crabs/insilicopcr/main.nf index f4edad275e6..cec42e1e9b4 100644 --- a/modules/nf-core/crabs/insilicopcr/main.nf +++ b/modules/nf-core/crabs/insilicopcr/main.nf @@ -2,11 +2,10 @@ process CRABS_INSILICOPCR { tag "$meta.id" label 'process_medium' - // WARN: Version information not provided by tool on CLI. Please update version string below when bumping container versions. conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/crabs:0.1.1--pyhb7b1952_0': - 'biocontainers/crabs:0.1.1--pyhb7b1952_0' }" + 'oras://community.wave.seqera.io/library/cutadapt_muscle_vsearch_wget_pruned:0cd5cb1e549e5033': + 'community.wave.seqera.io/library/cutadapt_muscle_vsearch_wget_pruned:04f6c0370c0226c5' }" input: tuple val(meta), path(fasta) @@ -21,7 +20,6 @@ process CRABS_INSILICOPCR { script: def args = task.ext.args ?: '' def prefix = task.ext.prefix ?: "${meta.id}" - def VERSION = '0.1.1' // WARN: Version information not provided by tool on CLI. Please update this string when bumping container versions. """ crabs insilico_pcr \\ --input $fasta \\ @@ -31,19 +29,18 @@ process CRABS_INSILICOPCR { cat <<-END_VERSIONS > versions.yml "${task.process}": - crabs: $VERSION + crabs: \$(crabs --version | sed -e 's/crabs v//g') END_VERSIONS """ stub: def prefix = task.ext.prefix ?: "${meta.id}" - def VERSION = '0.1.1' // WARN: Version information not provided by tool on CLI. Please update this string when bumping container versions. """ touch ${prefix}.fa cat <<-END_VERSIONS > versions.yml "${task.process}": - crabs: $VERSION + crabs: \$(crabs --version | sed -e 's/crabs v//g') END_VERSIONS """ } diff --git a/modules/nf-core/crabs/insilicopcr/tests/main.nf.test.snap b/modules/nf-core/crabs/insilicopcr/tests/main.nf.test.snap index a7a3ff6a32d..45137914014 100644 --- a/modules/nf-core/crabs/insilicopcr/tests/main.nf.test.snap +++ b/modules/nf-core/crabs/insilicopcr/tests/main.nf.test.snap @@ -11,7 +11,7 @@ ] ], "1": [ - "versions.yml:md5,d334dbe811797a5944b67d096b125b7c" + "versions.yml:md5,688cca24ee493f8c07e5e069e20fea10" ], "fasta": [ [ @@ -22,7 +22,7 @@ ] ], "versions": [ - "versions.yml:md5,d334dbe811797a5944b67d096b125b7c" + "versions.yml:md5,688cca24ee493f8c07e5e069e20fea10" ] } ], @@ -30,12 +30,12 @@ "nf-test": "0.9.0", "nextflow": "24.04.4" }, - "timestamp": "2024-09-05T12:28:13.221768" + "timestamp": "2024-09-05T15:22:18.567813" }, "sarscov2 - fasta": { "content": [ [ - "versions.yml:md5,d334dbe811797a5944b67d096b125b7c" + "versions.yml:md5,688cca24ee493f8c07e5e069e20fea10" ], "test.crabs.fa" ], @@ -43,6 +43,6 @@ "nf-test": "0.9.0", "nextflow": "24.04.4" }, - "timestamp": "2024-09-05T14:46:51.816788" + "timestamp": "2024-09-05T15:22:12.207826" } } \ No newline at end of file From dacd9a28056ba2e41b55680c250d13ff5e08f552 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Famke=20Ba=CC=88uerle?= Date: Thu, 5 Sep 2024 15:41:25 +0200 Subject: [PATCH 06/17] update meta --- modules/nf-core/crabs/insilicopcr/meta.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/nf-core/crabs/insilicopcr/meta.yml b/modules/nf-core/crabs/insilicopcr/meta.yml index ce362940d3a..f7d0d8121a2 100644 --- a/modules/nf-core/crabs/insilicopcr/meta.yml +++ b/modules/nf-core/crabs/insilicopcr/meta.yml @@ -14,7 +14,7 @@ tools: homepage: https://github.com/gjeunen/reference_database_creator documentation: https://github.com/gjeunen/reference_database_creator?tab=readme-ov-file#running-crabs tool_dev_url: https://github.com/gjeunen/reference_database_creator - doi: https://doi.org/10.1111/1755-0998.13741 + doi: 10.1111/1755-0998.13741 licence: ["MIT License"] input: From 7262a0e3abf970b84adaef0c6bd0aaf9d362fad7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Famke=20Ba=CC=88uerle?= Date: Mon, 9 Sep 2024 09:06:53 +0200 Subject: [PATCH 07/17] remove name --- modules/nf-core/crabs/insilicopcr/environment.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/modules/nf-core/crabs/insilicopcr/environment.yml b/modules/nf-core/crabs/insilicopcr/environment.yml index 62dbe07d2bc..78a9b98db33 100644 --- a/modules/nf-core/crabs/insilicopcr/environment.yml +++ b/modules/nf-core/crabs/insilicopcr/environment.yml @@ -1,4 +1,3 @@ -name: crabs_insilicopcr channels: - conda-forge - bioconda From e2d3075db4568cfe18618c5795e051a6e2f38e7f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Famke=20Ba=CC=88uerle?= Date: Mon, 9 Sep 2024 09:33:50 +0200 Subject: [PATCH 08/17] update env --- modules/nf-core/crabs/insilicopcr/environment.yml | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/modules/nf-core/crabs/insilicopcr/environment.yml b/modules/nf-core/crabs/insilicopcr/environment.yml index 78a9b98db33..489866b9e39 100644 --- a/modules/nf-core/crabs/insilicopcr/environment.yml +++ b/modules/nf-core/crabs/insilicopcr/environment.yml @@ -2,9 +2,10 @@ channels: - conda-forge - bioconda dependencies: - - wget=1.21.3 - - muscle=3.8.31 - - cutadapt>=4.0 - - vsearch>=2.13.3 + - bioconda::cutadapt=4.9 + - bioconda::muscle=3.8.31 + - bioconda::vsearch=2.28.1 + - conda-forge::wget=1.20.3 + - pip - pip: - - crabs==0.2 + - crabs==0.2.0 From edfdf925de61f3a2dd7dac9416b559c3f571d8d9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Famke=20Ba=CC=88uerle?= Date: Mon, 9 Sep 2024 09:36:49 +0200 Subject: [PATCH 09/17] prettier --- modules/nf-core/crabs/insilicopcr/environment.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/nf-core/crabs/insilicopcr/environment.yml b/modules/nf-core/crabs/insilicopcr/environment.yml index 489866b9e39..5bbf98b7f43 100644 --- a/modules/nf-core/crabs/insilicopcr/environment.yml +++ b/modules/nf-core/crabs/insilicopcr/environment.yml @@ -8,4 +8,4 @@ dependencies: - conda-forge::wget=1.20.3 - pip - pip: - - crabs==0.2.0 + - crabs==0.2.0 From c43e41f9ad143af708b4944f2ea22809e38e415d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Famke=20Ba=CC=88uerle?= Date: Mon, 9 Sep 2024 09:45:14 +0200 Subject: [PATCH 10/17] fix pip version --- modules/nf-core/crabs/insilicopcr/environment.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/nf-core/crabs/insilicopcr/environment.yml b/modules/nf-core/crabs/insilicopcr/environment.yml index 5bbf98b7f43..ceed5f98e28 100644 --- a/modules/nf-core/crabs/insilicopcr/environment.yml +++ b/modules/nf-core/crabs/insilicopcr/environment.yml @@ -6,6 +6,6 @@ dependencies: - bioconda::muscle=3.8.31 - bioconda::vsearch=2.28.1 - conda-forge::wget=1.20.3 - - pip + - conda-forge::pip=24.2 - pip: - crabs==0.2.0 From 0d8c243f44be17b95bffda5b162200a959307edf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Famke=20Ba=CC=88uerle?= Date: Fri, 25 Oct 2024 13:00:15 +0200 Subject: [PATCH 11/17] update to 1.0.4 errors in test still exist --- modules/nf-core/crabs/insilicopcr/environment.yml | 8 +------- modules/nf-core/crabs/insilicopcr/main.nf | 6 +++--- modules/nf-core/crabs/insilicopcr/tests/main.nf.test.snap | 6 +++--- modules/nf-core/crabs/insilicopcr/tests/nextflow.config | 2 +- 4 files changed, 8 insertions(+), 14 deletions(-) diff --git a/modules/nf-core/crabs/insilicopcr/environment.yml b/modules/nf-core/crabs/insilicopcr/environment.yml index ceed5f98e28..20be3a698d8 100644 --- a/modules/nf-core/crabs/insilicopcr/environment.yml +++ b/modules/nf-core/crabs/insilicopcr/environment.yml @@ -2,10 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::cutadapt=4.9 - - bioconda::muscle=3.8.31 - - bioconda::vsearch=2.28.1 - - conda-forge::wget=1.20.3 - - conda-forge::pip=24.2 - - pip: - - crabs==0.2.0 + - bioconda::crabs==1.0.4 diff --git a/modules/nf-core/crabs/insilicopcr/main.nf b/modules/nf-core/crabs/insilicopcr/main.nf index cec42e1e9b4..cfa1193bc2b 100644 --- a/modules/nf-core/crabs/insilicopcr/main.nf +++ b/modules/nf-core/crabs/insilicopcr/main.nf @@ -4,8 +4,8 @@ process CRABS_INSILICOPCR { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'oras://community.wave.seqera.io/library/cutadapt_muscle_vsearch_wget_pruned:0cd5cb1e549e5033': - 'community.wave.seqera.io/library/cutadapt_muscle_vsearch_wget_pruned:04f6c0370c0226c5' }" + 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/e0/e0007b6b35c9783203b7fde287c383ac38168ecfee79639393e3cb1cd4afdaef/data': + 'community.wave.seqera.io/library/crabs:1.0.4--1de4f5571e3e4ab0' }" input: tuple val(meta), path(fasta) @@ -21,7 +21,7 @@ process CRABS_INSILICOPCR { def args = task.ext.args ?: '' def prefix = task.ext.prefix ?: "${meta.id}" """ - crabs insilico_pcr \\ + crabs --in-silico-pcr \\ --input $fasta \\ --output ${prefix}.crabs.fa \\ --threads ${task.cpus} \\ diff --git a/modules/nf-core/crabs/insilicopcr/tests/main.nf.test.snap b/modules/nf-core/crabs/insilicopcr/tests/main.nf.test.snap index 45137914014..ef1ed557a36 100644 --- a/modules/nf-core/crabs/insilicopcr/tests/main.nf.test.snap +++ b/modules/nf-core/crabs/insilicopcr/tests/main.nf.test.snap @@ -11,7 +11,7 @@ ] ], "1": [ - "versions.yml:md5,688cca24ee493f8c07e5e069e20fea10" + "versions.yml:md5,7698551e7ac06a8f18b3ca861d0ec81d" ], "fasta": [ [ @@ -22,7 +22,7 @@ ] ], "versions": [ - "versions.yml:md5,688cca24ee493f8c07e5e069e20fea10" + "versions.yml:md5,7698551e7ac06a8f18b3ca861d0ec81d" ] } ], @@ -30,7 +30,7 @@ "nf-test": "0.9.0", "nextflow": "24.04.4" }, - "timestamp": "2024-09-05T15:22:18.567813" + "timestamp": "2024-10-25T12:47:20.344112" }, "sarscov2 - fasta": { "content": [ diff --git a/modules/nf-core/crabs/insilicopcr/tests/nextflow.config b/modules/nf-core/crabs/insilicopcr/tests/nextflow.config index 2c4957ee8bc..8a5ea2077c3 100644 --- a/modules/nf-core/crabs/insilicopcr/tests/nextflow.config +++ b/modules/nf-core/crabs/insilicopcr/tests/nextflow.config @@ -1,7 +1,7 @@ process { withName: CRABS_INSILICOPCR { - ext.args = '--fwd "GTCGGTAAAACTCGTGCCAGC" --rev "CATAGTGGGGTATCTAATCCCAGTTTG" --error 4.5' + ext.args = '--forward "GTCGGTAAAACTCGTGCCAGC" --reverse "CATAGTGGGGTATCTAATCCCAGTTTG"' } } From 3537da55bc2584c02ca02b85d0f7b3ce27560321 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Famke=20Ba=CC=88uerle?= Date: Mon, 18 Nov 2024 14:27:49 +0100 Subject: [PATCH 12/17] update and fix linting --- .../nf-core/crabs/insilicopcr/environment.yml | 2 +- modules/nf-core/crabs/insilicopcr/main.nf | 4 +- modules/nf-core/crabs/insilicopcr/meta.yml | 50 ++++++++++--------- 3 files changed, 29 insertions(+), 27 deletions(-) diff --git a/modules/nf-core/crabs/insilicopcr/environment.yml b/modules/nf-core/crabs/insilicopcr/environment.yml index 20be3a698d8..74ca9a2d9b3 100644 --- a/modules/nf-core/crabs/insilicopcr/environment.yml +++ b/modules/nf-core/crabs/insilicopcr/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::crabs==1.0.4 + - bioconda::crabs=1.0.6 diff --git a/modules/nf-core/crabs/insilicopcr/main.nf b/modules/nf-core/crabs/insilicopcr/main.nf index cfa1193bc2b..d7f55d41fbd 100644 --- a/modules/nf-core/crabs/insilicopcr/main.nf +++ b/modules/nf-core/crabs/insilicopcr/main.nf @@ -4,8 +4,8 @@ process CRABS_INSILICOPCR { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/e0/e0007b6b35c9783203b7fde287c383ac38168ecfee79639393e3cb1cd4afdaef/data': - 'community.wave.seqera.io/library/crabs:1.0.4--1de4f5571e3e4ab0' }" + 'oras://community.wave.seqera.io/library/crabs:1.0.6--a95c7815a4a67eb2': + 'community.wave.seqera.io/library/crabs:1.0.6--462aa28d85ee454e' }" input: tuple val(meta), path(fasta) diff --git a/modules/nf-core/crabs/insilicopcr/meta.yml b/modules/nf-core/crabs/insilicopcr/meta.yml index f7d0d8121a2..12571e0b5db 100644 --- a/modules/nf-core/crabs/insilicopcr/meta.yml +++ b/modules/nf-core/crabs/insilicopcr/meta.yml @@ -1,5 +1,6 @@ name: crabs_insilicopcr -description: CRABS extracts the amplicon region of the primer set by conducting an in silico PCR. +description: CRABS extracts the amplicon region of the primer set by conducting an + in silico PCR. keywords: - insilico - PCR @@ -16,33 +17,34 @@ tools: tool_dev_url: https://github.com/gjeunen/reference_database_creator doi: 10.1111/1755-0998.13741 licence: ["MIT License"] + identifier: "" input: - - meta: - type: map - description: | - Groovy Map containing sample information - e.g. `[ id:'sample1' ]` - - fasta: - type: file - description: Sequence to conduct in silico PCR on - pattern: "*.{fa,fasta}" - + - - meta: + type: map + description: | + Groovy Map containing sample information + e.g. `[ id:'sample1' ]` + - fasta: + type: file + description: Sequence to conduct in silico PCR on + pattern: "*.{fa,fasta}" output: - - meta: - type: map - description: | - Groovy Map containing sample information - e.g. `[ id:'sample1' ]` - - versions: - type: file - description: File containing software versions - pattern: "versions.yml" - fasta: - type: file - description: Reverse complemented amplified Sequence - pattern: "*.{fa,fasta}" - + - meta: + type: map + description: | + Groovy Map containing sample information + e.g. `[ id:'sample1' ]` + - "*.{fa,fasta}": + type: file + description: Reverse complemented amplified Sequence + pattern: "*.{fa,fasta}" + - versions: + - versions.yml: + type: file + description: File containing software versions + pattern: "versions.yml" authors: - "@famosab" - "@a4000" From f830e69aca6ec6f6950979d15c62f809897aa96d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Famke=20Ba=CC=88uerle?= Date: Wed, 20 Nov 2024 12:39:18 +0100 Subject: [PATCH 13/17] change ext args to new convention --- modules/nf-core/crabs/insilicopcr/tests/main.nf.test | 3 +++ modules/nf-core/crabs/insilicopcr/tests/nextflow.config | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/modules/nf-core/crabs/insilicopcr/tests/main.nf.test b/modules/nf-core/crabs/insilicopcr/tests/main.nf.test index 5296b0e7aba..53ab21b0f27 100644 --- a/modules/nf-core/crabs/insilicopcr/tests/main.nf.test +++ b/modules/nf-core/crabs/insilicopcr/tests/main.nf.test @@ -13,6 +13,9 @@ nextflow_process { test("sarscov2 - fasta") { when { + params { + module_args = '--forward "GTCGGTAAAACTCGTGCCAGC" --reverse "CATAGTGGGGTATCTAATCCCAGTTTG"' + } process { """ input[0] = [ diff --git a/modules/nf-core/crabs/insilicopcr/tests/nextflow.config b/modules/nf-core/crabs/insilicopcr/tests/nextflow.config index 8a5ea2077c3..9fdb9ed9351 100644 --- a/modules/nf-core/crabs/insilicopcr/tests/nextflow.config +++ b/modules/nf-core/crabs/insilicopcr/tests/nextflow.config @@ -1,7 +1,7 @@ process { withName: CRABS_INSILICOPCR { - ext.args = '--forward "GTCGGTAAAACTCGTGCCAGC" --reverse "CATAGTGGGGTATCTAATCCCAGTTTG"' + ext.args = params.module_args } } From d05c9ff2d961b05c68cafb5cc27116364e82e115 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Famke=20Ba=CC=88uerle?= Date: Mon, 3 Feb 2025 12:53:07 +0900 Subject: [PATCH 14/17] remove tags yml --- modules/nf-core/crabs/insilicopcr/tests/tags.yml | 2 -- 1 file changed, 2 deletions(-) delete mode 100644 modules/nf-core/crabs/insilicopcr/tests/tags.yml diff --git a/modules/nf-core/crabs/insilicopcr/tests/tags.yml b/modules/nf-core/crabs/insilicopcr/tests/tags.yml deleted file mode 100644 index 6681558e3c9..00000000000 --- a/modules/nf-core/crabs/insilicopcr/tests/tags.yml +++ /dev/null @@ -1,2 +0,0 @@ -crabs/insilicopcr: - - "modules/nf-core/crabs/insilicopcr/**" From 7dddaec008c728f8f1e0177edf527817a4fffe88 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Famke=20Ba=CC=88uerle?= Date: Mon, 3 Feb 2025 12:56:03 +0900 Subject: [PATCH 15/17] only use config in real test --- modules/nf-core/crabs/insilicopcr/tests/main.nf.test | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/modules/nf-core/crabs/insilicopcr/tests/main.nf.test b/modules/nf-core/crabs/insilicopcr/tests/main.nf.test index 53ab21b0f27..97fd5662637 100644 --- a/modules/nf-core/crabs/insilicopcr/tests/main.nf.test +++ b/modules/nf-core/crabs/insilicopcr/tests/main.nf.test @@ -3,7 +3,6 @@ nextflow_process { name "Test Process CRABS_INSILICOPCR" script "../main.nf" process "CRABS_INSILICOPCR" - config "./nextflow.config" tag "modules" tag "modules_nfcore" @@ -12,6 +11,8 @@ nextflow_process { test("sarscov2 - fasta") { + config "./nextflow.config" + when { params { module_args = '--forward "GTCGGTAAAACTCGTGCCAGC" --reverse "CATAGTGGGGTATCTAATCCCAGTTTG"' From 7ffb56c9aef468c7f76e0b0f49f71e2b9bc5fe82 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Famke=20Ba=CC=88uerle?= Date: Mon, 3 Feb 2025 14:38:30 +0900 Subject: [PATCH 16/17] update to 1.0.7 --- modules/nf-core/crabs/insilicopcr/environment.yml | 2 +- modules/nf-core/crabs/insilicopcr/main.nf | 8 ++++---- .../nf-core/crabs/insilicopcr/tests/main.nf.test | 5 ++++- .../crabs/insilicopcr/tests/main.nf.test.snap | 15 ++++++++++----- 4 files changed, 19 insertions(+), 11 deletions(-) diff --git a/modules/nf-core/crabs/insilicopcr/environment.yml b/modules/nf-core/crabs/insilicopcr/environment.yml index 74ca9a2d9b3..c9761a2d14b 100644 --- a/modules/nf-core/crabs/insilicopcr/environment.yml +++ b/modules/nf-core/crabs/insilicopcr/environment.yml @@ -2,4 +2,4 @@ channels: - conda-forge - bioconda dependencies: - - bioconda::crabs=1.0.6 + - bioconda::crabs=1.0.7 diff --git a/modules/nf-core/crabs/insilicopcr/main.nf b/modules/nf-core/crabs/insilicopcr/main.nf index d7f55d41fbd..ef1e9ffa20f 100644 --- a/modules/nf-core/crabs/insilicopcr/main.nf +++ b/modules/nf-core/crabs/insilicopcr/main.nf @@ -4,8 +4,8 @@ process CRABS_INSILICOPCR { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'oras://community.wave.seqera.io/library/crabs:1.0.6--a95c7815a4a67eb2': - 'community.wave.seqera.io/library/crabs:1.0.6--462aa28d85ee454e' }" + 'https://depot.galaxyproject.org/singularity/crabs:1.0.7--pyhdfd78af_0': + 'biocontainers/crabs:1.0.7--pyhdfd78af_0' }" input: tuple val(meta), path(fasta) @@ -29,7 +29,7 @@ process CRABS_INSILICOPCR { cat <<-END_VERSIONS > versions.yml "${task.process}": - crabs: \$(crabs --version | sed -e 's/crabs v//g') + crabs: \$(crabs --help | grep 'CRABS |' | sed 's/.*CRABS | \\(v[0-9.]*\\).*/\\1/') END_VERSIONS """ @@ -40,7 +40,7 @@ process CRABS_INSILICOPCR { cat <<-END_VERSIONS > versions.yml "${task.process}": - crabs: \$(crabs --version | sed -e 's/crabs v//g') + crabs: \$(crabs --help | grep 'CRABS |' | sed 's/.*CRABS | \\(v[0-9.]*\\).*/\\1/') END_VERSIONS """ } diff --git a/modules/nf-core/crabs/insilicopcr/tests/main.nf.test b/modules/nf-core/crabs/insilicopcr/tests/main.nf.test index 97fd5662637..495ad09ba47 100644 --- a/modules/nf-core/crabs/insilicopcr/tests/main.nf.test +++ b/modules/nf-core/crabs/insilicopcr/tests/main.nf.test @@ -58,7 +58,10 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot(process.out).match() } + { assert snapshot( + process.out, + path(process.out.versions[0]).yaml + ).match() } ) } diff --git a/modules/nf-core/crabs/insilicopcr/tests/main.nf.test.snap b/modules/nf-core/crabs/insilicopcr/tests/main.nf.test.snap index ef1ed557a36..8e7460f1058 100644 --- a/modules/nf-core/crabs/insilicopcr/tests/main.nf.test.snap +++ b/modules/nf-core/crabs/insilicopcr/tests/main.nf.test.snap @@ -11,7 +11,7 @@ ] ], "1": [ - "versions.yml:md5,7698551e7ac06a8f18b3ca861d0ec81d" + "versions.yml:md5,adee442c0437fa5a481ff3e3b9760a44" ], "fasta": [ [ @@ -22,15 +22,20 @@ ] ], "versions": [ - "versions.yml:md5,7698551e7ac06a8f18b3ca861d0ec81d" + "versions.yml:md5,adee442c0437fa5a481ff3e3b9760a44" ] + }, + { + "CRABS_INSILICOPCR": { + "crabs": "v1.0.7" + } } ], "meta": { - "nf-test": "0.9.0", - "nextflow": "24.04.4" + "nf-test": "0.9.2", + "nextflow": "24.10.4" }, - "timestamp": "2024-10-25T12:47:20.344112" + "timestamp": "2025-02-03T14:34:58.943001" }, "sarscov2 - fasta": { "content": [ From b45797cdc75dbdb0317f5faaf9af03fb8fda7c95 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Famke=20Ba=CC=88uerle?= Date: Tue, 18 Feb 2025 13:37:25 +0100 Subject: [PATCH 17/17] update snap --- modules/nf-core/crabs/insilicopcr/meta.yml | 1 - modules/nf-core/crabs/insilicopcr/tests/main.nf.test | 9 +++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/modules/nf-core/crabs/insilicopcr/meta.yml b/modules/nf-core/crabs/insilicopcr/meta.yml index 12571e0b5db..3510f2f7b87 100644 --- a/modules/nf-core/crabs/insilicopcr/meta.yml +++ b/modules/nf-core/crabs/insilicopcr/meta.yml @@ -18,7 +18,6 @@ tools: doi: 10.1111/1755-0998.13741 licence: ["MIT License"] identifier: "" - input: - - meta: type: map diff --git a/modules/nf-core/crabs/insilicopcr/tests/main.nf.test b/modules/nf-core/crabs/insilicopcr/tests/main.nf.test index 495ad09ba47..26b5b0ba93c 100644 --- a/modules/nf-core/crabs/insilicopcr/tests/main.nf.test +++ b/modules/nf-core/crabs/insilicopcr/tests/main.nf.test @@ -21,7 +21,7 @@ nextflow_process { """ input[0] = [ [ id:'test' ], // meta map - file(params.modules_testdata_base_path +'genomics/sarscov2/genome/genome.fasta', checkIfExists: true) + file(params.modules_testdata_base_path +'genomics/sarscov2/genome/genome-ena.fasta', checkIfExists: true) ] """ } @@ -34,7 +34,7 @@ nextflow_process { process.out.versions, file(process.out.fasta[0][1]).name, ).match() - } + } ) } @@ -49,7 +49,7 @@ nextflow_process { """ input[0] = [ [ id:'test' ], // meta map - file(params.modules_testdata_base_path +'genomics/sarscov2/genome/genome.fasta', checkIfExists: true) + file(params.modules_testdata_base_path +'genomics/sarscov2/genome/genome-ena.fasta', checkIfExists: true) ] """ } @@ -61,7 +61,8 @@ nextflow_process { { assert snapshot( process.out, path(process.out.versions[0]).yaml - ).match() } + ).match() + } ) }